.dlg-stage{--dlg-scene-frame: var(--line);--dlg-bubble-bg: var(--bg-card);--dlg-bubble-line: var(--line);--dlg-accent: var(--neon-cyan)}.dlg-panel{--dlg-ans-bg: var(--bg-inner);--dlg-ans-line: var(--line);--dlg-ans-active: var(--hot-pink)}.dlg-stage{position:absolute;inset:0;display:flex;flex-direction:column;gap:calc(var(--u, 4px) * 2)}.dlg-scene{flex:0 0 60%;min-height:0;position:relative;overflow:hidden;border:2px solid var(--dlg-scene-frame);border-radius:var(--r-md, 8px);background:var(--bg-deep)}.dlg-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;image-rendering:pixelated;pointer-events:none;user-select:none}.dlg-scene.is-empty .dlg-img{visibility:hidden}.dlg-scene.is-empty{background:repeating-conic-gradient(var(--bg-inner) 0% 25%,var(--bg-deep) 0% 50%) 0 0 / 24px 24px}.dlg-chat{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;justify-content:flex-end;gap:calc(var(--u, 4px) * 1.5);padding:0 calc(var(--u, 4px) * 1)}.dlg-brief{margin:0 0 calc(var(--u, 4px) * 1.5);font-family:var(--font-body);font-weight:700;font-size:clamp(14px,calc(var(--u, 4px) * 4),19px);line-height:1.4;color:var(--ink);text-align:center;background:color-mix(in srgb,var(--dlg-accent) 14%,var(--bg-card));border:2px solid var(--dlg-accent);border-radius:var(--r-md, 8px);padding:calc(var(--u, 4px) * 2.5) calc(var(--u, 4px) * 3)}.dlg-bubble{font-family:var(--font-body);font-weight:600;font-size:clamp(14px,calc(var(--u, 4px) * 4),19px);line-height:1.45;color:var(--ink);background:var(--dlg-bubble-bg);border:2px solid var(--dlg-bubble-line);border-radius:var(--r-lg, 14px);border-bottom-left-radius:var(--r-sm, 4px);padding:calc(var(--u, 4px) * 2.5) calc(var(--u, 4px) * 3);box-shadow:var(--px-shadow)}.dlg-bubble.dlg-in{animation:dlg-arrive .22s ease-out}@keyframes dlg-arrive{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.dlg-bubble{margin-right:10%}.dlg-bubble.is-you{margin-right:0;margin-left:10%;border-color:var(--hot-pink);border-bottom-left-radius:var(--r-lg, 14px);border-bottom-right-radius:var(--r-sm, 4px);background:var(--bg-inner)}.dlg-foot{margin:0;font-family:var(--font-body);font-size:clamp(11px,calc(var(--u, 4px) * 3),14px);color:var(--dlg-accent)}.dlg-panel{display:flex;align-items:stretch;padding:calc(var(--u, 4px) * 1) 0}.dlg-answers{flex:1;min-width:0;overflow-y:auto;display:flex;flex-direction:column;justify-content:center;gap:calc(var(--u, 4px) * 1.5);padding:calc(var(--u, 4px) * 1)}.dlg-ans-btn{min-height:44px;width:100%;text-align:left;font-family:var(--font-body);font-weight:600;font-size:clamp(13px,calc(var(--u, 4px) * 3.5),16px);line-height:1.3;color:var(--ink);background:var(--dlg-ans-bg);border:2px solid var(--dlg-ans-line);border-radius:var(--r-md, 8px);padding:calc(var(--u, 4px) * 1.5) calc(var(--u, 4px) * 2.5);cursor:pointer}.dlg-ans-btn:active{border-color:var(--dlg-ans-active);transform:translateY(1px)}.dlg-typing{display:flex;gap:6px;justify-content:center;padding:calc(var(--u, 4px) * 3)}.dlg-typing b{width:8px;height:8px;border-radius:50%;background:var(--muted);animation:dlg-typing .9s infinite ease-in-out}.dlg-typing b:nth-child(2){animation-delay:.15s}.dlg-typing b:nth-child(3){animation-delay:.3s}@keyframes dlg-typing{0%,60%,to{opacity:.35;transform:none}30%{opacity:1;transform:translateY(-3px)}}.dlg-name-row{display:flex;align-items:center;gap:calc(var(--u, 4px) * 1.5);padding:calc(var(--u, 4px) * 1.5)}.dlg-name-row .gs-field{flex:1;min-width:0}.dlg-name-ok{min-width:44px;min-height:44px;font-size:20px;color:var(--ink);background:var(--hot-pink);border:none;border-radius:var(--r-md, 8px);box-shadow:var(--shadow-press);cursor:pointer}.ff-stage{--ff-cold: var(--neon-cyan);--ff-warm: var(--yellow);--ff-hot: var(--hot-pink);--ff-found: var(--lime);--ff-frame: var(--line)}.ff-stage{position:absolute;inset:0;display:grid;place-items:center;isolation:isolate}.ff-frame{position:relative;width:100%;aspect-ratio:1 / 1;max-height:100%;overflow:hidden;border:2px solid var(--ff-frame);border-radius:var(--r-md, 8px);background:var(--bg-deep);touch-action:none;cursor:crosshair}.ff-veh{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;image-rendering:pixelated;pointer-events:none;user-select:none}.ff-marks{position:absolute;inset:0;pointer-events:none}.ff-mark{position:absolute;width:34px;height:34px;transform:translate(-50%,-50%);border:3px solid var(--ff-found);border-radius:50%;box-shadow:0 0 12px #c8e83a8c;display:grid;place-items:center}.ff-mark b{position:absolute;top:100%;font-family:var(--font-body, "Inter", system-ui, sans-serif);font-size:11px;font-weight:700;color:var(--ff-found);text-shadow:0 1px 3px #000}.ff-scan{position:absolute;width:62px;height:62px;transform:translate(-50%,-50%);border-radius:50%;border:3px solid var(--ff-cold);pointer-events:none;transition:border-color .12s linear,box-shadow .12s linear}.ff-scan:after{content:"";position:absolute;inset:42%;border-radius:50%;background:currentColor}.ff-scan[data-band=cold]{border-color:var(--ff-cold);color:var(--ff-cold);box-shadow:0 0 10px #00e5ff59}.ff-scan[data-band=warm]{border-color:var(--ff-warm);color:var(--ff-warm);box-shadow:0 0 16px #ffd60073}.ff-scan[data-band=hot]{border-color:var(--ff-hot);color:var(--ff-hot);box-shadow:0 0 22px #ff1e8e99;animation:ff-pulse .5s ease-in-out infinite}@keyframes ff-pulse{0%,to{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.12)}}.ff-flash{position:absolute;left:50%;bottom:6%;transform:translate(-50%);padding:5px 12px;border-radius:var(--r-md, 8px);background:#0e0620e0;font-family:var(--font-body, "Inter", system-ui, sans-serif);font-size:13px;font-weight:700;letter-spacing:.04em;white-space:nowrap;opacity:0;pointer-events:none}.ff-flash[data-kind=good]{color:var(--ff-found)}.ff-flash[data-kind=bad]{color:var(--ff-hot)}.ff-flash.is-on{animation:ff-fade 1.1s ease forwards}@keyframes ff-fade{0%{opacity:0;transform:translate(-50%) translateY(6px)}18%{opacity:1;transform:translate(-50%) translateY(0)}to{opacity:0}}.ff-note{position:absolute;left:50%;top:8%;transform:translate(-50%);padding:4px 10px;border:1px dashed var(--muted);border-radius:var(--r-sm, 4px);background:#0e0620cc;font-family:var(--font-body, "Inter", system-ui, sans-serif);font-size:10px;letter-spacing:.08em;color:var(--ink-soft);white-space:nowrap;pointer-events:none}.ff-debrief{position:absolute;inset:0;z-index:4;display:grid;place-items:center;background:#0e0620ed;padding:8px}.ff-debrief[hidden]{display:none}.ff-db-card{width:100%;max-height:100%;overflow-y:auto;background:var(--bg-card);border:2px solid var(--ff-found);border-radius:var(--r-lg, 14px);padding:10px 12px}.ff-db-title{font-family:var(--font-display, "Anton", system-ui, sans-serif);font-size:20px;letter-spacing:.04em;color:var(--ff-found);text-align:center;margin-bottom:8px}.ff-db-list{list-style:none;margin:0 0 8px;padding:0;display:grid;gap:5px}.ff-db-list li{display:flex;flex-direction:column;background:var(--bg-inner);border-radius:var(--r-sm, 4px);padding:5px 8px}.ff-db-list b{font-family:var(--font-body, "Inter", system-ui, sans-serif);font-size:11px;letter-spacing:.04em;color:var(--ink)}.ff-db-list span{font-family:var(--font-body, "Inter", system-ui, sans-serif);font-size:11px;line-height:1.35;color:var(--ink-soft)}.ff-db-foot{margin:0;font-family:var(--font-body, "Inter", system-ui, sans-serif);font-size:11px;text-align:center;color:var(--muted)}.ff-db-foot b{color:var(--hot-pink)}.ff-panel{display:flex;flex-direction:column;justify-content:center;gap:7px;padding:8px 12px}.ff-readout{display:flex;align-items:baseline;gap:10px;font-family:var(--font-body, "Inter", system-ui, sans-serif)}.ff-clock{font-size:26px;font-weight:700;letter-spacing:.02em;color:var(--ink);font-variant-numeric:tabular-nums}.ff-pen{font-size:13px;font-weight:700;color:var(--hot-pink)}.ff-count{margin-left:auto;font-size:15px;font-weight:700;color:var(--ff-found)}.ff-meter{height:12px;border-radius:6px;background:var(--bg-inner);border:1px solid var(--line);overflow:hidden}.ff-bar{display:block;height:100%;width:0;transition:width .1s linear,background-color .12s linear}.ff-bar[data-band=cold]{background:var(--ff-cold)}.ff-bar[data-band=warm]{background:var(--ff-warm)}.ff-bar[data-band=hot]{background:var(--ff-hot)}.ff-mark-btn{min-height:48px;font-family:var(--font-body, "Inter", system-ui, sans-serif);font-size:17px;font-weight:700;letter-spacing:.1em;color:var(--ink);background:var(--hot-pink);border:2px solid var(--pink-dark);border-radius:var(--r-md, 8px);box-shadow:var(--px-shadow-pink);cursor:pointer}.ff-mark-btn:active{transform:translateY(2px);box-shadow:none}.ff-name-row{display:flex;align-items:center;gap:8px;padding:0 8px}.ff-name-ok{flex:0 0 auto;min-width:44px;min-height:44px;font-size:18px;border-radius:var(--r-md, 8px);border:2px solid var(--hot-pink);background:var(--hot-pink);color:var(--ink);cursor:pointer}.fm-stage{--fm-card-bg: var(--bg-card);--fm-card-line: var(--line);--fm-accent: var(--neon-cyan);--fm-action: var(--hot-pink);--fm-right: var(--neon-green, #22c55e);--fm-wrong: var(--hot-pink, #ef4444)}.fm-panel{--fm-panel-line: var(--line)}.fm-stage{position:absolute;inset:0;display:flex;flex-direction:column;gap:calc(var(--u, 4px) * 2);overflow-y:auto;padding:calc(var(--u, 4px) * 1)}.fm-heading{margin:0;font-family:var(--font-display, var(--font-body));font-size:clamp(16px,calc(var(--u, 4px) * 5),24px);line-height:1.2;color:var(--ink);text-transform:uppercase;letter-spacing:.02em}.fm-list{display:flex;flex-direction:column;gap:calc(var(--u, 4px) * 1.5)}.fm-loc-btn{min-height:44px;display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;font-family:var(--font-body);color:var(--ink);background:var(--fm-card-bg);border:2px solid var(--fm-card-line);border-radius:var(--r-md, 8px);padding:calc(var(--u, 4px) * 2) calc(var(--u, 4px) * 2.5);cursor:pointer;box-shadow:var(--px-shadow)}.fm-loc-btn b{font-weight:700;font-size:clamp(14px,calc(var(--u, 4px) * 4),18px);line-height:1.3}.fm-loc-btn span{font-size:clamp(11px,calc(var(--u, 4px) * 2.75),13px);color:var(--muted);line-height:1.35}.fm-loc-btn:active{border-color:var(--fm-accent);transform:translateY(1px)}.fm-row{display:flex;align-items:center;gap:calc(var(--u, 4px) * 2);background:var(--fm-card-bg);border:2px solid var(--fm-card-line);border-radius:var(--r-md, 8px);padding:calc(var(--u, 4px) * 1.5) calc(var(--u, 4px) * 2)}.fm-row-label{flex-shrink:0;font-family:var(--font-body);font-weight:700;font-size:clamp(10px,calc(var(--u, 4px) * 2.5),12px);letter-spacing:.06em;text-transform:uppercase;color:var(--fm-accent)}.fm-row-value{flex:1;min-width:0;font-family:var(--font-body);font-size:clamp(12px,calc(var(--u, 4px) * 3.25),15px);line-height:1.4;color:var(--ink);word-break:break-word}.fm-row-value.is-gps{font-variant-numeric:tabular-nums}.fm-copy{flex-shrink:0;min-height:44px;min-width:64px;font-family:var(--font-body);font-weight:700;font-size:clamp(11px,calc(var(--u, 4px) * 2.75),13px);letter-spacing:.04em;color:var(--ink);background:var(--bg-inner);border:2px solid var(--fm-card-line);border-radius:var(--r-md, 8px);padding:0 calc(var(--u, 4px) * 2);cursor:pointer}.fm-copy:active{border-color:var(--fm-accent);transform:translateY(1px)}.fm-copy.is-copied{color:var(--bg-deep);background:var(--fm-accent);border-color:var(--fm-accent)}.fm-arrived{margin-top:auto;min-height:56px;font-family:var(--font-display, var(--font-body));font-weight:800;font-size:clamp(15px,calc(var(--u, 4px) * 4.5),20px);letter-spacing:.03em;text-transform:uppercase;color:#fff;background:var(--fm-action);border:none;border-radius:var(--r-lg, 14px);padding:calc(var(--u, 4px) * 2.5);cursor:pointer;box-shadow:var(--shadow-press, var(--px-shadow))}.fm-arrived:active{transform:translateY(2px)}.fm-quiz-top{display:flex;align-items:center;justify-content:space-between;font-family:var(--font-body);font-weight:700;font-size:clamp(11px,calc(var(--u, 4px) * 3),14px);color:var(--muted)}.fm-question{font-family:var(--font-body);font-weight:600;font-size:clamp(14px,calc(var(--u, 4px) * 4),19px);line-height:1.45;color:var(--ink);background:var(--fm-card-bg);border:2px solid var(--fm-card-line);border-radius:var(--r-lg, 14px);padding:calc(var(--u, 4px) * 2.5) calc(var(--u, 4px) * 3)}.fm-answers{display:flex;flex-direction:column;gap:calc(var(--u, 4px) * 1.5)}.fm-ans{min-height:44px;width:100%;text-align:left;font-family:var(--font-body);font-weight:600;font-size:clamp(13px,calc(var(--u, 4px) * 3.5),16px);line-height:1.3;color:var(--ink);background:var(--bg-inner);border:2px solid var(--fm-card-line);border-radius:var(--r-md, 8px);padding:calc(var(--u, 4px) * 1.5) calc(var(--u, 4px) * 2.5);cursor:pointer}.fm-ans:active{border-color:var(--fm-action);transform:translateY(1px)}.fm-ans.is-right{border-color:var(--fm-right);background:color-mix(in srgb,var(--fm-right) 18%,var(--bg-inner))}.fm-ans.is-wrong{border-color:var(--fm-wrong);background:color-mix(in srgb,var(--fm-wrong) 18%,var(--bg-inner))}.fm-ans:disabled{cursor:default;opacity:1}.fm-result-card{display:flex;flex-direction:column;align-items:center;gap:calc(var(--u, 4px) * 1);background:var(--fm-card-bg);border:2px solid var(--fm-accent);border-radius:var(--r-lg, 14px);padding:calc(var(--u, 4px) * 4)}.fm-result-big{font-family:var(--font-display, var(--font-body));font-weight:800;font-size:clamp(32px,calc(var(--u, 4px) * 12),56px);line-height:1;color:var(--fm-accent)}.fm-result-time{font-family:var(--font-body);font-weight:700;font-size:clamp(14px,calc(var(--u, 4px) * 4),18px);color:var(--ink);font-variant-numeric:tabular-nums}.fm-result-loc{font-family:var(--font-body);font-size:clamp(11px,calc(var(--u, 4px) * 3),14px);color:var(--muted)}.fm-share-hint{margin:0;font-family:var(--font-body);font-size:clamp(11px,calc(var(--u, 4px) * 3),14px);color:var(--fm-accent);text-align:center}.fm-panel{display:flex;align-items:center;gap:calc(var(--u, 4px) * 2);padding:calc(var(--u, 4px) * 1.5) calc(var(--u, 4px) * 2)}.fm-panel-line{flex:1;min-width:0;margin:0;font-family:var(--font-body);font-weight:600;font-size:clamp(12px,calc(var(--u, 4px) * 3.25),15px);color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fm-back{flex-shrink:0;min-width:44px;min-height:44px;font-size:20px;color:var(--ink);background:var(--bg-inner);border:2px solid var(--fm-panel-line);border-radius:var(--r-md, 8px);cursor:pointer}.fm-back:active{border-color:var(--fm-accent);transform:translateY(1px)}.fm-clock{font-family:var(--font-body);font-weight:800;font-size:clamp(16px,calc(var(--u, 4px) * 4.5),22px);color:var(--ink);font-variant-numeric:tabular-nums}.fm-progress{margin-left:auto;font-family:var(--font-body);font-weight:700;font-size:clamp(12px,calc(var(--u, 4px) * 3.25),15px);color:var(--muted)}.fm-name-row{display:flex;align-items:center;gap:calc(var(--u, 4px) * 1.5);padding:calc(var(--u, 4px) * 1.5)}.fm-name-row .gs-field{flex:1;min-width:0}.fm-name-ok{min-width:44px;min-height:44px;font-size:20px;color:var(--ink);background:var(--hot-pink);border:none;border-radius:var(--r-md, 8px);box-shadow:var(--shadow-press);cursor:pointer}.gf-stage{--gf-line: var(--line);--gf-cell-bg: rgba(255, 255, 255, .04);--gf-fixed: rgba(200, 232, 58, .14);--gf-bad: var(--hot-pink);--gf-ok: var(--lime)}.gf-stage{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:calc(var(--u) * 2);isolation:isolate}.gf-board{display:grid;grid-template-columns:repeat(var(--gf-cols, 4),1fr);gap:1px;padding:1px;background:var(--gf-line);touch-action:manipulation}.gf-cell{position:relative;width:100%;aspect-ratio:1;margin:0;padding:0;background:var(--gf-cell-bg);border:0;cursor:pointer}.gf-cell img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;pointer-events:none;user-select:none}.gf-cell.is-fixed{background:var(--gf-fixed);cursor:default}.gf-cell.is-bad{animation:gf-bad .42s ease-out}@keyframes gf-bad{0%{background:var(--gf-bad)}to{background:transparent}}.gf-cell.is-fixed.is-bad{animation:gf-bad-fixed .42s ease-out}@keyframes gf-bad-fixed{0%{background:var(--gf-bad)}to{background:var(--gf-fixed)}}.gf-cell.is-jiggle img{animation:gf-jiggle .62s ease-in-out infinite}@keyframes gf-jiggle{0%{transform:rotate(calc(var(--gf-turn, 0deg) - 1.6deg)) scale(.97)}50%{transform:rotate(calc(var(--gf-turn, 0deg) + 1.6deg)) scale(.97)}to{transform:rotate(calc(var(--gf-turn, 0deg) - 1.6deg)) scale(.97)}}@media(prefers-reduced-motion:reduce){.gf-cell.is-jiggle img{animation:none}}.gf-x{position:absolute;top:0;left:0;width:50%;height:50%;min-width:24px;min-height:24px;cursor:pointer;z-index:2}.gf-x b{position:absolute;top:5%;left:5%;width:max(18px,calc(var(--gf-cell, 44px) * .32));height:max(18px,calc(var(--gf-cell, 44px) * .32));display:grid;place-items:center;font-family:system-ui,sans-serif;font-size:max(10px,calc(var(--gf-cell, 44px) * .19));font-weight:700;line-height:1;color:#fff;background:var(--gf-bad);border:1px solid rgba(255,255,255,.85);border-radius:50%;box-shadow:0 1px 3px #00000080}.gf-x:active b{transform:scale(.9)}.gf-foot{display:flex;align-items:baseline;gap:calc(var(--u) * 3);max-width:100%;padding:0 calc(var(--u) * 2);font-size:12px}.gf-count{font-weight:800;font-variant-numeric:tabular-nums;color:var(--neon-cyan);white-space:nowrap}.gf-turn{font-size:14px;line-height:1;color:var(--neon-cyan)}.gf-goal{color:var(--muted, #9CA3AF);line-height:1.4}.gf-goal.is-done{color:var(--gf-ok);font-weight:700}.gf-note{position:absolute;left:50%;bottom:calc(var(--u) * 2);transform:translate(-50%);max-width:90%;padding:calc(var(--u) * 1.5) calc(var(--u) * 3);border-radius:calc(var(--u) * 2);background:var(--gf-bad);color:#fff;font-size:12px;font-weight:700;text-align:center;opacity:0;pointer-events:none}.gf-note.is-on{animation:gf-note 1.6s ease-out}@keyframes gf-note{0%{opacity:0;transform:translate(-50%,6px)}12%{opacity:1;transform:translate(-50%)}75%{opacity:1}to{opacity:0}}.gf-tray{align-items:center;scrollbar-width:none}.gf-tray::-webkit-scrollbar{display:none}.gf-tile{box-sizing:border-box;height:100%;width:auto;aspect-ratio:auto;min-width:44px;max-width:40vw;min-height:0}.gf-tile img{height:100%;width:auto;max-width:100%;object-fit:contain}.gf-tile.is-spent{opacity:.32}.gf-tile.is-spent img{filter:grayscale(1)}.gf-name-row{display:flex;align-items:center;gap:calc(var(--u) * 2);padding:calc(var(--u) * 2.5) calc(var(--u) * 3)}.gf-name-row .gs-field{flex:1;min-width:0}.gf-name-ok{font:inherit;font-weight:800;min-width:44px;min-height:44px;color:var(--bg-deep);background:var(--gf-ok);border:none;border-radius:calc(var(--u) * 3);cursor:pointer}.mu-stage{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;width:100%;height:100%;min-height:0}.mu-frame{position:relative;flex:0 0 auto;border-radius:10px;overflow:hidden;background:#00000040;touch-action:none}.mu-bg{display:block;width:100%;height:100%;object-fit:fill}.mu-bg.is-blank{background:repeating-linear-gradient(45deg,#ffffff0d 0 12px,#ffffff05 12px 24px)}.mu-wires{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.mu-wire{stroke:#c8e83a;stroke-width:.9;stroke-linecap:round;paint-order:stroke;pointer-events:stroke;stroke-dasharray:none}.mu-wires .mu-wire{cursor:pointer}.mu-x circle{fill:#101014;stroke:#c8e83a;stroke-width:.6}.mu-x path{stroke:#c8e83a;stroke-width:.7;stroke-linecap:round}.mu-x{cursor:pointer}.mu-things{position:absolute;inset:0}.mu-thing{position:absolute;transform:translate(-50%,-50%);min-width:44px;min-height:44px;max-width:40%;padding:6px 10px;display:grid;place-items:center;font:inherit;font-size:13px;font-weight:700;line-height:1.15;text-align:center;color:#101014;background:#f4f4f5;border:2px solid #101014;border-radius:8px;box-shadow:0 2px #00000073;cursor:pointer;touch-action:none}.mu-thing.is-img{padding:4px;background:#101014;border-color:#f4f4f5}.mu-thing img{display:block;width:100%;height:100%;max-width:76px;max-height:76px;object-fit:contain}.mu-thing.is-sel{box-shadow:0 0 0 4px #c8e83a,0 2px #00000073}.mu-flash{position:absolute;left:50%;top:8%;transform:translate(-50%);max-width:84%;padding:8px 14px;background:#101014eb;color:#ff6b6b;font-weight:700;font-size:13px;border-radius:8px;text-align:center}.mu-note{position:absolute;inset:auto 8% 8%;padding:8px 12px;background:#101014e6;color:#f4f4f5;font-size:12px;border-radius:8px;text-align:center}.mu-debrief{flex:0 1 auto;width:100%;min-height:0;overflow-y:auto;background:#0000004d;border-radius:10px;padding:calc(var(--u) * 2)}.mu-pairs{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.mu-pairs li{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:#f4f4f5}.mu-pairs li i{flex:0 0 auto;width:22px;height:2px;background:#c8e83a}.mu-pairs li img{width:28px;height:28px;object-fit:contain}.mu-foot{margin:calc(var(--u) * 2) 0 0;font-size:12px;color:#c8e83a}.mu-panel{display:flex;flex-direction:column;gap:4px;min-height:0;padding:8px 10px;overflow-y:auto;overscroll-behavior-y:contain}.mu-readout{display:flex;align-items:baseline;gap:calc(var(--u) * 3);flex:0 0 auto}.mu-pen{color:#ff6b6b}.mu-count{margin-left:auto}.qc-stage{--qc-line: var(--line);--qc-bad: var(--hot-pink);--qc-ok: var(--lime);--qc-ink: var(--ink)}.qc-stage{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:calc(var(--u) * 2);isolation:isolate}.qc-scene{position:relative;flex:1 1 auto;min-height:0;height:auto;width:auto;max-width:100%;aspect-ratio:4 / 3;overflow:hidden;background:#ffffff08;touch-action:manipulation}.qc-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;pointer-events:none;user-select:none}.qc-items{position:absolute;inset:0}.qc-item{position:absolute;transform:translate(-50%,-50%);object-fit:contain;cursor:pointer;min-width:44px;min-height:44px;filter:drop-shadow(0 2px 6px rgba(0,0,0,.45))}.qc-item.is-flying{transition:transform .22s cubic-bezier(.2,.9,.3,1)}.qc-flash{position:absolute;left:50%;top:12%;transform:translate(-50%);font-family:var(--font-pixel, "Press Start 2P", monospace);font-size:calc(var(--u) * 4.5);line-height:1.4;text-align:center;padding:calc(var(--u) * 2) calc(var(--u) * 3);background:#120828db;color:var(--qc-ok);border:1px solid var(--qc-line);pointer-events:none;opacity:0}.qc-flash[data-kind=bad]{color:var(--qc-bad)}.qc-flash.is-on{animation:qc-fade 1.2s ease forwards}@keyframes qc-fade{0%{opacity:0;transform:translate(-50%) translateY(6px)}15%{opacity:1;transform:translate(-50%) translateY(0)}75%{opacity:1}to{opacity:0}}.qc-foot{display:flex;align-items:center;gap:calc(var(--u) * 3);width:100%;flex:0 0 auto;padding:0 calc(var(--u) * 2);font-size:calc(var(--u) * 3.4);color:var(--qc-ink);white-space:nowrap;overflow-x:auto;scrollbar-width:none}.qc-foot::-webkit-scrollbar{display:none}.qc-clock{font-family:var(--font-pixel, "Press Start 2P", monospace);font-size:calc(var(--u) * 4);color:var(--qc-ok);flex:0 0 auto}.qc-obj{flex:1 1 auto;min-width:0;opacity:.8;overflow:hidden;text-overflow:ellipsis}.qc-count{flex:0 0 auto;opacity:.8}.qc-held{display:none;flex:0 0 auto;align-items:center;gap:calc(var(--u) * 1.5);padding:calc(var(--u) * .5) calc(var(--u) * 2);border:1px solid var(--qc-ok);color:var(--qc-ok);max-width:45%;overflow:hidden;white-space:nowrap}.qc-held.is-on{display:flex}.qc-held img{height:calc(var(--u) * 6);width:auto;object-fit:contain}.qc-held span{overflow:hidden;text-overflow:ellipsis}.qc-scene.is-waiting{outline:2px dashed var(--qc-ok);outline-offset:-3px}.qc-belt{position:relative;overflow:hidden;align-items:center;touch-action:manipulation}.qc-belt.is-done{opacity:.35;pointer-events:none}.qc-track{display:flex;gap:calc(var(--u) * 4);height:100%;align-items:center;flex:0 0 auto;will-change:transform}.qc-tile{box-sizing:border-box;height:100%;width:auto;aspect-ratio:auto;min-width:44px;max-width:40vw;min-height:0}.qc-tile img{height:100%;width:auto;max-width:100%;object-fit:contain}.stx-stage,.stx-panel{--stx-well: rgba(255, 255, 255, .04);--stx-line: var(--line);--stx-ok: var(--lime);--stx-note: var(--hot-pink);--stx-count: var(--neon-cyan)}.stx-stage{position:absolute;inset:0;display:grid;place-items:center;isolation:isolate}.stx-canvas{display:block;background:var(--stx-well);border:1px solid var(--stx-line);touch-action:none}.stx-note{position:absolute;left:50%;bottom:calc(var(--u) * 3);transform:translate(-50%);max-width:90%;padding:calc(var(--u) * 1.5) calc(var(--u) * 3);border-radius:calc(var(--u) * 2);background:var(--stx-note);color:#fff;font-size:12px;font-weight:800;letter-spacing:.06em;text-align:center;opacity:0;pointer-events:none}.stx-note.is-on{animation:stx-note 1.2s ease-out}@keyframes stx-note{0%{opacity:0;transform:translate(-50%,6px)}15%{opacity:1;transform:translate(-50%)}70%{opacity:1}to{opacity:0}}.stx-over{position:absolute;inset:0;display:grid;place-items:center;background:#0e0620b8;z-index:3}.stx-over[hidden]{display:none}.stx-over.is-life{cursor:pointer}.stx-over.is-life .stx-over-title,.stx-over.is-life .stx-over-foot,.stx-over.is-life .stx-replay{display:none}.stx-over-hearts{display:flex;gap:calc(var(--u) * 2)}.stx-over-hearts:empty{display:none}.stx-over-hearts .stx-life{font-size:clamp(18px,4vmin,32px)}.stx-over-card{display:flex;flex-direction:column;align-items:center;gap:calc(var(--u) * 3);max-width:84%;padding:calc(var(--u) * 6) calc(var(--u) * 8);background:var(--bg-card);border:1px solid var(--stx-line);border-radius:calc(var(--u) * 5);text-align:center}.stx-over-title{font-weight:800;font-size:clamp(14px,2.4vmin,22px)}.stx-over-lines{font-family:var(--font-pixel, "Press Start 2P", monospace);font-size:clamp(14px,3vmin,26px);color:var(--stx-count);font-variant-numeric:tabular-nums}.stx-over-foot{margin:0;font-size:12px;color:var(--ink-soft);line-height:1.5}.stx-replay{font:inherit;font-weight:800;font-size:13px;letter-spacing:.04em;min-height:44px;padding:0 calc(var(--u) * 6);color:var(--bg-deep);background:var(--stx-ok);border:none;border-radius:calc(var(--u) * 3);cursor:pointer}.stx-replay:active{transform:translateY(1px)}.stx-panel{display:flex;flex-direction:column;justify-content:center;gap:calc(var(--u) * 2);padding:calc(var(--u) * 2.5) calc(var(--u) * 4)}.stx-read{display:flex;align-items:baseline;gap:calc(var(--u) * 3);min-width:0}.stx-read .stx-lines{color:var(--stx-count);white-space:nowrap}.stx-read .stx-lines.is-done{color:var(--stx-ok)}.stx-read .stx-obj{overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.stx-nextwrap{display:flex;align-items:center;gap:calc(var(--u) * 3);min-height:0}.stx-nextlabel{font-family:var(--font-pixel, "Press Start 2P", monospace);font-size:clamp(7px,1.1vmin,11px);color:var(--ink-soft);letter-spacing:.04em;white-space:nowrap}.stx-next{display:flex;gap:calc(var(--u) * 3);min-width:0}.stx-mini{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:1fr;width:clamp(30px,6vmin,54px);aspect-ratio:1;background:#ffffff0a;border:1px solid var(--stx-line);border-radius:calc(var(--u) * 1.5);overflow:hidden}.stx-mini:first-child{border-color:var(--stx-count)}.stx-mini i{display:block}.stx-lives{display:flex;align-items:center;gap:3px;margin-left:auto;padding-left:calc(var(--u) * 2)}.stx-life{font-style:normal;font-size:clamp(11px,2vmin,18px);line-height:1;color:var(--stx-note)}.stx-life.is-lost{color:var(--stx-line)}.stx-name-row{display:flex;align-items:center;gap:calc(var(--u) * 2);padding:calc(var(--u) * 2.5) calc(var(--u) * 3)}.stx-name-row .gs-field{flex:1;min-width:0}.stx-name-ok{font:inherit;font-weight:800;min-width:44px;min-height:44px;color:var(--bg-deep);background:var(--stx-ok);border:none;border-radius:calc(var(--u) * 3);cursor:pointer}.ti-panel,.gs-stage>.ti-fit{--ti-visor: #070c09;--ti-ink: #f2f4f8;--ti-dim: rgba(242, 244, 248, .62);--ti-faint: rgba(242, 244, 248, .4);--ti-edge: rgba(255, 255, 255, .14);--ti-arc: #ffb020;--ti-arc-lo: #a3540c;--ti-good: #2fd45e}.gs-stage>.ti-fit{position:absolute;inset:0;background:var(--ti-visor)}.ti-fit>.ti-canvas{display:block;width:100%;height:100%;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;cursor:crosshair}.ti-fit>.ti-name{position:absolute;inset:0;z-index:5;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:14px 18px;background:#070c09f0;font-family:system-ui,Segoe UI,Roboto,Arial,sans-serif}.ti-fit>.ti-name.is-hidden{display:none}.ti-fit .ti-field{width:min(100%,320px);min-height:44px;padding:8px 12px;font-family:inherit;font-size:16px;text-align:center;color:var(--ti-ink);background:#00000080;border:2px solid var(--ti-edge);border-radius:4px}.ti-fit .ti-field:focus{outline:2px solid var(--ti-arc)}.ti-fit .ti-field::placeholder{color:var(--ti-faint)}.ti-fit .ti-name-btn{min-height:44px;min-width:120px;padding:8px 22px;font-family:inherit;font-size:16px;font-weight:700;letter-spacing:.1em;color:#22160a;background:linear-gradient(180deg,#ffe2a0,var(--ti-arc));border:2px solid var(--ti-arc-lo);border-radius:4px;cursor:pointer}.ti-fit .ti-name-btn:active{transform:translateY(1px)}.ti-panel{display:flex;align-items:center;gap:max(8px,1.5vmin);padding:max(6px,1vmin) max(8px,1.4vmin);font-family:system-ui,Segoe UI,Roboto,Arial,sans-serif;color:var(--ti-ink)}.ti-panel .ti-read{flex:1 1 auto;min-width:0;max-height:100%;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;scrollbar-width:none}.ti-panel .ti-read::-webkit-scrollbar{display:none}.ti-panel .ti-line{margin:0;font-size:clamp(12px,1.9vmin,22px);line-height:1.35;color:var(--ti-ink)}.ti-panel .ti-hint{display:block;margin-top:2px;font-size:clamp(10px,1.4vmin,17px);color:var(--ti-faint);font-variant-numeric:tabular-nums}.ti-panel .ti-stats{display:flex;gap:max(12px,3vmin)}.ti-panel .ti-stats[hidden]{display:none}.ti-panel .ti-stats>span{display:flex;flex-direction:column;gap:1px}.ti-panel .ti-k{font-size:clamp(9px,1.2vmin,14px);font-style:normal;letter-spacing:.1em;color:var(--ti-faint);white-space:nowrap}.ti-panel .ti-stats b{font-size:clamp(15px,2.6vmin,30px);line-height:1;font-variant-numeric:tabular-nums;color:var(--ti-good)}.ti-panel .ti-side{flex:0 0 auto;display:flex;align-items:center;gap:max(8px,1.4vmin)}.ti-panel .ti-runwrap{display:flex;flex-direction:column;align-items:flex-end;gap:1px}.ti-panel .ti-run{font-size:clamp(13px,2.1vmin,24px);line-height:1;font-variant-numeric:tabular-nums;color:var(--ti-dim)}.ti-panel .ti-btn{min-height:44px;min-width:max(88px,14vmin);padding:0 max(12px,2vmin);font-family:inherit;font-size:clamp(13px,2vmin,24px);font-weight:800;letter-spacing:.08em;color:#22160a;background:linear-gradient(180deg,#ffe2a0,var(--ti-arc));border:2px solid var(--ti-arc-lo);border-radius:6px;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.ti-panel .ti-btn:active{transform:translateY(1px)}.ti-panel .ti-btn[hidden]{display:none}
