/* Design Scuole Italia — child "Formigine 2" · f2-calendario.css
 * Calendario del mese. Due sole informazioni, tenute distinte: rosso = chiuso, blu = evento.
 * Palette: accento = colore della sezione (`--f2-acc`), rosso istituzionale #ab2b3e per i
 * giorni di chiusura (semantico, NON segue la sezione), hairline #d9dadb.
 */
.f2cl-section { padding-top: 1rem; }
.f2cl-h { margin-bottom: .3rem; }
.f2cl-lead { color: #5c6f82; margin-bottom: 1.2rem; max-width: 62ch; }

.f2cl-testa {
  display: flex;
  align-items: center;
  gap: .4rem;
  margin-bottom: .8rem;
}
.f2cl-mese { margin: 0; font-size: 1.1rem; min-width: 11rem; text-align: center; }
.f2cl-freccia,
.f2cl-oggi {
  font-family: inherit;
  border: 1px solid #d9dadb;
  background: #fff;
  color: var(--f2-acc-scuro, #0000bf);
  border-radius: 4px;
  cursor: pointer;
  line-height: 1;
  transition: background-color .15s ease-in-out, color .15s ease-in-out;
}
.f2cl-freccia { width: 2.2rem; height: 2.2rem; font-size: 1.3rem; }
.f2cl-oggi { margin-left: auto; padding: .45rem .8rem; font-size: .85rem; font-weight: 600; }
.f2cl-freccia:hover, .f2cl-oggi:hover,
.f2cl-freccia:focus-visible, .f2cl-oggi:focus-visible { background: var(--f2-acc, #0000f5); color: #fff; outline: 0; }

.f2cl-griglia { width: 100%; border-collapse: collapse; table-layout: fixed; }
.f2cl-caption { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.f2cl-griglia th {
  padding: .4rem 0;
  font-size: .78rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .04em;
  color: #5c6f82;
  border-bottom: 1px solid #d9dadb;
}
.f2cl-griglia th.f2cl-dom { color: #ab2b3e; }
.f2cl-griglia td {
  height: 4.4rem;
  vertical-align: top;
  padding: .3rem .35rem;
  border: 1px solid #e8eaed;
}
.f2cl-vuota { background: #fafbfc; border-color: #f0f2f5; }
.f2cl-num { font-size: .9rem; font-weight: 600; color: #19191a; }
/* Rosso = si sta a casa. E' l'unica cosa che una famiglia cerca in un calendario scolastico. */
.f2cl-chiuso { background: #fdf3f4; }
.f2cl-chiuso .f2cl-num { color: #ab2b3e; }
.f2cl-festa {
  display: block;
  font-size: .68rem;
  line-height: 1.15;
  color: #ab2b3e;
  margin-top: .1rem;
  overflow-wrap: anywhere;
}
.f2cl-oggi-cella { box-shadow: inset 0 0 0 2px var(--f2-acc, #0000f5); }
.f2cl-pallini { display: block; margin-top: .25rem; }
.f2cl-pallini i { display: inline-block; width: 6px; height: 6px; border-radius: 50%; background: var(--f2-acc, #0000f5); margin-right: 2px; }

.f2cl-sotto { margin-top: 1.4rem; }
.f2cl-elencotitolo { font-size: .95rem; text-transform: capitalize; margin-bottom: .5rem; }
.f2cl-elenco { list-style: none; padding: 0; margin: 0; }
.f2cl-voce { display: flex; gap: .8rem; padding: .5rem 0; border-bottom: 1px solid #e8eaed; }
.f2cl-data { flex: 0 0 2rem; font-weight: 700; color: var(--f2-acc-scuro, #0000bf); text-align: right; }
.f2cl-voce-chiuso .f2cl-data { color: #ab2b3e; }
.f2cl-voce-chiuso .f2cl-testo { color: #ab2b3e; }
.f2cl-testo a { color: var(--f2-acc-scuro, #0000bf); font-weight: 600; }
.f2cl-ora { color: #5c6f82; font-size: .85rem; }
.f2cl-niente { color: #5c6f82; padding: .5rem 0; }
.f2cl-nota { margin-top: 1.2rem; font-size: .84rem; color: #5c6f82; max-width: 68ch; }

@media (max-width: 575.98px) {
  .f2cl-griglia td { height: 3.2rem; padding: .2rem; }
  .f2cl-festa { display: none; }          /* su telefono il nome della festa sta nell'elenco sotto */
  .f2cl-mese { min-width: 0; flex: 1; font-size: 1rem; }
  .f2cl-oggi { margin-left: 0; }
  .f2cl-testa { flex-wrap: wrap; }
}
.f2cl-ics { margin: -.4rem 0 .8rem; font-size: .88rem; }
.f2cl-ics a { color: var(--f2-acc-scuro, #0000bf); font-weight: 600; }
