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}:root{--player-one: #4affA3;--player-one-rgb: 74, 255, 163;--player-two: #ff5cc4;--player-two-rgb: 255, 92, 196;--hud-row-height: 148px;--dock-row-height: 104px}button{font:inherit}.app-root-shell{position:relative;width:100%;height:100%}.app-shell{position:relative;width:100%;height:100%;display:grid;grid-template-rows:var(--hud-row-height) minmax(0,1fr) var(--dock-row-height);gap:16px;padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,calc(env(safe-area-inset-bottom) + 8px)) max(12px,env(safe-area-inset-left))}.app-shell.is-intro .top-hud-row,.app-shell.is-intro .solution-dock,.app-shell.is-intro .close-game-button{opacity:0;pointer-events:none;transform:translateY(10px)}.top-hud-row,.solution-dock,.close-game-button{transition:opacity .36s ease,transform .42s ease,filter .42s ease}.app-shell.is-exiting .top-hud-row,.app-shell.is-exiting .solution-dock,.app-shell.is-exiting .close-game-button{opacity:0;transform:translateY(10px);filter:blur(4px);pointer-events:none}.app-shell.is-completion-resolving .solution-dock{opacity:0;transform:translateY(8px) scale(.985);filter:blur(3px)}.app-shell.is-completion-resolving .top-hud-row{transform:translateY(-2px)}.app-shell.is-completion-resolving .puzzle-theme__timer,.app-shell.is-completion-resolving .puzzle-theme__mode-note{opacity:0;transform:translateY(-8px) scale(.96)}.top-hud-row{position:relative;z-index:10;display:grid;grid-template-columns:minmax(236px,320px) minmax(320px,420px) minmax(236px,320px);align-items:start;justify-content:center;gap:18px;min-height:var(--hud-row-height);height:var(--hud-row-height);padding-inline:58px}.top-hud-row>.hud,.top-hud-row>.puzzle-theme,.top-hud-row>.hud-spacer{width:100%;min-width:0;max-width:none}.scene-root,.celebration-layer,.completion-board,.completion-flight-layer{position:absolute;inset:0}.play-stage{position:relative;min-height:0;overflow:hidden;border-radius:28px}.scene-root{position:relative;inset:auto;width:100%;height:100%;touch-action:none}.scene-root canvas{display:block;width:100%;height:100%;touch-action:none}.solution-dock{position:relative;z-index:11;display:flex;justify-content:center;align-items:center;min-height:var(--dock-row-height);pointer-events:none;transition:opacity .28s ease,transform .34s ease}.solution-dock.is-hidden{opacity:0;transform:translateY(12px)}.solution-strip{pointer-events:none;width:min(980px,100%);display:flex;justify-content:center;gap:10px 12px;flex-wrap:wrap;padding:10px 12px 12px;border-radius:24px;background:linear-gradient(180deg,#030814c7,#0408129e);border:1px solid rgba(255,255,255,.08);box-shadow:inset 0 1px #ffffff0a,0 16px 40px #00000047}.celebration-layer,.completion-board,.completion-flight-layer{pointer-events:none}.completion-board__panel,.completion-board__actions,.completion-board__action{pointer-events:auto}.celebration-layer{z-index:14;overflow:hidden}.completion-flight-layer{z-index:15;overflow:hidden}.completion-board{z-index:13;display:grid;place-items:center;padding:120px 24px 140px}.app-shell.is-completion-resolving .completion-board{pointer-events:none}.hud,.puzzle-theme,.solution-pill,.completion-board__panel,.close-game-button,.menu-panel,.menu-button{background:#080c186b;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.1)}.hud,.puzzle-theme,.solution-pill,.completion-board__panel,.close-game-button,.menu-panel,.menu-button{border-radius:16px}.hud{--player-accent: rgba(255,255,255,.18);--player-accent-rgb: 255, 255, 255;--player-glow-rgb: 255, 255, 255;position:relative;overflow:hidden;padding:14px 16px;max-width:min(90vw,320px);text-align:left;color:inherit}.hud:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:linear-gradient(180deg,rgba(var(--player-accent-rgb),.96),rgba(var(--player-accent-rgb),.38));opacity:.72}.hud:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 0% 0%,rgba(var(--player-accent-rgb),.12),transparent 42%);opacity:.7;pointer-events:none}.hud--player{min-width:236px;min-height:112px}.hud--player-one{--player-accent: var(--player-one);--player-accent-rgb: var(--player-one-rgb);--player-glow-rgb: 14, 38, 28;text-align:left}.hud--player-two{--player-accent: var(--player-two);--player-accent-rgb: var(--player-two-rgb);--player-glow-rgb: 42, 10, 34;text-align:right}.hud--player-two:before{inset:0 0 0 auto}.hud--player-two:after{background:radial-gradient(circle at 100% 0%,rgba(var(--player-accent-rgb),.12),transparent 42%)}.hud--score{position:relative;display:grid;gap:6px;overflow:hidden}.hud-spacer{min-width:236px;visibility:hidden}.hud--player-placeholder{visibility:hidden;pointer-events:none}.hud--player-placeholder:before,.hud--player-placeholder:after{opacity:0}.hud-player__eyebrow{position:relative;z-index:1;margin-bottom:8px;font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;color:#ffffff8f}.hud-score__value{position:relative;z-index:1;font-size:clamp(2rem,4vw,3rem);font-weight:900;line-height:.94;letter-spacing:-.03em;text-shadow:0 10px 26px rgba(var(--player-accent-rgb),.14);animation:scorePulse .42s cubic-bezier(.22,1,.36,1)}.hud-score__meta{position:relative;z-index:1;font-size:.82rem;color:#ffffff8f;letter-spacing:.04em}.hud--player-right{justify-self:stretch}.hud.is-active-claim{border-color:rgba(var(--player-accent-rgb),.64);background:linear-gradient(180deg,#081418cc,#09111aad);box-shadow:0 0 0 1px rgba(var(--player-accent-rgb),.18),0 22px 46px rgba(var(--player-glow-rgb),.46);transform:translateY(-1px)}.hud.is-idle-claim{opacity:.72;filter:saturate(.8)}.hud.is-active-claim .hud-player__eyebrow,.hud.is-active-claim .hud-score__meta{color:#fffc}.puzzle-theme{justify-self:center;width:min(460px,100%);min-height:118px;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{max-width:18ch;margin:0 auto 8px;font-size:clamp(1.2rem,2.1vw,1.75rem);font-weight:800;letter-spacing:.01em;line-height:1.06;min-height:2.12em;text-wrap:balance}.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-value{display:inline-block;min-width:4.2ch;text-align:center;font-size:1rem;font-weight:800;letter-spacing:.08em}.puzzle-theme__mode-note{margin-top:6px;min-height:.9rem;font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;color:#ffffff7a}.solution-pill{min-width:calc(40px + (var(--pill-ch, 4) * .92ch) + 2rem);padding:11px 16px;border-radius:999px;text-align:center;font-size:.98rem;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%;white-space:nowrap}.hud-score__burst{position:absolute;right:18px;top:48px;z-index:2;font-size:.98rem;font-weight:900;letter-spacing:.04em;color:rgba(var(--player-accent-rgb),.98);text-shadow:0 0 18px rgba(var(--player-glow-rgb),.34);animation:hudScoreBurst .88s cubic-bezier(.22,1,.36,1) forwards;pointer-events:none}@keyframes hudScoreBurst{0%{opacity:0;transform:translateY(10px) scale(.86)}18%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-24px) scale(1.02)}}.claim-flash{position:absolute;left:50%;top:clamp(164px,21vh,228px);transform:translate(-50%);min-width:min(460px,calc(100vw - 64px));max-width:min(560px,calc(100vw - 64px));padding:14px 18px 16px;border-radius:22px;border:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,#0a1022eb,#060a16d1);box-shadow:0 24px 56px #00000057,inset 0 0 0 1px #ffffff0a;text-align:center;z-index:9;pointer-events:none;animation:claimFlashIn 1.72s cubic-bezier(.22,1,.36,1) forwards}.claim-flash:after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px rgba(var(--player-accent-rgb),.16);pointer-events:none}.claim-flash__eyebrow{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:#ffffff8f;margin-bottom:6px}.claim-flash__title{font-size:clamp(1.15rem,2vw,1.46rem);font-weight:900;letter-spacing:.01em;color:#fffffffa}.claim-flash__points{margin-top:6px;font-size:.92rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:rgba(var(--player-accent-rgb),.98)}.claim-flash--p1{--player-accent-rgb: 74,255,163;--player-glow-rgb: 74,255,163}.claim-flash--p2{--player-accent-rgb: 255,114,213;--player-glow-rgb: 255,114,213}@keyframes claimFlashIn{0%{opacity:0;transform:translate(-50%) translateY(14px) scale(.94)}10%{opacity:1;transform:translate(-50%) translateY(0) scale(1)}18%{opacity:1;transform:translate(-50%) translateY(-2px) scale(1.012)}76%{opacity:1;transform:translate(-50%) translateY(0) scale(1)}to{opacity:0;transform:translate(-50%) translateY(-10px) scale(.988)}}.solution-pill.is-just-claimed{animation:claimedPillPulse .82s cubic-bezier(.22,1,.36,1)}@keyframes claimedPillPulse{0%{transform:translateY(-2px) scale(1.02)}38%{transform:translateY(-4px) scale(1.06);box-shadow:0 0 0 1px #ffffff24,0 16px 36px #081d146b,0 0 22px #ffffff1f}to{transform:translateY(0) scale(1)}}.solution-pill.is-animating{border-color:#4affa357;box-shadow:0 0 0 1px #4affa32e,0 10px 28px #081d1473,0 0 22px #4affa329;transform:translateY(-2px) scale(1.02)}.solution-pill.is-found,.solution-pill.is-player-one{background:linear-gradient(180deg,#16a96f57,#09583c57);border-color:#4affa35c;color:#fff;box-shadow:0 0 0 1px #4affa31f,0 12px 30px #04120c57}.solution-pill.is-player-two,.completion-flight-pill.is-player-two{background:linear-gradient(180deg,#d84aaa57,#7e185c57);border-color:#ff72d56b;color:#fff;box-shadow:0 0 0 1px #ff72d51f,0 12px 30px #22081c57}.completion-flight-pill{position:absolute;left:0;top:0;display:inline-flex;align-items:center;justify-content:center;padding:0 18px;border-radius:999px;border:1px solid rgba(74,255,163,.36);background:linear-gradient(180deg,#16a96f57,#09583c57);color:#fff;font-size:.98rem;font-weight:800;letter-spacing:.04em;box-shadow:0 0 0 1px #4affa31f,0 12px 30px #04120c57;transform-origin:top left;transform:translate(var(--x0),var(--y0)) scale(1);animation:completionPillFly .62s cubic-bezier(.22,1,.36,1) forwards}.completion-flight-pill span{white-space:nowrap}@keyframes completionPillFly{0%{opacity:1;transform:translate(var(--x0),var(--y0)) scale(1)}62%{opacity:1;transform:translate(calc(var(--x0) + ((var(--x1) - var(--x0)) * .78)),calc(var(--y0) + ((var(--y1) - var(--y0)) * .7) - 10px)) scale(calc(1 + ((var(--scale-x) - 1) * .82)),calc(1 + ((var(--scale-y) - 1) * .82)))}to{opacity:0;transform:translate(var(--x1),var(--y1)) scale(var(--scale-x),var(--scale-y))}}@keyframes scorePulse{0%{opacity:.78;transform:translateY(5px) scale(.94)}55%{opacity:1;transform:translateY(0) scale(1.06)}to{opacity:1;transform:translateY(0) scale(1)}}.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(460px,calc(100vw - 56px));padding:20px 22px 22px;border-radius:24px;display:flex;flex-direction:column;gap:14px;box-shadow:0 30px 64px #02081366;animation:completionPanelIn .44s cubic-bezier(.22,1,.36,1) both}.completion-board__panel.is-closing{animation:completionPanelOut .22s cubic-bezier(.4,0,1,1) both}.completion-board__panel>*{animation:completionPanelSectionIn .48s cubic-bezier(.22,1,.36,1) both}.completion-board__panel>*:nth-child(1){animation-delay:50ms}.completion-board__panel>*:nth-child(2){animation-delay:105ms}.completion-board__panel>*:nth-child(3){animation-delay:155ms}.completion-board__panel>*:nth-child(4){animation-delay:215ms}.completion-board__panel>*:nth-child(5){animation-delay:.28s}.completion-board__panel>*:nth-child(6){animation-delay:.36s}.completion-board__panel.is-closing>*{animation:none}@keyframes completionPanelIn{0%{opacity:0;transform:translateY(18px) scale(.972)}60%{opacity:1;transform:translateY(-2px) scale(1.006)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes completionPanelOut{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(10px) scale(.986)}}@keyframes completionPanelSectionIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes footerBarIn{0%{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}.completion-board__eyebrow{font-size:.76rem;letter-spacing:.12em;text-transform:uppercase;color:#ffffff94}.completion-board__header{display:flex;align-items:end;justify-content:space-between;gap:16px}.completion-board__header--versus{align-items:start}.completion-board__title{font-size:clamp(1.7rem,4vw,2.3rem);font-weight:800;line-height:1;margin-bottom:8px}.completion-board__time{font-size:.98rem;color:#fffc}.completion-board__time-pill{align-self:center;display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:10px 18px;border-radius:999px;background:linear-gradient(180deg,#0f162ad6,#080c1abd);border:1px solid rgba(255,255,255,.08);box-shadow:inset 0 1px #ffffff0a,0 12px 28px #0003;font-size:.88rem;font-weight:700;letter-spacing:.08em;color:#ffffffdb;text-transform:uppercase}.completion-board__time-pill--centered{min-width:188px;animation:completionPanelSectionIn .5s cubic-bezier(.22,1,.36,1) both;animation-delay:.16s}.completion-board__score-block{display:grid;justify-items:end;align-content:start;gap:4px;padding-bottom:2px}.completion-board__score-block--single .completion-board__score-value{font-size:clamp(2.4rem,5vw,3.4rem)}.completion-board__score-block--column{justify-items:end;padding-bottom:0}.completion-board__score-block--column.is-left{justify-items:start}.completion-board__score-block--column.is-right{justify-items:end}.completion-board__score-value{font-size:clamp(2rem,4vw,3rem);font-weight:900;line-height:.94;letter-spacing:-.03em}.completion-board__columns{display:grid;gap:14px}.completion-board__columns--versus{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.completion-board__player-column{display:grid;gap:12px}.completion-board__player-column.is-player-two .completion-board__player-header{text-align:right}.completion-board__player-column.is-player-two .completion-board__player-label,.completion-board__player-column.is-player-two .completion-board__score-block{justify-items:end}.completion-board__player-header{display:flex;align-items:end;justify-content:space-between;gap:12px}.completion-board__player-column.is-player-one .completion-board__player-header{justify-content:start}.completion-board__player-column.is-player-two .completion-board__player-header{justify-content:end}.completion-board__player-label{font-size:1.1rem;font-weight:800}.completion-board__player-label-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.completion-board__winner-label{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:6px 10px;border-radius:999px;background:#090e1ce0;box-shadow:inset 0 0 0 1px #ffffff14;font-size:.68rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.completion-board__winner-label.is-player-one{color:#75ffcaf5}.completion-board__winner-label.is-player-two{color:#ff74cdf5}.completion-board__winner-label.is-placeholder{opacity:0;visibility:hidden}.completion-board__column{display:grid;gap:12px}.completion-board__pill{position:relative;width:100%}.completion-board__header--single-upgraded,.completion-board__header--versus-upgraded{align-items:start}.completion-board__hero-score{display:grid;gap:4px;justify-items:end;min-width:120px}.completion-board__hero-score-label,.completion-board__stat-label,.completion-board__duel-label,.completion-board__player-subtle,.completion-board__section-heading{font-size:.74rem;letter-spacing:.12em;text-transform:uppercase;color:#ffffff8f}.completion-board__hero-score-value{font-size:clamp(2.8rem,5.5vw,4rem);line-height:.92;font-weight:900;letter-spacing:-.04em}.completion-board__stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.completion-board__stat-card,.completion-board__player-header--card{padding:14px 16px;border-radius:18px;background:linear-gradient(180deg,#101830d1,#070b18b8);box-shadow:inset 0 0 0 1px #ffffff0d}.completion-board__stat-card{display:grid;gap:8px}.completion-board__stat-value{font-size:1.28rem;font-weight:800;line-height:1}.completion-board__section-heading{margin-top:2px}.completion-board__column--single-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.completion-board__pill--detailed{display:flex;align-items:center;gap:10px;padding-right:12px}.completion-board__pill--detailed span{min-width:0;flex:1 1 auto}.completion-board__pill--detailed strong{display:inline-flex;align-items:center;justify-content:center;min-width:42px;padding:6px 10px;border-radius:999px;background:#ffffff1f;box-shadow:inset 0 0 0 1px #ffffff14;font-size:.84rem;font-weight:900;letter-spacing:.02em;color:#ffffffeb}.completion-board__score-summary{display:grid;grid-template-columns:auto auto auto auto auto;align-items:center;justify-content:center;gap:14px;padding:14px 18px;border-radius:20px;background:linear-gradient(180deg,#101830c7,#070b18ad);box-shadow:inset 0 0 0 1px #ffffff0d}.completion-board__score-summary-label{font-size:.92rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#ffffffd1}.completion-board__score-summary-label.is-player-one{justify-self:end}.completion-board__score-summary-label.is-player-two{justify-self:start}.completion-board__score-summary-value{font-size:clamp(2rem,4.4vw,3rem);font-weight:900;line-height:.92;letter-spacing:-.04em}.completion-board__score-summary-value.is-player-one{color:#75ffcaf5}.completion-board__score-summary-value.is-player-two{color:#ff74cdf5}.completion-board__score-summary-separator{display:inline-flex;align-items:center;justify-content:center;min-width:42px;min-height:32px;padding:6px 12px;border-radius:999px;background:#ffffff0f;box-shadow:inset 0 0 0 1px #ffffff0d;font-size:.74rem;font-weight:900;letter-spacing:.18em;text-transform:uppercase;color:#ffffff8f}.completion-board__footer{margin-top:2px}.completion-board__footer-bar{display:flex;justify-content:center;padding:10px 12px;border-radius:999px;background:linear-gradient(180deg,#0c1224d1,#070b18ad);border:1px solid rgba(255,255,255,.07);box-shadow:inset 0 1px #ffffff0a,0 12px 28px #0000002e;overflow:hidden;animation:footerBarIn .54s cubic-bezier(.22,1,.36,1) both;animation-delay:.43s}.completion-board__actions{display:flex;justify-content:flex-end;gap:12px;margin-top:2px}.completion-board__actions>*{animation:completionPanelSectionIn .42s cubic-bezier(.22,1,.36,1) both}.completion-board__actions>*:first-child{animation-delay:.5s}.completion-board__actions>*:last-child{animation-delay:.56s}.nav-button,.completion-board__action{appearance:none;position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:12px 20px;border-radius:999px;border:1px solid rgba(209,181,111,.44);background:linear-gradient(180deg,#0c1428f5,#070d1ce6);color:#f6f1e4f5;font-size:.92rem;font-weight:800;letter-spacing:.04em;box-shadow:inset 0 1px #ffffff0d,inset 0 0 0 1px #d1b56f14,0 12px 24px #0000003d,0 0 0 1px #d1b56f0f;transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease,color .18s ease,opacity .18s ease;cursor:pointer}.nav-button:before,.completion-board__action:before{content:"";position:absolute;inset:1px;border-radius:inherit;background:linear-gradient(180deg,#ffffff0d,#ffffff03);pointer-events:none}.nav-button:hover,.completion-board__action:hover{transform:translateY(-1px);border-color:#e7c97fb3;box-shadow:inset 0 1px #ffffff0f,inset 0 0 0 1px #e7c97f1f,0 16px 30px #00000047,0 0 0 1px #e7c97f1f}.nav-button:active,.completion-board__action:active{transform:translateY(0)}.nav-button:focus-visible,.completion-board__action:focus-visible{outline:none;border-color:#f5dc97eb;box-shadow:inset 0 1px #ffffff0f,inset 0 0 0 1px #f5dc9724,0 0 0 3px #f5dc972e,0 14px 28px #00000047}.nav-button--primary,.completion-board__action--primary{background:linear-gradient(180deg,#101a32fa,#0a1224eb);border-color:#ddc076b8;box-shadow:inset 0 1px #ffffff0f,inset 0 0 0 1px #ddc0761f,0 14px 28px #00000047,0 0 0 1px #ddc0761f,0 0 22px #ddc07614}.nav-button--secondary,.completion-board__action--secondary{background:linear-gradient(180deg,#091020f0,#060b18e0);border-color:#bba3696b;color:#f0ece2eb}.completion-board__player-header--card{align-items:center;min-height:88px}.completion-board__player-header--card>div{width:100%;display:grid;gap:8px}.completion-board__player-column.is-player-two .completion-board__player-header--card>div{justify-items:end}.close-game-button{position:absolute;top:max(12px,env(safe-area-inset-top));right:max(12px,env(safe-area-inset-right));z-index:22;width:44px;height:44px;display:grid;place-items:center;border-radius:999px;color:#ffffffdb;background:#080c187a;box-shadow:0 12px 26px #0208134d}.close-game-button span{font-size:1.6rem;line-height:1;transform:translateY(-1px)}.menu-overlay{position:absolute;inset:0;display:grid;place-items:center;overflow:hidden}.menu-overlay:before,.menu-overlay:after{content:"";position:absolute;inset:-12%;background:radial-gradient(circle at 25% 28%,rgba(62,114,255,.18),transparent 24%),radial-gradient(circle at 74% 34%,rgba(143,77,255,.16),transparent 26%),radial-gradient(circle at 50% 74%,rgba(39,205,150,.12),transparent 32%);animation:menuFloat 16s linear infinite}.menu-overlay:after{animation-duration:22s;animation-direction:reverse;opacity:.8}.menu-overlay__burst{position:absolute;width:42vmax;height:42vmax;border-radius:50%;background:radial-gradient(circle,rgba(88,134,255,.24),rgba(99,76,255,.08) 40%,transparent 70%);filter:blur(18px);transform:scale(.8);opacity:.52;transition:transform .76s cubic-bezier(.22,1,.36,1),opacity .76s ease}.menu-panel{position:relative;z-index:1;width:min(600px,calc(100vw - 40px));padding:30px 30px 28px;box-shadow:0 32px 88px #03081361;transition:transform .68s cubic-bezier(.22,1,.36,1),opacity .52s ease}.menu-panel__eyebrow{font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;color:#ffffff8f;margin-bottom:12px}.menu-panel__title{margin:0 0 22px;font-size:clamp(2.2rem,5vw,3.4rem);line-height:.95;letter-spacing:-.04em}.menu-panel__actions{display:grid;gap:12px}.menu-button{--menu-accent-rgb: 126, 168, 255;position:relative;overflow:hidden;display:grid;gap:6px;width:100%;padding:22px 20px 20px;text-align:left;color:#fff;box-shadow:0 18px 40px #02081352;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease,background .22s ease}.menu-button:after{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:linear-gradient(180deg,rgba(var(--menu-accent-rgb),.98),rgba(var(--menu-accent-rgb),.36));opacity:.9}.menu-button--single{--menu-accent-rgb: var(--player-one-rgb)}.menu-button--versus{--menu-accent-rgb: var(--player-two-rgb)}.menu-button:before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,rgba(var(--menu-accent-rgb),.16),#ffffff05 62%);opacity:.92;transition:opacity .22s ease,transform .22s ease}.menu-button:hover,.menu-button:focus-visible,.menu-button.is-selected{transform:translateY(-3px) scale(1.01);border-color:rgba(var(--menu-accent-rgb),.42);box-shadow:0 24px 46px #02081361}.menu-button:hover:before,.menu-button:focus-visible:before,.menu-button.is-selected:before{opacity:1;transform:scale(1.02)}.menu-button__title,.menu-button__meta{position:relative;z-index:1}.menu-button__title{font-size:1.35rem;font-weight:800;letter-spacing:-.01em}.menu-button__meta{font-size:.82rem;color:#ffffff94}.menu-overlay.is-launching .menu-overlay__burst{transform:scale(2.4);opacity:.9}.menu-overlay.is-launching .menu-panel{transform:scale(.94) translateY(-10px);opacity:0}.app-shell.is-completion-visible .puzzle-theme__timer{opacity:0;transform:translateY(-8px) scale(.96);pointer-events:none}.app-shell.is-completion-visible .puzzle-theme__mode-note{opacity:0}.puzzle-theme__timer,.puzzle-theme__mode-note{transition:opacity .22s ease,transform .26s ease}.launch-sequence{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none;opacity:0;transition:opacity .18s ease;z-index:2}.launch-sequence__glow{position:absolute;width:min(78vmin,720px);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(80,126,255,.22),rgba(164,92,255,.12) 38%,rgba(32,216,172,.08) 58%,transparent 72%);filter:blur(20px);animation:launchGlow .88s cubic-bezier(.22,1,.36,1) forwards}.launch-sequence__panel{position:relative;display:grid;gap:14px;justify-items:center;transform:translateY(10px) scale(.94);opacity:0;animation:launchPanelIn .36s ease forwards}.launch-sequence__eyebrow{font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;color:#ffffff8f}.launch-sequence__title{font-size:clamp(1.3rem,3vw,1.9rem);font-weight:800;letter-spacing:-.02em}.launch-sequence__board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;padding:22px;width:min(52vmin,420px);aspect-ratio:1;border-radius:28px;background:linear-gradient(145deg,#15264a99,#091023c7);box-shadow:inset 0 1px #ffffff0a,0 40px 80px #00000057}.launch-sequence__tile{border-radius:16px;background:linear-gradient(180deg,#4970e6f0,#2b54ccf0);box-shadow:inset 0 1px #ffffff1f,10px 10px #080e1e80,0 12px 26px #05081447;opacity:0;transform:translateY(26px) scale(.78);animation:launchTileIn .42s cubic-bezier(.22,1,.36,1) forwards}.launch-sequence__tile--single{box-shadow:inset 0 1px #ffffff1f,10px 10px #080e1e80,0 0 0 1px rgba(var(--player-one-rgb),.16),0 12px 26px #05081447}.launch-sequence__tile--versus{box-shadow:inset 0 1px #ffffff1f,10px 10px #080e1e80,0 0 0 1px rgba(var(--player-two-rgb),.18),0 12px 26px #05081447}@keyframes launchPanelIn{to{opacity:1;transform:translateY(0) scale(1)}}@keyframes launchGlow{0%{transform:scale(.72);opacity:.18}40%{opacity:.72}to{transform:scale(1.2);opacity:0}}@keyframes launchTileIn{0%{opacity:0;transform:translateY(26px) scale(.78)}55%{opacity:1;transform:translateY(-4px) scale(1.03)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes menuFloat{0%{transform:translateZ(0) scale(1)}50%{transform:translate3d(1.5%,-2%,0) scale(1.04)}to{transform:translateZ(0) scale(1)}}@media(max-width:900px){.top-hud-row{grid-template-columns:minmax(0,1fr) minmax(320px,420px) minmax(0,1fr)}.hud--player,.hud-spacer{min-width:0}.completion-board__columns--versus{grid-template-columns:1fr}}@media(max-width:700px){:root{--hud-row-height: 168px;--dock-row-height: 116px}.app-shell{gap:8px;padding:max(8px,env(safe-area-inset-top)) max(6px,env(safe-area-inset-right)) max(8px,calc(env(safe-area-inset-bottom) + 4px)) max(6px,env(safe-area-inset-left))}.top-hud-row{grid-template-columns:84px minmax(0,1fr) 84px;gap:8px;position:relative;min-height:var(--hud-row-height);height:var(--hud-row-height);padding-inline:4px;align-items:start;justify-content:center;overflow:hidden}.hud--player{display:grid;position:relative;top:auto;left:auto;right:auto;min-width:0;width:100%;max-width:84px;min-height:66px;margin-top:38px;padding:10px 10px 8px;gap:1px;border-radius:18px;background:#080c188f;box-shadow:0 12px 30px #02081347;z-index:2;align-self:start}.hud--player:first-of-type{left:auto}.hud--player-right{right:auto;left:auto}.hud--player-two .hud-player__eyebrow,.hud--player-two .hud-score__value,.hud--player-two .hud-score__meta{text-align:right}.app-shell--single .top-hud-row{grid-template-columns:96px minmax(0,min(60vw,340px)) 96px;justify-content:center;padding-inline:0;gap:10px}.app-shell--single .hud--player{display:grid;max-width:96px;margin-top:38px}.hud-spacer{display:none}.app-shell--single .hud--player-placeholder{display:block;max-width:96px;margin-top:38px}.app-shell--single .puzzle-theme{justify-self:center}.app-shell--single .hud-player__eyebrow{line-height:1.08}.hud--player-placeholder{display:grid;margin-top:38px}.puzzle-theme{width:100%;max-width:100%;min-width:0;min-height:var(--hud-row-height);padding:12px 14px;border-radius:20px}.puzzle-theme__eyebrow{font-size:.76rem;letter-spacing:.12em;margin-bottom:8px}.puzzle-theme__title{max-width:none;min-height:0;font-size:clamp(.98rem,4vw,1.45rem);line-height:1.12;margin-bottom:10px;text-wrap:balance;overflow-wrap:anywhere;word-break:normal}.puzzle-theme__timer{min-width:118px;padding:8px 14px;margin-top:0}.puzzle-theme__timer-value{font-size:1.12rem;letter-spacing:.1em}.puzzle-theme__mode-note{margin-top:6px;min-height:.8rem;font-size:.58rem;letter-spacing:.1em}.app-shell--single .puzzle-theme{justify-self:center;width:100%;max-width:100%;min-width:0;min-height:var(--hud-row-height);padding:12px 14px;text-align:center}.app-shell--single .puzzle-theme__eyebrow{margin-bottom:8px;text-align:center}.app-shell--single .puzzle-theme__title{max-width:12ch;min-height:0;margin:0 auto 10px;font-size:clamp(1.16rem,5.8vw,2rem);line-height:1.06;letter-spacing:-.03em;text-wrap:balance;overflow-wrap:anywhere;word-break:normal}.app-shell--single .puzzle-theme__timer{margin-top:0;min-width:132px;justify-content:center}.play-stage{border-radius:20px}.solution-strip{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:10px 10px 12px;border-radius:20px}.solution-pill{min-width:0;width:100%;padding:9px 12px;font-size:.92rem}.hud-player__eyebrow{margin-bottom:0;font-size:.62rem}.hud-score__value{font-size:1.42rem}.hud-score__meta{font-size:.6rem}.completion-board{padding:84px 16px 110px}.completion-board__header{align-items:start;flex-direction:column}.completion-board__hero-score{justify-items:start}.completion-board__stats,.completion-board__column--single-grid,.completion-board__columns--versus{grid-template-columns:1fr}.completion-board__score-summary{grid-template-columns:1fr;justify-items:center}.completion-board__score-block,.completion-board__score-block--column{justify-items:start}.completion-board__panel{min-width:min(420px,calc(100vw - 28px));padding:18px 16px}.completion-board__columns--versus{grid-template-columns:1fr}.close-game-button{width:40px;height:40px;top:max(10px,env(safe-area-inset-top));right:max(10px,env(safe-area-inset-right))}.menu-panel{width:min(520px,calc(100vw - 24px));padding:24px 18px 20px}.launch-sequence__board{width:min(76vw,340px);gap:10px;padding:16px;border-radius:22px}.menu-panel__title{margin-bottom:18px}}.launch-sequence{position:absolute;inset:0;display:grid;place-items:center;opacity:0;pointer-events:none;transition:opacity .22s ease;z-index:2}.launch-sequence.is-visible{opacity:1}.launch-sequence__glow{position:absolute;inset:0;background:radial-gradient(circle at 50% 78%,rgba(39,205,150,.18),transparent 26%);filter:blur(14px);opacity:.9}.launch-sequence__panel{position:relative;z-index:1;display:grid;justify-items:center;gap:14px;width:min(760px,calc(100vw - 48px));transform:translateY(10px) scale(.985);animation:launchPanelIn .46s cubic-bezier(.22,1,.36,1) forwards}.launch-sequence__eyebrow{font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;color:#ffffff9e}.launch-sequence__title{font-size:clamp(2rem,5vw,3rem);font-weight:800;letter-spacing:-.04em}.launch-sequence__board-shell{position:relative;width:min(72vmin,560px);aspect-ratio:1 / 1;display:grid;place-items:center}.launch-sequence__board-frame{position:absolute;inset:0;border-radius:0;background:linear-gradient(140deg,#233560ad,#1f2b4ad6);box-shadow:inset 0 1px #ffffff08,0 36px 72px #02081357;animation:boardSettle .82s cubic-bezier(.22,1,.36,1) forwards}.launch-sequence__board-grid{position:absolute;inset:8.5%;display:grid;grid-template-columns:repeat(4,1fr);gap:3%}.launch-sequence__tile{border-radius:14%;background:linear-gradient(180deg,#4e72e8fa,#3a5cd2f5);box-shadow:inset 0 1px #ffffff14,16px 18px #060c1c6b,0 26px 42px #03081347;border:1px solid rgba(255,255,255,.08);transform:translate(var(--launch-from-x),var(--launch-from-y)) scale(.76) rotate(var(--launch-rotate));opacity:0;animation:tileLand .72s cubic-bezier(.2,.9,.2,1) forwards;animation-delay:var(--launch-delay)}.launch-sequence__tile--single{box-shadow:inset 0 1px #ffffff14,16px 18px #060c1c6b,0 0 0 1px rgba(var(--player-one-rgb),.08),0 26px 42px #03081347}.launch-sequence__tile--versus{box-shadow:inset 0 1px #ffffff14,16px 18px #060c1c6b,0 0 0 1px rgba(var(--player-two-rgb),.12),0 26px 42px #03081347}@keyframes launchPanelIn{to{transform:translateY(0) scale(1)}}@keyframes boardSettle{0%{transform:scale(.98) rotateX(10deg);opacity:.72}45%{transform:scale(1.012) rotateX(0);opacity:1}to{transform:scale(1);opacity:1}}@keyframes tileLand{0%{opacity:0;transform:translate(var(--launch-from-x),var(--launch-from-y)) scale(.72) rotate(var(--launch-rotate))}22%{opacity:1}72%{opacity:1;transform:translate(0) scale(1.04) rotate(0)}to{opacity:1;transform:translate(0) scale(1) rotate(0)}}@media(max-width:900px){.top-hud-row{gap:12px;padding-inline:0}.hud--player{min-height:96px}.puzzle-theme{padding-top:18px;min-height:144px}.puzzle-theme__title{max-width:14ch;font-size:clamp(1.18rem,6.2vw,2.4rem)}.puzzle-theme__mode-note{letter-spacing:.1em}.close-game-button{top:max(10px,env(safe-area-inset-top));right:max(10px,env(safe-area-inset-right))}.launch-sequence__panel{width:min(100%,calc(100vw - 40px));gap:10px}.launch-sequence__board-shell{width:min(calc(100vw - 64px),560px)}}@media(min-width:901px){.completion-board__player-column.is-player-one .completion-board__player-header .completion-board__score-block{margin-left:auto}.completion-board__player-column.is-player-two .completion-board__player-header .completion-board__score-block{margin-right:auto}}.app-shell[data-device-profile=tablet-portrait]{--hud-row-height: 154px;--dock-row-height: 100px}.app-shell[data-device-profile=tablet-landscape]{--hud-row-height: 128px;--dock-row-height: 92px}.app-shell[data-device-profile=desktop]{--hud-row-height: 136px;--dock-row-height: 96px}.app-shell[data-device-profile=wide-desktop]{--hud-row-height: 126px;--dock-row-height: 88px}.app-shell[data-device-profile=tablet-landscape] .top-hud-row,.app-shell[data-device-profile=desktop] .top-hud-row,.app-shell[data-device-profile=wide-desktop] .top-hud-row{align-items:start;gap:14px;padding-inline:28px}.app-shell[data-device-profile=tablet-landscape] .top-hud-row{grid-template-columns:minmax(180px,240px) minmax(320px,430px) minmax(180px,240px)}.app-shell[data-device-profile=desktop] .top-hud-row{grid-template-columns:minmax(200px,280px) minmax(340px,470px) minmax(200px,280px)}.app-shell[data-device-profile=wide-desktop] .top-hud-row{grid-template-columns:minmax(220px,300px) minmax(360px,500px) minmax(220px,300px);gap:16px}.app-shell[data-device-profile=tablet-landscape] .hud--player,.app-shell[data-device-profile=desktop] .hud--player,.app-shell[data-device-profile=wide-desktop] .hud--player{min-height:104px}.app-shell[data-device-profile=tablet-landscape] .puzzle-theme,.app-shell[data-device-profile=desktop] .puzzle-theme,.app-shell[data-device-profile=wide-desktop] .puzzle-theme{min-height:108px;padding-top:12px}.app-shell[data-device-profile=tablet-landscape] .solution-strip,.app-shell[data-device-profile=desktop] .solution-strip,.app-shell[data-device-profile=wide-desktop] .solution-strip{width:min(1120px,100%)}@media(orientation:landscape){.app-shell[data-device-profile=phone-landscape],.app-shell[data-device-profile=tablet-landscape]{--hud-row-height: 118px;--dock-row-height: 84px}.app-shell[data-device-profile=phone-landscape] .top-hud-row,.app-shell[data-device-profile=tablet-landscape] .top-hud-row{padding-inline:12px;gap:10px}.app-shell[data-device-profile=phone-landscape] .solution-strip,.app-shell[data-device-profile=tablet-landscape] .solution-strip{padding-top:8px;padding-bottom:10px}}.app-shell{position:relative}.app-shell.is-menu-phase .top-hud-row,.app-shell.is-menu-phase .solution-dock,.app-shell.is-menu-phase .close-game-button,.app-shell.is-flipping-to-game .top-hud-row,.app-shell.is-flipping-to-game .solution-dock,.app-shell.is-flipping-to-game .close-game-button,.app-shell.is-exiting .top-hud-row,.app-shell.is-exiting .solution-dock,.app-shell.is-exiting .close-game-button,.app-shell.is-menu-selecting .close-game-button,.app-shell.is-completion-closing .close-game-button{opacity:0;pointer-events:none;transform:translateY(10px)}.backface-menu{position:absolute;z-index:8;pointer-events:none}.backface-menu.is-disabled{opacity:1}.backface-menu__button{position:absolute;border:0;border-radius:999px;background:transparent;padding:0;margin:0;cursor:pointer;pointer-events:auto;opacity:0;-webkit-tap-highlight-color:transparent}.backface-menu__button:disabled{cursor:default}.backface-menu__button:focus-visible{opacity:1;outline:2px solid rgba(255,255,255,.75);outline-offset:3px}.backface-menu.is-selecting .backface-menu__button{transition:transform .18s cubic-bezier(.22,1,.36,1),opacity .18s ease,filter .18s ease}.backface-menu.is-selecting .backface-menu__button--single.is-selected,.backface-menu.is-selecting .backface-menu__button--versus.is-selected{opacity:1;transform:scale(.985);filter:brightness(1.08)}.backface-menu.is-selecting.is-selecting--single .backface-menu__button--versus,.backface-menu.is-selecting.is-selecting--versus .backface-menu__button--single{opacity:0;transform:scale(.96)}.backface-menu.is-selecting{animation:backfaceMenuRecede .22s cubic-bezier(.22,1,.36,1) both}@keyframes backfaceMenuRecede{0%{opacity:1;transform:translateZ(0)}to{opacity:.72;transform:translateY(8px) scale(.985)}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.hud-visibility-veil{display:none}@media(max-width:700px){.backface-menu__eyebrow{font-size:clamp(7px,2vw,10px);letter-spacing:.26em}.backface-menu__title{font-size:clamp(25px,7vw,38px)}.backface-menu__button .menu-button__title{font-size:clamp(15px,4.5vw,22px)}.backface-menu__button .menu-button__meta{font-size:clamp(8px,2.1vw,11px)}}.app-shell.is-intro .play-stage:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 54%,rgba(255,255,255,.04),transparent 44%);pointer-events:none;opacity:1;transition:opacity .26s ease}@media(max-width:640px){.completion-board__actions{flex-direction:column-reverse;align-items:stretch}.completion-board__action{width:100%}.completion-board__pill--detailed strong{min-width:40px;padding-inline:8px}}@media(max-width:820px){.claim-flash{top:clamp(144px,19vh,200px);min-width:min(340px,calc(100vw - 32px));max-width:min(420px,calc(100vw - 32px));padding:12px 16px 14px}.claim-flash__title{font-size:1.02rem}.hud-score__burst{right:14px;top:34px;font-size:.86rem}}@media(max-width:720px){.completion-board__score-summary{grid-template-columns:repeat(5,auto);gap:10px;padding-inline:12px}.completion-board__score-summary-label{font-size:.8rem}.completion-board__score-summary-value{font-size:1.7rem}.completion-board__actions{justify-content:stretch}.completion-board__action{flex:1 1 0}}.app-shell.is-completion-closing .completion-board{pointer-events:none}.app-shell.is-completion-closing .play-stage{filter:saturate(.96)}
