:root{color-scheme:light;--surface:#fff;--control-border:#dbe4f2;--control-hover:#dce8f9;--control-ink:#29344b;--primary:#4c70af;--primary-hover:#3d5f98;--on-primary:#fff;--toast-bg:#29344b;--toast-ink:#fff}
:root[data-theme=dark]{color-scheme:dark;--ink:#edf1fb;--muted:#acb9d1;--blue:#9cbef8;--blue-dark:#b9ceff;--pink:#eeacd1;--cream:#111827;--line:#344159;--soft-blue:#202d45;--soft-pink:#39283b;--soft:#202d45;--surface:#192235;--control-border:#40516e;--control-hover:#2b3d5b;--control-ink:#edf1fb;--primary:#9cbef8;--primary-hover:#b4cefa;--on-primary:#14243e;--toast-bg:#dce7fc;--toast-ink:#14243e}
body{transition:background-color .25s,color .25s}
.preference-controls{display:flex;align-items:center;gap:5px;flex-shrink:0}
.preference-controls button{display:grid;place-items:center;position:relative;padding:0;min-height:44px;flex-shrink:0;cursor:pointer;border:0;color:var(--control-ink);background:transparent;box-shadow:none;isolation:isolate;transition:background-color .2s,border-color .2s,transform .2s}
.preference-controls button:hover{background:var(--soft-blue,var(--soft))}
.preference-controls button:active{transform:scale(.93)}
.preference-controls button:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
.theme-toggle{width:44px;border-radius:50%!important;overflow:hidden}
.theme-orb{position:absolute;left:7px;top:7px;width:30px;height:30px;color:#9d6915;transition:color .3s}
.theme-orb svg{position:absolute;inset:5px;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transition:transform .35s,opacity .25s}
.theme-moon{opacity:0;transform:rotate(-60deg) scale(.4)}
.theme-stars{display:none}
[data-theme=dark] .theme-orb{color:var(--blue)}
[data-theme=dark] .theme-sun{opacity:0;transform:rotate(80deg) scale(.4)}
[data-theme=dark] .theme-moon{opacity:1;transform:rotate(0) scale(1)}
.sound-toggle{width:44px;border-radius:50%!important}
.sound-toggle svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.sound-slash{opacity:0}.sound-waves,.sound-slash{transition:opacity .2s}
.sound-toggle[aria-pressed=false] .sound-waves{opacity:0}.sound-toggle[aria-pressed=false] .sound-slash{opacity:1}
.sound-toggle[aria-pressed=false]{color:var(--muted)}
::view-transition-old(root),::view-transition-new(root){animation:none;mix-blend-mode:normal}::view-transition-new(root){z-index:1}
@media(prefers-reduced-motion:reduce){body,.preference-controls button,.theme-orb,.theme-orb svg,.theme-stars,.sound-waves,.sound-slash{transition:none!important}::view-transition-group(root){animation:none!important}}
