*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#0d1117;color:#c9d1d9}#root{width:100vw;min-height:100vh}.dashboard{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(3,minmax(200px,auto));gap:16px;padding:16px;max-width:1920px;margin:0 auto}.widget{background-color:#161b22;border:1px solid #30363d;border-radius:8px;padding:16px;overflow:hidden}.widget-title{font-size:14px;font-weight:600;color:#8b949e;margin-bottom:12px;text-transform:uppercase;letter-spacing:.5px}.price-chart-container{grid-column:1 / 4;grid-row:1 / 2;height:400px}.position-widget{grid-column:4 / 5;grid-row:1 / 3}.ticker-widget{grid-column:1 / 3;grid-row:2 / 3}.performance-widget{grid-column:3 / 5;grid-row:2 / 3}.trades-widget{grid-column:1 / 5;grid-row:3 / 4;height:300px}.price{font-size:28px;font-weight:700;color:#c9d1d9}.price-up{color:#3fb950}.price-down{color:#f85149}.change{font-size:14px;margin-left:8px}.change-up{color:#3fb950}.change-down{color:#f85149}.position-info{display:flex;flex-direction:column;gap:8px}.position-row{display:flex;justify-content:space-between;font-size:14px}.position-label{color:#8b949e}.position-value{color:#c9d1d9;font-weight:500}.pnl-positive{color:#3fb950}.pnl-negative{color:#f85149}.performance-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.metric{background-color:#21262d;border-radius:6px;padding:12px;text-align:center}.metric-label{font-size:12px;color:#8b949e;margin-bottom:4px}.metric-value{font-size:20px;font-weight:700;color:#c9d1d9}.trades-table{width:100%;border-collapse:collapse;font-size:13px}.trades-table th{text-align:left;padding:8px;color:#8b949e;border-bottom:1px solid #30363d;font-weight:600;cursor:pointer;-webkit-user-select:none;user-select:none}.trades-table th:hover{background:#21262d}.trades-table td{padding:8px;border-bottom:1px solid #21262d}.trades-table tr:last-child td{border-bottom:none}.trade-reasoning-row{background:#1a1d21}.trade-reasoning-row td{border-bottom:none;padding:8px 12px}.reasoning-content{padding:12px;background:#21262d;border-radius:4px;border-left:3px solid #58a6ff}.trades-scroll-container{max-height:350px;overflow-y:auto;border:1px solid #30363d;border-radius:4px}.expand-button{cursor:pointer;background:none;border:none;color:#8b949e;padding:4px;font-size:16px;line-height:1;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background .2s}.expand-button:hover{background:#21262d;color:#c9d1d9}.pagination-controls{display:flex;align-items:center;justify-content:center;gap:16px;padding:12px 0;border-top:1px solid #30363d;margin-top:8px}.pagination-button{background:#21262d;border:1px solid #30363d;color:#c9d1d9;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:13px;transition:all .2s}.pagination-button:hover:not(:disabled){background:#30363d;border-color:#58a6ff}.pagination-button:disabled{opacity:.5;cursor:not-allowed}.pagination-info{font-size:13px;color:#8b949e}.trades-container{height:100%;display:flex;flex-direction:column}.trade-row:hover{background:#1a1d21}.badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:12px;font-weight:500}.badge-long{background-color:#3fb95020;color:#3fb950}.badge-short{background-color:#f8514920;color:#f85149}.badge-open{background-color:#58a6ff20;color:#58a6ff}.badge-closed{background-color:#8b949e20;color:#8b949e}.symbol-selector{display:flex;gap:8px;margin-bottom:12px}.symbol-btn{background-color:#21262d;border:1px solid #30363d;color:#c9d1d9;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:13px;transition:all .2s}.symbol-btn:hover{background-color:#30363d}.symbol-btn.active{background-color:#58a6ff;border-color:#58a6ff;color:#0d1117}.loading{display:flex;align-items:center;justify-content:center;height:100%;color:#8b949e}.error{color:#f85149;padding:16px;text-align:center}.connection-status{position:fixed;top:10px;right:10px;padding:8px 16px;border-radius:4px;background:#000c;color:#8b949e;font-size:12px;z-index:1000;display:flex;align-items:center;gap:8px}.status-indicator{width:8px;height:8px;border-radius:50%;display:inline-block}.status-indicator.connected{background-color:#3fb950;animation:pulse 2s infinite}.status-indicator.disconnected{background-color:#f85149}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.error-banner{position:fixed;top:50px;right:10px;padding:12px 16px;border-radius:4px;background:#f85149e6;color:#fff;font-size:14px;z-index:1000;display:flex;align-items:center;gap:12px}.error-banner .retry-button{background:#fff3;border:1px solid rgba(255,255,255,.4);color:#fff;padding:4px 8px;border-radius:4px;cursor:pointer;font-size:12px;transition:background .2s}.error-banner .retry-button:hover{background:#ffffff4d}.loading{display:flex;align-items:center;justify-content:center;padding:20px;color:#8b949e;font-style:italic}.loading:after{content:"";animation:dots 1.5s steps(4,end) infinite}@keyframes dots{0%,20%{content:"."}40%{content:".."}60%,to{content:"..."}}.widget{position:relative;overflow:hidden}.widget-title{padding:12px 16px;background:#0006;border-bottom:1px solid #30363d;font-size:14px;font-weight:600;color:#8b949e;text-transform:uppercase;letter-spacing:.5px}@media(max-width:1400px){.dashboard{grid-template-columns:repeat(2,1fr)}.price-chart-container{grid-column:span 2;grid-row:span 1;height:350px}.position-widget{grid-column:span 1;grid-row:span 2}.ticker-widget,.performance-widget{grid-column:span 1;grid-row:span 1}.trades-widget{grid-column:span 2;grid-row:span 1}}@media(max-width:768px){.dashboard{grid-template-columns:1fr}.price-chart-container,.position-widget,.ticker-widget,.performance-widget,.trades-widget{grid-column:span 1;grid-row:auto}.price-chart-container{height:300px}.trades-widget{height:250px}}
