
.stato { display: inline-flex; align-items: center; gap: 10px; margin-top: 18px; padding: 10px 16px; border-radius: var(--raggio-pillola); background: var(--bianco); box-shadow: var(--ombra-appoggio); font: 600 var(--misura-label)/1.3 var(--font-titoli); }
.stato::before { content: ""; flex: none; width: 10px; height: 10px; border-radius: 50%; background: var(--bordo-campo); }
.stato[data-aperta="si"]::before { background: var(--aperto); box-shadow: 0 0 0 4px rgba(22, 163, 74, 0.18); }
.orari { display: grid; gap: var(--spazio-griglia); margin-top: 24px; }
@media (min-width: 560px) { .orari { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1100px) { .orari--quattro { grid-template-columns: repeat(var(--colonne), minmax(0, 1fr)); } .orari--quattro > * { grid-column: span 3; } }
.orario { padding: 18px 20px; border-radius: var(--raggio-m); background: var(--bianco); box-shadow: var(--ombra-appoggio); color: var(--testo); }
.orario h3 { display: flex; align-items: center; gap: 8px; font-size: 1.0625rem; }
.orario h3 .bi { color: var(--rosso); }
.orario dl { display: grid; grid-template-columns: auto 1fr; gap: 4px var(--spazio-griglia); margin: 10px 0 0; font-family: var(--font-mono); font-size: var(--misura-dati); }
.orario dt { color: var(--testo-2); }
.orario dd { margin: 0; font-weight: 700; text-align: right; }
.orario__nota { margin-top: 8px; color: var(--testo-2); font-size: 0.875rem; }
.sezione--scura .orario { border: 1px solid var(--linea-su-scuro); background: transparent; box-shadow: none; color: var(--bianco); }
.sezione--scura .orario h3 .bi { color: inherit; }
.sezione--scura .orario dt, .sezione--scura .orario__nota { color: var(--bianco); }
