/* Safe seasonal design layer. The ordinary light/dark selector remains available. */
html[data-zf-theme-pack]:not([data-zf-theme-id="winter"]){--zf-season-surface:#16312d;--zf-season-hero:#215b50}
html[data-zf-theme-pack]:not([data-zf-theme-id="winter"]) .product-card .product-image,
html[data-zf-theme-pack]:not([data-zf-theme-id="winter"]) .popular-category,html[data-zf-theme-pack]:not([data-zf-theme-id="winter"]) .category-card{transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
html[data-zf-theme-pack]:not([data-zf-theme-id="winter"]) .hero-visual{background:radial-gradient(ellipse at 40% 35%,var(--mint) -85%,var(--zf-season-hero) 96%)!important}
html[data-zf-theme-pack]:not([data-zf-theme-id="winter"]) .inner-page-hero,
html[data-zf-theme-pack]:not([data-zf-theme-id="winter"]) .catalog-page-hero{border-color:var(--mint)!important}
html[data-zf-theme-pack]:not([data-zf-theme-id="winter"]) .button-primary,
html[data-zf-theme-pack]:not([data-zf-theme-id="winter"]) .filter-chip.is-active{background:var(--mint)!important;border-color:var(--mint)!important;color:#0b1717!important}
html[data-zf-theme-pack]:not([data-zf-theme-id="winter"]) .product-label.is-new{background:var(--mint)!important;color:#071b17!important}
html[data-zf-theme-pack]:not([data-zf-theme-id="winter"]) .detail-badge-hit,html[data-zf-theme-pack]:not([data-zf-theme-id="winter"]) .product-label.is-hit{background:var(--zf-season-surface)!important;color:var(--mint-bright)!important}
html[data-zf-theme-pack]:not([data-zf-theme-id="winter"]) .product-card:hover{border-color:var(--mint)!important}
html[data-zf-theme-pack]:not([data-zf-theme-id="winter"]):not([data-theme="dark"]) .contact-section{background:color-mix(in srgb,var(--mint) 25%,white)!important}
html[data-zf-theme-pack="petals"] .hero-visual::after,
html[data-zf-theme-pack="leaves"] .hero-visual::after,
html[data-zf-theme-pack="sparkles"] .hero-visual::after{position:absolute;inset:0;pointer-events:none;z-index:2;opacity:.45;content:"";background-repeat:repeat;background-size:150px 150px}
html[data-zf-theme-pack="petals"] .hero-visual::after{background-image:radial-gradient(ellipse at 25% 24%,#ffe3e8 0 7px,transparent 9px),radial-gradient(ellipse at 70% 65%,#ffcdd7 0 5px,transparent 6px);animation:zfSeasonFloat 30s linear infinite}
html[data-zf-theme-pack="leaves"] .hero-visual::after{background-image:radial-gradient(ellipse at 20% 20%,#efb96d 0 7px,transparent 8px),radial-gradient(ellipse at 70% 60%,#d77f56 0 5px,transparent 6px);animation:zfSeasonFloat 35s linear infinite}
html[data-zf-theme-pack="sparkles"] .hero-visual::after{background-image:radial-gradient(circle at 20% 20%,#ffdc81 0 2px,transparent 5px),radial-gradient(circle at 70% 60%,#fff1bf 0 3px,transparent 6px);animation:zfSeasonGlow 3s ease-in-out infinite alternate}
@keyframes zfSeasonFloat{to{background-position:40px 280px}}
@keyframes zfSeasonGlow{from{opacity:.15}to{opacity:.7}}
@media(prefers-reduced-motion:reduce){html[data-zf-theme-pack]:not([data-zf-theme-id="winter"]) .hero-visual::after{animation:none!important}}

/* Additional built-in occasion packs: independent of the Christmas snow overlay. */
html[data-zf-theme-pack="hearts"] .hero-visual::after,
html[data-zf-theme-pack="flowers"] .hero-visual::after{position:absolute;inset:0;pointer-events:none;z-index:2;opacity:.43;content:"";background-size:145px 145px;animation:zfSeasonFloat 30s linear infinite}
html[data-zf-theme-pack="hearts"] .hero-visual::after{background-image:radial-gradient(ellipse 14px 16px at 22px 30px,#ffe0e9 60%,transparent 63%),radial-gradient(ellipse 11px 12px at 82px 102px,#f898be 60%,transparent 63%)}
html[data-zf-theme-pack="flowers"] .hero-visual::after{background-image:radial-gradient(circle at 22px 25px,#ffc8ea 0 5px,transparent 6px),radial-gradient(circle at 39px 25px,#ffc8ea 0 5px,transparent 6px),radial-gradient(circle at 30px 36px,#fffbb4 0 5px,transparent 6px),radial-gradient(circle at 82px 102px,#ffe3fb 0 9px,transparent 11px)}
@media(prefers-reduced-motion:reduce){html[data-zf-theme-pack="hearts"] .hero-visual::after,html[data-zf-theme-pack="flowers"] .hero-visual::after{animation:none}}
