/* ALERT: aggiunte allo stile ENPA (le classi rf-* vengono da stile.css / admin.css / vet.css) */
.al-larga { max-width: 760px; text-align: left; }
.al-larga .rf-campo label, .al-larga .rf-campo-nota, .al-larga h1, .al-larga h2, .al-larga p { text-align: left; max-width: none; }
.al-larga .rf-login-logo { margin-left: 0; }
.al-accetto label span { font-family: var(--rf-sans); font-size: .95rem; color: var(--rf-testo); }
.al-h2 { font-size: 1.15rem; margin: 1.4em 0 .4em; }
.al-trappola { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.al-accetto label { font-weight: 400; display: flex; gap: .6em; align-items: flex-start; }
.al-accetto input { margin-top: .3em; }
.al-scheda { border: 1px solid var(--rf-bordo); border-radius: 12px; padding: 16px 20px; margin: 0 0 16px; max-width: 760px; }
.al-scheda h2 { margin-bottom: .2em; }
.al-decisione { display: flex; flex-wrap: wrap; gap: 10px; align-items: flex-end; }
.al-decisione .rf-campo { flex: 1 1 260px; margin: 0; }
.al-azioni { display: flex; flex-wrap: wrap; gap: 12px; }
.al-form-stretto { max-width: 560px; }
.al-conta { display: inline-block; min-width: 1.4em; padding: 0 .4em; margin-left: .4em; border-radius: 99px; background: #fff; color: var(--rf-azzurro-scuro); font-weight: 700; font-size: .8em; text-align: center; }
/* Stati delle strutture: sempre testo + colore, mai solo colore */
.al-stato { display: inline-block; padding: 2px 10px; border-radius: 99px; font-size: .85rem; font-weight: 600; border: 1px solid currentColor; }
.al-stato-attiva { color: #0b6b3a; background: #e6f4ec; }
.al-stato-sospesa { color: #8a5a00; background: #fff4de; }
.al-stato-in_attesa_email, .al-stato-in_attesa_approvazione { color: #0a5f86; background: #e3f3fb; }
.al-stato-chiusa { color: #5a5a5a; background: #efefef; }
[hidden] { display: none !important; }
/* Scheda struttura */
.al-form-scheda { max-width: 820px; }
.al-fieldset { border: 0; padding: 0; margin: 0; min-width: 0; }
.al-fieldset h2 { margin-top: 1.4em; }
.al-flag { display: grid; gap: 8px; margin-bottom: 8px; }
.al-flag label { display: flex; gap: .6em; align-items: flex-start; font-weight: 400; }
.al-flag input { margin-top: .3em; }
.al-solo-lettori { position: absolute; left: -9999px; }
.al-form-scheda textarea { width: 100%; border: 1px solid var(--rf-bordo); border-radius: 8px; padding: 10px; font: inherit; }
.al-form-scheda .rf-campo input[type="text"], .al-form-scheda .rf-campo input[type="email"], .al-form-scheda .rf-campo select { width: 100%; }
.al-fieldset:disabled input, .al-fieldset:disabled select, .al-fieldset:disabled textarea { background: #f4f7f8; color: var(--rf-testo); }
.al-filtri { display: flex; flex-wrap: wrap; gap: 12px; align-items: flex-end; margin-bottom: 8px; }
.al-filtri .rf-campo { margin: 0; min-width: 200px; }
/* Motore meteo: livelli dell'Indice ENPA (scala propria: NON i colori gialla/arancione/rossa) e colori ufficiali DPC */
.al-liv { display: inline-block; padding: 2px 10px; border-radius: 99px; font-size: .85rem; font-weight: 600; border: 1px solid currentColor; white-space: nowrap; }
.al-liv-nessuno { color: #5a5a5a; background: #f3f3f3; font-weight: 400; }
.al-liv-attenzione { color: #0a5f86; background: #e3f3fb; }
.al-liv-allerta { color: #3d2a85; background: #e7e1f8; }
.al-liv-emergenza { color: #fff; background: #8a1f5c; border-color: #8a1f5c; }
.al-dpc { display: inline-block; padding: 2px 10px; border-radius: 6px; font-size: .85rem; font-weight: 600; border: 1px solid currentColor; }
.al-dpc-nessuna { color: #5a5a5a; background: #f3f3f3; font-weight: 400; }
.al-dpc-gialla { color: #7a6200; background: #fff6c9; }
.al-dpc-arancione { color: #8a4400; background: #ffe2c2; }
.al-dpc-rossa { color: #8a1c1c; background: #ffd6d6; }
.al-dpc-sconosciuto { color: #5a5a5a; background: #ececec; }
.al-tab-stato th { width: 16em; text-align: left; }
.al-form-scheda textarea, .al-form-stretto textarea { width: 100%; border: 1px solid var(--rf-bordo); border-radius: 8px; padding: 10px; font-size: .9rem; }
.al-form-stretto .rf-campo input[type="text"] { width: 100%; }

/* Home a card + cruscotto (16/10/2026) */
.al-saluto { margin: -4px 0 8px; color: var(--rf-testo); }
.al-card-griglia { display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap: 12px; }
.al-card { position: relative; display: flex; gap: 14px; align-items: flex-start; background: #fff; border: 1px solid var(--rf-bordo); border-radius: 14px; padding: 16px; text-decoration: none; color: inherit; transition: border-color .15s, box-shadow .15s, transform .15s; }
.al-card:hover, .al-card:focus-visible { border-color: var(--rf-azzurro); box-shadow: 0 4px 14px rgba(0,163,220,.18); transform: translateY(-1px); }
.al-card-icona { font-size: 1.7rem; line-height: 1; flex: none; width: 44px; height: 44px; display: grid; place-items: center; background: #E8F6FC; border-radius: 12px; }
.al-card-testo { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.al-card-testo strong { font-family: var(--rf-display); color: var(--rf-inchiostro); font-size: 1rem; }
.al-card-testo small { color: #60707A; font-size: .85rem; line-height: 1.35; }
.al-conta-card { position: absolute; top: 10px; right: 10px; margin: 0; background: var(--rf-azzurro); color: #fff; }
.al-kpi-griglia { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 12px; margin-bottom: 8px; }
.al-kpi { background: #fff; border: 1px solid var(--rf-bordo); border-radius: 14px; padding: 16px; }
.al-kpi-num { font-family: var(--rf-display); font-size: 2rem; font-weight: 800; line-height: 1.1; color: var(--rf-inchiostro); }
.al-kpi-num small { font-size: 1rem; font-weight: 600; color: #60707A; }
.al-kpi-piccolo { font-size: 1.5rem; }
.al-kpi-et { margin-top: 2px; font-size: .9rem; font-weight: 600; color: var(--rf-testo); }
.al-kpi-nota { margin-top: 8px; font-size: .82rem; color: #60707A; line-height: 1.5; }
.al-cerca { width: 100%; max-width: 420px; padding: 10px 14px; border: 1px solid var(--rf-bordo); border-radius: 10px; font: inherit; }
.al-cerca:focus { outline: 3px solid var(--rf-azzurro); outline-offset: 1px; }
tr[hidden] { display: none; }
@media (max-width: 760px) { .al-card-griglia, .al-kpi-griglia { grid-template-columns: 1fr; } }
.rf-nav-amm summary { align-items: center; }
.rf-nav-amm summary i { flex: none; }
.rf-nav-amm .al-conta { margin-left: .5em; }
/* Redazione del sito */
.red-barra { display: flex; flex-wrap: wrap; gap: 6px; margin: 4px 0 6px; }
.red-barra button { font: 600 .85rem var(--rf-sans, sans-serif); border: 1px solid var(--rf-bordo, #c9d3d8); background: #fff; border-radius: 6px; padding: 5px 10px; cursor: pointer; }
.red-barra button:hover { background: #eef5f9; }
.red-anteprima { border: 2px dashed #9bb3bf; border-radius: 10px; padding: 10px 16px; margin-top: 8px; background: #fafcfd; }
.red-regioni { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 4px 12px; }
.red-regioni label { font-weight: 400; display: flex; gap: .5em; }
.storia-red { padding-left: 1.2em; font-size: .92rem; }
