*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #0d1117;--bg2: #161b22;--bg3: #21262d;--bg4: #2d333b;--border: #30363d;--text: #e6edf3;--muted: #8b949e;--muted2: #656d76;--accent: #388bfd;--accent2: #1f6feb;--green: #26a69a;--red: #ef5350;--green-bg: rgba(38,166,154,.12);--red-bg: rgba(239,83,80,.12);--yellow: #f0a500;--yellow-bg: rgba(240,165,0,.12);--blue: #388bfd;--blue-bg: rgba(56,139,253,.12);--sprint: #f59e0b;--swing: #8b5cf6;--bot-run: #3fb950;--bot-stop: #ef5350;--bot-pause: #f0a500}body{background:var(--bg);color:var(--text);font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:14px;line-height:1.5}.app-shell{display:flex;height:100vh;overflow:hidden}.app-sidebar{background:var(--bg2);border-right:1px solid var(--border);display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;flex-shrink:0;transition:width .2s ease}.app-sidebar-header{display:flex;align-items:center;border-bottom:1px solid var(--border);flex-shrink:0}.app-sidebar-brand{display:flex;flex-direction:column;gap:2px;min-width:0}.app-sidebar-brand-title{font-size:13px;font-weight:800;color:var(--text);letter-spacing:.04em}.app-sidebar-brand-subtitle{font-size:11px;color:var(--muted);white-space:nowrap}.app-nav-short{width:28px;height:28px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;background:var(--bg3);border:1px solid var(--border);color:var(--text);font-size:10px;font-weight:800;letter-spacing:.08em;flex-shrink:0}.app-nav-label{min-width:0;overflow:hidden;text-overflow:ellipsis}.app-sidebar-footer{border-top:1px solid var(--border);flex-shrink:0}.app-status-row{display:flex;align-items:center;gap:8px;font-size:12px}.app-status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.app-page{flex:1;min-width:0;overflow-y:auto;overflow-x:hidden;background:var(--bg);display:flex;flex-direction:column}.app-topbar{padding:12px 24px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;background:var(--bg2);flex-shrink:0;gap:16px}.app-topbar-title{display:flex;flex-direction:column;gap:2px}.app-topbar-name{font-size:15px;font-weight:800;color:var(--text)}.app-topbar-sub{font-size:11px;color:var(--muted)}.app-user-chip{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border-radius:999px;border:1px solid var(--border);background:var(--bg3);color:var(--text);font-size:12px}.app-user-dot{width:7px;height:7px;border-radius:50%;background:var(--accent)}.num{font-variant-numeric:tabular-nums;font-feature-settings:"tnum";font-family:JetBrains Mono,Fira Code,monospace}a{color:inherit;text-decoration:none}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:var(--bg2)}::-webkit-scrollbar-thumb{background:var(--bg4);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--muted2)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.fade-in{animation:fadeIn .2s ease-out}.badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:100px;font-size:11px;font-weight:700;white-space:nowrap}.badge-buy{color:var(--green);background:var(--green-bg)}.badge-sell{color:var(--red);background:var(--red-bg)}.badge-skip{color:var(--muted);background:var(--bg3)}.badge-sprint{color:var(--sprint);background:#f59e0b1f}.badge-swing{color:var(--swing);background:#8b5cf61f}.badge-open{color:var(--accent);background:var(--blue-bg)}.badge-closed{color:var(--muted);background:var(--bg3)}.badge-ok{color:var(--bot-run);background:#3fb9501f}.badge-warn{color:var(--yellow);background:var(--yellow-bg)}.card{background:var(--bg2);border:1px solid var(--border);border-radius:12px;padding:18px 20px}.fin-table{width:100%;border-collapse:collapse;font-size:13px}.fin-table th{padding:8px 12px;text-align:left;font-size:11px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;border-bottom:1px solid var(--border)}.fin-table td{padding:10px 12px;border-bottom:1px solid var(--border);white-space:nowrap}.fin-table tr:last-child td{border-bottom:none}.fin-table tr:hover td{background:var(--bg3)}.fin-table .num{text-align:right}.fin-table .pnl-pos{color:var(--green);font-weight:600}.fin-table .pnl-neg{color:var(--red);font-weight:600}.pnl-bar-wrap{display:flex;align-items:center;gap:6px}.pnl-bar-track{width:50px;height:4px;background:var(--bg4);border-radius:2px;overflow:hidden}.friday-banner{background:linear-gradient(135deg,#f0a50026,#f0a5000d);border:1px solid rgba(240,165,0,.3);border-radius:8px;padding:10px 16px;display:flex;align-items:center;gap:10px;font-size:13px;color:var(--yellow);animation:fadeIn .3s ease-out}.kpi-card{background:var(--bg2);border:1px solid var(--border);border-radius:12px;padding:18px 20px;display:flex;flex-direction:column;gap:6px}.kpi-label{font-size:11px;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.05em}.kpi-value{font-size:24px;font-weight:700;font-variant-numeric:tabular-nums}.kpi-sub{font-size:12px;color:var(--muted)}.dashboard-hero{background:linear-gradient(135deg,#388bfd1a,#26a69a0f);border:1px solid rgba(56,139,253,.22);border-radius:14px;padding:20px 22px}.dashboard-eyebrow{font-size:10px;color:var(--muted);font-weight:700;letter-spacing:.12em;text-transform:uppercase}.dashboard-title{font-size:22px;font-weight:800;line-height:1.1;margin:4px 0 6px}.dashboard-subtitle{font-size:13px;color:var(--muted);max-width:760px}.dashboard-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.dashboard-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:999px;border:1px solid var(--border);background:var(--bg3);font-size:11px;font-weight:700}.dashboard-chip-muted{color:var(--muted)}.dashboard-chip-positive{color:var(--green);border-color:#26a69a40;background:#26a69a1a}.dashboard-chip-negative{color:var(--red);border-color:#ef535040;background:#ef53501a}.dashboard-chip-accent{color:var(--accent);border-color:#388bfd40;background:#388bfd1a}.dashboard-toolbar{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.dashboard-grid-kpi{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}.dashboard-grid-two{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px}
