:root{--album: #191715;--albumL: #24211e;--albumD: #0d0c0b;--cream: #eee4cf;--creamD: #d9ccb2;--sepia: #c9b391;--ink: #2e2119;--inkL: #5a4434;--gilt: #c99a3e;--giltL: #e2bd6c;--leak: #c8552c;--display: "Nanum Myeongjo", "Sylfaen", "Constantia", Georgia, serif;--pen: "Nanum Pen Script", "Segoe Print", "Bradley Hand", cursive;--mono: "Osaka-Mono", "Lucida Console", "Consolas", monospace}html,body{background:var(--album);color:var(--cream);font-family:var(--display)}.stage{background:var(--album)}.hud{position:absolute;left:0;right:0;top:0;z-index:3;display:flex;align-items:flex-start;justify-content:space-between;padding:calc(8px + var(--safe-t)) calc(10px + var(--safe-r)) 0 calc(10px + var(--safe-l));pointer-events:none}.disc{pointer-events:auto;width:46px;height:46px;display:grid;place-items:center;padding:0;border-radius:50%;background:var(--album);border:1.5px solid var(--cream);color:var(--cream);text-decoration:none;box-shadow:0 3px 10px #00000073;transition:transform .18s ease}.disc:active{transform:scale(.93)}.disc:focus-visible,.pill:focus-visible{outline:3px solid var(--giltL);outline-offset:3px}.disc svg{width:24px;height:24px;fill:none;stroke:var(--cream);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.mute .spk{fill:var(--cream);stroke:none}.mute .off,.mute[aria-pressed=true] .wav{display:none}.mute[aria-pressed=true] .off{display:inline;stroke:var(--leak)}.board{display:flex;flex-direction:column;align-items:center;gap:4px;margin-top:2px}.score{font-family:var(--mono);font-size:30px;line-height:1;color:var(--cream);font-variant-numeric:tabular-nums;padding:4px 10px 3px;background:#191715c7;border-radius:2px;transition:transform .25s cubic-bezier(.2,1.6,.4,1)}.score.pop{transform:scale(1.12)}.mult{font-family:var(--mono);font-size:13px;color:var(--cream);padding:1px 8px;border:1px solid var(--cream);border-radius:2px;background:#191715b3}.mult.hot{color:var(--album);background:var(--giltL);border-color:var(--giltL)}.mult.pop{animation:mpop .3s ease}@keyframes mpop{50%{transform:scale(1.25)}}.lives{display:flex;gap:0;height:24px;align-items:center;padding:0 3px;background:var(--albumD);border-radius:2px;background-image:radial-gradient(circle,var(--creamD) 1.1px,transparent 1.5px),radial-gradient(circle,var(--creamD) 1.1px,transparent 1.5px);background-size:6px 6px;background-position:0 1px,0 18px;background-repeat:repeat-x}.lives b{width:16px;height:11px;margin:0 2px;background:#3a332c;border:1px solid #4a423a;transition:background .25s}.lives b.on{background:linear-gradient(160deg,var(--sepia),#a88f6c);border-color:var(--cream)}.lives.low b.on{animation:throb .9s ease-in-out infinite}.lives.hurt{animation:shake .45s ease}@keyframes throb{50%{opacity:.55}}@keyframes shake{20%{transform:translate(-4px)}50%{transform:translate(4px)}80%{transform:translate(-2px)}}.title,.card,.gallery,.paused{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:calc(70px + var(--safe-t)) 18px calc(26px + var(--safe-b));text-align:center}.title.fade{opacity:0;transition:opacity .5s ease;pointer-events:none}.page{position:relative;background:var(--album);border:1px solid #2f2b27;border-radius:3px;padding:22px 22px 18px;box-shadow:0 16px 34px #0009,inset 0 0 0 6px var(--album),inset 0 0 0 7px #c99a3e73;max-width:340px;width:100%}.page.wide{max-width:390px;max-height:82vh;overflow:auto}.mark{width:160px;height:100px;display:block;margin:0 auto 2px}.mark .print{fill:var(--sepia);stroke:var(--cream);stroke-width:4}.mark .land{fill:none;stroke:var(--inkL);stroke-width:2}.mark .who{fill:var(--ink);stroke:var(--ink);stroke-width:2.4;stroke-linecap:round}.mark .grid{fill:none;stroke:#efe7d68c;stroke-width:.8}.mark .brk{fill:none;stroke:var(--giltL);stroke-width:3}h1{margin:0;font-family:var(--display);font-weight:700;font-size:62px;line-height:1.05;letter-spacing:.06em;color:var(--cream)}.sub{margin:4px 0 12px;font-family:var(--pen);font-size:24px;color:var(--creamD)}.cta{margin-top:10px;font-family:var(--mono);font-size:13px;letter-spacing:.2em;text-transform:uppercase;color:var(--giltL);animation:breathe 2.4s ease-in-out infinite}@keyframes breathe{50%{opacity:.45}}.best{margin-top:8px;font-family:var(--pen);font-size:22px;color:var(--creamD)}.foot{position:absolute;left:0;right:0;bottom:calc(22px + var(--safe-b));display:flex;justify-content:center}.pill{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 18px;border-radius:2px;border:1px solid var(--cream);background:var(--album);font-family:var(--mono);font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--cream);margin-top:12px}.pill svg{width:20px;height:20px;fill:none;stroke:var(--cream);stroke-width:1.6;stroke-linecap:round}.pill:active{transform:scale(.96)}.card{opacity:0;transition:opacity .5s ease}.card.show{opacity:1}.kicker{font-family:var(--pen);font-size:24px;color:var(--giltL)}.big{font-family:var(--mono);font-size:50px;line-height:1.05;margin-top:2px;color:var(--cream)}.newbest{display:inline-block;margin:0 0 4px;font-family:var(--display);font-weight:700;font-size:22px;color:var(--giltL);letter-spacing:.05em;animation:nb 1.4s ease-in-out infinite}@keyframes nb{50%{transform:translateY(-2px)}}.split{display:flex;gap:14px;align-items:center;margin-top:8px;text-align:left}.keep{width:46%;aspect-ratio:360 / 560;object-fit:cover;background:var(--albumL);box-shadow:0 4px 12px #00000080;border:1px solid #2f2b27}.rows{flex:1;display:flex;flex-direction:column;gap:5px}.r{display:flex;justify-content:space-between;align-items:baseline;gap:6px;font-family:var(--pen);font-size:19px;color:var(--creamD);border-bottom:1px dotted rgba(239,231,214,.25);padding-bottom:2px}.r b{font-family:var(--mono);font-weight:400;font-size:14px;color:var(--cream);text-align:right}.r.best b{color:var(--giltL)}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:12px}.grid figure{margin:0}.grid img{width:100%;aspect-ratio:360 / 560;object-fit:cover;display:block;box-shadow:0 3px 8px #00000080;border:1px solid #2f2b27}.grid figcaption{font-family:var(--pen);font-size:17px;color:var(--creamD);margin-top:4px}.empty{grid-column:1 / -1;font-family:var(--pen);font-size:26px;color:var(--creamD);margin:10px 0}.paused{background:#0d0c0b99}.paused .cta{font-size:15px;color:var(--cream)}.gallery{z-index:4;background:#0d0c0bbf}.grid figure{cursor:pointer}.grid figure.pinned img{border-color:var(--giltL);box-shadow:0 0 10px #e2bd6c73}.grid figure.pinned figcaption:before{content:"★";color:var(--giltL)}.big-keep{display:block;width:min(200px,52vw);height:auto;margin:12px auto 0}.cap{margin:8px 0 0;font-family:var(--pen);font-size:19px;color:var(--creamD)}.btns{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.pill.ad:after{content:"AD";margin-left:2px;padding:1px 4px;border-radius:2px;font-size:9px;letter-spacing:.08em;background:#00000059;color:var(--giltL)}.card .page{transform:translateY(14px) scale(.97);transition:transform .55s cubic-bezier(.2,1.15,.3,1)}.card.show .page{transform:none}.title h1{text-shadow:0 2px 0 rgba(0,0,0,.5),0 0 22px rgba(226,189,108,.35)}.score{box-shadow:inset 0 0 0 1px #e2bd6c73,0 3px 8px #0006;text-shadow:0 1px 0 rgba(0,0,0,.6)}.big{text-shadow:0 0 18px rgba(226,189,108,.3)}.newbest{text-shadow:0 0 14px rgba(226,189,108,.6)}@media(prefers-reduced-motion:reduce){.card .page{transform:none;transition:none}}@media(prefers-reduced-motion:reduce){.cta,.newbest,.lives.low b.on,.lives.hurt{animation:none}}@media(max-height:700px){.big{font-size:40px}h1{font-size:50px}.page{padding:18px 16px 14px}.title,.card{padding-top:calc(60px + var(--safe-t))}}
