/* Fotogrammi chiave presi dal design: gli strati della mappa li richiamano
   per nome. Senza questi il percorso non si traccia, i punti non compaiono e
   le distanze non scendono — cioe' la fascia resta immobile.

   ATTENZIONE alle graffe. Una @keyframes non chiusa non e' un errore locale:
   il browser continua a leggere il blocco fino alla fine del file e si mangia
   tutte le regole successive, quindi si perdono TUTTE le animazioni, non una.
   E' successo il 27 ago 2026. Il grep che conta "@keyframes" non se ne
   accorge: verifica che il testo ci sia, non che il CSS si legga. */

@keyframes grmIn {
	from { opacity: 0; transform: translateY(3px); }
	to   { opacity: 1; transform: translateY(0); }
}

@keyframes grmUp {
	from { opacity: 0; transform: translateY(10px); }
	to   { opacity: 1; transform: translateY(0); }
}

@keyframes grmFade {
	from { opacity: 0; }
	to   { opacity: 1; }
}

@keyframes grmDraw {
	to { stroke-dashoffset: 0; }
}

@keyframes grmPop {
	from { opacity: 0; transform: scale(.5); }
	to   { opacity: 1; transform: scale(1); }
}

@keyframes grmChip {
	from { opacity: 0; transform: translateY(-5px); }
	to   { opacity: 1; transform: translateY(0); }
}

@keyframes grmMarch {
	to { stroke-dashoffset: -36; }
}

@keyframes grmRing {
	from { r: 9;  opacity: .45; }
	to   { r: 22; opacity: 0; }
}
