body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.canvas-container{align-items:center;display:flex;justify-content:center}:root{--font-body:"Roboto","Helvetica","Arial",sans-serif;--surface-0:#0f1115;--surface-1:#1b1d23;--surface-2:#20242d;--surface-3:#0b0d10;--surface-modal:#0f1115e6;--surface-muted:#ffffff0a;--surface-inverse:#0b0b0d;--header-surface:#0f1115d9;--header-surface-muted:#12141abf;--overlay-backdrop:#0000008c;--overlay-backdrop-strong:#000000b3;--border-subtle:#ffffff1f;--border-strong:#ffffff38;--border-faint:#ffffff14;--text-primary:#f5f7fb;--text-secondary:#c8d0dd;--text-muted:#f5f7fbb3;--text-inverse:#0f1115;--accent-primary:#90caf9;--accent-secondary:#f48fb1;--accent-info:#64b5f6;--accent-success:#66bb6a;--accent-warning:#ffb74d;--accent-error:#ef5350;--accent-focus:#64b5f6;--accent-cta:#00e6ff;--accent-cta-strong:#0ff;--warning-surface:#ffeb3b14;--warning-border:#ffeb3b66;--success-glow:0 0 0 1px #66bb6a66,0 6px 18px #0006;--chip-bg:#ffffff14;--chip-border:#ffffff1f;--link:#90caf9;--link-hover:#bbdefb;--shadow-elevated:0 10px 30px #00000073;--shadow-strong:0 14px 40px #0009;--progress-track:#ffffff14;--progress-fill:var(--accent-secondary);--eraser-color:#ff80ab;--eraser-band-color:#f5f5f5}:root.theme-light{--surface-0:#f3f5f9;--surface-1:#fff;--surface-2:#f3f6fb;--surface-3:#e8edf5;--surface-modal:#fffffff2;--surface-muted:#0000000a;--surface-inverse:#0f1115;--header-surface:#ffffffeb;--header-surface-muted:#f3f6fbe6;--overlay-backdrop:#00000059;--overlay-backdrop-strong:#00000073;--border-subtle:#00000014;--border-strong:#00000024;--border-faint:#0000000f;--text-primary:#0f172a;--text-secondary:#334155;--text-muted:#334155b8;--text-inverse:#fff;--accent-primary:#1976d2;--accent-secondary:#f48fb1;--accent-info:#1976d2;--accent-success:#2e7d32;--accent-warning:#f9a825;--accent-error:#d32f2f;--accent-focus:#1976d2;--accent-cta:#0ea5e9;--accent-cta-strong:#0284c7;--warning-surface:#ffeb3b29;--warning-border:#f9a82573;--success-glow:0 0 0 1px #2e7d3247,0 6px 18px #0f172a2e;--chip-bg:#0000000a;--chip-border:#00000014;--link:#1565c0;--link-hover:#0d47a1;--shadow-elevated:0 10px 24px #0f172a29;--shadow-strong:0 16px 40px #0f172a38;--progress-track:#0f172a14;--progress-fill:var(--accent-primary);--eraser-color:#ff80ab;--eraser-band-color:#f5f5f5}:root.theme-highContrast{--surface-0:#000;--surface-1:#0d0d0d;--surface-2:#1a1a1a;--surface-3:#000;--surface-modal:#000000eb;--surface-muted:#ffffff14;--surface-inverse:#fff;--header-surface:#000000f2;--header-surface-muted:#000000e6;--overlay-backdrop:#000000b3;--overlay-backdrop-strong:#000000d1;--border-subtle:#ff0;--border-strong:#ff0;--border-faint:#ff06;--text-primary:#fff;--text-secondary:#e6e6e6;--text-muted:#ffffffb3;--text-inverse:#0f1115;--accent-primary:#ff0;--accent-secondary:#ff1493;--accent-info:#0ff;--accent-success:#0f0;--accent-warning:#ff0;--accent-error:red;--accent-focus:#0ff;--accent-cta:#0ff;--accent-cta-strong:#00b8ff;--warning-surface:#ffff0029;--warning-border:#ff09;--success-glow:0 0 0 1px #0f09,0 0 0 3px #00ff0040;--chip-bg:#ffff001f;--chip-border:#ffff0080;--link:#ff0;--link-hover:#b3b300;--shadow-elevated:0 0 0 2px #ff0;--shadow-strong:0 0 0 3px #ff0;--progress-track:#ff03;--progress-fill:var(--accent-primary);--eraser-color:#ff1493;--eraser-band-color:#fff}:root.theme-oled{--surface-0:#000;--surface-1:#0a0a0a;--surface-2:#0f0f0f;--surface-3:#040404;--surface-modal:#000000e0;--surface-muted:#ffffff14;--surface-inverse:#0f1115;--header-surface:#000000e6;--header-surface-muted:#0a0a0ad1;--overlay-backdrop:#0009;--overlay-backdrop-strong:#000000bf;--border-subtle:#ffffff1f;--border-strong:#fff3;--border-faint:#ffffff14;--text-primary:#f5f7fb;--text-secondary:#cfd8e3;--text-muted:#f5f7fba6;--text-inverse:#0f1115;--accent-primary:#64b5f6;--accent-secondary:#ff6ea8;--accent-info:#64b5f6;--accent-success:#4caf50;--accent-warning:#ffb74d;--accent-error:#f44336;--accent-focus:#64b5f6;--accent-cta:#00bcd4;--accent-cta-strong:#26c6da;--warning-surface:#ffb74d33;--warning-border:#ffb74d80;--success-glow:0 0 0 1px #4caf5061,0 10px 30px #0000008c;--chip-bg:#ffffff14;--chip-border:#ffffff29;--link:#64b5f6;--link-hover:#bbdefb;--shadow-elevated:0 12px 30px #0000008c;--shadow-strong:0 18px 50px #000000b3;--progress-track:#ffffff14;--progress-fill:var(--accent-secondary);--eraser-color:#ff80ab;--eraser-band-color:#f5f5f5}.gol-surface{background:#1b1d23;background:var(--surface-1);border:1px solid #ffffff1f;border:1px solid var(--border-subtle);border-radius:12px;box-shadow:0 10px 30px #00000073;box-shadow:var(--shadow-elevated)}.gol-surface,.gol-surface-strong{color:#f5f7fb;color:var(--text-primary)}.gol-surface-strong{background:#20242d;background:var(--surface-2);border:1px solid #ffffff38;border:1px solid var(--border-strong);border-radius:12px;box-shadow:0 14px 40px #0009;box-shadow:var(--shadow-strong)}.gol-divider{border-color:#ffffff1f;border-color:var(--border-subtle)}.gol-loading-overlay{align-items:center;background:#00000059;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:9999}.gol-loading-card{background:#121212;border-radius:8px;box-shadow:0 4px 16px #0009;color:#fff;min-width:220px;padding:18px 22px;text-align:center}.gol-loading-title{font-size:16px;margin-bottom:8px}.gol-loading-progress{font-size:14px;margin-bottom:8px}.gol-loading-error{margin-top:6px}.gol-loading-error button{background:#2b6cb0;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:6px 10px}.speed-gauge{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--surface-modal);border:1px solid var(--border-subtle);border-radius:8px;box-shadow:0 4px 12px #0000004d;color:var(--text-primary);font-family:Courier New,monospace;font-size:12px;position:fixed;transition:all .3s ease;-webkit-user-select:none;user-select:none;z-index:1100}.speed-gauge.embedded{position:static;z-index:auto}.speed-gauge.minimized{align-items:center;border-radius:50%;cursor:pointer;display:flex;font-size:16px;height:32px;justify-content:center;width:32px}.speed-gauge.minimized:hover{background:var(--surface-3);transform:scale(1.1)}.speed-gauge.compact{min-width:140px;padding:8px}.speed-gauge.expanded{min-width:180px;padding:12px}.gauge-header{align-items:center;border-bottom:1px solid var(--border-subtle);display:flex;justify-content:space-between;margin-bottom:8px;padding-bottom:4px}.gauge-title{color:var(--accent-success);font-size:11px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.gauge-controls{display:flex;gap:2px}.gauge-button{align-items:center;background:var(--surface-muted);border:1px solid var(--border-subtle);border-radius:3px;color:var(--text-secondary);cursor:pointer;display:flex;font-size:10px;height:18px;justify-content:center;transition:all .2s ease;width:18px}.gauge-button:hover{background:var(--surface-2);border-color:var(--border-strong);color:var(--text-primary)}.gauge-content{display:flex;flex-direction:column;gap:4px}.metric-row{align-items:center;display:flex;justify-content:space-between;padding:1px 0}.metric-row.primary{font-size:13px;font-weight:700}.metric-label{color:var(--text-muted);min-width:45px}.metric-value{color:var(--text-primary);font-weight:700;min-width:35px;text-align:right}.performance-indicator{background:var(--border-faint);border-radius:2px;height:4px;margin-top:6px;overflow:hidden;position:relative}.performance-bar{border-radius:2px;height:100%;min-width:2px;transition:width .3s ease,background-color .3s ease}@media (max-width:768px){.speed-gauge{font-size:11px}.speed-gauge.compact{min-width:120px}.speed-gauge.expanded{min-width:160px}}@keyframes performance-warning{0%,to{opacity:1}50%{opacity:.7}}.speed-gauge .metric-value[style*="rgb(244, 67, 54)"]{animation:performance-warning 1s infinite}#root,body,html{background:#000;height:100%;margin:0;overflow:hidden;padding:0;width:100%}.canvas-container{height:100%;position:relative;width:100%}
/*# sourceMappingURL=main.79f53d5a.css.map*/