/* =====================================================================
   Festività: layer decorativo sopra la pagina (non intercetta clic, nascosto in stampa)
   z-index: sopra header (60) e contenuti, sotto messaggi flash (900), cookie bar e dialoghi.
   ===================================================================== */
.holiday-layer{position:fixed;inset:0;pointer-events:none;z-index:85;overflow:hidden;contain:strict;opacity:1;transition:opacity .5s ease}
.holiday-layer canvas{position:absolute;inset:0;width:100%;height:100%;display:block}
.holiday-layer.is-off{opacity:0}

.holiday-toggle{position:fixed;right:1rem;bottom:1rem;z-index:86;width:2.3rem;height:2.3rem;border-radius:50%;display:grid;place-items:center;
  border:1px solid var(--c-border);background:color-mix(in srgb,var(--c-surface) 92%,transparent);color:var(--c-text);
  box-shadow:0 4px 14px rgba(0,0,0,.14);cursor:pointer;font-size:1.05rem;line-height:1;padding:0;opacity:.78;
  transition:opacity .2s,transform .2s,box-shadow .2s;backdrop-filter:blur(6px)}
.holiday-toggle:hover,.holiday-toggle:focus-visible{opacity:1;transform:scale(1.06);box-shadow:0 6px 20px rgba(0,0,0,.2)}
.holiday-toggle>span:first-child{filter:saturate(1.1)}
.holiday-toggle-x{position:absolute;right:-.2rem;top:-.2rem;width:1rem;height:1rem;border-radius:50%;background:var(--c-text-muted);color:var(--c-surface);
  font-size:.72rem;line-height:1rem;text-align:center;font-weight:700}
.holiday-toggle[aria-pressed="false"]>span:first-child{filter:grayscale(1);opacity:.6}
.holiday-toggle[aria-pressed="false"] .holiday-toggle-x{display:none}
@media (max-width:560px){.holiday-toggle{right:.7rem;bottom:.7rem;width:2.1rem;height:2.1rem;font-size:.95rem}}

/* nessuna animazione: niente effetti festivi */
@media (prefers-reduced-motion:reduce){.holiday-layer,.holiday-toggle{display:none!important}}
html.a11y-noanim .holiday-layer,html.a11y-noanim .holiday-toggle{display:none!important}
@media print{.holiday-toggle{display:none!important}}
