/* Community e supporto (piano 5): pagine nuove dell'area studenti e del pannello. Solo variabili di base.css. */

:root { --cuore: #E11D48; }
[data-tema="scuro"] { --cuore: #FB7185; }

/* ---- Raccordo con la barra in basso ---- */
/* la barra in basso ha tante colonne quante voci (al massimo cinque) */
.barra-basso { grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); }
/* con cinque voci (I miei corsi, Community, Meeting, Messaggi, Profilo) sui telefoni stretti le etichette non si toccano */
@media (max-width: 419.98px) {
  .barra-basso { padding-inline: 4px; column-gap: 2px; }
  .barra-basso__voce { font-size: 0.75rem; letter-spacing: -0.01em; text-align: center; }
}

.riga--fine { justify-content: flex-end; }
.notifica--sociale .notifica__testo { white-space: normal; max-width: min(calc(100vw - 32px), 520px); text-align: center; }

/* ---- Testo scritto dagli utenti ---- */
.testo-sociale { white-space: pre-wrap; overflow-wrap: anywhere; }
.testo-sociale a { font-weight: 560; }

/* ---- Pezzi comuni ---- */
.avatar-sociale { width: 40px; height: 40px; font-size: 1rem; }
.avatar-sociale--piccolo { width: 32px; height: 32px; font-size: 0.8125rem; }
.nome-sociale { font-weight: 700; }
.etichetta-staff {
  display: inline-flex; align-items: center; gap: 3px; margin-left: 2px; padding: 1px 7px 1px 5px; vertical-align: 2px;
  border-radius: var(--raggio-pieno); background: var(--accento-tenue); color: var(--accento);
  font-size: 0.6875rem; font-weight: 760; letter-spacing: 0.04em; text-transform: uppercase; line-height: 1.5;
}
.quando { color: inherit; text-decoration: none; }
a.quando:hover { text-decoration: underline; }
.pillola {
  display: inline-flex; align-items: center; gap: 4px; padding: 3px 10px; white-space: nowrap;
  border-radius: var(--raggio-pieno); background: var(--superficie-2); color: var(--testo-tenue);
  font-size: 0.8125rem; font-weight: 680; line-height: 1.3;
}
.pillola--attesa { background: var(--attenzione-tenue); color: var(--attenzione); }
.nota-sociale {
  display: flex; align-items: center; gap: var(--spazio-2); padding: 12px 14px;
  border-radius: var(--raggio); background: var(--superficie-2); color: var(--testo-tenue); font-size: 0.9375rem;
}
.nota-sociale .icona { color: var(--accento); }
.nota-sociale--piccola { padding: 8px 12px; font-size: 0.875rem; border-radius: var(--raggio-piccolo); }

/* area di testo che cresce con quello che si scrive */
.area-sociale { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
textarea.area-sociale__testo { resize: none; min-height: 48px; max-height: 50vh; overflow-y: auto; field-sizing: content; }
.area-sociale__conta { align-self: flex-end; font-size: 0.8125rem; color: var(--testo-tenue); font-variant-numeric: tabular-nums; }
.area-sociale__conta--oltre { color: var(--errore); font-weight: 700; }

/* ---- Pagina della community: una colonna, tre da computer ---- */
.community { display: flex; flex-direction: column; gap: var(--spazio-5); }
.community__testa h1 { font-size: clamp(1.5rem, 1.3rem + 1vw, 2rem); }
.community__griglia { display: grid; gap: var(--spazio-4); grid-template-columns: minmax(0, 1fr); align-items: start; }
.community__sinistra, .community__centro, .community__destra { display: flex; flex-direction: column; gap: var(--spazio-4); min-width: 0; }
@media (max-width: 1023.98px) {
  .community { max-width: 720px; margin-inline: auto; width: 100%; }
}
@media (max-width: 639.98px) {
  .community { gap: var(--spazio-4); }
}
@media (min-width: 1024px) {
  .community__griglia { grid-template-columns: 272px minmax(0, 1fr) 296px; gap: var(--spazio-5); }
}

/* titoli piccoli dei riquadri laterali */
.canali .scheda__testa, .classifica .scheda__testa { margin-bottom: var(--spazio-3); }
.canali .scheda__titolo, .classifica .scheda__titolo { font-size: 1.0625rem; }

/* ---- Canali ---- */
.canali.scheda { padding: 14px 16px; }
.canali__elenco {
  display: flex; gap: var(--spazio-2); overflow-x: auto; overscroll-behavior-x: contain; scrollbar-width: none;
  margin: 0 -16px; padding: 2px 16px 4px; scroll-padding-inline: 16px;
}
.canali__elenco::-webkit-scrollbar { display: none; }
.canali__voce { flex: none; display: flex; align-items: center; gap: var(--spazio-2); }
.canale {
  display: inline-flex; align-items: center; gap: var(--spazio-2); min-height: var(--tocco); padding: 4px 14px 4px 5px;
  border: 1px solid var(--bordo-forte); border-radius: var(--raggio-pieno); background: var(--superficie);
  color: var(--testo); font-weight: 640; text-decoration: none; white-space: nowrap;
  transition: background-color var(--durata), border-color var(--durata);
}
.canale:hover { background: var(--superficie-2); text-decoration: none; }
.canale--attivo, .canale--attivo:hover { background: var(--accento-tenue); border-color: var(--accento); }
.canale__segno {
  flex: none; display: grid; place-items: center; width: 32px; height: 32px; border-radius: 50%;
  background: var(--accento-medio); color: var(--testo); font-size: 0.875rem; font-weight: 780;
}
.canale--attivo .canale__segno { background: var(--primario); color: var(--testo-primario); }
.canale__testi { display: flex; flex-direction: column; min-width: 0; line-height: 1.3; }
.canale__nome { display: inline-flex; align-items: center; gap: 5px; }
.canale__lucchetto { color: var(--testo-tenue); }
.canale__dettaglio, .canali__azione { display: none; }

@media (min-width: 1024px) {
  .canali__elenco { flex-direction: column; gap: 2px; overflow: visible; margin: 0 -8px; padding: 0; }
  /* il pulsante per entrare va sotto il nome, allineato al testo */
  .canali__voce { flex-wrap: wrap; gap: 0; }
  .canale {
    flex: 1 1 100%; min-width: 0; padding: 8px; border: 0; border-radius: var(--raggio-piccolo); background: transparent; white-space: normal;
  }
  .canale--attivo, .canale--attivo:hover { background: var(--accento-tenue); box-shadow: inset 3px 0 0 var(--accento); }
  .canale__segno { width: 36px; height: 36px; border-radius: 10px; }
  .canale__nome { overflow-wrap: anywhere; }
  .canale__dettaglio { display: block; font-size: 0.8125rem; font-weight: 520; color: var(--testo-tenue); }
  .canali__azione { display: inline-flex; margin: -2px 0 8px 52px; }
  .canali__azione.pulsante { min-height: 34px; padding: 0 12px; font-size: 0.8125rem; }
}

/* ---- Intestazione del canale aperto ---- */
/* griglia: segno | testi | menu; i pulsanti per entrare vanno sotto i testi */
.testa-canale {
  display: grid; grid-template-columns: 44px minmax(0, 1fr) auto; align-items: start; column-gap: var(--spazio-3); padding: 16px 18px;
  background: var(--superficie); border: 1px solid var(--bordo); border-radius: var(--raggio); box-shadow: var(--ombra);
}
.testa-canale__segno {
  flex: none; display: grid; place-items: center; width: 44px; height: 44px; border-radius: 12px;
  background: linear-gradient(135deg, var(--primario), color-mix(in oklab, var(--primario) 58%, #0B1F44));
  color: var(--testo-primario); font-size: 1.125rem; font-weight: 780;
}
.testa-canale__testi { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.testa-canale__nome { font-size: 1.1875rem; }
.testa-canale__descrizione { color: var(--testo-tenue); font-size: 0.9375rem; }
.testa-canale__dati { display: flex; flex-wrap: wrap; align-items: center; gap: 4px; margin-top: 2px; color: var(--testo-tenue); font-size: 0.8125rem; font-weight: 620; }
.testa-canale__azioni { grid-column: 2 / 4; display: flex; flex-wrap: wrap; align-items: center; gap: var(--spazio-2); margin-top: var(--spazio-3); }
.testa-canale__azioni--menu { grid-column: 3; grid-row: 1; margin: -6px -8px 0 0; }

/* ---- Scrittura di un post ---- */
.scrittura.scheda { display: flex; flex-direction: column; gap: var(--spazio-3); padding: 14px 16px; }
@media (min-width: 640px) { .scrittura.scheda { padding: 16px 20px; } }
.scrittura__riga { display: flex; align-items: flex-start; gap: var(--spazio-3); }
.scrittura__area { flex: 1; }
.scrittura textarea.area-sociale__testo { min-height: 56px; background: var(--superficie-2); border-color: transparent; border-radius: 14px; }
.scrittura textarea.area-sociale__testo:hover:not(:disabled) { border-color: var(--bordo-forte); }
.scrittura textarea.area-sociale__testo:focus-visible { background: var(--superficie); border-color: var(--accento); }
.scrittura textarea.area-sociale__testo:disabled { cursor: not-allowed; opacity: 0.6; }
.scrittura .campo__errore { padding-left: 52px; }
.scrittura__immagine { position: relative; align-self: flex-start; margin-left: 52px; }
.scrittura__immagine img { max-height: 240px; width: auto; border-radius: var(--raggio-piccolo); border: 1px solid var(--bordo); }
.scrittura__togli { position: absolute; top: 6px; right: 6px; background: color-mix(in srgb, var(--superficie) 88%, transparent); box-shadow: var(--ombra); }
.scrittura__piede { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--spazio-2); padding-left: 44px; }
.scrittura__strumenti { display: flex; flex-wrap: wrap; align-items: center; gap: var(--spazio-1) var(--spazio-2); min-width: 0; }
.scrittura__strumenti .pulsante-icona { color: var(--accento); }
.scrittura__strumenti .pulsante-icona:disabled { opacity: 0.45; cursor: default; }
.scrittura__canale { display: flex; align-items: center; gap: var(--spazio-2); min-width: 0; color: var(--testo-tenue); font-size: 0.875rem; font-weight: 620; }
.scrittura__canale .campo__scelta { min-width: 0; }
.scrittura__scelta {
  appearance: none; -webkit-appearance: none; max-width: 190px; min-height: 40px; padding: 0 34px 0 14px;
  border: 1px solid var(--bordo-forte); border-radius: var(--raggio-pieno); background: var(--superficie); color: var(--testo);
  font-size: 0.9375rem; font-weight: 650; text-overflow: ellipsis; cursor: pointer;
}
.scrittura__scelta:focus-visible { outline: 3px solid var(--anello); outline-offset: 1px; }
.scrittura__canale .campo__freccia { right: 11px; }
@media (max-width: 479.98px) {
  .scrittura__piede, .scrittura .campo__errore { padding-left: 0; }
  .scrittura__immagine { margin-left: 0; }
  .scrittura__canale-etichetta { display: none; }
}

/* ---- Bacheca ---- */
.bacheca { display: flex; flex-direction: column; gap: var(--spazio-4); }
.bacheca__elenco { display: flex; flex-direction: column; gap: var(--spazio-4); }
.bacheca__altri { display: flex; justify-content: center; }

/* ---- Un post ---- */
.post.scheda { display: flex; flex-direction: column; gap: var(--spazio-3); padding: 16px 16px 8px; }
@media (min-width: 640px) { .post.scheda { padding: 20px 22px 10px; } }
.post--fissato { border-color: color-mix(in srgb, var(--accento) 40%, var(--bordo)); }
.post--privato { border-style: dashed; border-color: var(--bordo-forte); }
.post--scheletro { padding-bottom: 20px !important; }
.post--scheletro .avatar-sociale { display: block; width: 40px; height: 40px; border-radius: 50%; }
.post__fissato {
  display: flex; align-items: center; gap: 6px; margin-bottom: -4px;
  color: var(--accento); font-size: 0.75rem; font-weight: 760; letter-spacing: 0.06em; text-transform: uppercase;
}
.post__testa { display: flex; align-items: center; gap: var(--spazio-3); }
.post__chi { flex: 1; min-width: 0; }
.post__nome { font-size: 1rem; line-height: 1.35; letter-spacing: 0; }
.post__quando { display: flex; flex-wrap: wrap; align-items: center; gap: 0 3px; color: var(--testo-tenue); font-size: 0.8125rem; }
.post__canale { color: var(--testo-tenue); font-weight: 650; text-decoration: none; }
.post__canale:hover { color: var(--testo); text-decoration: underline; }
.post__testa > .menu { align-self: flex-start; margin: -6px -8px 0 0; }
.post__testo { display: flex; flex-direction: column; align-items: flex-start; gap: 4px; }
.post__testo .testo-sociale { line-height: 1.6; }
.post__leggi { font-weight: 680; font-size: 0.9375rem; }
.post__immagine { display: block; border-radius: var(--raggio-piccolo); overflow: hidden; background: var(--superficie-2); border: 1px solid var(--bordo); }
.post__immagine img { width: 100%; max-height: 560px; object-fit: contain; }
.post__stato {
  display: flex; align-items: flex-start; gap: var(--spazio-2); padding: 10px 12px;
  border-radius: var(--raggio-piccolo); background: var(--attenzione-tenue); font-size: 0.875rem;
}
.post__stato .icona { color: var(--attenzione); margin-top: 3px; }
.post__stato--rifiutato { background: var(--errore-tenue); }
.post__stato--rifiutato .icona { color: var(--errore); }
.post__modifica, .commento__modifica { display: flex; flex-direction: column; gap: var(--spazio-2); }
.post__modifica textarea.area-sociale__testo { min-height: 120px; }

.post__piede { display: flex; flex-wrap: wrap; gap: var(--spazio-1); margin: 0 -8px; padding-top: 6px; border-top: 1px solid var(--bordo); }
.azione-sociale {
  display: inline-flex; align-items: center; gap: 6px; min-height: var(--tocco); padding: 0 12px;
  border: 0; border-radius: var(--raggio-piccolo); background: transparent; color: var(--testo-tenue);
  font-size: 0.9375rem; font-weight: 640; cursor: pointer; -webkit-tap-highlight-color: transparent;
  transition: background-color var(--durata), color var(--durata);
}
.azione-sociale:hover:not(:disabled) { background: var(--superficie-2); color: var(--testo); }
.azione-sociale:disabled { cursor: default; opacity: 0.55; }
.azione-sociale--attiva { color: var(--accento); }
.azione-sociale[aria-pressed="true"], .azione-sociale[aria-pressed="true"]:hover:not(:disabled) { color: var(--cuore); }
.azione-sociale[aria-pressed="true"] .icona { animation: battito 260ms ease-out; }
.azione-sociale--ferma { cursor: default; }
.azione-sociale__conta { font-variant-numeric: tabular-nums; font-weight: 720; }
@keyframes battito { 0% { transform: scale(1); } 45% { transform: scale(1.25); } 100% { transform: scale(1); } }

/* ---- Commenti e risposte ---- */
.commenti { display: flex; flex-direction: column; gap: var(--spazio-3); padding: var(--spazio-3) 0 var(--spazio-2); border-top: 1px solid var(--bordo); }
.commenti__elenco { display: flex; flex-direction: column; gap: var(--spazio-3); }
.commenti__filo { display: flex; flex-direction: column; gap: var(--spazio-2); }
.commenti__risposte { display: flex; flex-direction: column; gap: var(--spazio-2); padding-left: 42px; }
.commento { display: flex; align-items: flex-start; gap: 10px; }
.commento__corpo { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.commento__bolla { align-self: flex-start; max-width: 100%; padding: 8px 14px 10px; border-radius: 4px 16px 16px 16px; background: var(--superficie-2); }
.commento__nome { font-size: 0.875rem; line-height: 1.4; }
.commento__bolla .testo-sociale { font-size: 0.9375rem; line-height: 1.5; }
.commento__azioni { display: flex; flex-wrap: wrap; align-items: center; gap: 0 2px; padding-left: 6px; color: var(--testo-tenue); font-size: 0.8125rem; }
.commento__azioni .quando { margin-right: 4px; }
.commento__nota { margin-right: 4px; }
.azione-testo {
  display: inline-flex; align-items: center; gap: 4px; min-height: 32px; padding: 0 8px;
  border: 0; border-radius: 8px; background: none; color: var(--testo-tenue);
  font-size: 0.8125rem; font-weight: 720; cursor: pointer;
}
.azione-testo:hover:not(:disabled) { background: var(--superficie-2); color: var(--testo); }
.azione-testo:disabled { cursor: default; opacity: 0.55; }
.azione-testo[aria-pressed="true"], .azione-testo[aria-pressed="true"]:hover:not(:disabled) { color: var(--cuore); }
.azione-testo__conta { margin-left: 2px; font-variant-numeric: tabular-nums; }
.commento__menu .pulsante-icona { width: 32px; height: 32px; }
.commento__menu .pulsante-icona .icona { width: 18px; height: 18px; }

.scrivi-commento { display: flex; align-items: flex-start; gap: 10px; }
.scrivi-commento__area { flex: 1; }
.scrivi-commento textarea.area-sociale__testo { min-height: 40px; padding: 8px 14px; border-radius: 20px; background: var(--superficie-2); border-color: transparent; }
.scrivi-commento textarea.area-sociale__testo:hover { border-color: var(--bordo-forte); }
.scrivi-commento textarea.area-sociale__testo:focus-visible { background: var(--superficie); border-color: var(--accento); }
.scrivi-commento__azioni { display: flex; align-items: center; }
.scrivi-commento__azioni .pulsante-icona { width: 40px; height: 40px; }
.scrivi-commento__invia { color: var(--accento); }
.scrivi-commento__invia:disabled { opacity: 0.4; cursor: default; }
.scrivi-commento__invia .giro { color: var(--accento); }

/* ---- Colonna destra: scheda della community e classifica ---- */
.scheda-community { display: flex; flex-direction: column; gap: var(--spazio-3); overflow: hidden; }
.scheda-community::before {
  content: ""; display: block; height: 72px; margin: -20px -20px 0;
  background: linear-gradient(135deg, var(--primario), color-mix(in oklab, var(--primario) 52%, #0B1F44));
}
@media (min-width: 640px) { .scheda-community::before { margin: -24px -24px 0; } }
.scheda-community__testa { display: flex; flex-direction: column; align-items: flex-start; gap: var(--spazio-2); margin-top: -40px; }
.scheda-community__segno, .scheda-community__logo {
  width: 60px; height: 60px; border-radius: 16px; border: 3px solid var(--superficie); background: var(--superficie); box-shadow: var(--ombra);
}
.scheda-community__segno { display: grid; place-items: center; color: var(--accento); font-size: 1.5rem; font-weight: 800; }
.scheda-community__logo { object-fit: contain; padding: 4px; }
.scheda-community__testi { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.scheda-community__nome { font-size: 1.125rem; }
.scheda-community__membri { display: flex; align-items: center; gap: 6px; color: var(--testo-tenue); font-size: 0.875rem; font-weight: 640; }
.scheda-community__regole { display: flex; align-items: flex-start; gap: var(--spazio-2); padding: 10px 12px; border-radius: var(--raggio-piccolo); background: var(--superficie-2); font-size: 0.875rem; }
.scheda-community__regole .icona { color: var(--successo); margin-top: 2px; }

.classifica__elenco { display: flex; flex-direction: column; gap: 2px; margin: 0 -6px; }
.classifica__voce { display: flex; align-items: center; gap: 10px; min-height: 44px; padding: 4px 6px; border-radius: var(--raggio-piccolo); }
.classifica__posizione {
  flex: none; display: grid; place-items: center; width: 26px; height: 26px; border-radius: 50%;
  background: var(--superficie-2); color: var(--testo-tenue); font-size: 0.8125rem; font-weight: 780;
}
.classifica__posizione--1 { background: #F5C542; color: #3D2E00; }
.classifica__posizione--2 { background: #CBD3DE; color: #253040; }
.classifica__posizione--3 { background: #E3A877; color: #3B2310; }
.classifica__nome { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-weight: 640; }
.classifica__punti { flex: none; color: var(--testo-tenue); font-size: 0.8125rem; font-variant-numeric: tabular-nums; }

/* ---- Pagina di un post ---- */
.pagina-post { width: 100%; max-width: 760px; margin-inline: auto; }
.pagina-post__torna {
  display: inline-flex; align-items: center; gap: 6px; align-self: flex-start; min-height: var(--tocco);
  color: var(--testo-tenue); font-weight: 650; text-decoration: none;
}
.pagina-post__torna:hover { color: var(--testo); }

/* ==== Pannello: community (piano 5, Task 5) ==== */
.community-admin h2 { font-size: 1.25rem; }
.community-admin .scheda__titolo { font-size: 1.125rem; }

/* andamento in alto */
.cruscotto { display: flex; flex-direction: column; gap: var(--spazio-4); }
.cruscotto__testa { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: var(--spazio-3); }
.cruscotto__periodo { flex: 0 1 240px; min-width: 0; }
.cruscotto__date { display: grid; gap: var(--spazio-3); grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: end; }
.cruscotto__date .pulsante { grid-column: 1 / -1; justify-self: start; }
@media (min-width: 640px) { .cruscotto__date { grid-template-columns: minmax(0, 200px) minmax(0, 200px) auto; } .cruscotto__date .pulsante { grid-column: auto; } }
.numeri--quattro { grid-template-columns: repeat(2, minmax(0, 1fr)); }
@media (min-width: 900px) { .numeri--quattro { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.numeri--quattro .numero { box-shadow: none; background: var(--superficie-2); border-color: transparent; }
.numeri--carica dd { opacity: 0.5; }

/* sezioni della community: pillole che scorrono sul telefono */
.schede-community { margin: 0 calc(-1 * var(--spazio-4)); }
@media (min-width: 640px) { .schede-community { margin: 0; } }
.schede-community__elenco {
  display: flex; gap: var(--spazio-1); overflow-x: auto; overscroll-behavior-x: contain; scrollbar-width: none;
  padding: 4px var(--spazio-4); scroll-padding-inline: var(--spazio-4);
}
@media (min-width: 640px) { .schede-community__elenco { flex-wrap: wrap; overflow: visible; padding: 0; } }
.schede-community__elenco::-webkit-scrollbar { display: none; }
.schede-community__elenco > li { flex: none; }
.schede-community__voce {
  display: inline-flex; align-items: center; gap: var(--spazio-2); min-height: var(--tocco); padding: 0 14px;
  border: 1px solid var(--bordo); border-radius: var(--raggio-pieno); background: var(--superficie);
  color: var(--testo-tenue); font-weight: 640; text-decoration: none; white-space: nowrap;
}
.schede-community__voce:hover { color: var(--testo); background: var(--superficie-2); text-decoration: none; }
.schede-community__voce[aria-current="page"] { border-color: var(--accento); color: var(--testo); background: var(--accento-tenue); }
.schede-community__conta {
  display: inline-grid; place-items: center; min-width: 22px; height: 22px; padding: 0 6px; border-radius: var(--raggio-pieno);
  background: var(--attenzione); color: #FFF; font-size: 0.75rem; font-weight: 780; font-variant-numeric: tabular-nums;
}
/* nel tema scuro l'arancio è chiaro: il numero va scuro */
[data-tema="scuro"] .schede-community__conta { color: #2B1800; }

/* elenco dei canali */
.elenco-canali { display: flex; flex-direction: column; background: var(--superficie); border: 1px solid var(--bordo); border-radius: var(--raggio); box-shadow: var(--ombra); }
.dettagli-avanzati .elenco-canali { margin-top: var(--spazio-3); box-shadow: none; }
.riga-canale { display: flex; align-items: flex-start; gap: var(--spazio-3); padding: 12px 8px 12px 14px; }
.riga-canale + .riga-canale { border-top: 1px solid var(--bordo); }
.riga-canale__segno {
  flex: none; display: grid; place-items: center; width: 40px; height: 40px; border-radius: 12px;
  background: var(--accento-medio); color: var(--testo); font-weight: 780;
}
.riga-canale__testi { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 4px; }
.riga-canale__nome { font-weight: 700; font-size: 1.0625rem; color: var(--testo); overflow-wrap: anywhere; }
.riga-canale__descrizione { color: var(--testo-tenue); font-size: 0.875rem; overflow-wrap: anywhere; }
.riga-canale__dati { display: flex; flex-wrap: wrap; align-items: center; gap: 4px var(--spazio-2); }
.riga-canale__azioni { flex: none; display: flex; align-items: center; }
@media (max-width: 479.98px) {
  .riga-canale { flex-wrap: wrap; padding-left: 12px; }
  .riga-canale__segno { display: none; }
  .riga-canale__testi { flex-basis: calc(100% - 140px); }
}

/* post e segnalazioni da decidere */
.elenco-schede { display: flex; flex-direction: column; gap: var(--spazio-3); }
.post-admin, .segnalazione { display: flex; flex-direction: column; gap: var(--spazio-3); }
.post-admin__testa { display: flex; align-items: center; gap: var(--spazio-3); }
.post-admin__chi { flex: 1; min-width: 0; display: flex; flex-direction: column; }
.post-admin__dove { color: var(--testo-tenue); font-size: 0.8125rem; }
.post-admin__dove a { color: inherit; font-weight: 650; }
.post-admin__testo, .segnalazione__testo { line-height: 1.6; }
.post-admin__immagine { display: block; align-self: flex-start; max-width: 100%; border-radius: var(--raggio-piccolo); overflow: hidden; background: var(--superficie-2); border: 1px solid var(--bordo); }
.post-admin__immagine img { display: block; max-width: 100%; max-height: 360px; width: auto; height: auto; object-fit: contain; }
.post-admin__stato { display: flex; flex-wrap: wrap; gap: var(--spazio-2); }
.filtri-post { display: flex; flex-wrap: wrap; align-items: flex-end; gap: var(--spazio-3); }
.filtri-post .campo { min-width: min(100%, 260px); }
.filtri-post > .scelta-segmenti { align-self: flex-end; }
.segnalazione__testo { padding: 10px 14px; border-left: 3px solid var(--bordo-forte); background: var(--superficie-2); border-radius: 0 var(--raggio-piccolo) var(--raggio-piccolo) 0; }
.post-admin__azioni { display: flex; flex-wrap: wrap; align-items: center; gap: var(--spazio-2); padding-top: var(--spazio-3); border-top: 1px solid var(--bordo); }
.segnalazione__testa { display: flex; flex-wrap: wrap; align-items: center; gap: var(--spazio-2); }
.segnalazione__dettagli { display: flex; flex-direction: column; gap: var(--spazio-2); }
.segnalazione__conta { display: flex; align-items: center; gap: 6px; font-weight: 650; }
.segnalazione__conta .icona { color: var(--attenzione); }
.segnalazione__motivi { margin: 4px 0 0; padding-left: 1.25em; overflow-wrap: anywhere; }

/* due o più scelte una accanto all'altra */
.scelta-segmenti { display: inline-flex; align-self: flex-start; padding: 3px; gap: 2px; border-radius: var(--raggio-pieno); background: var(--superficie-2); border: 1px solid var(--bordo); }
.scelta-segmenti__voce {
  min-height: 40px; padding: 0 16px; border: 0; border-radius: var(--raggio-pieno); background: none;
  color: var(--testo-tenue); font-weight: 650; cursor: pointer;
}
.scelta-segmenti__voce:hover { color: var(--testo); }
.scelta-segmenti__voce[aria-pressed="true"] { background: var(--superficie); color: var(--testo); box-shadow: var(--ombra); }

/* persone: membri, richieste, sospesi, risultati della ricerca */
.elenco-persone { display: flex; flex-direction: column; }
.elenco-persone.scheda { padding: 4px 16px; }
.riga-persona { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--spazio-2) var(--spazio-3); padding: 10px 0; }
.riga-persona + .riga-persona { border-top: 1px solid var(--bordo); }
.riga-persona__azioni { display: flex; flex-wrap: wrap; gap: var(--spazio-2); margin-left: auto; }
.persona-admin { flex: 1 1 220px; min-width: 0; display: flex; align-items: flex-start; gap: var(--spazio-3); }
.persona-admin__testi { min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.persona-admin__nome { font-weight: 680; overflow-wrap: anywhere; }
.persona-admin__email { color: var(--testo-tenue); font-size: 0.875rem; overflow-wrap: anywhere; }
.persona-admin__motivo { white-space: pre-wrap; overflow-wrap: anywhere; }
.risultati-clienti { max-height: min(46vh, 360px); overflow-y: auto; padding-right: 4px; }
.risultati-clienti .casella__descrizione { overflow-wrap: anywhere; }
.scelta-persona { padding: 10px 12px; border-radius: var(--raggio-piccolo); background: var(--accento-tenue); }
.campo--parole .campo__controllo { font-family: ui-monospace, "Cascadia Code", Consolas, monospace; font-size: 0.9375rem; line-height: 1.6; }

/* ---- Notifiche: campanella nella testata e pagina dell'elenco ---- */
.riga--centro { display: flex; justify-content: center; }
.campanella {
  position: relative; display: inline-grid; place-items: center; flex: none; width: var(--tocco); height: var(--tocco);
  border-radius: var(--raggio-piccolo); color: var(--testo-tenue); text-decoration: none;
  transition: background-color var(--durata), color var(--durata);
}
.campanella:hover { background: var(--superficie-2); color: var(--testo); text-decoration: none; }
.campanella__numero {
  position: absolute; top: 4px; right: 2px; min-width: 18px; height: 18px; padding: 0 5px; box-sizing: border-box;
  display: inline-flex; align-items: center; justify-content: center; border-radius: var(--raggio-pieno);
  background: var(--errore); color: #fff; font-size: 0.6875rem; font-weight: 760; line-height: 1; font-variant-numeric: tabular-nums;
  border: 2px solid var(--superficie);
}
.notifiche-pagina { display: flex; flex-direction: column; gap: var(--spazio-4); max-width: 720px; margin-inline: auto; width: 100%; }
.notifiche-pagina__testa { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: var(--spazio-3); }
.notifiche-pagina__testa .intestazione { flex: 1 1 260px; min-width: 0; }
.notifiche-pagina__testa h1 { font-size: clamp(1.5rem, 1.3rem + 1vw, 2rem); }
.elenco-notifiche { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: var(--spazio-2); }
.voce-notifica {
  display: flex; align-items: flex-start; gap: var(--spazio-3); padding: 14px 16px; min-height: var(--tocco);
  border: 1px solid var(--bordo); border-radius: var(--raggio); background: var(--superficie); color: var(--testo); text-decoration: none;
}
a.voce-notifica:hover { border-color: var(--bordo-forte); background: var(--superficie-2); text-decoration: none; }
.voce-notifica--nuova { border-color: var(--accento-medio); background: var(--accento-tenue); }
.voce-notifica__icona { display: inline-grid; place-items: center; flex: none; width: 36px; height: 36px; border-radius: var(--raggio-pieno); background: var(--superficie-2); color: var(--accento); }
.voce-notifica__corpo { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.voce-notifica__titolo { font-weight: 700; overflow-wrap: anywhere; }
.voce-notifica__testo { color: var(--testo-tenue); overflow-wrap: anywhere; }
.voce-notifica__quando { color: var(--testo-tenue); font-size: 0.8125rem; }
.voce-notifica__punto { flex: none; width: 10px; height: 10px; margin-top: 8px; border-radius: var(--raggio-pieno); background: var(--accento); }

/* ---- Notifiche push nel profilo (Task 7) ---- */
.interruttore-push__nota, .interruttore-push__esito { margin: 0 0 var(--spazio-2); overflow-wrap: anywhere; }
.interruttore-push__nota { color: var(--testo); }
.interruttore-push__esito { color: var(--successo); }
.interruttore-push__esito--errore { color: var(--errore); }

/* ---- Messaggi (Task 9): elenco e conversazione, anche nella casella dello staff ---- */
/* nel tema scuro il rosso è chiaro: il numero sopra le icone va scuro */
[data-tema="scuro"] .campanella__numero { color: #2A0A0A; }
.icona-messaggi[aria-current="page"] { color: var(--accento); background: var(--accento-tenue); }
.barra-basso__icona { position: relative; display: inline-flex; }
.barra-basso__icona .campanella__numero { top: -7px; right: -13px; }

.campo-cerca { position: relative; }
.campo-cerca .icona { position: absolute; left: 14px; top: 50%; transform: translateY(-50%); color: var(--testo-tenue); pointer-events: none; }
.campo-cerca input { padding-left: 44px; }

.messaggi { display: flex; flex-direction: column; gap: var(--spazio-4); min-width: 0; }
.messaggi__testa { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--spazio-3); }
.messaggi__testa h1 { font-size: clamp(1.5rem, 1.3rem + 1vw, 2rem); }
.messaggi__testa > .pila { flex: 1 1 280px; min-width: 0; }
.messaggi__azioni { display: flex; flex-wrap: wrap; gap: var(--spazio-2); }
@media (max-width: 479.98px) {
  .messaggi__azioni { width: 100%; }
  .messaggi__azioni .pulsante { flex: 1 1 auto; padding-inline: 12px; }
}
.messaggi__griglia { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--spazio-4); min-height: 0; }
.messaggi__elenco, .messaggi__conversazione {
  min-width: 0; min-height: 0; background: var(--superficie); border: 1px solid var(--bordo); border-radius: var(--raggio); box-shadow: var(--ombra);
}
.messaggi__elenco { padding: 6px; }
.messaggi__elenco > .vuoto, .messaggi__elenco > .avviso { margin: var(--spazio-3); }
.messaggi__conversazione { display: flex; flex-direction: column; overflow: hidden; }
.messaggi__conversazione > .vuoto { margin: auto; padding: var(--spazio-5); }
.messaggi__conversazione > .avviso { margin: var(--spazio-4); }

/* telefono: l'elenco oppure la conversazione, che riempie lo spazio tra la testata e la barra in basso */
@media (max-width: 767.98px) {
  .messaggi:not(.messaggi--aperta) .messaggi__conversazione { display: none; }
  .messaggi--aperta .messaggi__elenco, .messaggi--aperta .messaggi__testa, .messaggi--aperta .messaggi__sospeso { display: none; }
  .messaggi--aperta { height: calc(100dvh - 65px - 32px - 96px - env(safe-area-inset-bottom)); min-height: 360px; }
  .messaggi--aperta .messaggi__griglia { flex: 1; }
  .messaggi--admin.messaggi--aperta { height: calc(100dvh - 61px - 24px - 48px); }
}
/* computer: elenco a sinistra, conversazione a destra, alti quanto la finestra */
@media (min-width: 768px) {
  .messaggi { height: calc(100dvh - 65px - 32px - 48px); min-height: 520px; }
  .messaggi--admin { height: calc(100dvh - 61px - 24px - 48px); }
  .messaggi__griglia { flex: 1; grid-template-columns: 300px minmax(0, 1fr); }
  .messaggi__elenco { overflow-y: auto; }
  .conversazione__indietro { display: none; }
}
@media (min-width: 1024px) {
  .messaggi__griglia { grid-template-columns: 340px minmax(0, 1fr); }
  .messaggi--admin { height: calc(100dvh - 32px - 48px); }
}

/* elenco delle conversazioni */
.elenco-conversazioni { display: flex; flex-direction: column; gap: 2px; }
.voce-conversazione {
  display: flex; align-items: center; gap: var(--spazio-3); min-height: 64px; padding: 10px; border-radius: var(--raggio-piccolo);
  color: var(--testo); text-decoration: none; transition: background-color var(--durata);
}
.voce-conversazione:hover { background: var(--superficie-2); text-decoration: none; }
.voce-conversazione--attiva, .voce-conversazione--attiva:hover { background: var(--accento-tenue); }
.voce-conversazione__testi { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.voce-conversazione__riga { display: flex; align-items: center; justify-content: space-between; gap: var(--spazio-2); min-width: 0; }
.voce-conversazione__nome { font-weight: 660; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.voce-conversazione--nuova .voce-conversazione__nome { font-weight: 800; }
.voce-conversazione__quando { flex: none; color: var(--testo-tenue); font-size: 0.75rem; }
.voce-conversazione__anteprima { min-width: 0; color: var(--testo-tenue); font-size: 0.875rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.voce-conversazione--nuova .voce-conversazione__anteprima { color: var(--testo); font-weight: 600; }
.voce-conversazione__conta {
  flex: none; display: inline-grid; place-items: center; min-width: 20px; height: 20px; padding: 0 6px; border-radius: var(--raggio-pieno);
  background: var(--primario); color: var(--testo-primario); font-size: 0.6875rem; font-weight: 780; font-variant-numeric: tabular-nums;
}
.avatar-messaggi--staff { background: var(--accento-tenue); color: var(--accento); }

/* conversazione aperta */
.conversazione { flex: 1; min-height: 0; display: flex; flex-direction: column; }
.conversazione__testa { display: flex; align-items: center; gap: var(--spazio-3); padding: 10px 12px; border-bottom: 1px solid var(--bordo); }
.conversazione__indietro { flex: none; margin-left: -4px; }
.conversazione__chi { flex: 1; min-width: 0; display: flex; flex-direction: column; }
.conversazione__nome { font-size: 1.0625rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.conversazione__dettaglio { color: var(--testo-tenue); font-size: 0.8125rem; }

.bolle {
  flex: 1; min-height: 0; overflow-y: auto; overscroll-behavior: contain; display: flex; flex-direction: column;
  padding: var(--spazio-4) var(--spazio-3); background: color-mix(in srgb, var(--sfondo) 70%, var(--superficie));
}
.bolle:focus-visible { outline: 2px solid var(--anello); outline-offset: -2px; }
.bolle > :first-child { margin-top: auto; }
.bolle__inizio { margin-bottom: var(--spazio-3); text-align: center; color: var(--testo-tenue); font-size: 0.875rem; }
.bolle__elenco { display: flex; flex-direction: column; gap: 4px; }
.bolle__giorno { align-self: center; margin: var(--spazio-3) 0 var(--spazio-2); }
.bolle__giorno span { display: inline-block; padding: 2px 10px; border-radius: var(--raggio-pieno); background: var(--superficie-2); color: var(--testo-tenue); font-size: 0.75rem; font-weight: 650; }
.bolla { align-self: flex-start; max-width: min(82%, 560px); display: flex; flex-direction: column; }
.bolla--mia { align-self: flex-end; align-items: flex-end; }
.bolla__nome { margin: 6px 4px 2px; color: var(--testo-tenue); font-size: 0.8125rem; font-weight: 650; }
.bolla__corpo {
  padding: 8px 12px 5px; border-radius: 16px 16px 16px 6px; background: var(--superficie); border: 1px solid var(--bordo);
  color: var(--testo); line-height: 1.45; min-width: 64px;
}
.bolla--mia .bolla__corpo { border-radius: 16px 16px 6px 16px; background: var(--primario); border-color: transparent; color: var(--testo-primario); }
.bolla--mia .testo-sociale a { color: inherit; text-decoration: underline; }
.bolla__ora { display: block; margin-top: 2px; text-align: right; font-size: 0.6875rem; opacity: 0.78; font-variant-numeric: tabular-nums; }
.bolla__eliminato { font-style: italic; opacity: 0.8; }

/* campo per scrivere */
.scrivi-messaggio { padding: 10px 12px; border-top: 1px solid var(--bordo); background: var(--superficie); }
.scrivi-messaggio__riga { display: flex; align-items: flex-end; gap: var(--spazio-2); }
textarea.scrivi-messaggio__testo { flex: 1; min-width: 0; min-height: var(--tocco); max-height: 160px; padding-block: 10px; }
.scrivi-messaggio__invia { flex: none; color: var(--accento); }
.scrivi-messaggio__invia:disabled { color: var(--testo-tenue); }
.scrivi-messaggio__aiuto { margin: 4px 0 0; color: var(--testo-tenue); font-size: 0.75rem; }
.scrivi-messaggio__errore { margin: 0 0 var(--spazio-2); }
.scrivi-messaggio__nota { margin: 10px 12px; }

/* ricerca di un iscritto o di un cliente */
.risultati-membri { max-height: min(46vh, 360px); overflow-y: auto; margin: 0 -6px; padding: 0 2px; }
.elenco-membri { display: flex; flex-direction: column; gap: 2px; }
.voce-membro {
  width: 100%; display: flex; align-items: center; gap: var(--spazio-3); min-height: 52px; padding: 8px 10px;
  border: 0; border-radius: var(--raggio-piccolo); background: none; color: var(--testo); text-align: left; font: inherit; cursor: pointer;
}
.voce-membro:hover:not(:disabled) { background: var(--superficie-2); }
.voce-membro:disabled { cursor: default; }
.voce-membro--spenta .avatar { filter: grayscale(1); opacity: 0.6; }
.voce-membro--spenta .voce-membro__nome { color: var(--testo-tenue); }
.voce-membro__testi { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.voce-membro__nome { font-weight: 660; overflow-wrap: anywhere; }
.voce-membro__motivo { color: var(--testo-tenue); font-size: 0.8125rem; overflow-wrap: anywhere; }
.voce-membro > .icona { flex: none; color: var(--testo-tenue); }

/* scheda Amici del profilo */
.riga-amico { display: flex; flex-wrap: wrap; align-items: center; gap: var(--spazio-2) var(--spazio-3); padding: 10px 6px; }
.riga-amico + .riga-amico { border-top: 1px solid var(--bordo); }
.riga-amico__testi { flex: 1 1 160px; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.riga-amico__nome { font-weight: 680; overflow-wrap: anywhere; }
.riga-amico__azioni { display: flex; flex-wrap: wrap; gap: var(--spazio-2); margin-left: auto; }

/* segnalare un messaggio preciso: pulsante accanto alla bolla, scelta dal menu, citazione nella finestra (Task 9, giro 1) */
.bolla__fila { display: flex; align-items: flex-end; gap: 2px; max-width: 100%; }
.bolla__fila > .bolla__corpo { min-width: 64px; }
.bolla__segnala { flex: none; width: 32px; height: 32px; min-width: 32px; min-height: 32px; color: var(--testo-tenue); opacity: 0.55; }
.bolla__segnala:hover, .bolla__segnala:focus-visible { opacity: 1; color: var(--testo); }
.conversazione__nome:focus, .messaggi__testa h1:focus { outline: none; }
.conversazione__nome:focus-visible, .messaggi__testa h1:focus-visible { outline: 2px solid var(--anello); outline-offset: 2px; border-radius: 4px; }
.scelta-messaggi { margin: 0; padding: 0; border: 0; display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.scelta-messaggi legend { margin-bottom: var(--spazio-2); padding: 0; }
.scelta-messaggi__voce {
  display: flex; align-items: flex-start; gap: var(--spazio-3); padding: 8px 10px; border: 1px solid var(--bordo);
  border-radius: var(--raggio-piccolo); cursor: pointer; min-width: 0;
}
.scelta-messaggi__voce:has(input:checked) { border-color: var(--accento); background: var(--accento-tenue); }
.scelta-messaggi__voce input { flex: none; margin-top: 3px; width: 18px; height: 18px; accent-color: var(--accento); }
.scelta-messaggi__testi { min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.scelta-messaggi__ora { color: var(--testo-tenue); font-size: 0.8125rem; }
.scelta-messaggi__estratto { overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow-wrap: anywhere; }
.citazione-messaggio { margin: 0; display: flex; flex-direction: column; gap: 4px; }
.citazione-messaggio__chi { color: var(--testo-tenue); font-size: 0.8125rem; font-weight: 650; }
.citazione-messaggio__testo {
  margin: 0; padding: 10px 14px; max-height: 180px; overflow-y: auto; border-left: 3px solid var(--bordo-forte);
  border-radius: 0 var(--raggio-piccolo) var(--raggio-piccolo) 0; background: var(--superficie-2);
}

/* ---- Meeting (Task 12): elenco, pagina, stanza, colonna della community, pannello ---- */
.meeting-pagina h1, .meeting-dettaglio__titolo { font-size: clamp(1.5rem, 1.3rem + 1vw, 2rem); overflow-wrap: anywhere; }
.meeting-sezione__titolo { font-size: 1.125rem; }
.torna-indietro { display: inline-flex; align-items: center; gap: 6px; align-self: flex-start; min-height: 36px; color: var(--testo-tenue); font-weight: 620; text-decoration: none; }
.torna-indietro:hover { color: var(--testo); }

.meeting-filtri { display: grid; gap: var(--spazio-3); grid-template-columns: minmax(0, 1fr); }
.meeting-filtri__giorno { display: flex; align-items: flex-end; gap: var(--spazio-2); flex-wrap: wrap; }
.meeting-filtri__giorno .campo { flex: 1 1 180px; min-width: 0; }
@media (min-width: 640px) { .meeting-filtri { grid-template-columns: minmax(0, 1fr) minmax(0, 280px); align-items: end; } }

.meeting-elenco { display: flex; flex-direction: column; gap: var(--spazio-3); }
.meeting-voce.scheda { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: var(--spazio-2) var(--spazio-4); align-items: start; padding: 16px; }
.meeting-voce__corpo { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.meeting-voce__titolo { font-size: 1.0625rem; line-height: 1.35; overflow-wrap: anywhere; }
.meeting-voce__titolo a { color: inherit; text-decoration: none; }
.meeting-voce__titolo a:hover { text-decoration: underline; }
.meeting-voce__quando { display: flex; align-items: center; gap: 6px; color: var(--testo-tenue); font-size: 0.9375rem; }
.meeting-voce__quando .icona { flex: none; }
.meeting-voce__dati { display: flex; align-items: center; flex-wrap: wrap; gap: 6px var(--spazio-2); }
.meeting-voce__azioni { grid-column: 1 / -1; display: flex; align-items: center; flex-wrap: wrap; gap: var(--spazio-2); }
.meeting-voce__azioni:empty { display: none; }
@media (min-width: 768px) {
  .meeting-voce.scheda { grid-template-columns: auto minmax(0, 1fr) auto; padding: 18px 20px; }
  .meeting-voce__azioni { grid-column: auto; justify-content: flex-end; max-width: 320px; }
}

/* il quadratino della data */
.meeting-data {
  display: inline-flex; flex-direction: column; align-items: center; justify-content: center; flex: none;
  width: 56px; height: 60px; border-radius: var(--raggio-piccolo); background: var(--accento-tenue); color: var(--accento); line-height: 1.1;
}
.meeting-data__numero { font-size: 1.375rem; font-weight: 780; }
.meeting-data__mese { font-size: 0.75rem; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; }

/* stati e segni */
.pillola--meeting-in_programma { background: var(--accento-tenue); color: var(--accento); }
.pillola--meeting-in_corso { background: var(--errore-tenue); color: var(--errore); }
.pillola--meeting-annullato { background: var(--attenzione-tenue); color: var(--attenzione); }
.pillola--iscritto, .pillola--replay { background: var(--successo-tenue); color: var(--successo); }
.punto-diretta { width: 8px; height: 8px; border-radius: 50%; background: currentColor; animation: punto-diretta 1.6s ease-in-out infinite; }
@keyframes punto-diretta { 50% { opacity: 0.35; } }
@media (prefers-reduced-motion: reduce) { .punto-diretta { animation: none; } }

/* pagina del meeting */
.meeting-dettaglio__testa { display: flex; align-items: flex-start; gap: var(--spazio-4); }
.meeting-dettaglio__griglia { display: grid; gap: var(--spazio-5); grid-template-columns: minmax(0, 1fr); align-items: start; }
.meeting-dettaglio__principale:empty { display: none; }
@media (min-width: 900px) { .meeting-dettaglio__griglia { grid-template-columns: minmax(0, 1fr) 340px; } .meeting-porta { position: sticky; top: 88px; } }
@media (max-width: 899.98px) { .meeting-porta { order: -1; } }
.meeting-porta { display: flex; flex-direction: column; gap: var(--spazio-4); }
.meeting-porta__dati { margin: 0; display: flex; flex-direction: column; gap: var(--spazio-2); }
.meeting-porta__dati div { display: flex; align-items: flex-start; gap: var(--spazio-2); }
.meeting-porta__dati dt { color: var(--accento); padding-top: 2px; flex: none; }
.meeting-porta__dati dd { margin: 0; min-width: 0; }
.meeting-porta__nota { font-weight: 650; }
.meeting-porta__iscrizione { display: flex; align-items: center; flex-wrap: wrap; gap: var(--spazio-2); }
.meeting-porta__iscrizione:empty { display: none; }
.meeting-porta .pulsante[disabled] { opacity: 1; background: var(--superficie-2); color: var(--testo-tenue); border-color: var(--bordo); }

/* conto alla rovescia */
.conto { display: flex; flex-direction: column; gap: var(--spazio-2); }
.conto__titolo { color: var(--testo-tenue); font-size: 0.875rem; font-weight: 680; text-transform: uppercase; letter-spacing: 0.05em; }
.conto__caselle { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); gap: var(--spazio-2); }
.conto__casella { display: flex; flex-direction: column; align-items: center; padding: 10px 4px; border-radius: var(--raggio-piccolo); background: var(--superficie-2); }
.conto__numero { font-size: 1.5rem; font-weight: 780; font-variant-numeric: tabular-nums; line-height: 1.1; }
.conto__unita { color: var(--testo-tenue); font-size: 0.75rem; }

/* stanza */
.pagina-stanza__testa { display: flex; align-items: center; flex-wrap: wrap; gap: var(--spazio-2) var(--spazio-4); }
.pagina-stanza__titolo { font-size: 1.25rem; overflow-wrap: anywhere; min-width: 0; }
.stanza { position: relative; width: 100%; height: min(calc(100dvh - 210px), 860px); min-height: 460px; border-radius: var(--raggio); overflow: hidden; background: #050A14; box-shadow: var(--ombra); }
@media (max-width: 639.98px) { .stanza { margin-inline: calc(var(--spazio-4) * -1); width: calc(100% + var(--spazio-4) * 2); border-radius: 0; height: calc(100dvh - 200px); min-height: 420px; } }
.stanza__ui { position: absolute; inset: 0; }
.stanza__ui[hidden] { display: none; }
.stanza__ui rtk-meeting { display: block; width: 100%; height: 100%; }
.stanza__stato { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: var(--spazio-3); padding: var(--spazio-4); background: var(--superficie); text-align: center; }
.stanza.stanza--prova {
  display: flex; align-items: center; justify-content: center; height: auto; min-height: 360px;
  background: radial-gradient(120% 90% at 50% 0%, color-mix(in srgb, var(--primario) 38%, #050A14), #050A14 70%);
}
.stanza__prova { display: flex; flex-direction: column; align-items: center; gap: var(--spazio-3); max-width: 52ch; padding: var(--spazio-6) var(--spazio-4); text-align: center; color: #C9D3E6; }
.stanza__prova-icona { display: inline-flex; padding: 14px; border-radius: 50%; background: rgba(255, 255, 255, 0.1); color: #FFF; }
.stanza__prova-titolo { color: #FFF; font-size: 1.25rem; }
.stanza__prova .pulsante--secondario { background: #FFF; color: #0B1220; border-color: #FFF; }

/* meeting imminenti nella colonna sinistra della community (solo da computer: sul telefono c'è la voce Meeting in basso) */
.meeting-imminenti .scheda__testa { margin-bottom: var(--spazio-3); }
.meeting-imminenti .scheda__titolo { font-size: 1.0625rem; }
.meeting-imminenti__elenco { display: flex; flex-direction: column; gap: var(--spazio-3); }
.meeting-imminenti__voce { display: flex; align-items: flex-start; gap: var(--spazio-3); min-width: 0; }
.meeting-imminenti__voce .meeting-data { width: 44px; height: 48px; }
.meeting-imminenti__voce .meeting-data__numero { font-size: 1.0625rem; }
.meeting-imminenti__voce .meeting-data__mese { font-size: 0.6875rem; }
.meeting-imminenti__testi { display: flex; flex-direction: column; align-items: flex-start; gap: 2px; min-width: 0; }
.meeting-imminenti__titolo { font-weight: 680; color: inherit; text-decoration: none; overflow-wrap: anywhere; line-height: 1.35; }
.meeting-imminenti__titolo:hover { text-decoration: underline; }
.meeting-imminenti__tutti { display: inline-flex; align-items: center; gap: 4px; margin-top: var(--spazio-3); min-height: 32px; font-weight: 650; }
@media (max-width: 1023.98px) { .meeting-imminenti { display: none; } }

/* pannello */
.meeting-diretta__azioni { flex-wrap: wrap; gap: var(--spazio-2); }
.meeting-iscritti { display: flex; flex-direction: column; }
.meeting-iscritti__voce { display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px var(--spazio-2); padding: 8px 0; border-bottom: 1px solid var(--bordo); min-width: 0; overflow-wrap: anywhere; }
.meeting-iscritti__voce:last-child { border-bottom: 0; }
.meeting-iscritti__nome { font-weight: 650; }
.meeting-replay-admin__nota { padding: 10px 14px; border-radius: var(--raggio-piccolo); background: var(--superficie-2); color: var(--testo-tenue); }
.meeting-replay-admin__nota--errore { background: var(--errore-tenue); color: var(--errore); }
.meeting-replay-admin__riga { display: flex; align-items: flex-start; gap: var(--spazio-2); flex-wrap: wrap; }
.meeting-replay-admin__riga .campo { flex: 1 1 260px; min-width: 0; }
.meeting-replay-admin__riga .pulsante { margin-top: 28px; }

/* ==== Aiuto e supporto (Task 14) ==== */
/* menu Altro: nella testata da computer ha l'aspetto delle altre voci */
.menu-altro--testata > .pulsante {
  min-height: var(--tocco); padding: 0 10px 0 14px; gap: 4px; border: 0; border-radius: var(--raggio-piccolo);
  background: none; box-shadow: none; color: var(--testo-tenue); font-weight: 620;
}
.menu-altro--testata > .pulsante:hover { color: var(--testo); background: var(--superficie-2); }
.menu-altro--testata.menu-altro--attivo > .pulsante { color: var(--testo); background: var(--accento-tenue); }
.menu-altro--testata > .pulsante .icona { width: 18px; height: 18px; }

/* pagina Aiuto (anche senza accesso, dentro Pubblica) */
.aiuto { width: 100%; max-width: 820px; margin-inline: auto; display: flex; flex-direction: column; gap: var(--spazio-5); }
.aiuto--pubblica { align-self: start; padding-top: var(--spazio-2); }
.aiuto__marchio { display: flex; align-items: center; gap: var(--spazio-2); color: var(--testo-tenue); font-weight: 700; }
.aiuto__marchio img { max-height: 36px; width: auto; }
.aiuto__testa { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: var(--spazio-3) var(--spazio-4); }
.aiuto__testa .intestazione { flex: 1 1 320px; min-width: 0; }
.aiuto__azioni { display: flex; flex-wrap: wrap; gap: var(--spazio-2); }
@media (max-width: 479.98px) {
  .aiuto__azioni { width: 100%; }
  .aiuto__azioni .pulsante { flex: 1 1 auto; padding-inline: 12px; }
}
.aiuto__cerca .campo { max-width: 560px; }
.aiuto__argomenti { display: flex; flex-direction: column; gap: var(--spazio-5); }
.aiuto-argomento { display: flex; flex-direction: column; gap: var(--spazio-2); }
.aiuto-argomento__nome { font-size: 1.125rem; }

/* domande a fisarmonica */
.faq { display: flex; flex-direction: column; background: var(--superficie); border: 1px solid var(--bordo); border-radius: var(--raggio); box-shadow: var(--ombra); }
.faq > li + li { border-top: 1px solid var(--bordo); }
.faq__titolo { font-size: 1rem; margin: 0; }
.faq__domanda {
  width: 100%; display: flex; align-items: center; justify-content: space-between; gap: var(--spazio-3); min-height: 56px; padding: 12px 16px;
  border: 0; background: none; color: var(--testo); font: inherit; font-weight: 660; text-align: left; cursor: pointer;
}
.faq__domanda span { min-width: 0; overflow-wrap: anywhere; }
.faq__domanda:hover { background: var(--superficie-2); }
.faq > li:first-child .faq__domanda { border-radius: var(--raggio) var(--raggio) 0 0; }
.faq > li:last-child .faq__voce:not(.faq__voce--aperta) .faq__domanda { border-radius: 0 0 var(--raggio) var(--raggio); }
.faq > li:only-child .faq__voce:not(.faq__voce--aperta) .faq__domanda { border-radius: var(--raggio); }
.faq__freccia { flex: none; color: var(--testo-tenue); transition: transform var(--durata); }
.faq__voce--aperta .faq__freccia { transform: rotate(180deg); }
.faq__pannello { display: flex; flex-direction: column; gap: var(--spazio-4); padding: 0 16px 16px; }
.faq__pannello[hidden] { display: none; }
.faq__risposta { overflow-wrap: anywhere; }
.faq__risposta img { max-width: 100%; height: auto; border-radius: var(--raggio-piccolo); }
.faq__voto { display: flex; flex-wrap: wrap; align-items: center; gap: var(--spazio-2); padding-top: var(--spazio-3); border-top: 1px solid var(--bordo); font-size: 0.9375rem; }
.faq__voto-domanda { font-weight: 650; margin-right: var(--spazio-1); }
.faq__voto-scelta {
  min-height: 36px; min-width: 56px; padding: 0 14px; border: 1px solid var(--bordo-forte); border-radius: var(--raggio-pieno);
  background: var(--superficie); color: var(--testo); font: inherit; font-weight: 650; cursor: pointer;
}
.faq__voto-scelta:hover:not(:disabled) { background: var(--superficie-2); }
.faq__voto-scelta--scelta { border-color: var(--accento); background: var(--accento-tenue); }
.faq__voto-scelta:disabled { cursor: default; opacity: 0.7; }
.faq__esito { flex-basis: 100%; margin: 0; color: var(--testo-tenue); font-size: 0.875rem; }
.faq__esito:empty { display: none; }
.faq__esito--errore { color: var(--errore); }
.faq__voto--entra { color: var(--testo-tenue); }
.faq__voto--entra span { color: var(--testo); font-weight: 650; }

/* riquadro "Non trovi la risposta?" */
.aiuto__altro { display: flex; flex-wrap: wrap; align-items: center; gap: var(--spazio-3) var(--spazio-4); }
.aiuto__altro > .pila { flex: 1 1 260px; min-width: 0; }
.aiuto__altro-icona { display: inline-grid; place-items: center; flex: none; width: 44px; height: 44px; border-radius: var(--raggio-pieno); background: var(--accento-tenue); color: var(--accento); }

/* richieste allo staff */
.richieste { width: 100%; max-width: 820px; margin-inline: auto; }
.richieste.pila--larga { gap: var(--spazio-4); }
.elenco-richieste { display: flex; flex-direction: column; background: var(--superficie); border: 1px solid var(--bordo); border-radius: var(--raggio); box-shadow: var(--ombra); }
.elenco-richieste > li + li { border-top: 1px solid var(--bordo); }
.voce-richiesta { display: flex; align-items: center; gap: var(--spazio-3); min-height: 64px; padding: 12px 14px; color: var(--testo); text-decoration: none; }
.voce-richiesta:hover { background: var(--superficie-2); text-decoration: none; }
.voce-richiesta > .icona { flex: none; color: var(--testo-tenue); }
.voce-richiesta__testi { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 4px; }
.voce-richiesta__oggetto { font-weight: 680; overflow-wrap: anywhere; }
.voce-richiesta__dati { display: flex; flex-wrap: wrap; align-items: center; gap: 4px var(--spazio-2); color: var(--testo-tenue); font-size: 0.8125rem; }
.stato-richiesta {
  display: inline-flex; align-items: center; min-height: 24px; padding: 0 10px; border-radius: var(--raggio-pieno);
  background: var(--superficie-2); color: var(--testo); font-size: 0.8125rem; font-weight: 680; white-space: nowrap;
}
.stato-richiesta--nuovo, .stato-richiesta--attesa_staff { background: var(--accento-tenue); color: var(--accento); }
.stato-richiesta--attesa_cliente { background: var(--attenzione-tenue); color: var(--attenzione); }
.stato-richiesta--chiuso { background: var(--successo-tenue); color: var(--successo); }
.modulo-richiesta { max-width: 680px; }

.richiesta__testa { display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: space-between; gap: var(--spazio-3); }
.richiesta__testi { flex: 1 1 320px; min-width: 0; }
.richiesta__oggetto { font-size: clamp(1.375rem, 1.2rem + 0.8vw, 1.75rem); overflow-wrap: anywhere; }
.richiesta__oggetto:focus { outline: none; }
.richiesta__oggetto:focus-visible { outline: 2px solid var(--anello); outline-offset: 2px; border-radius: 4px; }
.richiesta__dati { display: flex; flex-wrap: wrap; align-items: center; gap: 4px var(--spazio-3); color: var(--testo-tenue); font-size: 0.875rem; }
.richiesta__conversazione, .ticket-admin__conversazione {
  display: flex; flex-direction: column; min-width: 0; overflow: hidden;
  background: var(--superficie); border: 1px solid var(--bordo); border-radius: var(--raggio); box-shadow: var(--ombra);
}
.richiesta__conversazione .bolle, .ticket-admin__conversazione .bolle { flex: none; max-height: min(62vh, 620px); min-height: 160px; }
.richiesta__scrivi { display: flex; flex-direction: column; gap: var(--spazio-3); padding: var(--spazio-3) var(--spazio-4) var(--spazio-4); border-top: 1px solid var(--bordo); }
.richiesta__scrivi textarea { min-height: 96px; }
.richiesta__piede { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: var(--spazio-3); }
.richiesta__piede .area-sociale__conta { margin-right: auto; }
.richiesta__piede--staff { align-items: flex-end; justify-content: space-between; }
.richiesta__dopo { flex: 1 1 240px; max-width: 360px; min-width: 0; }

/* ---- Pannello: supporto ---- */
.filtro-stati { display: flex; gap: var(--spazio-1); overflow-x: auto; scrollbar-width: none; margin: 0 calc(-1 * var(--spazio-4)); padding: 4px var(--spazio-4); }
.filtro-stati::-webkit-scrollbar { display: none; }
@media (min-width: 640px) { .filtro-stati { flex-wrap: wrap; overflow: visible; margin: 0; padding: 0; } }
.filtro-stati__voce { flex: none; font: inherit; font-weight: 640; cursor: pointer; }
.filtro-stati__voce[aria-pressed="true"] { border-color: var(--accento); color: var(--testo); background: var(--accento-tenue); }
.filtro-stati__numero {
  display: inline-grid; place-items: center; min-width: 22px; height: 22px; padding: 0 6px; border-radius: var(--raggio-pieno);
  background: var(--superficie-2); color: var(--testo); font-size: 0.75rem; font-weight: 760; font-variant-numeric: tabular-nums;
}
.filtro-stati__voce[aria-pressed="true"] .filtro-stati__numero { background: var(--superficie); }
.filtri-ticket__argomento { flex: 0 1 260px; min-width: 0; }
.filtri-ticket__cerca { flex: 1 1 260px; min-width: 0; }
.elenco-ticket { display: flex; flex-direction: column; background: var(--superficie); border: 1px solid var(--bordo); border-radius: var(--raggio); box-shadow: var(--ombra); }
.elenco-ticket > li + li { border-top: 1px solid var(--bordo); }
.riga-ticket { display: flex; align-items: center; gap: var(--spazio-3); padding: 12px 14px; color: var(--testo); text-decoration: none; }
.riga-ticket:hover { background: var(--superficie-2); text-decoration: none; }
.riga-ticket > .icona { flex: none; color: var(--testo-tenue); }
.riga-ticket__testi { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 4px; }
.riga-ticket__oggetto { font-weight: 700; overflow-wrap: anywhere; }
.riga-ticket__chi { font-size: 0.875rem; overflow-wrap: anywhere; }
.riga-ticket__dati { display: flex; flex-wrap: wrap; align-items: center; gap: 4px var(--spazio-2); }

.ticket-admin__dati { display: flex; flex-wrap: wrap; align-items: center; gap: var(--spazio-2) var(--spazio-3); margin-top: var(--spazio-1); }
.ticket-admin__griglia { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--spazio-4); align-items: start; }
@media (min-width: 1100px) { .ticket-admin__griglia { grid-template-columns: minmax(0, 1fr) 300px; } }
.ticket-admin__lato .persona-admin__email { overflow-wrap: anywhere; }

.argomento-faq { gap: var(--spazio-3); }
.argomento-faq__testa { display: flex; align-items: flex-start; gap: var(--spazio-3); }
.argomento-faq__testi { flex: 1; min-width: 0; }
.argomento-faq__testi .scheda__titolo { overflow-wrap: anywhere; }
.elenco-faq { display: flex; flex-direction: column; border-top: 1px solid var(--bordo); }
.riga-faq { display: flex; align-items: flex-start; gap: var(--spazio-2); padding: 10px 0; }
.riga-faq + .riga-faq { border-top: 1px solid var(--bordo); }
.riga-faq__testi { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 4px; }
.riga-faq__domanda {
  align-self: flex-start; max-width: 100%; padding: 2px 0; border: 0; background: none; color: var(--testo);
  font: inherit; font-weight: 660; text-align: left; overflow-wrap: anywhere; cursor: pointer;
}
.riga-faq__domanda:hover { text-decoration: underline; }
.riga-faq__dati { display: flex; flex-wrap: wrap; align-items: center; gap: 4px var(--spazio-2); }
.riga-faq__azioni { flex: none; display: flex; align-items: center; }
.frecce .pulsante-icona:disabled { opacity: 0.35; cursor: default; }
.editor-faq .editor-html { grid-template-columns: minmax(0, 1fr); }
.editor-faq .contenuto-lezione { max-height: 40vh; overflow-y: auto; }

/* ==== Recensioni e testimonianze (Task 16) ==== */
:root { --stella: #D97706; }
[data-tema="scuro"] { --stella: #FBBF24; }

/* ---- Stelle in sola lettura ---- */
.stelle { display: inline-flex; align-items: center; gap: 1px; flex: none; color: var(--testo-tenue); line-height: 1; }
.stella--piena { color: var(--stella); fill: currentColor; }

/* ---- Scelta delle stelle: gruppo di radio con legenda ---- */
.stelle-scelta { margin: 0; padding: 0; border: 0; min-width: 0; display: flex; flex-direction: column; gap: var(--spazio-1); }
.stelle-scelta__legenda { padding: 0; font-weight: 600; }
.stelle-scelta__riga { display: flex; flex-wrap: wrap; align-items: center; gap: var(--spazio-1) var(--spazio-3); }
.stelle-scelta__stelle { display: inline-flex; margin-left: -6px; }
.stelle-scelta__voce { position: relative; display: grid; place-items: center; width: var(--tocco); height: var(--tocco); cursor: pointer; }
.stelle-scelta--grandi .stelle-scelta__voce { width: 50px; height: 50px; }
.stelle-scelta__radio { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: pointer; }
.stelle-scelta__stella { display: grid; place-items: center; padding: 2px; border-radius: 8px; color: var(--testo-tenue); transition: color var(--durata), transform var(--durata); }
.stelle-scelta__stella--accesa { color: var(--stella); }
.stelle-scelta__stella--accesa .icona { fill: currentColor; }
.stelle-scelta__voce:hover .stelle-scelta__stella { transform: scale(1.08); }
.stelle-scelta__radio:focus-visible + .stelle-scelta__stella { outline: 2px solid var(--anello); outline-offset: 1px; }
.stelle-scelta__detto { color: var(--testo-tenue); font-size: 0.875rem; font-weight: 600; }
.stelle-scelta--errore .stelle-scelta__stella { color: var(--errore); }
.stelle-scelta--errore .stelle-scelta__stella--accesa { color: var(--stella); }
.stelle-scelta[disabled] .stelle-scelta__voce, .stelle-scelta[disabled] .stelle-scelta__radio { cursor: default; }
@media (prefers-reduced-motion: reduce) { .stelle-scelta__stella { transition: none; } .stelle-scelta__voce:hover .stelle-scelta__stella { transform: none; } }

/* ---- Pagina Testimonianze ---- */
.testimonianze__titolo { font-size: 1.125rem; }
.testimonianze__titolo:focus-visible { outline: 2px solid var(--anello); outline-offset: 2px; border-radius: 4px; }
.elenco-recensioni { display: flex; flex-direction: column; gap: var(--spazio-3); }
.recensione-mia { display: flex; flex-direction: column; gap: var(--spazio-3); scroll-margin-top: 88px; }
.recensione-mia__testa { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--spazio-2) var(--spazio-3); }
.recensione-mia__corso { flex: 1 1 200px; min-width: 0; font-size: 1rem; overflow-wrap: anywhere; }
.recensione-mia__dati { display: flex; flex-wrap: wrap; align-items: center; gap: var(--spazio-2) var(--spazio-3); }
.recensione__testo { color: var(--testo); }
.modulo-recensione { padding-top: var(--spazio-3); border-top: 1px solid var(--bordo); }
.modulo-recensione textarea { min-height: 120px; }
.casella-recensione { display: flex; align-items: flex-start; gap: var(--spazio-3); min-height: var(--tocco); padding: 6px 0; cursor: pointer; }
.casella-recensione input { flex: none; width: 22px; height: 22px; margin: 1px 0 0; accent-color: var(--primario); cursor: inherit; }
.casella-recensione__testi { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.casella-recensione__etichetta { font-weight: 600; }
.casella-recensione__aiuto { color: var(--testo-tenue); font-size: 0.875rem; }
.griglia-testimonianze { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 300px), 1fr)); gap: var(--spazio-3); }
.griglia-testimonianze > li { display: flex; min-width: 0; }
.testimonianza { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: var(--spazio-2); }
.testimonianza__testa { display: flex; align-items: center; gap: var(--spazio-3); }
.testimonianza__chi { display: flex; flex-direction: column; min-width: 0; overflow-wrap: anywhere; }
.testimonianza .recensione__testo { flex: 1; }

/* ---- Voto della lezione ---- */
.voto-lezione { display: flex; flex-direction: column; gap: var(--spazio-3); }
.voto-lezione__titolo { font-size: 1.125rem; }
.voto-lezione textarea { min-height: 64px; }
.voto-lezione__piede { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: var(--spazio-2) var(--spazio-3); }
.voto-lezione__esito { margin-right: auto; display: inline-flex; align-items: center; gap: 6px; color: var(--successo); font-size: 0.9375rem; font-weight: 600; }
.voto-lezione__esito:empty { display: none; }

/* ---- Pannello: recensioni ---- */
.medie-corsi { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 250px), 1fr)); gap: var(--spazio-3); }
.media-corso { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.media-corso__nome { font-weight: 700; overflow-wrap: anywhere; }
.media-corso__etichetta { color: var(--testo-tenue); font-size: 0.8125rem; }
.media-corso__valore { display: flex; flex-wrap: wrap; align-items: center; gap: var(--spazio-2); }
.media-corso__numero { font-size: 1.125rem; font-weight: 760; font-variant-numeric: tabular-nums; }
.media-corso__conti { display: flex; flex-wrap: wrap; align-items: center; gap: 2px var(--spazio-3); color: var(--testo-tenue); font-size: 0.875rem; }
.recensione-admin { display: flex; flex-direction: column; gap: var(--spazio-3); }
.recensione-admin__testa { display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: space-between; gap: var(--spazio-1) var(--spazio-3); }
.recensione-admin__chi { display: flex; flex-direction: column; min-width: 0; overflow-wrap: anywhere; }
.recensione-admin__dati { display: flex; flex-wrap: wrap; align-items: center; gap: var(--spazio-2); }
.recensione-admin__corso { font-weight: 600; overflow-wrap: anywhere; }
.voti-lezioni { display: flex; flex-direction: column; background: var(--superficie); border: 1px solid var(--bordo); border-radius: var(--raggio); box-shadow: var(--ombra); }
.voto-lezione-admin { display: flex; flex-direction: column; gap: var(--spazio-3); padding: 14px; }
.voto-lezione-admin + .voto-lezione-admin { border-top: 1px solid var(--bordo); }
.voto-lezione-admin__riga { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--spazio-2) var(--spazio-3); }
.voto-lezione-admin__titolo { flex: 1 1 220px; min-width: 0; font-size: 1rem; overflow-wrap: anywhere; }
.voto-lezione-admin__media { display: flex; flex-wrap: wrap; align-items: center; gap: var(--spazio-2); }
.voto-lezione-admin__media .media-corso__numero { font-size: 1rem; }
.voto-lezione-admin__commenti { padding-left: var(--spazio-3); border-left: 3px solid var(--bordo); }
.voto-lezione-admin__sotto { color: var(--testo-tenue); font-size: 0.8125rem; font-weight: 700; }
.commento-voto { display: flex; flex-direction: column; gap: 2px; }
.commento-voto__testa { display: flex; flex-wrap: wrap; align-items: center; gap: 2px var(--spazio-2); font-size: 0.875rem; }
