body.play{background:radial-gradient(ellipse at 50% 30%,var(--plum-2),var(--plum) 70%);overflow:hidden;position:fixed;inset:0;touch-action:none;overscroll-behavior:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}#game{position:fixed;inset:0;width:100vw;height:100dvh}#game canvas{display:block;touch-action:none}.overlay{position:fixed;inset:0;display:none;align-items:center;justify-content:center;padding:16px;background:#2a15088c;backdrop-filter:blur(3px);z-index:10}.overlay.show{display:flex;animation:ov-in .25s ease-out}.overlay.intro{background:radial-gradient(ellipse at 50% 40%,#ffb45a59,#2a1508cc)}@keyframes ov-in{0%{opacity:0}}.overlay .card{animation:card-in .35s cubic-bezier(.2,1.4,.4,1)}@keyframes card-in{0%{transform:translateY(24px) scale(.92);opacity:0}}.overlay .actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:18px}.overlay .toggles{text-align:left;margin:6px 0 8px}.intro .motto.big{font-size:1.35rem;line-height:1.35;margin:0 0 18px;color:var(--orange-dark)}.intro .zone-label{margin:0;text-transform:uppercase;letter-spacing:.2em;font-weight:700;color:var(--teal-dark);font-size:.85rem}.intro .zone-name{font-size:2rem;margin:4px 0 10px}.intro .controls{font-size:.85rem;color:var(--ink-soft);line-height:1.45;margin:0 0 6px}.result-title{font-size:2.2rem!important;letter-spacing:.06em!important}.result.victory .result-title{color:var(--teal-dark)}.result .record{display:none;margin:0 0 12px;padding:12px;border-radius:16px;background:var(--gold);border:3px solid var(--ink);animation:pop .5s cubic-bezier(.2,1.6,.4,1)}.result .record.show{display:block}.result .record strong{font-size:1.5rem;letter-spacing:.06em}.result .record .motto{margin:4px 0 0}@keyframes pop{0%{transform:scale(.6)}}.result .stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:8px 0 4px}.result .stats div{background:#fff;border:2px solid var(--ink);border-radius:14px;padding:8px 10px}.result .stats div:first-child{grid-column:span 2;background:var(--cream-2)}.result .stats dt{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-soft)}.result .stats dd{margin:2px 0 0;font-weight:700;font-size:1.25rem}.result .stats div:first-child dd{font-size:2rem;color:var(--orange-dark)}.result .status{font-size:.85rem;color:var(--ink-soft);min-height:1.2em}.result .motto.small,.overlay .extra{font-size:.95rem;line-height:1.4}
