/* Harper's ten photographed opening-title props. The rotary positions each
   entire title; no letter moves independently or reflows during a turn. */
.wheel { height:calc(var(--table-bottom) + 80px); }
.wheel .tool-title { box-sizing:content-box;width:326px;height:130px;padding:0 8px;display:grid;place-items:center;overflow:visible;color:var(--ink);text-shadow:none;-webkit-text-stroke:0;mask-image:none;-webkit-mask-image:none;transform-origin:50% 100%; }
.wheel .tool-title:focus-visible { outline:2px solid #5869c0;outline-offset:4px;border-radius:16px; }
.brand-art { position:relative;display:block;width:326px;height:125px;isolation:isolate;--logo-scale:1.15; }
.brand-art .logo-img { display:block;width:100%;height:100%;object-fit:contain;transform:scale(var(--logo-scale));transform-origin:center;filter:drop-shadow(0 4px 5px #26376822);pointer-events:none;user-select:none; }
.brand-cutout { --logo-scale:1.34; }
.brand-portrait { --logo-scale:1.22; }
.brand-backdrop { --logo-scale:1.14; }
.brand-sticker { --logo-scale:1.22; }
.brand-blur { --logo-scale:1.16; }
.brand-depth { --logo-scale:1.12; }
.brand-parallax { --logo-scale:1.13; }
.brand-relight { --logo-scale:1.16; }
.brand-upscale { --logo-scale:1.15; }
.brand-erase { --logo-scale:1.15; }
/* The source retains the screenshot's cobalt hand lettering, smile and curl.
   A masked, moving diffraction band makes the vinyl laminate catch light. */
.brand-sticker .logo-img { filter:drop-shadow(0 4px 5px #243c8040); }
.brand-sticker::after { content:"";position:absolute;inset:0;pointer-events:none;opacity:.24;background:linear-gradient(108deg,transparent 25%,#63f3ef55 34%,#fff 43%,#e6a9ff66 51%,transparent 63%);background-size:250% 100%;background-position:130% 0;mix-blend-mode:screen;mask:url('./assets/logos/sticker-holo.png') center/contain no-repeat;-webkit-mask:url('./assets/logos/sticker-holo.png') center/contain no-repeat;transform:scale(var(--logo-scale)); }
.tool-title[aria-selected=true] .brand-sticker::after { animation:sticker-laminate 5.8s ease-in-out infinite; }
@keyframes sticker-laminate { 0%,12%,68%,100% { background-position:130% 0;opacity:.15; } 40% { background-position:-60% 0;opacity:.48; } }
/* Tiny material-specific acts, only on the selected title. */
.tool-title[aria-selected=true] .brand-cutout .logo-img { animation:cutout-bob 5s ease-in-out infinite; }
.tool-title[aria-selected=true] .brand-portrait .logo-img { animation:portrait-glow 5.5s ease-in-out infinite; }
.tool-title[aria-selected=true] .brand-backdrop .logo-img { animation:scene-bob 6s ease-in-out infinite; }
.tool-title[aria-selected=true] .brand-blur .logo-img { animation:blur-breathe 5.5s ease-in-out infinite; }
.tool-title[aria-selected=true] .brand-depth .logo-img { animation:depth-tilt 6s ease-in-out infinite; }
.tool-title[aria-selected=true] .brand-parallax .logo-img { animation:photo-tilt 6s ease-in-out infinite; }
.tool-title[aria-selected=true] .brand-relight .logo-img { animation:relight-glow 5s ease-in-out infinite; }
.tool-title[aria-selected=true] .brand-upscale .logo-img { animation:upscale-pop 5s ease-in-out infinite; }
.tool-title[aria-selected=true] .brand-erase .logo-img { animation:erase-nudge 5.2s ease-in-out infinite; }
@keyframes cutout-bob { 50% { transform:scale(1.34) rotate(-1deg) translateY(-2px); } }
@keyframes portrait-glow { 50% { filter:drop-shadow(0 3px 8px #d9a5c76b) brightness(1.06); } }
@keyframes scene-bob { 50% { transform:scale(1.14) translateY(-3px); } }
@keyframes blur-breathe { 50% { filter:drop-shadow(0 4px 9px #8b73bb55) blur(.25px); } }
@keyframes depth-tilt { 50% { transform:scale(1.12) rotateY(-5deg) translateY(-2px); } }
@keyframes photo-tilt { 50% { transform:scale(1.13) rotateY(7deg) translateY(-2px); } }
@keyframes relight-glow { 50% { filter:drop-shadow(0 0 11px #ffce6899) brightness(1.1); } }
@keyframes upscale-pop { 50% { transform:scale(1.19); } }
@keyframes erase-nudge { 50% { transform:scale(1.15) translateX(-3px); } }
html[data-theme=dark] .brand-art .logo-img { filter:drop-shadow(0 6px 9px #0009); }
.tool-title:not([aria-selected=true]) .brand-art *,html.running .brand-art *,html.logo-motion-paused .brand-art *,html.deck-expanded .brand-art *,html:not(.has-prints) .brand-art *,.stage[inert] .brand-art * { animation-play-state:paused!important; }
@media(max-width:719px) {
 .wheel { height:calc(var(--table-bottom) + 54px); }
 .wheel .tool-title { width:230px;height:98px;padding:0 3px; }
 .brand-art { width:230px;height:98px; }
 .brand-cutout { --logo-scale:1.26; }
 .brand-portrait { --logo-scale:1.17; }
 .brand-sticker { --logo-scale:1.2; }
}
@media(prefers-reduced-motion:reduce) { .wheel .brand-art *,.wheel .brand-art::after { animation:none!important;transition:none!important; } }
