/* Halloween sur les pages publiques (templates/site/fin.php, pendant l'evenement) */
.marque { position: relative; }
.marque::before { content: ''; position: absolute; left: -9px; top: -9px; z-index: 2; width: 17px; height: 16px; background: url('/public/dashboard-v2/assets/halloween/citrouille-mini.svg') center / contain no-repeat; image-rendering: pixelated; pointer-events: none; transform: rotate(-14deg); }
.hw-site-feuille { position: absolute; top: -26px; width: 20px; height: 20px; image-rendering: pixelated; animation: hw-site-tombe 9s linear both; }
.hw-site-chauve { position: absolute; left: 0; top: 0; width: 34px; height: 18px; image-rendering: pixelated; }
@keyframes hw-site-tombe { 0% { transform: translate(0, 0) rotate(0) } 33% { transform: translate(var(--x, 30px), 36vh) rotate(120deg) } 66% { transform: translate(calc(var(--x, 30px) * -.5), 72vh) rotate(240deg) } 100% { transform: translate(0, 110vh) rotate(360deg) } }
@media (prefers-reduced-motion: reduce) { .hw-site-feuille, .hw-site-chauve { display: none; } }
/* Clipy en sorciere : le chapeau fait partie de son modele (public/site/halloween/chapeau.js).
   Le moteur peint les formes accrochees de la couleur du corps ; tout chemin non vide qui n'est
   pas le corps (le corps precede le groupe des yeux) est le chapeau. */
.cubee svg { overflow: visible; }
.cubee svg > path:not([d=""]):not(:has(+ g)) { fill: #4a2a75 !important; }
