:root{--bg:#f7f6f2;--fg:#1d1f22;--mut:#5d6168;--line:#c9c6bd;--pan:#fff;--blu:#1f3a5f;--blu-s:#e6ecf4;--amb:#8a5a00;--amb-s:#fdf3dc;--rosso:#8b2020;--rosso-s:#f7e4e4;--verde:#1f5f3a;--verde-s:#e3f0e8}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--fg);font:15px/1.5 "Source Sans 3",system-ui,sans-serif}
h1,h2,h3{font-family:"Source Serif 4",Georgia,serif;font-weight:600;margin:0}
.top{background:var(--blu);color:#fff;padding:10px 20px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px}
.top h1{font-size:20px;color:#fff}.top a{color:#fff}.top small{opacity:.85}
.lay{display:grid;grid-template-columns:210px 1fr;min-height:calc(100vh - 50px)}
@media(max-width:760px){.lay{grid-template-columns:1fr}nav{display:flex;flex-wrap:wrap}}
nav{border-right:1px solid var(--line);background:var(--pan);padding:10px 0}
nav a{display:block;color:var(--fg);padding:9px 18px;text-decoration:none;border-left:3px solid transparent}
nav a.att{border-left-color:var(--blu);background:var(--blu-s);font-weight:600}nav .gr{padding:10px 18px 4px;font-size:12px;color:var(--mut)}
main{padding:20px;max-width:1000px;min-width:0}
.pan{border:1px solid var(--line);background:var(--pan);padding:16px;margin-bottom:16px}.pan h2{font-size:18px;margin-bottom:10px}h3{font-size:15px;margin:12px 0 6px}
table{width:100%;border-collapse:collapse;font-size:14px}th{text-align:left;border-bottom:1px solid var(--line);padding:6px 4px}td{border-bottom:1px solid var(--line);padding:6px 4px;vertical-align:top}
.r{text-align:right}.scroll{overflow-x:auto}
.btn{border:1px solid var(--blu);background:var(--blu);color:#fff;padding:5px 12px;cursor:pointer;font:inherit;font-size:14px;text-decoration:none;display:inline-block}
.btn.sec{background:transparent;color:var(--blu)}.btn.rosso{border-color:var(--rosso);background:transparent;color:var(--rosso)}.btn:disabled{opacity:.45}
a.lk,button.lk{background:none;border:0;color:var(--blu);cursor:pointer;font:inherit;text-decoration:underline;padding:0}
input,select,textarea{font:inherit;font-size:14px;padding:5px 8px;border:1px solid var(--line);background:var(--bg);color:var(--fg)}textarea{width:100%;min-height:110px}
.st{font-size:12px;padding:1px 8px;border:1px solid var(--line);white-space:nowrap}
.st.nuova,.st.richiesto,.st.in_attivazione,.st.caricato,.st.censito,.st.da_confermare{background:var(--amb-s);color:var(--amb);border-color:transparent}
.st.in_lavorazione,.st.in_scansione,.st.in_verifica,.st.bozza,.st.in_indicizzazione{background:var(--blu-s);color:var(--blu);border-color:transparent}
.st.in_revisione,.st.modifiche,.st.rifiutato_qa{background:var(--rosso-s);color:var(--rosso);border-color:transparent}
.st.chiusa,.st.attivo,.st.riconsegnato,.st.archiviato,.st.approvato,.st.attestato{background:var(--verde-s);color:var(--verde);border-color:transparent}
.st.rifiutato,.st.cessato,.st.sospeso,.st.annullato{color:var(--rosso)}
.riq{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;margin-bottom:12px}.riq div{border:1px solid var(--line);padding:8px 10px}.riq b{display:block;font-size:22px;font-family:"Source Serif 4",serif}.riq span{font-size:13px;color:var(--mut)}
.riga{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:8px}.mut{color:var(--mut)}
.avv{padding:8px 12px;border-left:3px solid var(--amb);background:var(--amb-s);color:var(--amb);margin-bottom:12px}.avv.ok{border-color:var(--verde);background:var(--verde-s);color:var(--verde)}.avv.err{border-color:var(--rosso);background:var(--rosso-s);color:var(--rosso)}
.bozza{background:var(--bg);border:1px solid var(--line);padding:10px;white-space:pre-wrap;font-size:14px}
.log div{font-size:13px;padding:3px 0;border-bottom:1px dashed var(--line);color:var(--mut)}
.auth{max-width:420px;margin:60px auto;background:var(--pan);border:1px solid var(--line);padding:24px}.auth input{width:100%;margin:4px 0 10px}
.pw{position:relative;margin:4px 0 10px}.pw input{margin:0;padding-right:36px}.pw-occhio{position:absolute;right:0;top:0;bottom:0;width:34px;display:flex;align-items:center;justify-content:center;background:none;border:0;cursor:pointer;color:var(--mut)}.pw-occhio:hover,.pw-occhio:focus-visible{color:var(--blu)}.pw-occhio:focus-visible{outline:2px solid var(--blu);outline-offset:-2px}
.fasi{display:flex;flex-wrap:wrap;gap:4px;margin:8px 0 14px}.fasi span{font-size:12px;padding:1px 8px;border:1px solid var(--line)}.fasi .fatta{background:var(--verde-s);color:var(--verde);border-color:transparent}.fasi .cur{background:var(--blu);color:#fff;border-color:transparent}
.lock{border-style:dashed;background:var(--bg)}
ul.incl{margin:6px 0 0;padding-left:18px;font-size:14px}ul.incl li{margin:2px 0}
