/* Compact shared treatment; the board dimensions are measured after the header. */
.snake-game,.game2048,.memory-game{padding:12px!important;border-radius:17px!important}.snake-game .game2048-nav,.game2048 .game2048-nav{margin-bottom:7px;gap:5px;font-size:11px}.game2048-nav a{padding:5px 8px}.snake-hero h1,.game2048 h1,.memory-hero h1{font-size:30px!important;margin:0!important;line-height:1.1!important}.snake-hero>div>span,.game2048-heading>div>span,.memory-kicker,.snake-hero p,.game2048-heading p,.memory-hero p{display:none}.snake-hero>b,.memory-mascot{font-size:32px!important}.memory-hero{margin-bottom:6px}.snake-speeds,.memory-levels{margin:7px 0;padding:3px;gap:5px}.snake-speeds button,.memory-levels button{padding:5px 2px;min-height:34px}.snake-speeds small,.memory-levels small{font-size:9px;margin-top:1px}.snake-stats,.memory-stats{margin:6px 0 8px;gap:5px}.snake-stats>div,.memory-stat{padding:5px 2px}.snake-stats strong,.memory-stat strong{font-size:20px}.snake-stats small,.memory-stat span{font-size:9px}.memory-game progress{height:4px}.snake-board,.game2048-board{width:min(100%,var(--arcade-board-height,350px));aspect-ratio:1;box-sizing:border-box;margin:4px auto}.game2048-board{padding:8px;gap:6px}.tile2048{aspect-ratio:auto;font-size:clamp(16px,4vw,28px)}.memory-game .memory-grid{height:var(--arcade-board-height,260px);width:var(--arcade-board-width,100%);max-width:100%;margin:4px auto 8px;gap:6px;grid-auto-rows:minmax(0,1fr)}.memory-game .memory-card{min-height:0;aspect-ratio:auto;border-radius:9px;box-shadow:0 3px 0 #173a85}.memory-face{font-size:clamp(18px,5vw,38px)}.memory-back{font-size:22px}.memory-board{min-height:0}.memory-toolbar,.snake-actions{margin:8px 0 5px;gap:5px}.memory-toolbar button,.snake-actions button,.game2048-options button,.game2048-top button{min-height:33px;padding:5px 8px;font-size:11px}.memory-bottom,.snake-storage,.game2048-storage{font-size:10px;margin:3px 0}.memory-message,.snake-status,.game2048-status{font-size:11px;min-height:1.3em;margin:4px 0}.memory-win{padding:6px;margin-top:5px}.memory-win .memory-trophy{font-size:20px}.memory-win h2{font-size:15px;display:inline}.memory-win p{font-size:11px;margin:3px}.memory-win button{min-height:30px;padding:4px 8px;font-size:11px}.game2048-scores>div{padding:4px 9px;min-width:60px}.game2048-scores strong{font-size:19px}.game2048-scores small{font-size:9px}.game2048-modes{grid-template-columns:repeat(4,minmax(0,1fr));margin:7px 0 2px;gap:4px}.game2048-modes button{padding:4px 1px;min-height:33px;font-size:10px}.game2048-options{margin:3px 0;gap:5px;font-size:12px}.game2048-top{margin:4px 0}.game2048-top p{font-size:10px;line-height:1.2}.game2048-top small{display:none}.game2048-controls,.snake-controls{margin-top:7px;gap:5px}.game2048-controls button,.snake-controls button{min-height:37px;font-size:21px;padding:2px}.game2048-controls small,.snake-controls small{display:none}.game2048-rules,.snake-rules{margin-top:6px;padding-top:5px;font-size:11px}.game2048-result{padding:6px;margin-top:5px}.game2048-result b{font-size:15px}.game2048-result p{font-size:11px;margin:3px}.game2048-result button{min-height:30px;padding:3px 7px;font-size:11px}.arcade-help{width:min(540px,calc(100vw - 24px));max-height:85dvh;overflow:auto;padding:20px;border-radius:15px;border:1px solid var(--line);background:var(--surface,#fff);color:var(--ink,#18334f);font-size:14px;line-height:1.7}.arcade-help::backdrop{background:#14293e99}.arcade-help h2{font-size:20px}.arcade-help button{min-height:40px;padding:7px 12px;cursor:pointer}body:has([data-snake-game]) .breadcrumb,body:has([data-game2048]) .breadcrumb,body:has([data-memory-game]) .breadcrumb{display:none}@media(max-height:500px){.snake-stats small,.memory-stat span,.memory-bottom,.snake-storage,.game2048-storage,.game2048-top p{display:none}.snake-hero,.game2048-heading,.memory-hero{max-height:30px}.game2048 h1,.snake-hero h1,.memory-hero h1{font-size:24px!important}.game2048-modes,.snake-speeds,.memory-levels{margin:3px 0}.memory-stat strong,.snake-stats strong{font-size:16px}}

body:has([data-snake-game]) .app-download-strip,body:has([data-game2048]) .app-download-strip,body:has([data-memory-game]) .app-download-strip{display:none!important}.game2048 .tile2048{font-size:clamp(8px,calc(var(--arcade-board-height,300px)/12),28px)!important}
.snake-game .game2048-nav,.game2048 .game2048-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px}.game2048-nav a{display:flex;align-items:center;justify-content:center;text-align:center;padding:3px 2px;min-height:24px;font-size:9px;line-height:1.1}.snake-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.snake-actions button{white-space:nowrap;min-width:0;font-size:10px;padding:4px 0}.arcade-landscape{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(170px,.85fr);column-gap:12px;align-content:center;max-width:900px!important}.arcade-landscape>*{grid-column:2;min-width:0}.arcade-landscape>.memory-board,.arcade-landscape>.game2048-board,.arcade-landscape>.snake-board,.arcade-landscape>.dots-board,.arcade-landscape>.four-board,.arcade-landscape>.slide-board,.arcade-landscape>.ws-board{grid-column:1;grid-row:1 / span 20;align-self:center}.arcade-landscape .snake-hero,.arcade-landscape .memory-hero,.arcade-landscape .game2048-heading{display:none}.arcade-landscape .game2048-modes button,.arcade-landscape .snake-speeds button,.arcade-landscape .memory-levels button{min-height:28px}.arcade-landscape .snake-overlay span{display:none}@media(max-height:650px){.snake-speeds small,.memory-levels small{display:none}.snake-speeds button,.memory-levels button{min-height:29px}.snake-game,.memory-game,.game2048{padding:8px!important}.snake-overlay b{font-size:15px}.snake-overlay span{display:none}.memory-toolbar button{font-size:10px;padding:4px;min-height:30px}.memory-message{font-size:10px}.game2048-top button{min-height:28px}.game2048-rules,.snake-rules{margin-top:3px;padding-top:3px}.snake-hero>b,.memory-mascot{font-size:24px!important}}
.arcade-hub{max-width:1000px;margin:0 auto;padding:8px}.arcade-hub header{margin-bottom:20px}.arcade-hub header>span{font-size:11px;font-weight:800;letter-spacing:.16em;color:var(--brand-primary,#006cb7)}.arcade-hub h1{font-size:clamp(25px,4vw,38px);letter-spacing:-.04em;margin:7px 0}.arcade-hub h1>span{color:#cf006e}.arcade-hub header p{font-size:13px;line-height:1.6;color:var(--muted,#62758c)}.arcade-game-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:16px}.arcade-game-tile{display:flex;flex-direction:column;gap:16px;min-width:0;text-decoration:none;border:1px solid color-mix(in srgb,var(--game-tint) 45%,var(--surface,#fff));border-top:4px solid var(--game-tint);padding:20px;border-radius:20px;background:linear-gradient(145deg,color-mix(in srgb,var(--game-tint) 11%,var(--surface,#fff)),var(--surface,#fff));color:var(--ink,#18334f);box-shadow:0 7px 18px #16365313;transition:transform .16s,box-shadow .16s}.arcade-game-tile:hover{transform:translateY(-3px);box-shadow:0 11px 24px #16365322}.arcade-game-tile:focus-visible{outline:3px solid var(--game-tint);outline-offset:3px}.arcade-game-icon{display:grid;place-items:center;width:92px;height:92px;border-radius:24px;font-size:60px;background:color-mix(in srgb,var(--game-tint) 12%,var(--surface,#fff));line-height:1;filter:drop-shadow(0 5px 5px #16365312)}.arcade-game-tile h2{font-size:23px;margin:0 0 7px;letter-spacing:-.025em}.arcade-game-tile p{font-size:13px;line-height:1.7;margin:0 0 8px;color:var(--muted,#62758c)}.arcade-game-tile small{font-size:11px;color:var(--game-tint);font-weight:650}.arcade-game-tile strong{display:flex;justify-content:space-between;border-top:1px solid var(--line,#d2dfec);padding-top:12px;margin-top:15px;color:var(--game-tint);font-size:13px}.arcade-hub-note{font-size:11px;color:var(--muted,#62758c);line-height:1.7;margin:18px 0}@media(max-width:540px){.arcade-game-grid{grid-template-columns:1fr;gap:12px}.arcade-game-tile{flex-direction:row;align-items:center;padding:15px;gap:15px}.arcade-game-icon{flex:none;width:76px;height:76px;font-size:48px;border-radius:19px}.arcade-game-tile>div{min-width:0;flex:1}.arcade-game-tile h2{font-size:20px}.arcade-game-tile p{font-size:11px}.arcade-game-tile small{font-size:10px}.arcade-game-tile strong{margin-top:8px;padding-top:7px}.arcade-hub header{margin-bottom:14px}}@media(prefers-reduced-motion:reduce){.arcade-game-tile{transition:none}}
