:root,[data-theme=amber]{--bg:#0f1419;--surface:#1a222d;--cell-bg:#151c26;--cell-hover:#1f2a38;--border:#2a3544;--text-primary:#e8edf4;--text-secondary:#8b9cb3;--text-muted:#5a6a80;--accent:#f0a030;--accent-dim:#c48428;--accent-bg:#f0a0301f;--accent-glow:#f0a03040;--accent-soft:#f0a03059;--accent-text:#1a1208;--success:#5cb87a;--error:#e06060;--error-bg:#e060601f;--panel-bg:#1a222d99;--overlay-bg:#080c12b8;--grid-overlay-bg:#0f141973;--shadow-grid:0 8px 32px #00000059;--bg-glow-1:#f0a03014;--bg-glow-2:#5a78a00f;--heat-0:#5cb87ad9;--heat-0-border:#5cb87a80;--heat-1:#5cb87a80;--heat-1-border:#5cb87a4d;--heat-2:#8b9cb34d;--heat-3:#e0606073;--heat-3-border:#e060604d;--heat-4:#e06060d9;--heat-4-border:#e0606080;--font-display:"DM Sans", system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, monospace}[data-theme=ocean]{--bg:#0a1218;--surface:#122028;--cell-bg:#0e1a22;--cell-hover:#162834;--border:#243442;--text-primary:#e4eef4;--text-secondary:#7a9cb0;--text-muted:#4d6a7a;--accent:#3ecfd6;--accent-dim:#2a9ea4;--accent-bg:#3ecfd61f;--accent-glow:#3ecfd640;--accent-soft:#3ecfd659;--accent-text:#062024;--success:#4ec992;--error:#e07070;--error-bg:#e070701f;--panel-bg:#122028a6;--overlay-bg:#060e14bf;--grid-overlay-bg:#0a121873;--shadow-grid:0 8px 32px #0006;--bg-glow-1:#3ecfd612;--bg-glow-2:#28648c14}[data-theme=forest]{--bg:#0c1210;--surface:#152019;--cell-bg:#111a15;--cell-hover:#1c2b22;--border:#263830;--text-primary:#e6f0ea;--text-secondary:#84a892;--text-muted:#567060;--accent:#6ecf8a;--accent-dim:#4fa866;--accent-bg:#6ecf8a1f;--accent-glow:#6ecf8a40;--accent-soft:#6ecf8a59;--accent-text:#0a1a10;--success:#5cb87a;--error:#d87070;--error-bg:#d870701f;--panel-bg:#152019a6;--overlay-bg:#080e0abf;--grid-overlay-bg:#0c121073;--shadow-grid:0 8px 32px #00000061;--bg-glow-1:#6ecf8a12;--bg-glow-2:#3c644614}[data-theme=dusk]{--bg:#100e16;--surface:#1c1828;--cell-bg:#161222;--cell-hover:#252035;--border:#322e44;--text-primary:#ece8f4;--text-secondary:#9a92b0;--text-muted:#645a78;--accent:#b48cff;--accent-dim:#9268d8;--accent-bg:#b48cff1f;--accent-glow:#b48cff40;--accent-soft:#b48cff59;--accent-text:#140e22;--success:#6ec992;--error:#e07088;--error-bg:#e070881f;--panel-bg:#1c1828a6;--overlay-bg:#0c0812bf;--grid-overlay-bg:#100e1673;--shadow-grid:0 8px 32px #0006;--bg-glow-1:#b48cff14;--bg-glow-2:#64468c12}[data-theme=light]{--bg:#eef1f5;--surface:#fff;--cell-bg:#f4f6f9;--cell-hover:#e8ecf2;--border:#d4dbe4;--text-primary:#1a2230;--text-secondary:#5a6a80;--text-muted:#8b9cb3;--accent:#d4880a;--accent-dim:#b06e00;--accent-bg:#d4880a1a;--accent-glow:#d4880a33;--accent-soft:#d4880a4d;--accent-text:#fff8ee;--success:#3a9e5c;--error:#d04040;--error-bg:#d040401a;--panel-bg:#ffffffd9;--overlay-bg:#141c2873;--grid-overlay-bg:#eef1f58c;--shadow-grid:0 8px 32px #1428501a;--bg-glow-1:#d4880a0f;--bg-glow-2:#5078b40d;--heat-0:#3a9e5cbf;--heat-0-border:#3a9e5c73;--heat-1:#3a9e5c73;--heat-1-border:#3a9e5c40;--heat-2:#8b9cb359;--heat-3:#d0404066;--heat-3-border:#d0404040;--heat-4:#d04040bf;--heat-4-border:#d0404073}[data-theme=classic]{--bg:#f0f4f8;--surface:#fff;--cell-bg:#fff;--cell-hover:#edf2f7;--border:#cbd5e0;--grid-frame:#4a5568;--text-primary:#2d3748;--text-secondary:#718096;--text-muted:#a0aec0;--accent:#4299e1;--accent-dim:#3182ce;--accent-bg:#4299e11f;--accent-glow:#4299e138;--accent-soft:#4299e152;--accent-text:#fff;--success:#48bb78;--error:#c53030;--error-bg:#fed7d7;--panel-bg:#ffffffeb;--overlay-bg:#2d37486b;--grid-overlay-bg:#f0f4f88c;--shadow-grid:0 4px 24px #2d37481a;--bg-glow-1:#4299e112;--bg-glow-2:#7180960f;--heat-0:#48bb78bf;--heat-0-border:#48bb7873;--heat-1:#48bb7873;--heat-1-border:#48bb7840;--heat-2:#a0aec059;--heat-3:#c5303061;--heat-3-border:#c5303038;--heat-4:#c53030b8;--heat-4-border:#c530306b}*,:before,:after{box-sizing:border-box}body{min-height:100dvh;font-family:var(--font-display);color:var(--text-primary);background:var(--bg);background-image:radial-gradient(ellipse 80% 50% at 50% -20%, var(--bg-glow-1), transparent), radial-gradient(ellipse 60% 40% at 100% 100%, var(--bg-glow-2), transparent);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overscroll-behavior:none;margin:0;font-size:16px;line-height:1.5;transition:background-color .25s,color .25s}#app{width:100%;min-height:100dvh}button{font:inherit}
