:root{color-scheme:light;--cream:#e9f2fb;--paper:#ffffff;--blue:#2f93d6;--blue-mid:#2a82c2;--blue-deep:#1f6aa8;--blue-ink:#123f63;--accent:#ffffff;--accent-soft:#e7f3fd;--accent-edge:#a9cee9;--red:#e23b4e;--green:#1f9d57;--muted:#5b7895;--line:rgba(18,63,99,0.16);--radius:18px;--shadow:0 18px 44px rgba(18,63,99,0.18);--font:"Segoe UI",system-ui,-apple-system,BlinkMacSystemFont,Roboto,Helvetica,Arial,sans-serif;font-family:var(--font);background:var(--cream);color:var(--blue-ink)}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(125% 80% at 50% -20%,rgba(47,147,214,.18),transparent 62%),linear-gradient(180deg,#f8fbff 0,var(--cream) 360px),var(--cream)}button,input{font:inherit}button{border:0;cursor:pointer;color:inherit}button:disabled{cursor:not-allowed;opacity:.45}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;padding:0;margin:-1px}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:4px solid rgba(255,216,77,.9);outline-offset:3px}.inactive-panel{filter:grayscale(.9);opacity:.52;pointer-events:none}.session-closed .status-panel,.session-closed .turn-timer{filter:grayscale(.8);opacity:.68}.session-closed-card,.session-closed-panel{border-color:#98a6b3;background:#eef2f6}.session-closed-card span,.session-closed-card strong{color:var(--blue-ink)}.page{min-height:100vh;padding:clamp(16px,3vw,28px)}.dev-diagnostics{position:fixed;right:12px;bottom:12px;z-index:30;max-width:min(520px,calc(100vw - 24px));border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.94);color:var(--muted);font-size:.7rem;font-weight:850;padding:8px 10px;overflow-wrap:anywhere;box-shadow:0 10px 26px rgba(18,63,99,.16)}h1,h2{margin:0;letter-spacing:0}h1{color:var(--blue-ink);font-size:clamp(2.4rem,8vw,5rem);line-height:.92}h1,h2{font-weight:950;text-transform:uppercase}h2{font-size:clamp(1rem,2vw,1.35rem)}.stack{display:grid;grid-gap:16px;gap:16px}.eyebrow,.muted{color:var(--muted)}.eyebrow{font-size:.78rem;font-weight:950;letter-spacing:0;text-transform:uppercase}.join-page{display:grid;place-items:center}.join-panel{width:min(100%,480px);border:1px solid var(--line);border-radius:24px;background:rgba(255,255,255,.94);box-shadow:var(--shadow);padding:clamp(22px,5vw,34px)}.join-logo{width:74px;aspect-ratio:1;border:4px solid var(--blue-ink);border-radius:50%;background:conic-gradient(var(--blue) 0 25%,#ffffff 0 50%,var(--blue) 0 75%,#ffffff 0);box-shadow:0 0 0 6px #ffffff,var(--shadow);animation:wheel-spin 9s linear infinite}.field{display:grid;grid-gap:7px;gap:7px}.field span{color:var(--blue-ink);font-size:.86rem;font-weight:900;text-transform:uppercase}.answer-input,.field input{width:100%;min-height:52px;border:1px solid var(--accent-edge);border-radius:14px;background:#ffffff;color:var(--blue-ink);font-weight:800;outline:none;padding:11px 14px}.answer-input:focus,.field input:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(47,147,214,.18)}.letter-button,.primary-button,.secondary-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;border-radius:14px;background:linear-gradient(180deg,var(--blue),var(--blue-deep));color:#ffffff;font-weight:950;text-transform:uppercase;box-shadow:0 10px 20px rgba(18,63,99,.18);text-decoration:none}.secondary-button{border:1px solid var(--accent-edge);background:var(--paper);color:var(--blue-ink)}.controller-page{display:grid;align-content:start;grid-gap:14px;gap:14px;width:min(100%,720px);margin:0 auto;padding-bottom:40px}.display-page{min-height:100vh;display:grid;grid-template-rows:auto 1fr auto;grid-gap:clamp(14px,2vh,24px);gap:clamp(14px,2vh,24px)}.controller-hero,.display-title{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;border:1px solid var(--line);border-radius:24px;background:rgba(255,255,255,.9);box-shadow:var(--shadow);padding:clamp(16px,3vw,24px)}.controller-hero{position:relative;overflow:hidden;align-items:stretch;border-color:rgba(255,255,255,.18);background:radial-gradient(90% 140% at 92% 0,rgba(255,216,77,.18),transparent 42%),linear-gradient(135deg,#10233b,#123f63 52%,#071a2d);color:#ffffff;box-shadow:0 18px 44px rgba(7,26,45,.32),inset 0 1px 0 rgba(255,255,255,.16);transition:border-color .18s ease,filter .18s ease,opacity .18s ease,transform .18s ease}.controller-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 34%,rgba(255,255,255,.12) 48%,transparent 62%);pointer-events:none;transform:translateX(-130%);animation:sheen 1.6s ease}.controller-hero-active{border-color:#ffd84d;background:radial-gradient(90% 150% at 92% 0,rgba(255,216,77,.32),transparent 42%),linear-gradient(135deg,#173f2c,#123f63 48%,#071a2d);box-shadow:0 0 0 5px rgba(255,216,77,.18),0 20px 54px rgba(7,26,45,.36),inset 0 1px 0 rgba(255,255,255,.2)}.controller-hero-standby{filter:saturate(.86);opacity:.92}.controller-name-banner{display:inline-grid;gap:4px;max-width:100%;margin:0 0 12px;border:1px solid rgba(255,216,77,.32);border-radius:18px;background:rgba(255,255,255,.1);padding:12px 14px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.controller-name-banner span{color:#ffd84d;font-size:.72rem;font-weight:950;letter-spacing:.04em;text-transform:uppercase}.controller-name-banner strong{color:#ffffff;font-size:clamp(1.6rem,8vw,3.6rem);font-weight:950;line-height:.92;overflow-wrap:anywhere;text-transform:uppercase;text-shadow:0 3px 0 rgba(0,0,0,.22)}.controller-hero h1{color:#ffffff;font-size:clamp(2rem,10vw,4.8rem);text-shadow:0 4px 0 rgba(0,0,0,.22)}.controller-meta{position:relative;z-index:1;display:grid;align-content:center;justify-items:end;grid-gap:5px;gap:5px;min-width:max-content;color:rgba(255,255,255,.78);font-size:.78rem;font-weight:900;text-align:right;text-transform:uppercase}.controller-meta span{color:#ffd84d}.controller-meta strong{color:#ffffff;font-size:.92rem}.display-title h1{font-size:clamp(2.5rem,6vw,6rem)}.brand-chip,.connection-pill{display:inline-flex;align-items:center;gap:7px;width:-moz-fit-content;width:fit-content;border-radius:999px;background:var(--blue);color:#ffffff;font-size:.78rem;font-weight:950;letter-spacing:0;text-transform:uppercase;padding:8px 12px}.connection-pill{border:1px solid var(--accent-edge);background:var(--paper);color:var(--blue-ink)}.action-card,.context-card,.display-card,.status-panel,.turn-card{border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,255,255,.95);box-shadow:var(--shadow);padding:clamp(14px,2.4vw,20px)}.status-panel-compact{box-shadow:none}.controller-status-row,.display-status-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(190px,260px);grid-gap:14px;gap:14px;align-items:stretch}.controller-status-row{grid-template-columns:minmax(0,1fr)}.turn-timer{display:grid;align-content:center;grid-gap:8px;gap:8px;border:1px solid var(--line);border-radius:var(--radius);background:#ffffff;box-shadow:var(--shadow);padding:clamp(14px,2.4vw,20px)}.turn-timer-compact{box-shadow:none}.turn-timer div:first-child{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.turn-timer small,.turn-timer span{color:var(--muted);font-size:.72rem;font-weight:950;text-transform:uppercase}.turn-timer strong{color:var(--blue-ink);font-size:clamp(1.8rem,4vw,3rem);font-weight:950;line-height:.95}.timer-track{overflow:hidden;height:11px;border-radius:999px;background:var(--accent-soft)}.timer-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--green),var(--blue),var(--red));transition:width .18s linear}.status-summary{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;color:var(--muted);font-weight:900;text-transform:uppercase}.score-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(142px,1fr));grid-gap:10px;gap:10px;margin-top:12px}.score-pill{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;grid-gap:10px;gap:10px;border:1px solid var(--line);border-radius:15px;background:#ffffff;padding:10px 12px}.score-pill b,.score-pill strong{color:var(--blue-ink);font-weight:950}.score-pill span{display:block;color:var(--muted);font-size:.68rem;font-weight:900;text-transform:uppercase}.score-avatar{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--player-color,var(--blue));color:#ffffff;font-style:normal;font-weight:950}.score-pill-active{border-color:var(--player-color,var(--blue));background:linear-gradient(180deg,#eef8ff,#ffffff);box-shadow:0 0 0 3px color-mix(in srgb,var(--player-color,var(--blue)) 24%,transparent)}.score-pill-winner{border-color:var(--green);background:#f1fbf5;animation:winner-pulse .82s ease-in-out infinite alternate}.turn-card{display:grid;grid-gap:12px;gap:12px}.turn-card-active{border-color:color-mix(in srgb,var(--green) 48%,#ffffff);background:linear-gradient(180deg,rgba(241,251,245,.98),rgba(255,255,255,.95)),#ffffff;box-shadow:0 0 0 4px rgba(31,157,87,.14),var(--shadow)}.standby-panel,.turn-card-standby{filter:saturate(.72);opacity:.68}.standby-panel{box-shadow:none}.turn-label{font-size:clamp(1.5rem,4vw,2.4rem);font-weight:950;text-transform:uppercase}.category-banner{position:relative;overflow:hidden;display:grid;grid-gap:4px;gap:4px;width:100%;text-align:left;border:4px solid #ffffff;border-radius:22px;background:linear-gradient(155deg,var(--blue),var(--blue-deep));color:#ffffff;padding:16px 20px;box-shadow:var(--shadow),inset 0 0 0 3px rgba(255,255,255,.12);transition:transform .14s ease,background .22s ease}.category-banner:hover{transform:translateY(-1px)}.category-banner:after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 36%,rgba(255,255,255,.28) 50%,transparent 64%);transform:translateX(-130%);animation:sheen 1.2s ease}.category-banner span{font-size:.72rem;font-weight:950;letter-spacing:0;opacity:.8;text-transform:uppercase}.category-banner strong{font-size:clamp(1.6rem,5vw,3rem);font-weight:950;line-height:1;text-transform:uppercase}.category-banner i{position:absolute;right:16px;bottom:14px;border-radius:999px;background:#ffffff;color:var(--blue-ink);font-size:.8rem;font-style:normal;font-weight:950;padding:8px 14px;text-transform:uppercase}.clue,.clue-card{border:1px solid var(--accent-edge);border-radius:var(--radius);background:var(--accent-soft);color:var(--blue-ink);font-weight:900;line-height:1.35;padding:14px 16px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.section-heading span{display:grid;place-items:center;min-width:42px;height:42px;border-radius:12px;background:var(--blue-ink);color:#ffffff;font-weight:950}.letter-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:8px;gap:8px}.letter-button{aspect-ratio:1;border:1px solid var(--accent-edge);background:linear-gradient(180deg,#ffffff,#e3f0fb);color:var(--blue-ink);box-shadow:inset 0 -5px 0 rgba(18,63,99,.1)}.letter-button-selected{border-color:var(--blue);background:linear-gradient(180deg,var(--blue),var(--blue-deep));color:#ffffff;box-shadow:0 0 0 4px rgba(47,147,214,.2)}.answer-row{display:grid;grid-template-columns:1fr;grid-gap:8px;gap:8px}.board-shell{position:relative;overflow:hidden}.board{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px 0;perspective:900px}.board-large{gap:clamp(14px,1.8vw,24px) 0}.board-word{display:inline-flex;flex-wrap:nowrap;gap:8px;margin-inline:6px;white-space:nowrap}.board-large .board-word{gap:clamp(8px,.8vw,14px);margin-inline:clamp(8px,1vw,14px)}.board-word-gap{flex:0 0 clamp(12px,2vw,26px);height:1px}.board-cell{position:relative;display:grid;place-items:center;width:38px;height:50px;border-radius:9px;color:var(--blue-ink);font-size:1.2rem;font-weight:950}.board-large .board-cell{width:clamp(42px,6vw,86px);height:clamp(56px,8vw,108px);font-size:clamp(1.6rem,4vw,4rem)}.board-cell-inner{position:absolute;inset:0;transform-style:preserve-3d;transition:transform .56s cubic-bezier(.2,.8,.2,1)}.board-cell-revealed .board-cell-inner{transform:rotateY(180deg)}.board-cell-face{position:absolute;inset:0;display:grid;place-items:center;border-radius:9px;backface-visibility:hidden;-webkit-backface-visibility:hidden}.board-cell-front{border:1px solid rgba(18,63,99,.28);background:linear-gradient(145deg,rgba(255,255,255,.44),transparent 35%),linear-gradient(180deg,#d6e4ef,#9fbed5 58%,#739ab9);box-shadow:inset 0 4px 0 rgba(255,255,255,.5),inset 0 -8px 0 rgba(18,63,99,.25),0 8px 0 rgba(18,63,99,.2),0 12px 18px rgba(18,63,99,.18)}.board-cell-back{border:1px solid #bcdcf3;background:linear-gradient(180deg,#ffffff,#e3f0fb);box-shadow:inset 0 -5px 0 rgba(47,147,214,.32),0 4px 10px rgba(18,63,99,.18);transform:rotateY(180deg)}.board-cell-pop .board-cell-back{animation:tile-pop .72s ease}.board-cell-owned .board-cell-back{border-color:var(--player-color,var(--blue));box-shadow:inset 0 -6px 0 color-mix(in srgb,var(--player-color,var(--blue)) 54%,transparent),0 4px 12px rgba(18,63,99,.18)}.owner-badge{position:absolute;top:-8px;right:-8px;display:grid;place-items:center;width:23px;height:23px;border:2px solid #ffffff;border-radius:50%;background:var(--player-color,var(--blue));color:#ffffff;font-size:.7rem;font-style:normal;font-weight:950;box-shadow:0 3px 8px rgba(18,63,99,.28)}.board-cell-hyphen,.board-cell-punctuation{background:transparent;box-shadow:none}.board-shake,.board-shell-miss{animation:board-shake .52s ease}.board-solved .board-cell-revealed .board-cell-back{animation:solve-wave .9s ease-in-out both}.x-stamp{position:fixed;inset:0;z-index:80;display:grid;place-items:center;opacity:0;pointer-events:none}.x-stamp.show{animation:xshow 1s ease forwards}.x-stamp svg{width:min(46vh,46vw);height:min(46vh,46vw);filter:drop-shadow(0 10px 30px rgba(226,59,78,.5))}.display-main{display:grid;align-content:center;grid-gap:22px;gap:22px}.display-stage{display:grid;grid-template-columns:minmax(240px,320px) minmax(0,1fr);align-items:center;grid-gap:22px;gap:22px}.display-category-banner{min-height:clamp(150px,18vw,230px);align-content:center}.display-card{min-height:clamp(180px,28vw,380px);display:grid;place-items:center}.display-card-solved{border-color:var(--green);background:linear-gradient(180deg,#f1fbf5,#ffffff),#ffffff;box-shadow:0 0 0 6px rgba(31,157,87,.18),0 24px 58px rgba(18,63,99,.18)}.confetti-layer{position:fixed;inset:0;z-index:72;overflow:hidden;pointer-events:none}.balloon-field{position:absolute;inset:0}.celebration-balloon{position:absolute;bottom:-18vh;left:calc((var(--balloon-index, 1) * 7vw) + 2vw);width:clamp(38px,5vw,78px);height:clamp(54px,7vw,108px);border-radius:50% 50% 46% 46%;background:radial-gradient(circle at 30% 24%,rgba(255,255,255,.75),transparent 18%),linear-gradient(160deg,var(--balloon-color,#ffd84d),color-mix(in srgb,var(--balloon-color,#ffd84d) 78%,#4b006e));box-shadow:inset -10px -14px 18px rgba(75,0,110,.18),0 14px 28px rgba(30,5,68,.22);animation:balloon-rise var(--balloon-duration,4.8s) ease-in forwards;animation-delay:var(--balloon-delay,0s)}.celebration-balloon:before{bottom:-8px;width:0;height:0;border-right:7px solid transparent;border-left:7px solid transparent;border-top:11px solid color-mix(in srgb,var(--balloon-color,#ffd84d) 74%,#4b006e)}.celebration-balloon:after,.celebration-balloon:before{content:"";position:absolute;left:50%;transform:translateX(-50%)}.celebration-balloon:after{top:100%;width:2px;height:90px;background:rgba(255,255,255,.72)}.celebration-balloon:first-child{--balloon-index:1;--balloon-color:#ffd84d;--balloon-delay:0.08s;--balloon-duration:4.6s}.celebration-balloon:nth-child(2){--balloon-index:4;--balloon-color:#e23b4e;--balloon-delay:0.34s;--balloon-duration:5.1s}.celebration-balloon:nth-child(3){--balloon-index:8;--balloon-color:#7b2cbf;--balloon-delay:0.12s;--balloon-duration:4.8s}.celebration-balloon:nth-child(4){--balloon-index:12;--balloon-color:#ffb703;--balloon-delay:0.42s;--balloon-duration:5.4s}.celebration-balloon:nth-child(5){--balloon-index:2;--balloon-color:#c1121f;--balloon-delay:0.82s;--balloon-duration:4.9s}.celebration-balloon:nth-child(6){--balloon-index:6;--balloon-color:#fff3b0;--balloon-delay:0.64s;--balloon-duration:5.5s}.celebration-balloon:nth-child(7){--balloon-index:10;--balloon-color:#9d4edd;--balloon-delay:0.72s;--balloon-duration:5.2s}.celebration-balloon:nth-child(8){--balloon-index:13;--balloon-color:#ffd84d;--balloon-delay:1s;--balloon-duration:4.7s}.celebration-balloon:nth-child(9){--balloon-index:3;--balloon-color:#ffb703;--balloon-delay:1.12s;--balloon-duration:5.3s}.celebration-balloon:nth-child(10){--balloon-index:7;--balloon-color:#e23b4e;--balloon-delay:1.28s;--balloon-duration:4.9s}.celebration-balloon:nth-child(11){--balloon-index:11;--balloon-color:#7b2cbf;--balloon-delay:1.4s;--balloon-duration:5.6s}.celebration-balloon:nth-child(12){--balloon-index:14;--balloon-color:#fff3b0;--balloon-delay:1.62s;--balloon-duration:5.1s}.celebration-balloon:nth-child(13){--balloon-index:5;--balloon-color:#c1121f;--balloon-delay:1.8s;--balloon-duration:4.8s}.celebration-balloon:nth-child(14){--balloon-index:9;--balloon-color:#ffd84d;--balloon-delay:2s;--balloon-duration:5.4s}.confetti-piece{position:absolute;top:-24px;left:var(--confetti-left);width:11px;height:17px;border-radius:var(--confetti-radius);background:var(--confetti-color);opacity:0;will-change:transform,opacity;animation:confetti-burst-fall var(--confetti-duration) ease-in forwards;animation-delay:var(--confetti-delay)}.confetti-piece:nth-child(3n){width:9px;height:9px}.confetti-piece:nth-child(5n){width:14px;height:8px}.clue{width:min(100%,1120px);margin:0 auto;font-size:clamp(1.2rem,3vw,2.1rem);text-align:center}.event-strip{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.event-strip span{border-radius:999px;background:var(--accent-soft);color:var(--blue-ink);font-weight:950;padding:7px 11px;text-transform:uppercase}.win-overlay{position:fixed;inset:0;z-index:75;display:grid;place-items:center;background:radial-gradient(circle at 50% 30%,rgba(255,216,77,.22),transparent 34%),rgba(39,12,74,.64);-webkit-backdrop-filter:blur(4px) saturate(1.2);backdrop-filter:blur(4px) saturate(1.2)}.win-card{position:relative;display:grid;justify-items:center;grid-gap:12px;gap:12px;width:min(86vw,720px);overflow:hidden;border:5px solid #ffd84d;border-radius:28px;background:radial-gradient(circle at 18% 12%,rgba(255,255,255,.26),transparent 22%),linear-gradient(150deg,#7b2cbf,#4b006e 48%,#2d0a52);color:#ffffff;padding:clamp(28px,5vh,52px) clamp(22px,4vw,44px);text-align:center;box-shadow:0 0 0 8px rgba(255,255,255,.24),0 0 38px rgba(255,216,77,.58),0 32px 90px rgba(31,8,66,.68);transform:scale(.82);animation:win-card-pop .36s cubic-bezier(.2,1.3,.4,1) forwards}.win-card:before{content:"";position:absolute;inset:12px;border:2px solid rgba(255,216,77,.54);border-radius:22px;pointer-events:none}.win-close-button{position:absolute;top:14px;right:14px;z-index:3;display:grid;place-items:center;width:42px;height:42px;border:2px solid rgba(255,216,77,.9);border-radius:50%;background:rgba(255,216,77,.18);color:#fff3b0;box-shadow:0 0 18px rgba(255,216,77,.26)}.win-close-button:hover{background:rgba(255,216,77,.28)}.win-card .eyebrow{color:#ffd84d;letter-spacing:.16em;text-shadow:0 0 18px rgba(255,216,77,.54)}.win-card h2{color:#ffffff;font-size:clamp(2rem,5vw,5rem);line-height:.95;text-shadow:0 4px 0 rgba(75,0,110,.52),0 0 28px rgba(255,216,77,.38)}.solved-answer,.solved-board{color:var(--blue-ink);font-size:clamp(2.4rem,7vw,7rem);font-weight:950;line-height:.95;text-align:center;text-transform:uppercase;overflow-wrap:normal;text-wrap:balance;word-break:keep-all}.solved-answer{border-radius:18px;background:linear-gradient(180deg,#fff3b0,#ffd84d 60%,#ffb703);color:#2d0a52;border:3px solid #ffffff;box-shadow:0 9px 0 #a65f00,0 0 26px rgba(255,216,77,.62);padding:10px 16px}.solved-board{display:grid;min-height:clamp(150px,22vw,280px);place-items:center;padding:20px;animation:solved-blink .72s steps(2,jump-none) infinite}.win-lights{position:absolute;inset:10px;display:grid;grid-template-columns:repeat(18,1fr);grid-gap:8px;gap:8px;pointer-events:none}.win-lights span{width:10px;height:10px;border-radius:999px;background:#ffd84d;box-shadow:0 0 22px #ffd84d;animation:bulb-blink .7s ease-in-out infinite alternate}.win-lights span:nth-child(2n){animation-delay:.18s;background:#e23b4e;box-shadow:0 0 22px #e23b4e}.winner-card{display:grid;grid-gap:6px;gap:6px;border:2px solid var(--green);border-radius:var(--radius);background:#f1fbf5;color:var(--blue-ink);padding:14px;box-shadow:var(--shadow)}.winner-card strong{font-size:1.25rem}.winner-card span{color:var(--green);font-weight:950;text-transform:uppercase}.game-over-panel{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:18px;gap:18px;align-items:center;border:3px solid #ffffff;border-radius:24px;background:linear-gradient(135deg,var(--blue),var(--blue-deep));color:#ffffff;padding:clamp(18px,3vw,28px);box-shadow:var(--shadow)}.game-over-panel .eyebrow,.game-over-panel h2,.game-over-panel p{color:#ffffff}.game-over-panel h2{font-size:clamp(2rem,5vw,4.5rem);line-height:.95;text-transform:uppercase}.game-over-panel p{margin:8px 0 0;font-weight:800;opacity:.86}.game-over-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.status-bar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;grid-gap:12px;gap:12px;border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,255,255,.94);box-shadow:var(--shadow);padding:14px 16px}.status-bar>:last-child{text-align:right}.status-center{color:var(--muted);font-weight:950;text-align:center}.roulette-overlay{position:fixed;inset:0;z-index:70;display:grid;place-items:center;background:radial-gradient(80% 80% at 50% 40%,rgba(31,106,168,.55),rgba(18,63,99,.74));-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);animation:overlay-in .22s ease}.roulette-panel{position:relative;display:grid;justify-items:center;grid-gap:12px;gap:12px;width:min(92vw,560px);max-height:96vh;overflow:hidden;border:4px solid #ffffff;border-radius:28px;background:linear-gradient(160deg,var(--blue),var(--blue-deep));box-shadow:0 30px 90px rgba(18,63,99,.6);padding:clamp(18px,3vh,30px) clamp(18px,3vw,34px) clamp(16px,2.6vh,26px);transform:scale(.84) translateY(12px);animation:roulette-card-in .42s cubic-bezier(.2,1.3,.4,1) forwards}.roulette-panel .eyebrow{color:var(--accent-soft);letter-spacing:0}.roulette-title{min-height:1.1em;color:#ffffff;font-size:clamp(1.6rem,4vh,2.3rem);font-weight:950;line-height:1.04;text-transform:uppercase}.roulette-title-result{color:var(--accent-soft);animation:result-pop .5s ease}.roulette-stage{position:relative;width:min(72vw,clamp(260px,50vh,410px));aspect-ratio:1;margin-top:2px}.roulette-pointer{position:absolute;top:-13px;left:50%;z-index:6;transform:translateX(-50%);width:0;height:0;border-left:18px solid transparent;border-right:18px solid transparent;border-top:34px solid #ffffff;filter:drop-shadow(0 5px 4px rgba(0,0,0,.45))}.roulette-pointer:after{content:"";position:absolute;top:-36px;left:-9px;width:18px;height:18px;border-radius:50%;background:#ffffff;box-shadow:0 0 0 4px var(--accent-edge)}.roulette-ring{pointer-events:none;box-shadow:0 0 0 8px var(--blue-ink),0 0 0 13px #ffffff,0 22px 55px rgba(0,0,0,.5)}.roulette-disc,.roulette-ring{position:absolute;inset:0;border-radius:50%}.roulette-disc{overflow:hidden;transition:transform 4.7s cubic-bezier(.11,.62,.16,1)}.roulette-disc svg{display:block;width:100%;height:100%}.roulette-wedge{stroke:#cfe5f7;stroke-width:1.3;transition:filter .25s ease}.roulette-wedge-win{filter:brightness(1.18) drop-shadow(0 0 7px rgba(255,255,255,.95))}.roulette-wedge-label{font-family:var(--font);font-size:8px;font-weight:900}.roulette-hub,.roulette-wedge-label{letter-spacing:0;text-transform:uppercase}.roulette-hub{position:absolute;top:50%;left:50%;z-index:5;display:grid;place-items:center;width:22%;height:22%;border:4px solid var(--blue-ink);border-radius:50%;background:radial-gradient(circle at 36% 30%,#ffffff,#dcefff 58%,var(--blue) 100%);color:var(--blue-ink);font-size:clamp(.42rem,1.4vh,.65rem);font-weight:950;transform:translate(-50%,-50%);box-shadow:0 6px 16px rgba(0,0,0,.45)}.roulette-spin-button{min-width:210px;margin-top:clamp(12px,2.2vh,20px);border:1px solid #ffffff;background:#ffffff;color:var(--blue-ink)}.roulette-foot{min-height:1.1em;color:var(--accent-soft);font-size:.72rem;font-weight:900;text-transform:uppercase}@keyframes wheel-spin{to{transform:rotate(1turn)}}@keyframes sheen{to{transform:translateX(130%)}}@keyframes wheel-pop{0%{transform:rotate(-18deg) scale(.96)}to{transform:rotate(0deg) scale(1)}}@keyframes tile-pop{0%{box-shadow:0 0 0 0 rgba(47,147,214,0)}30%{box-shadow:0 0 0 7px color-mix(in srgb,var(--player-color,var(--blue)) 45%,transparent),0 0 30px color-mix(in srgb,var(--player-color,var(--blue)) 70%,transparent)}to{box-shadow:inset 0 -5px 0 rgba(47,147,214,.32),0 4px 10px rgba(18,63,99,.18)}}@keyframes board-shake{10%,90%{transform:translateX(-3px)}20%,80%{transform:translateX(6px)}30%,50%,70%{transform:translateX(-10px)}40%,60%{transform:translateX(10px)}}@keyframes xshow{0%{opacity:0;transform:scale(2.6) rotate(-22deg)}22%{opacity:1;transform:scale(1) rotate(-10deg)}78%{opacity:1;transform:scale(1) rotate(-10deg)}to{opacity:0;transform:scale(1.15) rotate(-10deg)}}@keyframes solve-wave{0%,to{filter:brightness(1)}45%{filter:brightness(1.18);transform:rotateY(180deg) translateY(-4px)}}@keyframes confetti-fall{0%{transform:translateY(-18%) rotate(0deg)}to{transform:translateY(106vh) rotate(540deg)}}@keyframes confetti-burst-fall{0%{opacity:0;transform:translate3d(0,-10vh,0) scale(.6) rotate(0deg)}10%{opacity:1}to{opacity:.95;transform:translate3d(var(--confetti-x),106vh,0) scale(1) rotate(var(--confetti-rotation))}}@keyframes balloon-rise{0%{opacity:0;transform:translate3d(-16px,0,0) rotate(-7deg) scale(.8)}12%{opacity:1}to{opacity:.95;transform:translate3d(18px,-126vh,0) rotate(8deg) scale(1.05)}}@keyframes win-card-pop{0%{transform:scale(.72)}62%{transform:scale(1.05)}to{transform:scale(1)}}@keyframes roulette-card-in{to{transform:scale(1) translateY(0)}}@keyframes result-pop{0%{opacity:0;transform:scale(.6)}60%{transform:scale(1.12)}to{opacity:1;transform:scale(1)}}@keyframes bulb-blink{0%{opacity:.35;transform:scale(.75)}to{opacity:1;transform:scale(1.2)}}@keyframes winner-pulse{0%{box-shadow:0 0 0 0 rgba(31,157,87,.16)}to{box-shadow:0 0 0 5px rgba(31,157,87,.16)}}@keyframes solved-blink{50%{background:var(--accent-soft)}}@keyframes overlay-in{0%{opacity:0}to{opacity:1}}@keyframes roulette-settle{60%{transform:scale(1.04)}to{transform:scale(1)}}@media (max-width:760px){.controller-hero{align-items:stretch;flex-direction:column}.controller-meta{justify-items:start;text-align:left}.display-stage,.display-status-row,.game-over-panel,.status-bar{grid-template-columns:1fr}.status-bar>:last-child,.status-center{text-align:left}.letter-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.balloon-field,.confetti-layer,.win-lights,.x-stamp{display:none!important}.solved-board{animation:none!important}}