body[data-site-theme="halloween"] .discovery-links .vinyl-bobbing-button{gap:10px;padding-block:8px}
body[data-site-theme="halloween"] .vinyl-bobbing-button .bobbing-icon{width:56px;height:56px;object-fit:contain;flex:none;filter:drop-shadow(0 2px 5px #0008)}
body[data-site-theme="halloween"] .vinyl-bobbing-button>.bobbing-label{flex:1}
body[data-site-theme="halloween"] .bobbing-ad-art{float:right;width:clamp(96px,17cqw,170px);height:auto;object-fit:contain;margin:0 0 6px 12px;filter:drop-shadow(0 6px 10px #0007);pointer-events:none}
body[data-site-theme="halloween"] .bobbing-discovery-art{display:block;width:150px;height:150px;object-fit:contain;margin:0 auto 12px}
body[data-site-theme="halloween"] .bobbing-discovery-art[hidden]{display:none}
body[data-site-theme="halloween"] .vinyl-bobbing-button.is-dropping .bobbing-icon{animation:bobbing-dip .6s ease-in-out}
@keyframes bobbing-dip{50%{transform:translateY(5px) rotate(-5deg)}}
@media(max-width:700px){body[data-site-theme="halloween"] .vinyl-bobbing-button .bobbing-icon{width:40px;height:40px}body[data-site-theme="halloween"] .bobbing-ad-art{width:96px;margin-left:8px}}
@media(prefers-reduced-motion:reduce){body[data-site-theme="halloween"] .vinyl-bobbing-button.is-dropping .bobbing-icon{animation:none}}
/* Independent record and bubble layers; the cauldron itself stays still. */
body[data-site-theme="halloween"] .bobbing-scene{position:relative;display:inline-block;aspect-ratio:1;vertical-align:middle;isolation:isolate}
body[data-site-theme="halloween"] .bobbing-scene .bobbing-base{display:block;width:100%;height:100%;object-fit:contain;position:relative;z-index:0}
body[data-site-theme="halloween"] .bobbing-record{position:absolute;z-index:1;display:block;width:23%;height:23%;left:27%;top:28%;border-radius:50%;border:1px solid #9b6eaa;background:repeating-radial-gradient(circle,#100d15 0 2px,#342333 3px,#100d15 4px);box-shadow:0 2px 8px #0009;animation:vinyl-float 3.4s ease-in-out infinite;pointer-events:none}
body[data-site-theme="halloween"] .bobbing-record::after{content:"";position:absolute;inset:32%;border-radius:50%;background:radial-gradient(circle,#100d15 0 13%,var(--label,#ffa355) 16% 100%)}
body[data-site-theme="halloween"] .record-1{left:48%;top:20%;width:24%;height:24%;--label:#b792ef;animation-duration:4.1s;animation-delay:-1.5s}
body[data-site-theme="halloween"] .record-2{left:64%;top:31%;width:20%;height:20%;--label:#bce54d;animation-duration:3.7s;animation-delay:-2.1s}
body[data-site-theme="halloween"] .bobbing-bubble{position:absolute;z-index:2;display:block;width:5%;height:5%;left:25%;top:43%;border-radius:50%;border:1px solid #e4e7a7bb;background:radial-gradient(circle at 30% 25%,#ffffeebb,#b9ef4388 35%,#ad58ed66 75%);box-shadow:0 0 5px #d9f56566;opacity:0;animation:potion-rise 3s ease-out infinite;pointer-events:none}
body[data-site-theme="halloween"] .bubble-1{left:36%;top:40%;width:7%;height:7%;animation-delay:-.8s;animation-duration:3.5s}
body[data-site-theme="halloween"] .bubble-2{left:52%;top:42%;animation-delay:-1.8s;animation-duration:2.7s}
body[data-site-theme="halloween"] .bubble-3{left:67%;top:45%;width:6%;height:6%;animation-delay:-.4s;animation-duration:3.4s}
body[data-site-theme="halloween"] .bubble-4{left:73%;top:39%;animation-delay:-2.2s;animation-duration:3.7s}
body[data-site-theme="halloween"] .bubble-5{left:43%;top:44%;width:4%;height:4%;animation-delay:-1.2s;animation-duration:2.8s}
body[data-site-theme="halloween"] .bubble-6{left:19%;top:39%;width:4%;height:4%;animation-delay:-2.6s;animation-duration:3.2s}
@keyframes vinyl-float{0%,100%{transform:translateY(0) rotate(-12deg)}50%{transform:translateY(-15%) rotate(9deg)}}
@keyframes potion-rise{0%{opacity:0;transform:translate(0,0) scale(.55)}15%{opacity:.85}75%{opacity:.65}100%{opacity:0;transform:translate(65%,-650%) scale(1.1)}}
body[data-site-theme="halloween"] .bobbing-discovery-art{display:block}
body[data-site-theme="halloween"] .bobbing-scene[hidden]{display:none}
@media(prefers-reduced-motion:reduce){body[data-site-theme="halloween"] .bobbing-scene,body[data-site-theme="halloween"] .bobbing-record,body[data-site-theme="halloween"] .bobbing-bubble{animation:none!important}body[data-site-theme="halloween"] .bobbing-bubble{opacity:.65}}
/* Keep the cauldron beside the copy, never as a flex item above it. */
body[data-site-theme="halloween"] .sell-banner .vinyl-bobbing-ad{width:100%;max-width:none;margin-inline:0;align-self:center;grid-template-columns:clamp(64px,24%,140px) minmax(0,1fr);column-gap:16px;row-gap:0;align-items:center;text-align:left}
body[data-site-theme="halloween"] .sell-banner .vinyl-bobbing-ad:not([hidden]){display:grid}
body[data-site-theme="halloween"] .sell-banner .vinyl-bobbing-ad>.bobbing-ad-art{grid-column:1;grid-row:1/5;float:none;display:block;width:100%;height:auto;aspect-ratio:1;margin:0;align-self:center;justify-self:center}
body[data-site-theme="halloween"] .sell-banner .vinyl-bobbing-ad>.sell-kicker,body[data-site-theme="halloween"] .sell-banner .vinyl-bobbing-ad>h1,body[data-site-theme="halloween"] .sell-banner .vinyl-bobbing-ad>.sell-intro,body[data-site-theme="halloween"] .sell-banner .vinyl-bobbing-ad>.advert-link{grid-column:2;min-width:0}
body[data-site-theme="halloween"] .sell-banner .vinyl-bobbing-ad>.sell-kicker{margin:0 0 8px;font-size:10px;line-height:1.3;letter-spacing:.09em}
body[data-site-theme="halloween"] .sell-banner .vinyl-bobbing-ad>h1{font-size:clamp(25px,8cqw,48px);line-height:1}
body[data-site-theme="halloween"] .sell-banner .vinyl-bobbing-ad>.sell-intro{font-size:16px;line-height:1.3;margin:10px 0 12px}
body[data-site-theme="halloween"] .sell-banner .vinyl-bobbing-ad>.advert-link{width:100%;min-height:44px;font-size:16px;padding:10px 12px}
@media(max-width:700px){body[data-site-theme="halloween"] .sell-banner .vinyl-bobbing-ad{grid-template-columns:64px minmax(0,1fr);column-gap:10px}body[data-site-theme="halloween"] .sell-banner .vinyl-bobbing-ad>.sell-kicker{font-size:8px}body[data-site-theme="halloween"] .sell-banner .vinyl-bobbing-ad>h1{font-size:28px}body[data-site-theme="halloween"] .sell-banner .vinyl-bobbing-ad>.sell-intro{font-size:14px}}
