/* =========================================================================
   AREA DELLA SEGRETERIA DEI CENTRI MEDICI (layouts/segreteria.blade.php)

   Pagine proprie, senza Bootstrap e senza gli stili del gestionale del
   medico: tutte le classi hanno il prefisso sg-. Tema notte in :root, tema
   giorno con html[data-tema="giorno"] (la scelta della segreteria). La
   palette e' quella di Prevenire.ai (fondo #0F1929, carte #1E293B, accento
   ciano; giorno petrolio #0E7490), i pulsanti seguono le tre forme di casa
   (primario a gradiente, secondario trasparente, distruttivo rosso).

   Contrasti controllati (WCAG AA):
   - notte: testo #E2E8F0 su #1E293B 12,9:1; tenue #94A3B8 su #1E293B 5,7:1;
     secondario #7DD3FC su #1E293B 9,4:1; ambra #FBBF24 su #1E293B 8,6:1;
   - giorno: testo #1F2937 su #FFFFFF 14,7:1; tenue #475569 su #FFFFFF 7,6:1;
     secondario #0E7490 su #FFFFFF 5,4:1; ambra #92400E su #FDF1DC 7,0:1;
   - primario: testo bianco sul gradiente #0E7490 (5,4:1) / #2563EB (5,2:1).

   Computer (dal 1024 px): menu a sinistra, fisso. Telefono e tablet: una
   barra in alto con «Menu», che apre il menu da sinistra; senza JavaScript
   il menu sta in cima alla pagina. 16 px di margine, niente scorrimento
   orizzontale, aree di tocco da 44 px.
   ========================================================================= */

:root{
    --sg-fondo:#0F1929;
    --sg-lato:#111C2C;
    --sg-carta:#1E293B;
    --sg-carta-2:#162234;
    --sg-bordo:rgba(148,163,184,.16);
    --sg-bordo-forte:rgba(148,163,184,.32);
    --sg-testo:#E2E8F0;
    --sg-forte:#F8FAFC;
    --sg-tenue:#94A3B8;
    --sg-accento:#22D3EE;
    --sg-accento-fondo:rgba(34,211,238,.10);
    --sg-link:#7DD3FC;
    --sg-sec-bordo:rgba(56,189,248,.42);
    --sg-sec-testo:#7DD3FC;
    --sg-sec-sopra:rgba(56,189,248,.10);
    --sg-dis:#F87171;
    --sg-dis-sopra:rgba(248,113,113,.12);
    --sg-campo:#0F1929;
    --sg-fuoco:#67E8F9;
    --sg-ok-fondo:rgba(16,185,129,.12);
    --sg-ok-bordo:rgba(16,185,129,.45);
    --sg-ok-testo:#6EE7B7;
    --sg-att-fondo:rgba(245,158,11,.14);
    --sg-att-bordo:rgba(245,158,11,.45);
    --sg-att-testo:#FBBF24;
    --sg-per-fondo:rgba(248,113,113,.12);
    --sg-per-bordo:rgba(248,113,113,.5);
    --sg-per-testo:#FCA5A5;
    --sg-nota-fondo:rgba(34,211,238,.08);
    --sg-nota-bordo:rgba(34,211,238,.35);
    --sg-viola:#6D5BD0;
    --sg-viola-fondo:rgba(109,91,208,.22);
    --sg-viola-testo:#C4B5FD;
    --sg-ombra:0 10px 30px rgba(2,6,23,.35);
    --sg-font:'Inter','Segoe UI',system-ui,-apple-system,Roboto,sans-serif;
    color-scheme:dark;
}
html[data-tema="giorno"]{
    --sg-fondo:#F8FAFC;
    --sg-lato:#FFFFFF;
    --sg-carta:#FFFFFF;
    --sg-carta-2:#E6F4F7;
    --sg-bordo:#D5DEE8;
    --sg-bordo-forte:#AEBBCB;
    --sg-testo:#1F2937;
    --sg-forte:#0F172A;
    --sg-tenue:#475569;
    --sg-accento:#0E7490;
    --sg-accento-fondo:#E6F4F7;
    --sg-link:#0E7490;
    --sg-sec-bordo:rgba(14,116,144,.5);
    --sg-sec-testo:#0E7490;
    --sg-sec-sopra:#EAF6F9;
    --sg-dis:#B91C1C;
    --sg-dis-sopra:#FEF2F2;
    --sg-campo:#FFFFFF;
    --sg-fuoco:#0E7490;
    --sg-ok-fondo:#ECFDF5;
    --sg-ok-bordo:#6EE7B7;
    --sg-ok-testo:#047857;
    --sg-att-fondo:#FDF1DC;
    --sg-att-bordo:#F2C46D;
    --sg-att-testo:#92400E;
    --sg-per-fondo:#FEF2F2;
    --sg-per-bordo:#FCA5A5;
    --sg-per-testo:#B91C1C;
    --sg-nota-fondo:#E6F4F7;
    --sg-nota-bordo:#8CC7D4;
    --sg-viola:#6D5BD0;
    --sg-viola-fondo:#EEEBFB;
    --sg-viola-testo:#4C3BA8;
    --sg-ombra:0 8px 24px rgba(15,23,42,.08);
    color-scheme:light;
}

*,*::before,*::after{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;}
body.sg-corpo{margin:0;min-height:100vh;background:var(--sg-fondo);color:var(--sg-testo);
    font-family:var(--sg-font);font-size:16px;line-height:1.5;overflow-x:hidden;}
.sg-corpo a{color:var(--sg-link);}
.sg-corpo :focus-visible{outline:3px solid var(--sg-fuoco);outline-offset:2px;}
.sg-corpo [hidden]{display:none !important;}
.sg-sr{position:absolute !important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;}
.sg-salta{position:absolute;left:16px;top:-60px;z-index:80;padding:10px 14px;border-radius:10px;background:var(--sg-carta);color:var(--sg-forte);font-weight:700;}
.sg-salta:focus{top:10px;}

/* Logo notte / giorno, icone del tema */
.sg-logo{display:inline-flex;align-items:center;text-decoration:none;}
.sg-logo img{height:24px;width:auto;display:block;}
.sg-corpo .e-giorno{display:none;}
html[data-tema="giorno"] .sg-corpo .e-notte{display:none;}
html[data-tema="giorno"] .sg-corpo .e-giorno{display:inline-block;}
html[data-tema="giorno"] .sg-logo img.e-giorno{display:block;}

/* ---------------- Guscio: menu a sinistra + colonna ---------------- */
.sg-guscio{display:flex;min-height:100vh;}
.sg-colonna{flex:1;min-width:0;display:flex;flex-direction:column;}

.sg-lato{width:264px;flex-shrink:0;background:var(--sg-lato);border-right:1px solid var(--sg-bordo);
    position:sticky;top:0;height:100vh;display:flex;flex-direction:column;overflow-y:auto;}
.sg-marchio{display:flex;align-items:center;gap:10px;padding:20px 20px 14px;}
.sg-marchio-etichetta{font-size:.78rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--sg-accento);
    padding-left:10px;border-left:1px solid var(--sg-bordo);}
.sg-menu-chiudi{display:none;margin-left:auto;width:44px;height:44px;border-radius:50%;border:1px solid var(--sg-bordo);
    background:transparent;color:var(--sg-tenue);font-size:1.05rem;cursor:pointer;align-items:center;justify-content:center;}
.sg-centro{margin:0 12px 10px;padding:12px 14px;border-radius:12px;background:var(--sg-carta-2);border:1px solid var(--sg-bordo);
    display:flex;flex-direction:column;gap:2px;min-width:0;}
.sg-centro-nome{font-weight:800;color:var(--sg-forte);font-size:.95rem;line-height:1.3;overflow-wrap:anywhere;}
.sg-centro-chi{font-size:.82rem;color:var(--sg-tenue);overflow-wrap:anywhere;}
.sg-centro-chi i{margin-right:4px;}

.sg-menu{display:flex;flex-direction:column;gap:2px;padding:6px 12px;flex:1;}
.sg-voce{position:relative;display:flex;align-items:center;gap:12px;width:100%;min-height:44px;padding:9px 12px;border-radius:10px;
    border:0;background:transparent;color:var(--sg-tenue);font:600 .95rem/1.2 var(--sg-font);text-decoration:none;cursor:pointer;text-align:left;}
.sg-corpo a.sg-voce{color:var(--sg-tenue);}
.sg-voce:hover,.sg-corpo a.sg-voce:hover{background:var(--sg-accento-fondo);color:var(--sg-forte);}
.sg-voce.e-attiva,.sg-corpo a.sg-voce.e-attiva{background:var(--sg-accento-fondo);color:var(--sg-accento);}
.sg-voce.e-attiva::before{content:"";position:absolute;left:-12px;top:10px;bottom:10px;width:3px;border-radius:0 3px 3px 0;background:var(--sg-accento);}
.sg-voce-icona{width:20px;display:inline-flex;justify-content:center;font-size:1rem;flex-shrink:0;}
.sg-voce-testo{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.sg-conta{margin-left:auto;min-width:22px;height:22px;padding:0 7px;border-radius:999px;background:#DC2626;color:#FFFFFF;
    font-size:.74rem;font-weight:800;line-height:22px;text-align:center;flex-shrink:0;}
.sg-lato-piede{padding:10px 12px 16px;border-top:1px solid var(--sg-bordo);display:flex;flex-direction:column;gap:2px;}
.sg-lato-piede form{margin:0;}
.sg-voce.e-esci:hover{background:var(--sg-dis-sopra);color:var(--sg-dis);}

/* La barra in alto (telefono e tablet; e nelle pagine senza menu) */
.sg-testata{display:none;position:sticky;top:0;z-index:30;align-items:center;gap:12px;padding:10px 16px;
    background:var(--sg-lato);border-bottom:1px solid var(--sg-bordo);}
.sg-testata-centro{flex:1;min-width:0;font-weight:700;font-size:.9rem;color:var(--sg-forte);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
    padding-left:10px;border-left:1px solid var(--sg-bordo);}
.sg-menu-apri{position:relative;display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 14px;border-radius:12px;
    border:1px solid var(--sg-sec-bordo);background:transparent;color:var(--sg-sec-testo);font:700 .9rem/1 var(--sg-font);cursor:pointer;}
.sg-menu-apri:hover{background:var(--sg-sec-sopra);}
.sg-conta.e-menu{margin-left:2px;}
.sg-velo{position:fixed;inset:0;z-index:55;background:rgba(2,6,23,.55);}
body.sg-corpo:not(.e-con-menu) .sg-testata{display:flex;}

/* ---------------- Pagina ---------------- */
.sg-pagina{flex:1;width:100%;max-width:1180px;margin:0 auto;padding:28px 32px 48px;}
.sg-pagina.e-stretta{max-width:480px;padding-top:44px;}
.sg-testa{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:22px;}
.sg-titolo{margin:0 0 4px;font-size:1.6rem;line-height:1.2;font-weight:800;color:var(--sg-forte);}
.sg-sotto{margin:0;color:var(--sg-tenue);font-size:.95rem;}
.sg-sotto b{color:var(--sg-testo);font-weight:700;}

.sg-esito,.sg-errore,.sg-nota,.sg-attenzione{margin:0 0 16px;padding:12px 14px;border-radius:12px;font-size:.93rem;border:1px solid;
    display:flex;gap:10px;align-items:flex-start;}
.sg-esito{background:var(--sg-ok-fondo);border-color:var(--sg-ok-bordo);color:var(--sg-ok-testo);}
.sg-errore{background:var(--sg-per-fondo);border-color:var(--sg-per-bordo);color:var(--sg-per-testo);}
.sg-nota{background:var(--sg-nota-fondo);border-color:var(--sg-nota-bordo);color:var(--sg-testo);}
.sg-nota i{color:var(--sg-accento);}
.sg-attenzione{background:var(--sg-att-fondo);border-color:var(--sg-att-bordo);color:var(--sg-testo);}
.sg-attenzione i{color:var(--sg-att-testo);}
.sg-esito i,.sg-errore i,.sg-nota i,.sg-attenzione i{margin-top:3px;flex-shrink:0;}

/* La fascia del pacchetto scaduto, sopra ogni pagina */
.sg-fascia{display:flex;gap:10px;align-items:flex-start;padding:12px 32px;background:#7F1D1D;color:#FEE2E2;font-size:.92rem;font-weight:600;}
.sg-fascia a{color:#FFFFFF;font-weight:800;}
.sg-fascia i{margin-top:3px;}
html[data-tema="giorno"] .sg-fascia{background:#FEE2E2;color:#7F1D1D;border-bottom:1px solid #FCA5A5;}
html[data-tema="giorno"] .sg-fascia a{color:#991B1B;}

/* ---------------- Carte, tessere, elenchi ---------------- */
.sg-carta{background:var(--sg-carta);border:1px solid var(--sg-bordo);border-radius:16px;padding:20px;box-shadow:var(--sg-ombra);margin-bottom:18px;}
.sg-carta-testa{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 14px;flex-wrap:wrap;}
.sg-carta-titolo{margin:0;font-size:1.05rem;font-weight:800;color:var(--sg-forte);display:flex;align-items:center;gap:9px;}
.sg-carta-titolo i{color:var(--sg-accento);}
.sg-piu{font-size:.9rem;font-weight:700;text-decoration:none;display:inline-flex;align-items:center;min-height:44px;}
.sg-vuoto{margin:0;padding:22px 18px;border:1px dashed var(--sg-bordo-forte);border-radius:14px;color:var(--sg-tenue);text-align:center;font-size:.95rem;}
.sg-vuoto i{display:block;font-size:1.4rem;margin-bottom:8px;color:var(--sg-tenue);}

.sg-tessere{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:22px;}
.sg-tessera{display:flex;flex-direction:column;gap:6px;padding:16px 18px;border-radius:16px;background:var(--sg-carta);border:1px solid var(--sg-bordo);
    box-shadow:var(--sg-ombra);text-decoration:none;color:var(--sg-testo);min-width:0;}
.sg-corpo a.sg-tessera{color:var(--sg-testo);}
.sg-corpo a.sg-tessera:hover{border-color:var(--sg-sec-bordo);}
.sg-tessera-testa{display:flex;align-items:center;gap:10px;color:var(--sg-tenue);font-size:.84rem;font-weight:700;}
.sg-tessera-icona{width:34px;height:34px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;
    background:var(--sg-accento-fondo);color:var(--sg-accento);font-size:.95rem;}
.sg-tessera-numero{font-size:2rem;font-weight:800;line-height:1.1;color:var(--sg-forte);}
.sg-tessera-sotto{font-size:.84rem;color:var(--sg-tenue);}
.sg-tessera.e-attenzione .sg-tessera-icona{background:var(--sg-att-fondo);color:var(--sg-att-testo);}
.sg-tessera.e-attenzione .sg-tessera-numero{color:var(--sg-att-testo);}

.sg-griglia{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(0,1fr);gap:18px;align-items:start;}

/* Gli appuntamenti di oggi */
.sg-visite{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;}
.sg-visita{display:grid;grid-template-columns:104px minmax(0,1fr) auto;gap:14px;align-items:center;padding:12px 4px;border-top:1px solid var(--sg-bordo);}
.sg-visita:first-child{border-top:0;}
.sg-visita.e-passata{opacity:.62;}
.sg-visita-ora{display:flex;flex-direction:column;line-height:1.15;}
.sg-visita-ora b{font-size:1.1rem;font-weight:800;color:var(--sg-accento);}
.sg-visita-ora span{font-size:.78rem;color:var(--sg-tenue);white-space:nowrap;}
.sg-visita-chi{min-width:0;}
.sg-visita-paziente{display:block;font-weight:700;color:var(--sg-forte);overflow-wrap:anywhere;text-decoration:none;}
/* Il nome che apre il dettaglio: sottolineatura tenue come nelle altre pagine
   (Agenda, Da gestire, Pazienti), piena al passaggio del mouse. */
.sg-corpo a.sg-visita-paziente{color:var(--sg-forte);
    text-decoration:underline;text-decoration-color:var(--sg-bordo-forte);text-decoration-thickness:1px;text-underline-offset:3px;}
.sg-corpo a.sg-visita-paziente:hover{color:var(--sg-accento);text-decoration-color:currentColor;}
.sg-visita-dove{display:block;font-size:.86rem;color:var(--sg-tenue);overflow-wrap:anywhere;}

.sg-pillola{display:inline-block;padding:3px 10px;border-radius:999px;font-size:.74rem;font-weight:800;white-space:nowrap;}
.sg-pillola.e-confermato{background:rgba(16,185,129,.16);color:#34D399;}
.sg-pillola.e-da_confermare{background:rgba(245,158,11,.16);color:#FBBF24;}
.sg-pillola.e-chiede_spostare{background:rgba(34,211,238,.14);color:#67E8F9;}
.sg-pillola.e-chiede_annullare{background:rgba(248,113,113,.14);color:#FCA5A5;}
.sg-pillola.e-svolto{background:rgba(148,163,184,.16);color:#CBD5E1;}
.sg-pillola.e-annullato{background:rgba(248,113,113,.10);color:#FCA5A5;}
.sg-pillola.e-nuovo{background:var(--sg-accento-fondo);color:var(--sg-accento);}
.sg-pillola.e-impegno{background:var(--sg-viola-fondo);color:var(--sg-viola-testo);}
html[data-tema="giorno"] .sg-pillola.e-confermato{background:#D1FAE5;color:#065F46;}
html[data-tema="giorno"] .sg-pillola.e-da_confermare{background:#FDF1DC;color:#92400E;}
html[data-tema="giorno"] .sg-pillola.e-chiede_spostare{background:#E6F4F7;color:#155E75;}
html[data-tema="giorno"] .sg-pillola.e-chiede_annullare{background:#FEE2E2;color:#991B1B;}
html[data-tema="giorno"] .sg-pillola.e-svolto{background:#E2E8F0;color:#334155;}
html[data-tema="giorno"] .sg-pillola.e-annullato{background:#FEE2E2;color:#991B1B;}

/* Il riquadro viola «Impegno personale» (agenda della segreteria): mai dettagli */
.sg-impegno{background:var(--sg-viola);color:#FFFFFF;border-radius:8px;padding:4px 8px;font-size:.78rem;font-weight:700;}

/* Dati brevi (il centro, il pacchetto) */
.sg-dati{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 14px;margin:0;}
.sg-dati dt{font-size:.88rem;color:var(--sg-tenue);}
.sg-dati dd{margin:0;font-weight:700;color:var(--sg-forte);text-align:right;}
.sg-dati dd.e-attenzione{color:var(--sg-att-testo);}
.sg-dati dd.e-pericolo{color:var(--sg-per-testo);}
.sg-separa{border:0;border-top:1px solid var(--sg-bordo);margin:16px 0;}
.sg-spazio-sopra{margin:12px 0 0;}
.sg-medici{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;}
.sg-medici li{display:flex;align-items:center;gap:10px;font-size:.92rem;min-width:0;}
.sg-medici li > span:last-child{min-width:0;overflow-wrap:anywhere;}
.sg-iniziali{width:32px;height:32px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;
    background:var(--sg-accento-fondo);color:var(--sg-accento);font-size:.78rem;font-weight:800;}
.sg-medici small{display:block;color:var(--sg-tenue);font-size:.8rem;}

/* Gli avvisi */
.sg-avvisi{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;}
.sg-avviso{display:grid;grid-template-columns:38px minmax(0,1fr);gap:12px;padding:14px 4px;border-top:1px solid var(--sg-bordo);}
.sg-avviso:first-child{border-top:0;}
.sg-avviso-icona{width:38px;height:38px;border-radius:11px;display:inline-flex;align-items:center;justify-content:center;
    background:var(--sg-accento-fondo);color:var(--sg-accento);}
.sg-avviso.e-attenzione .sg-avviso-icona{background:var(--sg-att-fondo);color:var(--sg-att-testo);}
.sg-avviso.e-pericolo .sg-avviso-icona{background:var(--sg-per-fondo);color:var(--sg-per-testo);}
.sg-avviso-testo{margin:0;color:var(--sg-testo);font-size:.95rem;}
.sg-avviso-sotto{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:4px;font-size:.82rem;color:var(--sg-tenue);}
.sg-avviso-sotto a{font-weight:700;}
.sg-avviso.e-nuovo .sg-avviso-testo{color:var(--sg-forte);font-weight:600;}
.sg-da-fare{display:flex;flex-direction:column;gap:10px;margin-bottom:18px;}
.sg-da-fare .sg-attenzione,.sg-da-fare .sg-nota,.sg-da-fare .sg-errore{margin:0;align-items:center;}
.sg-da-fare a.sg-btn{margin-left:auto;}

/* ---------------- Pulsanti di casa ---------------- */
.sg-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 18px;border-radius:12px;
    border:1px solid transparent;font:700 .95rem/1.2 var(--sg-font);text-decoration:none;cursor:pointer;text-align:center;}
.sg-corpo a.sg-btn{text-decoration:none;}
.sg-btn.e-primario,.sg-corpo a.sg-btn.e-primario{background:linear-gradient(135deg,#0E7490,#2563EB);color:#FFFFFF;box-shadow:0 6px 16px rgba(14,116,144,.28);}
.sg-btn.e-primario:hover{filter:brightness(1.08);}
.sg-btn.e-secondario,.sg-corpo a.sg-btn.e-secondario{background:transparent;border-color:var(--sg-sec-bordo);color:var(--sg-sec-testo);}
.sg-btn.e-secondario:hover{background:var(--sg-sec-sopra);}
.sg-btn.e-distruttivo,.sg-corpo a.sg-btn.e-distruttivo{background:transparent;border-color:var(--sg-dis);color:var(--sg-dis);}
.sg-btn.e-distruttivo:hover{background:var(--sg-dis-sopra);}
.sg-btn.e-piccolo{min-height:38px;padding:7px 13px;font-size:.87rem;border-radius:10px;}
.sg-btn.e-largo{width:100%;}
.sg-btn:disabled,.sg-btn[aria-disabled="true"]{opacity:.55;cursor:not-allowed;filter:none;}

/* ---------------- Campi (per le pagine degli altri pacchetti) ---------------- */
.sg-campi{display:grid;grid-template-columns:1fr 1fr;gap:14px 16px;}
.sg-campo{display:flex;flex-direction:column;gap:6px;min-width:0;}
.sg-campo.e-largo{grid-column:1 / -1;}
.sg-campo label,.sg-etichetta{font-size:.84rem;font-weight:700;color:var(--sg-forte);}
.sg-campo input,.sg-campo select,.sg-campo textarea{width:100%;min-height:44px;padding:10px 12px;border-radius:10px;
    border:1px solid var(--sg-bordo-forte);background:var(--sg-campo);color:var(--sg-forte);font:400 1rem/1.4 var(--sg-font);}
.sg-campo textarea{min-height:96px;resize:vertical;}
.sg-campo input:focus,.sg-campo select:focus,.sg-campo textarea:focus{outline:2px solid var(--sg-fuoco);outline-offset:1px;border-color:transparent;}
.sg-campo select option{background:var(--sg-carta);color:var(--sg-forte);}
.sg-aiuto{font-size:.82rem;color:var(--sg-tenue);}
.sg-campo-errore{font-size:.84rem;color:var(--sg-per-testo);font-weight:600;}
.sg-spunta{display:flex;align-items:center;gap:10px;min-height:44px;font-size:.95rem;cursor:pointer;}
.sg-spunta input{width:20px;height:20px;accent-color:#0E7490;}
.sg-azioni{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:16px;}

/* Tabelle semplici */
.sg-tabella{width:100%;border-collapse:collapse;font-size:.93rem;}
.sg-tabella th{text-align:left;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--sg-tenue);
    padding:8px 10px;border-bottom:1px solid var(--sg-bordo-forte);}
.sg-tabella td{padding:11px 10px;border-bottom:1px solid var(--sg-bordo);vertical-align:middle;}

/* L'avviso prima dell'uscita per inattivita' */
.sg-uscita{position:fixed;left:50%;bottom:20px;transform:translateX(-50%);z-index:90;display:flex;gap:10px;align-items:center;
    max-width:min(560px,calc(100vw - 32px));padding:12px 16px;border-radius:14px;background:var(--sg-carta);border:1px solid var(--sg-att-bordo);
    color:var(--sg-testo);box-shadow:var(--sg-ombra);font-size:.92rem;font-weight:600;}
.sg-uscita i{color:var(--sg-att-testo);}

/* ---------------- Piede ---------------- */
.sg-piede{border-top:1px solid var(--sg-bordo);padding:16px;text-align:center;font-size:.85rem;color:var(--sg-tenue);}
.sg-piede a{font-weight:600;white-space:nowrap;}

/* Avviso fisso sotto il campo della chat (finestra public/js/chat-telefono.js) */
#chatTelefono .sg-chat-avviso{margin:6px 0 0 4px;font-size:11.5px;line-height:1.35;color:#94A3B8;}
html[data-tema="giorno"] #chatTelefono .sg-chat-avviso{color:#475569;}

/* ---------------- Computer piccolo ---------------- */
@media (max-width: 1279.98px){
    .sg-tessere{grid-template-columns:repeat(2,minmax(0,1fr));}
}

/* ---------------- Telefono e tablet: menu che si apre ---------------- */
@media (max-width: 1023.98px){
    .sg-testata{display:flex;}
    .sg-lato{position:fixed;left:0;top:0;bottom:0;z-index:60;width:min(300px,86vw);height:100%;
        transform:translateX(-105%);transition:transform .2s ease;box-shadow:0 0 40px rgba(2,6,23,.45);}
    .sg-lato.e-aperto{transform:none;}
    .sg-menu-chiudi{display:inline-flex;}
    .sg-pagina{padding:20px 16px 40px;}
    .sg-fascia{padding:12px 16px;}
    .sg-griglia{grid-template-columns:1fr;}
    .sg-titolo{font-size:1.35rem;}
    /* Senza JavaScript il menu resta in cima alla pagina, aperto. */
    html:not(.sg-js) .sg-guscio{flex-direction:column;}
    html:not(.sg-js) .sg-lato{position:static;transform:none;width:100%;height:auto;box-shadow:none;border-right:0;border-bottom:1px solid var(--sg-bordo);}
    html:not(.sg-js) .sg-menu-apri,html:not(.sg-js) .sg-menu-chiudi{display:none;}
}
@media (prefers-reduced-motion: reduce){
    .sg-lato{transition:none;}
}

@media (max-width: 599.98px){
    .sg-tessere{gap:10px;}
    .sg-tessera{padding:14px;}
    .sg-tessera-numero{font-size:1.6rem;}
    .sg-tessera-testa{font-size:.8rem;}
    /* Sul telefono l'orario sta in una riga sola, sopra il paziente. */
    .sg-visita{grid-template-columns:minmax(0,1fr);gap:4px;}
    .sg-visita-ora{flex-direction:row;align-items:baseline;gap:8px;}
    .sg-visita > .sg-pillola{justify-self:start;margin-top:2px;}
    .sg-campi{grid-template-columns:1fr;}
    .sg-dati{grid-template-columns:1fr auto;}
    .sg-carta{padding:16px;}
    .sg-da-fare .sg-attenzione,.sg-da-fare .sg-nota,.sg-da-fare .sg-errore{flex-wrap:wrap;}
    .sg-da-fare a.sg-btn{margin-left:0;width:100%;}
    .sg-testata-centro{font-size:.84rem;}
    .sg-menu-apri{padding:8px 12px;}
    .sg-piede a{display:inline-block;}
}

/* Telefono stretto: il nome del centro in testata va su due righe piu'
   piccole invece di fermarsi a meta' parola («Poliambulato…»); intero resta
   nel menu. Due righe stanno nei 44 px del pulsante «Menu». */
@media (max-width: 419.98px){
    .sg-testata-centro{white-space:normal;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;
        font-size:.78rem;line-height:1.25;overflow-wrap:break-word;}
}
