.bluetooth-card{background:linear-gradient(180deg, var(--white-88), #f8fafcd1);border:1px solid var(--slate-12);border-radius:16px;margin-bottom:14px;padding:10px}.bluetooth-state{font-size:.84rem}.bluetooth-state.is-connected{color:#15803d}.bluetooth-state.is-connecting{color:#1d4ed8}.bluetooth-state.is-error{color:#b45309}.bluetooth-state.is-idle{color:#475569}.bluetooth-copy,.bluetooth-note,.bluetooth-error{margin:0;font-size:.84rem;line-height:1.45}.bluetooth-copy{color:#334155}.bluetooth-note{color:#475569;margin-top:8px}.bluetooth-error{color:#b91c1c;margin-top:10px;font-weight:600}.bluetooth-debug-card{color:#e2e8f0;background:#0f172af0;border-radius:16px;margin-top:12px;padding:12px}.bluetooth-diagnostic-card{border:1px solid var(--slate-16);background:#1e293be6;border-radius:14px;gap:10px;padding:12px;display:grid}.bluetooth-diagnostic-card.is-healthy{border-color:#22c55e3d}.bluetooth-diagnostic-card.is-watch{border-color:#f59e0b47}.bluetooth-diagnostic-card.is-degraded{border-color:#f8717147}.bluetooth-diagnostic-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.bluetooth-diagnostic-head strong{color:#f8fafc;font-size:.98rem}.bluetooth-diagnostic-pill{letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;background:var(--slate-16);color:#cbd5e1;border-radius:999px;align-items:center;padding:6px 10px;font-size:.72rem;font-weight:800;display:inline-flex}.bluetooth-diagnostic-pill.is-healthy{color:#bbf7d0;background:#22c55e2e}.bluetooth-diagnostic-pill.is-browser{color:#bfdbfe;background:#3b82f633}.bluetooth-diagnostic-pill.is-bluetooth{color:#fde68a;background:#f59e0b33}.bluetooth-diagnostic-pill.is-cube-protocol{color:#fecaca;background:#f871712e}.bluetooth-diagnostic-metrics{flex-wrap:wrap;gap:8px;display:flex}.bluetooth-diagnostic-metrics span{background:var(--slate-12);color:#e2e8f0;border-radius:999px;padding:6px 9px;font-size:.74rem}.bluetooth-debug-list{gap:10px;display:grid}.bluetooth-debug-toolbar{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-bottom:10px;display:flex}.bluetooth-debug-mode-toggle{gap:8px;margin-right:auto;display:inline-flex}.bluetooth-saved-chip.is-active{color:#0f3d58;background:linear-gradient(135deg,#e0e7fffa,#bae6fdf0);border-color:#7dd3fc6b;box-shadow:0 10px 20px #2563eb14}.bluetooth-debug-entry{word-break:break-word;background:#1e293beb;border-radius:12px;gap:4px;padding:10px;font-size:.84rem;line-height:1.5;display:grid}.bluetooth-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px;display:grid}.bluetooth-secondary-actions{margin-top:10px}.bluetooth-field{gap:8px;margin-top:10px;display:grid}.big-status.is-good{color:#15803d;background:#22c55e24}.big-status.is-warn{color:#b45309;background:#f59e0b29}.big-status.is-bad{color:#b91c1c;background:#ef444424}.bluetooth-input{border:1px solid var(--slate-40);width:100%;font:inherit;color:#0f172a;background:var(--white-90);border-radius:12px;padding:9px 11px}.bluetooth-input:focus{border-color:#2563eb6b;outline:2px solid #2563eb3d}.bluetooth-meta{color:#475569;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px;font-size:.84rem;display:grid}.bluetooth-meta span{border:1px solid var(--slate-14);background:#ffffffc2;border-radius:12px;gap:4px;padding:9px 10px;display:grid}.bluetooth-saved-list{gap:8px;margin-top:12px;display:grid}.bluetooth-saved-chips{flex-wrap:wrap;gap:8px;display:flex}.bluetooth-saved-chip{appearance:none;background:var(--white-90);color:#0f3d58;font:inherit;cursor:pointer;border:1px solid #3b82f62e;border-radius:999px;padding:7px 11px;font-size:.88rem;font-weight:700}.bluetooth-derived-grid{margin-top:10px}.bluetooth-derived-grid span{place-items:start}.app-shell.theme-dark .app-stage,.app-shell.theme-dark .info-card,.app-shell.theme-dark .controls-card,.app-shell.theme-dark .settings-summary-row span,.app-shell.theme-dark .games-page-summary span,.app-shell.theme-dark .settings-control-block,.app-shell.theme-dark .settings-toggle-row,.app-shell.theme-dark .settings-note-strip,.app-shell.theme-dark .settings-meta-grid span,.app-shell.theme-dark .speed-card,.app-shell.theme-dark .bluetooth-card,.app-shell.theme-dark .games-viewport-toolbar,.app-shell.theme-dark .home-quick-status span,.app-shell.theme-dark .bluetooth-meta span,.app-shell.theme-dark .move-history-card,.app-shell.theme-dark .home-debug-shell,.app-shell.theme-dark .game-choice,.app-shell.theme-dark .games-menu-card,.app-shell.theme-dark .status-pill{border-color:var(--slate-16);box-shadow:0 18px 42px var(--abyss-24);background:#0d131fd6}.app-shell.theme-dark .settings-section-card{border-color:var(--slate-14);background:linear-gradient(#0c121ef5,#080d17f0);box-shadow:0 20px 48px #0206174d}.app-shell.theme-dark .settings-section-card.is-general{background:radial-gradient(circle at 100% 0,#7dd3fc24,#0000 34%),linear-gradient(#0c121efa,#080d17f5)}.app-shell.theme-dark .settings-section-card.is-hardware{background:radial-gradient(circle at 100% 0,#a7f3d01f,#0000 34%),linear-gradient(#0c121efa,#080d17f5)}.app-shell.theme-dark .settings-section-card.is-developer{background:radial-gradient(circle at 100% 0,#fde0471a,#0000 34%),linear-gradient(#0c121efa,#080d17f5)}.app-shell.theme-dark .bluetooth-input,.app-shell.theme-dark select,.app-shell.theme-dark input[type=text],.app-shell.theme-dark input[type=number]{border-color:var(--slate-18);color:#f8fbff;background:#070c14eb}.app-shell.theme-dark .bluetooth-input::placeholder{color:#7f8ca3}.app-shell.theme-dark .bluetooth-saved-chip.is-active{color:#f8fbff;background:linear-gradient(135deg,#7dd3fc38,#c4b5fd38);border-color:#bfdbfe38;box-shadow:0 12px 24px #082f4947}.app-shell.theme-dark .settings-note-strip{background:var(--ink-72);color:#dbe4f3}.app-shell.theme-dark .settings-note-strip span{color:#94a3b8}.app-shell.theme-dark .algorithm-library-input,.app-shell.theme-dark .algorithm-library-search input{border-color:var(--slate-18);color:#f8fbff;background:#070c14eb}.app-shell.theme-dark .algorithm-library-case-card{background:var(--ink-76);border-color:var(--slate-14)}.app-shell.theme-dark .algorithm-library-case-head strong{color:#f8fbff}.app-shell.theme-dark .algorithm-library-case-head span,.app-shell.theme-dark .algorithm-library-search{color:#94a3b8}.app-shell.theme-dark .algorithm-library-badge{background:var(--slate-12);color:#cbd5e1}.app-shell.theme-dark .algorithm-library-tag{color:#bae6fd;background:#38bdf829}.app-shell.theme-dark .algorithm-library-note-count,.app-shell.theme-dark .algorithm-library-field span{color:#94a3b8}.action-button:disabled,.move-button:disabled{cursor:not-allowed;opacity:.56;filter:none;box-shadow:none;transform:none}.algorithm-guide-overlay-backdrop{z-index:80;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0f172a94;place-items:center;padding:clamp(18px,3vw,36px);display:grid;position:fixed;inset:0}.algorithm-guide-overlay-card{border:1px solid var(--slate-22);background:linear-gradient(145deg,#f8fafcf7,#eff6fff5);border-radius:32px;grid-template-columns:minmax(260px,320px) minmax(0,1fr);gap:clamp(18px,3vw,30px);width:min(1180px,100%);max-height:min(86vh,920px);padding:clamp(20px,3vw,32px);display:grid;overflow:auto;box-shadow:0 30px 80px #0f172a52}.algorithm-guide-overlay-case{align-content:start;gap:14px;display:grid}.algorithm-guide-overlay-case h2{margin:0;font-size:clamp(1.7rem,2.8vw,2.4rem);line-height:1.05}.algorithm-guide-overlay-art{background:linear-gradient(145deg, var(--white-98), #e2e8f0d6);border:1px solid var(--slate-18);border-radius:28px;padding:16px;box-shadow:inset 0 1px #ffffffbf}.algorithm-guide-overlay-image{background:var(--white-96);border-radius:20px;width:100%;height:auto;display:block}.algorithm-guide-overlay-image-fallback{color:#475569;text-align:center;place-items:center;gap:8px;min-height:260px;display:grid}.algorithm-guide-overlay-notation{background:var(--ink-06);color:#0f172a;white-space:normal;word-break:break-word;border-radius:18px;padding:14px 16px;font-size:.95rem;line-height:1.7;display:block}.algorithm-guide-overlay-sequence-panel{align-content:start;gap:18px;display:grid}.algorithm-guide-overlay-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.algorithm-guide-overlay-sequence{flex-wrap:wrap;align-content:start;gap:14px;display:flex}.algorithm-guide-overlay-sequence .pll-trainer-move{border-radius:18px;padding:16px 20px;font-size:clamp(1.45rem,2vw,2rem)}.algorithm-guide-overlay-note{background:var(--white-72);color:#334155;border-radius:18px;margin:0;padding:14px 16px;font-size:1rem;font-weight:700;line-height:1.7}@media (width<=900px){.algorithm-guide-overlay-card{grid-template-columns:1fr}.algorithm-guide-overlay-head{flex-direction:column}}.pll-debug-card{border:1px solid var(--slate-18);background:#f8fafce6;border-radius:18px;padding:16px}.pll-debug-grid{color:#334155;word-break:break-word;gap:8px;font-size:.9rem;line-height:1.5;display:grid}.game-card{min-height:unset;background:radial-gradient(circle at top, var(--white-96), #f8fafceb 58%, #f1f5f9eb);gap:16px;display:grid}.game-stats{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;display:grid}.game-stat{border:1px solid var(--slate-14);background:#f8fafceb;border-radius:16px;gap:6px;padding:12px;display:grid}.game-stat strong{color:#0f172a;font-size:1.15rem}.snake-board{box-shadow:inset 0 1px 0 var(--white-08), 0 20px 36px var(--ink-16);background:linear-gradient(#0f172af5,#1e293bf5);border-radius:22px;gap:6px;padding:14px;display:grid}.snake-cell{aspect-ratio:1;border:1px solid var(--slate-08);background:#4755696b;border-radius:10px}.snake-cell.is-head{background:linear-gradient(135deg,#84cc16,#4d7c0f);box-shadow:0 0 0 2px #d9f99d47}.snake-cell.is-snake{background:linear-gradient(135deg,#22c55e,#15803d)}.snake-cell.is-food{background:linear-gradient(135deg,#fb7185,#ea580c);box-shadow:0 0 18px #fb718547}.game-help{color:#475569;flex-wrap:wrap;align-items:center;gap:8px;font-size:.92rem;display:flex}.game-help span,.game-help strong{border:1px solid var(--slate-14);background:#f1f5f9f5;border-radius:999px;padding:8px 12px}.game-help strong{color:#1d4ed8}.rhythm-shell-card{background:radial-gradient(circle at top right, #818cf824, transparent 28%), radial-gradient(circle at top left, #22d3ee1f, transparent 24%), var(--white-96)}.rhythm-stage{min-height:360px;box-shadow:inset 0 1px 0 var(--white-08);background:radial-gradient(circle at top,#3b82f62e,#0000 32%),linear-gradient(#0f172afa,#1e293bfa);border-radius:24px;position:relative;overflow:hidden}.rhythm-stage-glow{filter:blur(24px);pointer-events:none;background:radial-gradient(circle at 50% 28%,#c4b5fd3d,#0000 28%),radial-gradient(circle at 50% 72%,#22d3ee29,#0000 34%);position:absolute;inset:-12%}.rhythm-lanes{grid-template-columns:repeat(6,minmax(0,1fr));display:grid;position:absolute;inset:0}.rhythm-lane{border-left:1px solid var(--slate-14);position:relative}.rhythm-lane:last-child{border-right:1px solid var(--slate-14)}.rhythm-lane-label{letter-spacing:.1em;text-transform:uppercase;color:#e2e8f0b3;text-align:center;font-size:.72rem;font-weight:800;position:absolute;top:10px;left:50%;transform:translate(-50%)}.rhythm-hit-zone{color:#fef08a;letter-spacing:.14em;text-transform:uppercase;background:#facc151f;border:2px solid #facc15cc;border-radius:18px;place-items:center;height:50px;font-size:.78rem;font-weight:900;display:grid;position:absolute;bottom:48px;left:5%;right:5%}.magical-hit-zone{box-shadow:0 0 0 1px #facc154d,0 0 28px #facc152e,inset 0 0 24px #facc1514}.rhythm-note{text-align:center;width:84px;box-shadow:0 14px 24px var(--ink-16);color:#0f172a;border-radius:16px;margin-left:0;padding:10px 8px;font-size:.82rem;font-weight:900;position:absolute}.rhythm-note.is-single{background:linear-gradient(135deg,#93c5fd,#60a5fa)}.rhythm-note.is-inverse{background:linear-gradient(135deg,#fca5a5,#f87171)}.rhythm-note.is-double{background:linear-gradient(135deg,#fde68a,#fbbf24)}.rhythm-note.is-combo{color:#fff;background:linear-gradient(135deg,#c4b5fd,#8b5cf6);width:108px}.rhythm-note.is-ritual{color:#fff;width:116px;box-shadow:0 14px 24px var(--ink-22), 0 0 24px #ec489947;background:linear-gradient(135deg,#f9a8d4,#ec4899)}.rhythm-phrase-overlay{pointer-events:none;justify-content:center;display:flex;position:absolute;top:18px;left:18px;right:18px}.rhythm-phrase-card{background:var(--ink-84);width:min(540px,100%);box-shadow:0 18px 36px #0f172a47, inset 0 1px 0 var(--white-06);color:#e2e8f0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid #818cf847;border-radius:22px;gap:10px;padding:18px 20px;display:grid}.rhythm-phrase-card strong{color:#f8fafc;font-size:1.2rem}.rhythm-judge-burst{letter-spacing:.12em;border-radius:999px;padding:10px 16px;font-size:1rem;font-weight:900;position:absolute;bottom:116px;left:50%;transform:translate(-50%)}.rhythm-judge-burst.is-perfect{color:#166534;background:#dcfce7}.rhythm-judge-burst.is-good{color:#1d4ed8;background:#dbeafe}.rhythm-judge-burst.is-miss{color:#991b1b;background:#fee2e2}.rhythm-spell-burst{letter-spacing:.08em;text-transform:uppercase;color:#fff;background:#6366f1d1;border-radius:999px;padding:10px 16px;font-size:.9rem;font-weight:900;position:absolute;top:106px;left:50%;transform:translate(-50%);box-shadow:0 14px 32px #4f46e542}.rhythm-spell-burst.is-spark{background:linear-gradient(135deg,#38bdf8f2,#6366f1f2)}.rhythm-spell-burst.is-earth{background:linear-gradient(135deg,#f59e0bf2,#d946eff2)}.rhythm-spell-burst.is-ritual{background:linear-gradient(135deg,#ec4899f2,#a855f7f2)}.spellbook-grid,.spell-debug-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.spellbook-card{border:1px solid var(--slate-16);color:#334155;background:#f8fafcf5;border-radius:18px;gap:6px;padding:14px;display:grid}.cube-scene{aspect-ratio:1;cursor:grab;-webkit-user-select:none;user-select:none;isolation:isolate;touch-action:none;width:min(100%,380px);margin:0 auto 28px;position:relative}.three-cube-scene{box-shadow:none;background:0 0;border-radius:24px}.three-cube-scene canvas{background:0 0;width:100%;height:100%;display:block}@media (width<=980px){.app-layout{grid-template-columns:1fr}.algorithm-library-hero,.algorithm-library-toolbar{grid-template-columns:1fr;display:grid}.algorithm-library-search{min-width:0}.algorithm-library-case-list,.insights-grid{grid-template-columns:1fr}.settings-summary-row{grid-template-columns:repeat(2,minmax(0,1fr))}.games-page-hero{grid-template-columns:1fr}.home-controls-card{position:static}}@media (width<=640px){.app-shell{padding-inline:14px}.theme-switch{padding:8px 12px;top:10px;left:10px}.app-stage,.controls-card,.info-card{border-radius:20px}.move-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.action-row,.pair-grid,.game-stats,.spellbook-grid,.spell-debug-grid{grid-template-columns:1fr}.card-head{flex-direction:column}.settings-summary-row,.home-quick-status{grid-template-columns:1fr}.algorithm-library-tabs,.algorithm-library-actions,.algorithm-library-hero-actions{width:100%}.algorithm-library-tabs .bluetooth-saved-chip,.algorithm-library-actions .bluetooth-saved-chip,.algorithm-library-hero-actions .bluetooth-saved-chip{justify-content:center;width:100%}}.snake-shell-card{background:radial-gradient(circle at top right, #60a5fa29, transparent 30%), radial-gradient(circle at bottom left, #22c55e24, transparent 28%), var(--white-92);overflow:hidden}.snake-layout{grid-template-columns:minmax(320px,560px) minmax(280px,360px);align-items:start;gap:20px;margin-top:18px;display:grid}.snake-layout.is-live{grid-template-columns:minmax(0,1.5fr) minmax(280px,360px)}.snake-main-panel{gap:14px;min-width:0;display:grid}.snake-canvas-wrap{border:1px solid var(--slate-18);box-shadow:inset 0 1px 0 var(--white-06), 0 28px 70px var(--ink-18);background:radial-gradient(circle at top,#22d3ee24,#0000 30%),radial-gradient(circle at 80% 18%,#8b5cf629,#0000 24%),linear-gradient(#0f172afa,#0c1222fa);border-radius:28px;padding:14px;position:relative;overflow:hidden}.snake-live-hud{grid-template-columns:minmax(220px,320px) minmax(0,1fr);gap:12px;display:grid}.snake-live-score,.snake-live-bonuses{color:#f8fafc;background:linear-gradient(180deg, var(--ink-84), var(--ink-72));border:1px solid var(--slate-16);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 18px 44px var(--abyss-22);border-radius:22px;gap:6px;padding:16px 18px;display:grid}.snake-live-score strong{letter-spacing:-.03em;font-size:clamp(1.4rem,3vw,2.2rem);line-height:1}.snake-live-score span:last-child,.snake-live-bonuses span:last-child,.snake-bonus-chip span,.snake-bonus-empty span{color:#e2e8f0e6;font-size:.9rem}.snake-live-bonuses{gap:10px}.snake-bonus-list{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;display:grid}.snake-bonus-chip{min-width:180px;box-shadow:inset 0 1px 0 var(--white-04);background:#1e293bd1;border:1px solid #60a5fa2e;border-radius:16px;gap:4px;padding:10px 12px;display:grid}.snake-bonus-chip.is-multiplier{background:linear-gradient(#3b82f63d,#1e293bd1);border-color:#60a5fa52}.snake-bonus-chip.is-slowmo{background:linear-gradient(#facc152e,#1e293bd1);border-color:#facc1547}.snake-bonus-chip.is-magnet{background:linear-gradient(#a855f738,#1e293bd1);border-color:#c084fc4d}.snake-bonus-chip strong,.snake-bonus-empty strong{color:#f8fafc}.snake-bonus-empty{gap:4px;display:grid}.snake-canvas{aspect-ratio:1;width:100%;max-width:none;box-shadow:inset 0 0 0 1px var(--white-03);border-radius:22px;margin:0 auto;display:block}.snake-side-panel{align-content:start;gap:14px;display:grid}.snake-layout.is-live .snake-side-panel{position:sticky;top:12px}.game-stats.is-compact{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:4px}@media (width<=1100px){.snake-layout.is-live{grid-template-columns:1fr}.snake-layout.is-live .snake-side-panel{position:static}.snake-live-hud{grid-template-columns:1fr}}.snake-mode-grid{gap:12px;display:grid}.snake-practice-list,.snake-review-list{gap:10px;display:grid}.game-panel-wrap:fullscreen{background:radial-gradient(circle at top,#38bdf81f,#0000 24%),radial-gradient(circle at 82% 14%,#a855f724,#0000 18%),linear-gradient(#050810 0%,#0a101b 44%,#0d1523 100%);padding:0;overflow:hidden}.games-page-layout.is-focused .games-viewport .info-card.game-card{min-height:calc(100vh - 250px)}.game-panel-wrap:fullscreen .snake-shell-card{min-height:calc(100vh - 36px)}.game-panel-wrap:fullscreen .snake-layout{grid-template-columns:1fr}.game-panel-wrap:fullscreen .snake-layout.is-live{grid-template-columns:1fr}.game-panel-wrap:fullscreen .snake-canvas-wrap{padding:20px}.game-panel-wrap:fullscreen .snake-canvas{max-height:calc(100vh - 260px)}.game-panel-wrap:fullscreen .snake-side-panel{grid-template-columns:repeat(2,minmax(0,1fr))}.snake-settings-grid{background:linear-gradient(180deg, var(--white-96), #f8fafceb);border:1px solid var(--slate-16);box-shadow:0 14px 26px var(--ink-06);border-radius:18px;gap:12px;padding:14px;display:grid}.snake-setting-row{color:#334155;gap:8px;font-size:.94rem;font-weight:600;display:grid}.snake-setting-row small{color:#64748b;font-size:.84rem;font-weight:500}.snake-setting-row input,.snake-setting-row select{background:var(--white-92);color:#0f172a;width:100%;font:inherit;border:1px solid #94a3b857;border-radius:12px;padding:10px 12px}.snake-setting-row input[type=range]{accent-color:#2563eb;background:0 0;border:0;padding:0}.snake-debug-card{color:#e2e8f0;box-shadow:0 16px 30px var(--ink-14);background:linear-gradient(#0f172af7,#0f172aed);border:1px solid #60a5fa29;border-radius:18px;gap:8px;padding:14px;font-size:.92rem;display:grid}.snake-preview-log{border-top:1px solid var(--slate-16);color:#cbd5e1;gap:6px;margin-top:8px;padding-top:10px;font-size:.84rem;display:grid}.snake-preview-log strong{color:#f8fafc}.snake-countdown-overlay{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);text-align:center;color:#dbeafe;background:radial-gradient(circle,#3b82f629,#020617d6 58%),#020617c7;border-radius:22px;align-content:center;place-items:center;gap:8px;padding:18px;display:grid;position:absolute;inset:14px;box-shadow:inset 0 0 0 1px #60a5fa24}.snake-countdown-overlay strong{color:#f8fafc;text-shadow:0 0 24px #60a5fa47;font-size:clamp(3rem,10vw,5.4rem);line-height:.9}.snake-hero-copy{color:#64748b;margin:8px 0 0;font-size:.95rem;line-height:1.5}.snake-learn-overlay{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#02061799;place-items:center;padding:18px;display:grid;position:absolute;inset:14px}.snake-learn-card{background:linear-gradient(180deg, var(--white-98), #f8fafcf5);border:1px solid #94a3b83d;border-radius:28px;gap:16px;width:min(100%,720px);padding:22px;display:grid;box-shadow:0 28px 80px #0f172a47}.snake-learn-meta{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.snake-learn-hero{grid-template-columns:minmax(180px,260px) minmax(0,1fr);align-items:center;gap:16px;display:grid}.snake-case-image-wrap{border:1px solid var(--slate-20);background:linear-gradient(#e0f2fe,#f8fafc);border-radius:22px;place-items:center;min-height:180px;padding:14px;display:grid}.snake-case-image{width:100%;max-width:240px;height:auto;display:block}.snake-notation-card{color:#f8fafc;background:#0f172afa;border:1px solid #60a5fa24;border-radius:22px;align-content:center;gap:8px;min-height:180px;padding:16px;display:grid}.snake-notation-card strong{font-size:clamp(1.2rem,2.1vw,1.7rem);line-height:1.3}.snake-progress-track{background:#94a3b83d;border-radius:999px;height:12px;overflow:hidden}.snake-progress-fill{border-radius:inherit;background:linear-gradient(90deg,#22c55e,#eab308,#ef4444);height:100%;transition:width .1s linear}.spell-defense-shell-card{border:1px solid var(--slate-12);min-height:0;box-shadow:inset 0 1px 0 var(--white-04), 0 28px 80px var(--abyss-28);background:radial-gradient(circle at top,#38bdf81a,#0000 24%),radial-gradient(circle at 86% 10%,#c4b5fd24,#0000 20%),linear-gradient(#070d18f5,#0a111ef5);border-radius:30px;grid-template-rows:auto minmax(0,1fr);gap:12px;padding:18px;display:grid;overflow:hidden}.app-shell.is-game-immersive .spell-defense-shell-card{height:100dvh;min-height:100dvh;box-shadow:none;border-radius:0;padding:18px 18px 16px}.spell-defense-topbar{justify-content:space-between;align-items:center;gap:14px;display:flex}.spell-defense-brand{align-items:center;gap:14px;min-width:0;display:flex}.spell-defense-brand-mark{color:#eff6ff;letter-spacing:.08em;background:radial-gradient(circle at 30% 30%,#bfdbfee6,#3b82f6d1 55%,#1e293bf5);border-radius:16px;place-items:center;width:44px;height:44px;font-size:.95rem;font-weight:900;display:grid;box-shadow:inset 0 1px #ffffff57,0 14px 24px #2563eb2e}.spell-defense-top-copy{color:#94a3b8;margin:4px 0 0;font-size:.84rem;line-height:1.35}.spell-defense-topbar-right{justify-items:end;gap:10px;display:grid}.spell-defense-top-actions,.spell-defense-command-bar{flex-wrap:wrap;gap:8px;display:flex}.spell-defense-layout{grid-template-columns:minmax(0,1fr);align-items:stretch;gap:0;height:100%;min-height:0;display:grid}.spell-defense-layout.has-spell-sidebar{grid-template-columns:190px minmax(0,1fr);gap:10px}.spell-defense-stage{border:1px solid var(--slate-18);height:100%;min-height:0;box-shadow:inset 0 1px 0 var(--white-05), 0 24px 60px var(--ink-16);background:radial-gradient(circle at top,#0ea5e929,#0000 28%),radial-gradient(circle at 78% 14%,#a855f729,#0000 20%),linear-gradient(#0f172afa,#0c1222fa);border-radius:28px;padding:14px;position:relative;overflow:hidden}.spell-defense-canvas{border-radius:22px;width:100%;max-width:100%;height:100%;display:block}.spell-defense-stage-menu{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0206177a;place-items:center;padding:24px;display:grid;position:absolute;inset:0}.spell-defense-stage-menu-card{background:var(--ink-92);width:min(100%,620px);box-shadow:0 24px 64px var(--abyss-34);border:1px solid #bfdbfe24;border-radius:22px;gap:12px;padding:18px;display:grid}.spell-defense-stage-game-list{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;display:grid}.spell-defense-scene-drawer{pointer-events:none;align-content:start;width:min(46vw,540px);display:grid;position:absolute;inset:20px 20px 20px auto}.spell-defense-scene-drawer-card{background:linear-gradient(180deg, #0f172af0, var(--ink-86));max-height:calc(100vh - 180px);box-shadow:0 24px 64px var(--abyss-34);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);pointer-events:auto;border:1px solid #bfdbfe24;border-radius:24px;gap:12px;padding:16px;display:grid;overflow:auto}.spell-defense-drawer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.spell-defense-scene-overlay{background:radial-gradient(circle at center, var(--ink-16), #02061761);pointer-events:none;place-items:center;padding:24px;display:grid;position:absolute;inset:0}.spell-defense-scene-card{background:linear-gradient(180deg, #0f172af0, var(--ink-84));width:min(100%,440px);box-shadow:0 24px 64px var(--abyss-34);text-align:center;color:#e2e8f0;pointer-events:auto;border:1px solid #bfdbfe2e;border-radius:24px;gap:10px;padding:22px;display:grid}.spell-defense-scene-card h3{color:#f8fafc;margin:0;font-size:1.5rem}.spell-defense-scene-card p{color:#e2e8f0e0;margin:0;line-height:1.5}.spell-defense-scene-actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.spell-defense-hud{pointer-events:none;z-index:2;position:absolute;inset:14px 14px auto}.spell-defense-status-strip{border:1px solid var(--slate-14);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#e2e8f0;background:#0f172acc;border-radius:12px;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:7px 12px;display:flex}.spell-defense-status-chunk{align-items:center;gap:6px;display:flex}.spell-defense-status-chunk span{letter-spacing:.07em;text-transform:uppercase;color:#bfdbfead;white-space:nowrap;font-size:.65rem}.spell-defense-status-chunk strong{color:#f8fafc;white-space:nowrap;font-size:.8rem}.spell-defense-inline-bar{background:var(--white-08);border-radius:999px;flex-shrink:0;width:44px;height:5px;overflow:hidden}.spell-defense-status-sep{background:var(--slate-20);flex-shrink:0;width:1px;height:14px}.spell-defense-pressure-badge{padding:2px 8px!important;font-size:.72rem!important}.spell-defense-gold-chip{color:#fbbf24;white-space:nowrap;font-size:.78rem;font-weight:700}.spell-defense-score-chip{color:#bfdbfeb8;white-space:nowrap;font-size:.78rem;font-weight:700}.spell-defense-meter-card{border:1px solid var(--slate-14);color:#e2e8f0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0f172ac7;border-radius:16px;gap:5px;padding:10px 12px;display:grid;box-shadow:0 12px 28px #0206172e}.spell-defense-meter-card span{letter-spacing:.08em;text-transform:uppercase;color:#bfdbfec2;font-size:.72rem}.spell-defense-meter-card strong{color:#f8fafc;font-size:.98rem}.spell-defense-meter-card small,.spell-defense-stage-pill small{color:#bfdbfeb8;font-size:.76rem;line-height:1.25}.spell-defense-meter-bar{background:var(--white-08);border-radius:999px;height:7px;overflow:hidden}.spell-defense-meter-fill{border-radius:inherit;height:100%;transition:width .18s}.spell-defense-meter-fill.is-core{background:linear-gradient(90deg,#f87171,#fb7185)}.spell-defense-meter-fill.is-mana{background:linear-gradient(90deg,#38bdf8,#22d3ee)}.spell-defense-meter-fill.is-wave{background:linear-gradient(90deg,#a78bfa,#818cf8)}.spell-defense-meter-fill.is-streak{background:linear-gradient(90deg,#fbbf24,#fb7185)}.spell-defense-stage-footer{pointer-events:none;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid;position:absolute;inset:auto 22px 84px}.spell-defense-rune-quickbar{background:var(--ink-70);border:1px solid var(--slate-14);color:#e2e8f0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:2;border-radius:16px;align-items:center;gap:10px;padding:7px 10px;display:flex;position:absolute;inset:auto 22px 136px;box-shadow:0 14px 32px #02061733}.spell-defense-rune-quickbar-head{flex:none;gap:2px;display:grid}.spell-defense-rune-quickbar-head span{letter-spacing:.08em;text-transform:uppercase;color:#bfdbfec2;font-size:.62rem}.spell-defense-rune-quickbar-head strong{color:#f8fafc;font-size:.78rem}.spell-defense-rune-quickbar-grid{scrollbar-width:thin;flex:auto;gap:6px;min-width:0;padding-bottom:2px;display:flex;overflow:auto hidden}.spell-defense-rune-tile{background:var(--white-06);border:1px solid var(--slate-12);border-radius:12px;flex:none;gap:4px;min-width:112px;max-width:132px;min-height:0;padding:6px 8px;display:grid}.spell-defense-rune-tile.is-ready{background:linear-gradient(135deg, #10b98129, var(--ink-22));border-color:#34d3993d}.spell-defense-rune-tile.is-cooling{background:linear-gradient(135deg, #3b82f61f, var(--ink-18));border-color:#60a5fa2e}.spell-defense-rune-tile-top{justify-content:space-between;align-items:start;gap:6px;display:flex}.spell-defense-rune-tile strong{color:#f8fafc;text-overflow:ellipsis;white-space:nowrap;font-size:.74rem;line-height:1.15;overflow:hidden}.spell-defense-rune-tile code{color:#e2e8f0d6;text-overflow:ellipsis;white-space:nowrap;font-size:.66rem;line-height:1.15;overflow:hidden}.spell-defense-rune-tile .spell-defense-mini-meta{padding:2px 6px;font-size:.64rem}.spell-defense-stage-dock{z-index:3;flex-wrap:wrap;justify-content:center;gap:10px;display:flex;position:absolute;inset:auto 22px 22px}.spell-defense-tray{border:1px solid var(--slate-14);min-height:220px;max-height:min(31vh,268px);box-shadow:inset 0 1px 0 var(--white-04), 0 20px 44px var(--abyss-24);background:linear-gradient(#0a0f1cf5,#0b1220e0);border-radius:24px;grid-template-rows:auto minmax(0,1fr);gap:10px;padding:10px;display:grid;overflow:hidden}.spell-defense-utility-drawer{z-index:4;width:min(42vw,560px);max-width:calc(100% - 44px);max-height:min(52vh,420px);position:absolute;inset:auto 22px 72px auto}.spell-defense-tray.is-collapsed{min-height:64px;max-height:64px}.spell-defense-tray-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.spell-defense-tray-tabs{flex-wrap:wrap;gap:8px;min-width:0;display:flex}.spell-defense-tray-tab,.spell-defense-tray-toggle{appearance:none;border:1px solid var(--slate-18);background:var(--ink-72);color:#dbeafe;cursor:pointer;border-radius:14px;transition:transform .14s,border-color .14s,background .14s,box-shadow .14s}.spell-defense-tray-tab{text-align:left;flex-direction:column;gap:3px;min-width:150px;padding:12px 16px;display:flex;box-shadow:0 10px 22px #02061729}.spell-defense-tray-tab strong{color:#f8fafc;letter-spacing:.01em;font-size:.92rem;font-weight:700}.spell-defense-tray-tab span{color:#bae6fdd1;font-size:.8rem;line-height:1.4}.spell-defense-tray-tab.is-active{box-shadow:0 0 0 1px #7dd3fc26, 0 16px 30px var(--abyss-24);background:#0e749038;border-color:#7dd3fc66}.spell-defense-tray-tab:hover,.spell-defense-tray-toggle:hover{box-shadow:0 16px 30px var(--abyss-24);background:#1e293beb;border-color:#7dd3fc47;transform:translateY(-1px)}.spell-defense-tray-toggle{white-space:nowrap;padding:12px 16px;font-size:.88rem;font-weight:700}.spell-defense-tray-body{min-height:0;padding-right:2px;overflow:auto}.spell-defense-tray.is-collapsed .spell-defense-tray-body{display:none}.spell-defense-tray-grid{gap:12px;display:grid}.spell-defense-tray-grid--intel,.spell-defense-tray-grid--resolver{grid-template-columns:1fr}.spell-defense-tray-card{min-height:0}.spell-defense-stage-dock .bluetooth-saved-chip,.spell-defense-top-actions .bluetooth-saved-chip{color:#e0f2fe;box-shadow:inset 0 1px 0 var(--white-05), 0 12px 24px #02061729;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0f172ac7;border-color:#7dd3fc24;padding:9px 13px;transition:transform .14s,background .14s,border-color .14s,box-shadow .14s}.spell-defense-stage-dock .bluetooth-saved-chip:hover,.spell-defense-top-actions .bluetooth-saved-chip:hover{box-shadow:inset 0 1px 0 var(--white-08), 0 16px 28px var(--abyss-22);background:#1e293beb;border-color:#93c5fd42;transform:translateY(-1px)}.spell-defense-stage-pill{background:var(--ink-72);border:1px solid var(--slate-12);color:#e2e8f0eb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;gap:4px;padding:10px 12px;display:grid}.spell-defense-stage-pill span{letter-spacing:.08em;text-transform:uppercase;color:#bfdbfec7;font-size:.74rem}.spell-defense-stage-pill strong{color:#f8fafc;font-size:.92rem}.spell-defense-stage-pill--focus{gap:5px;min-height:72px}.spell-defense-buffer-card,.spell-defense-shop-card,.spell-defense-input-card{background:linear-gradient(180deg, #0f172ae0, var(--ink-76));color:#f8fafc;border:1px solid var(--slate-14);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 18px 40px var(--ink-16);border-radius:20px;gap:8px;padding:16px;display:grid}.spell-defense-shop-card .speed-label,.spell-defense-input-card .speed-label{color:#bfdbfed6}.spell-defense-buffer-card strong,.spell-defense-shop-card strong,.spell-defense-input-card strong{color:#f8fafc}.spell-defense-buffer-card span:last-child,.spell-defense-input-card span:last-child{color:#e2e8f0db}.spell-defense-side{grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:min-content;align-content:start;gap:12px;padding-top:2px;display:grid}.spell-defense-panel{grid-column:span 12}.spell-defense-prefix-list,.spell-defense-upgrades,.spell-defense-spell-grid{gap:8px;display:grid}.spell-defense-quick-actions,.spell-defense-guide-list{gap:10px;display:grid}.spell-defense-spell-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.spell-defense-threat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.spell-defense-threat-panel{background:var(--white-06);border:1px solid var(--slate-12);border-radius:18px;gap:10px;padding:12px;display:grid}.spell-defense-threat-list{gap:8px;display:grid}.spell-defense-threat-chip{border:1px solid var(--slate-12);background:#0f172a52;border-radius:14px;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:10px 12px;display:grid}.spell-defense-threat-chip.is-queued{background:#1e293b38}.spell-defense-threat-chip strong{font-size:.94rem}.spell-defense-threat-chip span:last-child{color:#f8fafc;font-weight:700}.spell-defense-threat-dot{width:10px;height:10px;box-shadow:0 0 0 3px var(--white-08);border-radius:999px}.spell-defense-guide-step{background:var(--white-06);border:1px solid var(--slate-12);border-radius:16px;grid-template-columns:28px 1fr;align-items:start;gap:12px;padding:12px 14px;display:grid}.spell-defense-guide-step.is-threat strong{color:#fff;box-shadow:inset 0 1px #fff3}.spell-defense-guide-step strong{color:#f8fafc;background:#60a5fa2e;border-radius:999px;place-items:center;width:28px;height:28px;font-size:.88rem;display:grid}.spell-defense-guide-step span{color:#e2e8f0eb;line-height:1.45}.game-choice.is-compact{min-height:auto;padding:12px 14px}.spellbook-card.is-active{background:radial-gradient(circle at top left, #bfdbfe61, #eff6ffeb 48%), linear-gradient(180deg, var(--white-98), #eff6ffeb);border-color:#2563eb47;box-shadow:0 14px 28px #2563eb1f,inset 0 1px #fffc}.spellbook-card.is-muted{opacity:.72}.spellbook-card{background:linear-gradient(180deg, var(--white-96), #f8fafceb);border:1px solid var(--slate-18);box-shadow:0 10px 24px var(--ink-06);border-radius:18px;gap:6px;padding:12px 14px;transition:transform .14s,box-shadow .14s,border-color .14s;display:grid}.spellbook-card:hover{transform:translateY(-2px);box-shadow:0 16px 28px #0f172a17}.spellbook-card strong{color:#0f172a}.spellbook-card span{color:#475569;font-size:.92rem}.spellbook-card.is-compact{border-radius:15px;gap:3px;padding:10px 12px}.spellbook-card.is-compact strong{font-size:.92rem}.spellbook-card.is-compact span{font-size:.82rem;line-height:1.3}.spell-defense-card-headline{justify-content:space-between;align-items:center;gap:10px;display:flex}.spell-defense-mini-meta{background:var(--slate-14);color:#334155;letter-spacing:.04em;white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;padding:3px 7px;font-size:.72rem;font-weight:800;display:inline-flex}.spell-defense-mini-meta.is-ready{color:#d1fae5;background:#10b9812e}.spell-defense-mini-meta.is-cooling{color:#dbeafe;background:#3b82f629}.spell-defense-pill{letter-spacing:.08em;text-transform:uppercase;border-radius:999px;justify-content:center;align-items:center;padding:4px 8px;font-size:.7rem;font-weight:800;display:inline-flex}.spell-defense-pill.is-damage{color:#92400e;background:#fbbf242e}.spell-defense-pill.is-aoe{color:#9d174d;background:#f472b629}.spell-defense-pill.is-slow{color:#0c4a6e;background:#7dd3fc38}.spell-defense-pill.is-tower{color:#3730a3;background:#818cf833}.spell-defense-pill.is-trap{color:#9a3412;background:#fb923c2e}.spell-defense-pill.is-shield{color:#166534;background:#4ade802e}.spell-defense-pill.is-utility{color:#6b21a8;background:#c084fc2e}.spell-defense-stage:before{content:"";pointer-events:none;background:radial-gradient(circle at 18% 22%, var(--white-06), transparent 18%), radial-gradient(circle at 82% 32%, #60a5fa14, transparent 14%), radial-gradient(circle at 50% 84%, #c084fc14, transparent 18%);position:absolute;inset:0}.spell-defense-stage:after{content:"";pointer-events:none;background:linear-gradient(180deg, #0206171f, transparent 18%, transparent 78%, var(--abyss-26)), radial-gradient(circle at center, transparent 54%, var(--abyss-24) 100%);position:absolute;inset:0}.game-panel-wrap:fullscreen .spell-defense-shell-card{height:100dvh;min-height:100dvh;box-shadow:none;border-radius:0;padding:22px 22px 18px}.game-panel-wrap:fullscreen .spell-defense-layout{grid-template-columns:minmax(0,1fr);gap:14px}.game-panel-wrap:fullscreen .spell-defense-stage{min-height:0;padding:18px}.game-panel-wrap:fullscreen .spell-defense-stage-dock{inset:auto 26px 26px}.game-panel-wrap:fullscreen .spell-defense-tray{min-height:240px;max-height:min(30vh,292px)}.game-panel-wrap:fullscreen .spell-defense-utility-drawer{width:min(38vw,560px);max-height:min(46vh,430px);inset:auto 26px 104px auto}.game-panel-wrap:fullscreen .spell-defense-scene-drawer{width:min(42vw,580px);inset:26px 26px 26px auto}.game-panel-wrap:fullscreen .spell-defense-scene-drawer-card{max-height:calc(100vh - 172px)}.game-panel-wrap:fullscreen .spell-defense-spell-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}@media (width<=980px){.spell-defense-topbar,.spell-defense-brand{align-items:start}.spell-defense-topbar{flex-direction:column}.spell-defense-topbar-right{justify-items:stretch;width:100%}.spell-defense-top-actions,.spell-defense-command-bar{width:100%}.games-viewport .snake-layout,.settings-grid,.spell-defense-layout,.spell-defense-stage-footer,.spell-defense-threat-grid{grid-template-columns:1fr}.spell-defense-hud{flex-direction:column;inset:18px 18px auto}.spell-defense-status-rack,.spell-defense-runtime-rack,.spell-defense-tray-grid--intel,.spell-defense-tray-grid--resolver{grid-template-columns:1fr;width:100%}.spell-defense-stage-footer{inset:auto 16px 78px}.spell-defense-rune-quickbar{inset:auto 16px 128px}.spell-defense-scene-drawer{width:auto;inset:auto 16px 16px}.spell-defense-drawer-grid{grid-template-columns:1fr}.game-panel-wrap:fullscreen .spell-defense-layout{grid-template-columns:1fr}.snake-layout,:is(.snake-layout.is-live .snake-side-panel,.game-panel-wrap:fullscreen .snake-side-panel),.snake-learn-hero{grid-template-columns:1fr}}@media (width<=760px){.spell-defense-shell-card{border-radius:24px;padding:14px}.spell-defense-brand{gap:12px}.spell-defense-brand-mark{border-radius:14px;width:42px;height:42px;font-size:.84rem}.spell-defense-scene-card{border-radius:20px;padding:18px}.settings-toggle-row,.games-viewport-toolbar{flex-direction:column;align-items:stretch}.rhythm-phrase-card{padding:14px 16px}.rhythm-note{width:70px;font-size:.74rem}.rhythm-note.is-combo{width:90px}.rhythm-note.is-ritual{width:96px}.snake-learn-meta{grid-template-columns:1fr}.snake-canvas-wrap{padding:10px}.snake-live-hud{inset:18px 18px auto}.spell-defense-stage{padding:10px}.spell-defense-hud{inset:16px 16px auto}.spell-defense-stage-footer{inset:auto 16px 16px}.spell-defense-rune-quickbar{gap:8px;padding:6px 8px;inset:auto 16px 74px}.spell-defense-rune-quickbar-grid{gap:5px}.spell-defense-rune-tile{min-width:96px;max-width:112px;padding:5px 7px}.spell-defense-stage-dock{inset:auto 16px 16px}.spell-defense-tray{min-height:188px;max-height:min(34vh,236px);padding:8px}.spell-defense-utility-drawer{width:auto;max-width:none;max-height:min(50vh,360px);inset:auto 16px 84px}.spell-defense-tray-tab{min-width:116px;padding:9px 10px}.game-panel-wrap:fullscreen{padding:10px}.snake-learn-card{border-radius:22px;padding:16px}}@media (width<=560px){.spell-defense-tray-head{flex-direction:column;align-items:stretch}.spell-defense-tray-tabs{width:100%}.spell-defense-tray-tab{flex:42%;min-width:0}.spell-defense-tray-toggle{width:100%}}.spell-defense-spell-hud{border:1px solid var(--slate-12);box-shadow:inset 0 1px 0 var(--white-04), 0 16px 36px var(--abyss-22);background:#080c18d1;border-radius:18px;grid-template-rows:auto minmax(0,1fr);align-self:stretch;gap:6px;padding:10px;display:grid;position:relative;overflow:hidden}.spell-hud-head{border-bottom:1px solid var(--slate-10);flex-shrink:0;justify-content:space-between;align-items:center;gap:6px;padding:0 2px 5px;display:flex}.spell-hud-head span{letter-spacing:.08em;text-transform:uppercase;color:#bfdbfeb3;font-size:.62rem}.spell-hud-head strong{color:#f8fafc;white-space:nowrap;font-size:.72rem}.spell-hud-list{scrollbar-width:thin;scrollbar-color:var(--slate-20) transparent;flex-direction:column;gap:4px;display:flex;overflow:hidden auto}.spell-hud-entry{border:1px solid var(--slate-08);border-radius:10px;flex-shrink:0;gap:3px;padding:6px 8px;transition:background .2s,border-color .2s;display:grid}.spell-hud-entry.is-ready{background:#10b9811a;border-color:#34d39938}.spell-hud-entry.is-cooling{background:#162138b3;border-color:#60a5fa1a}.spell-hud-entry-head{justify-content:space-between;align-items:flex-start;gap:4px;display:flex}.spell-hud-entry-head strong{color:#f8fafc;text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;font-size:.73rem;line-height:1.2;overflow:hidden}.spell-hud-notation{color:#cbd5e1c7;word-break:break-word;overflow-wrap:break-word;-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:.6rem;line-height:1.35;display:-webkit-box;overflow:hidden}.spell-hud-cooldown-bar{background:#ffffff12;border-radius:999px;height:3px;margin-top:2px;overflow:hidden}.spell-hud-cooldown-fill{border-radius:inherit;background:linear-gradient(90deg,#3b82f6,#60a5fa);height:100%;transition:width .12s linear}.spell-hud-cooldown-fill.is-ready{background:linear-gradient(90deg,#10b981,#34d399)}@media (width<=860px){.spell-defense-layout.has-spell-sidebar{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.spell-defense-spell-hud{grid-template-rows:auto minmax(0,1fr);max-height:120px}.spell-hud-list{flex-direction:row;overflow:auto hidden}.spell-hud-entry{min-width:150px;max-width:200px}}.section-loading-card{border:1px solid var(--slate-16);background:linear-gradient(180deg, var(--white-92), #f8fafcc7);box-shadow:0 22px 48px var(--ink-08);border-radius:24px;gap:10px;padding:20px;display:grid}.section-loading-kicker{letter-spacing:.18em;text-transform:uppercase;color:#0f766e;font-size:.72rem;font-weight:800}.section-loading-card strong{font-family:var(--font-display);color:#0f172a;font-size:1.15rem}.cube-scene-loading-card{align-content:center;min-height:420px}.cube-scene-error-card{text-align:center;color:#e2e8f0;background:radial-gradient(circle at top,#38bdf81f,#0000 52%),#0f172a6b;align-content:center;justify-items:center;gap:8px;width:100%;height:100%;min-height:220px;padding:24px;display:grid}.cube-scene-error-card strong{max-width:20rem;font-family:var(--font-display);font-size:1rem;line-height:1.4}.section-loading-bar{background:var(--slate-14);border-radius:999px;height:8px;overflow:hidden}.section-loading-bar:after{content:"";border-radius:inherit;background:linear-gradient(90deg,#0ea5e9,#22d3ee,#f59e0b);width:38%;height:100%;animation:1.1s ease-in-out infinite ui-loading-slide;display:block}@keyframes ui-loading-slide{0%{transform:translate(-115%)}to{transform:translate(270%)}}.app-shell.theme-dark .section-loading-card{box-shadow:var(--surface-shadow-dark);background:linear-gradient(#0a0f1ae6,#0d131fd6)}.app-shell.theme-dark .section-loading-card strong{color:#f8fbff}.app-shell.theme-dark .skip-link{color:#082f49;background:#e0f2fef5}.stats-shell{gap:18px;width:100%;padding-bottom:32px;display:grid}.stats-copy{color:#64748b;max-width:720px;margin:0;font-size:.92rem;line-height:1.55}.stats-empty-card,.stats-summary-card,.stats-panel,.stats-solves-panel,.stats-solve-card{border:1px solid var(--slate-13);background:linear-gradient(180deg, var(--white-95), #f8fafcd1), var(--white-86);box-shadow:inset 0 1px 0 var(--white-90), 0 2px 8px var(--ink-04), 0 12px 28px var(--ink-05)}.stats-empty-card,.stats-panel,.stats-solves-panel{border-radius:22px;padding:16px}.stats-empty-card{gap:8px;padding:24px;display:grid}.stats-empty-card strong{color:#0f172a;letter-spacing:-.02em;font-size:1.1rem;font-weight:700}.stats-summary-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;display:grid}.stats-summary-grid--personal-bests{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.stats-summary-card{border-radius:18px;gap:5px;padding:14px 16px;transition:transform .14s,box-shadow .14s;display:grid}.stats-summary-card:hover{box-shadow:inset 0 1px 0 var(--white-90), 0 6px 20px var(--ink-08);transform:translateY(-1px)}.stats-summary-card .speed-label{letter-spacing:.12em;text-transform:uppercase;color:#94a3b8;font-size:.68rem;font-weight:800}.stats-summary-card strong{color:#0f172a;letter-spacing:-.04em;font-size:1.55rem;font-weight:800;line-height:1}.stats-summary-card--highlight strong{background:linear-gradient(135deg,#f43f5e,#e11d48);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.stats-summary-card--session strong{background:linear-gradient(135deg,#0ea5e9,#2563eb);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.stats-summary-card--highlight{background:radial-gradient(circle at top left, #f43f5e1a, transparent 50%), linear-gradient(180deg, var(--white-95), #fff5f7e0)}.stats-summary-card--session{background:radial-gradient(circle at top right, #0ea5e924, transparent 50%), linear-gradient(180deg, var(--white-95), #f0f9ffe0)}.stats-summary-card p{color:#94a3b8;margin:0;font-size:.76rem;line-height:1.4}.stats-layout{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.stats-panel{gap:14px;display:grid}.stats-panel--timeline{gap:18px}.stats-panel--filters{box-shadow:none;padding-block:10px;background:0 0;border:none;padding:0}.stats-panel-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.stats-panel-head h3{font-family:var(--font-display);letter-spacing:-.03em;color:#0f172a;margin:0;font-size:1rem;font-weight:700}.stats-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.stats-toolbar-label{color:#94a3b8;letter-spacing:.12em;text-transform:uppercase;font-size:.7rem;font-weight:700}.stats-zoom-picker,.stats-metric-picker,.stats-range-control{gap:8px;display:grid}.stats-metric-picker{flex:320px}.stats-range-control{flex:260px}.stats-filter-bar{flex-wrap:wrap;align-items:center;gap:8px 10px;display:flex}.stats-filter-popover-wrap{position:relative}.stats-filter-popover{z-index:15;border:1px solid var(--slate-16);background:linear-gradient(180deg, #0a0f1af7, #0d131ff0), var(--ink-92);min-width:min(92vw,320px);box-shadow:inset 0 1px 0 var(--white-06), 0 22px 44px #0f172a57;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:18px;gap:10px;padding:14px;display:grid;position:absolute;top:calc(100% + 10px);left:0}.stats-filter-popover-actions{justify-content:space-between;gap:8px;display:flex}.stats-filter-field{gap:6px;display:grid}.stats-filter-inline-field{align-items:center;gap:8px;min-width:0;display:inline-flex}.stats-filter-inline-label{color:#64748b;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;font-size:.7rem;font-weight:700}.stats-filter-field input{border:1px solid var(--slate-16);background:var(--ink-82);color:#e2e8f0;min-height:40px;font:inherit;box-shadow:inset 0 1px 0 var(--white-03);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;-webkit-appearance:none;border-radius:12px;padding:9px 11px}.stats-filter-inline-field input{width:min(100%,220px);min-width:0;min-height:34px;padding:7px 10px;font-size:.82rem}.stats-filter-field input::-webkit-calendar-picker-indicator{filter:invert(.92);opacity:.85}.stats-filter-field input::-webkit-datetime-edit{color:#e2e8f0}.stats-filter-field input::-webkit-datetime-edit-text{color:#e2e8f0}.stats-filter-field input::-webkit-datetime-edit-month-field{color:#e2e8f0}.stats-filter-field input::-webkit-datetime-edit-day-field{color:#e2e8f0}.stats-filter-field input::-webkit-datetime-edit-year-field{color:#e2e8f0}.stats-filter-field input::-webkit-datetime-edit-hour-field{color:#e2e8f0}.stats-filter-field input::-webkit-datetime-edit-minute-field{color:#e2e8f0}.stats-chip-row{flex-wrap:wrap;gap:6px;display:flex}.stats-chip-row--filters{justify-content:flex-end;margin-left:auto}.stats-chip-button{border:1px solid var(--slate-20);background:var(--white-88);color:#475569;cursor:pointer;box-shadow:0 1px 3px var(--ink-06);border-radius:999px;padding:6px 13px;font-size:.74rem;font-weight:700;transition:background .14s,border-color .14s,color .14s,transform .14s,box-shadow .14s}.stats-chip-button:hover,.stats-chip-button:focus-visible{border-color:#2563eb4d;transform:translateY(-1px);box-shadow:0 4px 10px #2563eb1f}.stats-chip-button.is-active{color:#f8fbff;background:linear-gradient(135deg,#0ea5e9,#2563eb);border-color:#0000;box-shadow:0 0 0 1px #0ea5e94d,0 8px 20px #2563eb3d}.stats-range-control input{accent-color:#0ea5e9;width:100%;margin:0}.stats-chart-meta{color:#94a3b8;flex-wrap:wrap;gap:6px 14px;font-size:.74rem;display:flex}.stats-chart-card{border:1px solid var(--slate-14);box-shadow:inset 0 1px 0 var(--white-90), 0 2px 12px var(--ink-04);background:radial-gradient(at 18% 0,#38bdf81f,#0000 56%),radial-gradient(at 82% 100%,#6366f114,#0000 48%),linear-gradient(#f8fafcfa,#f1f5f9e6);border-radius:20px;padding:16px 12px 10px;position:relative;overflow:hidden}.stats-chart-svg{width:100%;height:auto;display:block}.stats-grid-line{stroke:var(--slate-13);stroke-width:1px}.stats-grid-line.is-vertical{stroke-dasharray:3 7;stroke:var(--slate-10)}.stats-axis-label{fill:#94a3b8;font-family:Segoe UI,system-ui,sans-serif;font-size:10.5px}.stats-axis-label.is-right{fill:#b0bccc}.stats-axis-title{fill:#64748b;letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:700}.stats-line-path{fill:none;stroke:#0ea5e9;stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 1px 4px #0ea5e938)}.stats-line-path.is-dashed{stroke-dasharray:7 5;stroke-width:2px}.stats-focus-line{stroke:#0ea5e94d;stroke-width:1.5px;stroke-dasharray:4 5}.stats-point{fill:#fff;stroke:#0ea5e9;stroke-width:2.5px;cursor:pointer;transition:r .12s,filter .16s,fill .16s,stroke .16s}.stats-point:hover,.stats-point:focus-visible{filter:drop-shadow(0 0 6px #0ea5e980)}.stats-point.is-active{fill:#0ea5e9;stroke:#fff;filter:drop-shadow(0 0 7px #0ea5e999)}.stats-chart-tooltip{border:1px solid var(--slate-16);background:var(--white-96);min-width:160px;box-shadow:inset 0 1px 0 var(--white-90), 0 16px 32px var(--ink-14);pointer-events:none;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;gap:4px;padding:10px 13px;display:grid;position:absolute;transform:translate(-50%,-118%)}.stats-chart-tooltip strong{color:#0f172a;letter-spacing:-.02em;font-size:.94rem;font-weight:700}.stats-chart-tooltip span{color:#64748b;font-size:.76rem}.stats-legend{flex-wrap:wrap;gap:8px 14px;display:flex}.stats-legend-item{color:#475569;align-items:center;gap:7px;font-size:.78rem;display:inline-flex}.stats-legend-swatch{background:#94a3b8;border-radius:999px;width:10px;height:10px;box-shadow:inset 0 1px #fff6}.stats-legend-swatch.is-solve{background:linear-gradient(#38bdf8,#2563eb);box-shadow:0 2px 6px #0ea5e94d}.stats-legend-swatch.is-ao5{background:linear-gradient(#fbbf24,#f97316);box-shadow:0 2px 6px #fbbf244d}.stats-spotlight-card{border:1px solid var(--slate-13);box-shadow:inset 0 1px 0 var(--white-90), 0 4px 14px var(--ink-05);background:radial-gradient(circle at 0 0,#38bdf814,#0000 50%),linear-gradient(#f8fafcf5,#f1f5f9db);border-radius:20px;gap:14px;padding:14px 16px;display:grid}.stats-spotlight-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.stats-spotlight-head strong{color:#0f172a;letter-spacing:-.04em;font-size:1.5rem;font-weight:800;line-height:1;display:block}.stats-spotlight-head span:last-child{color:#94a3b8;font-size:.78rem}.stats-spotlight-metrics,.stats-solve-metrics{flex-wrap:wrap;gap:6px;display:flex}.stats-spotlight-metrics span,.stats-solve-metrics span{border:1px solid var(--slate-14);background:var(--white-70);color:#334155;border-radius:999px;padding:4px 10px;font-size:.73rem;font-weight:600;box-shadow:inset 0 1px #fffc}.stats-split-chart{gap:10px;display:grid}.stats-split-track{background:var(--slate-10);min-height:20px;box-shadow:inset 0 1px 2px var(--ink-06);border-radius:999px;display:flex;overflow:hidden}.stats-split-segment{min-width:0}.stats-split-axis{color:#94a3b8;justify-content:space-between;align-items:center;gap:12px;font-size:.74rem;display:flex}.stats-legend--splits{gap:6px 12px}.stats-cube-heatmap-panel{background:radial-gradient(circle at 16% 0%, #22c55e1f, transparent 30%), radial-gradient(circle at 86% 18%, #ef44441a, transparent 26%), linear-gradient(180deg, var(--white-96), #f8fafcdb);position:relative;overflow:hidden}.stats-cube-heatmap-grid{grid-template-columns:minmax(360px,.95fr) minmax(280px,1.05fr);align-items:stretch;gap:18px;display:grid}.stats-cube-map-card{border:1px solid var(--slate-14);background:linear-gradient(135deg, #0f172a09, var(--white-42)), var(--white-58);border-radius:20px;align-content:center;gap:14px;min-height:320px;padding:clamp(16px,2.5vw,26px);display:grid;position:relative;overflow:hidden}.stats-cube-net{grid-template-rows:repeat(3,minmax(86px,auto));grid-template-columns:repeat(4,minmax(72px,1fr));gap:10px;display:grid}.stats-cube-net-face{border:1px solid color-mix(in srgb, var(--stats-cube-face-color) 38%, var(--ink-16));background:linear-gradient(180deg, var(--white-74), #ffffff75), color-mix(in srgb, var(--stats-cube-face-color) var(--stats-cube-face-alpha), transparent);color:#0f172a;border-radius:14px;align-content:center;gap:3px;min-height:92px;padding:12px;display:grid;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff73}.stats-cube-net-face:before{content:"";border-top:5px solid var(--stats-cube-face-color);opacity:.82;pointer-events:none;position:absolute;inset:0}.stats-cube-net-face.is-dominant{border-color:color-mix(in srgb, var(--stats-cube-face-color) 72%, #0f172a);box-shadow:inset 0 1px 0 #ffffff7a, 0 14px 26px color-mix(in srgb, var(--stats-cube-face-color) 20%, transparent)}.stats-cube-net-face--u{grid-area:1/2}.stats-cube-net-face--l{grid-area:2/1}.stats-cube-net-face--f{grid-area:2/2}.stats-cube-net-face--r{grid-area:2/3}.stats-cube-net-face--b{grid-area:2/4}.stats-cube-net-face--d{grid-area:3/2}.stats-cube-net-face-label{font-size:1.35rem;font-weight:1000;line-height:1}.stats-cube-net-face-name,.stats-cube-net-face small{color:#64748b;font-size:.68rem;font-weight:800;line-height:1.1}.stats-cube-net-face strong{color:#0f172a;margin-top:4px;font-size:1.1rem;line-height:1}.stats-cube-net-face-meter{background:var(--ink-10);border-radius:999px;height:6px;margin-top:5px;overflow:hidden}.stats-cube-net-face-meter i{width:var(--stats-cube-face-bar);border-radius:inherit;background:var(--stats-cube-face-color);height:100%;display:block}.stats-cube-net-legend{color:#64748b;grid-template-columns:auto minmax(96px,1fr) auto;align-items:center;gap:10px;font-size:.72rem;font-weight:800;display:grid}.stats-cube-net-legend i{background:linear-gradient(90deg, var(--slate-22), #facc15, #ef4444);border-radius:999px;height:8px;display:block}.stats-cube-heatmap-summary{gap:14px;display:grid}.stats-cube-heatmap-kpis,.stats-cube-layer-grid{gap:10px;display:grid}.stats-cube-heatmap-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.stats-cube-heatmap-kpis span,.stats-cube-layer-card,.stats-cube-face-row{border:1px solid var(--slate-14);background:#ffffffad;border-radius:18px}.stats-cube-heatmap-kpis span{color:#64748b;gap:4px;padding:14px;font-size:.78rem;display:grid}.stats-cube-heatmap-kpis strong{color:#0f172a;font-size:1.25rem;line-height:1}.stats-cube-face-table{gap:9px;display:grid}.stats-cube-face-row{grid-template-columns:auto minmax(0,1fr) minmax(120px,.34fr);align-items:center;gap:12px;padding:10px 12px;display:grid}.stats-cube-face-chip{color:#0f172a;background:var(--stats-cube-face-color);width:40px;height:40px;box-shadow:0 10px 20px var(--ink-10);border-radius:14px;place-items:center;font-weight:1000;display:grid}.stats-cube-face-row strong{color:#0f172a}.stats-cube-face-row p{color:#64748b;margin:2px 0 0;font-size:.76rem}.stats-cube-face-meter{background:var(--slate-14);border-radius:999px;height:10px;overflow:hidden}.stats-cube-face-meter i{border-radius:inherit;background:linear-gradient(90deg,#22c55e,#facc15,#ef4444);height:100%;display:block}.stats-cube-layer-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.stats-cube-layer-card{align-items:center;gap:10px;padding:12px;display:flex}.stats-cube-layer-card>span{color:#fff;width:38px;height:38px;box-shadow:0 10px 20px var(--ink-12);border-radius:13px;flex:none;place-items:center;font-weight:1000;display:grid}.stats-cube-layer-card strong{color:#0f172a;font-size:.84rem;display:block}.stats-cube-layer-card p{color:#64748b;margin:2px 0 0;font-size:.74rem}.stats-insights-grid{grid-template-columns:1fr;gap:14px;display:grid}.stats-panel--stage-share{grid-column:auto}.stats-stage-share-card{gap:10px;display:grid}.stats-split-track--large{border-radius:12px;min-height:24px}.stats-stage-share-axis{color:#94a3b8;justify-content:space-between;align-items:center;gap:12px;font-size:.74rem;display:flex}.stats-spotlight-stage-grid{grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px;display:grid}.stats-spotlight-stage{border:1px solid var(--slate-12);background:#ffffffa3;border-radius:16px;gap:4px;padding:12px;transition:background .14s;display:grid}.stats-spotlight-stage:hover{background:var(--white-86)}.stats-spotlight-stage span,.stats-spotlight-stage small{color:#94a3b8;font-size:.72rem}.stats-spotlight-stage strong{color:#0f172a;letter-spacing:-.02em;font-size:.92rem;font-weight:700}.stats-composition-list{gap:10px;display:grid}.stats-composition-row{grid-template-columns:112px minmax(0,1fr);align-items:center;gap:12px;display:grid}.stats-composition-summary{text-align:left;cursor:pointer;background:0 0;border:0;gap:3px;padding:0;display:grid}.stats-composition-summary strong{color:#0f172a;font-size:.86rem;font-weight:700}.stats-composition-summary span{color:#94a3b8;font-size:.73rem}.stats-composition-track{background:var(--slate-10);min-height:20px;box-shadow:inset 0 1px 2px var(--ink-05);border-radius:999px;transition:box-shadow .16s;display:flex;overflow:hidden}.stats-composition-row.is-active .stats-composition-track{box-shadow:inset 0 1px #ffffff8f,0 0 0 1.5px #0ea5e93d,0 8px 20px #0ea5e91a}.stats-composition-segment{cursor:pointer;opacity:.9;border:0;min-width:0;padding:0;transition:filter .15s,opacity .15s}.stats-composition-segment:hover,.stats-composition-segment:focus-visible{opacity:1;filter:brightness(1.06)saturate(1.08)}.stats-distribution-chart{grid-template-columns:repeat(auto-fit,minmax(74px,1fr));align-items:end;gap:8px;min-height:220px;display:grid}.stats-distribution-bar{border:1px solid var(--slate-13);text-align:center;cursor:pointer;background:#f8fafcc7;border-radius:18px;grid-template-rows:minmax(140px,1fr) auto auto;align-items:end;gap:8px;padding:10px 8px;transition:transform .15s,border-color .15s,box-shadow .15s,background .15s;display:grid}.stats-distribution-bar:hover,.stats-distribution-bar:focus-visible{border-color:#2563eb38;transform:translateY(-2px);box-shadow:0 8px 20px #2563eb14}.stats-distribution-bar.is-active{background:radial-gradient(circle at top,#38bdf829,#0000 54%),#f0f9fff5;border-color:#0ea5e952;box-shadow:0 14px 28px #0ea5e924}.stats-distribution-bar-fill{background:linear-gradient(#38bdf8,#2563eb);border-radius:10px 10px 6px 6px;align-self:end;width:100%;min-height:10px;box-shadow:0 3px 8px #0ea5e94d}.stats-distribution-bar strong{color:#0f172a;letter-spacing:-.02em;font-size:.9rem;font-weight:700}.stats-distribution-bar span{color:#94a3b8;font-size:.68rem;line-height:1.35}.stats-stage-list{gap:10px;display:grid}.stats-stage-row{gap:7px;display:grid}.stats-stage-copy{justify-content:space-between;align-items:center;gap:12px;display:flex}.stats-stage-copy strong{color:#0f172a;font-size:.86rem;font-weight:700}.stats-stage-copy span{color:#64748b;font-size:.8rem}.stats-stage-bar-track{background:var(--slate-14);height:8px;box-shadow:inset 0 1px 2px var(--ink-05);border-radius:999px;overflow:hidden}.stats-stage-bar-fill{border-radius:inherit;background:linear-gradient(90deg,#10b981,#22c55e);height:100%;box-shadow:0 2px 6px #10b98147}.stats-solves-panel{gap:12px;display:grid}.stats-session-share-panel{gap:14px;display:grid}.stats-session-share-grid{grid-template-columns:1fr;gap:14px;display:grid}.stats-session-share-card{grid-template-columns:minmax(220px,.76fr) minmax(320px,1.24fr);align-content:start;align-items:center;gap:16px;padding:14px;display:grid}.stats-session-share-card .solve-share-actions{align-content:center;justify-items:start;gap:12px;display:grid}.stats-session-share-card .solve-share-actions .stats-copy{max-width:34rem}.stats-session-share-card .solve-share-preview-shell{border-radius:16px;justify-self:end;width:100%;max-width:520px;padding:8px}.stats-session-share-card .solve-share-preview-canvas{max-width:100%;box-shadow:0 14px 24px var(--ink-14);border-radius:12px;width:100%!important;height:auto!important}.stats-list-count{color:#94a3b8;font-size:.74rem;font-weight:600}.stats-solve-list-compact{border:1px solid var(--slate-13);background:var(--white-62);box-shadow:inset 0 1px 0 var(--white-90);border-radius:18px;overflow:hidden}.stats-solve-list-head,.stats-solve-row{grid-template-columns:96px 176px minmax(240px,1.8fr) minmax(160px,1fr) 108px;align-items:center;gap:12px;display:grid}.stats-solve-list-head{color:#94a3b8;letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid var(--slate-10);background:#f1f5f9eb;padding:10px 16px;font-size:.67rem;font-weight:800}.stats-solve-row{text-align:left;width:100%;color:inherit;cursor:pointer;background:0 0;border:0;border-top:1px solid #94a3b817;padding:11px 16px;transition:background .14s,box-shadow .14s}.stats-solve-row:first-of-type{border-top:none}.stats-solve-row:hover,.stats-solve-row:focus-visible,.stats-solve-row.is-active{background:#0ea5e912;box-shadow:inset 0 0 0 1px #0ea5e924}.stats-solve-row-time{color:#0f172a;letter-spacing:-.03em;font-size:.96rem;font-weight:800}.stats-solve-row-date,.stats-solve-row-splits,.stats-solve-row-details,.stats-solve-row-status{color:#64748b;font-size:.77rem;line-height:1.35}.stats-solve-row-splits{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.stats-solve-row-status{background:var(--slate-10);border:1px solid var(--slate-14);border-radius:999px;justify-self:start;padding:3px 9px;font-size:.72rem;font-weight:600}.stats-lucky-badge{letter-spacing:.04em;color:#713f12;white-space:nowrap;background:#fbbf242e;border:1px solid #fbbf246b;border-radius:999px;align-items:center;padding:2px 8px;font-size:.68rem;font-weight:700;display:inline-flex}.stats-lucky-badge--large{padding:4px 12px;font-size:.8rem}.stats-lucky-banner{background:#fbbf2414;border:1px solid #fbbf244d;border-radius:14px;align-items:flex-start;gap:12px;padding:12px 16px;display:flex}.stats-lucky-banner p{color:#78350f;margin:0;font-size:.82rem;line-height:1.5}.app-shell.theme-dark .stats-lucky-badge{color:#fde68a;background:#fbbf241f;border-color:#fbbf2447}.app-shell.theme-dark .stats-lucky-banner{background:#fbbf240f;border-color:#fbbf2433}.app-shell.theme-dark .stats-lucky-banner p{color:#fcd34d}.app-shell.theme-dark .stats-cube-heatmap-panel{background:radial-gradient(circle at 16% 0%, #22c55e1f, transparent 30%), radial-gradient(circle at 86% 18%, #ef44441a, transparent 26%), linear-gradient(180deg, var(--ink-90), var(--ink-72))}.app-shell.theme-dark .stats-cube-map-card,.app-shell.theme-dark .stats-cube-heatmap-kpis span,.app-shell.theme-dark .stats-cube-layer-card,.app-shell.theme-dark .stats-cube-face-row{background:#ffffff0b}.app-shell.theme-dark .stats-cube-net-face{background:linear-gradient(180deg, var(--ink-70), #0f172a85), color-mix(in srgb, var(--stats-cube-face-color) var(--stats-cube-face-alpha), transparent);color:#f8fafc}.app-shell.theme-dark .stats-cube-heatmap-kpis strong,.app-shell.theme-dark .stats-cube-face-row strong,.app-shell.theme-dark .stats-cube-layer-card strong,.app-shell.theme-dark .stats-cube-net-face strong{color:#f8fafc}.app-shell.theme-dark .stats-cube-net-face-name,.app-shell.theme-dark .stats-cube-net-face small{color:#cbd5e1}@media (width<=900px){.stats-layout,.stats-cube-heatmap-grid,.stats-cube-heatmap-kpis,.stats-cube-layer-grid{grid-template-columns:1fr}.stats-cube-face-row{grid-template-columns:auto minmax(0,1fr)}.stats-cube-face-meter{grid-column:1/-1}.stats-session-share-card{grid-template-columns:1fr}.stats-session-share-card .solve-share-preview-shell{justify-self:stretch;max-width:100%}}@media (width<=640px){.stats-summary-grid{grid-template-columns:repeat(2,1fr)}.stats-cube-heatmap-panel{box-sizing:border-box;justify-self:stretch;width:100%;max-width:calc(100vw - 28px)}.stats-cube-heatmap-grid,.stats-cube-map-card{min-width:0}.stats-cube-map-card{padding:14px}.stats-cube-net{grid-template-rows:repeat(4,minmax(82px,auto));grid-template-columns:repeat(3,minmax(0,1fr))}.stats-cube-net-face--u{grid-area:1/2}.stats-cube-net-face--l{grid-area:2/1}.stats-cube-net-face--f{grid-area:2/2}.stats-cube-net-face--r{grid-area:2/3}.stats-cube-net-face--b{grid-area:3/2}.stats-cube-net-face--d{grid-area:4/2}.stats-cube-net-face{min-height:82px;padding:10px}.stats-toolbar{flex-direction:column;align-items:stretch}.stats-metric-picker,.stats-zoom-picker,.stats-range-control{flex:100%}.stats-chip-row{flex-wrap:wrap}.stats-filter-popover{width:min(320px,100vw - 32px);left:auto;right:0}.stats-solves-panel{padding:12px}.stats-session-share-grid{grid-template-columns:1fr}.stats-solve-card{gap:8px;padding:10px 12px}}@media (width<=420px){.stats-summary-grid{grid-template-columns:1fr}.stats-panel-head{flex-direction:column;align-items:flex-start}}.stats-solve-dialog-backdrop,.solve-analysis-overlay-backdrop{z-index:60;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);overscroll-behavior:contain;background:#0f172a8f;place-items:safe center;padding:22px;display:grid;position:fixed;inset:0;overflow-y:auto}.stats-solve-dialog-card,.solve-analysis-overlay-card{border:1px solid var(--slate-16);background:linear-gradient(180deg, var(--white-95), #f8fafce6), var(--white-94);width:min(100%,960px);box-shadow:inset 0 1px 0 var(--white-86), 0 28px 56px var(--ink-22);border-radius:28px}.stats-solve-dialog-card{gap:14px;width:min(100%,420px);padding:22px;display:grid}.stats-solve-dialog-card--detail{overscroll-behavior:contain;width:min(100%,1040px);max-height:min(90vh,900px);overflow-y:auto}.stats-solve-dialog-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.stats-solve-detail-grid{grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:16px;display:grid}.stats-solve-detail-panel{gap:14px;display:grid}.stats-solve-dialog-card h3,.solve-analysis-overlay-head h2{color:#0f172a;font-family:var(--font-display);letter-spacing:-.04em;margin:0}.stats-solve-dialog-actions{flex-wrap:wrap;gap:10px;display:flex}.stats-solve-dialog-note{color:#64748b;margin:0;font-size:.84rem;line-height:1.5}.solve-analysis-overlay-card{gap:18px;max-height:min(92vh,960px);padding:22px;display:grid;overflow:auto}.solve-analysis-overlay-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.solve-analysis-overlay-head h2{font-size:clamp(1.7rem,2.4vw,2.2rem)}.solve-analysis-overlay-layout{grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr);align-items:start;gap:18px;display:grid}.solve-analysis-viewer-panel,.solve-analysis-info-panel{align-content:start;gap:14px;min-height:0;display:grid}.solve-analysis-viewer-frame{border:1px solid var(--slate-14);background:linear-gradient(180deg, #0c121ef0, var(--ink-86)), var(--ink-76);height:clamp(320px,48vh,560px);min-height:0;box-shadow:inset 0 1px 0 var(--white-08), 0 18px 40px var(--ink-16);border-radius:26px;place-items:center;padding:14px;display:grid;overflow:hidden}.solve-analysis-viewer-stage{place-items:center;width:min(100%,clamp(300px,42vw,560px));height:min(100%,clamp(300px,42vw,560px));min-height:0;display:grid}.solve-analysis-viewer-canvas,.solve-analysis-viewer-canvas .cube-scene,.solve-analysis-viewer-canvas .cube-scene-loading-card{aspect-ratio:auto;width:100%;max-width:none;height:100%;min-height:0;max-height:none;margin:0}.solve-analysis-viewer-canvas{place-items:stretch center;min-height:0;display:grid;position:relative}.solve-analysis-viewer-canvas .cube-scene{display:block}.solve-analysis-viewer-canvas .three-cube-scene{border:1px solid var(--white-06);background:radial-gradient(circle at 50% 24%, var(--white-08), transparent 48%), linear-gradient(180deg, #1e293b42, var(--ink-12));width:100%;height:100%;box-shadow:inset 0 1px 0 var(--white-06), inset 0 0 0 1px var(--ink-08);border-radius:22px;display:block;overflow:hidden}.solve-analysis-viewer-canvas .three-cube-scene canvas{display:block;width:100%!important;height:100%!important}.stats-solve-scramble{color:#64748b;overflow-wrap:anywhere;margin:0;font-size:.8rem;line-height:1.45}.solve-analysis-progress,.solve-analysis-block,.solve-analysis-meta{border:1px solid var(--slate-12);background:#f1f5f9a8;border-radius:18px;padding:14px}.solve-analysis-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.solve-analysis-summary-card{border:1px solid var(--slate-12);background:#f1f5f9a8;border-radius:18px;gap:6px;padding:14px;display:grid}.solve-analysis-summary-card strong{color:#0f172a;font-size:1rem;line-height:1.35}.solve-analysis-progress-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.solve-analysis-progress-head strong{color:#0f172a}.solve-analysis-progress-head span{color:#64748b;font-size:.8rem}.solve-analysis-progress-track{background:var(--slate-16);border-radius:999px;height:10px;overflow:hidden}.solve-analysis-progress-fill{border-radius:inherit;background:linear-gradient(90deg,#22d3ee,#2563eb);height:100%}.solve-analysis-controls{flex-wrap:wrap;gap:10px;display:flex}.solve-analysis-speed{gap:10px;display:grid}.solve-analysis-meta{flex-wrap:wrap;gap:8px;display:flex}.solve-analysis-meta span{background:var(--slate-10);color:#1e293b;border-radius:999px;padding:6px 9px;font-size:.78rem}.solve-analysis-block{align-content:start;gap:10px;display:grid}.solve-analysis-stage-list{gap:10px;display:grid}.solve-analysis-stage-row{border:1px solid var(--slate-12);background:var(--white-04);border-radius:16px;gap:8px;padding:12px;display:grid}.solve-analysis-stage-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.solve-analysis-stage-head span{color:#1e293b;align-items:center;gap:8px;font-weight:700;display:inline-flex}.solve-analysis-stage-head strong{color:#0f172a}.solve-analysis-stage-meta{flex-wrap:wrap;gap:8px;display:flex}.solve-analysis-stage-meta span{background:var(--slate-10);color:#475569;border-radius:999px;padding:5px 8px;font-size:.74rem}.solve-analysis-stage-pauses{color:#92400e!important;background:#fbbf241f!important}.solve-analysis-stage-pauses.is-clean{color:#166534!important;background:#22c55e1a!important}.app-shell.theme-dark .solve-analysis-stage-pauses{color:#fde68a!important;background:#fbbf2424!important}.app-shell.theme-dark .solve-analysis-stage-pauses.is-clean{color:#86efac!important;background:#22c55e1f!important}.solve-analysis-move-strip{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.solve-share-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.solve-share-actions .stats-copy{flex:220px;margin:0}.solve-share-preview-shell{border:1px solid var(--slate-14);background:linear-gradient(180deg, #e2e8f0cc, #f1f5f98a), var(--white-82);border-radius:20px;gap:10px;padding:10px;display:grid}.solve-share-preview-canvas{aspect-ratio:720/378;width:100%;height:auto;box-shadow:0 20px 36px var(--ink-16);background:#0f172a;border-radius:16px;display:block}.solve-share-error{color:#b91c1c;margin:0;font-size:.82rem;line-height:1.5}.solve-analysis-move-chip{border:1px solid var(--slate-14);background:var(--white-72);color:#334155;text-align:center;white-space:nowrap;font-variant-numeric:tabular-nums;border-radius:14px;justify-content:center;align-items:center;min-width:2.35rem;min-height:2.35rem;padding:0 .7rem;font-size:.8rem;font-weight:700;line-height:1;display:inline-flex}.solve-analysis-move-chip.is-done{color:#166534;background:#22c55e1f}.solve-analysis-move-chip.is-current{color:#f8fbff;background:linear-gradient(135deg,#0ea5e9,#2563eb);border-color:#2563eb38;box-shadow:0 12px 22px #2563eb29}.app-shell.theme-dark .stats-copy,.app-shell.theme-dark .stats-summary-card p,.app-shell.theme-dark .stats-toolbar-label,.app-shell.theme-dark .stats-chart-meta,.app-shell.theme-dark .stats-axis-label,.app-shell.theme-dark .stats-legend-item,.app-shell.theme-dark .stats-distribution-bar span,.app-shell.theme-dark .stats-spotlight-head span:last-child,.app-shell.theme-dark .stats-spotlight-stage span,.app-shell.theme-dark .stats-spotlight-stage small,.app-shell.theme-dark .stats-composition-summary span,.app-shell.theme-dark .stats-stage-copy span,.app-shell.theme-dark .stats-list-count,.app-shell.theme-dark .stats-solve-list-head,.app-shell.theme-dark .stats-solve-row-date,.app-shell.theme-dark .stats-solve-row-splits,.app-shell.theme-dark .stats-solve-row-details,.app-shell.theme-dark .stats-solve-row-status{color:#94a3b8}.app-shell.theme-dark .stats-empty-card,.app-shell.theme-dark .stats-summary-card,.app-shell.theme-dark .stats-panel,.app-shell.theme-dark .stats-solves-panel,.app-shell.theme-dark .stats-solve-dialog-card,.app-shell.theme-dark .solve-analysis-overlay-card{box-shadow:var(--surface-shadow-dark);background:linear-gradient(#0a0f1ae6,#0d131fd6)}.app-shell.theme-dark .stats-empty-card strong,.app-shell.theme-dark .stats-summary-card strong,.app-shell.theme-dark .stats-distribution-bar strong,.app-shell.theme-dark .stats-composition-summary strong,.app-shell.theme-dark .stats-stage-copy strong,.app-shell.theme-dark .stats-hero h2,.app-shell.theme-dark .stats-panel-head h3,.app-shell.theme-dark .stats-solve-dialog-card h3,.app-shell.theme-dark .stats-spotlight-head strong,.app-shell.theme-dark .stats-spotlight-stage strong,.app-shell.theme-dark .stats-chart-tooltip strong,.app-shell.theme-dark .stats-solve-row-time,.app-shell.theme-dark .solve-analysis-overlay-head h2,.app-shell.theme-dark .solve-analysis-progress-head strong{color:#f8fbff}.app-shell.theme-dark .stats-chip-button{border-color:var(--slate-20);background:var(--ink-72);color:#dbe7f3}.app-shell.theme-dark .stats-filter-field input{border-color:var(--slate-14);background:var(--ink-72);color:#e2e8f0;box-shadow:inset 0 1px 0 var(--white-03)}.app-shell.theme-dark .stats-filter-inline-label,.app-shell.theme-dark .stats-split-axis,.app-shell.theme-dark .stats-stage-share-axis{color:#94a3b8}.app-shell.theme-dark .stats-chip-button:hover,.app-shell.theme-dark .stats-chip-button:focus-visible{border-color:#38bdf84d}.app-shell.theme-dark .stats-chip-button.is-active{color:#f8fbff;background:linear-gradient(135deg,#0284c7,#1d4ed8);border-color:#38bdf86b}.app-shell.theme-dark .stats-spotlight-card,.app-shell.theme-dark .stats-spotlight-stage,.app-shell.theme-dark .stats-chart-tooltip,.app-shell.theme-dark .stats-distribution-bar,.app-shell.theme-dark .solve-analysis-progress,.app-shell.theme-dark .solve-analysis-block,.app-shell.theme-dark .solve-analysis-meta{border-color:var(--slate-12);background:radial-gradient(circle at top, #38bdf824, transparent 50%), var(--ink-74)}.app-shell.theme-dark .stats-chart-card{background:radial-gradient(at 20% 0,#38bdf829,#0000 52%),radial-gradient(at 80% 100%,#6366f11a,#0000 44%),linear-gradient(#0a1428eb,#080e1ce0);border-color:#38bdf81f;box-shadow:inset 0 1px #38bdf814,0 4px 16px #0000004d}.app-shell.theme-dark .stats-chart-tooltip span,.app-shell.theme-dark .stats-solve-dialog-note,.app-shell.theme-dark .solve-analysis-progress-head span{color:#b6c5d6}.app-shell.theme-dark .stats-grid-line{stroke:var(--slate-16)}.app-shell.theme-dark .stats-axis-title{fill:#cbd5e1}.app-shell.theme-dark .stats-point{fill:#082f49;stroke:#38bdf8}.app-shell.theme-dark .stats-point.is-active{fill:#38bdf8;stroke:#e0f2fe}.app-shell.theme-dark .stats-composition-track,.app-shell.theme-dark .stats-stage-bar-track,.app-shell.theme-dark .stats-split-track{background:var(--white-06);box-shadow:inset 0 1px 0 var(--white-03)}.app-shell.theme-dark .stats-distribution-bar.is-active{box-shadow:0 16px 30px #0284c72e,0 0 0 1px #38bdf824}.app-shell.theme-dark .stats-composition-row.is-active .stats-composition-track{box-shadow:inset 0 1px 0 var(--white-05), 0 0 0 1px #38bdf833, 0 12px 24px #0284c729}.app-shell.theme-dark .stats-spotlight-metrics span,.app-shell.theme-dark .stats-solve-metrics span,.app-shell.theme-dark .solve-analysis-summary-card,.app-shell.theme-dark .solve-analysis-meta span,.app-shell.theme-dark .solve-analysis-move-chip,.app-shell.theme-dark .solve-analysis-stage-meta span{border-color:var(--slate-14);background:var(--white-06);color:#e2e8f0}.app-shell.theme-dark .solve-share-preview-shell{border-color:var(--slate-14);background:linear-gradient(180deg, #0e74901f, var(--ink-06)), var(--white-04)}.app-shell.theme-dark .solve-share-error{color:#fecaca}.app-shell.theme-dark .solve-analysis-summary-card strong,.app-shell.theme-dark .solve-analysis-stage-head strong,.app-shell.theme-dark .solve-analysis-stage-head span{color:#f8fbff}.app-shell.theme-dark .solve-analysis-stage-row{border-color:var(--slate-12);background:var(--white-04)}.app-shell.theme-dark .stats-solve-list-compact{border-color:var(--slate-12);background:var(--white-03)}.app-shell.theme-dark .stats-solve-list-head{background:var(--white-04)}.app-shell.theme-dark .stats-solve-row{border-top-color:var(--slate-12)}.app-shell.theme-dark .stats-solve-row:hover,.app-shell.theme-dark .stats-solve-row:focus-visible,.app-shell.theme-dark .stats-solve-row.is-active{background:#38bdf817;box-shadow:inset 0 0 0 1px #38bdf82e}.app-shell.theme-dark .solve-analysis-progress-track{background:var(--white-06)}.app-shell.theme-dark .solve-analysis-move-chip.is-done{color:#bbf7d0;background:#22c55e2e}.app-shell.theme-dark .solve-analysis-viewer-frame{border-color:var(--slate-12)}.solve-detail-view-tabs{gap:6px;display:flex}.section-pauses-chart{gap:8px;display:grid}.section-pause-row{border:1px solid var(--slate-14);background:#ffffff8f;border-radius:16px;gap:8px;padding:12px 14px;transition:box-shadow .18s;display:grid}.section-pause-row.severity-big{background:#fef2f2b8;border-color:#ef444433}.section-pause-row.severity-medium{background:#fff7edb8;border-color:#f973162e}.section-pause-row.severity-small{background:#fffbebb8;border-color:#f59e0b2e}.section-pause-row.severity-none{background:#f0fdf4b8;border-color:#22c55e29}.section-pause-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.section-pause-label{color:#1e293b;align-items:center;gap:7px;font-size:.84rem;font-weight:700;display:inline-flex}.section-pause-arrow{color:#94a3b8;font-size:.78rem;font-weight:400}.section-pause-meta{flex-shrink:0;align-items:center;gap:8px;display:flex}.section-pause-time{font-variant-numeric:tabular-nums;color:#0f172a;letter-spacing:-.02em;font-size:.9rem;font-weight:700}.section-pause-badge{text-transform:uppercase;letter-spacing:.07em;border-radius:999px;padding:3px 8px;font-size:.67rem;font-weight:700}.section-pause-badge.severity-none{color:#166534;background:#22c55e24}.section-pause-badge.severity-small{color:#92400e;background:#f59e0b24}.section-pause-badge.severity-medium{color:#c2410c;background:#f9731629}.section-pause-badge.severity-big{color:#991b1b;background:#ef444424}.section-pause-track{background:var(--slate-14);border-radius:999px;height:7px;overflow:hidden}.section-pause-fill{border-radius:inherit;min-width:3px;height:100%;transition:width .35s cubic-bezier(.4,0,.2,1)}.section-pause-fill.severity-none{background:linear-gradient(90deg,#4ade80,#22c55e)}.section-pause-fill.severity-small{background:linear-gradient(90deg,#fcd34d,#f59e0b)}.section-pause-fill.severity-medium{background:linear-gradient(90deg,#fb923c,#f97316)}.section-pause-fill.severity-big{background:linear-gradient(90deg,#f87171,#ef4444);box-shadow:0 0 8px #ef444461}.app-shell.theme-dark .section-pause-row{border-color:var(--slate-12);background:var(--white-04)}.app-shell.theme-dark .section-pause-row.severity-big{background:#7f1d1d2e;border-color:#ef444438}.app-shell.theme-dark .section-pause-row.severity-medium{background:#7c2d122e;border-color:#f9731633}.app-shell.theme-dark .section-pause-row.severity-small{background:#78350f29;border-color:#f59e0b2e}.app-shell.theme-dark .section-pause-row.severity-none{background:#14532d2e;border-color:#22c55e29}.app-shell.theme-dark .section-pause-label{color:#e2e8f0}.app-shell.theme-dark .section-pause-time{color:#f8fbff}.app-shell.theme-dark .section-pause-track{background:#ffffff12}.app-shell.theme-dark .section-pause-badge.severity-none{color:#86efac;background:#22c55e33}.app-shell.theme-dark .section-pause-badge.severity-small{color:#fde68a;background:#f59e0b33}.app-shell.theme-dark .section-pause-badge.severity-medium{color:#fdba74;background:#f9731633}.app-shell.theme-dark .section-pause-badge.severity-big{color:#fca5a5;background:#ef444433}.solve-analysis-rec-dot{background:#ef4444;border-radius:50%;width:7px;height:7px;margin-right:6px;animation:1s ease-in-out infinite rec-pulse;display:inline-block}@keyframes rec-pulse{0%,to{opacity:1}50%{opacity:.25}}.solve-analysis-rec-error{color:#dc2626;margin:6px 0 0;font-size:.78rem}.app-shell.theme-dark .solve-analysis-rec-error{color:#f87171}.ad-surface{border:1px solid var(--slate-16);background:radial-gradient(circle at top right, #0ea5e91a, transparent 34%), linear-gradient(180deg, var(--white-92), #f8fafcd1);box-shadow:inset 0 1px 0 var(--white-82), 0 18px 38px var(--ink-06);border-radius:22px;gap:12px;padding:14px;display:grid}.ad-surface__head{justify-content:space-between;align-items:center;gap:12px;display:flex}.ad-surface__label{color:#64748b;letter-spacing:.14em;text-transform:uppercase;font-size:.72rem;font-weight:800}.ad-surface__badge{color:#1d4ed8;background:#2563eb1a;border-radius:999px;padding:6px 10px;font-size:.72rem;font-weight:700}.ad-surface__placeholder,.ad-surface__adsense-shell,.ad-surface__sponsor-link{border:1px dashed var(--slate-22);background:var(--white-58);border-radius:18px;gap:12px;min-height:112px;padding:14px;display:grid}.ad-surface__copy{gap:6px;display:grid}.ad-surface__copy strong{color:#0f172a;letter-spacing:-.03em;font-size:1rem}.ad-surface__copy p,.ad-surface__status{color:#64748b;margin:0;font-size:.84rem;line-height:1.5}.ad-surface__status.is-error{color:#b91c1c}.ad-surface__adsense-unit{width:100%;min-height:90px}.ad-surface__sponsor-link{color:inherit;grid-template-columns:minmax(140px,220px) minmax(0,1fr) auto;align-items:center;gap:14px;text-decoration:none}.ad-surface__sponsor-link.is-placeholder{cursor:default}.ad-surface__sponsor-link:not(.is-placeholder):hover,.ad-surface__sponsor-link:not(.is-placeholder):focus-visible{border-color:#2563eb47;transform:translateY(-1px)}.ad-surface__sponsor-image,.ad-surface__sponsor-placeholder{border:1px solid var(--slate-14);background:linear-gradient(135deg, #0ea5e91f, #2563eb14), var(--white-70);object-fit:contain;border-radius:14px;width:100%;min-height:90px}.ad-surface__sponsor-placeholder{color:#475569;letter-spacing:.12em;place-items:center;font-size:.82rem;font-weight:700;display:grid}.ad-surface__cta{color:#f8fafc;white-space:nowrap;background:linear-gradient(135deg,#0ea5e9,#2563eb);border-radius:999px;padding:9px 12px;font-size:.8rem;font-weight:700}.stats-monetization-slot,.training-monetization-slot{margin-top:2px}.dashboard-store-banner{margin-top:10px}.dashboard-store-banner .ad-surface{background:radial-gradient(circle at top right, #22c55e1f, transparent 32%), linear-gradient(180deg, var(--white-92), #f8fafcd6);border-radius:14px;gap:0;padding:8px 10px}.dashboard-store-banner .ad-surface__head{display:none}.dashboard-store-banner .ad-surface__sponsor-link,.dashboard-store-banner .ad-surface__placeholder{background:0 0;border:none;grid-template-columns:1fr auto;align-items:center;gap:10px;min-height:0;padding:0}.dashboard-store-banner .ad-surface__sponsor-image,.dashboard-store-banner .ad-surface__sponsor-placeholder{border-radius:8px;min-height:56px;max-height:72px}.dashboard-store-banner .ad-surface__copy{display:none}.dashboard-store-banner .ad-surface__badge{color:#15803d;background:#22c55e1f}.app-shell.theme-dark .ad-surface{border-color:var(--slate-14);box-shadow:var(--surface-shadow-dark);background:radial-gradient(circle at 100% 0,#38bdf81f,#0000 32%),linear-gradient(#0a0f1ae6,#0d131fd6)}.app-shell.theme-dark .ad-surface__badge{color:#bae6fd;background:#60a5fa24}.app-shell.theme-dark .ad-surface__placeholder,.app-shell.theme-dark .ad-surface__adsense-shell,.app-shell.theme-dark .ad-surface__sponsor-link{border-color:var(--slate-16);background:var(--white-04)}.app-shell.theme-dark .ad-surface__copy strong{color:#f8fbff}.app-shell.theme-dark .ad-surface__copy p,.app-shell.theme-dark .ad-surface__status,.app-shell.theme-dark .ad-surface__sponsor-placeholder{color:#b6c5d6}.app-shell.theme-dark .ad-surface__sponsor-image,.app-shell.theme-dark .ad-surface__sponsor-placeholder{border-color:var(--slate-14);background:linear-gradient(135deg, #0e749029, var(--ink-10)), var(--white-04)}@media (width<=900px){.ad-surface__sponsor-link{grid-template-columns:1fr}.ad-surface__cta{justify-self:start}}.feedback-fab{z-index:50;appearance:none;border:1px solid var(--slate-22);background:var(--white-92);color:#334155;font:inherit;cursor:pointer;letter-spacing:.04em;box-shadow:0 16px 40px var(--ink-14), 0 2px 6px var(--ink-06);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:999px;padding:10px 18px;font-size:.82rem;font-weight:800;transition:transform .12s,box-shadow .12s,background .12s;position:fixed;bottom:24px;right:24px}.feedback-fab:hover{box-shadow:0 20px 48px var(--ink-18), 0 3px 8px var(--ink-08);transform:translateY(-2px)}.app-shell.theme-dark .feedback-fab{color:#d9e4f5;border-color:var(--slate-18);background:#0e1626f0}.feedback-modal-overlay{z-index:100;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0a101e85;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.feedback-modal{border-radius:var(--radius-lg,24px);border:1px solid var(--slate-22);width:100%;max-width:680px;max-height:calc(100dvh - 32px);box-shadow:0 32px 80px var(--ink-22), 0 8px 24px var(--ink-10);background:#fffffff7;flex-direction:column;display:flex;overflow:hidden}.app-shell.theme-dark .feedback-modal{border-color:var(--slate-16);background:#0a101cf7;box-shadow:0 36px 90px #0206177a}.feedback-modal-header{border-bottom:1px solid var(--slate-16);flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:12px;padding:20px 24px 16px;display:flex}.feedback-modal-title{color:#0f172a;margin:4px 0 0;font-size:1.4rem;line-height:1.1}.app-shell.theme-dark .feedback-modal-title{color:#f8fbff}.feedback-close-btn{appearance:none;border:1px solid var(--slate-22);background:var(--white-78);color:#475569;cursor:pointer;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;margin-top:2px;font-size:.9rem;transition:background .12s,color .12s;display:flex}.feedback-close-btn:hover{color:#0f172a;background:#f8fafc}.app-shell.theme-dark .feedback-close-btn{color:#94a3b8;border-color:var(--slate-16);background:#141c2ccc}.feedback-form{flex:1;gap:14px;min-height:0;padding:20px 24px 24px;display:grid;overflow-y:auto}.feedback-field{gap:5px;display:grid}.feedback-field-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}@media (width<=520px){.feedback-field-row{grid-template-columns:1fr}}.feedback-label{letter-spacing:.08em;text-transform:uppercase;color:#64748b;font-size:.78rem;font-weight:800}.app-shell.theme-dark .feedback-label{color:#94a3b8}.feedback-required{color:#ef4444}.feedback-optional{letter-spacing:0;text-transform:none;color:#94a3b8;font-size:.76rem;font-weight:600}.feedback-helper-note{color:#155e75;background:#0ea5e914;border:1px solid #0ea5e933;border-radius:12px;margin:-2px 0 0;padding:10px 12px;font-size:.86rem;line-height:1.45}.feedback-input,.feedback-select,.feedback-textarea{background:var(--white-92);color:#0f172a;width:100%;font:inherit;border:1px solid #94a3b857;border-radius:12px;padding:9px 12px;font-size:.93rem;transition:border-color .12s,box-shadow .12s}.feedback-input:focus,.feedback-select:focus,.feedback-textarea:focus{border-color:#2563eb80;outline:none;box-shadow:0 0 0 3px #2563eb1f}.feedback-textarea{resize:vertical;min-height:72px}.app-shell.theme-dark .feedback-input,.app-shell.theme-dark .feedback-select,.app-shell.theme-dark .feedback-textarea{color:#e5edf8;border-color:var(--slate-22);background:#0e1626db}.app-shell.theme-dark .feedback-input:focus,.app-shell.theme-dark .feedback-select:focus,.app-shell.theme-dark .feedback-textarea:focus{border-color:#7dd3fc80;box-shadow:0 0 0 3px #7dd3fc1f}.app-shell.theme-dark .feedback-input::placeholder,.app-shell.theme-dark .feedback-textarea::placeholder{color:#475569}.feedback-select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%2394a3b8' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:32px}.feedback-checkbox-row{cursor:pointer;color:#334155;align-items:flex-start;gap:10px;font-size:.88rem;line-height:1.4;display:flex}.feedback-checkbox-row input[type=checkbox]{cursor:pointer;accent-color:#2563eb;flex-shrink:0;width:16px;height:16px;margin-top:2px}.app-shell.theme-dark .feedback-checkbox-row{color:#b7c3d8}.app-shell.theme-dark .feedback-helper-note{color:#bae6fd;background:#0ea5e91f;border-color:#7dd3fc33}.feedback-form-error{color:#b91c1c;background:#ef44441a;border:1px solid #ef444433;border-radius:12px;margin:0;padding:10px 12px;font-size:.88rem}.app-shell.theme-dark .feedback-form-error{color:#fca5a5;background:#ef444424;border-color:#ef44443d}.feedback-field [class*=ValidationError],.feedback-field>div:not(.feedback-field-row):not(.feedback-field):last-child{color:#dc2626;margin-top:2px;font-size:.8rem}.feedback-form-actions{justify-content:flex-end;gap:10px;margin-top:4px;display:flex}.feedback-success{text-align:center;justify-items:center;gap:12px;padding:40px 24px;display:grid}.feedback-success-icon{color:#065f46;background:linear-gradient(135deg,#a7f3d0,#34d399);border-radius:999px;justify-content:center;align-items:center;width:52px;height:52px;font-size:1.4rem;font-weight:900;display:flex;box-shadow:0 8px 20px #34d3994d}.feedback-success strong{color:#0f172a;font-size:1.25rem}.app-shell.theme-dark .feedback-success strong{color:#f8fbff}.feedback-success p{color:#475569;margin:0;font-size:.94rem}.app-shell.theme-dark .feedback-success p{color:#b7c3d8}.support-shell{padding-bottom:32px}.support-section-card{border-radius:var(--radius-lg,24px);background:var(--white-88);border:1px solid var(--slate-22);box-shadow:0 14px 34px var(--ink-07);padding:20px 22px 24px}.app-shell.theme-dark .support-section-card{border-color:var(--slate-16);background:#0c121ee0}.support-section-head{margin-bottom:18px}.support-section-head h3{color:#0f172a;margin:4px 0 6px;font-size:1.25rem}.app-shell.theme-dark .support-section-head h3{color:#f8fbff}.support-section-copy{color:#475569;margin:0;font-size:.92rem;line-height:1.55}.app-shell.theme-dark .support-section-copy{color:#b7c3d8}.support-badge{letter-spacing:.04em;white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:3px 10px;font-size:.74rem;font-weight:800;display:inline-flex}.support-badge-verified{color:#065f46;background:#34d39926;border:1px solid #34d3994d}.support-badge-partial{color:#92400e;background:#fbbf2426;border:1px solid #fbbf244d}.support-badge-untested{background:var(--slate-12);color:#475569;border:1px solid var(--slate-22)}.app-shell.theme-dark .support-badge-verified{color:#6ee7b7;background:#34d3992e;border-color:#34d3993d}.app-shell.theme-dark .support-badge-partial{color:#fcd34d;background:#fbbf2429;border-color:#fbbf243d}.app-shell.theme-dark .support-badge-untested{background:var(--slate-10);color:#94a3b8;border-color:var(--slate-18)}.support-legend{flex-wrap:wrap;gap:8px;margin-bottom:18px;display:flex}.support-cube-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:12px;display:grid}@media (width<=780px){.support-cube-grid{grid-template-columns:1fr}}.support-cube-column{border:1px solid var(--slate-18);border-radius:18px;overflow:hidden}.support-column-header{border-bottom:1px solid var(--slate-14);align-items:flex-start;gap:10px;padding:12px 14px;display:flex}.support-column-header.support-badge-verified{background:#34d3991a;border-radius:0}.support-column-header.support-badge-partial{background:#fbbf241a;border-radius:0}.support-column-header.support-badge-untested{background:var(--slate-08);border-radius:0}.support-column-icon{flex-shrink:0;margin-top:1px;font-size:1.1rem;font-weight:900}.support-column-header>div{gap:2px;display:grid}.support-column-header strong{color:inherit;font-size:.85rem;font-weight:800;display:block}.support-column-header span:last-child{opacity:.8;font-size:.74rem;font-weight:600}.support-cube-list{margin:0;padding:0;list-style:none;display:grid}.support-cube-item{border-bottom:1px solid var(--slate-10);gap:1px;padding:10px 14px;display:grid}.support-cube-item:last-child{border-bottom:none}.support-cube-brand{letter-spacing:.1em;text-transform:uppercase;color:#64748b;font-size:.7rem;font-weight:800}.app-shell.theme-dark .support-cube-brand{color:#94a3b8}.support-cube-model{color:#0f172a;font-size:.88rem;font-weight:700}.app-shell.theme-dark .support-cube-model{color:#e5edf8}.support-cube-note{color:#64748b;font-size:.74rem;line-height:1.35}.app-shell.theme-dark .support-cube-note{color:#94a3b8}.support-cube-empty{color:#94a3b8;padding:12px 14px;font-size:.84rem;font-style:italic}.support-note{background:var(--slate-08);color:#475569;border-radius:12px;margin:14px 0 0;padding:10px 14px;font-size:.86rem;line-height:1.5}.app-shell.theme-dark .support-note{color:#b7c3d8;background:#94a3b812}.support-browser-table{border:1px solid var(--slate-18);border-radius:14px;gap:1px;display:grid;overflow:hidden}.support-browser-row{grid-template-columns:120px 1fr 160px 1fr;align-items:center;gap:12px;padding:10px 14px;font-size:.87rem;display:grid}@media (width<=640px){.support-browser-row{grid-template-columns:1fr 1fr;row-gap:4px}.support-browser-row>span:nth-child(3),.support-browser-row>span:nth-child(4){grid-column:1/-1}}.support-browser-header{background:var(--slate-10);letter-spacing:.1em;text-transform:uppercase;color:#64748b;font-size:.72rem;font-weight:800}.app-shell.theme-dark .support-browser-header{color:#94a3b8}.support-browser-ok{background:var(--white-70)}.support-browser-warn{background:var(--white-60)}.support-browser-no{background:#ffffff80}.app-shell.theme-dark .support-browser-ok,.app-shell.theme-dark .support-browser-warn,.app-shell.theme-dark .support-browser-no{background:#141c2c80}.support-browser-row span:first-child{color:#0f172a;font-weight:700}.app-shell.theme-dark .support-browser-row span:first-child{color:#e5edf8}.support-browser-row span:last-child{color:#475569;font-size:.82rem}.app-shell.theme-dark .support-browser-row span:last-child{color:#94a3b8}.support-mobile-notice{align-items:flex-start;gap:16px;display:flex}.support-mobile-notice-icon{flex-shrink:0;margin-top:2px;font-size:2rem}.support-mobile-notice-copy{gap:8px;display:grid}.support-mobile-notice-copy strong{color:#0f172a;font-size:1rem}.app-shell.theme-dark .support-mobile-notice-copy strong{color:#f8fbff}.support-mobile-notice-copy p{color:#475569;margin:0;font-size:.9rem;line-height:1.6}.app-shell.theme-dark .support-mobile-notice-copy p{color:#b7c3d8}.app-shell{color:#0f172a;background:radial-gradient(circle at top left, var(--app-theme-glow-a,#60a5fa1a), transparent 22%), radial-gradient(circle at top right, var(--app-theme-glow-b,#2dd4bf14), transparent 18%), linear-gradient(180deg, var(--app-theme-bg-start,#fbfcff) 0%, var(--app-theme-bg-end,#f4f7fb) 100%);min-height:100vh;padding:22px 16px 34px}.app-shell.theme-dark{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#e5edf8;background:radial-gradient(circle at top left, var(--app-theme-dark-glow-a,#7dd3fc1f), transparent 22%), radial-gradient(circle at top right, var(--app-theme-dark-glow-b,#a78bfa1f), transparent 20%), linear-gradient(180deg, var(--app-theme-dark-bg-start,#06080e) 0%, color-mix(in srgb, var(--app-theme-dark-bg-start,#06080e) 45%, var(--app-theme-dark-bg-end,#0c1220)) 42%, var(--app-theme-dark-bg-end,#0c1220) 100%)}.app-shell.is-game-immersive{background:radial-gradient(circle at top,#38bdf81a,#0000 24%),radial-gradient(circle at 85% 14%,#a855f724,#0000 18%),linear-gradient(#050810 0%,#0a101b 44%,#0d1523 100%);padding:0;overflow:hidden}.app-shell.is-game-immersive .app-hero,.app-shell.is-game-immersive .app-nav,.app-shell.is-game-immersive .theme-switch{display:none}.app-hero{text-align:center;max-width:860px;margin:0 auto 20px;position:relative}.app-kicker{letter-spacing:.18em;text-transform:uppercase;color:#2563eb;margin:0 0 10px;font-size:.76rem;font-weight:700}.app-title{margin:0;font-size:clamp(2rem,4vw,3.1rem);line-height:.98}.app-subtitle{color:#475569;max-width:700px;margin:12px auto 0;font-size:.94rem;line-height:1.5}.theme-switch{z-index:30;appearance:none;border:1px solid var(--slate-18);background:var(--white-90);color:#0f172a;font:inherit;cursor:pointer;box-shadow:0 12px 28px var(--ink-10);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:18px;align-items:center;gap:10px;padding:9px 12px;transition:transform .12s,box-shadow .12s,border-color .12s,background .12s;display:inline-flex;position:fixed;top:10px;left:10px}.theme-switch:hover{box-shadow:0 16px 32px var(--ink-14);transform:translateY(-1px)}.theme-switch-visual{border:1px solid var(--slate-16);width:46px;height:28px;box-shadow:inset 0 1px 0 var(--white-58);background:linear-gradient(135deg,#fde68ac7,#bae6fdeb);border-radius:999px;position:relative}.theme-switch-sun,.theme-switch-moon,.theme-switch-thumb{border-radius:999px;position:absolute}.theme-switch-sun{background:#f59e0bf2;width:8px;height:8px;top:7px;left:7px;box-shadow:0 0 0 4px #fef08a73}.theme-switch-moon{background:#1e293be0;width:8px;height:8px;top:8px;right:8px}.theme-switch-thumb{background:var(--white-96);width:20px;height:20px;box-shadow:0 4px 10px var(--ink-16);transition:transform .16s;top:3px;left:3px}.theme-switch-copy{text-align:left;gap:1px;display:grid}.theme-switch-label{letter-spacing:.14em;text-transform:uppercase;color:#64748b;font-size:.7rem;font-weight:800}.theme-switch-state{font-size:.88rem;font-weight:800}.theme-switch.is-active{color:#f8fbff;background:#0c121ef0;border-color:#bfdbfe29}.theme-switch.is-active .theme-switch-visual{background:linear-gradient(135deg, #1e293bf5, var(--ink-92))}.theme-switch.is-active .theme-switch-thumb{background:#e0e7fffa;transform:translate(18px)}.theme-switch.is-active .theme-switch-label{color:#94a3b8}.theme-switch.is-active .theme-switch-state{color:#f8fbff}.app-nav{flex-wrap:wrap;justify-content:center;gap:8px;max-width:1180px;margin:0 auto 16px;display:flex}.app-nav-button{appearance:none;border:1px solid var(--slate-22);background:var(--white-82);color:#334155;font:inherit;cursor:pointer;border-radius:999px;padding:9px 15px;font-weight:800;transition:transform .12s,box-shadow .12s,border-color .12s}.app-nav-button.is-active{color:#082f49;background:linear-gradient(135deg,#7dd3fc,#93c5fd);border-color:#7dd3fc6b}.app-shell.theme-dark .app-title,.app-shell.theme-dark .card-head h2,.app-shell.theme-dark .settings-hero h2,.app-shell.theme-dark .settings-summary-row strong,.app-shell.theme-dark .games-page-summary strong,.app-shell.theme-dark .settings-meta-grid strong,.app-shell.theme-dark .settings-toggle-row strong,.app-shell.theme-dark .bluetooth-saved-list .speed-label,.app-shell.theme-dark .speed-label{color:#f8fbff}.app-shell.theme-dark .app-subtitle,.app-shell.theme-dark .games-page-copy,.app-shell.theme-dark .settings-subtitle,.app-shell.theme-dark .settings-summary-row span,.app-shell.theme-dark .settings-meta-grid span,.app-shell.theme-dark .settings-toggle-row span,.app-shell.theme-dark .bluetooth-copy,.app-shell.theme-dark .bluetooth-note,.app-shell.theme-dark .home-quick-status span,.app-shell.theme-dark .games-page-summary span{color:#b7c3d8}.app-shell.theme-dark .theme-switch{color:#f8fbff;box-shadow:0 18px 36px var(--abyss-34);background:#080d17eb;border-color:#bfdbfe24}.app-shell.theme-dark .theme-switch-label{color:#94a3b8}.app-shell.theme-dark .app-nav-button{border-color:var(--slate-18);color:#d9e4f5;background:#0e1420db}.app-shell.theme-dark .app-nav-button:hover{box-shadow:0 12px 24px #02061752}.app-shell.theme-dark .app-nav-button.is-active{color:#fff;background:linear-gradient(135deg,#7dd3fc52,#c4b5fd4d);border-color:#bfdbfe38}.app-layout{grid-template-columns:minmax(320px,460px) minmax(320px,1fr);align-items:start;gap:16px;max-width:1180px;margin:0 auto;display:grid}.layout-mode-settings{grid-template-columns:minmax(320px,760px);justify-content:center}.layout-mode-settings .cube-scene,.layout-mode-settings .insights-grid{display:none}.page-stack{gap:16px;max-width:1320px;margin:0 auto;display:grid}.games-page-layout.is-focused{max-width:1460px}.app-shell.is-game-immersive .games-page-layout.is-focused{gap:0;max-width:none;height:100dvh;margin:0;overflow:hidden}.games-page-hero{grid-template-columns:minmax(0,1fr) minmax(280px,360px);align-items:start;gap:16px;display:grid}.games-page-copy{color:#475569;margin:8px 0 0;font-size:.94rem;line-height:1.45}.games-page-summary{gap:10px;display:grid}.games-page-summary span{background:var(--white-82);border:1px solid var(--slate-18);box-shadow:0 14px 28px var(--ink-06);color:#475569;border-radius:18px;gap:4px;padding:12px 14px;display:grid}.games-page-summary strong{color:#0f172a}.app-stage,.info-card,.controls-card{background:var(--white-82);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--slate-28);box-shadow:0 14px 34px var(--ink-08)}.app-stage-wide{border-radius:18px;width:100%;padding:20px 24px 28px}.controls-card{border-radius:20px;padding:14px}.home-controls-card{position:sticky;top:18px}.settings-shell{gap:14px;max-width:1180px;margin:0 auto;display:grid}.settings-summary-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.settings-summary-row span{background:var(--white-78);border:1px solid var(--slate-16);color:#475569;box-shadow:0 12px 28px var(--ink-05);border-radius:16px;gap:4px;padding:10px 12px;font-size:.9rem;display:grid}.settings-summary-row strong{color:#0f172a}.settings-hero{padding:4px 2px 0}.settings-hero h2{margin:0;font-size:clamp(1.8rem,4vw,2.5rem);line-height:1}.settings-subtitle{text-align:left;max-width:none;margin:10px 0 0}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.settings-section-card{background:linear-gradient(180deg, var(--white-94), #f8fafceb);border:1px solid var(--slate-22);box-shadow:0 14px 32px var(--ink-07);border-radius:20px;padding:14px}.settings-section-card.is-general{background:radial-gradient(circle at 100% 0,#60a5fa2e,#0000 34%),linear-gradient(#eff6fff5,#f8fafcf0)}.settings-section-card.is-hardware{background:radial-gradient(circle at 100% 0,#2dd4bf29,#0000 34%),linear-gradient(#f0fdfaf5,#f8fafcf0)}.settings-section-card.is-developer{background:radial-gradient(circle at 100% 0,#fbbf2424,#0000 34%),linear-gradient(#fffbebf5,#f8fafcf0);grid-column:1/-1}.settings-control-block{background:var(--white-78);border:1px solid var(--slate-16);border-radius:16px;margin-top:10px;padding:10px}.settings-note-strip{background:var(--ink-05);color:#334155;border-radius:16px;gap:6px;margin-top:14px;padding:10px 12px;display:grid}.settings-note-strip span{letter-spacing:.12em;text-transform:uppercase;color:#64748b;font-size:.74rem;font-weight:800}.settings-storage-strip strong{font-size:.95rem;font-weight:700;line-height:1.45}.settings-meta-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px;display:grid}.settings-meta-grid span{background:var(--white-78);border:1px solid var(--slate-16);color:#475569;border-radius:14px;gap:4px;padding:10px 12px;font-size:.86rem;display:grid}.settings-meta-grid strong{color:#0f172a}.settings-toggle-row{background:var(--white-78);border:1px solid var(--slate-16);border-radius:16px;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;padding:12px;display:flex}.settings-toggle-row div{gap:4px;display:grid}.settings-toggle-row strong{color:#0f172a}.settings-toggle-row span{color:#475569;font-size:.88rem;line-height:1.35}.algorithm-library-shell{max-width:1320px}.algorithm-library-hero{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.algorithm-library-hero-copy{gap:6px;display:grid}.algorithm-library-hero-actions{justify-content:flex-end;display:flex}.algorithm-library-toolbar,.algorithm-library-toolbar-stack{gap:14px;display:grid}.algorithm-library-tabs{flex-wrap:wrap;gap:8px;display:flex}.algorithm-library-filter-stack{gap:8px;display:grid}.algorithm-library-search{color:#475569;gap:6px;min-width:280px;font-size:.82rem;font-weight:700;display:grid}.algorithm-library-search input,.algorithm-library-input{border:1px solid var(--slate-22);background:var(--white-82);color:#0f172a;width:100%;font:inherit;resize:vertical;border-radius:14px;padding:10px 12px}.algorithm-library-groups,.algorithm-library-group{gap:14px;display:grid}.algorithm-library-case-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.algorithm-library-case-card{background:var(--white-72);border:1px solid var(--slate-16);border-radius:18px;gap:10px;padding:12px;transition:box-shadow .14s,border-color .14s;display:grid}.algorithm-library-case-card:focus-within{border-color:#38bdf866;box-shadow:0 0 0 3px #38bdf81f}@keyframes alg-case-highlight{0%{background:#ffffffb8;box-shadow:0 0 #22d3ee00}20%{background:#22d3ee1a;box-shadow:0 0 0 4px #22d3ee73}80%{background:#22d3ee0f;box-shadow:0 0 0 4px #22d3ee33}to{background:#ffffffb8;box-shadow:0 0 #22d3ee00}}.algorithm-library-case-card.is-highlighted{animation:2.2s ease-out forwards alg-case-highlight}.algorithm-library-case-head{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.algorithm-library-case-img{object-fit:contain;border:1px solid var(--slate-16);background:#f8fafce6;border-radius:10px;flex-shrink:0;width:58px;height:58px;padding:4px}.algorithm-library-case-head strong{color:#0f172a;display:block}.algorithm-library-case-copy{gap:4px;display:grid}.algorithm-library-case-head span{color:#64748b;font-size:.82rem}.algorithm-library-case-badges{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.algorithm-library-badge{letter-spacing:.08em;text-transform:uppercase;background:var(--slate-14);color:#475569;border-radius:999px;padding:5px 8px;font-size:.72rem;font-weight:800}.algorithm-library-tag-row{flex-wrap:wrap;gap:6px;display:flex}.algorithm-library-tag{color:#0369a1;background:#0ea5e91a;border-radius:999px;align-items:center;padding:4px 8px;font-size:.72rem;font-weight:700;display:inline-flex}.algorithm-library-badge.is-active{color:#1d4ed8;background:#3b82f624}.algorithm-library-badge.is-good{color:#047857;background:#10b98129}.algorithm-library-badge.is-warn{color:#b91c1c;background:#f8717129}.algorithm-library-validation{color:#b91c1c;margin:0;font-size:.82rem}.algorithm-library-quick-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.algorithm-library-note-count{color:#64748b;font-size:.78rem}.algorithm-library-field{gap:6px;display:grid}.algorithm-library-field span{color:#475569;letter-spacing:.08em;text-transform:uppercase;font-size:.78rem;font-weight:700}.algorithm-library-detail-grid{grid-template-columns:1.4fr 1fr;gap:10px;display:grid}.algorithm-library-actions{flex-wrap:wrap;gap:8px;display:flex}.move-controls-panel{gap:10px;margin-top:14px;display:grid}.games-page-card{border-radius:24px}.games-empty-card{min-height:unset}.games-page-layout.is-focused{gap:12px}.games-viewport{align-content:start;gap:12px;min-height:calc(100vh - 220px);display:grid;overflow:hidden}.app-shell.is-game-immersive .games-viewport{gap:0;height:100dvh;min-height:100vh;overflow:hidden}.games-viewport:fullscreen{background:radial-gradient(circle at top,#3b82f61a,#0000 28%),linear-gradient(#e2e8f0,#f8fafc 40%,#dbeafe);padding:24px;overflow:auto}.games-viewport-toolbar{background:var(--white-78);border:1px solid var(--slate-16);box-shadow:0 10px 24px var(--ink-06);border-radius:18px;justify-content:space-between;align-items:center;gap:14px;padding:10px 12px;display:flex}.games-viewport-title{gap:4px;display:grid}.games-switcher-card{padding:14px}.speed-card{background:#f0f9ffd1;border:1px solid #3b82f61f;border-radius:16px;margin-bottom:14px;padding:12px 12px 10px}.speed-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.speed-label{letter-spacing:.12em;text-transform:uppercase;color:#64748b;font-size:.76rem;font-weight:800}.speed-value{color:#1d4ed8;font-size:.92rem}.speed-slider{accent-color:#2563eb;width:100%}.speed-preset-row{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.move-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.move-grid+.move-grid{margin-top:8px}.move-grid-wide .move-button{background:linear-gradient(135deg,#7c3aed,#6d28d9);box-shadow:0 12px 22px #6d28d942}.move-grid-slice .move-button{background:linear-gradient(135deg,#0891b2,#0f766e);box-shadow:0 12px 22px #0891b23d}.move-grid-rotation .move-button{background:linear-gradient(135deg,#0f766e,#0f766e 40%,#115e59);box-shadow:0 12px 22px #0f766e3d}.move-button,.action-button{appearance:none;font:inherit;cursor:pointer;border:0;border-radius:14px;padding:11px 12px;font-weight:700;transition:transform .12s,box-shadow .12s,filter .12s}.move-button:hover,.action-button:hover{filter:brightness(1.02);transform:translateY(-1px)}.move-button{color:#0f3d58;background:linear-gradient(135deg,#bae6fd,#bfdbfe);box-shadow:0 10px 18px #7dd3fc38}.action-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:14px;display:grid}.action-button{color:#fff}.action-button-reset{color:#0f172a;background:linear-gradient(135deg,#cbd5e1,#94a3b8)}.action-button-sune{color:#14532d;background:linear-gradient(135deg,#bbf7d0,#86efac)}.action-button-antisune{color:#78350f;background:linear-gradient(135deg,#fde68a,#fdba74)}.action-button-align{color:#164e63;background:linear-gradient(135deg,#a7f3d0,#bae6fd)}.action-button-danger{color:#4c0519;background:linear-gradient(135deg,#fca5a5,#fb7185)}.action-button.is-cta{color:#fff;background:linear-gradient(135deg,#6366f1,#8b5cf6);animation:2.4s ease-in-out infinite cta-pulse;box-shadow:0 4px 16px #6366f159}@keyframes cta-pulse{0%,to{box-shadow:0 4px 16px #6366f159}50%{box-shadow:0 4px 24px #6366f18c}}.keyboard-hint{text-align:center;color:#475569;margin:16px 0 0;font-size:.88rem;line-height:1.5}.status-pill{text-align:center;color:#0f3d58;background:linear-gradient(135deg,#e0e7fff0,#bae6fdeb);border-radius:999px;margin-top:18px;padding:10px 14px;font-weight:700}.status-pill span{color:#0f172a}.home-quick-status{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:14px;display:grid}.home-quick-status span{background:var(--white-78);border:1px solid var(--slate-16);color:#475569;border-radius:16px;gap:4px;padding:10px 12px;font-size:.88rem;display:grid}.home-quick-status strong{color:#0f172a;letter-spacing:.1em;text-transform:uppercase;font-size:.75rem}.home-debug-shell{background:var(--white-74);border:1px solid var(--slate-18);box-shadow:0 12px 24px var(--ink-04);border-radius:22px;grid-column:1/-1;overflow:hidden}.home-debug-summary{cursor:pointer;justify-content:space-between;align-items:center;gap:14px;padding:16px 18px;list-style:none;display:flex}.home-debug-summary::-webkit-details-marker{display:none}.home-debug-summary>div{gap:4px;display:grid}.home-debug-summary strong{color:#0f172a}.home-debug-shell[open] .home-debug-summary{border-bottom:1px solid var(--slate-16);background:#f8fafcc7}.move-history-card{border:1px solid var(--slate-16);background:#f8fafceb;border-radius:18px;margin-top:14px;padding:14px}.move-history-list{flex-wrap:wrap;gap:8px;display:flex}.move-history-chip{background:var(--white-92);color:#334155;border:1px solid var(--slate-18);border-radius:999px;padding:8px 12px;font-size:.88rem;font-weight:800}.move-history-chip.is-manual{color:#1d4ed8}.move-history-chip.is-hardware{color:#15803d}.move-history-chip.is-system{color:#7c3aed}.move-history-chip.is-grouped{background:#dcfce7eb;border-style:dashed}.games-menu-card{border:1px solid var(--slate-16);background:linear-gradient(135deg,#fef9c3b8,#e0e7ffb8);border-radius:18px;margin-top:14px;padding:14px}.games-picker-section{border:1px solid var(--slate-16);background:linear-gradient(135deg, var(--white-94), #f0f9ffb8 52%, #fff7edb3), var(--white-86);border-radius:8px;gap:22px;padding:clamp(24px,4vw,42px);display:grid;position:relative;overflow:visible;box-shadow:0 24px 60px #0f172a17}.games-picker-section:before{pointer-events:none;content:"";background-color:#0000;background-image:linear-gradient(90deg,#0ea5e914 1px,#0000 1px),linear-gradient(#0ea5e914 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:38px 38px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000008a,#0000 68%);mask-image:linear-gradient(#0000008a,#0000 68%)}.games-picker-hero{z-index:1;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:22px;display:grid;position:relative}.games-section-help-corner{justify-self:end}.games-picker-heading{color:#0f172a;max-width:11ch;font-family:var(--font-display);letter-spacing:0;text-transform:uppercase;margin:6px 0 0;font-size:clamp(2.4rem,5vw,4.5rem);font-weight:900;line-height:.92}.games-picker-copy{color:#475569;max-width:39rem;margin:14px 0 0;font-size:1rem;font-weight:650;line-height:1.6}.games-picker-status{flex-wrap:wrap;justify-content:flex-end;gap:8px;max-width:360px;display:flex}.games-picker-status span{border:1px solid var(--ink-08);color:#334155;letter-spacing:.04em;box-shadow:0 10px 22px var(--ink-05);background:#ffffffc2;border-radius:999px;padding:8px 11px;font-size:.74rem;font-weight:800}.games-picker-grid{z-index:1;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid;position:relative}.games-picker-card{--game-accent:#0ea5e9;appearance:none;border:1px solid var(--ink-10);color:#0f172a;min-height:430px;font:inherit;text-align:left;background:linear-gradient(180deg, var(--white-94), #f8fafcd1), var(--white-88);box-shadow:inset 0 1px 0 var(--white-86), 0 18px 42px var(--ink-08);cursor:pointer;border-radius:8px;grid-template-rows:auto auto auto minmax(62px,1fr) auto auto;padding:18px;transition:transform .18s cubic-bezier(.16,1,.3,1),box-shadow .18s,border-color .18s,background .18s;display:grid;position:relative;overflow:hidden}.games-picker-card:before{pointer-events:none;content:"";background:linear-gradient(135deg, color-mix(in srgb, var(--game-accent) 22%, transparent), transparent 34%), linear-gradient(180deg, transparent 56%, color-mix(in srgb, var(--game-accent) 13%, transparent));position:absolute;inset:0}.games-picker-card:after{content:"";background:var(--game-accent);transform-origin:0;border-radius:999px 999px 0 0;height:4px;transition:transform .18s;position:absolute;inset:auto 18px 0;transform:scaleX(.36)}.games-picker-card:hover{border-color:color-mix(in srgb, var(--game-accent) 42%, var(--ink-12));box-shadow:inset 0 1px 0 var(--white-90), 0 28px 60px var(--ink-14);transform:translateY(-4px)}.games-picker-card:hover:after,.games-picker-card:focus-visible:after{transform:scaleX(1)}.games-picker-card.is-active{border-color:color-mix(in srgb, var(--game-accent) 48%, var(--ink-08));background:linear-gradient(180deg, var(--white-96), color-mix(in srgb, var(--game-accent) 11%, #f8fafce0));box-shadow:0 0 0 1px color-mix(in srgb, var(--game-accent) 18%, transparent), 0 24px 52px var(--ink-12)}.games-picker-card-topline,.games-picker-card-title,.games-picker-card-desc,.games-picker-card-tags,.games-picker-card-cta,.games-picker-visual{z-index:1;position:relative}.games-picker-card-topline{color:#64748b;letter-spacing:.12em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:10px;min-height:28px;font-size:.68rem;font-weight:900;display:flex}.games-picker-card-topline span:last-child{border:1px solid color-mix(in srgb, var(--game-accent) 22%, var(--ink-08));color:color-mix(in srgb, var(--game-accent) 70%, #0f172a);background:color-mix(in srgb, var(--game-accent) 11%, var(--white-72));white-space:nowrap;border-radius:999px;padding:6px 8px}.games-picker-visual{border:1px solid var(--ink-08);background:linear-gradient(90deg, var(--ink-04) 1px, transparent 1px), linear-gradient(180deg, var(--ink-04) 1px, transparent 1px), #f8fafcb8;width:100%;height:168px;box-shadow:inset 0 1px 0 var(--white-88);background-size:24px 24px;border-radius:8px;margin:24px 0 22px;display:grid}.games-picker-visual--snake{grid-template-columns:repeat(6,minmax(0,1fr));align-content:center;gap:7px;padding:20px}.games-picker-visual--snake span{aspect-ratio:1;background:var(--ink-08);border-radius:6px;min-width:0}.games-picker-visual--snake span.is-snake{background:linear-gradient(135deg,#86efac,#22c55e);box-shadow:0 12px 18px #22c55e3d}.games-picker-visual--snake span.is-food{background:linear-gradient(135deg,#fef08a,#f97316);box-shadow:0 12px 18px #f973163d}.games-picker-visual--runes{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding:18px}.games-picker-visual--runes span{border:1px solid color-mix(in srgb, var(--game-accent) 22%, var(--ink-08));min-width:0;color:color-mix(in srgb, var(--game-accent) 72%, #1e1b4b);font-family:var(--font-display);background:radial-gradient(circle at 50% 38%, color-mix(in srgb, var(--game-accent) 22%, transparent), transparent 58%), var(--white-72);border-radius:6px;place-items:center;font-size:1.2rem;font-weight:900;display:grid;box-shadow:0 12px 22px #581c8714}.games-picker-card-title{font-family:var(--font-display);letter-spacing:0;font-size:clamp(1.7rem,3vw,2.4rem);font-weight:900;line-height:1}.games-picker-card-desc{color:#475569;margin-top:10px;font-size:.95rem;font-weight:600;line-height:1.55}.games-picker-card-tags{flex-wrap:wrap;gap:7px;margin-top:18px;display:flex}.games-picker-card-tags span{border:1px solid var(--ink-08);color:#334155;background:var(--white-70);border-radius:999px;padding:6px 8px;font-size:.72rem;font-weight:800}.games-picker-card-cta{color:#fff;letter-spacing:.08em;text-transform:uppercase;background:color-mix(in srgb, var(--game-accent) 84%, #0f172a);width:fit-content;min-height:38px;box-shadow:0 14px 26px color-mix(in srgb, var(--game-accent) 24%, transparent);border-radius:6px;justify-content:center;align-items:center;margin-top:22px;padding:0 14px;font-size:.78rem;font-weight:900;display:inline-flex}.games-picker-card:hover .games-picker-card-cta{transform:translateY(-1px)}.games-list{gap:10px;display:grid}.game-choice{appearance:none;border:1px solid var(--slate-22);color:#0f172a;width:100%;font:inherit;text-align:left;cursor:pointer;background:#ffffffd6;border-radius:18px;gap:6px;padding:14px;transition:transform .12s,box-shadow .12s,border-color .12s;display:grid}.game-choice:hover{box-shadow:0 12px 24px var(--ink-08);transform:translateY(-1px)}.game-choice:disabled{cursor:not-allowed;opacity:.56;box-shadow:none;transform:none}.game-choice strong{font-size:1rem}.game-choice span{color:#475569;font-size:.92rem;line-height:1.5}.insights-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.game-panel-wrap{grid-column:1/-1;align-content:start;gap:12px;height:100%;min-height:0;display:grid}.app-shell.is-game-immersive .game-panel-wrap{height:100dvh;min-height:100vh;overflow:hidden}.game-panel-actions{flex-wrap:wrap;gap:8px;display:flex}.games-viewport .game-panel-wrap{gap:10px}.games-viewport .info-card.game-card,.games-viewport .controls-card,.games-viewport .info-card{width:100%}.games-viewport .info-card.game-card{min-height:calc(100vh - 320px)}.games-viewport .snake-layout{grid-template-columns:minmax(0,1fr) minmax(280px,380px)}.info-card{border-radius:24px;min-height:220px;padding:16px}.status-card{flex-direction:column;gap:14px;display:flex}.home-debug-stack{align-content:start;gap:14px;padding:14px;display:grid}.card-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.card-kicker{letter-spacing:.14em;text-transform:uppercase;color:#64748b;margin:0 0 6px;font-size:.72rem;font-weight:700}.info-card h2{margin:0;font-size:1.15rem}.big-status{white-space:nowrap;border-radius:999px;padding:10px 14px;font-size:.82rem;font-weight:800}.big-status.is-idle{color:#334155;background:#e2e8f0}.big-status.is-running,.summary-banner.is-running{color:#166534;background:#dcfce7}.big-status.is-paused,.summary-banner.is-paused{color:#92400e;background:#fef3c7}.big-status.is-gameover,.summary-banner.is-gameover{color:#991b1b;background:#fee2e2}.pair-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.pair-chip{border:1px solid #0000;border-radius:20px;flex-direction:column;gap:8px;padding:16px;display:flex}.pair-chip span{letter-spacing:.12em;text-transform:uppercase;font-size:.78rem;font-weight:800}.pair-chip strong{font-size:1.1rem}.pair-chip.is-solved{color:#166534;background:linear-gradient(135deg,#dcfce7,#bbf7d0);border-color:#1665341f}.pair-chip.is-unsolved{color:#991b1b;background:linear-gradient(135deg,#fee2e2,#fecaca);border-color:#991b1b1f}.summary-banner{border-radius:18px;padding:14px 16px;font-weight:700}.oll-panel{flex-direction:column;gap:14px;display:flex}.oll-preview-card{background:radial-gradient(circle at top, var(--white-95), #f1f5f9db);border:1px solid var(--slate-18);box-shadow:0 14px 28px var(--ink-08);border-radius:22px;align-self:center;padding:14px}.oll-preview-layout{--oll-cell-size:28px;--oll-cell-gap:4px;--oll-mini-size:16px;--oll-grid-span:calc(3 * var(--oll-cell-size) + 2 * var(--oll-cell-gap));flex-direction:column;align-items:center;gap:6px;display:flex}.oll-middle-row{align-items:center;gap:6px;display:flex}.oll-top-grid{grid-template-columns:repeat(3, var(--oll-cell-size));grid-template-rows:repeat(3, var(--oll-cell-size));gap:var(--oll-cell-gap);background:#0f172a;border-radius:18px;padding:8px;display:grid}.oll-side{gap:var(--oll-cell-gap);display:flex}.oll-side-left,.oll-side-right{height:var(--oll-grid-span);flex-direction:column;justify-content:space-between;margin-top:8px;margin-bottom:8px}.oll-side-top,.oll-side-bottom{width:var(--oll-grid-span);justify-content:space-between;padding-left:8px;padding-right:8px}.oll-cell,.oll-mini{border:2px solid var(--ink-82);border-radius:8px;display:block;box-shadow:inset 0 1px 2px #fff3}.oll-cell{width:var(--oll-cell-size);height:var(--oll-cell-size)}.oll-mini{width:var(--oll-mini-size);height:var(--oll-mini-size);place-self:center}.oll-cell.is-yellow,.oll-mini.is-yellow{background:#facc15}.oll-cell.is-muted,.oll-mini.is-muted{background:#94a3b8}.oll-row{flex-direction:column;gap:8px;display:flex}.oll-label{letter-spacing:.12em;text-transform:uppercase;color:#64748b;font-size:.78rem;font-weight:800}.oll-value{font-size:1.25rem}.oll-auf{color:#1d4ed8;font-size:1rem}.algorithm-pill{color:#1d4ed8;white-space:pre-wrap;background:#eff6ff;border-radius:18px;padding:16px;font-size:.92rem;line-height:1.7;display:block}.oll-note{color:#64748b;margin:0;line-height:1.6}.pll-preview-card{background:radial-gradient(circle at top, var(--white-95), #f1f5f9db);border:1px solid var(--slate-18);box-shadow:0 14px 28px var(--ink-08);border-radius:22px;align-self:center;padding:12px}.pll-preview-image{background:var(--white-92);box-sizing:border-box;image-rendering:auto;border-radius:16px;width:min(100%,148px);height:auto;padding:10px 12px;display:block}.pll-trainer-card{background:linear-gradient(135deg,#eff6ffe0,#dbeafed6);border:1px solid #3b82f624;border-radius:20px;padding:14px}.pll-trainer-sequence{flex-wrap:wrap;gap:10px;display:flex}.pll-trainer-move{letter-spacing:.04em;color:#475569;border:1px solid var(--slate-18);box-shadow:0 10px 20px var(--ink-08);background:#fffc;border-radius:16px;padding:12px 14px;font-size:1.2rem;font-weight:900}.pll-trainer-move.is-group-1{background:linear-gradient(135deg,#dbeafef2,#eff6ffeb);border-color:#60a5fa42}.pll-trainer-move.is-group-2{background:linear-gradient(135deg,#e9d5ffe6,#f5f3fff0);border-color:#a855f738}.pll-trainer-move.is-group-3{background:linear-gradient(135deg,#fef08a75,#fffbebf2);border-color:#f59e0b3d}.pll-trainer-move.is-group-4{background:linear-gradient(135deg,#d1fae5d9,#f0fdf4f0);border-color:#10b98133}.pll-trainer-move.is-current{color:#fff;background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-1px)}.pll-trainer-move.is-current.is-group-1{background:linear-gradient(135deg,#1d4ed8,#1e3a8a);border-color:#2563eb66}.pll-trainer-move.is-current.is-group-2{background:linear-gradient(135deg,#7c3aed,#4c1d95);border-color:#7c3aed61}.pll-trainer-move.is-current.is-group-3{background:linear-gradient(135deg,#d97706,#92400e);border-color:#d9770661}.pll-trainer-move.is-current.is-group-4{background:linear-gradient(135deg,#0f766e,#115e59);border-color:#0f766e61}.pll-trainer-move.is-done,.pll-trainer-note.is-good{color:#166534;background:linear-gradient(135deg,#dcfce7,#bbf7d0)}.pll-trainer-move.is-wrong{color:#991b1b;background:linear-gradient(135deg,#fee2e2,#fecaca);border-color:#ef444447}.pll-trainer-move.is-recovery{color:#92400e;background:linear-gradient(135deg,#fef3c7,#fde68a);border-color:#f59e0b4d}.pll-trainer-move.is-inserted{border-style:dashed}.pll-trainer-note{color:#475569;margin:0;font-weight:600;line-height:1.6}@keyframes ui-fade-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.app-shell{isolation:isolate;background:radial-gradient(circle at 8% 8%,#38bdf829,#0000 20%),radial-gradient(circle at 92% 12%,#f973161f,#0000 16%),radial-gradient(circle at 50% 100%,#0ea5e914,#0000 28%),linear-gradient(#fbfdff 0%,#f3f7fb 38%,#e7eef6 100%);padding:28px 18px 46px;position:relative;overflow-x:clip}.app-shell:before,.app-shell:after{content:"";pointer-events:none;z-index:-1;filter:blur(18px);position:fixed;inset:auto}.app-shell:before{background:#22d3ee1f;border-radius:999px;width:240px;height:240px;top:88px;left:-72px}.app-shell:after{background:#fb923c1f;border-radius:999px;width:220px;height:220px;bottom:72px;right:-40px}.app-hero,.games-page-hero,.settings-hero{border:1px solid var(--slate-16);background:radial-gradient(circle at top left, var(--white-95), transparent 30%), radial-gradient(circle at 85% 15%, #7dd3fc38, transparent 22%), linear-gradient(135deg, var(--white-90), #f8fafcc2);box-shadow:0 28px 72px var(--ink-10);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:32px;animation:.52s cubic-bezier(.16,1,.3,1) both ui-fade-rise;position:relative;overflow:hidden}.app-hero:before,.games-page-hero:before,.settings-hero:before{content:"";pointer-events:none;background:linear-gradient(120deg,#ffffff47,#0000 34%),linear-gradient(#0000,#ffffff1f);position:absolute;inset:0}.app-hero{text-align:left;max-width:1180px;margin:0 auto 24px;padding:clamp(26px,4vw,44px)}.app-kicker{letter-spacing:.24em;color:#0f766e;margin-bottom:12px;font-size:.72rem}.app-title{font-family:var(--font-display);letter-spacing:-.07em;background:linear-gradient(135deg,#0f172a 0%,#0f4c81 48%,#ea580c 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:clamp(2.6rem,5.2vw,4.8rem);line-height:.9}.app-subtitle,.games-page-copy,.settings-subtitle{color:#516276;max-width:760px;margin-top:14px;font-size:1rem;line-height:1.7}.theme-switch{border-color:var(--slate-14);background:var(--white-74);box-shadow:0 20px 48px var(--ink-14);border-radius:22px;padding:10px 14px;top:16px;left:16px}.app-nav{z-index:26;background:var(--white-72);border:1px solid var(--slate-16);width:fit-content;max-width:min(100%,760px);box-shadow:0 18px 44px var(--ink-10);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:999px;margin:0 auto 22px;padding:8px;animation:.62s cubic-bezier(.16,1,.3,1) both ui-fade-rise;position:sticky;top:16px}.app-nav-button{color:#334155;letter-spacing:.01em;background:0 0;border-radius:999px;padding:11px 18px;transition:transform .18s cubic-bezier(.16,1,.3,1),background .18s,color .18s,box-shadow .18s,border-color .18s}.app-nav-button:hover{box-shadow:0 14px 24px var(--ink-08);transform:translateY(-2px)}.app-nav-button.is-active{color:#082f49;background:linear-gradient(135deg,#0ea5e9,#38bdf8 58%,#fbbf24 120%);box-shadow:0 16px 28px #0ea5e938}.app-layout,.page-stack{gap:20px;max-width:1280px}.app-layout-home{width:100%;max-width:none}.app-layout{grid-template-columns:minmax(340px,492px) minmax(360px,1fr)}.app-stage,.info-card,.controls-card{border:1px solid var(--slate-16);background:linear-gradient(180deg, var(--white-90), #f8fafcc7), var(--white-82);box-shadow:var(--surface-shadow);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);position:relative;overflow:hidden}.app-stage:before,.info-card:before,.controls-card:before,.settings-section-card:before,.game-choice:before{content:"";pointer-events:none;background:linear-gradient(120deg,#ffffff57,#0000 28%),linear-gradient(#0000,#ffffff1f);position:absolute;inset:0}.app-stage{border-radius:30px;padding:20px}.info-card,.controls-card,.games-page-card{border-radius:28px}.controls-card{padding:16px}.home-controls-card{top:20px}.games-page-hero,.settings-hero{padding:24px 26px}.settings-shell{gap:18px}.settings-summary-row span,.games-page-summary span,.home-quick-status span,.settings-control-block,.settings-note-strip,.settings-meta-grid span,.settings-toggle-row,.speed-card,.bluetooth-card,.move-history-card,.games-menu-card,.game-stat,.algorithm-library-case-card,.algorithm-library-search input,.algorithm-library-input,.pll-debug-card,.pll-trainer-card{border-color:var(--slate-14);background:linear-gradient(180deg, var(--white-90), #f8fafcb8);box-shadow:inset 0 1px 0 var(--white-86), 0 14px 30px var(--ink-06)}.settings-section-card{box-shadow:0 20px 46px var(--ink-08);border-radius:28px;padding:18px;position:relative;overflow:hidden}.games-page-summary span,.settings-summary-row span,.home-quick-status span{border-radius:18px;padding:14px 16px}.card-kicker,.speed-label,.oll-label{letter-spacing:.18em;font-weight:800}.info-card h2,.settings-hero h2,.card-head h2,.games-page-hero h2{font-family:var(--font-display);letter-spacing:-.04em}.cube-scene{width:min(100%,420px);margin:2px auto 34px}.cube-scene:before{content:"";background:radial-gradient(circle at 50% 20%, #22d3ee3d, transparent 50%), linear-gradient(180deg, #ffffff85, var(--white-08));z-index:-1;border:1px solid #ffffff42;border-radius:34px;position:absolute;inset:-16px;box-shadow:inset 0 1px #ffffff80}.three-cube-scene{background:radial-gradient(circle at 50% 24%, var(--white-90), #e0e7ff3d 44%, transparent 76%);box-shadow:inset 0 1px 0 var(--white-90), 0 26px 54px #0ea5e91f;border-radius:30px}.move-button,.action-button,.bluetooth-saved-chip,.game-choice,.spell-defense-tray-tab,.spell-defense-tray-toggle{transition:transform .18s cubic-bezier(.16,1,.3,1),box-shadow .18s,background .18s,border-color .18s,color .18s,filter .18s}.move-button,.action-button{box-shadow:0 16px 32px var(--ink-12);border:1px solid #0000}.move-button{color:#0f172a;background:linear-gradient(135deg,#eff6ff,#dbeafe 56%,#fef3c7 120%)}.move-button:hover,.action-button:hover,.bluetooth-saved-chip:hover,.game-choice:hover{transform:translateY(-2px)}.action-button-reset{background:linear-gradient(135deg,#e2e8f0,#cbd5e1)}.action-button-sune{background:linear-gradient(135deg,#86efac,#34d399)}.action-button-antisune{background:linear-gradient(135deg,#fcd34d,#fb923c)}.action-button-align{background:linear-gradient(135deg,#22d3ee,#38bdf8 55%,#14b8a6)}.action-button-danger{background:linear-gradient(135deg,#fb7185,#ef4444)}.action-button-training{color:#e0e7ff;background:linear-gradient(135deg,#818cf8,#a78bfa)}.action-button.is-cta{background:linear-gradient(135deg,#818cf8,#a78bfa);animation:2.4s ease-in-out infinite cta-pulse-dark}@keyframes cta-pulse-dark{0%,to{box-shadow:0 4px 16px #818cf866}50%{box-shadow:0 4px 24px #818cf899}}.bluetooth-saved-chip{background:var(--white-82);color:#0f172a;box-shadow:0 12px 24px var(--ink-06);border-color:#0ea5e929;padding:8px 13px;position:relative}.bluetooth-saved-chip.is-active{color:#0f4c81;background:linear-gradient(135deg,#e0f2fefa,#fff7edf5);border-color:#0ea5e942}.game-choice{border-radius:22px;padding:16px 18px;position:relative;overflow:hidden}.game-choice:after{content:"";opacity:.78;background:linear-gradient(#0ea5e9,#22c55e,#f59e0b);border-radius:999px;width:4px;position:absolute;inset:14px auto 14px 0}.game-choice.is-active{background:linear-gradient(145deg,#e0f2fef5,#fff7edeb);border-color:#0ea5e93d;box-shadow:0 20px 36px #0ea5e924}.games-page-card{padding:18px}.status-pill,.algorithm-pill{border-radius:22px}.algorithm-pill{color:#0f3d58;background:linear-gradient(135deg,#eff6fff5,#fff7ede6)}.snake-shell-card{background:radial-gradient(circle at top right, #0ea5e92e, transparent 28%), radial-gradient(circle at bottom left, #10b98124, transparent 26%), linear-gradient(180deg, var(--white-96), #f8fafce6)}.snake-canvas-wrap{box-shadow:inset 0 1px 0 var(--white-08), 0 30px 70px var(--ink-22);border-radius:32px;padding:16px}.snake-live-score,.snake-live-bonuses{border-radius:24px}.spell-defense-shell-card{background:radial-gradient(circle at top,#22d3ee29,#0000 24%),radial-gradient(circle at 88% 8%,#f9731624,#0000 18%),linear-gradient(#070d18fa,#0a111ef5)}.spell-defense-stage,.spell-defense-tray,.spell-defense-scene-card,.spell-defense-scene-drawer-card{border-radius:30px}.spell-defense-tray-tab.is-active,.spell-defense-tray-tab:hover,.spell-defense-tray-toggle:hover{background:#1e293bf0;border-color:#22d3ee42}.algorithm-guide-overlay-backdrop{background:radial-gradient(circle at top,#38bdf82e,#0000 22%),#080f1db8}.algorithm-guide-overlay-card{background:radial-gradient(circle at 100% 0,#7dd3fc33,#0000 20%),linear-gradient(145deg,#f8fafcfa,#eff6fff5);border-radius:34px;box-shadow:0 36px 90px #0f172a57}.algorithm-guide-overlay-art,.algorithm-guide-overlay-note,.algorithm-guide-overlay-notation{background:linear-gradient(180deg, var(--white-94), #f1f5f9d6);box-shadow:inset 0 1px 0 var(--white-82), 0 14px 34px var(--ink-08)}.app-shell.theme-dark:before{background:#0891b22e}.app-shell.theme-dark:after{background:#d9770624}.app-shell.theme-dark .app-hero,.app-shell.theme-dark .games-page-hero,.app-shell.theme-dark .settings-hero,.app-shell.theme-dark .app-nav{border-color:var(--slate-14);box-shadow:var(--surface-shadow-dark);background:radial-gradient(circle at 100% 0,#38bdf81f,#0000 22%),linear-gradient(145deg,#090e18e6,#0c121ec7)}.app-shell.theme-dark .app-title{background:linear-gradient(135deg,#f8fbff 0%,#7dd3fc 48%,#fdba74 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text}.app-shell.theme-dark .app-stage,.app-shell.theme-dark .info-card,.app-shell.theme-dark .controls-card{box-shadow:var(--surface-shadow-dark);background:linear-gradient(#0a0f1ae0,#0d131fd1)}.app-shell.theme-dark .settings-summary-row span,.app-shell.theme-dark .games-page-summary span,.app-shell.theme-dark .home-quick-status span,.app-shell.theme-dark .settings-control-block,.app-shell.theme-dark .settings-note-strip,.app-shell.theme-dark .settings-meta-grid span,.app-shell.theme-dark .settings-toggle-row,.app-shell.theme-dark .speed-card,.app-shell.theme-dark .bluetooth-card,.app-shell.theme-dark .move-history-card,.app-shell.theme-dark .games-menu-card,.app-shell.theme-dark .game-stat,.app-shell.theme-dark .algorithm-library-case-card,.app-shell.theme-dark .algorithm-library-search input,.app-shell.theme-dark .algorithm-library-input,.app-shell.theme-dark .pll-debug-card,.app-shell.theme-dark .pll-trainer-card{background:linear-gradient(180deg, var(--ink-82), #0a0f1abd);box-shadow:inset 0 1px 0 var(--white-05), 0 16px 36px var(--abyss-24)}.app-shell.theme-dark .cube-scene:before{background:radial-gradient(circle at 50% 20%, #22d3ee2e, transparent 50%), linear-gradient(180deg, var(--white-06), #ffffff05);border-color:var(--slate-12)}.app-shell.theme-dark .three-cube-scene{box-shadow:inset 0 1px 0 var(--white-06), 0 26px 60px var(--abyss-28);background:radial-gradient(circle at 50% 24%,#7dd3fc38,#1e293b1f 42%,#0000 74%)}.app-shell.theme-dark .move-button{color:#eff6ff;background:linear-gradient(135deg,#1e40afeb,#0891b2e0 56%,#fb923cb8 120%)}.app-shell.theme-dark .game-choice{background:linear-gradient(#0d131fe0,#0a0f1acc)}.app-shell.theme-dark .game-choice.is-active{background:linear-gradient(145deg,#0c4a6e80,#1e293beb)}.app-shell.theme-dark .games-picker-section{border-color:var(--slate-16);box-shadow:0 28px 70px var(--abyss-34);background:linear-gradient(135deg,#0f172af2,#080d18eb 54%,#18121ee0),#020617f0}.app-shell.theme-dark .games-picker-heading{color:#f8fafc}.app-shell.theme-dark .games-picker-copy,.app-shell.theme-dark .games-picker-card-desc{color:#a8b3c7}.app-shell.theme-dark .games-picker-status span,.app-shell.theme-dark .games-picker-card,.app-shell.theme-dark .games-picker-card-tags span,.app-shell.theme-dark .games-picker-visual{border-color:var(--slate-14);background:linear-gradient(180deg, var(--ink-90), #080d18db), #0f172ae0}.app-shell.theme-dark .games-picker-card{color:#f8fafc;box-shadow:inset 0 1px 0 var(--white-06), 0 24px 54px var(--abyss-26)}.app-shell.theme-dark .games-picker-status span,.app-shell.theme-dark .games-picker-card-topline,.app-shell.theme-dark .games-picker-card-tags span{color:#cbd5e1}.app-shell.theme-dark .games-picker-visual--snake span{background:var(--slate-14)}.app-shell.theme-dark .games-picker-visual--snake span.is-snake{background:linear-gradient(135deg,#86efac,#22c55e)}.app-shell.theme-dark .games-picker-visual--snake span.is-food{background:linear-gradient(135deg,#fef08a,#f97316)}.app-shell.theme-dark .games-picker-visual--runes span{background:radial-gradient(circle at 50% 38%, color-mix(in srgb, var(--game-accent) 24%, transparent), transparent 58%), var(--ink-72)}@media (width<=980px){.app-shell{padding:20px 14px 34px}.app-hero,.games-page-hero,.settings-hero{border-radius:26px;padding:20px}.app-nav{justify-content:center;width:100%;top:12px}.app-layout,.page-stack{gap:16px}.games-picker-hero,.games-picker-grid{grid-template-columns:1fr}.games-picker-status{justify-content:flex-start;max-width:none}.games-picker-card{min-height:390px}.app-stage,.info-card,.controls-card,.settings-section-card,.games-page-card{border-radius:24px}.algorithm-library-detail-grid{grid-template-columns:1fr}}@media (width<=640px){.theme-switch{margin:0 auto 14px;position:static}.app-hero{text-align:center}.app-subtitle,.games-page-copy,.settings-subtitle{max-width:none}.games-picker-section{padding:18px}.games-picker-card{min-height:0;padding:15px}.games-picker-card-topline{flex-direction:column;align-items:flex-start}.games-picker-visual{height:138px;margin:18px 0}.games-picker-visual--snake{gap:5px;padding:15px}.settings-summary-row,.home-quick-status,.games-page-summary{grid-template-columns:1fr}.algorithm-library-quick-actions,.algorithm-library-actions{flex-direction:column;align-items:stretch}.algorithm-guide-overlay-card{border-radius:26px;padding:20px}}.layout-mode-settings{grid-template-columns:minmax(0,1240px)}.layout-mode-settings .app-stage{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:none;padding:0;overflow:visible}.layout-mode-settings .app-stage:before{display:none}.settings-shell-redesign{gap:24px;max-width:none}.settings-hero-redesign{grid-template-columns:minmax(0,1.5fr) minmax(320px,.95fr);gap:20px;padding:clamp(24px,4vw,36px);display:grid}.settings-hero-main,.settings-hero-side,.settings-hero-panel,.settings-hero-status,.settings-main-stack,.settings-side-stack,.settings-side-callouts,.settings-overview-card,.settings-cta-card,.settings-subsection-card,.settings-workflow-list,.settings-workflow-step{gap:14px;display:grid}.settings-hero-highlights{flex-wrap:wrap;gap:10px;display:flex}.settings-hero-chip{background:var(--white-72);color:#0f4c81;letter-spacing:.08em;text-transform:uppercase;box-shadow:inset 0 1px 0 var(--white-92);border:1px solid #0ea5e924;border-radius:999px;padding:9px 14px;font-size:.82rem;font-weight:800}.settings-hero-panel,.settings-hero-status,.settings-overview-card,.settings-cta-card,.settings-subsection-card,.settings-workflow-step{border:1px solid var(--slate-16);background:linear-gradient(180deg, var(--white-94), #f8fafcd1);box-shadow:inset 0 1px 0 var(--white-88), 0 18px 40px var(--ink-07);border-radius:24px;position:relative;overflow:hidden}.settings-hero-panel,.settings-hero-status,.settings-overview-card,.settings-cta-card,.settings-subsection-card{padding:20px}.settings-hero-panel:before,.settings-hero-status:before,.settings-overview-card:before,.settings-cta-card:before,.settings-subsection-card:before,.settings-workflow-step:before{content:"";pointer-events:none;background:linear-gradient(120deg,#ffffff47,#0000 32%),linear-gradient(#0000,#ffffff1a);position:absolute;inset:0}.settings-hero-panel strong,.settings-cta-card strong,.settings-overview-value,.settings-hero-status-grid strong,.settings-workflow-step strong{color:#0f172a}.settings-hero-panel strong,.settings-cta-card strong{font-size:1.1rem}.settings-hero-panel p,.settings-cta-card p,.settings-overview-copy,.settings-section-copy,.settings-workflow-step span{color:#516276;margin:0;line-height:1.6}.settings-hero-panel .action-button,.settings-cta-card .bluetooth-saved-chip{justify-self:start}.settings-hero-status-grid,.settings-overview-grid,.settings-layout-grid,.settings-practice-grid,.settings-subsection-grid{gap:16px;display:grid}.settings-hero-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-hero-status-grid span{background:var(--white-70);border:1px solid var(--slate-14);color:#556476;border-radius:18px;gap:6px;padding:14px 16px;font-size:.88rem;display:grid}.settings-hero-status-grid strong{font-size:1rem}.settings-overview-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.settings-overview-grid--embedded{margin-top:18px}.settings-overview-card{align-content:start;min-height:168px}.settings-overview-label{letter-spacing:.16em;text-transform:uppercase;color:#0f766e;font-size:.72rem;font-weight:800}.settings-overview-value{font-family:var(--font-display);letter-spacing:-.04em;word-break:break-word;font-size:clamp(1.3rem,2vw,1.9rem);line-height:.95}.settings-overview-copy{font-size:.92rem}.settings-layout-grid{grid-template-columns:minmax(0,1.55fr) minmax(320px,.85fr);align-items:start}.settings-section-card--practice,.settings-section-card--hardware,.settings-section-card--developer,.settings-section-card--workflow{padding:22px}.settings-section-card--practice{background:radial-gradient(circle at 100% 0,#38bdf833,#0000 34%),linear-gradient(#eff6fffa,#f8fafcf2)}.settings-section-card--hardware{background:radial-gradient(circle at 100% 0,#2dd4bf2e,#0000 34%),linear-gradient(#f0fdfafa,#f8fafcf2)}.settings-section-card--developer{background:radial-gradient(circle at 100% 0,#fbbf2429,#0000 34%),linear-gradient(#fffbebfa,#f8fafcf0)}.settings-section-card--workflow{background:radial-gradient(circle at top right, #60a5fa24, transparent 30%), linear-gradient(180deg, var(--white-96), #f8fafceb)}.settings-practice-grid{grid-template-columns:minmax(0,1.2fr) minmax(280px,.88fr);margin-top:18px}.settings-control-block--emphasis{border-radius:22px;padding:18px}.settings-control-block--emphasis .speed-slider{margin-top:8px}.settings-note-strip--feature{padding:16px 18px}.settings-cta-card p{font-size:.94rem}.settings-action-strip{flex-wrap:wrap;gap:12px;margin-top:18px;display:flex}.settings-subsection-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:18px}.settings-subsection-card .speed-head,.settings-subsection-card .settings-toggle-row,.settings-subsection-card .settings-meta-grid,.settings-subsection-card .bluetooth-saved-list,.settings-subsection-card .bluetooth-field{margin-top:0}.settings-subsection-card--wide,.settings-subsection-card--debug{grid-column:1/-1}.settings-subsection-card--debug{margin-top:18px}.settings-toggle-row--primary{background:linear-gradient(180deg, var(--white-92), #f8fafcc2);box-shadow:inset 0 1px 0 var(--white-88), 0 14px 28px var(--ink-05)}.settings-toggle-row--compact{align-items:flex-start}.settings-toggle-row--compact .bluetooth-saved-chips{flex-shrink:0}.settings-meta-grid--forms{margin-top:0}.settings-workflow-step{grid-template-columns:44px minmax(0,1fr);gap:14px;padding:16px}.settings-workflow-step strong{color:#082f49;width:44px;height:44px;font-family:var(--font-display);background:linear-gradient(135deg,#0ea5e9,#22d3ee 64%,#f59e0b 132%);border-radius:16px;place-items:center;font-size:1.05rem;display:grid;box-shadow:0 14px 26px #0ea5e938}.settings-section-copy{font-size:.95rem}.settings-section-card--hardware .settings-overview-card{min-height:156px}.app-shell.theme-dark .layout-mode-settings .app-stage{box-shadow:none;background:0 0}.app-shell.theme-dark .settings-hero-chip{color:#bae6fd;background:#0f172acc;border-color:#7dd3fc29}.app-shell.theme-dark .settings-hero-panel,.app-shell.theme-dark .settings-hero-status,.app-shell.theme-dark .settings-overview-card,.app-shell.theme-dark .settings-cta-card,.app-shell.theme-dark .settings-subsection-card,.app-shell.theme-dark .settings-workflow-step{background:linear-gradient(180deg, var(--ink-84), #0a0f1ac2);border-color:var(--slate-14);box-shadow:inset 0 1px 0 var(--white-05), 0 18px 42px var(--abyss-26)}.app-shell.theme-dark .settings-hero-panel strong,.app-shell.theme-dark .settings-cta-card strong,.app-shell.theme-dark .settings-overview-value,.app-shell.theme-dark .settings-hero-status-grid strong,.app-shell.theme-dark .settings-workflow-step strong{color:#f8fbff}.app-shell.theme-dark .settings-hero-panel p,.app-shell.theme-dark .settings-cta-card p,.app-shell.theme-dark .settings-overview-copy,.app-shell.theme-dark .settings-section-copy,.app-shell.theme-dark .settings-workflow-step span,.app-shell.theme-dark .settings-hero-status-grid span{color:#c2cfdf}.app-shell.theme-dark .settings-hero-status-grid span{background:var(--ink-76);border-color:var(--slate-12)}.app-shell.theme-dark .settings-section-card--practice{background:radial-gradient(circle at 100% 0,#38bdf829,#0000 34%),linear-gradient(#0c121efa,#080d17f5)}.app-shell.theme-dark .settings-section-card--hardware{background:radial-gradient(circle at 100% 0,#2dd4bf24,#0000 34%),linear-gradient(#0c121efa,#080d17f5)}.app-shell.theme-dark .settings-section-card--developer{background:radial-gradient(circle at 100% 0,#fbbf241a,#0000 34%),linear-gradient(#0c121efa,#080d17f5)}.app-shell.theme-dark .settings-section-card--workflow{background:radial-gradient(circle at 100% 0,#7dd3fc1a,#0000 30%),linear-gradient(#0c121ef5,#080d17eb)}.app-shell.theme-dark .settings-toggle-row--primary{background:linear-gradient(#0f172ae0,#0a0f1ac2)}@media (width<=1120px){.layout-mode-settings{grid-template-columns:minmax(0,1fr)}.settings-hero-redesign,.settings-layout-grid,.settings-practice-grid{grid-template-columns:1fr}.settings-overview-grid,.settings-overview-grid--embedded{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.settings-hero-redesign,.settings-hero-status-grid,.settings-overview-grid,.settings-overview-grid--embedded,.settings-subsection-grid,.settings-practice-grid{grid-template-columns:1fr}.settings-section-card--practice,.settings-section-card--hardware,.settings-section-card--developer,.settings-section-card--workflow,.settings-hero-panel,.settings-hero-status,.settings-overview-card,.settings-cta-card,.settings-subsection-card{border-radius:22px;padding:18px}.settings-action-strip{flex-direction:column}.settings-action-strip>*{width:100%}.settings-workflow-step{grid-template-columns:40px minmax(0,1fr)}.settings-workflow-step strong{border-radius:14px;width:40px;height:40px}}.home-dashboard{grid-column:1/-1;grid-template-columns:minmax(0,1.36fr) minmax(300px,340px);gap:18px;width:100%;display:grid;overflow:hidden}.home-primary-column{grid-template-rows:minmax(0,1fr) auto;gap:16px;min-height:0;display:grid}.home-main-row{grid-template-columns:minmax(220px,260px) minmax(0,1fr);align-items:stretch;gap:18px;min-height:0;display:grid}.home-compact-toolbar,.home-primary-column,.home-debug-column,.home-cube-stage,.home-debug-placeholder{min-height:0}.home-compact-toolbar{z-index:auto;align-content:start;align-self:start;gap:10px;width:auto;padding:14px;display:grid;position:static}.home-toolbar-actions,.home-card-actions{flex-wrap:wrap;gap:8px;display:flex}.home-mini-field{gap:6px;display:grid}.home-mini-field span{color:#64748b;letter-spacing:.14em;text-transform:uppercase;font-size:.7rem;font-weight:800}.home-toolbar-status{border:1px solid var(--slate-14);background:var(--white-72);color:#475569;border-radius:14px;margin:0;padding:10px 12px;font-size:.86rem;line-height:1.45}.home-toolbar-status.is-connected{color:#166534}.home-toolbar-status.is-error{color:#b91c1c}.home-cube-stage{box-sizing:border-box;place-items:center;width:100%;height:100%;min-height:clamp(396px,50vh,648px);padding:20px 24px;display:grid}.home-cube-stage .cube-scene,.home-cube-stage .cube-scene-loading-card{aspect-ratio:auto;width:min(100%,clamp(600px,56vw,960px));height:min(100%,clamp(388px,48vh,620px));max-height:none;margin:0 auto}.home-cube-stage .cube-scene-loading-card{min-height:clamp(388px,48vh,620px)}.home-debug-column{min-height:0;display:grid}.home-debug-rail{grid-template-rows:auto minmax(0,1fr);height:100%;display:grid;overflow:hidden}.home-debug-scroll{min-height:0;padding:0 4px 12px 0;overflow:auto}.home-debug-head{border-bottom:1px solid var(--slate-16);background:#f8fafcc7;justify-content:space-between;align-items:center;gap:14px;padding:16px 18px;display:flex}.home-debug-head>div{gap:4px;display:grid}.home-debug-head strong{color:#0f172a}.home-debug-head-actions{align-items:center;gap:8px;display:flex}.home-debug-toggle{flex-shrink:0}.home-debug-rail.is-collapsed{grid-template-rows:auto;align-self:start;height:auto}.home-debug-rail.is-collapsed .home-debug-head{border-bottom:0}.home-debug-placeholder{align-content:center;gap:8px;padding:16px;display:grid}.home-debug-placeholder p{color:#64748b;margin:0;line-height:1.5}.home-recognition-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.home-recognition-card{min-height:0;padding:12px}.home-recognition-card .card-head{margin-bottom:8px}.home-recognition-card .big-status{font-size:.84rem}.home-recognition-card .pair-chip,.home-recognition-card .algorithm-pill,.home-recognition-card .pll-preview-card,.home-inline-debug{border-radius:16px}.home-recognition-card .pair-chip{padding:7px 9px}.home-inline-debug{margin-top:2px}@media (width>=960px){.home-dashboard{height:min(880px,100dvh - 148px)}.home-primary-column{grid-template-rows:minmax(0,1.28fr) auto}}@media (width<=1100px){.home-dashboard{grid-template-columns:minmax(0,1fr) minmax(280px,320px)}.home-main-row{grid-template-columns:minmax(210px,230px) minmax(0,1fr)}.home-cube-stage .cube-scene,.home-cube-stage .cube-scene-loading-card{width:min(100%,clamp(480px,47vw,720px));height:min(100%,clamp(340px,44vh,520px))}}@media (width<=960px){.home-dashboard{grid-template-columns:1fr;height:auto;overflow:visible}.home-primary-column{grid-template-rows:auto}.home-main-row,.home-recognition-row{grid-template-columns:1fr}.home-compact-toolbar{width:auto;position:static}.home-cube-stage{padding:20px}.home-cube-stage .cube-scene,.home-cube-stage .cube-scene-loading-card{width:100%;height:clamp(320px,58vw,460px)}.home-debug-head-actions{flex-wrap:wrap;justify-content:flex-end}.home-debug-column{order:2}}.app-shell.theme-dark .home-toolbar-status,.app-shell.theme-dark .home-debug-placeholder p{color:#cbd5e1}.app-shell.theme-dark .home-debug-head{border-color:var(--slate-14);background:#0f172ac7}.app-shell.theme-dark .home-debug-head strong{color:#f8fafc}.app-shell.theme-dark .home-toolbar-status{background:var(--ink-72);border-color:var(--slate-14)}.app-shell.theme-dark .home-toolbar-status.is-connected{color:#86efac}.app-shell.theme-dark .home-toolbar-status.is-error{color:#fca5a5}.settings-shell-menu{gap:14px;max-width:980px}.settings-header-compact{gap:4px;padding:2px 4px 6px;display:grid}.settings-header-compact h2{font-family:var(--font-display);letter-spacing:-.05em;margin:0;font-size:clamp(1.9rem,3.2vw,2.45rem);line-height:.98}.settings-header-copy{color:#64748b;margin:0;font-size:.92rem;line-height:1.45}.settings-ios-layout{grid-template-columns:minmax(250px,292px) minmax(0,1fr);align-items:start;gap:16px;display:grid}.settings-category-menu,.settings-detail-pane,.settings-group-card{border:1px solid var(--slate-16);background:linear-gradient(180deg, var(--white-94), #f8fafcd1);box-shadow:inset 0 1px 0 var(--white-88), 0 16px 34px var(--ink-07);position:relative;overflow:hidden}.settings-category-menu,.settings-detail-pane{border-radius:24px}.settings-category-menu:before,.settings-detail-pane:before,.settings-group-card:before{content:"";pointer-events:none;background:linear-gradient(120deg,#ffffff47,#0000 34%),linear-gradient(#0000,#ffffff1a);position:absolute;inset:0}.settings-category-menu{gap:10px;padding:12px;display:grid;position:sticky;top:82px}.settings-category-list,.settings-detail-pane,.settings-pane-stack,.settings-group-card,.settings-category-copy,.settings-group-copy,.settings-detail-copy,.settings-row-copy{gap:4px;display:grid}.settings-category-list,.settings-pane-stack{gap:8px}.settings-category-item{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:18px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 14px;transition:transform .16s,background .16s,box-shadow .16s;display:grid}.settings-category-item:hover{background:var(--white-70);transform:translateY(-1px)}.settings-category-item.is-active{background:linear-gradient(135deg, #e0f2fef5, #eff6ffe6), var(--white-72);box-shadow:0 12px 24px #0ea5e924}.settings-category-copy strong,.settings-group-copy strong,.settings-row-copy strong,.settings-face-chip strong,.settings-info-grid strong{color:#0f172a}.settings-category-copy strong{font-size:.96rem}.settings-category-copy span,.settings-detail-copy p,.settings-row-copy span,.settings-inline-note,.settings-info-grid span,.settings-face-chip{color:#64748b;font-size:.84rem;line-height:1.4}.settings-category-arrow{color:#94a3b8;font-size:.92rem;font-weight:800}.settings-detail-pane{gap:12px;padding:14px}.settings-detail-header{padding:4px 4px 6px}.settings-detail-copy h3{font-family:var(--font-display);letter-spacing:-.04em;margin:0;font-size:clamp(1.15rem,1.036rem + .571vw,1.55rem)}.settings-group-card{border-radius:20px;gap:12px;padding:14px}.settings-group-head,.settings-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.settings-chip-row,.settings-action-row,.settings-inline-actions{flex-wrap:wrap;gap:8px;display:flex}.settings-inline-actions{justify-content:flex-end}.settings-input-grid,.settings-info-grid,.settings-face-grid{gap:10px;display:grid}.settings-input-grid,.settings-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-face-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.settings-info-grid span,.settings-face-chip{border:1px solid var(--slate-14);background:#ffffffad;border-radius:14px;gap:4px;padding:12px 13px;display:grid}.settings-info-grid strong{font-size:.9rem}.settings-inline-field{gap:6px;display:grid}.settings-inline-field span{color:#64748b;letter-spacing:.14em;text-transform:uppercase;font-size:.7rem;font-weight:800}.settings-inline-field--number{max-width:280px}.settings-link-row{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:0;display:grid}.settings-file-input{display:none}.settings-data-note,.settings-data-status{color:#64748b;margin:0;font-size:.82rem;line-height:1.5}.settings-data-status{border:1px solid var(--slate-14);background:#ffffffa8;border-radius:14px;padding:10px 12px}.settings-data-status.is-error{color:#b91c1c;background:#fef2f2e6;border-color:#f871713d}.settings-group-card .speed-slider{margin-top:2px}.app-shell.theme-dark .settings-header-copy,.app-shell.theme-dark .settings-category-copy span,.app-shell.theme-dark .settings-detail-copy p,.app-shell.theme-dark .settings-row-copy span,.app-shell.theme-dark .settings-inline-note,.app-shell.theme-dark .settings-data-note,.app-shell.theme-dark .settings-data-status,.app-shell.theme-dark .settings-info-grid span,.app-shell.theme-dark .settings-face-chip,.app-shell.theme-dark .settings-inline-field span{color:#c7d2df}.app-shell.theme-dark .settings-category-menu,.app-shell.theme-dark .settings-detail-pane,.app-shell.theme-dark .settings-group-card{background:linear-gradient(180deg, var(--ink-84), #0a0f1ac2);border-color:var(--slate-14);box-shadow:inset 0 1px 0 var(--white-05), 0 18px 38px var(--abyss-24)}.app-shell.theme-dark .settings-category-item:hover{background:var(--ink-74)}.app-shell.theme-dark .settings-category-item.is-active{background:linear-gradient(135deg,#0ea5e92e,#60a5fa1f),#0f172acc;box-shadow:0 12px 26px #0284c72e}.app-shell.theme-dark .settings-category-copy strong,.app-shell.theme-dark .settings-group-copy strong,.app-shell.theme-dark .settings-row-copy strong,.app-shell.theme-dark .settings-face-chip strong,.app-shell.theme-dark .settings-info-grid strong,.app-shell.theme-dark .settings-detail-copy h3{color:#f8fbff}.app-shell.theme-dark .settings-info-grid span,.app-shell.theme-dark .settings-face-chip{background:var(--ink-72);border-color:var(--slate-12)}.app-shell.theme-dark .settings-data-status{border-color:var(--slate-12);background:var(--ink-72)}.app-shell.theme-dark .settings-data-status.is-error{color:#fecaca;background:#450a0a6b;border-color:#f8717133}@media (width<=980px){.settings-ios-layout{grid-template-columns:1fr}.settings-category-menu{position:static}.settings-input-grid,.settings-info-grid,.settings-face-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.settings-category-menu,.settings-detail-pane,.settings-group-card{border-radius:20px}.settings-category-item{padding:11px 12px}.settings-group-head,.settings-row{flex-direction:column;align-items:stretch}.settings-action-row>*{width:100%}.settings-input-grid,.settings-info-grid,.settings-face-grid{grid-template-columns:1fr}}.skip-link{z-index:120;color:#f8fafc;background:#0f172af5;border-radius:14px;padding:10px 14px;font-weight:800;text-decoration:none;transition:transform .16s;position:fixed;top:12px;left:12px;transform:translateY(-180%)}.skip-link:focus{transform:translateY(0)}.app-main{display:block}.app-shell{padding:18px 16px 30px}.app-shell.is-settings-active{padding-bottom:0;padding-left:0;padding-right:0}.app-hero{max-width:1180px;margin:0 auto 14px}.app-kicker{letter-spacing:.14em;margin-bottom:8px}.app-title{letter-spacing:-.05em}.app-subtitle{color:#526077;max-width:620px;margin-top:10px;font-size:.9rem}.theme-switch{border-color:var(--slate-14);background:var(--white-82);box-shadow:0 14px 34px var(--ink-10);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:999px;gap:9px;padding:8px 11px;top:16px;left:16px}.theme-switch:hover{box-shadow:0 18px 36px var(--ink-12)}.theme-switch-copy{gap:0}.theme-switch-label{letter-spacing:.1em}.app-nav{background:var(--white-70);border:1px solid var(--slate-14);width:fit-content;max-width:1180px;box-shadow:0 10px 24px var(--ink-06);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:999px;margin:0 auto 18px;padding:5px}.app-nav-button{color:#526077;box-shadow:none;background:0 0;border-color:#0000;padding:8px 14px;font-size:.88rem;font-weight:700}.app-nav-button:hover{box-shadow:none;color:#0f172a}.app-nav-button.is-active{background:var(--ink-90);color:#f8fbff;border-color:var(--ink-12)}.app-stage,.info-card,.controls-card{border-color:var(--slate-12);box-shadow:0 16px 36px var(--ink-07);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.app-stage:before,.info-card:before,.controls-card:before{background:linear-gradient(180deg, #ffffff38, transparent 34%), linear-gradient(180deg, transparent, var(--white-05))}.card-kicker,.speed-label,.oll-label,.home-mini-field span{letter-spacing:.12em}.info-card h2,.card-head h2{letter-spacing:-.03em}.big-status{letter-spacing:.03em;padding:7px 11px;font-size:.74rem}.big-status.is-good,.summary-banner.is-good{color:#166534;background:#22c55e1f}.big-status.is-bad,.summary-banner.is-bad{color:#b91c1c;background:#f871711f}.big-status.is-idle{background:var(--slate-18);color:#334155}.bluetooth-input{border-color:var(--slate-18);background:var(--white-72);border-radius:14px;padding:10px 12px;box-shadow:inset 0 1px #ffffff80}.bluetooth-saved-chip{border-color:var(--slate-16);background:var(--white-72);color:#0f172a;box-shadow:none;padding:7px 11px;font-size:.82rem;font-weight:700}.bluetooth-saved-chip:hover{box-shadow:none;transform:translateY(-1px)}.bluetooth-saved-chip.is-active{background:var(--ink-08);border-color:var(--ink-12);color:#0f172a}.algorithm-pill{border:1px solid var(--slate-14);color:#18324a;background:#f8fafcdb;border-radius:16px;padding:12px 13px;font-size:.86rem;line-height:1.55}.pll-debug-card,.move-history-card,.settings-note-strip,.section-loading-card{border-color:var(--slate-12);box-shadow:0 10px 24px var(--ink-05)}.home-dashboard{grid-template-columns:minmax(208px,228px) minmax(0,1fr) minmax(270px,310px);align-items:stretch;gap:18px;overflow:visible}.home-center-column{grid-template-rows:minmax(0,1fr) auto;gap:18px;min-height:0;display:grid}.home-viewer-section,.home-recognition-section,.home-center-column,.home-control-dock,.home-debug-column,.home-cube-stage{min-height:0}.home-viewer-section{display:flex}.home-primary-column{grid-template-rows:minmax(0,1.72fr) auto;gap:18px}.home-main-row{grid-template-columns:minmax(196px,224px) minmax(0,1fr);gap:16px}.home-control-dock{border-radius:26px;gap:0;padding:11px 13px}.home-dock-section{gap:10px;padding:12px 0;display:grid}.home-dock-section+.home-dock-section{border-top:1px solid var(--slate-12)}.home-dock-section-head{padding-top:4px}.home-dock-title{gap:4px;display:grid}.home-dock-title strong{color:#0f172a;font-size:.95rem;font-weight:700}.home-toolbar-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.home-toolbar-fields{gap:12px}.home-mini-field{gap:7px}.home-mini-input{min-height:42px}.home-toolbar-status{border-color:var(--slate-14);background:#f8fafcbd;border-radius:14px;padding:10px 12px;font-size:.82rem}.home-toolbar-status.is-connected{color:#166534;background:#22c55e14}.home-toolbar-status.is-error{background:#f8717114}.home-cube-stage{border-radius:30px;grid-template-rows:auto minmax(0,1fr);gap:14px;width:100%;height:100%;min-height:0;padding:18px 20px 20px;display:grid}.home-stage-head{justify-content:space-between;align-items:flex-start;gap:16px;width:100%;display:flex}.home-stage-copy{gap:3px;display:grid}.home-stage-copy h2{letter-spacing:-.03em;margin:0;font-size:clamp(.98rem,.906rem + .371vw,1.24rem)}.home-stage-copy p:last-child{color:#6b778c;max-width:560px;margin:0;font-size:.9rem;line-height:1.42}.home-stage-status{flex-shrink:0}.home-cube-viewport{align-items:center;min-height:0;display:grid}.home-cube-stage-frame{aspect-ratio:16/10;border:1px solid var(--slate-18);background:linear-gradient(180deg, #0c121ef0, var(--ink-86)), var(--ink-76);width:min(100%,1080px);min-height:clamp(380px,34vw,540px);max-height:100%;box-shadow:inset 0 1px 0 var(--white-08), 0 20px 44px var(--ink-12);border-radius:26px;place-items:center;margin:0 auto;padding:clamp(18px,2vw,26px);display:grid;overflow:hidden}.home-cube-stage-canvas{place-items:center;width:100%;height:100%;min-height:0;display:grid}.home-cube-stage .cube-scene,.home-cube-stage .cube-scene-loading-card{aspect-ratio:auto;width:100%;height:100%;min-height:0;max-height:none;margin:0}.home-cube-stage .cube-scene:before{display:none}.home-cube-stage .three-cube-scene{background:radial-gradient(circle at 50% 24%, var(--white-08), transparent 48%), linear-gradient(180deg, #1e293b42, var(--ink-12));border:1px solid var(--white-08);width:100%;height:100%;box-shadow:inset 0 1px 0 var(--white-06), inset 0 0 0 1px var(--ink-08);border-radius:22px}.home-recognition-shell{border:1px solid var(--slate-12);background:linear-gradient(180deg, var(--white-74), #f8fafca3);box-shadow:0 14px 34px var(--ink-05);border-radius:28px;gap:12px;padding:12px 14px 14px;display:grid}.home-recognition-head{justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.home-recognition-head h2{letter-spacing:-.03em;margin:0;font-size:1.08rem}.home-recognition-copy{color:#6b778c;text-align:right;max-width:360px;margin:0;font-size:.84rem;line-height:1.45}.home-recognition-row{background:0 0;border:0;gap:12px;overflow:visible}.home-recognition-card{border:1px solid var(--slate-12);background:linear-gradient(180deg, var(--white-82), #f8fafcb3), #ffffffc2;border-radius:22px;min-height:0;padding:14px 15px}.home-recognition-card .card-head{gap:12px;margin-bottom:10px}.home-recognition-card .card-head h2{font-size:1rem}.home-recognition-card .big-status{align-self:flex-start}.home-recognition-card .pair-grid{gap:8px}.home-recognition-card .pair-chip,.home-recognition-card .algorithm-pill,.home-recognition-card .pll-preview-card,.home-recognition-card .oll-preview-card,.home-inline-debug{border-radius:16px}.home-recognition-card .pair-chip{border-color:var(--slate-12);background:#f8fafca3;gap:4px;padding:10px 12px}.home-recognition-card .pair-chip span{font-size:.66rem}.home-recognition-card .pair-chip strong{font-size:.92rem}.home-recognition-card .pair-chip.is-solved{color:#166534;background:linear-gradient(#dcfce7f5,#bbf7d0d1);border-color:#22c55e38;box-shadow:inset 0 1px #ffffff8c,0 8px 18px #16653414}.home-recognition-card .pair-chip.is-unsolved{background:var(--slate-10);color:inherit}.home-recognition-card .pair-chip.is-solved span{color:#166534bd}.home-recognition-card .pair-chip.is-solved strong{color:#14532d}.summary-banner{border-radius:14px;padding:10px 12px;font-size:.84rem}.home-recognition-card .summary-banner.is-good{color:#166534;box-shadow:inset 0 1px 0 var(--white-60), 0 10px 20px #16653414;background:linear-gradient(#dcfce7f0,#bbf7d0d6)}.home-recognition-card .summary-banner.is-bad{color:#475569;background:#f8fafcb3}.home-recognition-card .oll-panel{gap:10px}.home-recognition-card .oll-row{gap:6px}.home-recognition-card .oll-value{font-size:1rem}.home-recognition-card .oll-auf{color:#2563eb;font-size:.94rem}.home-recognition-card .oll-preview-card,.home-recognition-card .pll-preview-card{border:1px solid var(--slate-12);box-shadow:inset 0 1px 0 var(--white-42);background:#f8fafc9e;padding:10px}.home-recognition-card .oll-top-grid{background:var(--ink-90)}.home-card-actions{gap:7px}.home-card-actions .bluetooth-saved-chip{padding:7px 10px}.home-inline-debug{border:1px solid var(--slate-12);background:#f8fafc75;padding:12px}.home-recognition-card .algorithm-pill{background:linear-gradient(#f8fafcf0,#f1f5f9d1);box-shadow:inset 0 1px #ffffff8a}.home-recognition-card .oll-value,.home-recognition-card .algorithm-pill{color:#10263a}.home-debug-shell{border-color:var(--slate-12);background:linear-gradient(180deg, var(--white-74), #f8fafca3);box-shadow:0 14px 32px var(--ink-05);border-radius:28px}.home-debug-head{background:0 0;padding:14px 16px}.home-debug-stack{gap:10px;padding:12px}.home-debug-scroll{padding:0 6px 10px 0}.home-debug-shell .move-history-card{border-color:var(--slate-10);box-shadow:none;background:#f8fafc8a;border-radius:16px;margin-top:0;padding:12px}.home-debug-shell .action-row{margin-top:0}.home-debug-shell .speed-head{margin-bottom:10px}.home-debug-shell .pll-debug-grid{gap:6px;font-size:.84rem}.home-debug-shell .move-history-list{gap:7px}.home-debug-shell .move-history-chip{border-color:var(--slate-12);background:var(--white-70);padding:7px 10px;font-size:.8rem}.home-debug-shell .move-history-chip.is-hardware{color:#0f766e}.bluetooth-debug-card{background:#0a0f1aeb;border-radius:18px;padding:12px}.bluetooth-debug-toolbar{gap:7px}.bluetooth-debug-entry{border-radius:14px;padding:10px 11px}.app-shell.theme-dark{background:radial-gradient(circle at 18% 10%,#4755692e,#0000 18%),radial-gradient(circle at 82% 16%,#1e293b2e,#0000 16%),linear-gradient(#05070b 0%,#0a0e14 44%,#10151d 100%)}.app-shell.theme-dark .app-kicker,.app-shell.theme-dark .speed-value{color:#a8b7cc}.app-shell.theme-dark .app-title{color:#f5f7fb;-webkit-text-fill-color:currentColor;background:0 0}.app-shell.theme-dark .app-subtitle{color:#8f9caf}.app-shell.theme-dark .theme-switch{border-color:var(--slate-12);box-shadow:0 16px 40px var(--abyss-28);background:#0c1018e0}.app-shell.theme-dark .theme-switch.is-active{background:#111827f0}.app-shell.theme-dark .app-nav{border-color:var(--slate-12);box-shadow:0 14px 30px var(--abyss-24);background:#0a0f18bd}.app-shell.theme-dark .app-nav-button{color:#8f9caf}.app-shell.theme-dark .app-nav-button:hover{color:#eef2f7}.app-shell.theme-dark .app-nav-button.is-active{background:var(--white-08);border-color:var(--white-08);color:#f8fbff}.app-shell.theme-dark .app-stage,.app-shell.theme-dark .info-card,.app-shell.theme-dark .controls-card,.app-shell.theme-dark .home-recognition-shell,.app-shell.theme-dark .home-debug-shell{border-color:var(--slate-10);box-shadow:0 20px 44px var(--abyss-26);background:linear-gradient(#0b1018e6,#0e131cd1)}.app-shell.theme-dark .app-stage:before,.app-shell.theme-dark .info-card:before,.app-shell.theme-dark .controls-card:before{background:linear-gradient(180deg, var(--white-04), transparent 32%), linear-gradient(180deg, transparent, #ffffff05)}.app-shell.theme-dark .home-dock-title strong,.app-shell.theme-dark .home-stage-copy h2,.app-shell.theme-dark .home-recognition-head h2,.app-shell.theme-dark .home-debug-head strong{color:#f5f7fb}.app-shell.theme-dark .card-kicker,.app-shell.theme-dark .speed-label,.app-shell.theme-dark .oll-label,.app-shell.theme-dark .home-mini-field span,.app-shell.theme-dark .theme-switch-label{color:#7f8ca1}.app-shell.theme-dark .home-stage-copy p:last-child,.app-shell.theme-dark .home-recognition-copy,.app-shell.theme-dark .bluetooth-copy,.app-shell.theme-dark .bluetooth-note{color:#98a5b8}.app-shell.theme-dark .big-status.is-good,.app-shell.theme-dark .summary-banner.is-good,.app-shell.theme-dark .home-toolbar-status.is-connected{color:#9ae6c3;background:#10b9811f}.app-shell.theme-dark .big-status.is-bad,.app-shell.theme-dark .summary-banner.is-bad,.app-shell.theme-dark .home-toolbar-status.is-error{color:#fca5a5;background:#f871711f}.app-shell.theme-dark .big-status.is-idle,.app-shell.theme-dark .home-toolbar-status{background:var(--slate-10);color:#cbd5e1}.app-shell.theme-dark .bluetooth-input{border-color:var(--slate-14);color:#e2e8f0;box-shadow:inset 0 1px 0 var(--white-03);background:#0f172a75}.app-shell.theme-dark .bluetooth-saved-chip{background:var(--white-04);border-color:var(--slate-14);color:#e2e8f0}.app-shell.theme-dark .bluetooth-saved-chip.is-active{background:var(--white-08);color:#f8fbff;border-color:#ffffff1a}.app-shell.theme-dark .algorithm-pill,.app-shell.theme-dark .home-inline-debug,.app-shell.theme-dark .home-recognition-card .pair-chip,.app-shell.theme-dark .home-recognition-card .oll-preview-card,.app-shell.theme-dark .home-recognition-card .pll-preview-card,.app-shell.theme-dark .home-debug-shell .move-history-card,.app-shell.theme-dark .section-loading-card{background:var(--white-04);border-color:var(--slate-10);box-shadow:none}.app-shell.theme-dark .algorithm-pill{color:#dbe7f6}.app-shell.theme-dark .home-recognition-card{border-color:var(--slate-10);background:linear-gradient(180deg, var(--white-04), #ffffff05), #0c111adb}.app-shell.theme-dark .home-recognition-card .pair-chip.is-solved{box-shadow:inset 0 1px 0 var(--white-05), 0 10px 22px #064e3b29;color:#d1fae5;background:linear-gradient(#15803d47,#1665342e);border-color:#4ade8038}.app-shell.theme-dark .home-recognition-card .pair-chip.is-solved span{color:#a7f3d0c2}.app-shell.theme-dark .home-recognition-card .pair-chip.is-solved strong{color:#ecfdf5}.app-shell.theme-dark .home-recognition-card .summary-banner.is-good{color:#d1fae5;box-shadow:inset 0 1px 0 var(--white-04), 0 12px 24px #064e3b29;background:linear-gradient(#15803d47,#14532d33)}.app-shell.theme-dark .home-recognition-card .summary-banner.is-bad{background:var(--white-05);color:#b8c4d6}.app-shell.theme-dark .home-recognition-card .algorithm-pill,.app-shell.theme-dark .home-recognition-card .oll-preview-card,.app-shell.theme-dark .home-recognition-card .pll-preview-card{background:linear-gradient(180deg, var(--white-06), var(--white-03));box-shadow:inset 0 1px 0 var(--white-04)}.app-shell.theme-dark .home-recognition-card .oll-value{color:#f3f7fc}.app-shell.theme-dark .home-recognition-row{background:0 0;border-color:#0000}.app-shell.theme-dark .home-dock-section+.home-dock-section,.app-shell.theme-dark .home-debug-head{border-color:var(--slate-08)}.app-shell.theme-dark .home-cube-stage .cube-scene:before{display:none}.app-shell.theme-dark .home-cube-stage .three-cube-scene{background:var(--white-03);border-color:var(--slate-08);box-shadow:inset 0 1px 0 var(--white-05), 0 10px 24px #02061724}.app-shell.theme-dark .home-cube-stage-frame{background:linear-gradient(180deg, #080c13f5, #0c111aeb), var(--ink-76);border-color:var(--slate-12);box-shadow:inset 0 1px 0 var(--white-04), 0 24px 48px var(--abyss-24)}.app-shell.theme-dark .home-debug-shell .move-history-chip{background:var(--white-05);border-color:var(--slate-10);color:#d6deea}.app-shell.theme-dark .home-debug-shell .move-history-chip.is-hardware{color:#8de3d1}.app-shell.theme-dark .pll-debug-grid{color:#c3cfde}@media (width>=961px){.home-dashboard{height:min(1020px,100dvh - 136px)}.home-center-column{grid-template-rows:minmax(0,1fr) auto}}@media (width<=1100px){.home-dashboard{grid-template-columns:minmax(192px,208px) minmax(0,1fr) minmax(252px,288px)}}@media (width<=960px){.app-nav{justify-content:stretch;width:100%}.app-nav-button{flex:1 1 0;justify-content:center}.home-stage-head,.home-recognition-head{flex-direction:column;align-items:flex-start}.home-recognition-copy{text-align:left;max-width:none}.home-recognition-row{grid-template-columns:1fr}.home-dashboard{grid-template-columns:1fr;height:auto}.home-center-column{order:1;grid-template-rows:auto auto}.home-control-dock{order:2}.home-debug-column{order:3}.home-cube-stage{min-height:0}.home-cube-stage-frame{aspect-ratio:7/5;width:100%;min-height:clamp(340px,62vw,520px);padding:14px}.home-cube-stage .cube-scene,.home-cube-stage .cube-scene-loading-card,.home-cube-stage-canvas{width:100%;height:100%}.stats-layout{grid-template-columns:1fr}.stats-filter-bar{align-items:stretch}.stats-insights-grid,.stats-composition-row{grid-template-columns:1fr}.stats-solve-list-head,.stats-solve-row{grid-template-columns:92px 150px minmax(0,1fr)}.stats-solve-list-head span:nth-child(4),.stats-solve-list-head span:nth-child(5),.stats-solve-row span:nth-child(4),.stats-solve-row span:nth-child(5){display:none}.solve-analysis-overlay-layout{grid-template-columns:1fr}}@media (width<=640px){.app-shell{padding-inline:14px}.stats-summary-grid,.stats-layout{grid-template-columns:1fr}.stats-panel-head,.stats-spotlight-head,.stats-toolbar,.stats-composition-row{flex-direction:column;grid-template-columns:1fr;align-items:stretch}.stats-distribution-chart{grid-template-columns:repeat(2,minmax(0,1fr))}.stats-chart-tooltip{display:none}.stats-chip-row--filters{justify-content:flex-start;margin-left:0}.stats-filter-inline-field{gap:6px;display:grid}.stats-filter-popover{min-width:min(88vw,320px);left:0;right:auto}.stats-filter-inline-field input{width:100%}.stats-solve-list-head{display:none}.stats-solve-row{grid-template-columns:1fr;gap:6px}.stats-solve-row-splits{white-space:normal}.stats-solve-dialog-backdrop,.solve-analysis-overlay-backdrop{padding:12px}.stats-solve-dialog-actions,.solve-analysis-controls,.solve-analysis-overlay-head{flex-direction:column;align-items:stretch}.solve-analysis-summary-grid{grid-template-columns:1fr}.stats-solve-dialog-header,.stats-solve-detail-grid{flex-direction:column;grid-template-columns:1fr;align-items:stretch}.solve-analysis-overlay-card{padding:16px}.solve-analysis-viewer-frame{min-height:300px;padding:10px}.theme-switch{top:12px;left:12px}.home-toolbar-actions{grid-template-columns:1fr;display:grid}.home-card-actions .bluetooth-saved-chip{justify-content:center;width:100%}.home-cube-stage{padding:16px}.home-cube-stage-frame{aspect-ratio:6/5;min-height:clamp(300px,74vw,420px);padding:12px}.home-cube-stage-canvas{height:100%}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.app-nav,.app-hero,.games-page-hero,.settings-hero{animation:none!important}}:where(button,[role=button],a,input,select,textarea,[tabindex]):focus-visible{outline-offset:2px;border-radius:6px;outline:2px solid #2563eb}.theme-dark :where(button,[role=button],a,input,select,textarea,[tabindex]):focus-visible{outline-color:#7dd3fc}button:not(:disabled):active,[role=button]:not([aria-disabled=true]):active,.action-button:not(:disabled):active,.app-nav-button:not(:disabled):active{transition:transform 60ms ease-out;transform:translateY(1px)scale(.985)}@media (prefers-reduced-motion:reduce){button:active,[role=button]:active,.action-button:active,.app-nav-button:active{transform:none}}.app-toast-region{z-index:1000;pointer-events:none;flex-direction:column;gap:8px;max-width:min(360px,100vw - 28px);display:flex;position:fixed;top:14px;right:14px}.app-toast{pointer-events:auto;background:var(--ink-92);color:#f8fafc;border-radius:12px;align-items:flex-start;gap:10px;padding:12px 14px;font-size:.9rem;line-height:1.35;animation:.18s ease-out app-toast-in;display:flex;position:relative;overflow:hidden;box-shadow:0 18px 40px #02061752}.app-toast-copy{flex:1;gap:3px;display:grid}.app-toast-title{color:#e2e8f0f5;letter-spacing:.12em;text-transform:uppercase;font-size:.72rem;font-weight:800}.app-toast.is-success{background:#107a57f0}.app-toast.is-error{background:#991b1bf0}.app-toast.is-warning{color:#fff7ed;background:#92400ef0}.app-toast.is-celebration{background:linear-gradient(135deg,#0891b2f5,#2563ebf5 52%,#7c3aedf5);border:1px solid #fde04757;box-shadow:0 22px 46px #2563eb47}.app-toast.is-celebration:before{content:"";pointer-events:none;background:linear-gradient(#ffffff29,#0000 42%);position:absolute;inset:0}.app-toast.is-celebration .app-toast-title{color:#fde68a}.app-toast-dismiss{appearance:none;color:inherit;opacity:.75;cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:2px 4px;font-size:1.1rem;line-height:1}.app-toast-dismiss:hover{opacity:1}@keyframes app-toast-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}input[type=text],input[type=number],input[type=email],input[type=search],textarea,select{appearance:none;border:1px solid var(--color-input-border,#94a3b857);background:var(--color-input-bg,var(--white-92));color:var(--color-text,#0f172a);font:inherit;border-radius:12px;padding:10px 12px;transition:border-color .14s,box-shadow .14s}input[type=text]:focus,input[type=number]:focus,input[type=email]:focus,input[type=search]:focus,textarea:focus,select:focus{border-color:var(--color-accent,#2563eb);outline:none;box-shadow:0 0 0 3px #2563eb2e}input::placeholder,textarea::placeholder{color:var(--color-text-subtle,#64748b);opacity:1}select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%2364748b' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;padding-right:32px}input[type=range]{appearance:none;accent-color:var(--color-accent,#2563eb);cursor:pointer;background:0 0;border:none;height:20px;padding:0}input[type=range]::-webkit-slider-runnable-track{background:var(--color-border-strong,var(--slate-40));border-radius:999px;height:4px}input[type=range]::-webkit-slider-thumb{appearance:none;background:var(--color-accent,#2563eb);border-radius:50%;width:16px;height:16px;margin-top:-6px;transition:transform .1s;box-shadow:0 2px 6px #2563eb4d}input[type=range]:hover::-webkit-slider-thumb{transform:scale(1.18)}input[type=range]::-moz-range-track{background:var(--color-border-strong,var(--slate-40));border-radius:999px;height:4px}input[type=range]::-moz-range-thumb{background:var(--color-accent,#2563eb);border:none;border-radius:50%;width:16px;height:16px;box-shadow:0 2px 6px #2563eb4d}[data-tooltip]{position:relative}[data-tooltip]:after{content:attr(data-tooltip);white-space:nowrap;white-space:normal;text-align:center;background:var(--ink-92);color:#f8fafc;pointer-events:none;opacity:0;z-index:200;border-radius:8px;max-width:260px;padding:5px 9px;font-size:.78rem;font-weight:500;line-height:1.35;transition:opacity .12s,transform .12s;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)translateY(4px)}[data-tooltip]:hover:after,[data-tooltip]:focus-visible:after{opacity:1;transform:translate(-50%)translateY(0)}@media (prefers-reduced-motion:reduce){[data-tooltip]:after{transition:none}}@keyframes skeleton-shimmer{0%{background-position:-200%}to{background-position:200%}}.skeleton{background:linear-gradient(90deg, var(--color-skeleton-base,var(--slate-14)) 25%, var(--color-skeleton-shine,var(--white-60)) 50%, var(--color-skeleton-base,var(--slate-14)) 75%);background-size:200% 100%;border-radius:8px;animation:1.4s ease-in-out infinite skeleton-shimmer}.skeleton-text{border-radius:4px;height:1em}.skeleton-card{border-radius:var(--radius-md,18px);height:120px}@media (prefers-reduced-motion:reduce){.skeleton{background:var(--color-skeleton-base,var(--slate-14));animation:none}}.info-card,.dashboard-panel,.stats-chip-button,.bluetooth-saved-chip,.game-choice,.pll-trainer-move,.move-history-chip,.algorithm-library-case-card{transition:color .14s,background-color .14s,border-color .14s,box-shadow .14s,transform .14s}.app-toast-dismiss,button[aria-label]:not([class*=action-button]):not([class*=move-button]):not([class*=app-nav]):not([class*=bluetooth]):not([class*=game-choice]){transition:opacity .12s,transform .12s}.app-toast-dismiss:hover,button[aria-label]:not([class*=action-button]):not([class*=move-button]):not([class*=app-nav]):not([class*=bluetooth]):not([class*=game-choice]):hover{opacity:1;transform:scale(1.1)}@media (prefers-reduced-motion:reduce){.info-card,.dashboard-panel,.stats-chip-button,.bluetooth-saved-chip,.game-choice,.pll-trainer-move,.move-history-chip,.algorithm-library-case-card{transition:none}}.cross-edge-grid{grid-template-columns:1fr 1fr;gap:6px;margin-bottom:8px;display:grid}.cross-edge-slot{border:1px solid var(--border,#00000017);border-radius:8px;justify-content:space-between;align-items:center;padding:5px 9px;font-size:.8rem;display:flex}.cross-edge-slot.is-solved{background:var(--status-good-bg,#e8f5e9);color:var(--status-good-fg,#2e7d32);border-color:var(--status-good-border,#a5d6a7)}.cross-edge-slot.is-open{background:var(--status-idle-bg,#f5f5f5);color:var(--status-idle-fg,#666)}.cross-edge-slot span{letter-spacing:.03em;font-weight:600}.cross-edge-slot strong{font-size:1rem}.stats-help-row{justify-content:flex-end;min-height:24px;margin-bottom:10px;display:flex}.stats-view-tabs{flex-wrap:wrap;align-items:center;gap:8px;padding:0 0 4px;display:flex}.stats-view-tabs-divider{background:var(--slate-20);width:1px;height:20px;margin:0 2px}.stats-last-n-select{color:inherit;font:inherit;cursor:pointer;appearance:none;background:0 0;border:none;outline:none;padding:0;font-size:.74rem;font-weight:700}.stats-tab-badge{background:var(--accent,#1976d2);color:#fff;border-radius:9px;justify-content:center;align-items:center;min-width:18px;height:18px;margin-left:6px;padding:0 4px;font-size:.7rem;font-weight:700;line-height:1;display:inline-flex}.stats-cases-panel{flex-direction:column;gap:18px;display:flex}.stats-case-table{flex-direction:column;gap:2px;margin-top:8px;display:flex}.stats-case-table-head,.stats-case-row{border-radius:6px;grid-template-columns:1fr 60px 100px;align-items:center;gap:8px;padding:6px 10px;font-size:.82rem;display:grid}.stats-case-table-head{text-transform:uppercase;letter-spacing:.04em;color:var(--label-color,#888);font-size:.72rem;font-weight:600}.stats-case-row{background:var(--card-bg,#fafafa);border:1px solid var(--border,#00000012)}.stats-case-row:nth-child(2n){background:var(--card-alt-bg,#f4f4f4)}.stats-case-name{font-weight:600}.stats-case-count,.stats-case-avg{font-variant-numeric:tabular-nums}.algorithm-library-training-row{background:var(--card-alt-bg,#f4f4f4);border-radius:7px;flex-wrap:wrap;gap:16px;margin-top:6px;padding:7px 10px;display:flex}.algorithm-library-training-cell{flex-direction:column;align-items:center;gap:1px;min-width:44px;display:flex}.algorithm-library-training-cell strong{font-variant-numeric:tabular-nums;font-size:.88rem;font-weight:700;line-height:1.1}.algorithm-library-training-cell span{text-transform:uppercase;letter-spacing:.04em;color:var(--label-color,#888);font-size:.65rem;font-weight:500}.app-shell.theme-dark .cross-edge-slot{border-color:var(--slate-12);background:var(--white-04);color:#c3cfde}.app-shell.theme-dark .cross-edge-slot.is-solved{color:#86efac;background:#22c55e1f;border-color:#22c55e38}.app-shell.theme-dark .cross-edge-slot.is-open{background:var(--white-04);color:#8292a8}.app-shell.theme-dark .stats-view-tabs .bluetooth-saved-chip{background:var(--white-06);border-color:var(--slate-14);color:#c3cfde}.app-shell.theme-dark .stats-view-tabs .bluetooth-saved-chip.is-active{color:#93c5fd;background:#60a5fa2e;border-color:#60a5fa47}.app-shell.theme-dark .stats-case-row{background:var(--white-04);border-color:var(--slate-10);color:#c3cfde}.app-shell.theme-dark .stats-case-row:nth-child(2n){background:var(--white-06)}.app-shell.theme-dark .stats-case-table-head{color:#6b7d94}.app-shell.theme-dark .algorithm-library-training-row{background:var(--white-05)}.app-shell.theme-dark .algorithm-library-training-cell strong{color:#d6deea}.app-shell.theme-dark .algorithm-library-training-cell span{color:#6b7d94}@keyframes solve-case-flash{0%{box-shadow:0 0 #38bdf800}20%{box-shadow:0 0 0 4px #38bdf88c,0 0 18px #38bdf852}70%{box-shadow:0 0 0 4px #38bdf866,0 0 18px #38bdf833}to{box-shadow:0 0 #38bdf800}}.recognition-card.is-post-solve-flash{animation:3s ease-out forwards solve-case-flash}.app-nav-theme-btn{cursor:pointer;width:32px;height:32px;color:var(--nav-fg,#374151);opacity:.72;background:0 0;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;margin-left:auto;font-size:1.1rem;line-height:1;transition:opacity .15s,background .15s;display:inline-flex}.app-nav-theme-btn:hover{opacity:1;background:#0000000f}.app-shell.theme-dark .app-nav-theme-btn{color:#c3cfde}.app-shell.theme-dark .app-nav-theme-btn:hover{background:var(--white-08)}.app-nav-bt-wrap{align-items:center;display:inline-flex;position:relative}.app-nav-bt-pill{font:inherit;cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:.8rem;font-weight:700;transition:transform .12s,box-shadow .12s,opacity .12s;display:inline-flex}.app-nav-bt-pill:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 14px #0000001f}.app-nav-bt-pill:disabled{cursor:default;opacity:.7}.app-nav-bt-pill.is-idle{background:var(--slate-14);border-color:var(--slate-28);color:#475569}.app-nav-bt-pill.is-connecting{color:#92400e;background:#fbbf2424;border-color:#fbbf2461}.app-nav-bt-pill.is-connected{color:#14532d;background:#22c55e1f;border-color:#22c55e5c}.app-nav-bt-pill.is-error{color:#7f1d1d;background:#ef44441a;border-color:#ef444452}.app-nav-bt-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.app-nav-bt-pill.is-idle .app-nav-bt-dot{background:#94a3b8}.app-nav-bt-pill.is-connecting .app-nav-bt-dot{background:#f59e0b;animation:1s ease-in-out infinite bt-dot-pulse}.app-nav-bt-pill.is-connected .app-nav-bt-dot{background:#22c55e}.app-nav-bt-pill.is-error .app-nav-bt-dot{background:#ef4444}@keyframes bt-dot-pulse{0%,to{opacity:1}50%{opacity:.3}}.app-nav-bt-battery{opacity:.72;margin-left:1px;font-size:.72rem}.app-nav-bt-sheet{z-index:120;border:1px solid var(--slate-22);background:var(--white-96);min-width:200px;box-shadow:0 12px 32px var(--ink-14);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:16px;gap:8px;padding:14px 16px 12px;display:grid;position:absolute;top:calc(100% + 8px);right:0}.app-nav-bt-sheet-name{color:#0f172a;margin:0;padding-right:20px;font-size:.88rem;font-weight:700}.app-nav-bt-sheet-row{color:#475569;margin:0;font-size:.8rem}.app-nav-bt-sheet-row strong{color:#0f172a}.app-nav-bt-sheet-disconnect{appearance:none;color:#991b1b;font:inherit;cursor:pointer;background:#ef444414;border:1px solid #ef44444d;border-radius:8px;padding:6px 12px;font-size:.8rem;font-weight:600;transition:background .12s}.app-nav-bt-sheet-disconnect:hover{background:#ef444429}.app-nav-bt-sheet-close{appearance:none;color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:2px 5px;font-size:.75rem;line-height:1;position:absolute;top:10px;right:10px}.app-nav-bt-sheet-close:hover{color:#475569;background:#0000000f}.app-shell.theme-dark .app-nav-bt-pill.is-idle{background:var(--slate-10);border-color:var(--slate-20);color:#94a3b8}.app-shell.theme-dark .app-nav-bt-pill.is-connecting{color:#fbbf24;background:#fbbf241a;border-color:#fbbf2447}.app-shell.theme-dark .app-nav-bt-pill.is-connected{color:#4ade80;background:#22c55e1a;border-color:#22c55e47}.app-shell.theme-dark .app-nav-bt-pill.is-error{color:#f87171;background:#ef44441a;border-color:#ef44443d}.app-shell.theme-dark .app-nav-bt-sheet{border-color:var(--slate-16);background:#0f172af5;box-shadow:0 12px 32px #02061761}.app-shell.theme-dark .app-nav-bt-sheet-name{color:#f1f5f9}.app-shell.theme-dark .app-nav-bt-sheet-row{color:#94a3b8}.app-shell.theme-dark .app-nav-bt-sheet-row strong{color:#e2e8f0}.app-shell.theme-dark .app-nav-bt-sheet-disconnect{color:#fca5a5;background:#ef44441a;border-color:#ef444447}.app-shell.theme-dark .app-nav-bt-sheet-disconnect:hover{background:#ef44442e}.recognition-practice-btn{border:1px solid var(--border,#0000001a);background:var(--card-alt-bg,#f4f4f4);color:var(--body-fg,#333);cursor:pointer;white-space:nowrap;border-radius:6px;padding:3px 9px;font-size:.75rem;transition:background .15s,border-color .15s}.recognition-practice-btn:hover{background:var(--accent-soft,#e3f0ff);border-color:var(--accent,#1976d2);color:var(--accent,#1976d2)}.app-shell.theme-dark .recognition-practice-btn{background:var(--white-06);border-color:var(--slate-16);color:#c3cfde}.app-shell.theme-dark .recognition-practice-btn:hover{color:#93c5fd;background:#60a5fa29;border-color:#60a5fa52}.library-bulk-select-bar{background:var(--accent-soft,#e3f0ff);border:1px solid var(--accent,#1976d2);border-radius:8px;flex-wrap:wrap;align-items:center;gap:10px;padding:8px 12px;font-size:.82rem;display:flex}.library-bulk-select-bar strong{color:var(--accent,#1976d2);margin-right:4px;font-weight:700}.library-bulk-tag-list{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.library-bulk-tag-chip{background:var(--card-alt-bg,#f4f4f4);border:1px solid var(--border,#0000001a);cursor:pointer;border-radius:12px;align-items:center;gap:4px;padding:3px 9px;font-size:.76rem;font-weight:600;transition:background .12s;display:inline-flex}.library-bulk-tag-chip.is-active{background:var(--accent,#1976d2);color:#fff;border-color:#0000}.algorithm-library-case-card.is-bulk-selected{outline:2px solid var(--accent,#1976d2);outline-offset:2px}.app-shell.theme-dark .library-bulk-select-bar{background:#60a5fa1f;border-color:#60a5fa47}.app-shell.theme-dark .library-bulk-select-bar strong{color:#93c5fd}.app-shell.theme-dark .library-bulk-tag-chip{background:var(--white-06);border-color:var(--slate-14);color:#c3cfde}.app-shell.theme-dark .library-bulk-tag-chip.is-active{color:#bfdbfe;background:#60a5fa47;border-color:#60a5fa5c}.stats-case-trend{align-items:center;gap:2px;font-size:.78rem;font-weight:600;display:inline-flex}.stats-case-trend.is-improving{color:#22c55e}.stats-case-trend.is-worsening{color:#ef4444}.stats-case-trend.is-neutral{color:#888}.stats-session-delta{font-variant-numeric:tabular-nums;border-radius:4px;padding:1px 5px;font-size:.78rem;font-weight:600}.stats-session-delta.is-better{color:#22c55e;background:#22c55e1a}.stats-session-delta.is-worse{color:#ef4444;background:#ef44441a}.stats-session-delta.is-same{color:#888;background:0 0}.spell-defense-fps-chip{color:#94a3b8b3;font-variant-numeric:tabular-nums;margin-left:4px;font-size:.72rem}.spell-defense-combo-banner{z-index:20;pointer-events:none;flex-direction:column;align-items:center;gap:2px;animation:.18s ease-out combo-pop;display:flex;position:absolute;top:10%;left:50%;transform:translate(-50%)}.spell-defense-combo-banner strong{color:#fde047;text-shadow:0 0 12px #fde047b3,0 2px 4px #0009;letter-spacing:.04em;font-size:1.35rem;font-weight:900}.spell-defense-combo-banner span{color:#fff;opacity:.88;font-size:.85rem;font-weight:700}@keyframes combo-pop{0%{opacity:0;transform:translate(-50%)scale(.7)}to{opacity:1;transform:translate(-50%)scale(1)}}.spell-defense-augment-targets{flex-wrap:wrap;gap:4px;margin-top:4px;display:flex}.spell-defense-replay-scrubber{flex-direction:column;gap:6px;margin-top:12px;display:flex}.spell-defense-replay-scrubber input[type=range]{width:100%}.spell-defense-replay-controls{gap:6px;display:flex}.spell-defense-augment-targets .bluetooth-saved-chip{color:#bfdbfe;background:#60a5fa2e;border:1px solid #60a5fa59;padding:3px 8px;font-size:.76rem}.spell-defense-augment-targets .bluetooth-saved-chip:disabled{opacity:.38;cursor:not-allowed}.spell-defense-augment-targets .bluetooth-saved-chip:not(:disabled):hover{color:#eff6ff;background:#60a5fa52}@keyframes section-enter{0%{opacity:0;transform:translateY(10px)}}.app-stage-wide,.app-layout-home,.cvs-settings{animation:section-enter .26s var(--ease-spring) both}@media (prefers-reduced-motion:reduce){.app-stage-wide,.app-layout-home,.cvs-settings{animation:none}}.command-palette-overlay{z-index:1000;padding:12dvh var(--space-4) var(--space-4);background:var(--ink-70);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);animation:command-palette-fade .14s var(--ease-std) both;justify-content:center;align-items:flex-start;display:flex;position:fixed;inset:0}@keyframes command-palette-fade{0%{opacity:0}}.command-palette-modal{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--surface-overlay);width:min(620px,100%);box-shadow:inset 0 1px 0 var(--white-86), var(--surface-shadow-dark);animation:command-palette-pop .18s var(--ease-spring) both;overflow:hidden}@keyframes command-palette-pop{0%{opacity:0;transform:translateY(14px)scale(.98)}}.command-palette-search{align-items:center;gap:var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--color-border);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.command-palette-search span{border-radius:var(--radius-sm);background:var(--slate-10);width:28px;height:28px;color:var(--color-text-muted);place-items:center;font-weight:800;display:inline-grid}.command-palette-search input{width:100%;color:var(--color-text);font:inherit;font-size:var(--text-md);background:0 0;border:0;outline:0}.command-palette-search input::placeholder{color:var(--color-text-subtle)}.command-palette-search kbd{border:1px solid var(--color-border);border-radius:var(--radius-xs);color:var(--color-text-subtle);font-size:var(--text-2xs);padding:2px 8px;font-weight:800}.command-palette-list{max-height:min(520px,58dvh);padding:var(--space-2);overflow-y:auto}.command-palette-item{align-items:center;gap:var(--space-3);border-radius:var(--radius-sm);width:100%;color:inherit;text-align:left;cursor:pointer;transition:background var(--dur-fast), transform var(--dur-fast);background:0 0;border:0;grid-template-columns:minmax(0,1fr) auto;padding:10px 12px;display:grid}.command-palette-item:hover,.command-palette-item:focus-visible{background:var(--slate-10);transform:translateY(-1px)}.command-palette-item span{gap:2px;min-width:0;display:grid}.command-palette-item strong{color:var(--color-text);font-size:var(--text-sm)}.command-palette-item small{color:var(--color-text-muted);font-size:var(--text-xs);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.command-palette-item em{color:var(--color-text-subtle);font-size:var(--text-2xs);text-transform:uppercase;letter-spacing:.08em;font-style:normal;font-weight:800}.command-palette-empty{padding:var(--space-8) var(--space-4);color:var(--color-text-muted);text-align:center;font-size:var(--text-sm)}.theme-dark .command-palette-modal{box-shadow:inset 0 1px 0 var(--white-06), var(--surface-shadow-dark)}.theme-dark .command-palette-search span,.theme-dark .command-palette-item:hover,.theme-dark .command-palette-item:focus-visible{background:var(--white-06)}@media (prefers-reduced-motion:reduce){.command-palette-overlay,.command-palette-modal{animation:none}}.shortcuts-overlay{z-index:1000;background:var(--ink-70);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:var(--space-4);animation:shortcuts-fade-in .16s var(--ease-std) both;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}@keyframes shortcuts-fade-in{0%{opacity:0}}.shortcuts-modal{background:var(--surface-overlay,#f8fbfff5);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:inset 0 1px 0 var(--white-86), var(--surface-shadow-dark);width:min(560px,100%);max-height:min(680px,90dvh);animation:shortcuts-slide-up .2s var(--ease-spring) both;flex-direction:column;display:flex;overflow:hidden}@keyframes shortcuts-slide-up{0%{opacity:0;transform:translateY(16px)scale(.97)}}.shortcuts-modal-header{padding:var(--space-6) var(--space-6) var(--space-4);border-bottom:1px solid var(--color-border);flex-shrink:0;justify-content:space-between;align-items:flex-start;display:flex}.shortcuts-modal-title{font-family:var(--font-display);color:var(--color-text);margin:0;font-size:1.1rem;font-weight:700;line-height:1.2}.shortcuts-close-btn{color:var(--color-text-muted);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);transition:color var(--dur-fast), background var(--dur-fast);background:0 0;border:none;flex-shrink:0;font-size:1rem;line-height:1}.shortcuts-close-btn:hover{background:var(--slate-10);color:var(--color-text)}.shortcuts-body{padding:var(--space-4) var(--space-6);gap:var(--space-5);flex-direction:column;display:flex;overflow-y:auto}.shortcuts-group-label{margin:0 0 var(--space-2);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-subtle);font-weight:700}.shortcuts-list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.shortcuts-row{align-items:center;gap:var(--space-3);padding:5px var(--space-2);border-radius:var(--radius-sm);transition:background var(--dur-fast);display:flex}.shortcuts-row:hover{background:var(--slate-08)}.shortcuts-keys{flex-wrap:wrap;flex-shrink:0;gap:4px;min-width:160px;display:flex}.shortcuts-kbd{border-radius:var(--radius-xs);font-family:var(--font-sans);font-size:var(--text-2xs);background:var(--white-82);border:1px solid var(--slate-28);box-shadow:0 1px 0 var(--slate-22);color:var(--color-text);white-space:nowrap;justify-content:center;align-items:center;padding:2px 7px;font-weight:700;display:inline-flex}.shortcuts-kbd--inline{font-size:.75em}.shortcuts-desc{font-size:var(--text-sm);color:var(--color-text-muted);flex:1}.shortcuts-hint{padding:var(--space-3) var(--space-6);border-top:1px solid var(--color-border);font-size:var(--text-xs);color:var(--color-text-subtle);text-align:center;flex-shrink:0;margin:0}.theme-dark .shortcuts-modal{background:var(--surface-overlay,#080d18f7);border-color:var(--color-border);box-shadow:inset 0 1px 0 var(--white-06), var(--surface-shadow-dark)}.theme-dark .shortcuts-kbd{border-color:var(--slate-22);box-shadow:0 1px 0 var(--slate-16);color:var(--color-text);background:#ffffff0f}@media (prefers-reduced-motion:reduce){.shortcuts-overlay,.shortcuts-modal{animation:none}}.session-summary-overlay{bottom:var(--space-6);z-index:900;width:min(480px, calc(100vw - var(--space-8)));pointer-events:none;position:fixed;left:50%;transform:translate(-50%)}.session-summary-card{pointer-events:auto;background:var(--surface-overlay,#f8fbfff5);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:inset 0 1px 0 var(--white-86), var(--surface-shadow-dark);animation:session-summary-slide-up .28s var(--ease-spring) both;overflow:hidden}@keyframes session-summary-slide-up{0%{opacity:0;transform:translateY(24px)scale(.97)}}.session-summary-header{padding:var(--space-4) var(--space-4) var(--space-3);justify-content:space-between;align-items:flex-start;display:flex}.session-summary-title{font-family:var(--font-display);color:var(--color-text);margin:0;font-size:1rem;font-weight:700;line-height:1.2}.session-summary-close{color:var(--color-text-muted);padding:2px var(--space-2);border-radius:var(--radius-sm);transition:color var(--dur-fast), background var(--dur-fast);background:0 0;border:none;font-size:.9rem;line-height:1}.session-summary-close:hover{background:var(--slate-10);color:var(--color-text)}.session-summary-stats{background:var(--color-border);border-top:1px solid var(--color-border);gap:1px;display:flex}.session-summary-stat{padding:var(--space-3) var(--space-2);background:var(--surface-overlay,#f8fbfff5);flex-direction:column;flex:1;align-items:center;gap:3px;display:flex}.session-summary-label{font-size:var(--text-2xs);text-transform:uppercase;letter-spacing:.07em;color:var(--color-text-subtle);font-weight:700}.session-summary-value{font-family:var(--font-display);font-size:var(--text-md);color:var(--color-text);letter-spacing:-.01em;font-weight:700}.session-summary-value--best{color:#16a34a}.session-summary-value--worst{color:var(--color-text-muted)}.theme-dark .session-summary-card,.theme-dark .session-summary-stat{background:var(--surface-overlay,#080d18f7)}.theme-dark .session-summary-card{border-color:var(--color-border);box-shadow:inset 0 1px 0 var(--white-06), var(--surface-shadow-dark)}.theme-dark .session-summary-value--best{color:#4ade80}@media (prefers-reduced-motion:reduce){.session-summary-card{animation:none}}.landing-page{--landing-bg:#0a0a0c;--landing-panel:#121218d6;--landing-panel-strong:#181820f0;--landing-line:#e8e8ec1f;--landing-text:#e8e8ec;--landing-muted:#9a9aa3;--landing-red:#c41e3a;--landing-blue:#0e52c1;--landing-yellow:#ffd500;--landing-orange:#ff5800;--landing-green:#009b48;background:linear-gradient(180deg, #0a0a0cfa, #0c0c10f5 55%, #08080b), var(--landing-bg);width:100vw;color:var(--landing-text);font-family:var(--font-display), "Segoe UI", sans-serif;isolation:isolate;margin:0 calc(50% - 50vw);position:relative;overflow:hidden}.landing-page:after{z-index:4;pointer-events:none;content:"";opacity:.025;mix-blend-mode:screen;background-image:repeating-linear-gradient(0deg,#fff 0 1px,#0000 1px 2px),repeating-linear-gradient(90deg,#fff 0 1px,#0000 1px 2px);position:absolute;inset:0}.landing-page a{color:inherit}.landing-hero{border-bottom:1px solid var(--landing-line);place-items:center;min-height:clamp(540px,100svh - 134px,780px);display:grid;position:relative;overflow:hidden}.landing-tile-canvas{cursor:crosshair;width:100%;height:100%;position:absolute;inset:0}.landing-hero:before{z-index:1;pointer-events:none;content:"";background:radial-gradient(circle at 50% 42%,#e8e8ec17,#0000 30%),linear-gradient(#0a0a0c3d,#0a0a0cb8);position:absolute;inset:0}.landing-hero-content{z-index:2;pointer-events:none;text-align:center;flex-direction:column;align-items:center;width:min(920px,100% - 32px);display:flex;position:relative}.landing-logo-mark{color:#e8e8eceb;letter-spacing:.16em;text-transform:uppercase;align-items:center;gap:12px;margin-bottom:28px;font-size:.84rem;font-weight:800;display:inline-flex}.landing-mini-cube{background:#000000b8;border:1px solid #e8e8ec29;grid-template-columns:repeat(3,1fr);gap:2px;width:28px;height:28px;padding:2px;display:grid;box-shadow:0 16px 42px #00000061}.landing-mini-cube span{min-width:0;box-shadow:inset 0 1px 0 var(--white-18);border-radius:1px;display:block}.landing-hero h1,.landing-how h2,.landing-cta h2{letter-spacing:0;margin:0;font-weight:900;line-height:.88}.landing-hero h1{text-transform:uppercase;flex-direction:column;font-size:clamp(4rem,9.8vw,9rem);display:flex}.landing-hero h1 span:last-child,.landing-cta h2 span{color:#0000;background:linear-gradient(90deg, var(--landing-red), var(--landing-yellow), var(--landing-green), var(--landing-blue));-webkit-background-clip:text;background-clip:text}.landing-hero-sub{color:#e8e8ecc2;font-family:var(--font-sans), "Segoe UI", sans-serif;margin:26px 0 0;font-size:clamp(1.05rem,1.8vw,1.38rem);font-weight:600;line-height:1.55}.landing-actions{pointer-events:auto;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:36px;display:flex}.landing-button{min-height:46px;color:var(--landing-text);font:800 .76rem/1 var(--font-display), "Segoe UI", sans-serif;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;background:0 0;border:1px solid #e8e8ec2e;border-radius:6px;justify-content:center;align-items:center;padding:0 22px;text-decoration:none;transition:transform .18s,border-color .18s,background .18s,color .18s;display:inline-flex;box-shadow:0 16px 36px #0000002e}.landing-button:hover,.landing-button:focus-visible{border-color:#e8e8ec85;transform:translateY(-2px)}.landing-page .landing-button.landing-button-primary,.landing-page .landing-button.landing-button-primary:visited{color:#08080b;background:var(--landing-yellow);border-color:#0000}.landing-page .landing-button.landing-button-primary:hover,.landing-page .landing-button.landing-button-primary:focus-visible{color:#08080b;background:#ffe45c}.landing-button-ghost{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#1212189e}.landing-scroll-hint{z-index:2;color:#e8e8ec85;letter-spacing:.24em;text-transform:uppercase;writing-mode:vertical-rl;font-size:.7rem;font-weight:800;position:absolute;bottom:28px;right:clamp(18px,4vw,58px)}.landing-scroll-hint:after{content:"";background:linear-gradient(#e8e8ec94,#0000);width:1px;height:52px;margin:12px auto 0;display:block}.landing-stats-bar{z-index:2;border-bottom:1px solid var(--landing-line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#0a0a0ceb;position:relative}.landing-stats-inner{grid-template-columns:repeat(4,minmax(0,1fr));width:min(1180px,100% - 32px);margin:0 auto;display:grid}.landing-stat-item{border-right:1px solid var(--landing-line);padding:30px 24px}.landing-stat-item:first-child{border-left:1px solid var(--landing-line)}.landing-stat-num{margin-bottom:6px;font-size:clamp(1.7rem,3vw,3rem);font-weight:900;line-height:1}.landing-stat-label,.landing-section-label,.landing-feature-num{color:var(--landing-muted);letter-spacing:.18em;text-transform:uppercase;font-size:.72rem;font-weight:900}.landing-features,.landing-how,.landing-cta,.landing-footer{width:min(1180px,100% - 32px);margin:0 auto}.landing-features{padding:110px 0}.landing-section-label{margin-bottom:24px}.landing-features-grid{border:1px solid var(--landing-line);background:var(--landing-line);grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;display:grid}.landing-feature-card{background:#0d0d12f5;min-height:360px;padding:34px;position:relative;overflow:hidden}.landing-feature-card:before{content:"";background:linear-gradient(90deg, var(--landing-red), var(--landing-yellow), var(--landing-green), var(--landing-blue));transform-origin:0;width:100%;height:3px;transition:transform .22s;position:absolute;inset:0 auto auto 0;transform:scaleX(0)}.landing-feature-card:hover:before{transform:scaleX(1)}.landing-feature-card .landing-mini-cube{width:54px;height:54px;margin:42px 0 48px}.landing-feature-card h3{margin:0 0 14px;font-size:clamp(1.35rem,2vw,2rem);line-height:1.05}.landing-feature-card p,.landing-how-text p,.landing-step small,.landing-cta p{color:var(--landing-muted);font-family:var(--font-sans), "Segoe UI", sans-serif;line-height:1.65}.landing-feature-card p{max-width:31ch;margin:0;font-size:.98rem}.landing-how{border-top:1px solid var(--landing-line);padding:84px 0 116px}.landing-how-inner{grid-template-columns:minmax(0,.95fr) minmax(340px,.85fr);align-items:center;gap:clamp(40px,7vw,94px);display:grid}.landing-how h2,.landing-cta h2{text-transform:uppercase;font-size:clamp(3.2rem,8vw,7rem)}.landing-how-text p{max-width:42rem;margin:28px 0 34px;font-size:1.06rem}.landing-steps{gap:14px;display:grid}.landing-step{border-top:1px solid var(--landing-line);grid-template-columns:42px minmax(0,1fr);align-items:start;gap:16px;padding:16px 0;display:grid}.landing-step span{color:var(--landing-yellow);letter-spacing:.14em;font-size:.76rem;font-weight:900}.landing-step strong,.landing-step small{display:block}.landing-step strong{margin-bottom:5px;font-size:1rem}.landing-step small{font-size:.92rem}.landing-big-cube{aspect-ratio:1;background:linear-gradient(135deg, var(--white-08), transparent 45%), #0a0a0cc7;width:min(100%,440px);box-shadow:0 42px 90px #0000006b, inset 0 0 0 1px var(--white-04);border:1px solid #e8e8ec21;grid-template-columns:repeat(9,1fr);justify-self:center;gap:5px;padding:18px;display:grid}.landing-big-cube span{border-radius:4px;min-width:0;transition:transform .16s,filter .16s;box-shadow:inset 0 1px #ffffff38,inset 0 -8px 18px #0000002e}.landing-cta{border-top:1px solid var(--landing-line);text-align:center;place-items:center;padding:104px 16px 116px;display:grid}.landing-cta p{max-width:34rem;margin:24px auto 0;font-size:1.04rem}.landing-footer{border-top:1px solid var(--landing-line);color:#e8e8ec9e;letter-spacing:.12em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:16px;padding:28px 0 34px;font-size:.78rem;font-weight:800;display:flex}.landing-footer nav{flex-wrap:wrap;justify-content:flex-end;gap:18px;display:flex}.landing-footer button{color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:none}.landing-footer button:hover,.landing-footer button:focus-visible{color:var(--landing-text)}.landing-reveal{opacity:0;transition:opacity .62s,transform .62s;transform:translateY(22px)}.landing-reveal.is-visible{opacity:1;transform:translateY(0)}.landing-demo-section{border-top:1px solid var(--landing-line);text-align:center;width:min(1180px,100% - 32px);margin:0 auto;padding:84px 0 100px}.landing-demo-heading{letter-spacing:0;text-transform:uppercase;margin:0 0 14px;font-size:clamp(2.2rem,5.5vw,4.8rem);font-weight:900;line-height:.92}.landing-demo-subheading{max-width:46ch;color:var(--landing-muted);font-family:var(--font-sans), "Segoe UI", sans-serif;margin:0 auto 52px;font-size:1rem;line-height:1.65}.landing-demo-card{background:linear-gradient(135deg, var(--white-04), transparent 55%), #0e0e14f5;width:min(480px,100%);box-shadow:0 32px 80px #00000085, inset 0 0 0 1px var(--white-04);text-align:left;border:1px solid #e8e8ec1f;border-radius:8px;grid-template-rows:auto auto auto auto;gap:24px;margin:0 auto;padding:28px 32px 32px;display:grid;position:relative;overflow:hidden}.landing-demo-card:before{content:"";background:linear-gradient(90deg,#009b48 0%,#22c55e 40%,#22c55e00 100%);width:100%;height:2px;position:absolute;inset:0 auto auto 0}.landing-demo-header{align-items:center;gap:10px;display:flex}.landing-demo-badge{color:#22c55e;letter-spacing:.14em;text-transform:uppercase;background:#22c55e2e;border-radius:99px;align-items:center;gap:5px;padding:3px 9px;font-size:.69rem;font-weight:900;display:inline-flex}.landing-demo-badge:before{content:"";background:#22c55e;border-radius:50%;width:6px;height:6px;animation:1.4s ease-in-out infinite demo-pulse;display:inline-block}@keyframes demo-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.72)}}.landing-demo-label{color:var(--landing-muted);letter-spacing:.06em;font-size:.78rem;font-weight:700}.landing-demo-timer{font-family:var(--font-mono,"JetBrains Mono", "Fira Code", monospace);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:clamp(2.8rem,8vw,4.2rem);font-weight:900;line-height:1;transition:color .28s}.landing-demo-moves{flex-wrap:nowrap;align-items:center;gap:7px;min-height:32px;display:flex;overflow:hidden}.landing-demo-move{background:var(--white-05);min-width:36px;color:var(--landing-text);font-family:var(--font-mono,"JetBrains Mono", "Fira Code", monospace);white-space:nowrap;border:1px solid #e8e8ec1f;border-radius:5px;justify-content:center;align-items:center;padding:4px 8px;font-size:.82rem;font-weight:700;transition:opacity .22s;display:inline-flex}.landing-demo-splits{gap:10px;display:grid}.landing-demo-split{color:#e8e8ec61;letter-spacing:.04em;border-top:1px solid #e8e8ec12;align-items:center;gap:10px;padding:6px 0;font-size:.84rem;font-weight:700;transition:color .22s;display:flex}.landing-demo-split.is-done{color:#e8e8ece0}.landing-demo-split.is-next{color:#e8e8eca6}.landing-demo-split-dot{background:#e8e8ec2e;border-radius:50%;flex-shrink:0;width:8px;height:8px;transition:background .22s}.landing-demo-split-time{font-family:var(--font-mono,"JetBrains Mono", "Fira Code", monospace);font-variant-numeric:tabular-nums;margin-left:auto;font-size:.8rem}.landing-demo-solved{color:#22c55e;letter-spacing:.08em;text-transform:uppercase;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0a0a0cb8;justify-content:center;align-items:center;font-size:1.4rem;font-weight:900;animation:.28s forwards demo-solved-in;display:flex;position:absolute;inset:0}@keyframes demo-solved-in{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.landing-button,.landing-feature-card:before,.landing-big-cube span,.landing-reveal{transition:none}.landing-demo-badge:before,.landing-demo-solved{animation:none}}@media (width<=900px){.landing-hero{min-height:610px}.landing-stats-inner,.landing-features-grid,.landing-how-inner{grid-template-columns:1fr}.landing-stat-item{border-right:0;border-bottom:1px solid var(--landing-line);justify-content:space-between;align-items:baseline;gap:18px;padding:22px 0;display:flex}.landing-stat-item:first-child{border-left:0}.landing-feature-card{min-height:280px}.landing-demo-section{padding:64px 0 72px}.landing-demo-card{padding:22px 20px 24px}}@media (width<=640px){.landing-hero{min-height:560px}.landing-logo-mark{margin-bottom:22px;font-size:.74rem}.landing-hero h1{font-size:clamp(2.9rem,13.4vw,3.85rem)}.landing-hero-sub{font-size:.98rem}.landing-actions{width:100%;margin-top:28px}.landing-button{width:min(100%,280px)}.landing-scroll-hint{display:none}.landing-features{padding:72px 0}.landing-stat-item{flex-direction:column;align-items:flex-start;gap:6px}.landing-feature-card{padding:26px}.landing-how{padding:64px 0 80px}.landing-how h2,.landing-cta h2{font-size:clamp(2.7rem,16vw,4.5rem)}.landing-big-cube{gap:3px;width:min(100%,330px);padding:12px}.landing-demo-section{padding:52px 0 60px}.landing-demo-subheading{margin-bottom:36px}.landing-demo-timer{font-size:clamp(2.2rem,11vw,3rem)}.landing-cta{padding:74px 0 88px}.landing-footer{flex-direction:column;align-items:flex-start}.landing-footer nav{justify-content:flex-start}}:root{--font-sans:"Manrope", "Avenir Next", "Segoe UI", sans-serif;--font-display:"Space Grotesk", "Avenir Next Condensed", "Trebuchet MS", sans-serif;--slate-08:#94a3b814;--slate-10:#94a3b81a;--slate-12:#94a3b81f;--slate-13:#94a3b821;--slate-14:#94a3b824;--slate-16:#94a3b829;--slate-18:#94a3b82e;--slate-20:#94a3b833;--slate-22:#94a3b838;--slate-28:#94a3b847;--slate-40:#94a3b866;--white-03:#ffffff08;--white-04:#ffffff0a;--white-05:#ffffff0d;--white-06:#ffffff0f;--white-08:#ffffff14;--white-18:#ffffff2e;--white-42:#ffffff6b;--white-58:#ffffff94;--white-60:#fff9;--white-62:#ffffff9e;--white-70:#ffffffb3;--white-72:#ffffffb8;--white-74:#ffffffbd;--white-78:#ffffffc7;--white-82:#ffffffd1;--white-86:#ffffffdb;--white-88:#ffffffe0;--white-90:#ffffffe6;--white-92:#ffffffeb;--white-94:#fffffff0;--white-95:#fffffff2;--white-96:#fffffff5;--white-98:#fffffffa;--ink-04:#0f172a0a;--ink-05:#0f172a0d;--ink-06:#0f172a0f;--ink-07:#0f172a12;--ink-08:#0f172a14;--ink-10:#0f172a1a;--ink-12:#0f172a1f;--ink-14:#0f172a24;--ink-16:#0f172a29;--ink-18:#0f172a2e;--ink-22:#0f172a38;--ink-70:#0f172ab3;--ink-72:#0f172ab8;--ink-74:#0f172abd;--ink-76:#0f172ac2;--ink-82:#0f172ad1;--ink-84:#0f172ad6;--ink-86:#0f172adb;--ink-90:#0f172ae6;--ink-92:#0f172aeb;--abyss-22:#02061738;--abyss-24:#0206173d;--abyss-26:#02061742;--abyss-28:#02061747;--abyss-34:#02061757;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:28px;--space-8:32px;--radius-pill:999px;--radius-xl:30px;--radius-lg:24px;--radius-md:18px;--radius-card:16px;--radius-tag:14px;--radius-sm:8px;--radius-xs:4px;--text-2xs:clamp(.65rem, .63rem + .08vw, .68rem);--text-xs:clamp(.69rem, .67rem + .08vw, .72rem);--text-sm:clamp(.74rem, .71rem + .11vw, .78rem);--text-base:clamp(.78rem, .75rem + .11vw, .82rem);--text-md:clamp(.84rem, .8rem + .13vw, .88rem);--ease-spring:cubic-bezier(.16, 1, .3, 1);--ease-std:cubic-bezier(.4, 0, .2, 1);--dur-instant:.12s;--dur-fast:.18s;--dur-base:.2s;--dur-slow:.3s;--surface-border:var(--slate-22);--surface-shadow:0 24px 60px var(--ink-12);--surface-shadow-dark:0 28px 80px var(--abyss-34);--color-text:#0f172a;--color-text-muted:#475569;--color-text-subtle:#64748b;--color-accent:#2563eb;--color-accent-light:#7dd3fc;--color-surface:var(--white-90);--color-surface-raised:var(--white-98);--color-border:var(--slate-22);--color-border-strong:var(--slate-40);--color-input-bg:var(--white-92);--color-input-border:#94a3b857;--color-skeleton-base:var(--slate-14);--color-skeleton-shine:var(--white-60);--color-success:#22c55e;--color-success-soft:#22c55e1f;--color-error:#ef4444;--color-error-soft:#ef44441a;--surface-1:#f0f6ffb8;--surface-2:var(--white-90);--surface-3:var(--white-98);--surface-overlay:#f8fbfff5;--text-1:#0f172a;--text-2:#475569;--text-3:#64748b;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:var(--font-sans);color:#0f172a;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:radial-gradient(circle at 0 0,#0ea5e92e,#0000 26%),radial-gradient(circle at 82% 18%,#f973161f,#0000 18%),linear-gradient(#f8fbff 0%,#eef4ff 45%,#e5edf7 100%);font-weight:400;line-height:1.5}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{min-width:320px;font-family:var(--font-sans);background:0 0}.theme-dark{--color-text:#e5edf8;--color-text-muted:#94a3b8;--color-text-subtle:#7f8ca3;--color-surface:var(--ink-90);--color-surface-raised:#0c121efa;--color-border:var(--slate-16);--color-border-strong:var(--slate-28);--color-input-bg:#070c14eb;--color-input-border:var(--slate-18);--color-skeleton-base:var(--slate-08);--color-skeleton-shine:var(--white-06);--surface-1:#070b14b8;--surface-2:var(--ink-90);--surface-3:#0c121efa;--surface-overlay:#080d18f7;--text-1:#e5edf8;--text-2:#94a3b8;--text-3:#7f8ca3;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}button,input,textarea,select{font:inherit}button,[role=button],a[href],label[for],select{cursor:pointer}button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:6px}.theme-dark button:focus-visible{outline-color:var(--color-accent-light)}::selection{color:#082f49;background:#0ea5e938}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--slate-22);border-radius:var(--radius-pill)}::-webkit-scrollbar-thumb:hover{background:var(--slate-40)}*{scrollbar-width:thin;scrollbar-color:var(--slate-22) transparent}.theme-dark ::-webkit-scrollbar-thumb{background:var(--slate-16)}.theme-dark ::-webkit-scrollbar-thumb:hover{background:var(--slate-28)}.theme-dark{scrollbar-color:var(--slate-16) transparent}
