.header-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-shrink:0}.theme-toggle{min-height:44px;padding:10px 13px;border:1px solid #91a195;border-radius:24px;background:transparent;color:var(--ink);font-size:12px;font-weight:700;white-space:nowrap}.header-cta{background:transparent;color:var(--ink)}.privacy-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 0}.privacy-toolbar .back-link{margin:0}
html[data-theme=dark]{--cream:#101e1a;--ink:#e8efe6;--muted:#b1c0b6;--paper:#192b24;--line:#3d5548;--quiet:#bdcbbf;--danger:#ffb1a6;--success:#abdb9b;color-scheme:dark}
html[data-theme=dark] .announcement{background:#091710;color:#e1e9d9}
html[data-theme=dark] h1 em,html[data-theme=dark] .category{color:#e8b47c}
html[data-theme=dark] .header-cta,html[data-theme=dark] .theme-toggle,html[data-theme=dark] .filters button{border-color:#647d6b}
html[data-theme=dark] .header nav a:hover{color:var(--gold)}
html[data-theme=dark] .filters button.active{background:var(--gold);color:#13271e;border-color:var(--gold)}
html[data-theme=dark] .ticker,html[data-theme=dark] .footer-bottom{border-color:var(--line)}
html[data-theme=dark] .ticker span,html[data-theme=dark] .about-copy p{color:var(--quiet)}
html[data-theme=dark] .play{color:#163c34}
html[data-theme=dark] .word-art{background:#233f31;color:#f5e9ce}
html[data-theme=dark] .setup-aside,html[data-theme=dark] .learn-promo,html[data-theme=dark] .game-icon,html[data-theme=dark] .tag,html[data-theme=dark] .review-item,html[data-theme=dark] .notice,html[data-theme=dark] .feedback{background:#263d30}
html[data-theme=dark] .primary{background:var(--gold);color:#162b21;border-color:var(--gold)}
html[data-theme=dark] .answer:hover:not(:disabled){background:#2c4737}
html[data-theme=dark] .answer.correct{background:#284c32}
html[data-theme=dark] .answer.incorrect,html[data-theme=dark] .feedback.wrong{background:#503028}
html[data-theme=dark] .keyboard button.used-right,html[data-theme=dark] .search-cell.found,html[data-theme=dark] .word-list .found{background:#315237}
html[data-theme=dark] .keyboard button.used-wrong,html[data-theme=dark] .cross-cell input.invalid{background:#59352e}
html[data-theme=dark] .search-cell.selected,html[data-theme=dark] .cross-cell input.active-word,html[data-theme=dark] .clue.active{background:#5d4b24;color:#fff4cf}
html[data-theme=dark] .cross-cell{background:#07110c}
html[data-theme=dark] .recovery-code{background:#0b1811;color:#f3efd9}
html[data-theme=dark] .pagination button{background:#192b24;color:var(--ink);border-color:var(--line)}
@media(max-width:1050px){.header{flex-wrap:wrap;gap:16px}.header nav{order:3;width:100%;justify-content:center}}@media(max-width:650px){.header-actions{gap:6px}.theme-toggle{font-size:11px;padding:9px}.header-actions .header-cta{font-size:11px;padding:10px}.header .brand{font-size:20px}.header{gap:12px}.header nav{gap:14px;flex-wrap:wrap}.header-actions{margin-left:auto}.privacy-toolbar{align-items:flex-start}.privacy-toolbar .back-link{font-size:13px}}

/* Full-width game row follows the carousel gutters at every breakpoint. */
.play-shortcuts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));max-width:1264px;margin:0 auto 18px;border:1px solid var(--line);isolation:isolate}
.play-shortcuts a{display:flex;align-items:center;justify-content:center;min-height:48px;padding:12px 8px;border-right:1px solid var(--line);font-size:13px;font-weight:700;text-align:center;line-height:1.3;background:color-mix(in srgb,var(--cell-colour) 12%,var(--paper));color:var(--ink)}
.play-shortcuts a:nth-child(1){--cell-colour:#6a9871}.play-shortcuts a:nth-child(2){--cell-colour:#ba9958}.play-shortcuts a:nth-child(3){--cell-colour:#69989f}.play-shortcuts a:nth-child(4){--cell-colour:#a37a8f}.play-shortcuts a:nth-child(5){--cell-colour:#929965}
.play-shortcuts a:last-child{border-right:0}.play-shortcuts a:hover{background:color-mix(in srgb,var(--cell-colour) 24%,var(--paper))}.play-shortcuts a:focus-visible{outline-offset:-4px}
.learn-promo{max-width:1264px}
@media(max-width:1360px){.learn-promo{margin-left:48px;margin-right:48px}}
@media(max-width:1000px){.play-shortcuts,.learn-promo{margin-left:25px;margin-right:25px}}
@media(max-width:650px){.play-shortcuts{margin-left:14px;margin-right:14px}.play-shortcuts a{font-size:11px;padding:10px 4px}.learn-promo{margin-left:20px;margin-right:20px}}

/* A warmer, more playful Vhangeri palette, with readable surfaces in both themes. */
:root{--accent-teal:#076c66;--accent-sky:#286486;--accent-rose:#9c3f56;--accent-gold:#8c5910;--focus:#c67a16;--play-shadow:0 24px 90px #061d1940}
html[data-theme=dark]{--accent-teal:#65d4bd;--accent-sky:#8bc9ed;--accent-rose:#f0a5b2;--accent-gold:#f5ce75;--focus:#f5ce75}
body{background-image:radial-gradient(ellipse at 95% 0%,color-mix(in srgb,var(--gold) 8%,transparent),transparent 42%)}
.learning-hero h1 em,.intro h1 em{color:var(--accent-gold)}
.game-card{border-top:4px solid var(--accent-teal);box-shadow:0 7px 24px #06251c09}.game-card:nth-child(2){border-top-color:var(--accent-gold)}.game-card:nth-child(3){border-top-color:var(--accent-sky)}.game-card:nth-child(4){border-top-color:var(--accent-rose)}
.game-card .game-icon{color:var(--accent-teal);background:color-mix(in srgb,var(--accent-teal) 12%,var(--paper))!important}.game-card:nth-child(2) .game-icon{color:var(--accent-gold)}.game-card:nth-child(3) .game-icon{color:var(--accent-sky)}.game-card:nth-child(4) .game-icon{color:var(--accent-rose)}
.learn-promo{border:1px solid color-mix(in srgb,var(--gold) 40%,var(--line));background:linear-gradient(115deg,color-mix(in srgb,var(--accent-teal) 12%,var(--paper)),color-mix(in srgb,var(--gold) 16%,var(--paper)))!important}
.primary{background:var(--gold)!important;color:#163c34!important;border-color:var(--gold)!important;box-shadow:0 4px 0 #845d1820}.secondary:hover,.answer:hover:not(:disabled){border-color:var(--accent-teal)}
.tag{background:color-mix(in srgb,var(--accent-teal) 15%,var(--paper))!important;color:var(--ink)}
.panel{border-color:var(--line);box-shadow:0 8px 30px #06251c08}.timer{color:var(--accent-gold)}progress{accent-color:var(--accent-teal)}
.play-launch{display:flex;align-items:flex-start;flex-direction:column;gap:18px;background:linear-gradient(125deg,var(--paper),color-mix(in srgb,var(--accent-teal) 12%,var(--paper)))}.play-launch p{max-width:580px;margin:0}.play-launch .section-title{margin:0}
html.play-window-open{overflow:hidden;scrollbar-gutter:stable}
.play-window{padding:0;border:1px solid var(--line);border-radius:24px;width:min(980px,calc(100vw - 48px));max-width:none;height:min(760px,calc(100dvh - 48px));max-height:none;background:var(--cream);color:var(--ink);box-shadow:var(--play-shadow);overflow:hidden}
.play-window[open]{display:flex;flex-direction:column}.play-window::backdrop{background:#031710b8;backdrop-filter:blur(8px)}
.play-window-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 24px;background:linear-gradient(115deg,color-mix(in srgb,var(--accent-teal) 14%,var(--paper)),color-mix(in srgb,var(--gold) 16%,var(--paper)));border-bottom:1px solid var(--line);flex:none}
.play-window-header h2{font-size:clamp(19px,2.5vw,27px);letter-spacing:-.7px;margin:4px 0 0}.play-window-kicker{font-size:10px;letter-spacing:1.6px;font-weight:700;color:var(--accent-teal)}
.play-window-close,.sound-toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;border:1px solid var(--line);border-radius:12px;background:var(--paper);color:var(--ink);padding:10px 15px;font-weight:700;white-space:nowrap}
.play-window-close:hover{border-color:var(--accent-teal)}.play-window-note{font-size:12px;line-height:1.4;color:var(--quiet);padding:10px 24px;margin:0;border-bottom:1px solid var(--line);flex:none}
.play-window-body{position:relative;flex:1;min-height:0}.play-window-frame{display:block;width:100%;height:100%;border:0;background:var(--cream)}.play-window-loading{position:absolute;inset:0;margin:0;display:grid;place-content:center;padding:24px;text-align:center;background:var(--cream);z-index:1}.play-window-loading[hidden]{display:none}
.play-embedded .announcement,.play-embedded .learning-hero,.play-embedded .learn-tabs,.play-embedded .learn-footer,.play-embedded .header nav,.play-embedded .header .brand,.play-embedded .skip-link{display:none!important}
.play-embedded .header{padding:12px 24px;justify-content:flex-end;gap:12px;max-width:none;flex-wrap:wrap}.play-embedded .header-actions{margin-left:0}.play-embedded .learning{padding:0 24px 28px;max-width:none}.play-embedded .game-head{align-items:flex-start}.play-embedded .panel{padding:24px}.play-embedded .back-link{margin-bottom:8px}.play-embedded .question{font-size:clamp(23px,3vw,32px);margin:20px 0 16px}.play-embedded .setup-grid{gap:18px}.play-preferences{display:flex}.sound-toggle{font-size:12px}
.play-embedded .game-layout{grid-template-columns:minmax(0,1fr) minmax(220px,290px)}.game-layout>*{min-width:0}.puzzle-scroll{overscroll-behavior:contain}.live-join input{min-width:0}
.joy-burst{position:fixed;left:50%;top:38%;pointer-events:none;z-index:20}.joy-burst i{position:absolute;width:9px;height:14px;background:var(--gold);border-radius:2px;animation:joy-flight 1.1s ease-out both;animation-delay:var(--delay)}.joy-burst i:nth-child(3n){background:var(--accent-teal)}.joy-burst i:nth-child(3n+1){background:var(--accent-rose)}
@keyframes joy-flight{from{transform:translate(0,0) rotate(0);opacity:1}to{transform:translate(var(--x),260px) rotate(var(--r));opacity:0}}
@keyframes play-arrive{from{opacity:0;transform:translateY(12px) scale(.99)}to{opacity:1;transform:none}}
@keyframes answer-yes{50%{box-shadow:0 0 0 5px color-mix(in srgb,var(--accent-teal) 35%,transparent)}}
@keyframes answer-no{25%{transform:translateX(-3px)}75%{transform:translateX(3px)}}
@media(prefers-reduced-motion:no-preference){.play-window[open],.play-embedded #app>.panel:not(.live-match),.play-embedded .setup-grid{animation:play-arrive .25s ease-out}.game-card,.primary,.answer,.letter-tile,.keyboard button{transition:transform .16s ease,background-color .16s ease,box-shadow .16s ease}.game-card:hover{transform:translateY(-4px)}.primary:active,.answer:active,.keyboard button:active,.letter-tile:active{transform:scale(.97)}.panel[data-reaction=correct],.panel[data-reaction=win]{animation:answer-yes .6s ease}.panel[data-reaction=wrong],.panel[data-reaction=timeout]{animation:answer-no .24s ease}.letter-slot{animation:play-arrive .2s ease-out}}
@media(max-width:900px){.play-embedded .game-layout{grid-template-columns:minmax(0,1fr)}.play-embedded .setup-grid{grid-template-columns:1fr}.play-embedded .setup-aside{padding:20px}.play-window{width:calc(100vw - 24px);height:calc(100dvh - 24px)}.game-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.play-window{width:100%;height:100dvh;max-height:100dvh;margin:0;border-radius:0;border:0}.play-window-header{padding:calc(12px + env(safe-area-inset-top)) 16px 12px;gap:10px}.play-window-note{padding:8px 16px;font-size:11px}.play-window-header h2{font-size:20px}.play-window-kicker{font-size:8px;letter-spacing:1px}.play-window-close{padding:10px;min-width:44px}.play-embedded .header{padding:10px 12px;gap:8px}.play-embedded .learning{padding:0 12px calc(20px + env(safe-area-inset-bottom))}.play-embedded .panel{padding:18px 14px;border-radius:16px}.play-embedded .question{font-size:23px;overflow-wrap:anywhere}.play-embedded .answers{gap:10px}.play-embedded .answer{min-height:52px;padding:15px}.play-embedded .quiz-head{gap:12px;font-size:12px}.play-embedded .timer{font-size:23px}.play-embedded .choices{gap:8px}.play-embedded .game-head .field{width:100%;margin:4px 0 16px}.play-embedded .game-head .section-title{font-size:27px}.play-embedded .keyboard{gap:5px}.play-embedded .keyboard button{width:40px;height:44px}.play-embedded .letter-slot,.play-embedded .letter-tile{width:35px;min-height:44px;font-size:20px}.play-embedded .live-join{flex-wrap:wrap}.play-embedded .live-join input{flex:1 1 140px}.play-embedded .live-clues{grid-template-columns:1fr}.play-embedded .game-cards{grid-template-columns:1fr}.learning .header-actions{flex-wrap:wrap}.game-card h3{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){.joy-burst{display:none}.play-window,.game-card,.panel,.letter-slot{animation:none!important;transition:none!important}}

.play-window-kicker:before{content:'✦';display:inline-block;margin-right:8px;font-size:14px;color:var(--accent-gold)}
@keyframes happy-star{0%,100%{transform:rotate(-12deg) scale(1)}50%{transform:rotate(12deg) scale(1.2)}}
@media(prefers-reduced-motion:no-preference){.play-window-kicker:before{animation:happy-star 3s ease-in-out 2}.play-embedded .hangman [data-part]:not([hidden]){animation:play-arrive .25s ease-out}}

@media(max-width:650px){.play-embedded .word-slots{gap:4px;margin:18px 0}.play-embedded .letter-slot{width:clamp(26px,7vw,35px)}.play-embedded .game-head{gap:12px}.play-embedded .game-head .field{margin:0 0 12px}.play-embedded .game-head .section-title{margin-bottom:8px}.play-embedded .back-link{min-height:36px}.play-embedded .game-head .eyebrow{margin-bottom:8px}}

progress{border:0;border-radius:999px;overflow:hidden;background:var(--line)}progress::-webkit-progress-bar{background:var(--line);border-radius:999px}progress::-webkit-progress-value{background:linear-gradient(90deg,var(--accent-teal),var(--gold));border-radius:999px}progress::-moz-progress-bar{background:var(--accent-teal);border-radius:999px}
@media(prefers-reduced-motion:no-preference){progress::-webkit-progress-value{transition:width .3s ease}}

/* Compact embedded play surface; site preferences stay on the main page. */
.play-window-header{padding:10px 18px}.play-window-header h2{font-size:21px;margin:0}.play-window-kicker{display:none}.play-window-note{padding:6px 18px}
.play-embedded .header [data-theme-toggle]{display:none!important}
.play-embedded .header{padding:6px 16px;gap:8px;flex-wrap:nowrap}.play-embedded .header-actions{min-width:0;flex-shrink:1}.play-embedded #account-button{max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.play-embedded .play-preferences{flex-shrink:0}
.play-embedded .learning{padding:0 16px 18px}.play-embedded .panel{padding:18px}.play-embedded .back-link{margin:0;min-height:32px}.play-embedded .game-head{gap:12px;align-items:center;margin-bottom:12px}.play-embedded .game-head .eyebrow{display:none}.play-embedded .game-head .section-title{font-size:22px;margin:0 0 4px}.play-embedded .game-head .field{margin:0;gap:4px}.play-embedded .hangman{height:125px;width:119px}.play-embedded .word-slots{margin:16px 0}.play-embedded .keyboard{margin:16px auto}.play-embedded .actions{margin-top:16px}.play-embedded .game-layout{margin-top:16px;gap:18px}
@media(max-width:650px){.play-window-header{padding:calc(6px + env(safe-area-inset-top)) 12px 6px}.play-window-header h2{font-size:19px}.play-window-note{padding:5px 12px}.play-embedded .header{padding:4px 10px}.play-embedded #account-button{max-width:190px}.play-embedded .learning{padding:0 10px calc(14px + env(safe-area-inset-bottom))}.play-embedded .panel{padding:14px 12px}.play-embedded .game-head .section-title{font-size:21px;margin:0 0 4px}.play-embedded .game-head .field{width:100%;margin:0;display:flex;align-items:center;gap:10px}.play-embedded .game-head .field label{font-size:12px;white-space:nowrap}.play-embedded .game-head .field select{flex:1;min-width:0;padding:8px;min-height:44px}.play-embedded .back-link{min-height:32px}.play-embedded .hangman{height:110px;width:104px}}

.play-embedded .game-head .section-title{display:none}.play-embedded .game-head .text-link{margin-top:0}
