:root{--os-canvas: #060709;--os-panel: #0b0d10;--os-panel-2: #0e1116;--os-hairline: #1a1e24;--os-hairline-2: #232830;--os-ink: #e8eaee;--os-mist: #9aa1ab;--os-slate: #5c6470;--os-signal: #58c4dd;--os-signal-dim: rgba(88, 196, 221, .14);--os-cash: #34d399;--os-cash-dim: rgba(52, 211, 153, .12);--os-warn: #f5a524;--os-warn-dim: rgba(245, 165, 36, .12);--os-crit: #f87171;--os-crit-dim: rgba(248, 113, 113, .12);--os-font: "Inter", system-ui, sans-serif;--os-mono: "JetBrains Mono", ui-monospace, monospace;--os-r-card: 10px;--os-r-btn: 8px}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--os-canvas);color:var(--os-ink);font-family:var(--os-font);font-size:14px;line-height:1.55;-webkit-font-smoothing:antialiased}::selection{background:var(--os-signal-dim)}a{color:var(--os-signal);text-decoration:none}button{font-family:inherit}.os-shell{display:grid;grid-template-columns:216px 1fr;min-height:100dvh}.os-sidebar{border-right:1px solid var(--os-hairline);background:var(--os-panel);padding:18px 12px;display:flex;flex-direction:column;gap:4px;position:sticky;top:0;height:100dvh}.os-logo{display:flex;align-items:baseline;gap:8px;padding:2px 10px 16px}.os-logo strong{font-weight:800;letter-spacing:-.02em;font-size:15px}.os-logo span{font-family:var(--os-mono);font-size:10px;color:var(--os-signal);letter-spacing:.08em}.os-nav-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--os-r-btn);color:var(--os-mist);font-size:13px;font-weight:500;background:none;border:none;cursor:pointer;width:100%;text-align:left}.os-nav-item:hover{color:var(--os-ink);background:var(--os-panel-2)}.os-nav-item.active{color:var(--os-ink);background:var(--os-panel-2);box-shadow:inset 2px 0 0 var(--os-signal)}.os-nav-item .dot{width:6px;height:6px;border-radius:50%;background:var(--os-crit);margin-left:auto}.os-sidebar-foot{margin-top:auto;padding:10px;font-size:11px;color:var(--os-slate)}.os-sidebar-foot button{background:none;border:none;color:var(--os-slate);cursor:pointer;padding:0;font-size:11px}.os-sidebar-foot button:hover{color:var(--os-mist)}.os-main{padding:26px 30px 60px;max-width:1240px;width:100%;margin:0 auto;min-width:0}.os-topline{display:flex;align-items:center;gap:12px;margin-bottom:22px}.os-topline h1{font-size:19px;font-weight:700;letter-spacing:-.01em;margin:0}.os-topline .sub{color:var(--os-slate);font-size:12.5px}.os-topline .spacer{flex:1}.os-card{background:var(--os-panel);border:1px solid var(--os-hairline);border-radius:var(--os-r-card);padding:16px 18px}.os-card+.os-card{margin-top:14px}.os-card h2{font-size:13px;font-weight:600;color:var(--os-mist);margin:0 0 12px;letter-spacing:.01em}.os-grid{display:grid;gap:14px}.os-grid.kpi{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.os-grid.two{grid-template-columns:repeat(auto-fit,minmax(340px,1fr))}.os-kpi{background:var(--os-panel);border:1px solid var(--os-hairline);border-radius:var(--os-r-card);padding:14px 16px}.os-kpi .label{font-size:11px;color:var(--os-slate);letter-spacing:.04em;text-transform:uppercase}.os-kpi .value{font-family:var(--os-mono);font-size:24px;font-weight:600;margin-top:4px;font-variant-numeric:tabular-nums}.os-kpi .value.cash{color:var(--os-cash)}.os-kpi .value.hero{font-size:30px}.os-kpi .hint{font-size:11px;color:var(--os-slate);margin-top:2px}.os-mono{font-family:var(--os-mono);font-variant-numeric:tabular-nums}.os-badge{display:inline-flex;align-items:center;gap:6px;font-family:var(--os-mono);font-size:10.5px;letter-spacing:.05em;padding:3px 9px;border-radius:999px;border:1px solid var(--os-hairline-2);color:var(--os-mist);white-space:nowrap}.os-badge.ok{color:var(--os-cash);border-color:#34d39959;background:var(--os-cash-dim)}.os-badge.warn{color:var(--os-warn);border-color:#f5a52459;background:var(--os-warn-dim)}.os-badge.crit{color:var(--os-crit);border-color:#f8717159;background:var(--os-crit-dim)}.os-badge.signal{color:var(--os-signal);border-color:#58c4dd59;background:var(--os-signal-dim)}.os-btn{display:inline-flex;align-items:center;gap:7px;padding:7px 14px;border-radius:var(--os-r-btn);font-size:12.5px;font-weight:600;cursor:pointer;border:1px solid var(--os-hairline-2);background:var(--os-panel-2);color:var(--os-ink)}.os-btn:hover{border-color:var(--os-slate)}.os-btn.primary{background:var(--os-signal);border-color:var(--os-signal);color:#04181e}.os-btn.primary:hover{filter:brightness(1.08)}.os-btn.danger{color:var(--os-crit);border-color:#f8717166;background:var(--os-crit-dim)}.os-btn:disabled{opacity:.45;cursor:not-allowed}.os-btn.sm{padding:4px 10px;font-size:11.5px}.os-table-wrap{overflow-x:auto}.os-table{width:100%;border-collapse:collapse;font-size:13px}.os-table th{text-align:left;font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--os-slate);font-weight:600;padding:8px 10px;border-bottom:1px solid var(--os-hairline)}.os-table td{padding:9px 10px;border-bottom:1px solid var(--os-hairline);vertical-align:middle}.os-table tr:last-child td{border-bottom:none}.os-table td.num{font-family:var(--os-mono);font-variant-numeric:tabular-nums;text-align:right}.os-table th.num{text-align:right}.os-feed{display:flex;flex-direction:column}.os-feed-item{display:flex;gap:10px;align-items:flex-start;padding:9px 2px;border-bottom:1px solid var(--os-hairline);font-size:12.5px}.os-feed-item:last-child{border-bottom:none}.os-feed-item .t{font-family:var(--os-mono);font-size:10.5px;color:var(--os-slate);white-space:nowrap;padding-top:2px}.os-feed-item .msg{color:var(--os-mist);min-width:0}.os-feed-item .msg strong{color:var(--os-ink);font-weight:600}.os-feed-dot{width:7px;height:7px;border-radius:50%;margin-top:6px;flex:none;background:var(--os-slate)}.os-feed-dot.success{background:var(--os-cash)}.os-feed-dot.warning{background:var(--os-warn)}.os-feed-dot.critical{background:var(--os-crit)}.os-feed-dot.info{background:var(--os-signal)}.os-login{min-height:100dvh;display:grid;place-items:center;padding:20px}.os-login-card{width:100%;max-width:360px}.os-login-card .os-logo{justify-content:center;padding-bottom:22px}.os-input{width:100%;padding:9px 12px;border-radius:var(--os-r-btn);background:var(--os-panel-2);border:1px solid var(--os-hairline-2);color:var(--os-ink);font-size:13.5px;font-family:inherit}.os-input:focus{outline:none;border-color:var(--os-signal)}.os-field{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.os-field label{font-size:11.5px;color:var(--os-mist)}.os-error{color:var(--os-crit);font-size:12.5px;margin-top:10px}.os-jarvis-scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#030406b3;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:100;display:flex;align-items:flex-start;justify-content:center;padding-top:14vh}.os-jarvis{width:min(640px,92vw);background:var(--os-panel);border:1px solid var(--os-hairline-2);border-radius:14px;box-shadow:0 24px 80px #0009;overflow:hidden}.os-jarvis-head{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--os-hairline)}.os-jarvis-orb{width:22px;height:22px;border-radius:50%;flex:none;background:radial-gradient(circle at 35% 30%,#9adfef,var(--os-signal) 55%,#10394a);box-shadow:0 0 14px #58c4dd80;animation:os-orb 3.2s ease-in-out infinite}@keyframes os-orb{0%,to{transform:scale(1);opacity:.95}50%{transform:scale(1.08);opacity:1}}.os-jarvis-head input{flex:1;background:none;border:none;color:var(--os-ink);font-size:15px;font-family:inherit;outline:none}.os-jarvis-head input::placeholder{color:var(--os-slate)}.os-jarvis-head kbd{font-family:var(--os-mono);font-size:10px;color:var(--os-slate);border:1px solid var(--os-hairline-2);border-radius:5px;padding:2px 6px}.os-jarvis-body{padding:12px 16px 16px;max-height:46vh;overflow-y:auto}.os-jarvis-answer{font-size:13.5px;color:var(--os-ink);white-space:pre-wrap;line-height:1.6}.os-jarvis-hints{display:flex;flex-wrap:wrap;gap:8px}.os-jarvis-hints button{background:var(--os-panel-2);border:1px solid var(--os-hairline-2);color:var(--os-mist);border-radius:999px;padding:5px 12px;font-size:11.5px;cursor:pointer}.os-jarvis-hints button:hover{color:var(--os-ink);border-color:var(--os-slate)}.os-jarvis-confirm{margin-top:12px;padding:12px;border:1px solid rgba(245,165,36,.4);background:var(--os-warn-dim);border-radius:var(--os-r-card)}.os-jarvis-confirm p{margin:0 0 10px;font-size:13px}.os-jarvis-thinking{color:var(--os-slate);font-size:12.5px;font-family:var(--os-mono);animation:os-orb 1.4s ease-in-out infinite}.os-bars{display:flex;align-items:flex-end;gap:3px;height:72px}.os-bars .bar{flex:1;min-width:4px;background:var(--os-hairline-2);border-radius:2px 2px 0 0;position:relative}.os-bars .bar.cash{background:#34d399a6}.os-bars .bar:hover{filter:brightness(1.3)}.os-empty{color:var(--os-slate);font-size:12.5px;padding:18px 0;text-align:center}.os-loading{color:var(--os-slate);font-family:var(--os-mono);font-size:12px;padding:30px 0;text-align:center;animation:os-orb 1.4s ease-in-out infinite}.os-note{font-size:11.5px;color:var(--os-slate)}.os-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.os-thumb{width:44px;height:55px;object-fit:cover;border-radius:6px;border:1px solid var(--os-hairline-2);background:var(--os-panel-2)}.os-kanban{display:flex;gap:12px;overflow-x:auto;padding-bottom:10px;align-items:flex-start}.os-kcol{min-width:230px;flex:0 0 230px;background:var(--os-panel);border:1px solid var(--os-hairline);border-radius:var(--os-r-card);padding:12px}.os-kcol h3{margin:0 0 10px;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--os-slate);display:flex;justify-content:space-between}.os-kcol h3 .count{font-family:var(--os-mono);color:var(--os-mist)}.os-kcard{background:var(--os-panel-2);border:1px solid var(--os-hairline-2);border-radius:8px;padding:9px 11px;margin-bottom:8px;cursor:pointer;font-size:12.5px}.os-kcard:hover{border-color:var(--os-signal)}.os-kcard.active{border-color:var(--os-signal);box-shadow:0 0 0 1px var(--os-signal)}.os-kcard .who{font-weight:600;color:var(--os-ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.os-kcard .meta{color:var(--os-slate);font-size:11px;margin-top:3px;display:flex;gap:6px;flex-wrap:wrap;align-items:center}.os-qa{border-bottom:1px solid var(--os-hairline);padding:8px 0;font-size:12.5px}.os-qa:last-child{border-bottom:none}.os-qa .q{color:var(--os-slate);font-size:11px;letter-spacing:.03em;text-transform:uppercase}.os-qa .a{color:var(--os-ink);margin-top:2px;white-space:pre-wrap}@media(max-width:860px){.os-shell{grid-template-columns:1fr}.os-sidebar{position:static;height:auto;flex-direction:row;align-items:center;overflow-x:auto}.os-sidebar-foot{display:none}.os-main{padding:18px 14px 60px}}@media(prefers-reduced-motion:reduce){.os-jarvis-orb,.os-loading,.os-jarvis-thinking{animation:none}}.os-hero{padding:34px 0 10px;text-align:center}.os-hero pre{display:inline-block;margin:0;font-family:JetBrains Mono,monospace;font-size:clamp(6px,1.1vw,11px);line-height:1.15;letter-spacing:1px;color:#2e343d;text-align:left;-webkit-user-select:none;user-select:none}.os-hero .sub{display:block;margin-top:10px;color:var(--os-slate);font-size:12.5px}.os-chat{max-width:680px;margin:18px auto 6px;background:var(--os-panel, #0b0d10);border:1px solid var(--os-line, #1c2027);border-radius:12px;padding:12px}.os-chat form{display:flex;gap:10px;align-items:center}.os-chat input{flex:1;background:transparent;border:0;outline:0;color:var(--os-ink, #e6e9ee);font-size:13.5px}.os-chips{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:12px}.os-chips button{background:#0e1116;border:1px solid #1c2027;color:#aab2bf;border-radius:8px;padding:7px 12px;font-size:12px;cursor:pointer}.os-chips button:hover{border-color:#2a3140;color:#e6e9ee}.os-toolgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}.os-tool{background:#0b0d10;border:1px solid #1c2027;border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:8px}.os-tool h3{margin:0;font-size:14px}.os-tool .meta{color:var(--os-slate);font-size:12px;line-height:1.5}.os-tool .foot{margin-top:auto;display:flex;gap:8px;align-items:center;padding-top:10px}.os-flow{display:flex;gap:0;align-items:stretch;overflow-x:auto;padding:8px 0 16px}.os-flow-col{min-width:190px;display:flex;flex-direction:column;gap:10px}.os-flow-link{display:flex;align-items:center;color:#2e343d;padding:0 4px}.os-flow-node{background:#0e1116;border:1px solid #1c2027;border-radius:10px;padding:10px 12px;font-size:12.5px;cursor:pointer}.os-flow-node:hover{border-color:#2a3140}.os-flow-node .t{font-weight:600}.os-flow-node .d{color:var(--os-slate);font-size:11.5px;margin-top:3px}.os-flow-node .a{color:#58c4dd;font-size:11px;margin-top:4px;font-family:JetBrains Mono,monospace}.os-logo img{width:20px;height:20px;object-fit:contain}
