/* AUTOPIA — moduli di accesso e console admin (A07, A10). Stessi toni della stanza di ghiaccio, nessuna regola in main.css. */
.access-form{margin-top:44px;max-width:560px}
.access-form[hidden],.access-form [hidden]{display:none!important}
.access-form .access-card{min-height:0}
.access-form form{display:grid;gap:14px;margin-top:18px}
.access-form label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:700;color:#46768b}
.access-form label small{font-weight:400;color:#4b6877}
.access-form input{width:100%;min-height:48px;padding:12px;border:1px solid #c4e5f1;border-radius:12px;background:#ffffffbf;color:#173f55;font:inherit;font-size:16px}
.access-form input:focus-visible{outline:3px solid #2b9ccb;outline-offset:2px}
.access-form .a-button{justify-content:center;width:100%}
.access-form .a-button[disabled]{opacity:.6;cursor:progress}
.access-form .access-azioni{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.access-form .access-azioni .a-button{width:auto}
.access-stato{min-height:1.6em;margin-top:14px;font-size:14px;color:#46768b}
.access-stato[data-tono=errore]{color:#9d2c3a;font-weight:700}
.access-stato[data-tono=ok]{color:#177152;font-weight:700}
.admin-tabella{width:100%;border-collapse:collapse;margin-top:16px;font-size:14px}
.admin-tabella th,.admin-tabella td{text-align:left;padding:10px 8px;border-bottom:1px solid #c4e5f1;color:#173f55}
.admin-tabella button{min-height:44px}
.admin-link{word-break:break-all;font-family:ui-monospace,Menlo,monospace;font-size:13px;background:#ffffffbf;padding:12px;border-radius:12px;border:1px solid #c4e5f1}
@media (max-width:420px){.access-form{margin-top:30px}.admin-tabella{font-size:13px}}

/* A10: la console è più larga dei moduli di accesso; tabelle che scorrono in orizzontale sul telefono */
.access-form.admin-console{max-width:980px}
.access-form select{width:100%;min-height:48px;padding:12px;border:1px solid #c4e5f1;border-radius:12px;background:#ffffffbf;color:#173f55;font:inherit}
.access-form select:focus-visible,.admin-tabella button:focus-visible{outline:3px solid #2b9ccb;outline-offset:2px}
.admin-scorri{overflow-x:auto}
.admin-tabella td .access-azioni{margin-top:0}
.admin-esito{margin-top:20px}
/* WebKit ignora riempimento e altezza dei select con l'aspetto nativo: aspetto proprio e freccia disegnata (niente immagini) */
.access-form select{background-image:linear-gradient(45deg,transparent 50%,#46768b 50%),linear-gradient(135deg,#46768b 50%,transparent 50%);background-position:calc(100% - 20px) 50%,calc(100% - 15px) 50%;background-size:5px 5px;background-repeat:no-repeat;-webkit-appearance:none;appearance:none;padding-right:40px}
.admin-tabella .admin-tu{font-size:13px;color:#3e697c;font-weight:400}
@media (max-width:600px){.admin-tabella thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.admin-tabella tr{display:block;padding:12px 0;border-bottom:1px solid #c4e5f1}.admin-tabella th,.admin-tabella td{display:block;border:0;padding:3px 0}.admin-tabella td[data-etichetta]::before{content:attr(data-etichetta) ": ";font-weight:700;color:#46768b}}

/* Profili: registrazione, Google, profilo e dispositivi (accesso-pagina.js) */
.access-form .access-check{flex-direction:row;align-items:center;gap:10px;font-size:14px;font-weight:600;color:#2f5f77;cursor:pointer}
.access-form .access-check input{width:22px;min-width:22px;height:22px;min-height:22px;padding:0;margin:0;accent-color:#1689c1}
.access-vai{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:14px}
.access-link{min-height:44px;padding:0;border:0;background:none;color:#0879ae;font:inherit;font-size:14px;font-weight:700;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.access-link:hover{color:#075c84}.access-link:focus-visible{outline:3px solid #2b9ccb;outline-offset:3px;border-radius:6px}
.access-nota{margin-top:10px}
.google-btn{gap:10px!important;margin-top:16px;background:#fff!important;color:#173f55!important;border:1px solid #c4e5f1!important}
.google-btn .google-g{flex:none}
.access-o{display:flex;align-items:center;gap:12px;margin:16px 0 0;color:#4b6877;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.access-o::before,.access-o::after{content:"";flex:1;height:1px;background:#c4e5f1}
.profilo-nome{display:flex;align-items:center;gap:14px;margin:16px 0 4px}
.profilo-iniziale{flex:none;width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#0e82b6,#096f9f);color:#fff;font-weight:800;font-size:22px;box-shadow:inset 0 1px #ffffff80,0 6px 14px #146a9b30}
.profilo-nome strong{display:block;color:#173f55;overflow-wrap:anywhere}
.profilo-nome small{display:block;color:#4b6877;font-size:13px}
.profilo-dett{margin-top:18px;padding-top:12px;border-top:1px solid #c4e5f1}
.profilo-dett summary{min-height:44px;display:flex;align-items:center;cursor:pointer;font-weight:700;color:#2f5f77}
.profilo-lista{list-style:none;margin:8px 0 14px;padding:0;display:grid;gap:8px;font-size:14px;color:#173f55}
.profilo-lista li{padding:10px 12px;border-radius:12px;background:#ffffffbf;border:1px solid #c4e5f1}
.access-form .profilo-dett .a-button{width:auto}
/* main.css dà 25 px e azzurro a OGNI span dentro una scheda di accesso (le frecce dei bottoni): qui i testi con span si riportano alla misura giusta */
.access-form .access-o span{font-size:12px;color:#4b6877}
.access-form .profilo-nome>span:last-child{font-size:16px;color:#173f55}
.access-form .profilo-nome .profilo-iniziale{font-size:22px;color:#fff}
