:root{--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--safe-right: env(safe-area-inset-right, 0px);--bg: #05060d;--ink: #eaf0ff;--ink-dim: #93a0c4;--glass: rgba(12, 16, 32, .55);--glass-line: rgba(150, 175, 255, .18);--accent: #3ad46f;--accent-warm: #ff5f72}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;padding:0;background:var(--bg);color:var(--ink);font-family:ui-rounded,SF Pro Rounded,-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;overflow:hidden;overscroll-behavior:none;-webkit-text-size-adjust:100%}#app{position:fixed;inset:0;height:100dvh;width:100vw;touch-action:none;user-select:none;-webkit-user-select:none}#stage{display:block;width:100%;height:100%;touch-action:none}.ui{position:absolute;inset:0;pointer-events:none;display:flex;flex-direction:column;justify-content:space-between;padding:calc(var(--safe-top) + 10px) calc(var(--safe-right) + 12px) calc(var(--safe-bottom) + 12px) calc(var(--safe-left) + 12px)}.ui-top{display:flex;justify-content:center;align-items:center;gap:8px;flex-wrap:wrap}.ui-bottom{display:flex;justify-content:space-between;align-items:center;gap:12px}.pill{pointer-events:none;padding:7px 14px;border-radius:999px;background:#0c10206b;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);font-size:14px;font-weight:600;letter-spacing:.02em;font-variant-numeric:tabular-nums}.pill-muted{color:var(--ink-dim);font-weight:500}.pill.is-empty{color:#ff9b9b}@keyframes counter-pop{0%{transform:scale(1)}35%{transform:scale(1.16)}to{transform:scale(1)}}.pill.is-changed{animation:counter-pop .28s cubic-bezier(.34,1.56,.64,1)}.btn{pointer-events:auto;appearance:none;border:1px solid var(--glass-line);background:linear-gradient(180deg,#1c243c9e,#0a0e1c9e);box-shadow:inset 0 1px #bed7ff29,inset 0 -1px #00000073,3px 5px 14px -6px #000000e6;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:var(--ink);font:inherit;font-weight:700;font-size:15px;border-radius:999px;padding:12px 20px;min-width:52px;min-height:48px;transition:transform .09s ease,background .15s ease,border-color .15s ease,box-shadow .15s ease,color .15s ease}.btn:active{transform:scale(.94)}.btn-icon{font-size:20px;padding:12px 16px}.btn-run{min-width:116px;font-size:16px;letter-spacing:.01em}.btn-run.is-running{background:var(--glass);border-color:#ff96a080;color:#ffc2c9;box-shadow:none}.btn-run:disabled{background:#080b1680;border-color:#96afff17;color:#becdeb52;box-shadow:inset 0 2px 6px #000000bf,inset 0 -1px #bed7ff0d}.btn-run:disabled:active{transform:none}.btn-mute{min-width:44px;min-height:44px;padding:0 12px;font-size:16px;line-height:1;opacity:.85}.btn-mute[aria-pressed=true]{color:var(--ink-dim);opacity:.5;text-decoration:line-through}.btn-primary{background:linear-gradient(180deg,#6ef0dc66,#2e96a557);border-color:#8cfae6bf;color:#eafffb;animation:run-breathe 2.6s ease-in-out infinite}@keyframes run-breathe{0%,to{box-shadow:inset 0 1px #dcfffa57,inset 0 -1px #0000004d,3px 5px 14px -6px #000000e6,0 0 16px #5fe3d03d}50%{box-shadow:inset 0 1px #dcfffa57,inset 0 -1px #0000004d,3px 5px 14px -6px #000000e6,0 0 30px #5fe3d075}}.segmented{pointer-events:auto;display:flex;gap:2px;padding:3px;border-radius:999px;background:var(--glass);border:1px solid var(--glass-line);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.segmented[hidden]{display:none}.seg{appearance:none;border:0;background:transparent;color:var(--ink-dim);font:inherit;font-weight:700;font-size:14px;min-width:42px;min-height:42px;border-radius:999px}.seg.is-active{background:#96b4ff38;color:var(--ink)}.hint{position:absolute;left:0;right:0;bottom:calc(var(--safe-bottom) + 78px);text-align:center;font-size:13px;color:var(--ink-dim);pointer-events:none;opacity:1;transition:opacity .5s ease}.hint.is-hidden{opacity:0}.intro{position:absolute;inset:0;display:grid;place-content:center;gap:6px;text-align:center;pointer-events:none;animation:intro-in .5s cubic-bezier(.16,1,.3,1) both}.intro[hidden]{display:none}.intro.is-leaving{animation:intro-out .55s ease both}.intro-index{font-size:12px;font-weight:700;letter-spacing:.26em;text-transform:uppercase;color:var(--accent);opacity:.85}.intro-name{font-size:34px;font-weight:800;letter-spacing:-.015em;text-shadow:0 0 34px rgba(95,227,208,.35)}.intro-hint{font-size:14px;color:var(--ink-dim);max-width:22ch;margin:4px auto 0;line-height:1.45}@keyframes intro-in{0%{opacity:0;transform:translateY(14px) scale(.97)}to{opacity:1;transform:none}}@keyframes intro-out{0%{opacity:1}to{opacity:0;transform:translateY(-10px)}}.outcome{position:absolute;inset:0;pointer-events:auto;display:grid;place-items:center;background:#05060d99;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:fade-in .25s ease both}.outcome[hidden]{display:none}.outcome-card{display:grid;gap:16px;justify-items:center;padding:30px 34px;border-radius:24px;background:var(--glass);border:1px solid var(--glass-line);box-shadow:0 24px 60px #0000008c;animation:outcome-in .45s cubic-bezier(.16,1,.3,1) both}.outcome-eyebrow{font-size:11px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:var(--accent)}.outcome-title{font-size:34px;font-weight:800;letter-spacing:-.015em;margin-top:-8px;text-shadow:0 0 40px rgba(95,227,208,.4)}.outcome-stats{display:flex;gap:26px;margin:2px 0 4px;padding:0}.outcome-stat{display:grid;gap:3px;justify-items:center}.outcome-stat dt{font-size:10px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-dim)}.outcome-note{margin:-6px 0 0;max-width:26ch;text-align:center;font-size:13px;line-height:1.5;color:var(--ink-dim)}.outcome-stat dd{margin:0;font-size:19px;font-weight:700;font-variant-numeric:tabular-nums}.outcome-actions{display:flex;gap:10px}@keyframes outcome-in{0%{opacity:0;transform:translateY(18px) scale(.94)}to{opacity:1;transform:none}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.outcome.is-failed .outcome-eyebrow{color:#ff9aa8}.outcome.is-failed .outcome-title{text-shadow:0 0 40px rgba(255,120,135,.32)}.debug{position:absolute;top:calc(var(--safe-top) + 56px);left:calc(var(--safe-left) + 12px);margin:0;padding:8px 10px;border-radius:10px;background:#0009;border:1px solid rgba(120,255,180,.25);color:#8fffc4;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;line-height:1.45;white-space:pre;pointer-events:none}.debug[hidden]{display:none}@media(prefers-reduced-motion:reduce){.btn,.hint,.outcome,.outcome-card,.intro,.pill{transition:none;animation:none}}
