/* Native button semantics retain Space/Enter; the thumb reflects aria-checked. */
.site-header .experience-controls [data-cyber-toggle]{gap:.65rem;min-height:44px;border:0;padding:.5rem .25rem;border-radius:0;background:transparent;color:inherit}
.site-header .experience-controls [data-cyber-toggle]::before{content:none}
.site-header .cyber-switch-track{position:relative;display:block;flex:none;width:2.5rem;height:1.4rem;border:1px solid currentColor;border-radius:2rem;background:transparent}
.site-header .cyber-switch-track::after{content:"";position:absolute;top:.2rem;left:.2rem;width:.875rem;height:.875rem;border-radius:50%;background:currentColor;transition:transform .18s ease-out}
.site-header .experience-controls [data-cyber-toggle][aria-checked=true] .cyber-switch-track{background:#FF9A2E;border-color:#FF9A2E;color:#0B0E14}
.site-header .experience-controls [data-cyber-toggle][aria-checked=true] .cyber-switch-track::after{transform:translateX(1.1rem)}
.site-header .experience-controls [data-cyber-toggle]:hover .cyber-switch-track{outline:1px solid currentColor;outline-offset:2px}
@media(prefers-reduced-motion:reduce){.site-header .cyber-switch-track::after{transition:none}}
/* Cartoon fire is present at rest; motion remains under the visitor's control. */
.cyber :is(.button,.btn,.bpri,.bsec,.btn-primary,[data-cyber-cta]):not(form *):not(.experience-controls *):not(.consent-banner *):not([data-consent]){position:relative;isolation:isolate;overflow:visible}
.cyber :is(.button,.btn,.bpri,.bsec,.btn-primary,[data-cyber-cta]):not(form *):not(.experience-controls *):not(.consent-banner *):not([data-consent])::before{content:"";position:absolute;z-index:-1;pointer-events:none;left:0;right:0;bottom:calc(100% - 2px);height:24px;background:url('/assets/cyber-flame.svg') repeat-x center bottom / 76px 24px}
.cyber-rain{opacity:1}

/* Film and sprites are decorative; no layout is reserved for the scene. */
.cyber .cyber-rain{z-index:2;mix-blend-mode:normal;image-rendering:pixelated}
.cyber-actor{position:absolute;top:0;left:0;z-index:3;display:block;pointer-events:none;image-rendering:pixelated;contain:strict}
.cyber-actor[hidden]{display:none!important}
body.cyber>.cyber-rain{position:fixed;inset:0 auto auto 0}
.cyber .site-header{z-index:3}
.cyber .consent-banner{z-index:4}
@media(prefers-reduced-motion:reduce){.cyber-actor{display:none!important}}
@media(prefers-reduced-motion:no-preference){
  .cyber[data-cyber-fx="running"] :is(.button,.btn,.bpri,.bsec,.btn-primary,[data-cyber-cta]):not(form *):not(.experience-controls *):not(.consent-banner *):not([data-consent])::before {
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 16' shape-rendering='crispEdges'%3E%3Cpath fill='%2313151c' d='M0 16V9h3v2h2V6h2V3h2V0h2v4h2v4h2v3h2V8h2V5h2V2h2v5h2v3h2V8h2v4h3v4z'/%3E%3Cpath fill='%23f15e1d' d='M1 16v-5h2v2h3V8h2V5h2V3h1v3h2v5h2v2h3v-3h2V7h2V5h1v4h2v3h2v-2h1v4h3v2z'/%3E%3Cpath fill='%23ffcf45' d='M5 16v-2h3v-3h2V8h1v3h2v5zm14 0v-3h2v-3h2v3h2v3z'/%3E%3C/svg%3E");
    background-size:56px 23px;animation:showbook-fire-frames 2.4s ease-in-out infinite alternate;
  }
}
@keyframes showbook-fire-frames{from{background-position:0 bottom;transform:scaleY(.88);transform-origin:center bottom}to{background-position:4px bottom;transform:scaleY(1);transform-origin:center bottom}}
