/* dealbunny – Saison-Themes v1.81 (Neujahr, Valentinstag, Ostern, Muttertag, 1. August, Singles Day, Black Week, Nikolaus, Weihnachten, Silvester).
   Wird nur geladen, wenn eines dieser Themes live ist (Admin → 🎨 Theme-Einstellungen). Deko-Ebene nimmt keine Klicks weg. */

.sz-layer{position:fixed;inset:0;z-index:60;pointer-events:none;overflow:hidden}
.sz-p{position:absolute;left:var(--x);top:0;width:var(--s);height:var(--s);opacity:var(--o,.85);will-change:transform}
.sz-in{display:block;width:100%;height:100%;animation:szSway 3.2s ease-in-out infinite alternate}
.sz-svg{display:block;width:100%;height:100%}
.sz-emo{display:block;font-size:var(--s);line-height:1;text-align:center}
.sz-conf{display:block;width:100%;height:55%;border-radius:2px;margin-top:22%}
.sz-svg.sz-1111,.sz-svg.sz-pct{width:170%;height:100%;margin-left:-35%}

/* fallen (Schnee, Konfetti, Eier, Fähnchen …) */
.sz-fall{animation:szFall var(--d) linear infinite;animation-delay:var(--dl)}
@keyframes szFall{0%{transform:translate3d(0,-12vh,0) rotate(0)}100%{transform:translate3d(var(--sw),112vh,0) rotate(var(--r))}}
/* aufsteigen (Herzen, Blumen) */
.sz-rise{top:auto;bottom:0;animation:szRise var(--d) linear infinite;animation-delay:var(--dl)}
@keyframes szRise{0%{transform:translate3d(0,12vh,0) scale(.8)}100%{transform:translate3d(var(--sw),-112vh,0) scale(1.1)}}
@keyframes szSway{from{transform:translateX(-9px) rotate(-8deg)}to{transform:translateX(9px) rotate(8deg)}}
/* Feuerwerk */
.sz-burst{top:var(--y);opacity:0;animation:szBurst var(--d) ease-out infinite;animation-delay:var(--dl)}
.sz-burst .sz-in{animation:none}
@keyframes szBurst{0%{transform:scale(.15);opacity:0}12%{opacity:1}55%{transform:scale(1);opacity:.9}100%{transform:scale(1.15) translateY(14px);opacity:0}}

/* ---------- Farben je Theme ---------- */
html.season-weihnachten .sz-flake,html.season-nikolaus .sz-flake{color:#8FB3DE}
html.season-weihnachten[data-theme="dark"] .sz-flake{color:#DCE8F7}
html.season-valentin .sz-heart{color:#F04438}
html.season-valentin .sz-p:nth-child(3n) .sz-heart{color:#F670C7}

/* Buttons: kleine Saison-Note im Verlauf */
html[class*="season-"]:not(.season-halloween) .btn-primary{background-image:linear-gradient(135deg,var(--pink) 0%,var(--pink) 70%,var(--sz-accent,#EC1A64) 100%)}
html.season-neujahr{--sz-accent:#D4A20B}
html.season-valentin{--sz-accent:#F04438}
html.season-ostern{--sz-accent:#7ED321}
html.season-muttertag{--sz-accent:#F670C7}
html.season-nationalfeiertag{--sz-accent:#E30613}
html.season-singlesday{--sz-accent:#FF5000}
html.season-blackfriday{--sz-accent:#111111}
html.season-nikolaus{--sz-accent:#D92D20}
html.season-weihnachten{--sz-accent:#12A150}
html.season-silvester{--sz-accent:#7A5AF8}

/* ---------- Logo-Deko ---------- */
html[class*="season-"] .logo{position:relative}
.sz-logo{display:inline-flex;align-self:center;margin-left:4px;font-size:20px;line-height:1;animation:szWobble 3.4s ease-in-out infinite;transform-origin:50% 100%}
.sz-logo svg{width:22px;height:22px;display:block}
.sz-logo.sz-logo-heart svg{color:#F04438;animation:szBeat 1.2s ease-in-out infinite}
.sz-logo.sz-logo-pct svg{width:30px;height:21px}
@keyframes szWobble{0%,100%{transform:rotate(-7deg)}50%{transform:rotate(7deg)}}
@keyframes szBeat{0%,100%{transform:scale(1)}15%{transform:scale(1.22)}30%{transform:scale(.96)}45%{transform:scale(1.12)}}
/* Zipfelmütze über dem «d» */
.sz-hat{position:absolute;left:-12px;top:-4px;width:28px;height:23px;transform:rotate(-22deg);pointer-events:none;filter:drop-shadow(0 2px 3px rgba(0,0,0,.18))}
.sz-hat svg{width:100%;height:100%;display:block}

/* ---------- Startseiten-Banner: Gruss + Saison-Symbol ---------- */
.sz-greet{max-width:calc(100% - 40px);display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:800;border-radius:999px;padding:6px 14px;margin:0 0 12px;
  background:#fff;color:var(--ink);box-shadow:0 2px 10px rgba(16,24,40,.08);border:1.5px solid color-mix(in srgb,var(--sz-accent,#EC1A64) 40%,#fff)}
html[data-theme="dark"] .sz-greet{background:var(--card);color:var(--text)}
/* Weihnachten: Lichterkette oben am Banner */
html.season-weihnachten .hero{position:relative}
html.season-weihnachten .hero::before,html.season-weihnachten .hero::after{content:'';position:absolute;left:14px;right:14px;top:6px;height:18px;pointer-events:none;border-top:2px solid rgba(17,89,58,.35);border-radius:0 0 50% 50%/0 0 30% 30%}
html.season-weihnachten .hero::after{border:0;top:9px;height:12px;background:
  radial-gradient(circle,#F04438 0 4px,transparent 5px) 0 0/96px 12px repeat-x,
  radial-gradient(circle,#F5B70A 0 4px,transparent 5px) 24px 2px/96px 12px repeat-x,
  radial-gradient(circle,#2E90FA 0 4px,transparent 5px) 48px 0/96px 12px repeat-x,
  radial-gradient(circle,#17B26A 0 4px,transparent 5px) 72px 2px/96px 12px repeat-x;animation:szTwinkle 1.6s steps(2) infinite}
@keyframes szTwinkle{50%{filter:brightness(1.45) saturate(1.3)}}
/* Black Week: dunkler Banner-Rand */
html.season-blackfriday .hero{box-shadow:inset 0 0 0 2px #111,0 10px 30px rgba(0,0,0,.08)}

/* ---------- Handy: weniger los ---------- */
@media(max-width:760px){.sz-more{display:none}.sz-hat{left:-9px;top:-3px;width:23px;height:19px}.sz-logo{font-size:17px}}
/* Ruhige Darstellung gewünscht → Deko bleibt stehen bzw. aus */
@media (prefers-reduced-motion:reduce){.sz-layer{display:none}.sz-logo,.sz-logo svg,html.season-weihnachten .hero::after{animation:none}}
@media print{.sz-layer,.sz-logo,.sz-hat,.sz-greet{display:none}}
