:root{--sfondo:#111214;--pannello:#1b1d21;--pannello2:#24272c;--testo:#f2f3f5;--tenue:#9aa0a8;--rosso:#e30613;--rosso-scuro:#a8050e;--verde:#2bb673;--blu:#2f7de1;--bordo:#2e3238;--r:16px}
*{box-sizing:border-box}
html,body{margin:0;height:100%;background:var(--sfondo);color:var(--testo);font:18px/1.45 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Noto Sans Gurmukhi","Gurmukhi MN","Mukta Mahee",sans-serif;-webkit-text-size-adjust:100%}
[hidden]{display:none!important}
button,input,select{font:inherit;color:inherit}
.pa{font-family:"Noto Sans Gurmukhi","Gurmukhi MN","Mukta Mahee","Raavi",sans-serif}
.schermo{min-height:100%;min-height:100dvh;display:flex;flex-direction:column}
.centro{align-items:center;justify-content:center;padding:24px 16px}
.scheda{width:100%;max-width:420px;background:var(--pannello);border:1px solid var(--bordo);border-radius:var(--r);padding:24px;display:flex;flex-direction:column;gap:10px}
.scheda h1{margin:0 0 8px;font-size:26px;line-height:1.25}
label{color:var(--tenue);font-size:15px;margin-top:6px}
input[type=password],select{width:100%;padding:14px;border-radius:12px;border:1px solid var(--bordo);background:var(--pannello2);font-size:18px}
input:focus,select:focus,button:focus-visible{outline:2px solid var(--blu);outline-offset:2px}
.primario,.secondario{border:0;border-radius:12px;padding:14px 18px;font-weight:600;cursor:pointer}
.primario{background:var(--rosso);color:#fff;margin-top:12px}
.primario:active{background:var(--rosso-scuro)}
.secondario{background:var(--pannello2);border:1px solid var(--bordo)}
.errore{color:#ff6b6b;min-height:1.2em;margin:4px 0 0;font-size:16px}
.nota{color:var(--tenue);font-size:15px;margin:4px 0}
.piccola{font-size:13px;margin-top:20px}
.testata{position:sticky;top:0;z-index:2;display:flex;align-items:center;gap:8px;padding:calc(env(safe-area-inset-top) + 10px) 16px 10px;background:rgba(17,18,20,.94);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--bordo)}
.titolo{flex:1;font-weight:700;font-size:18px}
.icona{width:44px;height:44px;border-radius:12px;border:1px solid var(--bordo);background:var(--pannello);font-size:22px;cursor:pointer}
.avviso-ia{text-align:center;font-size:12px;color:var(--tenue);padding:6px 16px;border-bottom:1px solid var(--bordo)}
#conversazione{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:14px}
.vuoto{color:var(--tenue);max-width:520px;margin:auto;text-align:left;font-size:17px}
.vuoto p{margin:6px 0}
.turno{border-radius:var(--r);padding:14px 16px;max-width:92%;border:1px solid var(--bordo)}
.turno.da-pa{align-self:flex-start;background:var(--pannello)}
.turno.da-it{align-self:flex-end;background:#1d2633;border-color:#2b3a50}
.turno .orig{color:var(--tenue);font-size:16px}
.turno .trad{font-size:24px;line-height:1.35;margin-top:6px;font-weight:600}
.turno.da-it .trad{font-size:28px}
.turno .meta{display:flex;gap:8px;align-items:center;margin-top:8px;font-size:13px;color:var(--tenue)}
.turno .ripeti{border:1px solid var(--bordo);background:var(--pannello2);border-radius:10px;padding:6px 10px;font-size:15px;cursor:pointer}
.turno.attesa .trad{color:var(--tenue);font-weight:400;font-size:18px}
.dal-vivo{margin:0 16px 8px;padding:12px 16px;border-radius:var(--r);background:#2a1214;border:1px solid var(--rosso)}
.dal-vivo .chi{font-size:13px;color:#ff9a9f;text-transform:uppercase;letter-spacing:.04em}
.dal-vivo .testo{font-size:22px;min-height:1.4em}
.livello{height:6px;background:#3a1a1d;border-radius:3px;margin-top:8px;overflow:hidden}
.livello span{display:block;height:100%;width:0;background:var(--rosso);transition:width .08s}
.stato{text-align:center;color:var(--tenue);font-size:15px;min-height:1.4em;padding:0 16px 6px}
.stato.attende{color:#ffd166;font-weight:600}
.comandi{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:8px 16px calc(env(safe-area-inset-bottom) + 14px)}
.parla{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:108px;border-radius:20px;border:2px solid transparent;cursor:pointer;color:#fff;font-size:22px;font-weight:700;-webkit-user-select:none;user-select:none;touch-action:manipulation}
.parla small{font-size:13px;font-weight:500;opacity:.85}
.parla .mic{font-size:26px}
.pa-btn{background:#7a3e00}
.it-btn{background:#16457e}
.parla.attivo{border-color:#fff;animation:pulsa 1.1s ease-in-out infinite}
.parla.invito{border-color:#ffd166;box-shadow:0 0 0 4px rgba(255,209,102,.25)}
.parla:disabled{opacity:.45}
@keyframes pulsa{50%{box-shadow:0 0 0 10px rgba(255,255,255,.12)}}
.pagina{padding:16px;max-width:640px;width:100%;margin:0 auto}
.pagina h2{font-size:17px;margin:22px 0 8px}
.interruttore{display:flex;gap:10px;align-items:flex-start;color:var(--testo);font-size:16px;margin:10px 0}
.interruttore input{width:22px;height:22px;flex:none;margin-top:1px}
.diagnosi{list-style:none;padding:0;margin:0 0 8px;display:flex;flex-direction:column;gap:6px;font-size:15px}
.diagnosi li{background:var(--pannello);border:1px solid var(--bordo);border-radius:10px;padding:8px 12px}
.riga-bottoni{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}
@media (prefers-reduced-motion:reduce){.parla.attivo{animation:none}}
