/* [next]/internal/font/google/archivo_798be407.module.css [app-client] (css) */
@font-face {
  font-family: Archivo;
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url("../media/a2947afc6a06879b-s.1gyfqm5yhhzs7.woff2") format("woff2");
  unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB;
}

@font-face {
  font-family: Archivo;
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url("../media/651aaf1801011892-s.357dd_6abeqge.woff2") format("woff2");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: Archivo;
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url("../media/75affa71d1e2f6a7-s.p.17-aodiw50953.woff2") format("woff2");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: Archivo;
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url("../media/a2947afc6a06879b-s.1gyfqm5yhhzs7.woff2") format("woff2");
  unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB;
}

@font-face {
  font-family: Archivo;
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url("../media/651aaf1801011892-s.357dd_6abeqge.woff2") format("woff2");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: Archivo;
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url("../media/75affa71d1e2f6a7-s.p.17-aodiw50953.woff2") format("woff2");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: Archivo;
  font-style: normal;
  font-weight: 800;
  font-stretch: 100%;
  font-display: swap;
  src: url("../media/a2947afc6a06879b-s.1gyfqm5yhhzs7.woff2") format("woff2");
  unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB;
}

@font-face {
  font-family: Archivo;
  font-style: normal;
  font-weight: 800;
  font-stretch: 100%;
  font-display: swap;
  src: url("../media/651aaf1801011892-s.357dd_6abeqge.woff2") format("woff2");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: Archivo;
  font-style: normal;
  font-weight: 800;
  font-stretch: 100%;
  font-display: swap;
  src: url("../media/75affa71d1e2f6a7-s.p.17-aodiw50953.woff2") format("woff2");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: Archivo Fallback;
  src: local(Arial);
  ascent-override: 88.96%;
  descent-override: 21.28%;
  line-gap-override: 0.0%;
  size-adjust: 98.7%;
}

.archivo_798be407-module__Lx9rLq__className {
  font-family: Archivo, Archivo Fallback;
  font-style: normal;
}

.archivo_798be407-module__Lx9rLq__variable {
  --carattere: "Archivo", "Archivo Fallback";
}

/* [project]/src/app/globals.css [app-client] (css) */
:root {
  --lightningcss-light: initial;
  --lightningcss-dark: ;
  color-scheme: light;
  --fondo: #fff;
  --testo: #191c22;
  --testo-secondario: #5e6673;
  --bordo: #ebebe7;
  --fondo-lettura: #f7f7f4;
  --bordo-campione: #191c2259;
  --blu: #1b5fbf;
  --blu-banda-da: #3a2e9e;
  --blu-banda-mezzo: #1b5fbf;
  --blu-banda-a: #0b6c7d;
  --giallo: #f2b705;
  --viola-organizzare: #7b5ea7;
  --rosso: #ce2f32;
  --arancione: #b05208;
  --verde: #1e7a46;
  --mappa-giallo: #fff1a8;
  --mappa-pesca: #ffd9c2;
  --mappa-rosa: #fbd3e0;
  --mappa-lilla: #e3d7f5;
  --mappa-azzurro: #d3e8f7;
  --mappa-menta: #cff0e2;
  --mappa-salvia: #dde8cc;
  --mappa-sabbia: #ede3d1;
  --mappa-crema: #fbf6e9;
  --mappa-righe: #ccd9eb;
}

@media (prefers-color-scheme: dark) {
  :root:not([data-tema="CHIARO"]) {
    --lightningcss-light: ;
    --lightningcss-dark: initial;
    color-scheme: dark;
    --fondo: #15181d;
    --testo: #edeeea;
    --testo-secondario: #9aa2ae;
    --bordo: #2c3037;
    --fondo-lettura: #1b1e24;
    --bordo-campione: #edeeea59;
    --blu: #4e90e0;
    --blu-banda-da: #3a2e9e;
    --blu-banda-mezzo: #1b5fbf;
    --blu-banda-a: #0b6c7d;
    --giallo: #f2b705;
    --viola-organizzare: #b39ddb;
    --rosso: #e8595c;
    --arancione: #cc7d2c;
    --verde: #3fa76b;
    --mappa-giallo: #4d4317;
    --mappa-pesca: #553423;
    --mappa-rosa: #552839;
    --mappa-lilla: #3d3157;
    --mappa-azzurro: #1f3b52;
    --mappa-menta: #1e4638;
    --mappa-salvia: #34432a;
    --mappa-sabbia: #463d2e;
    --mappa-crema: #26231c;
    --mappa-righe: #323a47;
  }
}

:root[data-tema="SCURO"] {
  --lightningcss-light: ;
  --lightningcss-dark: initial;
  color-scheme: dark;
  --fondo: #15181d;
  --testo: #edeeea;
  --testo-secondario: #9aa2ae;
  --bordo: #2c3037;
  --fondo-lettura: #1b1e24;
  --bordo-campione: #edeeea59;
  --blu: #4e90e0;
  --blu-banda-da: #3a2e9e;
  --blu-banda-mezzo: #1b5fbf;
  --blu-banda-a: #0b6c7d;
  --giallo: #f2b705;
  --viola-organizzare: #b39ddb;
  --rosso: #e8595c;
  --arancione: #cc7d2c;
  --verde: #3fa76b;
  --mappa-giallo: #4d4317;
  --mappa-pesca: #553423;
  --mappa-rosa: #552839;
  --mappa-lilla: #3d3157;
  --mappa-azzurro: #1f3b52;
  --mappa-menta: #1e4638;
  --mappa-salvia: #34432a;
  --mappa-sabbia: #463d2e;
  --mappa-crema: #26231c;
  --mappa-righe: #323a47;
}

*, :before, :after {
  box-sizing: border-box;
}

html {
  -webkit-text-size-adjust: 100%;
}

body {
  background: var(--fondo);
  min-height: 100dvh;
  color: var(--testo);
  font-family: var(--carattere), system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  flex-direction: column;
  margin: 0;
  font-size: 1.0625rem;
  font-weight: 400;
  line-height: 1.65;
  display: flex;
}

h1, h2, h3 {
  letter-spacing: -.01em;
  margin: 0 0 .5rem;
  font-weight: 800;
  line-height: 1.25;
}

h1 {
  font-size: 1.875rem;
}

h2 {
  font-size: 1.375rem;
}

h3 {
  font-size: 1.125rem;
}

p {
  margin: 0 0 1rem;
}

a {
  color: var(--blu);
  font-weight: 600;
}

code {
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: .9375em;
}

.contenitore {
  width: 100%;
  max-width: var(--larghezza-contenitore, 60rem);
  margin: 0 auto;
  padding: 0 1.25rem;
}

body:has(.schermata-larga) {
  --larghezza-contenitore: 112rem;
}

.intestazione-zona > .contenitore {
  max-width: 112rem;
}

@media (min-width: 48rem) and (min-height: 40rem) {
  body:has(.schermata-piena) {
    height: 100dvh;
    min-height: 100dvh;
    overflow: hidden;
  }

  body:has(.schermata-piena) .contenuto {
    flex-direction: column;
    min-height: 0;
    padding-bottom: 1rem;
    display: flex;
  }

  body:has(.schermata-piena) .contenuto > .contenitore {
    flex-direction: column;
    flex: auto;
    min-height: 0;
    display: flex;
  }

  .schermata-piena {
    flex-direction: column;
    flex: auto;
    min-height: 0;
    display: flex;
  }
}

.contenuto {
  flex: auto;
  padding: 2rem 0 3rem;
}

.intestazione-zona {
  padding: 1rem 0 0;
}

.intestazione {
  background-image: linear-gradient(135deg,
      var(--blu-banda-da) 0%,
      var(--blu-banda-mezzo) 52%,
      var(--blu-banda-a) 100%);
  color: #fff;
  border-radius: 1rem;
  position: relative;
  overflow: hidden;
}

.intestazione-riga {
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  min-height: 4.5rem;
  padding: 1rem 1.75rem;
  display: flex;
  position: relative;
}

.intestazione-identita {
  flex-direction: column;
  gap: .125rem;
  display: flex;
}

.intestazione-segno {
  vertical-align: -.2em;
  width: 1.5rem;
  height: 1.5rem;
  margin-right: .5rem;
}

.intestazione-nome {
  letter-spacing: -.015em;
  color: #fff;
  font-size: 1.75rem;
  font-weight: 800;
  line-height: 1.15;
  text-decoration: none;
  display: inline-block;
}

.intestazione-nome:hover, .intestazione-nome:focus-visible {
  text-underline-offset: .2em;
  text-decoration: underline;
}

.intestazione-data {
  color: #fff;
  font-size: .9375rem;
  font-weight: 600;
}

.intestazione-strumenti {
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  gap: .5rem 1rem;
  margin-left: auto;
  display: flex;
}

.barra-sezioni {
  border-bottom: 1px solid var(--bordo);
  padding: .625rem .25rem;
  display: flex;
  position: relative;
}

.sezioni {
  flex-wrap: wrap;
  flex: auto;
  align-items: center;
  gap: .25rem;
  display: flex;
}

.sezioni-stacco {
  background: var(--bordo);
  align-self: stretch;
  width: 1px;
  margin: .125rem .5rem;
}

.sezione-guida {
  margin-left: auto;
}

.sezione-voce {
  color: var(--testo-secondario);
  border-bottom: 2px solid #0000;
  border-radius: .5rem;
  padding: .375rem .625rem;
  font-size: .9375rem;
  font-weight: 600;
  text-decoration: none;
}

.sezione-voce:hover, .sezione-voce:focus-visible {
  color: var(--testo);
  background: var(--fondo-lettura);
}

.sezione-voce[aria-current="page"] {
  color: var(--testo);
  border-bottom-width: 3px;
  border-bottom-color: var(--colore-spazio, var(--blu));
  font-weight: 800;
}

.spiegazione-spazio {
  display: inline;
}

.spiegazione-spazio > summary {
  cursor: pointer;
  align-items: center;
  list-style: none;
  display: inline-flex;
}

.spiegazione-spazio .segno-spiegazione {
  position: static;
  transform: none;
}

.spiegazione-spazio > summary::-webkit-details-marker {
  display: none;
}

.spiegazione-spazio > .spiegazione-testo {
  z-index: 5;
  background: var(--fondo);
  border: 1px solid var(--bordo);
  border-left: 3px solid var(--bordo);
  border-radius: 0 0 .5rem .5rem;
  margin: 0;
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  box-shadow: 0 .5rem 1rem #191c221f;
}

.barra-contesto {
  border-bottom: 1px solid var(--bordo);
  flex-wrap: wrap;
  align-items: center;
  gap: .5rem 1rem;
  padding: .5rem .25rem;
  display: flex;
  position: relative;
}

.barra-contesto-sinistra {
  flex-wrap: wrap;
  align-items: center;
  gap: .5rem 1rem;
  min-width: 0;
  display: flex;
}

.contesto {
  flex-wrap: wrap;
  align-items: center;
  gap: .5rem;
  min-width: 0;
  display: flex;
}

.contesto-tendina {
  font: inherit;
  max-width: 100%;
  color: var(--testo);
  background: var(--fondo);
  border: 1px solid var(--bordo);
  border-radius: .5rem;
  padding: .375rem .5rem;
  font-size: .9375rem;
}

.barra-contesto .bottone-banda {
  border-color: var(--testo-secondario);
  color: var(--testo);
}

.barra-contesto .bottone-banda:hover {
  background: var(--fondo-lettura);
}

.spiegazione-contesto {
  flex: none;
}

.barra-contesto-destra {
  align-items: center;
  margin-left: auto;
  display: flex;
}

.barra-contesto .spazi {
  flex-wrap: nowrap;
}

.barra-contesto .spazi-tendina {
  color: var(--testo);
  background: var(--fondo);
  border-color: var(--bordo);
}

@media (max-width: 40rem) {
  .intestazione-riga {
    flex-direction: column;
    align-items: flex-start;
    gap: .5rem;
    min-height: 0;
    padding: 1rem 1.25rem;
  }

  .intestazione-strumenti {
    justify-content: flex-start;
    margin-left: 0;
  }

  .intestazione-utente, .intestazione-strumenti .bottone-banda {
    flex: none;
  }

  .barra-contesto-destra {
    justify-content: flex-end;
    width: 100%;
  }

  .spazi {
    flex: auto;
    width: auto;
    min-width: 0;
  }
}

.pie-pagina {
  border-top: 1px solid var(--bordo);
  background: var(--fondo-lettura);
  color: var(--testo-secondario);
  padding: 1.25rem 0;
  font-size: .875rem;
}

.scheda {
  background: var(--fondo);
  border: 1px solid var(--bordo);
  border-radius: .75rem;
  padding: 1.25rem 1.5rem;
}

.secondario {
  color: var(--testo-secondario);
}

.stato {
  align-items: center;
  gap: .625rem;
  font-weight: 600;
  display: inline-flex;
}

.stato-ok {
  color: var(--verde);
}

.stato-attenzione {
  color: var(--arancione);
}

.stato-errore {
  color: var(--rosso);
}

.stato.messaggio {
  display: block;
}

.stato.messaggio > .stato-segno {
  vertical-align: -.05em;
  margin-right: .625rem;
  display: inline-block;
}

.stato-segno {
  background: currentColor;
  border-radius: 50%;
  flex: none;
  width: .75rem;
  height: .75rem;
}

.stato-attenzione .stato-segno {
  clip-path: polygon(50% 0%, 100% 100%, 0% 100%);
  border-radius: 0;
}

.stato-errore .stato-segno {
  border-radius: .15rem;
  transform: rotate(45deg);
}

.griglia-colori {
  grid-template-columns: repeat(auto-fill, minmax(14rem, 1fr));
  gap: 1rem;
  margin: 0 0 2rem;
  padding: 0;
  list-style: none;
  display: grid;
}

.colore {
  border: 1px solid var(--bordo);
  background: var(--fondo);
  border-radius: .75rem;
  overflow: hidden;
}

.colore-campione {
  border-bottom: 1px solid var(--bordo);
  height: 4.5rem;
  box-shadow: inset 0 0 0 1px var(--bordo-campione);
}

.colore-testo {
  padding: .75rem .875rem .875rem;
}

.colore-ruolo {
  font-weight: 600;
  display: block;
}

.colore-codice {
  color: var(--testo-secondario);
  text-transform: uppercase;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: .875rem;
}

.pesi {
  margin: 0;
  padding: 0;
  list-style: none;
}

.pesi li {
  border-bottom: 1px solid var(--bordo);
  padding: .875rem 0;
}

.pesi li:last-child {
  border-bottom: 0;
}

.peso-400 {
  font-size: 1.25rem;
  font-weight: 400;
}

.peso-600 {
  font-size: 1.25rem;
  font-weight: 600;
}

.peso-800 {
  font-size: 1.25rem;
  font-weight: 800;
}

.intestazione-utente {
  color: #fff;
  text-underline-offset: .2em;
  font-size: .9375rem;
  font-weight: 600;
  text-decoration: underline;
}

.intestazione-utente:visited {
  color: #fff;
}

.bottone-banda {
  appearance: none;
  color: #fff;
  cursor: pointer;
  font: inherit;
  background: none;
  border: 1px solid #ffffffbf;
  border-radius: .5rem;
  padding: .25rem .75rem;
  font-size: .875rem;
  font-weight: 600;
  text-decoration: none;
}

.bottone-banda:hover {
  background: #ffffff29;
}

.solo-lettori {
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  position: absolute;
  overflow: hidden;
}

.avviso-ai {
  background: var(--fondo-lettura);
  border: 1px solid var(--bordo);
  border-left: 5px solid var(--bordo);
  color: var(--testo);
  border-radius: .5rem;
  margin-top: .75rem;
  padding: .625rem 1rem;
  font-size: .9375rem;
  font-weight: 400;
  text-decoration: none;
  display: block;
}

.avviso-ai-fermo {
  border-left-color: var(--rosso);
}

.avviso-ai-guarda {
  border-left-color: var(--arancione);
}

.avviso-ai-fatto {
  font-weight: 700;
  display: block;
}

.avviso-ai-fermo .avviso-ai-fatto {
  color: var(--rosso);
}

.avviso-ai-guarda .avviso-ai-fatto {
  color: var(--arancione);
}

.avviso-ai-rimedio {
  color: var(--testo);
  margin-top: .125rem;
  display: block;
}

a.avviso-ai:hover .avviso-ai-fatto, a.avviso-ai:focus-visible .avviso-ai-fatto {
  text-underline-offset: .2em;
  text-decoration: underline;
}

.avviso-spazio {
  background: var(--fondo-lettura);
  border: 1px solid var(--bordo);
  border-left: 5px solid var(--colore-spazio, var(--bordo));
  border-radius: .5rem;
  margin-top: .75rem;
  padding: .625rem 1rem;
  font-size: .9375rem;
}

.avvisi {
  border: 1px solid var(--rosso);
  border-left: 5px solid var(--rosso);
  background: var(--fondo-lettura);
  border-radius: .75rem;
  margin-top: 1rem;
  padding: 1rem 1.25rem;
}

.avvisi-titolo {
  color: var(--rosso);
  margin: 0 0 .625rem;
  font-size: 1rem;
}

.avvisi-elenco {
  margin: 0 0 1rem;
  padding-left: 1.25rem;
}

.avvisi-elenco li {
  margin-bottom: .5rem;
}

.avvisi-elenco li:last-child {
  margin-bottom: 0;
}

.modulo {
  flex-direction: column;
  gap: 1rem;
  margin: 0;
  display: flex;
}

.campo {
  flex-direction: column;
  gap: .25rem;
  display: flex;
}

.campo > label {
  font-size: .9375rem;
  font-weight: 600;
}

.campo-aiuto {
  color: var(--testo-secondario);
  font-size: .875rem;
}

.campo-aiuto.stato-ok {
  color: var(--verde);
}

.campo-aiuto.stato-attenzione {
  color: var(--arancione);
}

.campo-aiuto.stato-errore {
  color: var(--rosso);
}

input[type="file"] {
  font: inherit;
  font-size: var(--pulsante-testo);
  max-width: 100%;
}

input[type="file"]::file-selector-button {
  appearance: none;
  border: 1px solid var(--testo-secondario);
  color: var(--testo);
  cursor: pointer;
  font: inherit;
  font-size: var(--pulsante-testo);
  padding: var(--pulsante-aria);
  background: none;
  border-radius: .5rem;
  margin-right: .625rem;
  font-weight: 600;
}

input[type="file"]::file-selector-button:hover {
  background: var(--fondo-lettura);
}

input[type="file"]:disabled::file-selector-button {
  cursor: progress;
  opacity: .7;
}

.gruppo-scelte {
  border: 0;
  min-width: 0;
  margin: 0;
  padding: 0;
  display: block;
}

.quante-domande-e-ordine {
  display: contents;
}

.quante-domande-e-ordine:has(input[name="domande"][value="0"]:checked) .ordine-delle-domande {
  display: none;
}

.gruppo-scelte > legend {
  padding: 0;
  font-size: .9375rem;
  font-weight: 600;
}

.scelte-affiancate {
  gap: var(--stacco-delle-righe) 1.25rem;
  flex-wrap: wrap;
  display: flex;
}

.elenco-scuola.elenco-cestino {
  row-gap: var(--stacco-delle-righe);
  grid-template-columns: 1fr;
}

.elenco-scuola.elenco-confronto {
  grid-template-columns: 1fr;
}

.elenco-confronto .campo > textarea {
  width: 100%;
  max-width: none;
}

.elenco-scuola.elenco-cestino > .voce-scuola {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: .5rem 1rem;
  display: flex;
}

.scelte-affiancate > .scelta {
  margin-top: 0;
}

.scelta {
  align-items: baseline;
  gap: .5rem;
  margin-top: .375rem;
  font-size: .9375rem;
  display: flex;
}

.campioni {
  flex-wrap: wrap;
  gap: .5rem;
  margin: .5rem 0 .375rem;
  display: flex;
}

.campione {
  cursor: pointer;
  text-align: center;
  border: 2px solid #0000;
  border-radius: .625rem;
  flex-direction: column;
  align-items: center;
  gap: .25rem;
  width: 5.5rem;
  padding: .5rem .25rem;
  font-size: .8125rem;
  display: flex;
}

.campione-tondo {
  border: 1px solid var(--testo-secondario);
  border-radius: 50%;
  width: 2rem;
  height: 2rem;
}

.campione:has(input:checked) {
  background: var(--fondo-lettura);
  border-color: var(--testo);
}

.campione:has(input:checked) .campione-nome {
  font-weight: 800;
}

:root {
  --altezza-campo: 2.75rem;
}

input[type="text"], input[type="email"], input[type="password"] {
  font: inherit;
  background: var(--fondo);
  color: var(--testo);
  border: 1px solid var(--testo-secondario);
  width: 100%;
  max-width: 26rem;
  height: var(--altezza-campo);
  box-sizing: border-box;
  border-radius: .5rem;
  padding: .5rem .625rem;
}

input:disabled, input[readonly] {
  background: var(--fondo-lettura);
  color: var(--testo-secondario);
}

.campo > .scelta-con-pallino > select, .campo > select {
  font: inherit;
  background: var(--fondo);
  color: var(--testo);
  border: 1px solid var(--testo-secondario);
  width: 100%;
  max-width: 26rem;
  height: var(--altezza-campo);
  box-sizing: border-box;
  border-radius: .5rem;
  padding: .5rem .625rem;
}

.scelta select {
  font: inherit;
  background: var(--fondo);
  color: var(--testo);
  border: 1px solid var(--testo-secondario);
  box-sizing: border-box;
  border-radius: .5rem;
  padding: .25rem .5rem;
}

.campo > textarea:not(.casella-testo) {
  font: inherit;
  background: var(--fondo);
  color: var(--testo);
  border: 1px solid var(--testo-secondario);
  border-radius: .5rem;
  width: 100%;
  max-width: 26rem;
  padding: .5rem .625rem;
}

.campo > textarea.campo-a-tutta-riga {
  max-width: none;
}

.bottone {
  appearance: none;
  color: #fff;
  cursor: pointer;
  font: inherit;
  font-size: var(--pulsante-testo);
  padding: var(--pulsante-aria);
  background: #1b5fbf;
  border: 1px solid #1b5fbf;
  border-radius: .5rem;
  font-weight: 600;
  text-decoration: none;
}

.bottone:hover {
  background: #17509f;
}

.bottone:disabled {
  cursor: progress;
  opacity: .7;
}

:root {
  --pulsante-testo: .9375rem;
  --pulsante-aria: .375rem .875rem;
  --stacco-delle-righe: .5rem;
}

.bottone-secondario {
  appearance: none;
  border: 1px solid var(--testo-secondario);
  color: var(--testo);
  cursor: pointer;
  font: inherit;
  font-size: var(--pulsante-testo);
  padding: var(--pulsante-aria);
  background: none;
  border-radius: .5rem;
  font-weight: 600;
  text-decoration: none;
}

.bottone-secondario:hover {
  background: var(--fondo-lettura);
}

.bottone-secondario:disabled {
  cursor: progress;
  opacity: .7;
}

.bottone-al-limite:disabled {
  cursor: default;
  opacity: 1;
  color: var(--testo-secondario);
  border-color: var(--fondo-lettura, #0000001f);
  background: none;
}

.gruppo-bottoni {
  flex-wrap: wrap;
  align-items: center;
  gap: .5rem;
  display: flex;
}

.gruppo-bottoni > .azione-a-destra {
  flex-wrap: wrap;
  gap: .5rem;
  margin-left: auto;
  display: flex;
}

.gruppo-bottoni > .smistamento-conferma[open] {
  flex-basis: 100%;
}

.spiegato-accanto > summary {
  cursor: pointer;
  align-items: center;
  min-height: 2.25rem;
  list-style: none;
  display: inline-flex;
}

.spiegato-accanto > summary::-webkit-details-marker {
  display: none;
}

.spiegato-accanto .segno-spiegazione {
  margin-left: 0;
  position: static;
  left: auto;
  transform: none;
}

.spiegato-accanto > summary:hover .segno-spiegazione, .spiegato-accanto > summary:focus-visible .segno-spiegazione, .spiegato-accanto[open] > summary .segno-spiegazione {
  color: var(--testo);
  border-color: var(--testo-secondario);
}

.gruppo-bottoni > .spiegato-accanto[open], .gruppo-bottoni > .pulsante-e-domanda > .spiegato-accanto[open] {
  flex-basis: 100%;
  order: 1;
}

.pulsante-e-domanda {
  align-items: center;
  gap: .5rem;
  display: inline-flex;
}

.gruppo-bottoni > .pulsante-e-domanda:has( > .spiegato-accanto[open]) {
  display: contents;
}

.gruppo-bottoni + .gruppo-bottoni {
  margin-top: .75rem;
}

.ritocco-fine {
  flex-wrap: wrap;
  align-items: center;
  gap: .5rem;
  margin-left: auto;
  display: flex;
}

.messaggio {
  margin: .75rem 0 0;
  font-weight: 600;
}

.elenco {
  flex-direction: column;
  gap: 1rem;
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
}

.elenco-in-riga {
  flex-flow: wrap;
  gap: .375rem .75rem;
}

.elenco-in-riga > li:not(:last-child):after {
  content: "·";
  color: var(--testo-secondario);
  margin-left: .75rem;
}

.riga {
  border-top: 1px solid var(--bordo);
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: .75rem;
  padding: .75rem 0;
  display: flex;
}

.riga:first-of-type {
  border-top: 0;
}

.riga-spiegata {
  display: block;
}

.riga-spiegata > summary {
  cursor: pointer;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: .75rem;
  padding-left: 1.75rem;
  list-style: none;
  display: flex;
  position: relative;
}

.riga-spiegata > summary::-webkit-details-marker {
  display: none;
}

.riga-sotto {
  color: var(--arancione);
  flex-basis: 100%;
  margin-top: .25rem;
}

.segno-spiegazione {
  border: 1px solid var(--bordo);
  background: var(--fondo-lettura);
  min-width: 1.25rem;
  min-height: 1.25rem;
  color: var(--testo-secondario);
  vertical-align: -.15em;
  border-radius: 999px;
  justify-content: center;
  align-items: center;
  margin-left: .375rem;
  font-size: .75rem;
  font-weight: 800;
  line-height: 1;
  display: inline-flex;
  position: absolute;
  top: 50%;
  left: -.75rem;
  transform: translateY(-50%);
}

.riga-spiegata > summary:hover .segno-spiegazione, .riga-spiegata > summary:focus-visible .segno-spiegazione, .riga-spiegata[open] > summary .segno-spiegazione {
  color: var(--testo);
  border-color: var(--testo-secondario);
}

.notti-finestra {
  --altezza-riga: calc(1.5rem + 1.5em);
  max-height: calc(5 * var(--altezza-riga) + .75rem);
  scrollbar-gutter: stable;
  padding-right: .25rem;
  overflow-y: auto;
}

.notti-finestra:focus-visible {
  outline: 2px solid var(--testo-secondario);
  outline-offset: 2px;
  border-radius: .375rem;
}

.titolo-spiegato {
  margin-top: 2.5rem;
  display: block;
}

.titolo-attivita-riga {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: .5rem 1rem;
  margin-top: 2.5rem;
  margin-bottom: .75rem;
  display: flex;
}

.titolo-attivita-riga > .titolo-spiegato {
  margin-top: 0;
}

.titolo-spiegato > summary {
  cursor: pointer;
  padding-left: 1.75rem;
  list-style: none;
  position: relative;
}

.titolo-spiegato > summary::-webkit-details-marker {
  display: none;
}

.titolo-spiegato > summary > h2, .titolo-spiegato > summary > h3 {
  margin: 0;
}

.titolo-spiegato > summary:hover .segno-spiegazione, .titolo-spiegato > summary:focus-visible .segno-spiegazione, .titolo-spiegato[open] > summary .segno-spiegazione {
  color: var(--testo);
  border-color: var(--testo-secondario);
}

.periodo-spiegato {
  margin: .5rem 0 .75rem;
  display: block;
}

.periodo-spiegato > summary {
  cursor: pointer;
  align-items: baseline;
  gap: .375rem;
  list-style: none;
  display: flex;
}

.periodo-spiegato > summary::-webkit-details-marker {
  display: none;
}

.periodo-spiegato .segno-spiegazione {
  flex: none;
  margin-left: 0;
  position: static;
  left: auto;
  transform: none;
}

.periodo-spiegato > summary:hover .segno-spiegazione, .periodo-spiegato > summary:focus-visible .segno-spiegazione, .periodo-spiegato[open] > summary .segno-spiegazione {
  color: var(--testo);
  border-color: var(--testo-secondario);
}

.messaggio-spiegato {
  margin: .75rem 0 0;
  padding-left: 1.875rem;
  position: relative;
}

.messaggio-spiegato > details > summary {
  cursor: pointer;
  align-items: center;
  height: 1.65em;
  list-style: none;
  display: inline-flex;
  position: absolute;
  top: 0;
  left: 0;
}

.messaggio-spiegato > details > summary::-webkit-details-marker {
  display: none;
}

.messaggio-spiegato .segno-spiegazione {
  margin-left: 0;
  position: static;
  left: auto;
  transform: none;
}

.messaggio-spiegato > details > summary:hover .segno-spiegazione, .messaggio-spiegato > details > summary:focus-visible .segno-spiegazione, .messaggio-spiegato > details[open] > summary .segno-spiegazione {
  color: var(--testo);
  border-color: var(--testo-secondario);
}

.messaggio-spiegato .spiegazione-testo {
  font-weight: 400;
}

.spiegazione-testo {
  border-left: 3px solid var(--bordo);
  background: var(--fondo-lettura);
  color: var(--testo-secondario);
  margin: .625rem 0 .25rem;
  padding: .625rem .75rem;
  font-size: .875rem;
  line-height: 1.5;
}

.spiegazione-testo p {
  margin: 0;
}

.spiegazione-testo p + p {
  margin-top: .5rem;
}

.pastiglia {
  background: var(--fondo-lettura);
  border: 1px solid var(--testo-secondario);
  color: var(--testo-secondario);
  border-radius: 999px;
  padding: .0625rem .625rem;
  font-size: .8125rem;
  font-weight: 600;
  display: inline-block;
}

.pastiglia-colorata {
  border-color: var(--colore-tipo);
  background: color-mix(in srgb, var(--colore-tipo) 18%, var(--fondo));
  color: var(--testo);
}

.pastiglia-attenzione {
  background: color-mix(in srgb, var(--giallo) 16%, var(--fondo));
  border-color: var(--giallo);
  color: var(--testo);
}

.pastiglia-ok {
  background: color-mix(in srgb, var(--verde) 16%, var(--fondo));
  border-color: var(--verde);
  color: var(--testo);
}

.pallino-spazio {
  border: 1px solid var(--bordo-campione);
  vertical-align: -.05em;
  border-radius: 50%;
  width: .75rem;
  height: .75rem;
  margin-right: .375rem;
  display: inline-block;
}

.scelta-con-pallino {
  min-width: 0;
  max-width: 100%;
  display: block;
  position: relative;
}

.scelta-con-pallino > select {
  display: block;
}

.pallino-scelta {
  border: 1px solid var(--bordo-campione);
  pointer-events: none;
  visibility: hidden;
  border-radius: 50%;
  width: .75rem;
  height: .75rem;
  position: absolute;
  top: 50%;
  left: .625rem;
  transform: translateY(-50%);
}

.scelta-con-pallino > select, .campo > .scelta-con-pallino > select {
  padding-left: 1.75rem;
}

.orario .pallino-scelta {
  width: .5rem;
  height: .5rem;
  left: .375rem;
}

.orario td .scelta-con-pallino > select {
  padding-left: 1.125rem;
}

.quadratino-tipo {
  border: 1px solid var(--bordo-campione);
  vertical-align: -.05em;
  border-radius: .125rem;
  width: .75rem;
  height: .75rem;
  margin-right: .375rem;
  display: inline-block;
}

.quadratino-scelta {
  border-radius: .125rem;
}

.rombo-tipo {
  border: 1px solid var(--bordo-campione);
  vertical-align: .05em;
  border-radius: .0625rem;
  width: .55rem;
  height: .55rem;
  margin-left: .1rem;
  margin-right: .475rem;
  display: inline-block;
  transform: rotate(45deg);
}

.pallino-scelta.quadratino-scelta {
  transform: translateY(calc(.08rem - 50%));
}

.pallino-scelta.rombo-scelta {
  border-radius: .0625rem;
  width: .55rem;
  height: .55rem;
  left: .7rem;
  transform: translateY(-50%)rotate(45deg);
}

@supports (appearance: base-select) {
  .scelta-con-pallino > select {
    appearance: base-select;
  }

  .scelta-con-pallino > select::picker(select) {
    appearance: base-select;
  }

  .scelta-con-pallino > select {
    white-space: nowrap;
    align-items: center;
    line-height: normal;
    display: flex;
    overflow: hidden;
  }

  .scelta-con-pallino > select::picker-icon {
    content: "";
    box-sizing: border-box;
    border: 1.5px solid;
    border-width: 0 1.5px 1.5px 0;
    flex: none;
    width: .4rem;
    height: .4rem;
    margin-inline: auto .125rem;
    transform: translateY(-25%)rotate(45deg);
  }

  .scelta-con-pallino > select::picker(select) {
    background: var(--fondo);
    color: var(--testo);
    border: 1px solid var(--bordo);
    border-radius: .5rem;
    margin-block: .125rem;
    padding: .25rem 0;
    box-shadow: 0 .5rem 1rem #191c221f;
  }

  .scelta-con-pallino > select > option {
    color: var(--testo);
    padding: .375rem .625rem;
  }

  .scelta-con-pallino > select > option:hover, .scelta-con-pallino > select > option:focus-visible {
    background: color-mix(in srgb, var(--testo) 10%, transparent);
  }

  .scelta-con-pallino > select > option:checked {
    background: color-mix(in srgb, var(--testo) 16%, transparent);
  }

  .scelta-con-pallino > select > option:before {
    content: "";
    box-sizing: border-box;
    border: 1px solid var(--bordo-campione);
    visibility: hidden;
    border-radius: 50%;
    flex: none;
    width: .75rem;
    height: .75rem;
  }

  .orario .scelta-con-pallino > select > option:before {
    width: .5rem;
    height: .5rem;
  }

  .scelta-con-quadratino > select > option:before {
    border-radius: .125rem;
  }

  .scelta-con-rombo > select > option:before {
    border-radius: .0625rem;
    width: .55rem;
    height: .55rem;
    margin-inline: .1rem;
    transform: rotate(45deg);
  }
}

.colore-facoltativo:not(:has(input[type="checkbox"]:checked)) > .campo {
  display: none;
}

.persone {
  flex-wrap: wrap;
  gap: .5rem;
  margin: 0 0 1.5rem;
  display: flex;
}

.persona {
  border: 1px solid var(--testo-secondario);
  min-height: 2.5rem;
  color: var(--testo);
  border-radius: 999px;
  align-items: center;
  padding: .25rem .875rem;
  font-weight: 600;
  text-decoration: none;
  display: inline-flex;
}

.persona:visited {
  color: var(--testo);
}

.persona:hover {
  background: var(--fondo-lettura);
}

.persona[aria-current="page"] {
  color: #fff;
  background: #1b5fbf;
  border-color: #1b5fbf;
}

.persona[aria-current="page"]:visited {
  color: #fff;
}

.dati-utente {
  grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr));
  gap: .5rem 1.5rem;
  margin: 0 0 1rem;
  display: grid;
}

.dato {
  font-size: .9375rem;
}

.dato-etichetta {
  color: var(--testo-secondario);
  text-transform: uppercase;
  letter-spacing: .03em;
  font-size: .8125rem;
  display: block;
}

.vuoto {
  border: 2px dashed var(--bordo);
  text-align: center;
  color: var(--testo-secondario);
  border-radius: .75rem;
  padding: 1.5rem;
}

.vuoto-titolo {
  color: var(--testo);
  margin-bottom: .25rem;
  font-weight: 600;
  display: block;
}

.disegno {
  color: var(--testo-secondario);
  margin: 0 auto .75rem;
  display: block;
}

.collegamento-generato {
  background: var(--fondo-lettura);
  border: 1px solid var(--bordo);
  word-break: break-all;
  border-radius: .5rem;
  margin: .5rem 0;
  padding: .75rem;
  font-size: .875rem;
  display: block;
}

.conferma {
  border: 1px solid var(--testo-secondario);
  background: var(--fondo-lettura);
  border-radius: .75rem;
  margin-top: 1rem;
  padding: 1rem 1.25rem;
}

.conferma ul {
  margin: 0 0 1rem;
  padding-left: 1.25rem;
}

.conferma li {
  margin-bottom: .375rem;
}

.spazi {
  flex-wrap: wrap;
  align-items: center;
  gap: .5rem;
  margin: 0;
  display: flex;
}

.spazi-tendina {
  font: inherit;
  color: #191c22;
  background: #fff;
  border: 1px solid #fff;
  border-radius: .5rem;
  max-width: 10rem;
  padding: .3rem .5rem;
  font-size: .875rem;
  font-weight: 600;
}

@media (max-width: 40rem) {
  .spazi-tendina {
    flex: 1;
    max-width: none;
    min-height: 2.75rem;
    padding: .5rem .625rem;
    font-size: 1rem;
  }
}

.riquadro-qr {
  border: 1px solid var(--bordo);
  background: #fff;
  border-radius: .5rem;
  width: 15rem;
  max-width: 100%;
  margin: 1rem auto;
  padding: .5rem;
  display: block;
}

.riquadro-qr svg {
  width: 100%;
  height: auto;
  display: block;
}

.griglia-foto {
  grid-template-columns: repeat(auto-fill, minmax(9rem, 1fr));
  gap: 1rem;
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
}

.foto {
  flex-direction: column;
  gap: .375rem;
  display: flex;
}

.le-copertine {
  grid-template-columns: repeat(2, minmax(0, 7rem));
  justify-content: start;
  margin-top: 1rem;
}

.griglia-provino {
  grid-template-columns: repeat(auto-fit, minmax(18rem, 1fr));
  gap: 1.25rem;
  max-width: 95rem;
}

.foto-riquadro {
  aspect-ratio: 3 / 4;
  border: 1px solid var(--bordo);
  background: var(--fondo-lettura);
  border-radius: .5rem;
  display: block;
  overflow: hidden;
}

.foto-riquadro:hover {
  border-color: var(--testo-secondario);
}

.foto-riquadro img {
  object-fit: contain;
  width: 100%;
  height: 100%;
  display: block;
}

.foto-piede {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: .375rem;
  font-size: .8125rem;
  display: flex;
}

.testa-elenco {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: .5rem 1rem;
  margin-top: 1.5rem;
  margin-bottom: .75rem;
  display: flex;
}

.testa-elenco > .titolo-spiegato, .testa-elenco > h2, .testa-elenco > p {
  margin: 0;
}

.barra-delle-spunte {
  align-items: center;
  margin-bottom: .75rem;
}

.gruppo-di-esercizi > h3 {
  margin: 1.25rem 0 .25rem;
}

.interruttore-vista {
  gap: .25rem;
  display: flex;
}

.interruttore-vista .bottone {
  font-size: var(--pulsante-testo);
  padding: var(--pulsante-aria);
}

.azioni-in-blocco {
  flex-direction: column;
  gap: .75rem;
  display: flex;
}

.striscia-dei-blocchi {
  flex-wrap: wrap;
  align-items: center;
  gap: .5rem 1.5rem;
  margin: .75rem 0;
  display: flex;
}

.vai-alla-pagina input {
  width: 5.5rem;
  margin-left: .25rem;
}

#elenco-pagine, .griglia-foto > .foto[id] {
  scroll-margin-top: 4rem;
}

.campo-in-riga {
  flex-flow: wrap;
  align-items: center;
  gap: .5rem;
}

.campo-in-riga select {
  font: inherit;
  max-width: 100%;
}

.elenco-compatto {
  border-top: 1px solid var(--bordo);
  margin: 0;
  padding: 0;
  list-style: none;
}

.riga-compatta {
  border-bottom: 1px solid var(--bordo);
  align-items: center;
  gap: .75rem;
  padding: .375rem 0;
  scroll-margin-top: 4rem;
  display: flex;
}

.riga-compatta-casella {
  cursor: pointer;
  justify-content: center;
  align-items: center;
  min-width: 2.75rem;
  min-height: 2.75rem;
  display: flex;
}

.riga-compatta-casella input {
  width: 1.25rem;
  height: 1.25rem;
}

.riga-compatta-miniatura {
  aspect-ratio: 3 / 4;
  border: 1px solid var(--bordo);
  background: var(--fondo-lettura);
  border-radius: .25rem;
  flex: none;
  width: 2.5rem;
  display: block;
  overflow: hidden;
}

.riga-compatta-miniatura img {
  object-fit: contain;
  width: 100%;
  height: 100%;
  display: block;
}

.riga-compatta-testo {
  min-width: 0;
  color: inherit;
  flex-direction: column;
  flex: 1;
  text-decoration: none;
  display: flex;
}

.riga-compatta-titolo {
  font-weight: 600;
}

.riga-compatta-dettaglio {
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: .875rem;
  overflow: hidden;
}

.riga-compatta-azioni {
  flex: none;
}

@media (max-width: 40rem) {
  .elenco-azioni-sotto .riga-compatta {
    flex-wrap: wrap;
  }

  .elenco-azioni-sotto .riga-compatta-azioni {
    flex-basis: 100%;
    padding-bottom: .25rem;
    padding-left: 6.75rem;
  }

  .elenco-azioni-sotto .riga-compatta-dettaglio {
    white-space: normal;
  }
}

@media (min-width: 48rem) {
  .elenco-a-colonne {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 1.5rem;
    display: grid;
  }
}

@media (min-width: 72rem) {
  .elenco-a-colonne {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.elenco-a-colonne .riga-compatta-casella {
  flex: none;
}

.filtro-della-materia {
  margin: 1rem 0;
}

.spostamenti .bottone-secondario {
  min-width: 2.75rem;
}

.sfoglia {
  justify-content: space-between;
  gap: 1rem;
  margin: .75rem 0;
  display: flex;
}

.foto-grande {
  image-orientation: from-image;
  border: 1px solid var(--bordo);
  background: var(--fondo-lettura);
  border-radius: .5rem;
  width: 100%;
  max-width: 100%;
  height: auto;
  display: block;
}

.pagina-e-testo {
  margin-top: 1rem;
  display: block;
}

.pagina-testo {
  margin-top: 1rem;
}

.pagina-testo > .titolo-spiegato {
  margin-top: 0;
}

.pagina-foto {
  background: var(--fondo);
  z-index: 1;
  padding-bottom: .5rem;
  position: sticky;
  top: 0;
}

.pagina-foto .campo-aiuto {
  margin: .375rem 0 0;
}

.pagina-foto .foto-grande {
  object-fit: contain;
  max-height: 45svh;
}

@media (min-width: 54rem) {
  .pagina-e-testo {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 1.5rem;
    display: grid;
  }

  .pagina-testo {
    margin-top: 0;
  }

  .pagina-foto {
    align-self: start;
    padding-bottom: 0;
    top: 1rem;
  }

  .pagina-foto .foto-grande {
    max-height: calc(100svh - 4rem);
  }
}

@media (min-width: 80rem) {
  .pagina-testo {
    max-width: 62rem;
  }
}

.titolo-letto {
  margin: 0 0 .5rem;
  font-size: 1.125rem;
  font-weight: 800;
  line-height: 1.3;
}

.testo-trascritto {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  background: var(--fondo-lettura);
  border: 1px solid var(--bordo);
  border-radius: .5rem;
  margin-bottom: 1rem;
  padding: .875rem 1rem;
}

.testo-disegnato {
  white-space: normal;
}

.testo-disegnato p, .testo-disegnato li {
  white-space: pre-wrap;
}

.testo-disegnato li ul, .testo-disegnato li ol {
  white-space: normal;
}

.testo-disegnato li:has( > ul,  > ol) {
  white-space: normal;
}

.testo-disegnato li ul > li, .testo-disegnato li ol > li {
  white-space: pre-wrap;
}

:is(.testo-disegnato li:has( > ul,  > ol) > ul > li:has( > ul,  > ol), .testo-disegnato li:has( > ul,  > ol) > ol > li:has( > ul,  > ol)) {
  white-space: normal;
}

.testo-disegnato h1, .testo-disegnato h2, .testo-disegnato h3, .testo-disegnato h4, .testo-disegnato h5, .testo-disegnato h6 {
  margin: 1rem 0 .375rem;
  font-size: 1rem;
  line-height: 1.3;
}

.testo-disegnato > :first-child {
  margin-top: 0;
}

.testo-disegnato > :last-child {
  margin-bottom: 0;
}

.testo-disegnato .testo-pezzo {
  display: contents;
}

.testo-disegnato > .testo-pezzo:first-child > :first-child {
  margin-top: 0;
}

.testo-disegnato > .testo-pezzo:last-child > :last-child {
  margin-bottom: 0;
}

.linea-del-tempo {
  margin: .5rem 0 .875rem;
}

.linea-del-tempo-tela {
  overflow-x: auto;
}

.linea-del-tempo svg {
  width: 100%;
  min-width: 34rem;
  height: auto;
  font-family: var(--carattere), system-ui, sans-serif;
  display: block;
}

.linea-asse {
  stroke: var(--testo-secondario);
  stroke-width: 1.5px;
}

.linea-tacca {
  stroke: var(--testo-secondario);
  stroke-width: 1px;
}

.linea-tacca-incerta {
  stroke-dasharray: 3 3;
}

.linea-intervallo {
  fill: var(--testo);
}

.linea-intervallo-incerto {
  opacity: .5;
}

.linea-fondo-scritta {
  fill: var(--fondo-lettura);
}

.linea-barra-giallo {
  fill: var(--mappa-giallo);
}

.linea-barra-azzurro {
  fill: var(--mappa-azzurro);
}

.linea-barra-menta {
  fill: var(--mappa-menta);
}

.linea-barra-lilla {
  fill: var(--mappa-lilla);
}

.linea-scritta {
  fill: var(--testo);
}

.linea-scritta-data {
  font-weight: 600;
}

.linea-scritta-nome {
  fill: var(--testo-secondario);
}

.testo-disegnato p, .testo-disegnato ul, .testo-disegnato ol, .testo-disegnato blockquote {
  margin: 0 0 .625rem;
}

.testo-disegnato ul, .testo-disegnato ol {
  padding-left: 1.25rem;
}

.testo-disegnato li {
  margin-bottom: .25rem;
}

.testo-disegnato blockquote {
  border-left: 3px solid var(--bordo);
  color: var(--testo-secondario);
  padding-left: .75rem;
}

.testo-disegnato pre {
  background: var(--fondo);
  border: 1px solid var(--bordo);
  scrollbar-gutter: stable;
  border-radius: .375rem;
  margin: 0 0 .625rem;
  padding: .625rem .75rem;
  overflow-x: auto;
}

.testo-disegnato pre code {
  white-space: pre;
  font-size: .875rem;
  line-height: 1.45;
}

.testo-disegnato code {
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}

.testo-disegnato table {
  scrollbar-gutter: stable;
  border-collapse: collapse;
  margin: 0 0 .625rem;
  font-size: .875rem;
  display: block;
  overflow-x: auto;
}

.testo-disegnato th, .testo-disegnato td {
  border: 1px solid var(--bordo);
  text-align: left;
  padding: .25rem .5rem;
}

.rilettura {
  border: 1px solid var(--bordo);
  background: var(--fondo-lettura);
  border-radius: .5rem;
  margin-top: 1.25rem;
  padding: .75rem;
}

.rilettura-frase {
  margin: 0 0 .5rem;
}

.rilettura .gruppo-bottoni {
  margin: 0;
}

.rilettura .campo-aiuto {
  margin-top: .5rem;
  display: block;
}

.correttore {
  margin-top: 1.25rem;
}

.correttore > summary {
  cursor: pointer;
  padding: .375rem 0;
  font-weight: 700;
}

.correttore-dentro {
  padding-top: .5rem;
}

.correttore .modulo {
  margin-top: .75rem;
}

.casella-testo {
  background: var(--fondo);
  color: var(--testo);
  border: 1px solid var(--testo-secondario);
  white-space: pre;
  overflow-wrap: normal;
  resize: vertical;
  border-radius: .5rem;
  width: 100%;
  min-height: 12rem;
  padding: .625rem .75rem;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: .875rem;
  line-height: 1.5;
  overflow-x: auto;
}

.altre-letture {
  border-top: 1px solid var(--bordo);
  margin-top: 1.25rem;
  padding-top: .75rem;
}

.altre-letture > summary {
  cursor: pointer;
  align-items: center;
  gap: .375rem;
  font-weight: 700;
  list-style: none;
  display: inline-flex;
}

.altre-letture > summary::-webkit-details-marker {
  display: none;
}

.altre-letture > summary .segno-spiegazione {
  margin-left: 0;
  position: static;
  transform: none;
}

.altre-letture > summary:hover .segno-spiegazione, .altre-letture > summary:focus-visible .segno-spiegazione, .altre-letture[open] > summary .segno-spiegazione {
  color: var(--testo);
  border-color: var(--testo-secondario);
}

.elenco-letture {
  margin: .75rem 0 0;
  padding: 0;
  list-style: none;
}

.lettura {
  border: 1px solid var(--bordo);
  border-radius: .5rem;
  margin-bottom: .625rem;
  padding: .625rem .75rem;
}

.lettura-scelta {
  border-color: var(--testo-secondario);
  background: var(--fondo-lettura);
}

.lettura-chi {
  flex-wrap: wrap;
  align-items: center;
  gap: .375rem;
  margin: 0;
  font-weight: 700;
  display: flex;
}

.lettura-dati {
  margin: .25rem 0 0;
  font-size: .875rem;
}

.lettura .gruppo-bottoni {
  margin-top: .5rem;
  margin-bottom: 0;
}

.etichette-lettura p {
  flex-wrap: wrap;
  align-items: center;
  gap: .375rem;
  margin-bottom: .5rem;
  font-size: .9375rem;
  display: flex;
}

.etichette-lettura .dato-etichetta {
  width: 100%;
}

.annulla-cestino {
  border: 1px solid var(--testo-secondario);
  background: var(--fondo-lettura);
  border-radius: .5rem;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: .75rem;
  margin-top: 1rem;
  padding: .75rem 1rem;
  font-size: .9375rem;
  display: flex;
}

.elenco-mancate {
  margin: 0;
  padding-left: 1.25rem;
  font-size: .9375rem;
}

.elenco-mancate li {
  overflow-wrap: anywhere;
  margin-bottom: .375rem;
}

.copertine-scelta {
  border: 1px solid var(--bordo);
  border-radius: .5rem;
  flex-direction: column;
  gap: .75rem;
  margin: 1rem 0;
  padding: .875rem;
  display: flex;
}

.copertine-titolo {
  margin: 0;
  font-size: .9375rem;
  font-weight: 600;
}

.copertina-faccia {
  border-top: 1px solid var(--bordo);
  padding-top: .75rem;
}

.copertina-faccia:first-of-type {
  border-top: 0;
  padding-top: 0;
}

.copertina-riga {
  flex-wrap: wrap;
  align-items: center;
  gap: .75rem;
  display: flex;
}

.copertina-riga img {
  border: 1px solid var(--bordo);
  background: var(--fondo-lettura);
  object-fit: contain;
  border-radius: 4px;
  width: 3.5rem;
  height: 4.5rem;
  display: block;
}

.copertina-vuota {
  background: var(--fondo-lettura);
  border: 1px dashed var(--bordo);
  border-radius: 4px;
  width: 3.5rem;
  height: 4.5rem;
  display: block;
}

.copertina-detto {
  overflow-wrap: anywhere;
  flex-direction: column;
  flex: 8rem;
  gap: .125rem;
  font-size: .9375rem;
  display: flex;
}

.copertina-gesti {
  flex-wrap: wrap;
  gap: .5rem;
  display: flex;
}

.elenco-candidati {
  flex-direction: column;
  gap: .375rem;
  max-height: 18rem;
  margin: .75rem 0 0;
  padding: 0;
  list-style: none;
  display: flex;
  overflow-y: auto;
}

.elenco-candidati button {
  text-align: left;
  overflow-wrap: anywhere;
  align-items: center;
  gap: .625rem;
  width: 100%;
  padding: .5rem .75rem;
  display: flex;
}

.elenco-candidati img, .elenco-candidati .francobollo-vuoto {
  background: var(--fondo-lettura);
  border: 1px solid var(--bordo);
  object-fit: contain;
  border-radius: 3px;
  flex: none;
  width: 2.25rem;
  height: 3rem;
}

.elenco-candidati .francobollo-vuoto {
  border-style: dashed;
}

.elenco-candidati .candidato-nome {
  flex: auto;
  min-width: 0;
}

.elenco-candidati button[aria-pressed="true"] {
  background: var(--fondo-lettura);
  border-width: 2px;
  border-color: var(--testo);
}

.caricamento input[type="file"] {
  padding: .5rem 0;
}

.telefono {
  flex-direction: column;
  align-items: flex-start;
  gap: .75rem;
  display: flex;
}

.telefono-invito {
  margin: 0;
  font-size: .9375rem;
}

.telefono-aperto {
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 1.25rem;
  width: 100%;
  display: flex;
}

.telefono-aperto .riquadro-qr {
  flex: none;
  width: 13rem;
  margin: 0;
}

.telefono-testo {
  flex-direction: column;
  flex: 16rem;
  align-items: flex-start;
  gap: .5rem;
  display: flex;
}

.telefono-testo p {
  margin: 0;
}

.telefono-conto {
  margin: .5rem 0 0;
  font-size: .9375rem;
}

.scegli-faccia {
  flex-direction: column;
  gap: 1rem;
  width: 100%;
  display: flex;
}

.scegli-faccia .bottone {
  width: 100%;
  min-height: 3.25rem;
  font-size: 1.0625rem;
}

.dalla-raccolta {
  flex-direction: column;
  gap: .5rem;
  width: 100%;
  display: flex;
}

.dalla-raccolta .bottone {
  justify-content: center;
  width: 100%;
  min-height: 3.25rem;
}

.raccolta-spiegata > summary {
  cursor: pointer;
  color: var(--testo-secondario);
  align-items: center;
  gap: .375rem;
  font-size: .9375rem;
  list-style: none;
  display: inline-flex;
}

.raccolta-spiegata > summary::-webkit-details-marker {
  display: none;
}

.raccolta-spiegata .segno-spiegazione {
  flex: none;
  margin-left: 0;
  position: static;
  left: auto;
  transform: none;
}

.raccolta-spiegata > summary:hover .segno-spiegazione, .raccolta-spiegata > summary:focus-visible .segno-spiegazione, .raccolta-spiegata[open] > summary .segno-spiegazione {
  color: var(--testo);
  border-color: var(--testo-secondario);
}

@media not all and (hover: none) and (pointer: coarse) {
  .solo-telefono {
    display: none !important;
  }
}

@media (hover: none) and (pointer: coarse) {
  .solo-computer {
    display: none !important;
  }
}

.tutorial {
  background: var(--fondo);
  border: 1px solid var(--bordo);
  border-left: 5px solid var(--giallo);
  border-radius: .75rem;
  margin: 1.25rem 0;
  padding: 1.125rem 1.5rem;
}

.tutorial-titolo {
  margin: 0 0 .5rem;
  font-size: 1.125rem;
  font-weight: 800;
}

.tutorial-passi {
  flex-direction: column;
  gap: .5rem;
  margin: 0;
  padding-left: 1.375rem;
  font-size: 1.0625rem;
  line-height: 1.6;
  display: flex;
}

.tutorial-passi li::marker {
  color: var(--blu);
  font-weight: 800;
}

.tutorial form {
  margin-top: 1rem;
}

.tutorial-dopo {
  color: var(--testo-secondario);
  margin: .5rem 0 0;
  font-size: .9375rem;
}

.indice-guida {
  flex-direction: column;
  margin: .75rem 0 0;
  padding: 0;
  list-style: none;
  display: flex;
}

.indice-guida li {
  border-bottom: 1px solid var(--bordo);
}

.indice-guida li:last-child {
  border-bottom: 0;
}

.indice-guida a {
  padding: .75rem .25rem;
  font-size: 1.0625rem;
  font-weight: 600;
  text-decoration: none;
  display: block;
}

.indice-guida a:hover {
  text-decoration: underline;
}

.lettura {
  max-width: var(--larghezza-lettura, 60rem);
  font-size: 1.0625rem;
  line-height: 1.7;
}

.lettura h1 {
  margin: .5rem 0 1rem;
}

.lettura h2 {
  margin: 2rem 0 .75rem;
}

.lettura p {
  margin: 0 0 1rem;
}

.lettura ul, .lettura ol {
  flex-direction: column;
  gap: .5rem;
  margin: 0 0 1rem;
  padding-left: 1.5rem;
  display: flex;
}

.lettura li ul, .lettura li ol {
  margin: .5rem 0 0;
}

.lettura strong {
  font-weight: 800;
}

.lettura code {
  background: var(--fondo-lettura);
  border: 1px solid var(--bordo);
  border-radius: .25rem;
  padding: .0625rem .3125rem;
  font-size: .9375em;
}

.lettura table {
  border-collapse: collapse;
  margin: 0 0 1rem;
  display: block;
  overflow-x: auto;
}

.lettura th, .lettura td {
  border: 1px solid var(--bordo);
  text-align: left;
  padding: .5rem .75rem;
}

.rivedi-tutorial {
  max-width: var(--larghezza-lettura, 60rem);
  border-top: 1px solid var(--bordo);
  margin-top: 2rem;
  padding-top: 1.25rem;
}

.rivedi-tutorial p {
  margin: 0 0 .75rem;
}

.quando-cestinata {
  margin-left: .5rem;
  font-weight: 400;
}

.foto-cestinata {
  opacity: .55;
  border-style: dashed;
}

.foto-cestinata img {
  filter: grayscale();
}

.conferma-cancellazione {
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 1rem;
  display: flex;
}

.conferma-cancellazione > .foto-riquadro {
  flex: none;
  width: 7rem;
}

.conferma-cancellazione-testo {
  flex: 1;
  min-width: 16rem;
}

.conferma-cancellazione-testo p + p {
  margin-top: .5rem;
}

.bottone-grande {
  border-radius: .625rem;
  align-items: center;
  gap: .5rem;
  min-height: 3rem;
  padding: .625rem 1.5rem;
  font-size: 1.0625rem;
  display: inline-flex;
}

.notti {
  margin: 0;
  padding: 0;
  list-style: none;
}

.proposte-doppioni {
  flex-direction: column;
  gap: 1rem;
  margin-top: 1.5rem;
  display: flex;
}

.proposta {
  border: 1px solid var(--testo-secondario);
  background: var(--fondo-lettura);
  border-radius: .5rem;
  padding: 1rem;
}

.proposta-titolo {
  flex-wrap: wrap;
  align-items: center;
  gap: .5rem;
  margin: 0 0 .75rem;
  font-weight: 700;
  display: flex;
}

.proposta-coppia, .confronto-coppia {
  grid-template-columns: repeat(auto-fit, minmax(18rem, 1fr));
  gap: 1rem;
  display: grid;
}

.proposta-faccia, .confronto-faccia {
  border: 1px solid var(--bordo);
  background: var(--fondo);
  border-radius: .5rem;
  flex-direction: column;
  gap: .375rem;
  padding: .625rem;
  display: flex;
}

.proposta-faccia-meglio {
  border-color: var(--testo-secondario);
}

.proposta-faccia-titolo, .confronto-faccia-titolo {
  flex-wrap: wrap;
  align-items: center;
  gap: .5rem;
  font-size: .9375rem;
  font-weight: 600;
  display: flex;
}

.proposta-faccia-dove {
  align-self: flex-start;
  font-size: .9375rem;
}

.proposta-faccia img, .confronto-faccia img {
  aspect-ratio: 3 / 4;
  object-fit: contain;
  background: var(--fondo-lettura);
  border-radius: .375rem;
  width: 100%;
  display: block;
}

.proposta-verdetto {
  margin: .75rem 0 0;
  font-size: .9375rem;
}

.proposta-bottoni {
  flex-wrap: wrap;
  gap: .625rem;
  margin-top: .875rem;
  display: flex;
}

.proposta-spiegazione {
  border-top: 1px solid var(--bordo);
  margin-top: .875rem;
  padding-top: .75rem;
}

.proposta-spiegazione > summary {
  cursor: pointer;
  align-items: center;
  gap: .375rem;
  font-size: .9375rem;
  list-style: none;
  display: inline-flex;
}

.proposta-spiegazione > summary::-webkit-details-marker {
  display: none;
}

.proposta-spiegazione > summary .segno-spiegazione {
  margin-left: 0;
  position: static;
  transform: none;
}

.proposta-spiegazione > summary:hover .segno-spiegazione, .proposta-spiegazione > summary:focus-visible .segno-spiegazione, .proposta-spiegazione[open] > summary .segno-spiegazione {
  color: var(--testo);
  border-color: var(--testo-secondario);
}

.smistamento {
  flex-direction: column;
  gap: 1rem;
  margin-top: 1.5rem;
  display: flex;
}

.gruppo-smistato {
  border: 1px solid var(--testo-secondario);
  background: var(--fondo-lettura);
  border-radius: .5rem;
  padding: 1rem;
}

.gruppo-titolo {
  flex-wrap: wrap;
  align-items: center;
  gap: .5rem;
  margin: 0 0 .75rem;
  display: flex;
}

.gruppo-miniature {
  grid-template-columns: repeat(auto-fill, minmax(8rem, 1fr));
  gap: .75rem;
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
}

.gruppo-pagina {
  flex-direction: column;
  gap: .375rem;
  display: flex;
}

.gruppo-pagina label {
  cursor: pointer;
  display: block;
  position: relative;
}

.gruppo-pagina label input[type="checkbox"] {
  z-index: 1;
  width: 1.25rem;
  height: 1.25rem;
  margin: 0;
  position: absolute;
  top: .375rem;
  left: .375rem;
}

.gruppo-pagina img {
  aspect-ratio: 3 / 4;
  object-fit: contain;
  background: var(--fondo);
  border: 1px solid var(--bordo);
  border-radius: .375rem;
  width: 100%;
  display: block;
}

.gruppo-pagina label:has(input:not(:checked)) img {
  opacity: .45;
}

.gruppo-altre {
  margin-top: .75rem;
}

.gruppo-altre > summary {
  cursor: pointer;
  margin-bottom: .75rem;
  font-size: .9375rem;
}

.gruppo-smistato .gruppo-bottoni {
  margin-top: .875rem;
}

.gruppo-no {
  margin-top: .625rem;
}

.smistamento-richiesta {
  flex-direction: column;
  align-items: flex-start;
  gap: .5rem;
  display: flex;
}

.gruppo-elenco {
  flex-direction: column;
  gap: .25rem;
  margin: .25rem 0 0;
  padding: 0;
  list-style: none;
  display: flex;
}

.gruppo-pagina-riga label {
  cursor: pointer;
  align-items: center;
  gap: .5rem;
  font-size: .9375rem;
  display: flex;
}

.smistamento-conferma > summary {
  cursor: pointer;
  font-weight: 600;
}

.smistamento-conferma > * + * {
  margin-top: .625rem;
}

.ritocco {
  margin-top: .75rem;
}

@media (min-width: 48rem) and (min-height: 40rem) {
  .schermata-piena .ritocco, .schermata-piena .ritocco > form {
    flex-direction: column;
    flex: auto;
    min-height: 0;
    display: flex;
  }

  .ritocco-vista {
    flex: auto;
  }
}

.ritocco .campo-aiuto {
  margin: .375rem 0 0;
}

.ritocco-stato {
  min-height: 2.25rem;
}

.ritocco-stato .messaggio {
  margin: .25rem 0;
}

.ritocco-tela {
  width: fit-content;
  margin: 0 auto;
  position: relative;
}

.ritocco-tela .foto-grande {
  object-fit: fill;
  width: auto;
  max-width: none;
  height: auto;
  max-height: none;
  display: block;
}

.ritocco-vista {
  overscroll-behavior: contain;
  justify-content: center;
  align-items: flex-start;
  min-height: 10rem;
  max-height: 60svh;
  display: flex;
  overflow: auto;
}

.ritocco-vista:has(.ritocco-tela.ingrandita) {
  justify-content: flex-start;
}

.ritocco-maniglie {
  pointer-events: none;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
}

.ritocco-maniglie polygon {
  fill: none;
  stroke: var(--blu);
  stroke-width: .6px;
  stroke-dasharray: 2 1.5;
  vector-effect: non-scaling-stroke;
}

.ritocco-pallini {
  pointer-events: none;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
  overflow: visible;
}

.ritocco-pallino {
  fill: var(--blu);
  stroke: #fff;
  stroke-width: 2px;
  paint-order: stroke;
  pointer-events: none;
}

.ritocco-presa {
  fill: #0000;
  pointer-events: auto;
  cursor: grab;
}

.ritocco-pallini g:active .ritocco-pallino {
  fill: var(--giallo, #f0b429);
}

.ritocco-comandi {
  flex-wrap: wrap;
  gap: .5rem;
  margin-top: .75rem;
  display: flex;
}

.ritocco-contrasto {
  align-items: center;
  gap: .5rem;
  display: inline-flex;
}

.ritocco-livello {
  text-align: center;
  font-variant-numeric: tabular-nums;
  min-width: 2ch;
  font-weight: 700;
}

.avviso-ritocco {
  border-left: 4px solid var(--blu);
  background: var(--fondo-lettura);
  border-radius: 0 .375rem .375rem 0;
  padding: .625rem .75rem;
}

.sezione-scuola {
  margin-top: 2rem;
}

.sezione-scuola > h2 {
  margin-bottom: .75rem;
}

.elenco-scuola, .elenco-contenitori {
  margin: 0 0 1rem;
  padding: 0;
  list-style: none;
}

@media (min-width: 48rem) {
  .elenco-dei-libri {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: start;
    column-gap: 1.5rem;
    display: grid;
  }
}

@media (min-width: 72rem) {
  .elenco-dei-libri {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.elenco-scuola {
  grid-template-columns: repeat(auto-fill, minmax(16rem, 1fr));
  align-items: start;
  column-gap: 1.5rem;
  display: grid;
}

.elenco-scuola > .voce-scuola:first-child {
  border-top: 1px solid var(--bordo);
}

.voce-scuola, .voce-contenitore {
  border-top: 1px solid var(--bordo);
  padding: .75rem 0;
  scroll-margin-top: 4rem;
}

.voce-scuola:first-child, .voce-contenitore:first-child {
  border-top: 0;
}

.voce-scuola-legati {
  margin: .25rem 0 0;
}

.elenco-professori {
  grid-template-columns: repeat(auto-fill, minmax(min(22rem, 100%), 1fr));
}

.voce-scuola-email {
  overflow-wrap: anywhere;
  min-width: 0;
}

.elenco-scuola.elenco-attivita > .voce-scuola {
  border-left: 3px solid var(--colore-materia, var(--bordo));
  padding-left: .75rem;
}

.elenco-scuola.elenco-attivita > .voce-scuola.attivita-fatta {
  border-left-width: 2px;
}

.elenco-scuola.elenco-versioni > .voce-scuola {
  border-left: 3px solid var(--bordo);
  padding-left: .75rem;
}

.elenco-scuola.elenco-versioni > .voce-scuola.versione-corrente {
  border-left-color: var(--blu);
}

.elenco-scuola.elenco-versioni {
  row-gap: var(--stacco-delle-righe);
  grid-template-columns: 1fr;
}

.elenco-scuola.elenco-versioni > .voce-scuola, .elenco-scuola.elenco-versioni > .voce-scuola:first-child {
  border-top: 0;
  padding-top: 0;
}

#scelta-delle-pagine, .pagina-riassunti #titolo, .pagina-riassunti #approvazione, .pagina-riassunti #correggi, .pagina-riassunti #pdf, .pagina-riassunti #versioni {
  scroll-margin-top: 4rem;
}

.pagina-riassunti #approvazione, .pagina-riassunti #rigenera > .titolo-spiegato {
  margin-bottom: 1rem;
}

.elenco-scuola.elenco-attivita {
  row-gap: var(--stacco-delle-righe);
  grid-template-columns: 1fr;
}

.elenco-scuola.elenco-attivita > .voce-scuola, .elenco-scuola.elenco-attivita > .voce-scuola:first-child {
  border-top: 0;
  padding-top: 0;
}

.attivita-fatta-da {
  margin: var(--stacco-delle-righe) 0 0;
}

.elenco-scuola.elenco-attivita > .voce-scuola:has( > details.modifica[open]) {
  grid-column: 1 / -1;
}

.voce-cestinata {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: .5rem 1rem;
  display: flex;
}

.testo-del-cestino {
  flex-direction: column;
  gap: .15rem;
  min-width: 0;
  display: flex;
}

.riga-del-cestino {
  font-size: .875rem;
}

.voce-scuola-testa, .voce-contenitore-testa {
  flex-wrap: wrap;
  align-items: baseline;
  gap: .25rem .75rem;
  display: flex;
}

.voce-scuola-nome, .voce-contenitore-titolo, .voce-scuola > .riga-spiegata > summary > span:first-child {
  font-weight: 600;
}

.voce-scuola-nome .pastiglia {
  margin-left: .5rem;
}

.modifica > summary {
  cursor: pointer;
  color: var(--blu);
  margin-top: .25rem;
  font-size: .9375rem;
  font-weight: 600;
}

.modifica[open] > summary {
  margin-bottom: .75rem;
}

.scheda.modifica {
  margin-top: 1rem;
  padding: .875rem 1.25rem;
}

.modifica-cestina {
  border-top: 1px solid var(--bordo);
  margin-top: 1rem;
  padding-top: .75rem;
}

.titolo-con-cestina {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: .5rem 1rem;
  display: flex;
}

.titolo-con-cestina > h1, .titolo-con-cestina > h2 {
  margin-bottom: 0;
}

.cestina-a-destra {
  margin-left: auto;
}

.elenco-scuola.elenco-da-unire, .elenco-scuola.elenco-anni {
  grid-template-columns: 1fr;
}

.campi-affiancati {
  flex-wrap: wrap;
  gap: 1rem;
  display: flex;
}

.campi-periodo {
  flex-wrap: nowrap;
}

.campi-affiancati.campi-periodo > .campo {
  flex: 0 auto;
  min-width: 0;
}

.campi-affiancati > .campo {
  flex: 0 12rem;
  min-width: 0;
}

input[type="date"] {
  font: inherit;
  background: var(--fondo);
  color: var(--testo);
  border: 1px solid var(--testo-secondario);
  box-sizing: border-box;
  border-radius: .5rem;
  max-width: max-content;
  min-height: 0;
  padding: .5rem .625rem;
}

.campo-a-righe {
  field-sizing: content;
  min-height: calc(var(--altezza-campo) * 2);
}

.testo-scritto {
  white-space: pre-line;
}

input[type="color"] {
  background: var(--fondo);
  border: 1px solid var(--testo-secondario);
  cursor: pointer;
  border-radius: .5rem;
  width: 4rem;
  height: 2.5rem;
  padding: .125rem;
}

.vuoto-azione {
  justify-content: center;
  margin-top: 1rem;
}

.azioni-contenitori {
  margin: 1rem 0;
}

.scheda-nuovo {
  margin-bottom: 1.5rem;
}

.scheda-nuovo > h2 {
  margin-bottom: .75rem;
}

.legami {
  flex-wrap: wrap;
  gap: .25rem 1.25rem;
  margin-top: .25rem;
  font-size: .9375rem;
  display: flex;
}

.legami-materie {
  flex-wrap: wrap;
  gap: .25rem .75rem;
  display: inline-flex;
}

.caselle {
  flex-wrap: wrap;
  gap: 0 1.25rem;
  display: flex;
}

.qualita-contenitore .riga-spiegata {
  padding-top: 0;
}

.destinazione {
  color: var(--testo);
  font-size: .9375rem;
  font-weight: 600;
}

.striscia-contenitori {
  z-index: 2;
  background: var(--fondo);
  border: 1px dashed var(--bordo);
  border-radius: .75rem;
  flex-wrap: wrap;
  align-items: center;
  gap: .5rem .75rem;
  margin-bottom: 1rem;
  padding: .625rem .75rem;
  display: flex;
  position: sticky;
  top: 0;
}

.striscia-accesa {
  border-color: var(--blu);
  border-style: solid;
}

.striscia-invito {
  font-size: .9375rem;
}

.striscia-bersagli {
  flex-wrap: wrap;
  gap: .5rem;
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
}

.striscia-bersaglio {
  border: 1px solid var(--bordo);
  background: var(--fondo-lettura);
  color: var(--testo);
  text-overflow: ellipsis;
  white-space: nowrap;
  border-radius: 999px;
  max-width: 16rem;
  padding: .25rem .875rem;
  font-size: .9375rem;
  font-weight: 600;
  overflow: hidden;
}

.striscia-sotto {
  background: var(--blu);
  border-color: var(--blu);
  color: var(--fondo);
}

.azione-a-parte {
  border-top: 1px solid var(--bordo);
  margin-top: .75rem;
  padding-top: .75rem;
}

.calendario-mesi {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: baseline;
  gap: .5rem 1rem;
  margin: 1rem 0 .75rem;
  display: flex;
}

.calendario {
  border-collapse: collapse;
  table-layout: fixed;
  width: 100%;
}

.calendario th {
  color: var(--testo-secondario);
  text-align: center;
  padding-bottom: .375rem;
  font-size: .875rem;
  font-weight: 600;
}

.calendario td {
  border: 1px solid var(--bordo);
  aspect-ratio: 1;
  text-align: center;
  vertical-align: middle;
  padding: 0;
}

.calendario-fuori {
  border-color: #0000;
}

.calendario-vuoto {
  color: var(--testo-secondario);
  font-size: .9375rem;
}

.calendario-pieno {
  width: 100%;
  height: 100%;
  color: var(--testo);
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: .125rem;
  font-weight: 600;
  text-decoration: none;
  display: flex;
}

.calendario-pieno:hover {
  background: var(--fondo-lettura);
}

.calendario-numero {
  font-size: 1rem;
}

.calendario-quante {
  background: var(--blu);
  min-width: 1.375rem;
  color: var(--fondo);
  border-radius: 999px;
  font-size: .8125rem;
  line-height: 1.375rem;
  display: inline-block;
}

.calendario-aperto {
  background: var(--fondo-lettura);
  box-shadow: inset 0 0 0 2px var(--blu);
}

.cerca-casella {
  align-items: center;
  gap: .5rem;
  display: flex;
}

.cerca-casella input[type="search"] {
  font: inherit;
  background: var(--fondo);
  min-width: 0;
  max-width: 36rem;
  color: var(--testo);
  border: 1px solid var(--testo-secondario);
  border-radius: .5rem;
  flex: auto;
  padding: .5rem .625rem;
}

.cerca-filtri > summary {
  cursor: pointer;
  font-weight: 600;
}

.cerca-filtri-dentro {
  flex-wrap: wrap;
  gap: .75rem 1.25rem;
  margin-top: .75rem;
  display: flex;
}

.cerca-filtri-dentro select, .cerca-filtri-dentro input[type="date"] {
  font: inherit;
  box-sizing: content-box;
  max-width: 100%;
  height: auto;
}

.cerca-filtri-dentro > .scelta {
  flex: 0 0 100%;
}

.cerca-spazi {
  border: 0;
  min-width: 0;
  margin: 0;
  padding: 0;
}

.cerca-spazi > legend {
  padding: 0;
  font-size: .9375rem;
  font-weight: 600;
}

.cerca-spazi {
  flex-flow: wrap;
  align-items: center;
  column-gap: 1rem;
}

.cerca-spazi > legend, .cerca-spazi > .campo-aiuto {
  flex-basis: 100%;
}

.cerca-periodo {
  flex-basis: 100%;
  gap: .75rem 1.25rem;
  display: flex;
}

.cerca-periodo > .campo {
  flex: 0 11rem;
  min-width: 0;
}

.cerca-espansione {
  margin: 1rem 0;
}

.cerca-affiancati {
  grid-template-columns: minmax(0, 1fr);
  gap: 0 2rem;
  display: grid;
}

@media (min-width: 54rem) {
  .cerca-affiancati {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  }
}

.cerca-gruppo {
  min-width: 0;
  margin-top: 1.25rem;
}

.cerca-risultati {
  gap: 0;
}

.cerca-risultato {
  border-top: 1px solid var(--bordo);
  overflow-wrap: anywhere;
  flex-direction: column;
  gap: .25rem;
  padding: .75rem 0;
  display: flex;
}

.cerca-risultato:first-child {
  border-top: 0;
}

.cerca-dove {
  font-weight: 600;
}

.cerca-segni {
  flex-wrap: wrap;
  align-items: center;
  gap: .25rem .75rem;
  font-size: .875rem;
  display: flex;
}

.cerca-titolo {
  font-size: .9375rem;
}

.cerca-estratto {
  color: var(--testo-secondario);
  margin: 0;
  font-size: .9375rem;
}

.cerca-estratto mark {
  background: var(--giallo);
  color: #191c22;
  border-radius: .1875rem;
  padding: 0 .125rem;
}

.cerca-dove-trovata {
  font-weight: 600;
}

.da-fare {
  margin: 1.5rem 0 2rem;
}

.elenco-voci {
  gap: var(--stacco-delle-righe);
  flex-direction: column;
  margin: 0 0 1rem;
  padding: 0;
  list-style: none;
  display: flex;
}

.voce {
  border-top: 1px solid var(--bordo);
  border-left: 4px solid var(--bordo);
  padding: .75rem 0 .75rem .75rem;
}

.voce:first-child {
  border-top: 0;
}

.voce-scaduta {
  border-left-color: var(--rosso);
}

.voce.voce-scaduta {
  background: color-mix(in srgb, var(--rosso) 9%, var(--fondo));
  padding-right: .75rem;
}

.voce.voce-finita {
  background: color-mix(in srgb, var(--verde) 9%, var(--fondo));
  padding-right: .75rem;
}

li.attivita-fatta, li.attivita-da-ripassare {
  border-radius: 4px;
  padding-left: .5rem;
  padding-right: .5rem;
}

li.attivita-fatta {
  background: color-mix(in srgb, var(--verde) 9%, var(--fondo));
}

li.attivita-da-ripassare {
  background: color-mix(in srgb, var(--blu-banda-da) 9%, var(--fondo));
}

.voce-finita li.attivita-fatta {
  background: none;
}

h1.voce-scaduta {
  border-left: 4px solid var(--rosso);
  padding-left: .625rem;
}

.voce-testa {
  flex-direction: column;
  gap: .25rem;
  display: flex;
}

.voce-descrizione {
  font-weight: 600;
}

.voce-segni {
  flex-wrap: wrap;
  align-items: center;
  gap: .25rem .75rem;
  font-size: .9375rem;
  display: flex;
}

.voce-titolo-riga, .voce-riga-fatto {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: .5rem 1rem;
  display: flex;
}

.voce-riga-fatto > form:last-child {
  margin-left: auto;
}

@media (max-width: 30rem) {
  .voce-titolo-riga {
    margin-bottom: .75rem;
  }
}

.pastiglia-scaduta {
  background: color-mix(in srgb, var(--rosso) 16%, var(--fondo));
  border-color: var(--rosso);
  color: var(--testo);
}

.pastiglia-ripassare {
  background: color-mix(in srgb, var(--blu-banda-da) 16%, var(--fondo));
  border-color: var(--blu-banda-da);
  color: var(--testo);
}

.attivita-pulsanti {
  flex-wrap: wrap;
  gap: .25rem .5rem;
  display: flex;
}

.voce-attivita {
  margin: .5rem 0 0;
  padding: 0;
  list-style: none;
}

.voce-attivita > li {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: .25rem 1rem;
  padding: .25rem 0;
  scroll-margin-top: 4rem;
  display: flex;
}

.voce, #esito-del-gesto {
  scroll-margin-top: 4rem;
}

.attivita-testo .pastiglia {
  margin-left: .5rem;
}

.attivita-fatta .attivita-testo, .attivita-fatta .voce-scuola-nome {
  color: var(--testo-secondario);
}

.voce-azioni {
  margin-top: .5rem;
}

.voce-con-fatto {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: .25rem 1rem;
  display: flex;
}

.voce-con-fatto > .voce-testa {
  flex: 12rem;
}

.attivita-riga {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: .25rem 1rem;
  display: flex;
}

.attivita-riga > .voce-scuola-testa {
  flex: 12rem;
}

.attivita-riga > .voce-azioni {
  margin-top: 0;
}

.bottone-piccolo {
  padding: .25rem .625rem;
  font-size: .875rem;
}

.elenco-della-verifica .modulo-in-riga {
  vertical-align: middle;
  margin-left: .5rem;
  display: inline-flex;
}

.elenco-della-verifica > li {
  margin-bottom: .375rem;
}

.elenco-della-verifica > li:after {
  content: "";
  clear: both;
  display: table;
}

.elenco-della-verifica .modulo-in-riga {
  float: right;
}

.stampa-della-verifica .campo-in-riga > select {
  width: auto;
}

.pagina-verifica .modulo > button {
  align-self: flex-start;
}

.pagina-verifica .campo > input[type="number"] {
  width: 10rem;
  max-width: 100%;
}

.compiti-viste {
  gap: 1rem;
  margin: 1rem 0;
  display: flex;
}

.compiti-cerca {
  margin: 1rem 0 1.5rem;
}

.compiti-cerca .cerca-casella {
  margin-bottom: .5rem;
}

.compiti-elenco {
  margin-top: 1.5rem;
}

.elenco-voci > .voce[id] {
  scroll-margin-top: 4rem;
}

.compiti-periodo-riga {
  --spazio-aiuto: 4.75rem;
  flex-flow: wrap;
  align-items: flex-end;
  gap: .5rem 1rem;
  display: flex;
  position: relative;
}

@media (max-width: 40rem) {
  .compiti-periodo-riga {
    --spazio-aiuto: 6.75rem;
  }
}

.compiti-periodo-riga:has( > .compiti-periodo-aiuto[open]) {
  padding-bottom: var(--spazio-aiuto);
}

.compiti-periodo-aiuto {
  align-self: flex-end;
  margin: 0;
}

.compiti-periodo-aiuto > summary {
  min-height: var(--altezza-campo);
  align-items: center;
}

.compiti-periodo-aiuto > .spiegazione-testo {
  left: 0;
  top: calc(100% - var(--spazio-aiuto));
  box-sizing: border-box;
  width: min(40rem, 100%);
  margin: .5rem 0 0;
  position: absolute;
}

.compiti-tendine > .compiti-stati {
  flex: none;
}

.compiti-stati .scelta {
  min-height: var(--altezza-campo);
  align-items: center;
  margin-top: .25rem;
}

.compiti-tendine > .scelta {
  min-height: var(--altezza-campo);
  align-self: flex-end;
  align-items: center;
  margin-top: 0;
}

.compiti-cestino {
  margin-top: 1.5rem;
}

.da-confermare {
  margin: 1rem 0 2rem;
}

.bozze-della-pagina {
  margin-bottom: 1.25rem;
}

.elenco-bozze {
  margin: .5rem 0 .75rem;
  padding: 0;
  list-style: none;
}

.bozza {
  border-left: 4px dashed var(--bordo);
  background: var(--fondo-lettura);
  margin-bottom: .75rem;
  padding: .75rem .75rem .25rem .875rem;
}

.bozza-attivita {
  border: 0;
  margin: 0;
  padding: 0;
}

.bozza-attivita > legend {
  margin-top: .5rem;
  font-weight: 600;
}

.bozza-attivita .bozza-attivita-riga {
  background: color-mix(in srgb, var(--viola-organizzare) 8%, var(--fondo));
  border: 1px solid var(--bordo);
  border-radius: 6px;
  margin: .5rem 0;
  padding: .5rem .75rem;
}

.numero-attivita {
  margin: 0 0 .25rem;
  font-size: .875rem;
}

.bozza-attivita-riga {
  border-top: 1px solid var(--bordo);
  padding: .5rem 0;
}

.bozza-attivita-riga:first-of-type {
  border-top: 0;
}

.attivita-da-togliere, .attivita-tolta {
  margin: .5rem 0 .25rem;
}

.bozza-attivita-riga .campo-attivita-intero {
  flex: 100%;
}

.bozza-attivita-riga .campo-attivita-intero textarea, .bozza .campo-attivita-intero > textarea {
  width: 100%;
  max-width: none;
}

.scelte-libro {
  border: 0;
  margin: .25rem 0;
  padding: 0;
}

.righe-della-bozza {
  margin: .25rem 0;
  padding: 0;
  list-style: none;
}

.voci-della-pagina {
  margin-top: 2rem;
}

.voci-confermate, .confronto-voci {
  margin: 1rem 0;
}

.confronto-segnalazioni {
  margin: .75rem 0;
  padding-left: 1.25rem;
}

.righe-di-studio {
  margin-top: .5rem;
}

.righe-di-studio p {
  margin: .125rem 0 0;
}

.collegamento-pagina {
  white-space: nowrap;
  font-size: .9375rem;
}

.scelta-libro {
  flex-wrap: nowrap;
  align-items: center;
  margin-top: .25rem;
}

.scelta-libro select {
  flex: 0 auto;
  min-width: 0;
  max-width: min(100%, 28rem);
}

@media (max-width: 30rem) {
  .scelta-libro {
    flex-wrap: wrap;
  }
}

.campi-attivita {
  flex-direction: column;
  align-items: stretch;
  gap: .5rem;
}

.campi-attivita > .campo input[type="text"], .campi-attivita > .campo textarea {
  max-width: none;
}

.attivita-tipo-riga {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-end;
  gap: .5rem 1rem;
  display: flex;
}

.attivita-tipo-riga > .campo {
  flex: 0 auto;
  min-width: 0;
}

.attivita-tipo-riga > .attivita-togli {
  flex-wrap: wrap;
  align-items: center;
  gap: .5rem;
  margin-left: auto;
  display: flex;
}

.attivita-togli > .modulo-in-riga {
  margin: 0;
  display: inline;
}

.diventa-voce > summary {
  cursor: pointer;
  width: fit-content;
  color: var(--blu);
  font-size: .9375rem;
  font-weight: 600;
}

.attivita-togli > .diventa-voce[open] {
  flex-basis: 100%;
}

.diventa-voce > .modulo-in-riga {
  flex-wrap: wrap;
  align-items: center;
  gap: .5rem;
  margin-top: .5rem;
  display: flex;
}

.diventa-voce > .scelte-voce {
  border: 0;
  margin: .25rem 0 .5rem;
  padding: 0;
}

.campi-attivita.da-togliere > .campo, .campi-attivita.da-togliere .attivita-tipo-riga > .campo {
  opacity: .55;
}

.voce-scuola:has( > .campi-attivita.da-togliere) > :not(.campi-attivita) {
  opacity: .55;
}

.voce-scuola:has(input[name="togli"]:checked) > :not(.campi-attivita) {
  opacity: .55;
}

.campi-attivita:has(input[name="togli"]:checked) > .campo {
  opacity: .55;
}

.campi-attivita:has(input[name="togli"]:checked) .attivita-tipo-riga > .campo {
  opacity: .55;
}

.campi-attivita.da-togliere textarea {
  text-decoration: line-through;
}

.campi-attivita:has(input[name="togli"]:checked) textarea {
  text-decoration: line-through;
}

.togli-casella {
  align-items: center;
  gap: .35rem;
  display: inline-flex;
}

.campi-attivita > .stato-errore {
  align-self: stretch;
}

.aggiungi-attivita {
  margin-top: var(--stacco-delle-righe);
}

.aggiungi-attivita[hidden] {
  display: none;
}

.voce-scuola > .campi-attivita {
  margin-top: var(--stacco-delle-righe);
}

.salva-la-voce {
  margin-top: 1.25rem;
  scroll-margin-top: 4rem;
}

.salva-la-voce ul {
  margin: .5rem 0 0;
  padding-left: 1.25rem;
  font-weight: 400;
}

.salva-la-voce p {
  margin: 0;
  display: inline;
}

.calendario-senza-scuola {
  background: repeating-linear-gradient(135deg,
    var(--fondo-lettura) 0,
    var(--fondo-lettura) .375rem,
    var(--bordo) .375rem,
    var(--bordo) .5rem);
}

.calendario-senza-scuola .calendario-vuoto, .calendario-senza-scuola .calendario-numero {
  color: var(--testo-secondario);
}

.storia > summary {
  cursor: pointer;
  flex-wrap: wrap;
  align-items: baseline;
  gap: .25rem .75rem;
  display: flex;
}

.storia > summary > h2 {
  margin: 0;
  display: inline;
}

.elenco-storia {
  margin: .75rem 0 0;
  padding-left: 1.25rem;
}

.riga-storia {
  border-top: 1px solid var(--bordo);
  flex-direction: column;
  gap: .125rem;
  padding: .5rem 0;
  display: flex;
}

.riga-storia:first-child {
  border-top: 0;
}

.storia-nota {
  font-style: italic;
}

.orario-largo {
  min-width: 0;
  margin: 1rem 0;
  overflow-x: auto;
}

.orario {
  border-collapse: collapse;
  width: 100%;
  min-width: 34rem;
}

.orario th {
  color: var(--testo-secondario);
  text-align: left;
  vertical-align: top;
  white-space: nowrap;
  padding: .375rem .5rem;
  font-size: .875rem;
  font-weight: 600;
}

.orario td {
  border: 1px solid var(--bordo);
  vertical-align: top;
  padding: .375rem;
}

.orario-quando {
  font-size: .8125rem;
  font-weight: 400;
  display: block;
}

.orario td select, .orario td input[type="text"] {
  width: 100%;
  min-width: 0;
  margin: 0;
}

.orario td select {
  font: inherit;
  background: var(--fondo);
  color: var(--testo);
  border: 1px solid var(--testo-secondario);
  border-radius: .375rem;
  padding: .25rem .375rem;
  font-size: .8125rem;
}

.orario td select.orario-aula {
  margin-top: .25rem;
}

.orario td input[type="text"] {
  height: auto;
  margin-top: .25rem;
  font-size: .8125rem;
}

.orario-confini {
  min-inline-size: 0;
  grid-template-columns: repeat(auto-fit, minmax(6.5rem, 1fr));
  align-items: end;
  gap: .5rem 1rem;
  min-width: 0;
  display: grid;
}

.orario-confini > .campo {
  min-width: 0;
  margin: 0;
}

.orario-confini .campo input {
  width: 100%;
}

.orario-confini > .campo-aiuto {
  grid-column: 1 / -1;
}

.orario-confini > .orario-quante-ore {
  grid-column: 1 / -1;
  margin: .25rem 0 0;
}

.orario-professore:empty {
  display: none;
}

.orario-professore {
  color: var(--testo-secondario);
  overflow-wrap: anywhere;
  margin: .125rem 0 .25rem;
  font-size: .8125rem;
  display: block;
}

.pagina-orario .modulo > .orario-salva {
  order: 1;
}

.zaino {
  margin: 1.5rem 0 2rem;
}

.zaino-ore, .zaino-cose {
  margin: 0 0 1rem;
  padding: 0;
  list-style: none;
}

.zaino-ore > li, .zaino-cose > li {
  border-top: 1px solid var(--bordo);
  flex-wrap: wrap;
  align-items: baseline;
  gap: .25rem .75rem;
  padding: .375rem 0;
  display: flex;
}

.zaino-ore > li:first-child, .zaino-cose > li:first-child {
  border-top: 0;
}

.zaino-quando {
  color: var(--testo-secondario);
  font-variant-numeric: tabular-nums;
  min-width: 7.5rem;
}

.zaino-materia {
  min-width: 9rem;
  font-weight: 600;
}

.zaino-ora-vuota {
  color: var(--testo-secondario);
}

.zaino-elenco {
  flex: 12rem;
}

.zaino-manca {
  flex: 12rem;
  font-size: .9375rem;
}

.zaino-segna {
  margin-left: auto;
}

.zaino-scegli {
  flex-flow: wrap;
  justify-content: flex-start;
  align-items: flex-end;
  gap: .5rem 1rem;
  display: flex;
}

.zaino-scegli > .campo {
  text-align: left;
  margin: 0;
}

.zaino-scegli > .zaino-scorciatoie {
  flex-basis: 100%;
}

.zaino-scorciatoie {
  flex-wrap: wrap;
  gap: .5rem;
  margin: 0;
  display: flex;
}

.pagina-orario > p, .pagina-orario details p, .pagina-orario .campo-aiuto, .pagina-orario .orario-quante-ore, .pagina-iniziale > h1, .pagina-iniziale > p, .pagina-iniziale details p, :is(.pagina-contenitori, .pagina-scuola, .pagina-stato, .pagina-impostazioni, .pagina-spesa, .pagina-utenti, .pagina-guida, .pagina-compiti, .pagina-voce, .pagina-calendario-compiti, .pagina-zaino) .spiegazione-testo {
  max-width: 62rem;
}

.pagina-guida {
  --larghezza-lettura: 112rem;
}

.pulsanti-mail {
  flex-wrap: wrap;
  gap: .75rem;
  margin-top: 1rem;
  display: flex;
}

.pulsanti-spiegati {
  margin-top: .5rem;
  display: block;
}

.pulsanti-spiegati > summary {
  cursor: pointer;
  color: var(--testo-secondario);
  justify-content: space-between;
  align-items: center;
  gap: .375rem;
  font-size: .875rem;
  list-style: none;
  display: flex;
}

.pulsanti-spiegati > summary::-webkit-details-marker {
  display: none;
}

.pulsanti-spiegati > summary .segno-spiegazione {
  flex: none;
  margin-left: 0;
  position: static;
  left: auto;
  transform: none;
}

.pulsanti-spiegati > summary:hover .segno-spiegazione, .pulsanti-spiegati > summary:focus-visible .segno-spiegazione, .pulsanti-spiegati[open] > summary .segno-spiegazione {
  color: var(--testo);
  border-color: var(--testo-secondario);
}

.compiti-pronta-azioni > .campo-aiuto {
  margin-top: .5rem;
  display: block;
}

.compiti-cerca > .campo-aiuto {
  margin-bottom: 1rem;
  display: block;
}

.salti-di-pagina {
  margin-top: 1rem;
  padding: .75rem 1.25rem;
}

.salti-di-pagina > * + * {
  margin-top: .75rem;
}

.salti-aiuti, .salti-senza-numero {
  margin-bottom: 0;
  padding-left: 1.25rem;
}

.salti-elenco {
  margin: .5rem 0 0;
  padding: 0;
  list-style: none;
}

.salti-elenco > li {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: .75rem;
  padding: .375rem 0;
  display: flex;
}

.salti-elenco > li + li {
  border-top: 1px solid var(--bordo);
}

.lettura-a-lotti {
  margin-bottom: 1rem;
}

.lettura-testa {
  flex-wrap: wrap;
  justify-content: space-between;
  gap: .75rem;
  display: flex;
}

.lotti {
  margin: 0 0 0 1rem;
  padding: 0;
  list-style: none;
}

.lotto {
  flex-wrap: wrap;
  align-items: center;
  gap: .25rem .75rem;
  padding: .25rem 0;
  display: flex;
}

.lotto-barra {
  background: var(--bordo);
  border-radius: .25rem;
  flex: 8rem;
  max-width: 14rem;
  height: .5rem;
  overflow: hidden;
}

.lotto-barra > span {
  background: var(--verde);
  height: 100%;
  display: block;
}

.lotto-fermando .lotto-barra > span {
  background: var(--testo-secondario);
}

.lotto-conti {
  flex-basis: 100%;
}

.esercizi-del-compito {
  flex-wrap: wrap;
  align-items: baseline;
  gap: .25rem .75rem;
  display: inline-flex;
}

.esercizi-del-compito .prepara-esercizi {
  align-items: baseline;
}

.ritaglio-esercizio {
  margin: .75rem 0;
}

.ritaglio-esercizio img {
  border: 1px solid var(--bordo);
  border-radius: .375rem;
  max-width: 100%;
  height: auto;
  display: block;
}

.figura-esercizio {
  margin: .75rem 0;
}

.figura-svg {
  width: 100%;
  max-width: 27.5rem;
  height: auto;
  font-family: var(--carattere), system-ui, sans-serif;
  display: block;
}

.figura-svg .figura-tratto, .figura-svg .figura-tacca {
  stroke: var(--testo);
  stroke-width: 1.3px;
  stroke-linecap: round;
}

.figura-svg .figura-tacca {
  stroke-width: 1px;
}

.figura-svg .figura-guida {
  stroke: var(--testo-secondario);
  stroke-width: 1px;
  stroke-dasharray: 3 3;
}

.figura-svg text {
  fill: var(--testo);
  font-size: 14px;
}

.figura-svg .figura-nome, .figura-svg .figura-nome-insieme {
  font-weight: 600;
}

.figura-svg .figura-nome-insieme {
  font-size: 18px;
}

.figura-svg .figura-elemento {
  font-size: 15px;
}

.figura-svg .figura-punto {
  fill: var(--testo);
}

.figura-svg .figura-casella {
  fill: var(--fondo);
  stroke: var(--testo);
  stroke-width: 1.2px;
}

.figura-svg .figura-righello {
  fill: var(--mappa-sabbia);
  stroke: var(--testo-secondario);
  stroke-width: 1px;
}

.figura-svg .figura-oggetto {
  fill: var(--mappa-azzurro);
  stroke: var(--testo-secondario);
  stroke-width: 1px;
}

.figura-svg .figura-tubo {
  fill: var(--fondo);
  stroke: var(--testo-secondario);
  stroke-width: 1.3px;
}

.figura-svg .figura-liquido {
  fill: var(--rosso);
  stroke: none;
}

.figura-svg .figura-universo {
  fill: none;
  stroke: var(--testo-secondario);
  stroke-width: 1.2px;
}

.figura-svg .figura-cerchio {
  fill: none;
  stroke: var(--testo);
  stroke-width: 1.5px;
}

.figura-svg .figura-cerchio-0 {
  fill: var(--mappa-azzurro);
  fill-opacity: .45;
}

.figura-svg .figura-cerchio-1 {
  fill: var(--mappa-menta);
  fill-opacity: .45;
}

.figura-svg .figura-cerchio-2 {
  fill: var(--mappa-pesca);
  fill-opacity: .45;
}

.figura-svg .figura-risposta {
  fill: var(--blu);
  stroke: var(--blu);
}

.figura-svg .figura-testo-risposta {
  fill: var(--blu);
  font-weight: 700;
}

.figura-legenda {
  color: var(--testo-secondario);
  margin: .25rem 0 0;
  padding-left: 1.25rem;
}

.foto-e-trascrizione {
  flex-wrap: wrap;
  align-items: flex-start;
  gap: .75rem;
  margin: .5rem 0;
  display: flex;
}

.foto-e-trascrizione > div {
  flex: 14rem;
  min-width: 0;
}

.foto-del-tentativo {
  border: 1px solid var(--bordo);
  border-radius: .375rem;
  max-width: min(100%, 20rem);
  height: auto;
  display: block;
}

.foto-della-lettura {
  flex-wrap: wrap;
  gap: .75rem;
  margin: .5rem 0;
  padding: 0;
  list-style: none;
  display: flex;
}

.foto-della-lettura > li {
  flex: 0 12rem;
  min-width: 0;
}

.qr-per-il-telefono {
  display: none;
}

@media (min-width: 48rem) {
  .qr-per-il-telefono {
    max-width: 18rem;
    display: block;
  }

  .qr-per-il-telefono .riquadro-qr {
    width: 10rem;
    margin: .75rem 0;
  }
}

.foto-da-ritagliare .foto-grande {
  max-width: 100%;
  max-height: min(32rem, 80svh);
}

.ritocco-tela.foto-da-ritagliare {
  margin: 0;
}

.foto-del-tentativo-piccola {
  vertical-align: middle;
  border: 1px solid var(--bordo);
  border-radius: .25rem;
  height: auto;
  margin-left: .5rem;
  display: inline-block;
}

.riquadro {
  background: var(--fondo);
  border: 1px solid var(--bordo);
  border-radius: .75rem;
  margin-top: 1.25rem;
  padding: 1rem 1.25rem;
}

.riquadro > :first-child {
  margin-top: 0;
}

.riquadro > .titolo-spiegato + .modulo, .riquadro > .titolo-spiegato + .stato + .modulo {
  margin-top: .75rem;
}

.riquadro-studio {
  border-left: 5px solid var(--blu-banda-da);
}

.riquadro-fare {
  border-left: 5px solid var(--blu-banda-a);
}

.riquadro-claude {
  border-left: 5px solid var(--giallo);
}

.riquadro-genitore {
  border-left: 5px solid var(--testo-secondario);
}

.riquadro-organizzare {
  border-left: 5px solid var(--viola-organizzare);
}

.scalini-esercizio .scalino {
  margin: .5rem 0;
}

.scalini-esercizio .scalino > summary {
  cursor: pointer;
  font-weight: 600;
}

.blocco-della-domanda > h2 {
  margin-bottom: .25rem;
}

.domanda-sul-testo {
  border-top: 1px solid var(--bordo);
  margin-top: .75rem;
  padding-top: .5rem;
}

.domanda-sul-testo > h3 {
  margin: .25rem 0;
  font-size: 1rem;
}

.brano-evidenziato mark {
  background: var(--giallo);
  color: #191c22;
  border-radius: .1875rem;
  padding: 0 .125rem;
}

.riga-del-foglio {
  border: 0;
  border-top: 1px solid var(--bordo);
  flex-direction: column;
  gap: .75rem;
  min-width: 0;
  margin: 0;
  padding: .75rem 0 0;
  display: flex;
}

.riga-del-foglio > legend {
  float: left;
  width: 100%;
  padding: 0;
  font-weight: 600;
}

.righe-del-foglio > li {
  margin-bottom: .5rem;
}

.righe-del-foglio > li.riga-riunita {
  margin-left: 1.5rem;
}

.foto-con-pastiglie, .foto-col-segno {
  vertical-align: top;
  max-width: 100%;
  display: inline-block;
  position: relative;
}

.pastiglia-sul-foglio {
  box-sizing: border-box;
  border: 3px solid var(--giallo);
  opacity: .8;
  pointer-events: none;
  border-radius: 999px;
  position: absolute;
}

.pallino-esercizio {
  vertical-align: baseline;
  border-radius: 50%;
  width: .75rem;
  height: .75rem;
  margin-right: .375rem;
  display: inline-block;
}

.segno-sulla-pagina {
  aspect-ratio: 1;
  border: 3px solid var(--giallo);
  opacity: .8;
  pointer-events: none;
  border-radius: 50%;
  width: 7%;
  position: absolute;
  transform: translate(-50%, -50%);
}

.giorno-ricevimenti + .giorno-ricevimenti {
  margin-top: 1.25rem;
}

.giorno-ricevimenti h3 {
  margin: 0 0 .5rem;
}

.elenco-ricevimenti {
  gap: .6rem;
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
}

.gruppo-ricevimenti > summary {
  cursor: pointer;
}

.gruppo-ricevimenti > .elenco-ricevimenti {
  margin: .5rem 0 0 1rem;
}

.ricerca-ricevimenti {
  flex-flow: wrap;
  align-items: flex-end;
  gap: 0 1rem;
  display: flex;
}

.tabellone-aula {
  flex-wrap: wrap;
  align-items: center;
  gap: .25rem .75rem;
  margin-block: .5rem;
  display: flex;
}

.tabellone-aula input[type="text"] {
  max-width: 20rem;
}

.tabellone-ore {
  border-collapse: collapse;
  width: 100%;
}

.tabellone-ore th, .tabellone-ore td {
  border-top: 1px solid var(--bordo);
  text-align: left;
  vertical-align: top;
  padding: .4rem .5rem;
}

.abbinamenti-professori {
  min-width: 0;
}

.abbinamenti-elenco {
  grid-template-columns: repeat(auto-fill, minmax(min(20rem, 100%), 1fr));
}

.abbinamenti-materie {
  grid-template-columns: repeat(auto-fill, minmax(min(16rem, 100%), 1fr));
  align-items: end;
  gap: .75rem 1.5rem;
  min-width: 0;
  display: grid;
}

.abbinamenti-materie > legend {
  grid-column: 1 / -1;
}

.abbinamenti-materie .campo > label .pastiglia {
  margin-left: .5rem;
}

.abbinamento-docente {
  flex-direction: column;
  gap: .625rem;
  display: flex;
}

.abbinamento-docente .scelta {
  margin-top: 0;
}

.abbinamento-docente .campo > label .pastiglia {
  margin-left: .5rem;
}

.tabellone-nota {
  display: block;
}

.tabellone-avviso {
  color: var(--arancione);
  display: block;
}

.pagine-attivita {
  margin: .375rem 0 0;
}

.pagine-attivita > summary {
  cursor: pointer;
  font-size: .875rem;
}

.pagine-attivita-righe {
  border: 1px solid var(--bordo);
  border-radius: .5rem;
  gap: .5rem;
  margin: .5rem 0 0;
  padding: .5rem .75rem;
  display: grid;
}

.pagine-attivita-riga {
  flex-wrap: wrap;
  align-items: flex-end;
  gap: .5rem .75rem;
  display: flex;
}

.pagine-attivita-riga .campo {
  flex: 10rem;
  min-width: 0;
  margin: 0;
}

.pagine-attivita-riga select, .pagine-attivita-riga input[type="text"] {
  width: 100%;
  max-width: 100%;
}

.pagine-attivita-togli {
  white-space: nowrap;
  padding-bottom: .375rem;
}

.avviso-delle-pagine {
  margin: .5rem 0 0;
}

.avviso-delle-pagine.stato-attenzione {
  background: color-mix(in srgb, var(--giallo) 16%, var(--fondo));
  border-left: 5px solid var(--giallo);
  color: var(--testo);
  border-radius: .5rem;
  padding: .5rem .75rem;
}

.pagine-attivita-con-spiegazione {
  margin: .375rem 0 0;
  padding-right: 1.75rem;
  position: relative;
}

.pagine-attivita-con-spiegazione > .pagine-attivita {
  margin: 0;
}

.spiegazione-pagine > summary {
  cursor: pointer;
  align-items: center;
  height: 1.3rem;
  list-style: none;
  display: inline-flex;
  position: absolute;
  top: 0;
  right: 0;
}

.spiegazione-pagine > summary::-webkit-details-marker {
  display: none;
}

.spiegazione-pagine .segno-spiegazione {
  margin-left: 0;
  position: static;
  left: auto;
  transform: none;
}

.spiegazione-pagine > summary:hover .segno-spiegazione, .spiegazione-pagine > summary:focus-visible .segno-spiegazione, .spiegazione-pagine[open] > summary .segno-spiegazione {
  color: var(--testo);
  border-color: var(--testo-secondario);
}

.mappa-tela {
  border: 1px solid var(--bordo);
  background: var(--fondo-lettura);
  -webkit-overflow-scrolling: touch;
  border-radius: .5rem;
  max-width: 100%;
  margin-top: .75rem;
  overflow: auto;
}

.mappa-svg {
  display: block;
}

.mappa-riquadro {
  cursor: pointer;
}

.mappa-riquadro rect {
  fill: var(--fondo);
  stroke: var(--bordo-campione);
  stroke-width: 1.2px;
}

.mappa-riquadro text {
  fill: var(--testo);
}

.mappa-riquadro text.mappa-esempi {
  fill: var(--testo-secondario);
}

.mappa-radice rect {
  stroke: var(--blu-banda-da);
  stroke-width: 2.2px;
}

.mappa-riquadro:hover rect, .mappa-riquadro:focus-visible rect {
  stroke: var(--testo);
}

.mappa-riquadro:focus {
  outline: none;
}

.mappa-scelto rect, .mappa-scelto:hover rect {
  stroke: var(--blu);
  stroke-width: 2.6px;
}

.mappa-freccia {
  fill: none;
  stroke: var(--testo-secondario);
  stroke-width: 1.3px;
}

.mappa-punta {
  fill: var(--testo-secondario);
}

.mappa-fondo-parola {
  fill: var(--fondo-lettura);
  opacity: .92;
}

.mappa-parola {
  fill: var(--testo-secondario);
}

.mappa-dettaglio {
  min-height: 2.5rem;
  margin-top: .75rem;
}

.mappa-dettaglio h3 {
  margin: 0 0 .25rem;
}

.mappa-colore-giallo rect {
  fill: var(--mappa-giallo);
}

.mappa-colore-pesca rect {
  fill: var(--mappa-pesca);
}

.mappa-colore-rosa rect {
  fill: var(--mappa-rosa);
}

.mappa-colore-lilla rect {
  fill: var(--mappa-lilla);
}

.mappa-colore-azzurro rect {
  fill: var(--mappa-azzurro);
}

.mappa-colore-menta rect {
  fill: var(--mappa-menta);
}

.mappa-colore-salvia rect {
  fill: var(--mappa-salvia);
}

.mappa-colore-sabbia rect {
  fill: var(--mappa-sabbia);
}

.editor-mappa-riquadro.mappa-colore-giallo, .editor-mappa-campione.mappa-colore-giallo {
  background: var(--mappa-giallo);
}

.editor-mappa-riquadro.mappa-colore-pesca, .editor-mappa-campione.mappa-colore-pesca {
  background: var(--mappa-pesca);
}

.editor-mappa-riquadro.mappa-colore-rosa, .editor-mappa-campione.mappa-colore-rosa {
  background: var(--mappa-rosa);
}

.editor-mappa-riquadro.mappa-colore-lilla, .editor-mappa-campione.mappa-colore-lilla {
  background: var(--mappa-lilla);
}

.editor-mappa-riquadro.mappa-colore-azzurro, .editor-mappa-campione.mappa-colore-azzurro {
  background: var(--mappa-azzurro);
}

.editor-mappa-riquadro.mappa-colore-menta, .editor-mappa-campione.mappa-colore-menta {
  background: var(--mappa-menta);
}

.editor-mappa-riquadro.mappa-colore-salvia, .editor-mappa-campione.mappa-colore-salvia {
  background: var(--mappa-salvia);
}

.editor-mappa-riquadro.mappa-colore-sabbia, .editor-mappa-campione.mappa-colore-sabbia {
  background: var(--mappa-sabbia);
}

.mappa-svg.mappa-sfondo-crema {
  background: var(--mappa-crema);
}

.mappa-svg.mappa-sfondo-quadretti {
  background-image: linear-gradient(to right, var(--mappa-righe) 1px, transparent 1px),
    linear-gradient(to bottom, var(--mappa-righe) 1px, transparent 1px);
  background-size: 20px 20px;
}

.mappa-svg.mappa-sfondo-righe {
  background-image: linear-gradient(to bottom, var(--mappa-righe) 1px, transparent 1px);
  background-size: 100% 24px;
}

.mappa-sfondo-crema .mappa-fondo-parola {
  fill: var(--mappa-crema);
}

@media not all and (min-width: 48rem) {
  .solo-schermi-larghi {
    display: none !important;
  }
}

@media (min-width: 48rem) {
  .solo-schermi-stretti {
    display: none !important;
  }
}

.editor-mappa {
  flex-direction: column;
  gap: .75rem;
  display: flex;
}

.editor-mappa-tela {
  border: 1px solid var(--bordo);
  background: var(--fondo-lettura);
  border-radius: .5rem;
  height: 65vh;
  min-height: 24rem;
  overflow: hidden;
}

.editor-mappa-tela.mappa-sfondo-crema {
  background: var(--mappa-crema);
}

.editor-mappa-tela .react-flow {
  --xy-edge-stroke: var(--testo-secondario);
  --xy-edge-stroke-selected: var(--blu);
  --xy-connectionline-stroke: var(--blu);
  --xy-selection-background-color: transparent;
  --xy-selection-border: 1px dashed var(--blu);
  background: none;
}

.editor-mappa-sfondo {
  --xy-background-pattern-color: var(--mappa-righe);
}

.editor-mappa-tela .react-flow__arrowhead polyline {
  stroke: var(--testo-secondario);
  fill: var(--testo-secondario);
}

.editor-mappa-riquadro {
  box-sizing: border-box;
  border: 1.2px solid var(--bordo-campione);
  background: var(--fondo);
  color: var(--testo);
  font-family: var(--carattere), Archivo, sans-serif;
  text-align: center;
  border-radius: 8px;
  flex-direction: column;
  justify-content: center;
  padding: 0 12px;
  font-size: 15px;
  font-weight: 600;
  line-height: 19px;
  display: flex;
}

.editor-mappa-riga {
  white-space: nowrap;
  display: block;
}

.editor-mappa-righe {
  flex-direction: column;
  display: flex;
}

.editor-mappa-con-esempi {
  text-align: left;
  margin: 9px 0 auto;
}

.editor-mappa-esempio {
  white-space: nowrap;
  color: var(--testo-secondario);
  font-size: 11px;
  font-weight: 400;
  line-height: 14px;
  display: block;
}

.editor-mappa-riga + .editor-mappa-esempio {
  margin-top: 2px;
}

.editor-mappa-principale {
  border: 2.2px solid var(--blu-banda-da);
}

.editor-mappa-scelto {
  outline: 2.6px solid var(--blu);
  outline-offset: 1px;
}

.editor-mappa-maniglia {
  border: 1.5px solid var(--fondo);
  background: var(--testo-secondario);
  border-radius: 50%;
  width: 10px;
  height: 10px;
}

.editor-mappa-maniglia-uscita {
  background: var(--blu);
}

.editor-mappa-freccia-scelta {
  stroke-width: 2px;
  stroke: var(--blu) !important;
}

.editor-mappa-parola {
  background: var(--fondo-lettura);
  color: var(--testo-secondario);
  font-family: var(--carattere), Archivo, sans-serif;
  white-space: nowrap;
  pointer-events: all;
  cursor: grab;
  touch-action: none;
  -webkit-user-select: none;
  user-select: none;
  border-radius: 3px;
  padding: 1px 4px;
  font-size: 12px;
  line-height: 15px;
  position: absolute;
}

.editor-mappa-tela.mappa-sfondo-crema .editor-mappa-parola {
  background: var(--mappa-crema);
}

.editor-mappa-maniglia-tratto {
  border: 1.5px solid var(--fondo);
  background: var(--blu);
  pointer-events: all;
  touch-action: none;
  border-radius: 3px;
  width: 12px;
  height: 12px;
  position: absolute;
}

.editor-mappa-tratto-orizzontale {
  cursor: ns-resize;
}

.editor-mappa-tratto-verticale {
  cursor: ew-resize;
}

.editor-mappa-parola-scelta {
  color: var(--blu);
}

.editor-mappa-campione {
  border: 1px solid var(--bordo-campione);
  vertical-align: middle;
  border-radius: 3px;
  width: 1rem;
  height: 1rem;
  margin-right: .25rem;
  display: inline-block;
}

.editor-mappa-colori, .editor-mappa-sfondi {
  flex-wrap: wrap;
  gap: .25rem 1rem;
  display: flex;
}

.mappa-riquadro rect.mappa-immagine-mancante {
  fill: var(--bordo);
  stroke: none;
}

.editor-mappa-riquadro-immagine {
  justify-content: flex-start;
  align-items: center;
  padding: 0;
}

.editor-mappa-immagine {
  pointer-events: none;
  flex: none;
  margin-top: 4.8px;
  display: block;
}

.editor-mappa-immagine-mancante {
  background: var(--bordo);
}

.editor-mappa-sotto-l-immagine {
  flex-direction: column;
  flex: 1;
  justify-content: center;
  min-height: 0;
  padding: 0 12px;
  display: flex;
}

.react-flow__resize-control.handle.editor-mappa-angolo {
  border: 2px solid var(--fondo);
  background: var(--blu);
  border-radius: 2px;
  width: 12px;
  height: 12px;
}

.editor-mappa-ritaglio {
  cursor: crosshair;
  touch-action: none;
  -webkit-user-select: none;
  user-select: none;
  width: min(100%, 560px);
  margin: .75rem 0;
  position: relative;
  overflow: hidden;
}

.editor-mappa-ritaglio img {
  width: 100%;
  height: 100%;
  display: block;
}

.editor-mappa-ritaglio-rettangolo {
  box-sizing: border-box;
  border: 2px solid var(--blu);
  cursor: move;
  position: absolute;
  box-shadow: 0 0 0 9999px #00000059;
}

.editor-mappa-ritaglio-angolo {
  border: 2px solid var(--blu);
  background: var(--fondo);
  cursor: crosshair;
  border-radius: 50%;
  width: 14px;
  height: 14px;
  position: absolute;
  translate: -50% -50%;
}

.editor-mappa-riquadro.editor-mappa-da-rifare {
  outline: 3px solid var(--giallo);
  outline-offset: 2px;
}

.vedi-barra {
  z-index: 2;
  background: var(--fondo);
  padding: .5rem 0;
  position: sticky;
  top: 0;
}

.vedi-contenuto {
  margin-top: .5rem;
}

.vedi-foto {
  max-width: 100%;
  height: auto;
  display: block;
}

.vedi-pdf {
  border: 1px solid var(--bordo);
  width: 100%;
  height: calc(100dvh - 10rem);
  min-height: 24rem;
  display: block;
}

.riquadro.cronometro {
  z-index: 3;
  padding: .5rem 1rem;
  position: sticky;
  top: 0;
  box-shadow: 0 2px 6px #191c2214;
}

.riquadro.cronometro .spiegazione-testo {
  max-height: 33svh;
  overflow-y: auto;
}

.cronometro-quadrante {
  margin: .25rem 0 .5rem;
}

.cronometro-cifre {
  font-variant-numeric: tabular-nums;
  font-size: 1.75rem;
  font-weight: 700;
}

.cronometro-oltre .cronometro-cifre {
  color: var(--arancione);
}

.cronometro-avviso {
  margin: .25rem 0 0;
  font-weight: 600;
}

/*# sourceMappingURL=%5Broot-of-the-server%5D__0aeg1k8._.css.map*/