/* v1.47 draft: Arcade-only header logo — purple hex + cyan leaf + BLACK/MINT wordmark in a neon badge (matches the Link-to-us arcade tab).
   Dark/Light are untouched: everything here is scoped to html[data-retro=arcade]; .bma is display:none elsewhere.
   Motion (Disney principles): one-time intro = hex stroke draws in (slow in/out), leaf pops (anticipation -> stretch -> overshoot squash -> settle),
   letters flick on like a marquee (MINT last). Idle = slow neon breathing, rare leaf sway with follow-through, rare scanline/flicker (app/arclogo.js).
   Only transform / opacity (+ stroke-dashoffset for the one-time draw). Off under prefers-reduced-motion. Paused while hidden/offscreen (.bma-pz). */
.bml .bma,.bml>svg.bma{display:none}
.logo b>i,.logo b+span>i{font-style:normal}

html:not(#_r1):not(#_r2):not(#_r3):not(#_r4):not(#_r5)[data-retro=arcade] .logo{position:relative;gap:9px;padding:6px 13px 6px 9px;border-radius:10px;
 background:#07060f;border:1.5px solid #8a5cff;box-shadow:inset 0 0 0 2px #07060f,inset 0 0 0 3px #2a2250,0 6px 18px -9px #00e5ff}
html:not(#_r1):not(#_r2):not(#_r3):not(#_r4):not(#_r5)[data-retro=arcade] .logo::after{content:"";position:absolute;inset:-1.5px;border-radius:10px;pointer-events:none;
 box-shadow:0 0 12px 0 rgba(138,92,255,.6),0 8px 22px -8px rgba(0,229,255,.7);opacity:.55}
html:not(#_r1):not(#_r2):not(#_r3):not(#_r4):not(#_r5)[data-retro=arcade] .logo:focus-visible{outline:2px solid #00e5ff;outline-offset:3px}
html:not(#_r1):not(#_r2):not(#_r3):not(#_r4):not(#_r5)[data-retro=arcade] .logo .dot{display:none!important}
/* mark: hide the default hex/leaf layers, show the arcade SVG */
html:not(#_r1):not(#_r2):not(#_r3):not(#_r4):not(#_r5)[data-retro=arcade] .logo .bml{width:22px;height:24px}
html:not(#_r1):not(#_r2):not(#_r3):not(#_r4):not(#_r5)[data-retro=arcade] .logo .bml>svg:not(.bma),html:not(#_r1):not(#_r2):not(#_r3):not(#_r4):not(#_r5)[data-retro=arcade] .logo .bml .bmls{display:none!important}
html:not(#_r1):not(#_r2):not(#_r3):not(#_r4):not(#_r5)[data-retro=arcade] .logo .bml .bma{display:block;position:relative;width:22px;height:24px;overflow:visible;shape-rendering:geometricPrecision!important}
.bma .bmah,.bma .bmag,.bma .bmas,.bma .bmaj,.bma .bmap,.bma .bmaw{transform-box:view-box}
.bma .bmag{filter:drop-shadow(0 0 2px #8a5cff) drop-shadow(0 0 3px rgba(138,92,255,.7));opacity:.45}
.bma .bmas{opacity:0}
.bma .bmaj{transform-origin:10px 16px}.bma .bmap{transform-origin:6px 15px}.bma .bmaw{transform-origin:6px 15px}
/* wordmark */
html:not(#_r1):not(#_r2):not(#_r3):not(#_r4):not(#_r5)[data-retro=arcade] .logo b,html:not(#_r1):not(#_r2):not(#_r3):not(#_r4):not(#_r5)[data-retro=arcade] .logo b+span{
 font-family:"IBM Plex Mono",ui-monospace,Menlo,Consolas,monospace!important;font-size:17px!important;line-height:20px!important;letter-spacing:.03em!important;text-transform:uppercase;-webkit-background-clip:initial;background:none}
html:not(#_r1):not(#_r2):not(#_r3):not(#_r4):not(#_r5)[data-retro=arcade] .logo b{font-weight:700!important;color:#efecff!important;text-shadow:0 0 6px rgba(233,230,255,.18)!important}
html:not(#_r1):not(#_r2):not(#_r3):not(#_r4):not(#_r5)[data-retro=arcade] .logo b+span{font-weight:400!important;color:#3fe6ff!important;text-shadow:0 0 7px rgba(0,229,255,.45)!important}
@media (max-width:600px){
 html:not(#_r1):not(#_r2):not(#_r3):not(#_r4):not(#_r5)[data-retro=arcade] .logo{gap:7px;padding:5px 10px 5px 7px;border-radius:9px}
 html:not(#_r1):not(#_r2):not(#_r3):not(#_r4):not(#_r5)[data-retro=arcade] .logo::after{border-radius:9px}
 html:not(#_r1):not(#_r2):not(#_r3):not(#_r4):not(#_r5)[data-retro=arcade] .logo .bml,html:not(#_r1):not(#_r2):not(#_r3):not(#_r4):not(#_r5)[data-retro=arcade] .logo .bml .bma{width:19px;height:21px}
 html:not(#_r1):not(#_r2):not(#_r3):not(#_r4):not(#_r5)[data-retro=arcade] .logo b,html:not(#_r1):not(#_r2):not(#_r3):not(#_r4):not(#_r5)[data-retro=arcade] .logo b+span{font-size:14.5px!important;line-height:18px!important;letter-spacing:.02em!important}
}

@media (prefers-reduced-motion:no-preference){
 /* intro (runs whenever Arcade turns on: page load or theme switch) */
 html[data-retro=arcade] .bma .bmah{stroke-dasharray:100;animation:bmaDraw .75s cubic-bezier(.45,0,.55,1) .1s both}
 html[data-retro=arcade] .bma .bmag{animation:bmaGlowIn .5s cubic-bezier(.16,1,.3,1) .7s both,bmaBreath 5s cubic-bezier(.45,0,.55,1) 1.2s infinite}
 html[data-retro=arcade] .logo::after{animation:bmaGlowIn .6s cubic-bezier(.16,1,.3,1) .7s both,bmaBreathF 5s cubic-bezier(.45,0,.55,1) 1.3s infinite}
 html[data-retro=arcade] .bma .bmap{animation:bmaPop .72s linear .55s both}
 html[data-retro=arcade] .bma .bmaw{animation:bmaSway 15s cubic-bezier(.45,0,.55,1) -8s infinite}
 html[data-retro=arcade] .logo b>i,html[data-retro=arcade] .logo b+span>i{animation:bmaFlick .42s steps(1,end) both}
 html[data-retro=arcade] .logo b>i:nth-child(1){animation-delay:.80s}html[data-retro=arcade] .logo b>i:nth-child(2){animation-delay:.87s}
 html[data-retro=arcade] .logo b>i:nth-child(3){animation-delay:.94s}html[data-retro=arcade] .logo b>i:nth-child(4){animation-delay:1.01s}
 html[data-retro=arcade] .logo b>i:nth-child(5){animation-delay:1.08s}
 html[data-retro=arcade] .logo b+span>i{animation-name:bmaFlickM;animation-duration:.6s}
 html[data-retro=arcade] .logo b+span>i:nth-child(1){animation-delay:1.36s}html[data-retro=arcade] .logo b+span>i:nth-child(2){animation-delay:1.45s}
 html[data-retro=arcade] .logo b+span>i:nth-child(3){animation-delay:1.54s}html[data-retro=arcade] .logo b+span>i:nth-child(4){animation-delay:1.63s}
 /* v1.56: 15 s loop driven by app/arclogo.js (intro replays every 15 s via bma-off; breath 5s x3 and leaf sway 15s line up with it); beats + hop below */
 html[data-retro=arcade] .logo.bma-done b>i,html[data-retro=arcade] .logo.bma-done b+span>i{animation:none}
 html[data-retro=arcade] .logo.bma-scan .bma .bmas{animation:bmaScan 1.1s cubic-bezier(.45,0,.55,1) both}
 html[data-retro=arcade] .logo.bma-done.bma-flick b+span>i{animation:bmaBlink .5s steps(1,end) both}
 html[data-retro=arcade] .logo.bma-done.bma-flick b+span>i:nth-child(2){animation-delay:.05s}html[data-retro=arcade] .logo.bma-done.bma-flick b+span>i:nth-child(3){animation-delay:.11s}
 html[data-retro=arcade] .logo.bma-done.bma-flick b+span>i:nth-child(4){animation-delay:.08s}
 html[data-retro=arcade] .logo.bma-hop .bma .bmaj{animation:bmaHop .58s linear both}
 html[data-retro=arcade] .logo.bma-pz .bma *,html[data-retro=arcade] .logo.bma-pz b i,html[data-retro=arcade] .logo.bma-pz b+span i,html[data-retro=arcade] .logo.bma-pz::after{animation-play-state:paused!important}
}
@keyframes bmaDraw{from{stroke-dashoffset:100}to{stroke-dashoffset:0}}
@keyframes bmaGlowIn{from{opacity:0}to{opacity:.55}}
@keyframes bmaBreath{0%,100%{opacity:.55}50%{opacity:.95}}
@keyframes bmaBreathF{0%,100%{opacity:.55}50%{opacity:.9}}
/* anticipation (small squash) -> stretch up -> overshoot with landing squash -> settle; area kept roughly constant (Minty cap ±0.22) */
@keyframes bmaPop{
 0%{opacity:0;transform:scale(.18,.18);animation-timing-function:cubic-bezier(.16,1,.3,1)}
 18%{opacity:1;transform:scale(.46,.34);animation-timing-function:cubic-bezier(.7,0,.84,0)}
 30%{transform:scale(.4,.3);animation-timing-function:cubic-bezier(.16,1,.3,1)}
 56%{transform:scale(.88,1.18) translate(0,-.6px);animation-timing-function:cubic-bezier(.45,0,.55,1)}
 72%{transform:scale(1.12,.9);animation-timing-function:cubic-bezier(.45,0,.55,1)}
 86%{transform:scale(.97,1.03)}
 100%{opacity:1;transform:scale(1,1)}}
/* secondary action: mostly still, one gentle sway with follow-through every ~9.5s */
@keyframes bmaSway{0%,70%,100%{transform:rotate(0)}76%{transform:rotate(-7deg)}83%{transform:rotate(4.5deg)}89%{transform:rotate(-2deg)}94%{transform:rotate(.8deg)}}
/* marquee bulb: off, catch, dim, on */
@keyframes bmaFlick{0%{opacity:0}30%{opacity:.85}45%{opacity:.25}60%,100%{opacity:1}}
@keyframes bmaFlickM{0%{opacity:0}22%{opacity:.6}34%{opacity:.15}52%{opacity:.9}64%{opacity:.4}78%,100%{opacity:1}}
@keyframes bmaBlink{0%{opacity:1}20%{opacity:.5}34%{opacity:1}56%{opacity:.7}70%,100%{opacity:1}}
@keyframes bmaScan{0%{opacity:0;transform:translateY(0)}15%{opacity:.75}85%{opacity:.75}100%{opacity:0;transform:translateY(30px)}}
/* hop: anticipation dip -> stretch in the air on an arc -> landing squash -> settle */
@keyframes bmaHop{
 0%{transform:translate(0,0) scale(1,1);animation-timing-function:cubic-bezier(.45,0,.55,1)}
 16%{transform:translate(0,.4px) scale(1.12,.88);animation-timing-function:cubic-bezier(.16,1,.3,1)}
 44%{transform:translate(0,-3.2px) scale(.9,1.12);animation-timing-function:cubic-bezier(.7,0,.84,0)}
 70%{transform:translate(0,0) scale(1.14,.86);animation-timing-function:cubic-bezier(.16,1,.3,1)}
 86%{transform:translate(0,0) scale(.97,1.03)}
 100%{transform:translate(0,0) scale(1,1)}}
html[data-retro=arcade] .logo.bma-off *,html[data-retro=arcade] .logo.bma-off::after{animation:none!important}
@media (prefers-reduced-motion:reduce){.bma *,.logo b>i,.logo b+span>i,html[data-retro=arcade] .logo::after{animation:none!important}}
