/* Light mode is the checkpoint stylesheet and artwork, unchanged. */
.arcade-art,.arcade-hud { display:none; }
.theme-toggle,.language-picker>summary { width:34px; height:34px; flex:0 0 34px; display:inline-grid; place-items:center; padding:7px; border:1px solid var(--line); border-radius:50%; background:transparent; color:var(--ink); }
.theme-toggle:hover,.language-picker>summary:hover { border-color:var(--ink); }
.theme-toggle svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; }
.theme-toggle .theme-sun { display:none; }
[data-theme="dark"] .theme-toggle,[data-theme="dark"] .language-picker>summary { border-radius:0; color:var(--lime); border-color:#536348; box-shadow:2px 2px 0 #080c06; }
[data-theme="dark"] .theme-toggle .theme-moon { display:none; }
[data-theme="dark"] .theme-toggle .theme-sun { display:block; }
@keyframes arcade-reveal { from { clip-path:inset(0 0 100% 0); } to { clip-path:inset(0); } }
::view-transition-old(root) { animation:none; }
::view-transition-new(root) { animation:arcade-reveal .48s cubic-bezier(.22,.75,.2,1) both; }
@media(prefers-reduced-motion:reduce) { ::view-transition-group(*),::view-transition-old(*),::view-transition-new(*) { animation:none!important; } }

@media(max-width:640px) { .header-inner>.theme-toggle { position:absolute; right:120px; top:15px; } }

/* Comparison control is absent in light mode and stays reachable on small screens. */
.pixel-art { display:none; }
.art-style-toggle { font:inherit; font-size:11px; white-space:nowrap; padding:8px 10px; background:transparent; color:var(--ink); border:1px solid var(--line); cursor:pointer; }
.art-style-toggle[hidden] { display:none; }
@media(max-width:1050px) { .art-style-toggle { position:fixed; z-index:50; right:16px; bottom:16px; background:var(--bg); box-shadow:2px 2px 0 var(--line); } }
