html,body,#root{margin:0;width:100%;height:100%;background:radial-gradient(circle at 20% 20%,rgba(70,90,160,.35),transparent 30%),radial-gradient(circle at 80% 30%,rgba(120,60,180,.25),transparent 28%),radial-gradient(circle at 50% 80%,rgba(30,110,180,.18),transparent 35%),linear-gradient(180deg,#050712,#090d1e 45%,#04060c);overflow:hidden;font-family:Inter,system-ui,sans-serif;color:#fff}*{box-sizing:border-box}body{overscroll-behavior:none}.app-shell{width:100%;height:100%;position:relative}.scene-root,.celebration-layer,.completion-board{position:absolute;inset:0}.scene-root{width:100%;height:100%}.celebration-layer,.completion-board{pointer-events:none}.celebration-layer{z-index:14;overflow:hidden}.completion-board{z-index:13;display:grid;place-items:center;padding:120px 24px 140px}.hud,.puzzle-theme,.solution-pill,.completion-board__panel{position:absolute;z-index:10;background:#080c186b;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.1);border-radius:16px}.hud,.puzzle-theme,.completion-board{pointer-events:none}.hud{top:max(14px,env(safe-area-inset-top));left:max(14px,env(safe-area-inset-left));padding:14px 16px;max-width:min(90vw,320px)}.hud--player{min-width:236px}.hud-player__eyebrow{margin-bottom:8px;font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;color:#ffffff8f}.hud h1{margin:0 0 6px;font-size:1.25rem;line-height:1.1}.hud p{margin:0;opacity:.82;font-size:.92rem;line-height:1.35}.puzzle-theme{top:max(14px,env(safe-area-inset-top));left:50%;transform:translate(-50%);width:min(420px,calc(100vw - 40px));padding:12px 18px 14px;text-align:center}.puzzle-theme__eyebrow{font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;opacity:.66;margin-bottom:8px}.puzzle-theme__title{font-size:clamp(1.2rem,2.1vw,1.75rem);font-weight:800;letter-spacing:.01em;line-height:1.1;margin-bottom:8px}.puzzle-theme__timer{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-width:104px;padding:8px 16px;border-radius:999px;border:1px solid rgba(255,255,255,.08);background:#ffffff08}.puzzle-theme__timer-label{font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:#ffffff94}.puzzle-theme__timer-value{display:inline-block;min-width:4.2ch;text-align:center;font-size:1rem;font-weight:800;letter-spacing:.08em}.solution-strip{position:absolute;left:50%;bottom:max(18px,env(safe-area-inset-bottom));transform:translate(-50%);z-index:11;width:min(920px,calc(100vw - 40px));display:flex;justify-content:center;gap:14px;flex-wrap:wrap}.solution-pill{position:static;min-width:calc(48px + (var(--pill-ch, 4) * .98ch) + 2.4rem);padding:14px 18px;border-radius:999px;text-align:center;font-size:1.05rem;font-weight:800;letter-spacing:.04em;color:#ffffffeb;border:1px solid rgba(255,255,255,.14);background:#080c1880;box-shadow:inset 0 1px #ffffff0a,0 8px 24px #00000040;transition:background .22s ease,border-color .22s ease,color .22s ease,transform .22s ease,box-shadow .22s ease,opacity .26s ease}.solution-pill span{display:inline-block;min-width:100%}.solution-pill.is-animating{border-color:#4affa347;box-shadow:0 0 0 1px #4affa329,0 10px 28px #081d1473;transform:translateY(-1px)}.solution-pill.is-found{background:linear-gradient(180deg,#16a96f57,#09583c57);border-color:#4affa35c;color:#fff;box-shadow:0 0 0 1px #4affa31f,0 12px 30px #04120c57}.celebration-token{position:absolute;left:0;top:0;width:58px;height:58px;margin-left:-29px;margin-top:-29px;display:grid;place-items:center;font-weight:900;font-size:2.8rem;line-height:1;letter-spacing:.01em;color:#fff;text-shadow:0 4px 14px rgba(5,22,16,.46),0 0 14px rgba(60,243,160,.12);transform:translate(var(--x0),var(--y0)) rotate(var(--rot)) scale(var(--scale0));animation-name:tokenFlyToPill;animation-timing-function:cubic-bezier(.22,1,.36,1);animation-fill-mode:forwards}@keyframes tokenFlyToPill{0%{opacity:0;transform:translate(var(--x0),var(--y0)) rotate(var(--rot)) scale(calc(var(--scale0) * .86))}8%{opacity:1;transform:translate(var(--x0),calc(var(--y0) - 14px)) rotate(calc(var(--rot) * .78)) scale(var(--scale0))}58%{opacity:1;transform:translate(calc(var(--x0) + ((var(--x1) - var(--x0)) * .72)),calc(var(--y0) + ((var(--y1) - var(--y0)) * .48) - 32px)) rotate(calc(var(--rot) * .14)) scale(calc((var(--scale0) * .54) + (var(--scale1) * .46)))}to{opacity:0;transform:translate(var(--x1),var(--y1)) rotate(0) scale(var(--scale1))}}.completion-board__panel{position:relative;min-width:min(420px,calc(100vw - 56px));padding:20px 22px 22px;border-radius:24px;background:#080c188f;border:1px solid rgba(103,255,184,.16);box-shadow:0 24px 60px #00000059,0 0 0 1px #67ffb80f;animation:completionRise .54s cubic-bezier(.22,1,.36,1) both}.completion-board__eyebrow{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:#ffffff8f;margin-bottom:8px}.completion-board__title{font-size:1.5rem;font-weight:800;margin-bottom:8px}.completion-board__time{font-size:.95rem;color:#ffffffc2;margin-bottom:16px}.completion-board__column{display:grid;gap:10px}.completion-board__pill{min-width:0;width:100%}@keyframes completionRise{0%{opacity:0;transform:translateY(20px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:900px){.puzzle-theme{top:88px;width:min(360px,calc(100vw - 28px));padding:10px 14px 12px}.solution-strip{width:min(92vw,720px);bottom:18px}}@media(max-width:640px){.hud{top:max(8px,env(safe-area-inset-top));left:max(8px,env(safe-area-inset-left));padding:10px 12px;max-width:min(66vw,250px);border-radius:14px}.hud--player{min-width:0}.hud-player__eyebrow{margin-bottom:5px;font-size:.58rem}.hud h1{font-size:.98rem;margin-bottom:4px}.hud p{font-size:.74rem;line-height:1.22}.puzzle-theme{top:calc(max(8px,env(safe-area-inset-top)) + 8px);left:auto;right:max(8px,env(safe-area-inset-right));transform:none;width:min(52vw,228px);padding:8px 10px 10px;border-radius:14px}.puzzle-theme__eyebrow{margin-bottom:4px;font-size:.52rem}.puzzle-theme__title{font-size:.96rem;margin-bottom:7px}.puzzle-theme__timer{gap:8px;padding:6px 10px}.puzzle-theme__timer-label{font-size:.58rem}.puzzle-theme__timer-value{font-size:.86rem}.solution-strip{width:calc(100vw - 16px);bottom:max(10px,env(safe-area-inset-bottom));gap:8px}.solution-pill{min-width:calc(38px + (var(--pill-ch, 4) * .88ch) + 1.4rem);padding:10px 12px;font-size:.88rem}.completion-board{padding:110px 16px 120px}.completion-board__panel{min-width:min(340px,calc(100vw - 32px));padding:16px;border-radius:20px}.completion-board__title{font-size:1.2rem}}@media(max-width:700px){.hud--player{display:none}.puzzle-theme{top:calc(max(10px,env(safe-area-inset-top)) + 2px);width:min(430px,calc(100vw - 28px));padding:10px 14px 12px;border-radius:18px}.puzzle-theme__eyebrow{margin-bottom:6px;font-size:.7rem}.puzzle-theme__title{font-size:clamp(1.08rem,5.6vw,1.6rem);margin-bottom:6px}.puzzle-theme__timer{min-width:116px;padding:9px 18px;background:#ffffff0b;border-color:#ffffff1a;box-shadow:inset 0 1px #ffffff0a}.puzzle-theme__timer-value{font-size:1.1rem;letter-spacing:.1em}.scene-root{inset:calc(max(10px,env(safe-area-inset-top)) + 110px) 0 calc(max(18px,env(safe-area-inset-bottom)) + 138px) 0}.solution-strip{width:calc(100vw - 28px);bottom:calc(max(14px,env(safe-area-inset-bottom)) + 4px);gap:12px 10px;padding:0 4px}.solution-pill{min-width:calc(42px + (var(--pill-ch, 4) * 1.02ch) + 2rem);padding:13px 16px;font-size:.96rem;border-color:#fff3;background:#080c1894;box-shadow:inset 0 1px #ffffff0d,0 10px 26px #0000003d}.solution-pill.is-found{border-color:#4affa36b}.completion-board{padding:108px 16px 132px}}
