/* Riepilogo operativo: persone, sessioni e tempi di consegna. */
.operativo__rete, .operativo__sessioni { display: grid; gap: 1rem; margin: 1.2rem 0; }
.operativo__rete { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.operativo__sessioni { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.operativo__card { position: relative; display: flex; flex-direction: column; gap: .4rem; padding: 1.25rem; border: 1px solid var(--bordo); border-radius: 18px; background: white; color: var(--oceano-900); text-decoration: none; box-shadow: var(--ombra); transition: border-color .15s, box-shadow .15s; }
.operativo__card:hover { border-color: var(--oceano-500); box-shadow: 0 4px 16px #062b3f18; }
.operativo__card:focus-visible, .operativo__filtri a:focus-visible { outline: 3px solid var(--oceano-500); outline-offset: 4px; }
.operativo__icona { position: absolute; right: 1.1rem; top: 1.2rem; width: 2.6rem; height: 2.6rem; display: grid; place-items: center; border-radius: 12px; background: var(--oceano-050); color: var(--oceano-700); }
.operativo__icona svg { width: 1.4rem; height: 1.4rem; }
.operativo__numero { font-size: 2.2rem; line-height: 1.2; padding-right: 3rem; }
.operativo__titolo { font-weight: 700; font-size: 1rem; }
.operativo__nota { font-size: .83rem; color: var(--grigio-tenue); line-height: 1.45; }
.operativo__card--blu { background: var(--oceano-900); color: white; border-color: var(--oceano-900); }
.operativo__card--blu .operativo__nota { color: #d3e6ee; }
.operativo__card--blu .operativo__icona { color: var(--giallo); background: #ffffff14; }
.operativo__card--giallo { background: #fffae9; border-color: #eed990; }
.operativo__card--giallo .operativo__icona { background: #f9eab2; }
.operativo__sezione { font-size: 1.1rem; margin: 1.7rem 0 .7rem; color: var(--oceano-900); }
.operativo__tempi { margin-top: 1.5rem; }
.operativo__passaggi { display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; }
.operativo__passaggi strong { display: block; color: var(--oceano-700); font-size: 1.1rem; }
.operativo__passaggi span { font-size: .9rem; }
.operativo__tempi p { margin-bottom: 0; }
.operativo__tempi .bottone { margin-top: .8rem; }
.operativo__secondari { display: flex; gap: .8rem 1.5rem; flex-wrap: wrap; margin: 1.5rem 0; }
.operativo__secondari a { color: var(--oceano-700); font-size: .85rem; text-underline-offset: 3px; }
.operativo__ritardo { display: flex; flex-wrap: wrap; gap: .5rem 1.2rem; padding: .9rem 1.1rem; margin-top: 1rem; border: 1px solid #e4b9ae; border-radius: 12px; background: #fff4ef; color: #902d1b; text-decoration: none; font-size: .9rem; }
.operativo__filtri { display: flex; gap: .5rem; flex-wrap: wrap; margin: 1.3rem 0; }
.operativo__filtri a { border: 1px solid var(--bordo); border-radius: 999px; padding: .45rem .8rem; color: var(--oceano-700); text-decoration: none; font-size: .85rem; background: #fff; }
.operativo__filtri a[aria-current] { background: var(--oceano-700); color: #fff; border-color: var(--oceano-700); }
@media (max-width: 700px) {
  .operativo__sessioni { grid-template-columns: 1fr; }
  .operativo__card { padding: 1rem; }
  .operativo__numero { font-size: 1.9rem; }
  .operativo__passaggi { grid-template-columns: 1fr; gap: 1rem; }
}
@media (max-width: 400px) { .operativo__rete { grid-template-columns: 1fr; } }
