@font-face{font-family:Lilita One;src:url(/assets/LilitaOne-Regular-DWEPn4H6.ttf)format("truetype");font-display:swap;font-weight:400}@font-face{font-family:Inter;src:url(/assets/Inter-VF2RPR_K.ttf)format("truetype");font-display:swap;font-weight:100 900}:root{--giga-bg:#090b17;--giga-panel:#18172ce0;--giga-white:#fff;--giga-muted:#b8b5d0;--giga-violet:#8b5cf6;--giga-lime:#a3e635;--giga-border:#ffffff21;--giga-radius:24px;--giga-display:"Lilita One",sans-serif;--giga-body:Inter,sans-serif;--giga-shadow:0 24px 80px #0006;color:var(--giga-white);font-family:var(--giga-body);background:var(--giga-bg);font-synthesis:none}*{box-sizing:border-box}body{margin:0}button{font:inherit;cursor:pointer;touch-action:manipulation}button:focus-visible{outline:3px solid var(--giga-lime);outline-offset:4px}.giga-panel{background:var(--giga-panel);border:1px solid var(--giga-border);border-radius:var(--giga-radius);box-shadow:var(--giga-shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);padding:28px}.giga-title{font-family:var(--giga-display);margin:0;font-weight:400;line-height:.95}.giga-number{font-variant-numeric:tabular-nums;color:#fff;font-weight:900}.giga-button{color:#151126;background:var(--giga-lime);border:0;border-radius:16px;justify-content:center;align-items:center;min-height:52px;padding:12px 25px;font-weight:800;display:inline-flex}.giga-secondary{color:#fff;border:1px solid var(--giga-border);background:#ffffff12}.giga-safe{padding:max(18px,env(safe-area-inset-top)) max(18px,env(safe-area-inset-right)) max(18px,env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left))}.giga-screen{text-align:center;width:100%;max-width:360px}.giga-screen p{color:var(--giga-muted);line-height:1.6}.giga-screen .giga-title{font-size:56px}.giga-screen .small{font-size:38px}.giga-screen em{color:var(--giga-lime);font-style:normal}.giga-screen .eyebrow{letter-spacing:2px;color:#c9b5ff;font-size:10px}.giga-screen .giga-button{width:100%}.giga-screen .text-button{color:#c9b5ff;background:0 0;border:0;margin:14px auto 0;display:block}.giga-screen .result-score{font-size:64px;display:block}.giga-hud{justify-content:space-between;align-items:center;gap:16px;display:flex}.giga-hud span{color:var(--giga-muted);display:block}.giga-hud .giga-number{font-size:32px}@font-face{font-family:Fraunces;src:url(/assets/fraunces-CRvvDN8A.ttf)format("truetype");font-weight:100 900;font-display:swap}:root{--cream:#f8f0e1;--cream-hi:#fffaf0;--cream-lo:#eadcc3;--line:#7a5c384d;--ink:#3b2f24;--muted:#7b6a58;--charcoal:#2e2925;--charcoal-hi:#453d36;--gold:#b9853a;--gold-hi:#e2b465;--red:#b8242c;--serif:"Fraunces", Georgia, serif;--shadow:0 10px 28px #301a0647, 0 2px 6px #301a062e}html,body{height:100%}body{color:var(--ink);overscroll-behavior:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;background:#6b4a2c;margin:0;overflow:hidden}#app{position:fixed;inset:0;overflow:hidden}#board{touch-action:none;transition:filter .25s;display:block;position:absolute;inset:0}#app.paused #board{filter:blur(14px)saturate(.8)brightness(.92)}[hidden]{display:none!important}button{font-family:Inter,sans-serif}.hud{left:50%;top:max(8px, env(safe-area-inset-top));border:1px solid var(--line);width:min(100% - 14px,720px);height:48px;box-shadow:var(--shadow);box-sizing:border-box;background:linear-gradient(#fffaf0f2,#f4e9d6f2);border-radius:14px;grid-template-columns:auto 1fr auto auto;align-items:center;padding:0 6px 0 12px;display:grid;position:absolute;transform:translate(-50%)}.hud .cell{align-items:center;gap:6px;height:30px;padding:0 10px;display:flex}.hud .cell+.cell{border-left:1px solid var(--line)}.hud svg{width:19px;height:19px;color:var(--ink)}.hud strong{font-family:var(--serif);font-variant-numeric:tabular-nums;color:var(--ink);font-weight:700}.hud .time{padding-left:0}.hud .time strong{min-width:50px;font-size:22px}.hud .time.warn strong,.hud .time.warn svg{color:var(--red)}.hud .score{justify-content:center}.hud .score .label{font-family:var(--serif);color:var(--muted);font-size:15px}.hud .score strong{font-size:22px;transition:transform .12s}.hud .score strong.pop{transform:scale(1.12)}.hud .home{color:var(--muted);border:1px solid var(--line);font-variant-numeric:tabular-nums;white-space:nowrap;background:#00000008;border-radius:999px;align-items:baseline;gap:4px;margin-left:2px;padding:2px 8px;font:700 11px Inter,sans-serif;display:inline-flex}.hud .home b{color:var(--ink);font-weight:800}.hud .home small{color:var(--muted);font:600 10.5px Inter,sans-serif}.hud .streak i{background:#cdbb9c;border-radius:50%;width:8px;height:8px;transition:background .2s;box-shadow:inset 0 1px 1px #0002}.hud .streak i.on{background:radial-gradient(circle at 35% 35%, #ffe3a3, var(--gold));box-shadow:0 0 6px #e8b45c}.hud .streak span{font:800 13px var(--serif);color:var(--gold);min-width:22px}.hud .icon{border:1px solid var(--line);background:var(--cream-hi);border-radius:10px;place-items:center;width:36px;height:36px;margin-left:4px;display:grid;box-shadow:inset 0 1px #fff}.hud .icon svg{width:16px;height:16px;fill:var(--ink)}@media (max-width:420px){.hud{height:46px;padding:0 4px 0 8px}.hud .cell{gap:4px;padding:0 7px}.hud .time strong,.hud .score strong{font-size:19px}.hud .time strong{min-width:42px}.hud .score{grid-template-rows:auto auto;grid-template-columns:auto auto;justify-content:center;align-items:end;gap:0 8px;height:38px;display:grid}.hud .score .label{letter-spacing:1.2px;text-transform:uppercase;grid-area:1/1;font:700 9px/1 Inter,sans-serif}.hud .score strong{grid-area:2/1;line-height:1.05}.hud .home{border-radius:9px;flex-direction:column;grid-area:1/2/3;align-self:center;align-items:center;gap:0;margin:0;padding:2px 7px 3px}.hud .home b{font-size:13px;line-height:1.1}.hud .home small{letter-spacing:.9px;text-transform:uppercase;font:700 7.5px/1.1 Inter,sans-serif}.hud .streak i{width:7px;height:7px}}.bar{left:50%;bottom:max(10px, env(safe-area-inset-bottom));justify-content:space-between;gap:8px;width:min(100% - 14px,720px);display:flex;position:absolute;transform:translate(-50%)}.bar button,.confirm button{height:50px;box-shadow:var(--shadow);cursor:pointer;border-radius:14px;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-size:17px;font-weight:700;transition:transform 80ms,opacity .2s;display:inline-flex}.bar button:active,.confirm button:active{transform:translateY(1px)scale(.98)}.bar svg,.confirm svg{width:21px;height:21px}.soft{color:var(--ink);border:1px solid var(--line);background:linear-gradient(#fffaf0,#f1e5cf);font-family:var(--serif)!important}.dark{background:linear-gradient(var(--charcoal-hi), var(--charcoal));color:#fbf3e4;border:1px solid #00000040;font-family:var(--serif)!important}.bar #undo{flex:1.1}.bar #hint{flex:.9}.bar #finish{flex:1.3}.bar button:disabled{opacity:.45;cursor:default}.badge{background:var(--charcoal);color:var(--cream);border-radius:999px;padding:2px 8px;font:800 12px Inter,sans-serif}@media (max-width:420px){.bar button{gap:6px;height:48px;padding:0 10px;font-size:16px}}.confirm{left:50%;bottom:calc(max(10px, env(safe-area-inset-bottom)) + 62px);background:var(--cream-hi);border:1px solid var(--line);width:min(100% - 28px,360px);box-shadow:var(--shadow);box-sizing:border-box;text-align:center;border-radius:16px;padding:14px;animation:.18s ease-out rise;position:absolute;transform:translate(-50%)}.confirm p{font:600 16px var(--serif);color:var(--ink);margin:2px 0 12px}.confirm div{gap:8px;display:flex}.confirm button{flex:1;height:46px;font-size:16px}@keyframes rise{0%{opacity:0;transform:translate(-50%,8px)}}.banner{border:1px solid var(--line);box-shadow:var(--shadow);text-align:center;pointer-events:none;background:linear-gradient(#fffaf0f5,#f3e6cff5);border-radius:18px;min-width:220px;padding:14px 24px;animation:.35s cubic-bezier(.2,1.4,.4,1) banner;position:absolute;top:36%;left:50%;transform:translate(-50%,-50%)}.banner b{font:800 26px var(--serif);color:var(--ink);display:block}.banner span{font:700 16px var(--serif);color:var(--gold);font-variant-numeric:tabular-nums;margin-top:4px;display:block}@keyframes banner{0%{opacity:0;transform:translate(-50%,-40%)scale(.85)}}.demo-pill{left:50%;bottom:calc(max(10px, env(safe-area-inset-bottom)) + 60px);letter-spacing:1.5px;color:var(--cream);background:#2e2925b0;border-radius:6px;padding:5px 8px;font:800 10px Inter,sans-serif;position:absolute;transform:translate(-50%)}#screens:empty{display:none}#screens{box-sizing:border-box;background:radial-gradient(at 50% 40%,#2a170800,#2a170866);place-items:center;padding:16px;display:grid;position:absolute;inset:0}#screens[data-screen=title]{background:linear-gradient(#2a170800 55%,#2a170833);align-items:start;padding-top:max(6vh,30px)}#screens .giga-panel{border:1px solid var(--line);box-shadow:var(--shadow);color:var(--ink);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:linear-gradient(#fffaf0f7,#f3e6cff7);border-radius:22px}#screens[data-screen=title] .giga-panel{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;max-width:520px;padding:0 8px}#screens .giga-title{font-family:var(--serif);color:var(--ink);font-weight:800}#screens .giga-screen p{color:var(--muted);font-family:var(--serif);font-size:15px}#screens .eyebrow{letter-spacing:2px;color:var(--gold)!important;font:800 10px Inter,sans-serif!important}#screens .giga-button{background:linear-gradient(var(--charcoal-hi), var(--charcoal));color:#fbf3e4;font:700 19px var(--serif);box-shadow:var(--shadow);border-radius:16px;min-height:56px}#screens .giga-button:focus-visible,#screens .text-button:focus-visible{outline:3px solid var(--gold-hi)}#screens .text-button{font:600 15px var(--serif);text-underline-offset:3px;text-decoration:underline;color:var(--ink)!important}#screens .result-score{font-family:var(--serif);color:var(--ink);font-size:58px}.logo{filter:drop-shadow(0 4px 10px #3c1e048c);width:min(92%,440px);margin:0 auto 4px;display:block}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}.tagline{text-shadow:0 2px 8px #281402cc;font:italic 600 19px var(--serif)!important;color:#fff8ea!important;margin:0 0 18px!important}#screens[data-screen=title] .giga-button{width:min(100%,320px)}#screens[data-screen=title] .text-button{text-shadow:0 1px 6px #000a;color:#fff8ea!important}.toggles{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:14px;display:flex}.toggles button{color:var(--ink);border:1px solid var(--line);cursor:pointer;background:#fffaf0e8;border-radius:999px;padding:8px 12px;font:600 13px Inter,sans-serif}.toggles button[aria-pressed=false]{opacity:.6;text-decoration:line-through}.rules{text-align:left;border-collapse:collapse;width:100%;font:15px var(--serif);color:var(--ink);margin:6px 0 14px}.rules td{border-bottom:1px dashed var(--line);padding:5px 4px}.rules td:last-child{text-align:right;color:var(--gold);white-space:nowrap;font-weight:800}.breakdown{border-collapse:collapse;width:100%;font:15px var(--serif);color:var(--ink);margin:2px 0 8px}.breakdown td{border-bottom:1px dashed var(--line);padding:4px 2px}.breakdown td:last-child{text-align:right;font-variant-numeric:tabular-nums;font-weight:800}.breakdown tr.minus td:last-child{color:var(--red)}.timeline{width:100%;height:86px;margin:4px 0 2px}.legend{color:var(--muted);justify-content:center;gap:14px;margin-bottom:8px;font:600 12px Inter,sans-serif;display:flex}.legend i{vertical-align:middle;background:var(--gold);border-radius:2px;width:16px;height:3px;margin-right:5px;display:inline-block}.legend i.best{border-top:2px dashed var(--charcoal);background:0 0;height:0}#screens[data-screen=results] .giga-panel{max-width:380px;max-height:calc(100vh - 40px);padding:22px 22px 18px;overflow:auto}#screens[data-screen=results] .giga-title{font-size:34px}.contest .best-line{display:none}.short .bar{left:var(--bar-x);top:var(--bar-y);width:var(--bar-w);height:min(calc(var(--bar-h) - 4px), 100px);grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr;gap:6px;display:grid;bottom:auto;transform:none}.short .bar button{white-space:nowrap;border-radius:11px;gap:4px;min-width:0;height:auto;min-height:0;padding:0 4px;font-size:14px}.short .bar #finish{grid-column:1/-1}.short .bar:has(#hint[hidden]) #undo{grid-column:1/-1}.short .bar #undo svg,.short .bar #hint svg{display:none}.short .bar svg{width:16px;height:16px}.short .bar .badge{padding:1px 6px;font-size:11px}.short .hud{height:42px}.short .confirm{top:60px;bottom:auto}.short .demo-pill{top:auto;bottom:10px;left:12px;transform:none}.refuse{border:1px solid var(--line);max-width:340px;box-shadow:var(--shadow);text-align:center;background:linear-gradient(#fffaf0f2,#f3e6cff2);border-radius:16px;gap:6px;margin:4px auto 0;padding:14px 16px;display:grid}.refuse b{font:800 18px var(--serif);color:var(--ink)}.refuse span{font:500 14px var(--serif);color:var(--muted)}#screens[data-screen=title] .refuse .text-button{text-shadow:none;color:var(--ink)!important}.legend i.them{background:var(--charcoal)}.waiting{justify-content:center;align-items:center;gap:8px;display:flex;font:600 13px var(--serif)!important;color:var(--muted)!important;margin:0 0 10px!important}.waiting .dots{gap:3px;display:inline-flex}.waiting .dots i{background:var(--gold);border-radius:50%;width:5px;height:5px;animation:1.2s ease-in-out infinite wait}.waiting .dots i:nth-child(2){animation-delay:.15s}.waiting .dots i:nth-child(3){animation-delay:.3s}@keyframes wait{0%,80%,to{opacity:.25;transform:translateY(0)}40%{opacity:1;transform:translateY(-2px)}}#screens[data-screen=title] .eyebrow{text-shadow:0 1px 2px #1e0e02e6,0 0 10px #1e0e02b3;color:#ffe2a3!important}
