:root{--bg:#1b2340;--panel:#26305a;--ink:#f4f1ea;--accent:#f5d547;--ok:#5ed39a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);margin:0;font:18px/1.4 system-ui,sans-serif}main,section{text-align:center;max-width:640px;margin:0 auto;padding:16px}h1,h2{margin:.3em 0}a{color:inherit}.say{background:var(--panel);border-radius:16px;padding:10px 14px;font-style:italic}.btn{background:var(--accent);color:#1b1b1b;min-height:48px;font:inherit;cursor:pointer;border:0;border-radius:14px;padding:12px 22px;font-weight:700;text-decoration:none;display:inline-block}.btn.ghost{color:var(--ink);border:2px solid var(--accent);background:0 0}.code{justify-content:center;gap:6px;margin:12px 0;display:flex}.code span{background:var(--panel);border-radius:8px;width:2em;height:2.4em;font-family:ui-monospace,monospace;font-weight:700;line-height:2.4em}.code span.found{background:var(--ok);color:#10321f}.code.big{flex-wrap:wrap;font-size:1.2rem}.tiles{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;margin:14px 0;display:grid}.tile{background:var(--panel);border-radius:14px;flex-direction:column;justify-content:center;min-height:92px;padding:10px;text-decoration:none;display:flex;position:relative}.tile b{color:var(--accent);font-size:1.4em}.tile.done{outline:2px solid var(--ok)}.tile i{color:var(--ok);font-style:normal;font-weight:700;position:absolute;top:6px;right:10px}.back{text-align:left;padding:8px 0;display:block}.brief{opacity:.85}.play{place-items:center;min-height:200px;margin:12px 0;display:grid}.hintbar{margin-top:16px}.bigdigit{color:var(--ok);font-size:6rem;font-weight:800}.tail{transform-origin:150px 196px;animation:3s ease-in-out infinite flick}.blink{transform-box:fill-box;transform-origin:50%;animation:5s infinite blink}@keyframes flick{50%{transform:rotate(8deg)}}@keyframes blink{96%,to{transform:scaleY(1)}98%{transform:scaleY(.1)}}@media (prefers-reduced-motion:reduce){.tail,.blink{animation:none}}.counter{color:var(--accent);margin:0;font-weight:700}.scenes{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:10px;width:100%;display:grid}.scene{touch-action:manipulation;border-radius:12px;width:100%;display:block}.cards{grid-template-columns:repeat(3,1fr);gap:10px;width:100%;max-width:420px;display:grid}.card{aspect-ratio:1;background:var(--panel);cursor:pointer;border:0;border-radius:14px;padding:0;position:relative}.card .face{background:#f4f1ea;border-radius:14px;place-items:center;height:100%;display:none}.card .back{place-items:center;height:100%;display:grid}.card .back svg *{fill:#3b4a85}.card.up .face{display:grid}.card.up .back{display:none}.card.matched .face{outline:3px solid var(--ok);background:#c9f2dc}.pads{grid-template-columns:1fr 1fr;gap:12px;width:100%;max-width:360px;display:grid}.pad{aspect-ratio:1;background:var(--panel);cursor:pointer;opacity:.55;border:0;border-radius:20px;padding:18%;transition:opacity .1s,transform .1s}.pad svg{width:100%;height:100%}.pad svg *{fill:currentColor}.pad{position:relative}.pad .mk{opacity:.95;width:22%;height:22%;position:absolute;top:10%;left:10%}.pad .mk *{fill:var(--ink)}.pad.lit{opacity:1;background:#3a4680;transform:scale(1.06)}.pad:not(:disabled){opacity:.9}.wordlist{letter-spacing:.06em;flex-wrap:wrap;justify-content:center;gap:6px 14px;margin:0 0 10px;padding:0;font-weight:700;list-style:none;display:flex}.wordlist .done{color:var(--ok);text-decoration:line-through}.wgrid{grid-template-columns:repeat(8,1fr);gap:4px;width:100%;max-width:400px;display:grid}.wcell{aspect-ratio:1;background:var(--panel);color:var(--ink);cursor:pointer;border:0;border-radius:8px;padding:0;font:700 1.2rem ui-monospace,monospace}.wcell.sel{background:var(--accent);color:#1b1b1b}.wcell.hit{background:var(--ok);color:#10321f}.room{touch-action:manipulation;border-radius:12px;width:100%;max-width:400px;margin:8px auto;display:block}.room [data-item]{cursor:pointer}.preview{border-radius:8px;width:96px;height:96px;margin-bottom:10px}.pgrid{aspect-ratio:1;background:var(--panel);border-radius:12px;grid-template-columns:repeat(3,1fr);gap:3px;width:100%;max-width:360px;padding:3px;display:grid}.ptile{cursor:pointer;background:0 0;border:0;border-radius:6px;padding:0;overflow:hidden}.ptile svg{width:100%;height:100%;display:block}.gap{background:var(--bg);border-radius:6px}.preview .tail,.preview .blink,.ptile .tail,.ptile .blink{animation:none}.clues{text-align:left;margin:0 0 12px;padding-left:1.4em}.clues li{margin-bottom:8px}.suspects{grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:10px;width:100%;margin-bottom:12px;display:grid}.suspect{background:var(--panel);color:var(--ink);font:inherit;cursor:pointer;border:0;border-radius:14px;flex-direction:column;align-items:center;gap:4px;padding:10px 6px;font-weight:700;display:flex;position:relative}.suspect.out{opacity:.4}.suspect.out:after{content:"✕";color:#e8465b;place-items:center;font-size:3.4rem;display:grid;position:absolute;inset:0}.btn:disabled{opacity:.35;cursor:not-allowed}.cipher{letter-spacing:.12em;background:var(--panel);word-break:break-word;border-radius:12px;padding:14px;font:700 1.5rem ui-monospace,monospace}.ringlabel{opacity:.8;margin:4px 0;font-size:.9rem}.ring{grid-template-columns:repeat(13,1fr);width:100%;max-width:420px;margin:4px auto;font:700 .85rem ui-monospace,monospace;display:grid}.ring span{background:var(--panel);flex-direction:column;display:flex}.ring b{color:var(--accent);padding:3px 0}.ring i{color:var(--ok);background:#1f2a52;padding:3px 0;font-style:normal}.answer{flex-wrap:wrap;justify-content:center;gap:10px;width:100%;margin:14px 0 6px;display:flex}.answer input{border:2px solid var(--accent);background:var(--bg);min-height:48px;color:var(--ink);font:inherit;text-transform:uppercase;border-radius:12px;flex:220px;padding:0 12px;font-size:1.1rem}.maze{touch-action:manipulation;border-radius:10px;width:100%;max-width:400px;display:block}.tok{transition:transform .12s ease-out}.dpad{grid-template-columns:repeat(3,64px);grid-template-areas:".u.""l.r"".d.";justify-content:center;gap:8px;margin-top:14px;display:grid}.dpad .btn{padding:0;font-size:1.6rem}.dpad .dir-U{grid-area:u}.dpad .dir-D{grid-area:d}.dpad .dir-L{grid-area:l}.dpad .dir-R{grid-area:r}@media (prefers-reduced-motion:reduce){.tok{transition:none}}.riddle{margin:8px 0 14px;font-size:1.15rem;font-weight:600}.opts{gap:10px;width:100%;max-width:420px;margin:0 auto 12px;display:grid}.opt{color:var(--ink)}.opt:disabled{opacity:.35}.opt.picked{border-color:var(--ok)}*{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--accent);outline-offset:2px}h1:focus,h2:focus{outline:none}progress{width:100%;max-width:360px;height:12px;accent-color:var(--ok)}.progress{opacity:.85;margin:4px 0 0}.linkbtn{color:var(--ink);opacity:.6;font:inherit;cursor:pointer;background:0 0;border:0;margin-top:18px;padding:12px;font-size:.9rem;text-decoration:underline}.bigdigit{animation:.5s cubic-bezier(.2,1.6,.4,1) pop}@keyframes pop{0%{opacity:0;transform:scale(.2)}}.finale{position:relative;overflow:hidden}.finale>*{z-index:1;position:relative}.finale>.confetti{pointer-events:none;z-index:0;position:absolute;inset:0}.confetti i{top:-12px;left:var(--x);background:var(--c);width:10px;height:16px;animation:fall 3.2s linear var(--d) infinite;position:absolute}@keyframes fall{to{transform:translateY(105vh)rotate(540deg)}}.codelabel{opacity:.8;margin:14px 0 0}.code.big{flex-wrap:nowrap;align-items:center;gap:4px}.code .sep{flex:0 0 12px}.code.big span{flex:1 1 0;width:auto;min-width:0;max-width:2.2em;font-size:clamp(1rem,4.6vw,1.5rem)}@media (prefers-reduced-motion:reduce){.confetti,.bigdigit{animation:none;display:none}.bigdigit{display:block}}.mute{z-index:10;top:calc(env(safe-area-inset-top) + 8px);right:calc(env(safe-area-inset-right) + 8px);border:2px solid var(--accent);background:var(--panel);width:44px;height:44px;color:var(--accent);cursor:pointer;border-radius:50%;place-items:center;padding:0;display:grid;position:fixed}.mute[aria-pressed=true]{color:var(--ink);opacity:.85;border-color:#7b86b8}.presents{color:var(--accent);letter-spacing:.28em;text-transform:uppercase;justify-content:center;align-items:center;gap:10px;margin:8px 0 0;font-size:.78rem;font-weight:700;display:flex}.presents+h1{margin-top:.15em}.gagbox{max-width:280px;margin:4px auto 0}.gag{width:100%;height:auto;display:block}.gagbox .say{margin:4px 0 0;padding:7px 12px;font-size:.92rem}.reveal .gagbox{margin-bottom:6px}.gcard *{fill:#3b4a85}.gp *{fill:currentColor}@keyframes g-wag{0%{transform:rotate(-14deg)}to{transform:rotate(14deg)}}@keyframes g-bob{50%{transform:translateY(-4px)}}@keyframes g-hop{40%{transform:translateY(-14px)}}@keyframes g-sway{0%{transform:rotate(-4deg)}to{transform:rotate(4deg)}}.g-wag{animation:1s ease-in-out infinite alternate g-wag}.g-bob{animation:1.3s ease-in-out infinite g-bob}.g-hop{animation:1.3s ease-out infinite g-hop}.g-sway{animation:1.6s ease-in-out infinite alternate g-sway}.g1-tail{transform-box:view-box;transform-origin:150px 52px}@keyframes g2-note{0%{opacity:0;transform:translateY(8px)}30%{opacity:1}to{opacity:0;transform:translate(8px,-8px)}}.g2-note{animation:2.2s ease-out infinite g2-note}@keyframes g3-walk{0%{transform:translate(0)}85%{transform:translate(250px)}}@keyframes g3-drop{0%{opacity:1;transform:none}3%{transform:translateY(8px)rotate(10deg)}12%{opacity:0;transform:translateY(54px)rotate(70deg)}88%{opacity:0;transform:translateY(54px)rotate(70deg)}to{opacity:1;transform:none}}.g3-walk{animation:5s linear infinite g3-walk;transform:translate(250px)}.g3-l{transform-box:fill-box;transform-origin:50%;animation:5s ease-in infinite g3-drop}@keyframes g4-peek{0%{transform:translate(-14px)}to{transform:translate(14px)}}.g4-peek{animation:1.8s ease-in-out infinite alternate g4-peek}@keyframes g4-fall{0%{transform:none}}.g4-stash{transform-box:fill-box;transform-origin:50%;animation:3.2s cubic-bezier(.5,0,1,.6) infinite g4-fall;transform:translateY(34px)rotate(24deg)}@keyframes g5-baton{0%{transform:rotate(-18deg)}to{transform:rotate(18deg)}}@keyframes g5-hop{0%,60%,to{transform:translateY(0)scaleY(1)}20%{transform:translateY(-16px)scaleY(1.08)}}@keyframes g5-bow{50%{transform:rotate(9deg)}}.g5-baton{transform-box:view-box;transform-origin:84px 54px;animation:.8s ease-in-out infinite alternate g5-baton}.g5-p{transform-box:fill-box;transform-origin:50% 100%;animation:1.8s ease-out infinite g5-hop;animation-delay:calc(var(--i) * .4s)}.g5-bow{transform-box:fill-box;transform-origin:50% 100%;animation:1.4s ease-in-out infinite g5-bow}@keyframes g6-lick{50%{transform:translateY(-6px)scaleY(.7)}}.g6-lick{transform-box:view-box;transform-origin:100px 110px;animation:.9s ease-in-out infinite g6-lick}@keyframes g7-wobble{0%{transform:rotate(-3deg)}to{transform:rotate(3deg)}}.g7-box{transform-box:fill-box;transform-origin:50% 100%;animation:.7s ease-in-out infinite alternate g7-wobble}@keyframes g8-wobble{0%{transform:rotate(-3deg)}to{transform:rotate(3deg)}}@keyframes g8-check{0%{stroke-dashoffset:40px}}.g8-paper{transform-box:fill-box;transform-origin:50%;animation:1.4s ease-in-out infinite alternate g8-wobble}.g8-check{stroke-dasharray:40;stroke-dashoffset:0;animation:2.2s ease-out infinite g8-check}@keyframes g9-sweat{0%{opacity:0;transform:translateY(-6px)}30%{opacity:1}to{opacity:0;transform:translateY(12px)}}@keyframes g9-ha{0%,55%{opacity:0;transform:scale(.4)}70%,to{opacity:1;transform:scale(1)}}@keyframes g9-run{0%,20%{opacity:1;transform:none}70%{opacity:1;transform:translate(-40px)}71%,to{opacity:0;transform:translate(-40px)}}.g9-sweat{animation:1.6s ease-in infinite g9-sweat}.g9-ha{transform-box:fill-box;transform-origin:50%;animation:2.4s ease-out infinite g9-ha}.g9-run{animation:3s ease-in-out infinite g9-run}@keyframes g10-fall{0%,14%{transform:none}22%{transform:translate(4px,-2px)rotate(9deg)}76%{transform:translate(96px,24px)rotate(350deg)}to{transform:translate(98px,28px)rotate(360deg)}}@keyframes g10-orbit{to{transform:rotate(360deg)}}.g10-fall{transform-box:fill-box;transform-origin:50%;animation:6s ease-in-out infinite g10-fall}.g10-orbit{transform-box:view-box;transform-origin:205px 40px;animation:5s linear infinite g10-orbit}@media (prefers-reduced-motion:reduce){.gag *,.gag{animation:none!important}}@media (height<=700px){.gagbox{max-width:210px}.gagbox .say{margin-top:2px;padding:5px 10px;font-size:.85rem}.gagbox+.brief{margin:6px 0}}.wcell.hit{box-shadow:inset 0 0 0 3px #10321f}@keyframes g-fly{0%,12%{opacity:1;transform:none}80%,to{opacity:0;transform:translate(70px,-26px)}}.g-fly{animation:2.6s ease-in infinite g-fly}.stones{background:#1f4a78;border-radius:18px;grid-template-columns:repeat(3,1fr);gap:10px;width:100%;max-width:300px;padding:14px;display:grid}.stone{aspect-ratio:1;cursor:pointer;background:#8a8f98;border:3px solid #6b6f78;border-radius:50%;place-items:center;padding:0;transition:transform .1s,box-shadow .1s;display:grid}.stone svg *{fill:#50545c}.stone.lit{background:#f5d547;border-color:#fff;transform:scale(1.14);box-shadow:0 0 0 4px #fff,0 0 18px 6px #f5d547}.stone:disabled{cursor:default}.tray{grid-template-columns:repeat(3,1fr);gap:8px;width:100%;margin-top:12px;display:grid}.acard{color:#1b2340;font:inherit;cursor:pointer;background:#f4f1ea;border:3px solid #0000;border-radius:12px;flex-direction:column;align-items:center;gap:2px;padding:8px 4px;font-size:.8rem;font-weight:700;display:flex}.acard[aria-pressed=true]{outline:3px solid var(--accent);border-style:dashed;border-color:#1b2340;transform:scale(1.06)}.acard.nope{outline:3px solid #e8465b;animation:.4s shake}@keyframes shake{25%{transform:translate(-6px)}75%{transform:translate(6px)}}.bins{grid-template-columns:repeat(3,1fr);gap:8px;width:100%;display:grid}.bin{border:2px dashed var(--accent);background:var(--panel);min-height:96px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;border-radius:14px;flex-direction:column;align-items:center;gap:6px;padding:8px 4px;display:flex}.binhead{color:var(--accent);flex-direction:column;align-items:center;gap:2px;display:flex}.binhead b{color:var(--ink);font-size:.78rem}.binbody{flex-wrap:wrap;justify-content:center;gap:4px;display:flex}.sorted{color:#1b2340;background:#f4f1ea;border-radius:8px;flex-direction:column;align-items:center;padding:2px 4px;display:flex}.sorted i{font-size:.62rem;font-style:normal;font-weight:700}.scales{gap:8px;width:100%;margin:0 0 10px;padding:0;list-style:none;display:grid}.scalerow{background:var(--panel);border-radius:12px;justify-content:center;align-items:center;gap:6px;padding:8px;display:flex}.scalerow .pan{background:#f4f1ea;border-radius:10px;flex-wrap:wrap;justify-content:center;gap:2px;min-width:96px;padding:4px;display:flex}.scalerow .beam{color:var(--accent);flex:none}.ask .inline{vertical-align:middle;background:#f4f1ea;border-radius:8px;gap:2px;padding:2px 4px;display:inline-flex}.numopts{grid-template-columns:repeat(4,1fr);gap:8px;width:100%;max-width:360px;margin:6px auto;display:grid}.padlock .shackle{transition:transform .5s}.padlock.open .shackle{transform:translateY(-10px)}.lockclues{text-align:left;gap:10px;width:100%;margin:0 0 8px;padding:0;list-style:none;display:grid}.lockclues li{background:var(--panel);border-radius:12px;gap:8px;padding:10px 12px;display:grid}.dialrow{align-items:center;gap:10px;display:flex}.dial{border:3px solid var(--accent);background:var(--bg);width:100px;min-height:48px;color:var(--ink);text-align:center;border-radius:10px;font:800 1.4rem ui-monospace,monospace}.dial.ok{border-style:double;border-color:var(--ok)}.tick{color:var(--ok);font-weight:700}@keyframes g-toss{0%{transform:translate(58px,-6px)rotate(40deg)}}@keyframes g-tilt{0%{transform:rotate(-8deg)}to{transform:rotate(-3deg)}}@keyframes g-tilt2{0%{transform:rotate(-1.5deg)}to{transform:rotate(1.5deg)}}.g-toss{animation:2.2s ease-out infinite g-toss}.g-tilt{transform-box:view-box;transform-origin:150px 40px;animation:2.4s ease-in-out infinite alternate g-tilt;transform:rotate(-6deg)}.g-tilt2{transform-box:view-box;transform-origin:150px 40px;animation:2.4s ease-in-out infinite alternate g-tilt2}@media (prefers-reduced-motion:reduce){.acard.nope,.stone,.padlock .shackle{transition:none;animation:none}}.bin[data-home=land] .binhead svg *{fill:currentColor}.ocards{grid-template-columns:repeat(3,1fr);gap:10px;width:100%;max-width:340px;display:grid}.ocard{aspect-ratio:1;cursor:pointer;background:#f4f1ea;border:3px solid #1b2340;border-radius:14px;padding:6px;position:relative}.ocard .mark{color:#1b2340;font:800 1.6rem system-ui;position:absolute;top:2px;right:6px}.ocard.wrong{opacity:.45;border-style:dashed}.ocard.right{outline:4px solid var(--ok);outline-offset:2px}.listen{margin-bottom:8px}.soundnote{color:var(--accent);margin:4px 0;font-weight:700}.tunes{gap:10px;width:100%;margin-top:10px;display:grid}.tune{background:var(--panel);border-radius:14px;justify-content:space-between;align-items:center;gap:8px;padding:10px;display:flex}.tune.wrong{opacity:.5;border:2px dashed #7b86b8}.tune .btn{min-height:44px;padding:8px 12px;font-size:.9rem}.contour{align-items:flex-end;gap:5px;height:70px;display:inline-flex}.contour i{transform-origin:bottom;background:#9aa6d6;border-radius:4px;width:14px;transition:transform .12s;display:block}.contour i.on{background:var(--accent);outline:3px solid #fff;transform:scaleY(1.15)}.tunebars.target{justify-content:center;margin:4px 0;display:flex}.jgrid{background:var(--panel);border-radius:10px;grid-template-columns:repeat(3,1fr);gap:3px;width:100%;max-width:330px;padding:3px;display:grid}.jpiece{aspect-ratio:4/3;cursor:pointer;background:0 0;border:0;border-radius:4px;padding:0;position:relative;overflow:hidden}.jpiece svg{width:100%;height:100%;display:block}.jpiece.sel{outline:4px dashed var(--accent);outline-offset:-4px;transform:scale(.95)}.jpiece.locked{box-shadow:inset 0 0 0 3px var(--ok);cursor:default}.jpiece .mark{color:#fff;background:#10321f;border-radius:50%;place-items:center;width:20px;height:20px;font-size:.8rem;display:grid;position:absolute;bottom:3px;right:4px}.trace{background:#10183a;border-radius:14px;width:100%;max-width:400px;display:block}.trace .guide{stroke:#6b7aa8;stroke-width:5px;stroke-dasharray:2 7;stroke-linecap:round}.trace .dotsg circle{fill:#b7c4f0}.trace .glow{stroke:var(--accent);stroke-width:8px;stroke-linecap:round;stroke-linejoin:round}.trace .head{fill:var(--accent);stroke:#fff;stroke-width:3px;transform-box:fill-box;transform-origin:50%;animation:1.2s ease-in-out infinite pulse}.trace.lost .glow{opacity:.35}@keyframes pulse{50%{transform:scale(1.35)}}@keyframes g-print{0%{opacity:0}25%{opacity:1}}.g-print{animation:3s ease-out infinite g-print;animation-delay:calc(var(--i) * .45s)}@media (prefers-reduced-motion:reduce){.trace .head,.contour i{transition:none;animation:none}}
