:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#09090b;--panel:#18181b;--panel-2:#1f1f23;--border:#2a2a30;--text:#f4f4f5;--muted:#a1a1aa;--accent:#34d399;--accent-2:#10b981;--danger:#f87171;--ok:#34d399;--warn:#fbbf24;--grid-line:#27272a;--header-cell:#141417;--select:#34d39955;--select-border:#34d399;--shadow:0 12px 40px #00000073;--radius:12px;--sans:Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;font-family:var(--sans);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;line-height:1.45}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:radial-gradient(1100px 560px at 8% -12%, #064e3b66 0%, transparent 50%), radial-gradient(900px 500px at 100% 0%, #1e3a5f44 0%, transparent 45%), var(--bg);color:var(--text);min-width:960px}button,input{font:inherit;color:inherit}button{cursor:pointer;border:1px solid var(--border);background:var(--panel-2);border-radius:8px;padding:.4rem .75rem;transition:border-color .15s,background .15s,transform .1s}button:hover:not(:disabled){background:#27272a;border-color:#3f3f46}button:active:not(:disabled){transform:translateY(1px)}button:disabled{opacity:.4;cursor:not-allowed}.btn.primary{color:#ecfdf5;background:linear-gradient(135deg,#059669,#047857);border-color:#065f46;font-weight:600}.btn.ghost{background:0 0}.btn.tiny{padding:.2rem .45rem;font-size:.72rem}code{font-family:var(--mono);font-size:.78rem}.app{flex-direction:column;min-height:100%;display:flex}.header{border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:20;background:#18181be0;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 1.25rem;display:flex;position:sticky;top:0}.brand{align-items:center;gap:.85rem;display:flex}.logo{width:40px;height:40px;box-shadow:var(--shadow);background:linear-gradient(135deg,#10b981,#0ea5e9);border-radius:12px;place-items:center;font-size:1.2rem;display:grid}.header h1{letter-spacing:-.02em;margin:0;font-size:1.05rem;font-weight:650}.tagline{color:var(--muted);margin:.1rem 0 0;font-size:.8rem}.header-meta{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.5rem;display:flex}.header-actions{gap:.35rem;display:flex}.pill{border:1px solid var(--border);background:var(--panel);border-radius:999px;padding:.28rem .65rem;font-size:.75rem}.pill.live{color:var(--ok);background:#052e1c;border-color:#065f46}.pill.idle,.pill.mute{color:var(--muted)}.main{flex:1;grid-template-columns:minmax(0,1fr) 340px;gap:0;min-height:0;display:grid}.left-col{flex-direction:column;gap:.65rem;min-height:0;padding:.85rem 1rem 1.25rem;display:flex;overflow:auto}.right-col{border-left:1px solid var(--border);background:#0f0f11eb;flex-direction:column;gap:.75rem;max-height:calc(100vh - 64px);padding:.75rem;display:flex;overflow:auto}.panel{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:.75rem .85rem}.panel-head{justify-content:space-between;align-items:baseline;gap:.5rem;margin-bottom:.45rem;display:flex}.panel-head h2{letter-spacing:.04em;text-transform:uppercase;color:#d4d4d8;margin:0;font-size:.78rem;font-weight:650}.muted,.panel-hint,.empty{color:var(--muted);margin:0 0 .5rem;font-size:.8rem}.muted.tiny,.tiny{font-size:.72rem}.panel-hint code{color:#a7f3d0}.formula-bar{background:var(--panel);border:1px solid var(--border);border-radius:10px;align-items:center;gap:.5rem;padding:.4rem .55rem;display:flex}.fx-ref{font-family:var(--mono);color:#a7f3d0;text-align:center;background:#052e1c;border:1px solid #065f46;border-radius:6px;min-width:2.6rem;padding:.25rem .45rem;font-size:.78rem;font-weight:600}.fx-label{font-family:var(--mono);color:var(--muted);background:0 0;border:none;border-radius:4px;padding:.15rem .35rem;font-size:.75rem;font-style:italic}.fx-label:hover{color:#a7f3d0;background:#052e1c}.fx-input{border:1px solid var(--border);background:#0c0c0e;border-radius:6px;outline:none;flex:1;padding:.35rem .55rem}.fx-input:focus{border-color:#059669}.spreadsheet-panel{flex:1;min-height:420px;padding:.65rem}.sheet-meta{justify-content:space-between;align-items:center;margin-bottom:.45rem;display:flex}.sheet-tab{color:#a7f3d0;background:#052e1c;border:1px solid #065f46;border-bottom:none;border-radius:8px 8px 0 0;padding:.25rem .7rem;font-size:.78rem;font-weight:600}.grid-scroll{border:1px solid var(--border);background:#0c0c0e;border-radius:8px;max-height:calc(100vh - 180px);overflow:auto}.sheet{border-collapse:collapse;table-layout:fixed;width:max-content;min-width:100%;font-size:.82rem}.sheet th,.sheet td{border:1px solid var(--grid-line);vertical-align:middle;min-width:96px;max-width:160px;height:28px;padding:0}.sheet thead th,.sheet .row-head,.sheet .corner{background:var(--header-cell);color:var(--muted);text-align:center;z-index:2;font-size:.72rem;font-weight:600;position:sticky}.sheet thead th{top:0}.sheet .row-head,.sheet .corner{width:40px;min-width:40px;max-width:40px;left:0}.sheet .corner{z-index:3}.sheet td{cursor:cell;background:#121214;position:relative}.sheet td.header-cell{color:#e4e4e7;background:#1a1a1f;font-weight:650}.grid-scroll:focus{outline-offset:-2px;outline:2px solid #05966966}.grid-scroll:focus:not(:focus-visible){outline:none}.sheet td.selected{background:color-mix(in srgb, var(--select) 28%, #121214);z-index:1}.sheet td.active-cell{outline:2px solid var(--select-border);outline-offset:-2px;box-shadow:inset 0 0 0 1px var(--select-border);z-index:2}.sheet td.selected.active-cell{background:color-mix(in srgb, var(--select) 40%, #121214)}.sheet td.editing{outline:2px solid var(--accent);outline-offset:-2px;z-index:3;background:#052e1c}.sheet td.formula-range{outline-offset:-2px;z-index:2;background:#1a3846;outline:2px solid #38bdf8}.sheet td.formula-cell .cell-text{color:#6ee7b7}.sheet td.num .cell-text{text-align:right;font-variant-numeric:tabular-nums}.cell-text{white-space:nowrap;text-overflow:ellipsis;pointer-events:none;-webkit-user-select:none;user-select:none;padding:.2rem .45rem;display:block;overflow:hidden}.cell-input{background:#052e1c;border:none;outline:none;width:100%;height:100%;padding:.2rem .4rem}.chart-svg{width:100%;height:auto;margin:.25rem 0}.chart-bar{fill:#34d399;opacity:.9}.chart-line{stroke:#38bdf8;stroke-width:2.5px}.chart-label{fill:var(--muted);font-size:8px}.chart-legend{gap:.25rem;margin:.35rem 0 0;padding:0;list-style:none;display:grid}.chart-legend li{color:var(--muted);justify-content:space-between;gap:.5rem;font-size:.75rem;display:flex}.chart-legend strong{color:var(--text);font-weight:600}.status-block{margin-bottom:.65rem}.status-row{justify-content:space-between;align-items:center;margin-bottom:.25rem;display:flex}.status-row strong{font-size:.8rem}.hl-list{margin:0;padding:0;list-style:none}.hl-list li{align-items:center;gap:.45rem;margin-bottom:.25rem;font-size:.78rem;display:flex}.hl-swatch{border:1px solid #3f3f46;border-radius:999px;width:10px;height:10px}.tools-list,.activity-list{flex-direction:column;gap:.55rem;max-height:280px;margin:0;padding:0;list-style:none;display:flex;overflow:auto}.tools-list li p,.activity-list li p{color:var(--muted);margin:.15rem 0 0;font-size:.75rem}.tool-row,.act-row{justify-content:space-between;align-items:center;gap:.4rem;display:flex}.tool-row code,.act-row code{color:#a7f3d0}.badge{text-transform:uppercase;letter-spacing:.04em;border:1px solid var(--border);border-radius:999px;padding:.12rem .4rem;font-size:.65rem;font-weight:650}.badge.ro{color:#93c5fd;background:#0c1a2e;border-color:#1e3a5f}.badge.rw{color:#fcd34d;background:#1c1408;border-color:#78350f}.badge.se{color:#fca5a5;background:#1f0a0a;border-color:#7f1d1d}.activity-list time{color:#71717a;margin-top:.15rem;font-size:.68rem;display:block}.demo-banner{z-index:50;color:#ecfdf5;box-shadow:var(--shadow);background:#064e3bf2;border:1px solid #059669;border-radius:999px;align-items:baseline;gap:.55rem;max-width:min(920px,94vw);padding:.55rem 1rem;font-size:.82rem;font-weight:600;display:flex;position:fixed;bottom:1.1rem;left:50%;transform:translate(-50%)}.demo-banner span{color:#a7f3d0;font-size:.78rem;font-weight:500}.demo-spotlight{z-index:5;border-radius:10px;position:relative;box-shadow:0 0 0 2px #34d399,0 0 0 6px #34d39933!important}.demo-pulse{animation:1.4s ease-in-out infinite pulse}@keyframes pulse{0%,to{box-shadow:0 0 0 2px #34d399,0 0 0 6px #34d39933}50%{box-shadow:0 0 0 2px #6ee7b7,0 0 0 10px #34d39922}}@media (width<=1100px){.main{grid-template-columns:minmax(0,1fr) 300px}}
