/* Sintech Academy - foglio di stile unico, ricavato dal prototipo approvato l'08/11/2026.
   Layout: barra laterale blu notte fissa a sinistra + contenuto a schede; su telefono la barra diventa un cassetto */
:root{
  --notte:#050C25; --notte-2:#111a3d; --rosso:#CA071E; --rosso-hover:#a90619;
  --bg:#f4f5f9; --carta:#ffffff; --bordo:#dfe2ec; --testo:#0b1230; --muto:#545b75;
  --ok-bg:#e3f2e6; --ok-tx:#1d6b34; --att-bg:#fbefd6; --att-tx:#80520a; --crit-bg:#fbe4e6; --crit-tx:#a3101f; --info-bg:#e6eaf6; --info-tx:#2c3a66;
  --ambra:#8a5a00; --ambra-bg:#fff4dc;
  --sb-tx:#c9cde0; --sb-muto:#8a90ab;
  --font:"Poppins",system-ui,-apple-system,"Segoe UI",sans-serif;
  --r:10px;
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  --bg:#070b1c; --carta:#0f1630; --bordo:#232c4f; --testo:#e8eaf3; --muto:#a3a9c4;
  --ok-bg:#163522; --ok-tx:#8fd9a4; --att-bg:#3a2c0c; --att-tx:#f2c66b; --crit-bg:#3d1219; --crit-tx:#ff9aa5; --info-bg:#1b2550; --info-tx:#b7c3f0;
  --ambra:#f2c66b; --ambra-bg:#3a2c0c; --sb-tx:#c9cde0; --sb-muto:#8a90ab; color-scheme:dark}}
:root[data-theme="dark"]{
  --bg:#070b1c; --carta:#0f1630; --bordo:#232c4f; --testo:#e8eaf3; --muto:#a3a9c4;
  --ok-bg:#163522; --ok-tx:#8fd9a4; --att-bg:#3a2c0c; --att-tx:#f2c66b; --crit-bg:#3d1219; --crit-tx:#ff9aa5; --info-bg:#1b2550; --info-tx:#b7c3f0;
  --ambra:#f2c66b; --ambra-bg:#3a2c0c; color-scheme:dark}
*{box-sizing:border-box}
html,body{height:100%}
body{background:var(--bg);color:var(--testo);font-family:var(--font);font-size:15px;line-height:1.5}
button,input{font:inherit;color:inherit}
a{color:inherit}
:focus-visible{outline:2px solid var(--rosso);outline-offset:2px}


.app{display:flex;min-height:100%}
.sb{width:248px;flex:none;background:var(--notte);color:var(--sb-tx);display:flex;flex-direction:column;padding:14px 10px;gap:2px;transition:width .2s}
.sb .testa{display:flex;align-items:center;gap:8px;margin-bottom:14px;min-height:44px}
.ham{background:none;border:0;color:#fff;font-size:22px;cursor:pointer;width:36px;height:36px;border-radius:8px;flex:none}
.ham:hover{background:var(--notte-2)}
.sb .logo{height:40px;width:auto}
.sb .icona{display:none;height:32px}
.sb .nuovo{display:flex;align-items:center;justify-content:center;gap:6px;background:var(--rosso);color:#fff;border:0;border-radius:8px;padding:9px 10px;font-weight:600;margin-bottom:12px;cursor:pointer;opacity:.45}
.sb a.voce,.sb button.voce{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:8px;text-decoration:none;color:var(--sb-tx);background:none;border:0;width:100%;text-align:left;cursor:pointer;font-size:14px}
.sb .voce:hover{background:var(--notte-2);color:#fff}
.sb .voce.on{background:var(--notte-2);color:#fff;box-shadow:inset 3px 0 0 var(--rosso)}
.sb .voce .ic{width:20px;text-align:center;flex:none}
.sb .grp{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--sb-muto);margin:12px 10px 4px}
.sb .fondo{margin-top:auto;border-top:1px solid var(--notte-2);padding-top:10px;display:flex;flex-direction:column;gap:2px}
.utente{display:flex;align-items:center;gap:10px;padding:8px 10px}
.ini{width:30px;height:30px;border-radius:50%;background:var(--rosso);color:#fff;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;flex:none}
.utente small{display:block;color:var(--sb-muto);font-size:12px}
.sb.chiusa{width:68px}
.sb.chiusa .logo,.sb.chiusa .et,.sb.chiusa .grp,.sb.chiusa .utente span:last-child{display:none}
.sb.chiusa .icona{display:block}
.sb.chiusa .testa{flex-direction:column}

main{flex:1;min-width:0;padding-block:24px 48px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.wrap{max-width:1040px;margin:0 auto;display:flex;flex-direction:column;gap:18px}
h1{font-size:26px;font-weight:600;margin:0;text-wrap:balance;letter-spacing:-.01em}
h2{font-size:17px;font-weight:600;margin:0}
.sotto{color:var(--muto);margin:2px 0 0}
.briciole{font-size:13px;color:var(--muto)}
.briciole a{text-decoration:none;color:var(--muto)}
.briciole a:hover{color:var(--rosso)}
.griglia{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}
.box{background:var(--carta);border:1px solid var(--bordo);border-radius:var(--r);padding:16px 18px;min-width:0;display:flex;flex-direction:column;gap:10px}
.evid{border-left:4px solid var(--rosso)}
.riga{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 0;border-top:1px solid var(--bordo);min-width:0}
.riga:first-of-type{border-top:0}
.riga .t{min-width:0}
.riga .t small{display:block;color:var(--muto);font-size:13px}
.pill{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;border-radius:20px;font-size:12px;font-weight:600;white-space:nowrap}
.ok{background:var(--ok-bg);color:var(--ok-tx)} .att{background:var(--att-bg);color:var(--att-tx)} .crit{background:var(--crit-bg);color:var(--crit-tx)} .info{background:var(--info-bg);color:var(--info-tx)}
.doc-chip{background:var(--crit-bg);color:var(--crit-tx)}
.btn{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--bordo);background:var(--carta);border-radius:8px;padding:7px 14px;cursor:pointer;font-weight:500;text-decoration:none;font-size:14px}
.btn:hover{border-color:var(--testo)}
.btn.pri{background:var(--rosso);border-color:var(--rosso);color:#fff}
.btn.pri:hover{background:var(--rosso-hover)}
.data{font-variant-numeric:tabular-nums}
.big{font-size:22px;font-weight:600}
.mod{display:flex;flex-direction:column;gap:2px}
.mod h3{font-size:14px;font-weight:600;margin:8px 0 2px;color:var(--muto);letter-spacing:.04em;text-transform:uppercase}
.file{display:flex;align-items:center;gap:10px;padding:7px 8px;border-radius:8px;background:none;border:0;width:100%;text-align:left;cursor:pointer;text-decoration:none;color:inherit}
.file:hover{background:var(--bg)}
.ext{font-size:11px;font-weight:700;border-radius:4px;padding:2px 5px;color:#fff;flex:none;width:42px;text-align:center}
.docx{background:#2b579a}.pptx{background:#c43e1c}.gs{background:#188038}
.file .nome{flex:1;min-width:0;overflow-wrap:anywhere}
.lez{display:grid;grid-template-columns:92px 1fr auto;gap:12px;align-items:center;padding:10px 0;border-top:1px solid var(--bordo);text-decoration:none}
.lez:first-of-type{border-top:0}
.lez:hover .tit{color:var(--rosso)}
.cal{text-align:center;border:1px solid var(--bordo);border-radius:8px;padding:4px 0;font-variant-numeric:tabular-nums;line-height:1.2}
.cal b{display:block;font-size:20px}
.cal small{font-size:11px;color:var(--muto);text-transform:uppercase;letter-spacing:.06em}
.reg{display:flex;flex-direction:column}
.reg label{display:flex;align-items:center;gap:12px;padding:11px 6px;border-top:1px solid var(--bordo);cursor:pointer;min-height:48px}
.reg label:first-child{border-top:0}
.reg input{width:22px;height:22px;accent-color:var(--rosso);flex:none}
.barra-az{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.toast{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(20px + env(safe-area-inset-bottom,0px));background:var(--notte);color:#fff;padding:10px 18px;border-radius:8px;font-size:14px;box-shadow:0 6px 24px rgba(0,0,0,.25);z-index:20;max-width:calc(100% - 32px)}
.temi{display:flex;flex-wrap:wrap;gap:10px}
.temi label{display:flex;align-items:center;gap:8px;border:1px solid var(--bordo);border-radius:8px;padding:10px 14px;cursor:pointer}
.temi input{accent-color:var(--rosso)}

.login{min-height:100%;display:flex;align-items:center;justify-content:center;padding-block:32px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));background:var(--notte)}
.login .carta{background:var(--carta);border-radius:14px;padding:32px 28px;max-width:440px;width:100%;display:flex;flex-direction:column;gap:18px;align-items:center;text-align:center}
.login img{width:100%;max-width:340px}
.gbtn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;border:1px solid var(--bordo);background:var(--carta);border-radius:8px;padding:11px;font-weight:500;cursor:pointer;text-decoration:none;color:inherit}
.gbtn:hover{border-color:var(--testo)}
.login .err{background:var(--crit-bg);color:var(--crit-tx);border-radius:8px;padding:10px 12px;font-size:14px;text-align:left;width:100%}
.solo-chiaro{display:block}.solo-scuro{display:none}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .solo-chiaro{display:none}:root:not([data-theme="light"]) .solo-scuro{display:block}}
:root[data-theme="dark"] .solo-chiaro{display:none}:root[data-theme="dark"] .solo-scuro{display:block}

@media (max-width:760px){
  .app{flex-direction:column}
  .sb{width:100%;flex-direction:row;flex-wrap:wrap;align-items:center;padding:8px 12px;gap:4px}
  .sb .testa{margin:0;min-height:0}
  .sb .nuovo,.sb .grp,.sb .fondo,.sb .menu{display:none}
  .sb.aperta .menu,.sb.aperta .fondo{display:flex;flex-direction:column;width:100%}
  .sb.chiusa{width:100%}
  .lez{grid-template-columns:72px 1fr}
  .lez .pill{grid-column:2}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}
.avviso{border-radius:8px;padding:10px 14px;font-size:14px}
.avviso.ok{background:var(--ok-bg);color:var(--ok-tx)}
.avviso.crit{background:var(--crit-bg);color:var(--crit-tx)}
