@font-face{font-family:Bricolage Grotesque;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/bricolage-grotesque-latin-800-normal-J50vIsBe.woff2)format("woff2"),url(/assets/bricolage-grotesque-latin-800-normal-Br4b-5gk.woff)format("woff")}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-sans-latin-400-normal-CW0RaeGs.woff2)format("woff2"),url(/assets/dm-sans-latin-400-normal-BwCSEQnW.woff)format("woff")}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/dm-sans-latin-500-normal-B9HHJjqV.woff2)format("woff2"),url(/assets/dm-sans-latin-500-normal-Dr3UlScf.woff)format("woff")}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/dm-sans-latin-700-normal-DvUfVpUG.woff2)format("woff2"),url(/assets/dm-sans-latin-700-normal-CUSSCpQX.woff)format("woff")}:root{--bg:#f3f1ff;--footer-fade:linear-gradient(#f3f1ff00, var(--bg) 30%);--surface:#fff;--ink:#1c1838;--muted:#4a4570;--violet:#5b3fff;--tangerine:#ff6b35;--sun:#ffc531;--mint:#2bd9a0;--peach:#ffe3d6;--sky:#cfe4ff;--danger:#cc2f36;--line:2px solid var(--ink);--shadow:4px 4px 0 var(--ink);--shadow-sm:3px 3px 0 var(--ink);--display:"Bricolage Grotesque", system-ui, sans-serif;--body:"DM Sans", system-ui, sans-serif;--spring:cubic-bezier(.3, 1.45, .5, 1);--glide:cubic-bezier(.2, .85, .25, 1);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--ink);font:16px/1.45 var(--body);-webkit-tap-highlight-color:transparent;overscroll-behavior-y:none;margin:0}#app{z-index:1;max-width:520px;min-height:100dvh;padding:0 20px calc(128px + env(safe-area-inset-bottom));flex-direction:column;margin:0 auto;display:flex;position:relative;overflow-x:hidden}main{flex-direction:column;gap:12px;display:flex;position:relative}header{z-index:1;padding:calc(16px + env(safe-area-inset-top)) 0 8px;justify-content:space-between;align-items:center;gap:10px;display:flex;position:relative}.brand{font:800 22px var(--display);letter-spacing:-.03em;align-items:center;gap:10px;display:flex}.logo{background:var(--violet);border:var(--line);width:38px;height:38px;box-shadow:var(--shadow-sm);border-radius:12px;justify-content:center;align-items:center;display:inline-flex}.who{align-items:center;gap:6px;font-size:1.15rem;font-weight:700;display:flex}.nm{align-items:center;gap:4px;min-width:0;max-width:100%;display:inline-flex}.nmt{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.who{min-width:0}.nm>svg,.pname>svg{flex:none}h1{font:800 2rem/1.05 var(--display);letter-spacing:-.035em;margin:6px 0 4px}h1.hero{letter-spacing:-.04em;margin-top:14px;font-size:2.9rem;line-height:.95}h1.clue{text-align:center;margin:2px 0 8px;font-size:2.8rem;line-height:1}h2{font:800 1.5rem var(--display);letter-spacing:-.03em;align-items:center;gap:10px;margin:16px 0 2px;display:flex}.by{text-align:center;color:var(--muted);margin:0}.hint{color:var(--muted);margin:2px 0 10px;font-size:.95rem}.hint .ink{color:var(--ink)}.tip,.empty{color:var(--muted);font-size:.95rem}.error{color:#b4232a;margin:4px 0;font-weight:700}.count{font:800 .95rem var(--body);border:var(--line);background:var(--sun);border-radius:999px;padding:1px 10px}button{font:700 1rem var(--body);color:var(--ink);background:var(--surface);border:var(--line);cursor:pointer;touch-action:manipulation;--lift:3px;min-height:48px;box-shadow:var(--lift) var(--lift) 0 var(--ink);transition:transform .36s var(--spring), box-shadow .36s var(--spring), background-color .2s ease;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;border-radius:16px;justify-content:center;align-items:center;gap:8px;padding:10px 16px;display:inline-flex}button.pressed,button.busy{transform:translate(var(--lift), var(--lift));box-shadow:0 0 0 var(--ink);transition-duration:0s}button[aria-disabled=true]{cursor:default}button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--violet);outline-offset:3px}button.primary{background:var(--violet);color:#fff;font:800 1.2rem var(--display);letter-spacing:-.01em;--lift:5px}button.danger{background:var(--danger);color:#fff}button.wide{width:100%;margin:6px 0}.pass{white-space:nowrap;flex:none;min-height:44px;padding:6px 12px;font-size:.9rem}.icon{flex:none}footer{z-index:2;padding:14px 20px calc(16px + env(safe-area-inset-bottom));background:var(--footer-fade);justify-content:center;gap:12px;display:flex;position:fixed;bottom:0;left:0;right:0}footer button{--lift:5px;border-radius:20px;flex:1;max-width:300px;min-height:60px}footer .footer-fit{flex:none;padding:0 16px}.backdrop{z-index:0;pointer-events:none;position:fixed;inset:0;overflow:hidden}.deco{position:absolute}.deco.sun{background:var(--sun);border-radius:50%;width:220px;height:220px;top:-150px;right:-100px}.deco.mint{background:var(--mint);border-radius:22px;width:90px;height:90px;top:360px;left:-64px;transform:rotate(18deg)}.people{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:12px;display:grid}.person{--lift:4px;border-radius:20px;flex-direction:column;gap:4px;padding:12px 6px 10px;font-size:.95rem;line-height:1.2}.person.hot{background:var(--peach)}.pname{align-items:center;gap:4px;min-width:0;max-width:100%;display:flex}.person{min-width:0}.big{font-size:2.1rem;line-height:1}.returning{color:var(--muted)}.returning summary{cursor:pointer;color:var(--violet);padding:10px 0;font-weight:700}.returning .row{margin-top:8px}.row.rejoin{color:var(--ink);justify-content:flex-start;gap:8px}.card{background:var(--surface);border:var(--line);border-radius:22px;padding:16px}.step{align-items:flex-start;gap:12px;display:flex}.num{border:var(--line);height:30px;font:800 .95rem var(--display);border-radius:50%;flex:0 0 30px;justify-content:center;align-items:center;display:flex}.num.sun{background:var(--sun)}.num.mint{background:var(--mint)}.num.peach{background:var(--peach)}.inline-form{margin:8px 0}.field{color:var(--muted);margin:10px 0 6px;font-size:.95rem;font-weight:700;display:block}.inline-form .field:first-child{margin-top:0}.field-row{position:relative}input.text{width:100%;min-height:60px;font:500 1.1rem var(--body);color:var(--ink);background:var(--surface);border:var(--line);box-shadow:var(--shadow-sm);border-radius:16px;padding:14px 16px;display:block}input.text::placeholder{color:#6b6690}input.text:focus{box-shadow:4px 4px 0 var(--violet);outline:none}.field-row:has(.inset) input.text{padding-right:100px}button.inset{border-radius:11px;min-width:80px;min-height:44px;padding:0 14px;font-size:1.05rem;position:absolute;top:7px;bottom:7px;right:7px}.field-row button{--lift:0px;box-shadow:none}.field-row button.pressed{box-shadow:none;transform:scale(.94)}.label{color:var(--muted);margin:14px 0 6px;font-size:.95rem;font-weight:700}.emojis{grid-template-columns:repeat(auto-fill,minmax(52px,1fr));gap:8px;display:grid}.emoji{border-radius:14px;min-height:52px;padding:4px;font-size:1.6rem}.emoji:disabled{opacity:.3;box-shadow:none;cursor:not-allowed;filter:grayscale();border-style:dashed}.emoji.on,.tab.on{background:var(--sun);transform:translate(var(--lift), var(--lift));box-shadow:0 0 0 var(--ink)}.list{flex-direction:column;gap:10px;display:flex}.row{text-align:left;--lift:4px;border-radius:20px;justify-content:space-between;gap:12px;width:100%;padding:12px 14px}.row-main{overflow-wrap:anywhere;flex-direction:column;gap:2px;min-width:0;display:flex}.row-main strong{font:800 1.3rem var(--display);letter-spacing:-.02em}.row-main small{color:var(--muted);flex-wrap:wrap;align-items:center;gap:4px;font-size:.82rem;font-weight:500;display:flex}.row-side{color:var(--violet);white-space:nowrap;flex:none;font-weight:800}.go{background:var(--tangerine);border:var(--line);border-radius:50%;flex:0 0 44px;justify-content:center;align-items:center;height:44px;display:flex}.row-wrap{align-items:stretch;gap:10px;display:flex}.row-wrap .row{flex:1;min-width:0}.icon-btn{border-radius:16px;flex:0 0 52px;padding:0}.icon-btn.small{flex:0 0 44px;min-height:44px}.mini{background:var(--surface);border:var(--line);border-radius:16px;justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;display:flex}.mini>span{align-items:center;gap:6px;min-width:0;font-weight:700;display:flex}.mini>strong{flex:none}.mini strong{font:800 1.35rem var(--display)}.tops-head{justify-content:space-between;align-items:center;gap:12px;margin:16px 0 2px;display:flex}.tops-head h2{margin:0}.tops-head .tabs{flex:none;grid-template-columns:auto auto;margin:0}.tops-head .tab{min-height:44px;padding:6px 12px;font-size:.88rem}.tops,.top-row>span{gap:8px}.top-row .rank{flex:none;width:28px;height:28px;font-size:.85rem}.top-row.first{background:var(--sun)}.links{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:16px;display:grid}.links button{font:800 1rem var(--display);letter-spacing:-.01em;border-radius:14px;padding:6px}.tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:4px;display:grid}.tabs.two{grid-template-columns:repeat(2,minmax(0,1fr))}.tab{border-radius:14px;padding:8px 4px;font-size:.92rem}.score-row{background:var(--surface);border:var(--line);border-radius:18px;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 14px;display:grid}.score-row.first{background:var(--sun)}.score-row .name{flex-direction:column;min-width:0;display:flex}.score-row .name>span{align-items:center;gap:4px;min-width:0;font-weight:700;display:flex}.score-row small{color:var(--muted);font-size:.8rem}.score-row.first small{color:var(--ink)}.score-row strong{font:800 1.6rem var(--display)}.score-row.away{opacity:.65}.rank{border:var(--line);background:var(--surface);width:32px;height:32px;font:800 .95rem var(--display);border-radius:50%;justify-content:center;align-items:center;display:flex}.confirm{background:var(--surface);border:2px solid var(--danger);box-shadow:4px 4px 0 var(--danger);border-radius:18px;padding:12px 14px 4px}.confirm p{margin:0;font-weight:700}.confirm .row-buttons{margin:10px 0 8px}.ends{justify-content:space-between;align-items:flex-start;gap:8px;min-height:calc(3.312rem + 12px);margin-top:4px;display:flex}.end{border:var(--line);border-radius:999px;align-items:center;gap:2px;max-width:48%;padding:4px 10px;font-size:.92rem;font-weight:700;line-height:1.2;display:inline-flex}.end .icon{width:14px;height:14px}.end.left{background:var(--sky)}.end.right{background:var(--peach);text-align:right}.card-face{flex-direction:column;gap:12px;display:flex}.dial-host{-webkit-user-select:none;user-select:none;width:100%;position:relative}.dial-grab{touch-action:none;cursor:grab;position:absolute;inset:0}.dial{width:100%;height:auto;display:block;overflow:visible}.dial .face{fill:var(--surface);stroke:var(--ink);stroke-width:3px;stroke-linejoin:round}.dial .zone{stroke:var(--ink);stroke-width:2px;stroke-linejoin:round}.dial .zone.z2{fill:var(--sun)}.dial .zone.z3{fill:var(--tangerine)}.dial .zone.z4{fill:var(--violet)}.dial .needle{stroke:var(--ink);stroke-width:7px;stroke-linecap:round}.dial .hub{fill:var(--ink)}.dial .hub-dot{fill:var(--sun)}.dial .marker{text-anchor:middle;dominant-baseline:middle;font-size:16px}.dial .cover{fill:var(--surface);stroke:var(--ink);stroke-width:3px;stroke-linejoin:round}.dial .bonus-chip{fill:var(--mint);stroke:var(--ink);stroke-width:2px}.dial .bonus-shadow{fill:var(--ink)}.dial .bonus-text{font:700 12.5px var(--body);fill:var(--ink);text-anchor:middle;dominant-baseline:middle}.row-buttons{gap:10px;margin:8px 0;display:flex}.row-buttons button{flex:1}[data-hold=peek],[data-act=redraw]{touch-action:none}.score{justify-content:center;align-items:center;gap:12px;margin:10px 0 4px;font-size:1.1rem;font-weight:700;display:flex}.badge{background:var(--violet);color:#fff;border:3px solid var(--ink);min-width:80px;height:80px;box-shadow:var(--shadow);font:800 2.9rem/1 var(--display);border-radius:40px;justify-content:center;align-items:center;padding:0 12px;display:inline-flex;transform:rotate(-4deg)}.badge.s0{background:var(--surface);color:var(--ink)}.badge.clue{background:var(--mint);color:var(--ink);font-size:2.1rem}.badge-box{display:inline-flex;position:relative}.burst{z-index:0;width:0;height:0;position:absolute;top:50%;left:50%}.badge-box .badge{z-index:1;position:relative}.bonuses{flex-wrap:wrap;justify-content:center;gap:10px;margin:8px 0 0;display:flex}.chip{border:var(--line);box-shadow:var(--shadow-sm);border-radius:12px;align-items:center;gap:6px;padding:6px 12px;font-size:.92rem;font-weight:700;display:inline-flex}.chip.sun{background:var(--sun);transform:rotate(-3deg)}.chip.mint{background:var(--mint);transform:rotate(3deg)}.toast{left:50%;top:calc(14px + env(safe-area-inset-top));z-index:25;background:var(--mint);max-width:90vw;color:var(--ink);border:var(--line);box-shadow:var(--shadow);border-radius:16px;padding:12px 18px;font-weight:700;position:fixed;transform:translate(-50%)}footer:has(.howto-btn){flex-direction:column;align-items:center;gap:12px}footer:has(.howto-btn) button{flex:none;width:100%}#app:has(.howto-btn){padding-bottom:calc(200px + env(safe-area-inset-bottom))}.howto-btn{background:var(--surface);font:800 1.2rem var(--display);letter-spacing:-.01em}.howto-lead{color:var(--muted);margin:0;font-size:1.1rem}main>.step p{margin:0;font-size:1.08rem;line-height:1.5}main>.step .num{flex-basis:36px;height:36px;font-size:1.05rem}.app-clone{z-index:14;pointer-events:none;flex-direction:column;max-width:520px;min-height:100dvh;margin:0 auto;padding:0 20px;display:flex;position:fixed;left:0;right:0}.app-clone,.app-clone *{animation:none!important}#app.in-transition{z-index:auto}#app.in-transition>footer{z-index:17;background:0 0}.app-clone-footer{z-index:17;pointer-events:none;background:0 0}.footer-fade{z-index:16;background:var(--footer-fade);transform-origin:bottom;pointer-events:none;position:fixed;bottom:0;left:0;right:0}.app-clone-footer,.app-clone-footer *{animation:none!important}.field-ghost{z-index:18;background:var(--surface);border:var(--line);pointer-events:none;visibility:hidden;position:fixed}.hero-ghost.under-footer{z-index:15}.hero-ghost{z-index:19;box-sizing:border-box;pointer-events:none;margin:0;padding:0;position:fixed}.hero-box{white-space:nowrap;border-style:solid;grid-template:minmax(0,1fr)/minmax(0,1fr);place-items:center;display:grid;overflow:hidden}.hero-label{white-space:pre;grid-area:1/1;align-items:center;line-height:1.2;display:inline-flex}.hero-label .tail{white-space:pre;display:inline-block}@keyframes flicker{0%,to{transform:scale(1)rotate(-3deg)}50%{transform:scale(1.15)rotate(4deg)}}@keyframes zones-in{0%{opacity:0;transform:scale(.2)}70%{opacity:1;transform:scale(1.08)}to{opacity:1;transform:scale(1)}}@keyframes thunk{0%{transform:rotate(0)}30%{transform:rotate(-6deg)}65%{transform:rotate(3deg)}to{transform:rotate(0)}}@keyframes badge-pop{0%,30%{opacity:0;transform:scale(.2)rotate(-20deg)}70%{opacity:1;transform:scale(1.25)rotate(6deg)}to{opacity:1;transform:rotate(-4deg)}}@keyframes sticker{0%,50%{opacity:0;scale:.4}80%{opacity:1;scale:1.12}to{opacity:1;scale:1}}@keyframes burst{0%,30%{opacity:0;transform:translate(0)scale(.4)}40%{opacity:1}to{opacity:0;transform:translate(var(--dx), var(--dy)) rotate(220deg)}}.flame{transform-origin:50% 90%;animation:.9s ease-in-out infinite flicker}[data-celebrate]:not(.celebrate) .zones,[data-celebrate]:not(.celebrate) .badge,[data-celebrate]:not(.celebrate) .chip,[data-celebrate]:not(.celebrate) .marker{visibility:hidden}.celebrate .marker{transform-box:fill-box;transform-origin:50%;animation:marker-pop .4s var(--spring) .35s both}@keyframes marker-pop{0%{transform:scale(0)}to{transform:scale(1)}}.celebrate .zones{transform-box:view-box;transform-origin:150px 155px;animation:zones-in .45s var(--spring) .1s both}.celebrate .needle{transform-box:view-box;transform-origin:150px 155px;animation:.42s ease-in-out both thunk}.celebrate .badge{animation:badge-pop .9s var(--spring) both}.celebrate .chip{animation:sticker .9s var(--spring) both;animation-delay:calc(.35s + var(--i,0) * .12s)}.bit{border:var(--line);opacity:0;border-radius:3px;width:11px;height:11px;margin:-6px;position:absolute}.celebrate .bit{animation:1s cubic-bezier(.2,.7,.3,1) both burst}.bit.b1{--dx:-64px;--dy:-42px;background:var(--sun)}.bit.b2{--dx:58px;--dy:-46px;background:var(--mint);border-radius:50%}.bit.b3{--dx:-66px;--dy:26px;background:var(--tangerine)}.bit.b4{--dx:64px;--dy:30px;background:var(--violet);border-radius:50%}.bit.b5{--dx:4px;--dy:-70px;background:var(--tangerine)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}.bit{display:none}}.test-badge{top:calc(env(safe-area-inset-top,0px) + 3px);z-index:40;background:var(--ink);color:#fff;font:800 11px/1.4 var(--font-display,system-ui), sans-serif;letter-spacing:.08em;pointer-events:none;border-radius:999px;padding:1px 8px;position:fixed;left:50%;transform:translate(-50%)}
