/* Shared appearance owner: applied after game styles, independent of content filters. */
/* Hide seasonal promotions before first paint; normal catalog links stay available all year. */
html:not([data-halloween-promotion=active]) .halloween-shortcut,
html:not([data-halloween-promotion=active]) #featured-theme{display:none}
.header{position:relative;flex-wrap:wrap;gap:8px 16px;padding-block:10px;min-height:72px}
.header nav{gap:0 16px;flex:1;justify-content:flex-end}
.halloween-shortcut{display:inline-flex;gap:6px;align-items:center;min-height:44px;color:#9a3800;font-weight:700;text-decoration:none;white-space:nowrap}
.halloween-shortcut:hover{text-decoration:underline}
.site-appearance{position:relative;font-size:14px}
.site-appearance summary{cursor:pointer;min-height:44px;display:flex;align-items:center;padding:8px;border:1px solid var(--border);border-radius:var(--radius)}
.site-appearance summary::after{content:' ▾';margin-left:6px}
.appearance-panel{position:absolute;right:0;top:100%;width:270px;max-width:calc(100vw - 36px);padding:18px;z-index:8;background:var(--background);color:var(--primary);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 8px 24px #0003}
.appearance-panel p{font-size:14px;margin:8px 0 12px}
.appearance-panel button{display:block;width:100%;text-align:left;margin-top:8px}
.appearance-panel button[aria-pressed=true]::after{content:' ✓'}
.ladder-home{background:#edf5ef}
.ladder-home .play-band{border:0;padding:20px 0 16px;background:transparent}
.ladder-home .play-layout{grid-template-columns:minmax(0,1.65fr) minmax(280px,1fr);gap:24px}
.ladder-home .heading-row{margin-bottom:16px}
.ladder-home .section{padding-block:16px}
.ladder-home .game-links a{background:var(--background)}
.ladder-home #finder{margin-block:16px;background:var(--background);border:1px solid var(--border);border-radius:var(--radius);padding:20px 24px}
.ladder-home #finder .section-heading p{margin:8px 0}
.ladder-home .theme-feature{position:relative;overflow:hidden;min-height:190px;border-radius:10px;padding:22px 28px}
.ladder-home .theme-feature-copy{position:relative;z-index:1;max-width:65%}
.ladder-home .theme-feature img{position:absolute;right:0;bottom:0;width:55%;height:100%;object-fit:cover;opacity:.8;mask-image:linear-gradient(to right,transparent,#000 30%)}
.ladder-home #featured-theme-title{font-size:14px;margin-bottom:10px;color:var(--primary)}
:root{scrollbar-color:var(--border) var(--surface);scrollbar-width:thin}
html[data-site-appearance=halloween]{--primary:#fff3dd;--background:#241943;--surface:#302344;--accent:#ff9990;--highlight:#ffd27a;--border:#88739f;--action:#ff9b35;color-scheme:dark}
html[data-site-appearance=halloween] body{background:#171029 url('/art/halloween-night.svg') center top/1440px auto fixed no-repeat;color:var(--primary)}
html[data-site-appearance=halloween] .header,html[data-site-appearance=halloween] .footer{color:var(--primary);background:rgba(23,16,41,.96)}
html[data-site-appearance=halloween] .play-band{background:rgba(23,16,41,.9);border-color:var(--border)}
html[data-site-appearance=halloween] .game,html[data-site-appearance=halloween] .rules,html[data-site-appearance=halloween] .game-links a,html[data-site-appearance=halloween] .legal{background:#241943;color:var(--primary)}
html[data-site-appearance=halloween] .rules{padding:18px;border-radius:var(--radius)}
html[data-site-appearance=halloween] button{background:var(--action);color:#24152d;border-color:var(--action)}
html[data-site-appearance=halloween] button.secondary,html[data-site-appearance=halloween] .icon-button{background:var(--background);color:var(--primary);border-color:var(--border)}
html[data-site-appearance=halloween] button[aria-pressed=true]{background:var(--action);color:#24152d;border-color:var(--action)}
html[data-site-appearance=halloween] input,html[data-site-appearance=halloween] select,html[data-site-appearance=halloween] textarea{background:#302344;color:var(--primary);border-color:var(--border)}
html[data-site-appearance=halloween] input::placeholder{color:#d1c1df}
html[data-site-appearance=halloween] .brand-mark,html[data-site-appearance=halloween] .letter.changed{color:#24152d}
html[data-site-appearance=halloween] .icon-button img{filter:invert(1)}
html[data-site-appearance=halloween] .halloween-shortcut,html[data-site-appearance=halloween] .eyebrow{color:#ffb465}
html[data-site-appearance=halloween] :focus-visible{outline:3px solid #ffd27a;outline-offset:3px}
html[data-site-appearance=halloween] .more-band{background:rgba(23,16,41,.92)}
@media(max-width:1000px){.header nav{order:4;flex-basis:100%;justify-content:flex-start}.header .brand{margin-right:auto}}
@media(max-width:760px){.header{flex-direction:row;align-items:center;justify-content:flex-start;padding-block:8px;gap:4px 12px}.header .brand{font-size:20px}.header nav{gap:0 12px}.site-appearance{margin-left:auto}.ladder-home .play-layout{grid-template-columns:1fr}.ladder-home .play-band{padding-top:16px}.ladder-home .theme-feature{padding:18px;min-height:230px}.ladder-home .theme-feature-copy{max-width:100%}.ladder-home .theme-feature img{width:100%;opacity:.3;mask-image:none}.ladder-home #finder{margin-inline:18px;padding:18px}.ladder-home .theme-feature h3{font-size:26px}}
@media(forced-colors:active){:root{scrollbar-color:auto}.icon-button img{filter:none!important}}
/* Native mobile disclosure keeps all existing links without crowding play. */
.site-navigation{display:contents}.site-navigation>summary{display:none}
@media(max-width:1000px){.site-navigation{display:block;position:relative;order:3}.site-navigation>summary{display:flex;align-items:center;justify-content:center;min-height:44px;padding:8px;cursor:pointer;border:1px solid var(--border);border-radius:var(--radius)}.site-navigation:not([open])>nav,.site-navigation:not([open])>.site-appearance{display:none}.site-navigation[open]>nav{position:absolute;right:0;top:44px;z-index:9;display:flex;flex-direction:column;min-width:250px;background:var(--background);padding:12px 18px;border:1px solid var(--border)}.site-navigation[open]>.site-appearance{position:absolute;right:0;top:calc(44px + 244px);z-index:10;width:250px;background:var(--background);padding:0 18px 12px}.appearance-panel{right:0}.header .brand{margin-right:auto}.halloween-shortcut{order:2}.header{flex-wrap:nowrap}.header nav{color:var(--primary)}}
@media(max-width:360px){.header{gap:6px;padding-inline:12px}.header .brand{font-size:18px;gap:5px}.brand-mark{width:23px;height:25px;font-size:16px;line-height:23px}.halloween-shortcut{font-size:14px;gap:3px}.site-navigation>summary{font-size:14px;padding:6px}}
html[data-site-appearance=halloween] .search-cell,html[data-site-appearance=halloween] .cross-cell{background:var(--background);color:var(--primary);border-color:var(--border)}
html[data-site-appearance=halloween] .search-cell.found,html[data-site-appearance=halloween] .cross-cell.in-word{background:var(--surface)}
html[data-site-appearance=halloween] .search-cell.pending,html[data-site-appearance=halloween] .cross-cell.selected,html[data-site-appearance=halloween] .lock-tile.present{background:var(--highlight);color:#24152d}
html[data-site-appearance=halloween] .idiom-choices .correct{background:var(--surface);color:var(--primary);opacity:1}
.navigation-panel{display:contents}
@media(max-width:1000px){.site-navigation:not([open])>.navigation-panel{display:none}.site-navigation[open]>.navigation-panel{display:block;position:absolute;right:0;top:44px;z-index:9;width:250px;background:var(--background);color:var(--primary);border:1px solid var(--border);padding:12px 18px}.site-navigation[open]>.navigation-panel>nav{position:static;min-width:0;padding:0;border:0;display:flex;flex-direction:column}.site-navigation[open]>.navigation-panel>.site-appearance{position:relative;top:auto;right:auto;padding:8px 0 0;width:auto;margin:0}.appearance-panel{right:0}}
.ladder-home .game{padding:16px}.ladder-home .status:empty{min-height:0;margin:0}.ladder-home .practice-help{margin:8px 0}.ladder-home .game-toolbar{margin-bottom:8px}
/* Content context may show a badge, but never owns the site palette. */
html[data-site-appearance=halloween] .halloween-game .game{--primary:inherit;--surface:inherit;--border:inherit;--accent:inherit;--highlight:inherit;background:var(--background);color:var(--primary);border-color:var(--border)}
html[data-site-appearance=halloween] .halloween-game .heading-row,html[data-site-appearance=halloween] .halloween-banner,html[data-site-appearance=halloween] .halloween-banner a{color:var(--primary)}
html[data-site-appearance=halloween] .halloween-game .rules{background:var(--background);color:var(--primary)}
html[data-site-appearance=halloween] .halloween-game .game .secondary,html[data-site-appearance=halloween] .halloween-game .theme-picker select,html[data-site-appearance=halloween] .halloween-game #answer{background:var(--surface);color:var(--primary);border-color:var(--border)}
html[data-site-appearance=halloween] .halloween-game .search-cell{background:var(--background);color:var(--primary);border-color:var(--border)}
html[data-site-appearance=halloween] .halloween-game .search-cell.found{background:var(--surface)}
html[data-site-appearance=halloween] .halloween-game .search-cell.pending{background:var(--highlight);color:#24152d}
html[data-site-appearance=halloween] .halloween-game .search-words,html[data-site-appearance=halloween] .halloween-game #clue{background:var(--surface);color:var(--primary);border-color:var(--border)}
html[data-site-appearance=halloween] .halloween-game .search-words li::before{color:#ffb465}
html[data-site-appearance=halloween] .practice-game .required-letter,html[data-site-appearance=halloween] .practice-game button[aria-pressed=true]{background:var(--highlight);color:#24152d}
html[data-site-appearance=halloween] .halloween-game .game button:focus-visible,html[data-site-appearance=halloween] .halloween-game .game input:focus-visible,html[data-site-appearance=halloween] .halloween-game .game select:focus-visible{outline-color:#ffd27a}
@media(min-width:1001px){.header{flex-wrap:nowrap;background:var(--background)}.header .site-navigation{display:block;flex:1;min-width:0}.navigation-panel{display:flex;align-items:center;justify-content:flex-end;gap:16px}.header nav{flex:0 1 auto;gap:0 12px;flex-wrap:wrap}.site-appearance{flex:0 0 auto}.header .brand,.halloween-shortcut{flex-shrink:0}}
/* The site appearance also owns themed-game surroundings, including desktop Search. */
html[data-site-appearance=halloween] .halloween-game.word-search-page .play-band,html[data-site-appearance=halloween] .halloween-game.practice-page .play-band{background:#171029;border-color:var(--border)}
