/* =====================================================================
   STASH HUNTS — SEASONAL THEMES  (activated by ACTIVE_THEME in theme.js)
   ===================================================================== */
.theme-pending .hero-content{visibility:hidden}
#topBar{top:38px!important;padding:10px 12px!important;text-align:center}
#topBar span{font-size:clamp(.6rem,1.6vw,.8rem)!important}

/* ---------- shared takeover pieces (any non-default theme) ---------- */
.ht-title{font-family:var(--display);font-weight:900;font-stretch:118%;text-transform:uppercase;font-size:clamp(1.6rem,5vw,3.2rem);line-height:1;margin:4px 0 0;color:var(--gold-bright)}
.ht-date{font-family:var(--mono);font-size:clamp(.72rem,1.6vw,.9rem);letter-spacing:.12em;text-transform:uppercase;color:var(--white);margin:-6px 0 18px}
.ht-cd{display:flex;gap:10px;justify-content:center;margin:0 auto 26px;flex-wrap:wrap}
.ht-cd .cd-unit{background:rgba(0,0,0,.45);border-radius:10px;backdrop-filter:blur(4px)}
.ht-live{font-family:var(--display);font-weight:900;font-size:clamp(1rem,3vw,1.5rem);letter-spacing:.06em;color:var(--gold-bright);padding:14px 22px;border:1px solid var(--gold);border-radius:12px;background:rgba(0,0,0,.45)}
.ht-tracker{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:0 auto 22px;text-align:left}
.tk-coin{display:flex;gap:12px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:14px;background:rgba(10,6,16,.6);backdrop-filter:blur(6px);transition:transform .2s}
.tk-coin:hover{transform:translateY(-3px)}
.tk-coin img{width:56px;height:56px;flex:none;animation:floaty 5s ease-in-out infinite}
.tk-coin:nth-child(2) img{animation-delay:-1.6s}.tk-coin:nth-child(3) img{animation-delay:-3.2s}
.tk-name{font-family:var(--display);font-weight:900;font-size:.95rem;color:var(--white);text-transform:uppercase;letter-spacing:.02em}
.tk-zone{font-family:var(--mono);font-size:.68rem;color:var(--silver-dim);margin-top:2px}
.tk-status{display:inline-block;margin-top:6px;font-family:var(--mono);font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-bright)}
.tk-clue{font-size:.72rem;color:var(--silver);margin-top:4px;line-height:1.35}
.tk-coin.is-found{border-color:#10B981}
.tk-coin.is-found img{filter:grayscale(.6) opacity(.7);animation:none}
.tk-coin.is-found .tk-status{color:#10B981}
.ht-prize{font-size:.95rem;color:var(--silver);max-width:560px;margin:0 auto 26px}
.ht-prize b{color:var(--gold-bright)}
html:not([data-theme="default"]) .hero-content{max-width:820px}
html:not([data-theme="default"]) .hero-btns{justify-content:center}
.theme-fx{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden}
@media (max-width:820px){
  .ht-tracker{grid-template-columns:1fr;max-width:420px}
  .ht-cd .cd-unit{min-width:58px;padding:10px 6px 8px}
}

/* ============================ HALLOWEEN ============================ */
[data-theme="halloween"]{
  --ink:#0B0710; --panel:#1C0E1A;
  --line:rgba(255,122,0,.22);
  --gold:#FF6A00; --gold-bright:#FFA726; --neon:#A855F7;
  --silver-dim:#B8A8C4;
}
[data-theme="halloween"] .hero-bg{
  background:
    radial-gradient(800px 420px at 50% 105%,rgba(255,106,0,.28),transparent 65%),
    radial-gradient(900px 600px at 12% 85%,rgba(147,51,234,.22),transparent 60%),
    radial-gradient(700px 400px at 85% 10%,rgba(255,167,38,.08),transparent 60%),
    linear-gradient(180deg,#07040C 0%,#140A1C 60%,#1E0C14 100%);
}
[data-theme="halloween"] .skyline{opacity:.9}
[data-theme="halloween"] .skyline path{fill:#06030A}
[data-theme="halloween"] .skyline g rect{fill:#FF9A1F;opacity:.9;animation:flick 3.2s infinite steps(1)}
[data-theme="halloween"] .skyline g rect:nth-child(3n){animation-delay:-1.1s}
[data-theme="halloween"] .skyline g rect:nth-child(4n){animation-delay:-2.3s;fill:#A855F7}
@keyframes flick{0%,100%{opacity:.9}47%{opacity:.25}50%{opacity:.9}83%{opacity:.4}}

[data-theme="halloween"] .hero-brand .stash{
  background:linear-gradient(100deg,#7A2E00 0%,#FF6A00 30%,#FFD27A 50%,#FF6A00 70%,#7A2E00 100%);
  background-size:220% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;
}
[data-theme="halloween"] .ht-title{
  color:#FFA726;text-shadow:0 0 18px rgba(255,106,0,.65),0 0 42px rgba(255,106,0,.35);
  animation:spook 4s infinite;
}
@keyframes spook{0%,92%,100%{opacity:1}93%{opacity:.35}94%{opacity:1}96%{opacity:.5}97%{opacity:1}}
[data-theme="halloween"] .hero-token-left img,[data-theme="halloween"] .token-coin-img{filter:drop-shadow(0 0 50px rgba(255,106,0,.55))}
[data-theme="halloween"] .token-ring{border-color:rgba(255,106,0,.35)}
[data-theme="halloween"] .hero-token-left .token-ring{border-color:rgba(168,85,247,.35)}
[data-theme="halloween"] .btn-gold{box-shadow:0 0 24px rgba(255,106,0,.35)}

/* moon */
[data-theme="halloween"] .fx-moon{position:absolute;top:150px;right:12%;width:clamp(90px,12vw,170px);aspect-ratio:1;border-radius:50%;
  background:radial-gradient(circle at 38% 36%,#FFF6DA 0%,#FFD98A 45%,#E8A13C 100%);
  box-shadow:0 0 60px 18px rgba(255,190,90,.25),0 0 160px 60px rgba(255,140,30,.12);opacity:.85}
[data-theme="halloween"] .fx-moon::after{content:"";position:absolute;inset:0;border-radius:50%;
  background:radial-gradient(circle at 62% 58%,rgba(160,90,20,.25) 0 9%,transparent 10%),radial-gradient(circle at 34% 66%,rgba(160,90,20,.2) 0 6%,transparent 7%),radial-gradient(circle at 55% 28%,rgba(160,90,20,.18) 0 5%,transparent 6%)}

/* fog */
.fx-fog{position:absolute;left:-50%;width:200%;height:42%;bottom:0;opacity:.5;
  background:radial-gradient(ellipse at 20% 60%,rgba(200,180,220,.18),transparent 55%),radial-gradient(ellipse at 60% 70%,rgba(200,180,220,.14),transparent 55%),radial-gradient(ellipse at 90% 55%,rgba(200,180,220,.16),transparent 55%);
  animation:fog 38s linear infinite}
.fx-fog.f2{bottom:8%;opacity:.35;animation-duration:58s;animation-direction:reverse}
@keyframes fog{to{transform:translateX(25%)}}

/* bats */
.fx-bats .bat{position:absolute;width:44px;fill:#050208;filter:drop-shadow(0 0 2px rgba(255,140,30,.4));animation:fly 16s linear infinite}
.fx-bats .bat svg{width:100%;display:block;animation:flap .28s ease-in-out infinite alternate;transform-origin:50% 40%}
.fx-bats .b1{top:22%;animation-delay:0s}
.fx-bats .b2{top:30%;width:30px;animation-delay:-5s;animation-duration:20s}
.fx-bats .b3{top:16%;width:26px;animation-delay:-9s;animation-duration:24s}
.fx-bats .b4{top:40%;width:36px;animation-delay:-13s;animation-duration:18s}
.fx-bats .b5{top:26%;width:22px;animation-delay:-2s;animation-duration:27s}
@keyframes fly{0%{left:-8%;transform:translateY(0)}25%{transform:translateY(-30px)}50%{transform:translateY(20px)}75%{transform:translateY(-14px)}100%{left:108%;transform:translateY(0)}}
@keyframes flap{from{transform:scaleY(1)}to{transform:scaleY(.35)}}

/* rest of page — light seasonal touch */
[data-theme="halloween"] .sec-head h2{text-shadow:0 0 22px rgba(255,106,0,.18)}
[data-theme="halloween"] ::selection{background:#FF6A00;color:#0B0710}

@media (prefers-reduced-motion:reduce){
  .fx-fog,.fx-bats .bat,.fx-bats .bat svg,[data-theme="halloween"] .ht-title,[data-theme="halloween"] .skyline g rect,.tk-coin img{animation:none!important}
  .fx-bats{display:none}
}
@media (max-width:820px){
  [data-theme="halloween"] .fx-moon{top:110px;right:6%;opacity:.55}
}

/* ============================ CHRISTMAS (template) ============================ */
[data-theme="christmas"]{--gold:#DC2626;--gold-bright:#F87171;--neon:#22C55E;--line:rgba(220,38,38,.22)}
@media (max-width:820px){html:not([data-theme="default"]) .hero-token-left,html:not([data-theme="default"]) .hero-token{display:none}}

.tk-coin img.tk-clue-img{display:block;width:100%;height:auto;max-width:260px;margin-top:6px;border-radius:8px;border:1px solid rgba(255,255,255,.15)}
