:root{--ink:#3a332b;--ink-soft:#3a332bb8;--cream:#fff6e6;--accent:#e0442e;--display:Impact, "Arial Black", "Haettenschweiler", "Franklin Gothic Heavy", system-ui, sans-serif;--mono:ui-monospace, "Cascadia Mono", "SF Mono", Menlo, Consolas, "Roboto Mono", monospace;--body:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif}*{box-sizing:border-box}html,body{width:100%;height:100%;color:var(--ink);font-family:var(--body);overscroll-behavior:none;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;background:#f7dfc2;margin:0;overflow:hidden}#game{touch-action:none;width:100%;height:100%;display:block;position:fixed;inset:0}.hidden{display:none!important}#vignette{pointer-events:none;z-index:1;background:radial-gradient(at 50% 46%,#3c180a00 52%,#3c180a4d 100%);position:fixed;inset:0}#score{top:calc(12px + env(safe-area-inset-top));white-space:nowrap;font-family:var(--mono);font-variant-numeric:tabular-nums;letter-spacing:.06em;color:var(--ink);text-shadow:0 2px #fff6e6bf;pointer-events:none;z-index:5;flex-direction:column-reverse;align-items:center;gap:2px;font-weight:700;display:flex;position:fixed;left:50%;transform:translate(-50%)}#points{transform-origin:50%;font-size:clamp(30px,5vw,52px);line-height:1}#best{color:var(--ink-soft);font-size:clamp(12px,1.7vw,17px)}#points.pop{animation:.5s ease-out pop}@keyframes pop{0%{color:var(--accent);transform:scale(1)}30%{color:var(--accent);transform:scale(1.28)}to{transform:scale(1)}}#ui{pointer-events:none;z-index:4;position:fixed;inset:0}body.ui-hidden #ui{display:none}#badges{top:calc(16px + env(safe-area-inset-top));left:calc(18px + env(safe-area-inset-left));gap:8px;display:flex;position:absolute}.badge{font-family:var(--mono);letter-spacing:.14em;background:var(--ink);color:var(--cream);border-radius:999px;padding:5px 10px;font-size:12px;font-weight:700}#badge-auto{background:var(--accent)}.panel{text-align:center;width:min(92vw,720px);position:absolute;top:36%;left:50%;transform:translate(-50%,-50%)}.panel h1,.panel h2{font-family:var(--display);letter-spacing:.02em;color:var(--ink);text-shadow:0 3px 0 var(--cream), 0 8px 22px #78502847;margin:0;font-style:italic;font-weight:900;line-height:.92}.panel h1{font-size:clamp(54px,13vw,132px)}.panel h1 small{letter-spacing:.3em;color:var(--accent);margin-top:.12em;font-size:.4em;display:block}.panel h2{font-size:clamp(56px,14vw,148px);animation:.42s cubic-bezier(.2,1.5,.4,1) slam}@keyframes slam{0%{opacity:0;transform:scale(2.4)rotate(-5deg)}to{opacity:1;transform:scale(1)rotate(0)}}.tag,#quip{color:var(--ink);text-shadow:0 1px 0 var(--cream);margin:14px 0 0;font-size:clamp(15px,2.3vw,21px);font-weight:600}.cta{font-family:var(--mono);letter-spacing:.2em;margin:26px 0 0;font-size:clamp(14px,2.2vw,19px);font-weight:700;animation:1.1s steps(2,jump-none) infinite blink}@keyframes blink{0%{opacity:1}to{opacity:.25}}#final{font-family:var(--mono);letter-spacing:.12em;margin:12px 0 0;font-size:clamp(15px,2.2vw,20px);font-weight:700}#new-best{background:var(--accent);color:var(--cream);border-radius:999px;margin-left:12px;padding:3px 9px;font-size:.72em}.btn{pointer-events:auto;background:var(--ink);min-height:56px;color:var(--cream);font-family:var(--display);letter-spacing:.08em;cursor:pointer;touch-action:manipulation;border:0;border-radius:16px;margin-top:22px;padding:16px 34px;font-size:clamp(20px,3.2vw,28px);font-style:italic;transition:transform 80ms,box-shadow 80ms;box-shadow:0 6px #3a332b59}.btn:hover{background:var(--accent)}.btn:active{transform:translateY(4px);box-shadow:0 2px #3a332b59}.btn:focus-visible{outline:3px solid var(--accent);outline-offset:4px}#hints{left:0;right:0;bottom:calc(16px + env(safe-area-inset-bottom));text-align:center;color:var(--ink-soft);text-shadow:0 1px #fff6e6cc;padding:0 12px;font-size:13px;font-weight:600;position:absolute}kbd{min-width:1.6em;color:var(--cream);font-family:var(--mono);text-shadow:none;background:#3a332bd1;border-radius:6px;padding:1px 6px;font-size:.92em;display:inline-block}.for-touch{display:none}@media (hover:none) and (pointer:coarse){.for-keys{display:none}.for-touch{display:inline}}#loading{font-family:var(--mono);letter-spacing:.2em;color:var(--ink);z-index:10;background:#f7dfc2;place-items:center;font-weight:700;transition:opacity .3s;display:grid;position:fixed;inset:0}#loading.done{opacity:0;pointer-events:none}@media (max-height:460px){.panel{top:44%}.panel h1{font-size:clamp(40px,16vh,96px)}.panel h2{font-size:clamp(44px,20vh,110px)}.tag,#quip{margin-top:6px}.cta,.btn{margin-top:12px}.btn{min-height:48px;padding:10px 26px}}@media (prefers-reduced-motion:reduce){.cta,.panel h2,#points.pop{animation:none}}
