:root{font-family:Inter,ui-sans-serif,system-ui,sans-serif;color:#e7edf6;background:#070b12;font-synthesis:none;--bg:#070b12;--surface:#0c121c;--surface-2:#101722;--line:#1c2838;--muted:#718096;--text:#e7edf6;--green:#37d7a3;--red:#ff6577;--amber:#e9b949}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at 65% -20%,#102737 0,transparent 34%),var(--bg)}button,input{font:inherit}button{color:inherit}.app-loading{min-height:100vh;display:grid;place-items:center;color:var(--muted)}.app-shell{min-height:100vh;display:grid;grid-template-columns:230px 1fr}.sidebar{position:fixed;inset:0 auto 0 0;width:230px;background:#080d15f5;border-right:1px solid var(--line);padding:24px 14px;display:flex;flex-direction:column;z-index:20;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.brand,.login-brand{display:flex;align-items:center;gap:11px;padding:0 8px}.brand-mark{width:37px;height:37px;border:1px solid rgba(55,215,163,.35);background:linear-gradient(145deg,#37d7a32e,#37d7a30a);border-radius:10px;display:grid;place-items:center;color:var(--green);box-shadow:0 0 30px #37d7a312}.brand strong,.login-brand strong{display:block;font-size:18px;letter-spacing:-.4px}.brand span,.login-brand span{display:block;color:#546276;font-size:8px;letter-spacing:1.6px;font-weight:700;margin-top:2px}.sidebar nav{margin-top:38px;display:grid;gap:5px}.sidebar nav a{color:#7d8999;text-decoration:none;padding:10px 12px;border-radius:8px;display:flex;gap:11px;align-items:center;font-size:13px;font-weight:600;border:1px solid transparent}.sidebar nav a:hover{color:#cbd5e1;background:#0d1520}.sidebar nav a.active{color:#dffbf3;background:linear-gradient(90deg,#37d7a31f,#37d7a306);border-color:#37d7a31f}.sidebar nav a.active svg{color:var(--green)}.sidebar-footer{margin-top:auto;display:grid;gap:12px}.security-note{padding:11px;background:#0b1718;border:1px solid rgba(55,215,163,.13);border-radius:9px;display:flex;gap:9px;color:var(--green)}.security-note b,.security-note span{display:block}.security-note b{font-size:11px;color:#b4ddcf}.security-note span{font-size:9px;color:#577a70;margin-top:2px}.signout{border:0;background:transparent;color:#657387;display:flex;align-items:center;gap:8px;padding:8px 10px;cursor:pointer;font-size:11px}main{grid-column:2;min-width:0}.topbar{height:64px;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 28px;justify-content:space-between;background:#070b12c2;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);position:sticky;top:0;z-index:10}.topbar-context span,.topbar-context strong{display:block}.topbar-context span{color:#4c596b;font-size:9px;letter-spacing:1.1px;text-transform:uppercase}.topbar-context strong{font-size:12px;margin-top:2px}.topbar-status{color:#7b8797;font:600 9px JetBrains Mono,monospace;letter-spacing:.6px;display:flex;align-items:center;gap:8px}.status-dot{width:7px;height:7px;border-radius:50%;background:#657081;box-shadow:0 0 0 3px #6570811f;display:inline-block}.status-dot.amber{background:var(--amber)}.demo-banner{background:#e9b94914;border-bottom:1px solid rgba(233,185,73,.16);color:#c6a655;padding:7px 28px;font:600 9px JetBrains Mono,monospace;letter-spacing:.8px;text-align:center}.page{padding:28px;max-width:1600px;margin:0 auto}.page-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:24px}.eyebrow{color:var(--green);font:600 9px JetBrains Mono,monospace;letter-spacing:1.4px}.page-heading h1{margin:7px 0 4px;font-size:24px;letter-spacing:-.7px}.page-heading p{margin:0;color:var(--muted);font-size:12px}.phase-pill,.paper-badge{border:1px solid rgba(55,215,163,.25);color:var(--green);background:#37d7a312;border-radius:6px;padding:7px 11px;font:600 9px JetBrains Mono,monospace}.runtime-badges{display:flex;gap:8px}.offline-badge{border:1px solid #293546;color:#8d9bad;background:#101722;border-radius:6px;padding:7px 10px;font:600 9px JetBrains Mono,monospace}.offline-badge span{display:inline-block;width:6px;height:6px;border-radius:50%;background:#667184;margin-right:5px}.mock-callout{border:1px solid rgba(233,185,73,.12);background:#e9b9490a;padding:10px 13px;border-radius:8px;color:#807865;font-size:10px;margin-bottom:14px}.mock-callout span{color:#c7a94f;font:600 9px JetBrains Mono;margin-right:9px}.control-strip{min-height:66px;border:1px solid var(--line);background:linear-gradient(90deg,#0d151f,#0a1019);border-radius:10px;padding:12px 14px 12px 18px;display:grid;grid-template-columns:1fr auto auto;gap:24px;align-items:center;margin-bottom:15px}.control-title span,.control-title strong{display:block}.control-title span{color:#536174;font:600 8px JetBrains Mono;letter-spacing:1px}.control-title strong{font-size:11px;color:#a4afbd;margin-top:4px}.control-actions,.mode-switch{display:flex;gap:6px}.control-actions button,.mode-switch button{border:1px solid #263244;background:#111923;border-radius:6px;padding:8px 12px;font:600 9px JetBrains Mono;display:flex;align-items:center;gap:6px;color:#566276}.control-actions button:disabled,.mode-switch button:disabled{cursor:not-allowed;opacity:.66}.mode-switch{background:#070c12;padding:3px;border:1px solid #1b2634;border-radius:7px}.mode-switch button{border:0;background:transparent;padding:6px 11px}.mode-switch .selected{color:var(--green);background:#37d7a31c}.metrics-grid{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:10px;margin-bottom:10px}.metric-card{min-height:88px;background:linear-gradient(145deg,#0e1621,#0b111a);border:1px solid var(--line);border-radius:10px;padding:17px;display:flex;align-items:center;gap:13px}.metric-icon{width:34px;height:34px;display:grid;place-items:center;background:#111b28;color:#6e7c90;border-radius:8px}.metric-card span{color:#5e6c7e;font:600 8px JetBrains Mono;letter-spacing:.9px;display:block;margin-bottom:6px}.metric-card strong{font:600 17px JetBrains Mono;letter-spacing:-.6px}.metric-card small{font-size:8px;color:#718096;letter-spacing:0}.dashboard-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.panel{min-height:250px;background:linear-gradient(145deg,#0e151f,#0a1018);border:1px solid var(--line);border-radius:10px;padding:17px}.equity-panel{grid-column:span 2;min-height:330px}.panel-heading{display:flex;align-items:center;justify-content:space-between}.panel-heading span{font:600 8px JetBrains Mono;letter-spacing:1px;color:#536175}.panel-heading h2{font-size:13px;margin:5px 0 0}.panel-more{background:transparent;border:0;color:#536175;cursor:pointer}.time-tabs{display:flex;gap:3px}.time-tabs button{border:0;background:transparent;color:#536175;font:600 8px JetBrains Mono;padding:5px 7px;border-radius:4px}.time-tabs button.active{color:var(--green);background:#37d7a314}.chart-wrap{height:260px;margin-top:13px;position:relative}.chart-empty{position:absolute;left:50%;top:52%;transform:translate(-50%,-50%);color:#637084;font-size:10px;padding:7px 10px;background:#080d14cc;border-radius:5px}.risk-list,.health-list{display:grid;gap:0;margin-top:18px}.risk-list div,.health-list div{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #17212e;padding:13px 0;font-size:10px}.risk-list div:last-child,.health-list div:last-child{border:0}.risk-list span,.health-list span{color:#748197;display:flex;align-items:center;gap:8px}.risk-list b,.health-list b{font:600 8px JetBrains Mono;color:#7e8999}.safe{color:var(--green)!important}.dot-off,.dot-ready{width:6px;height:6px;border-radius:50%;background:#5d6878;display:inline-block}.dot-ready{background:var(--green);box-shadow:0 0 8px #37d7a366}.table-header{display:grid;grid-template-columns:1fr 1fr 1fr;color:#49576a;font:600 7px JetBrains Mono;margin-top:20px;padding-bottom:9px;border-bottom:1px solid #17212e}.table-header span:last-child{text-align:right}.empty-state{min-height:145px;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#465366}.empty-state p{margin:9px 0 3px;font-size:11px;color:#778396}.empty-state small{font-size:9px;color:#4d5a6c}.empty-feature{min-height:360px;border:1px solid var(--line);background:#0c121c;border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#576477}.empty-feature h2{color:#a6b1c0;margin:14px 0 5px}.empty-feature p{color:#667386;font-size:12px}.login-page{min-height:100vh;display:grid;place-items:center;padding:24px;position:relative;overflow:hidden}.login-glow{position:absolute;width:500px;height:500px;background:#37d7a30f;filter:blur(100px);border-radius:50%}.login-card{width:min(430px,100%);background:#0c121cf0;border:1px solid #1c2938;border-radius:16px;padding:30px;position:relative;box-shadow:0 30px 100px #00000059}.login-brand{padding:0 0 27px;border-bottom:1px solid var(--line)}.login-heading{display:flex;gap:12px;margin:26px 0 22px;color:var(--green)}.login-heading h1{color:var(--text);margin:0 0 4px;font-size:20px}.login-heading p{color:var(--muted);margin:0;font-size:11px}.login-card form{display:grid;gap:15px}.login-card label{font-size:10px;color:#7a8798;font-weight:600}.login-card input{width:100%;display:block;margin-top:7px;background:#080d14;border:1px solid #243042;color:var(--text);border-radius:8px;padding:11px 12px;outline:none}.login-card input:focus{border-color:#37d7a380}.login-card form button{border:1px solid #42d9aa;background:#35c997;color:#06100d;font-weight:700;padding:11px;border-radius:8px;cursor:pointer}.login-card footer{border-top:1px solid var(--line);margin-top:25px;padding-top:18px;color:#667386;font:600 8px JetBrains Mono;display:flex;align-items:center;gap:8px}.form-error{color:#f18b98;background:#ff657712;padding:9px;border-radius:6px;font-size:10px;margin:0}.menu-button,.mobile-close{display:none;background:transparent;border:0;color:#8190a4}@media(max-width:1100px){.metrics-grid,.dashboard-grid{grid-template-columns:repeat(2,1fr)}.equity-panel{grid-column:span 2}}@media(max-width:760px){.app-shell{display:block}.sidebar{transform:translate(-105%);transition:transform .2s}.sidebar-open{transform:translate(0)}main{grid-column:auto}.menu-button,.mobile-close{display:block}.mobile-close{margin-left:auto}.topbar{padding:0 16px}.page{padding:20px 14px}.dashboard-heading{align-items:flex-start;flex-direction:column}.control-strip,.metrics-grid,.dashboard-grid{grid-template-columns:1fr}.equity-panel{grid-column:span 1}.control-actions button{flex:1;justify-content:center}.mock-callout{line-height:1.5}.panel{min-height:230px}}
