:root{--bg:#0c0c0e;--panel:#16161a;--panel-2:#1e1e24;--line:#2a2a32;--text:#f2f2f2;--muted:#a0a0ab;--accent:#c8ff3c;--accent-ink:#101400;--ok:#5ee08a;--warn:#ffc24a;--bad:#ff6b6b;--radius:14px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);margin:0}body{font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:15px;line-height:1.5}a{color:inherit}.shell{max-width:1040px;margin:0 auto;padding:0 16px 64px}.top{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:20px;margin-bottom:28px;padding:18px 0;display:flex}.top img{width:auto;height:38px;display:block}.nav{flex-wrap:wrap;gap:6px;display:flex}.nav a{background:var(--panel);border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:7px 14px;font-size:14px;font-weight:600;text-decoration:none}.nav a:hover{color:var(--text)}.nav a.on{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.badge{background:var(--bad);color:#fff;text-align:center;border-radius:999px;min-width:20px;margin-left:6px;padding:0 6px;font-size:12px;display:inline-block}h1{letter-spacing:-.02em;margin:0 0 4px;font-size:28px}h2{margin:32px 0 12px;font-size:18px}.lead{color:var(--muted);margin:0 0 24px}.tiles{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;display:grid}.tile{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:16px}.tile .label{color:var(--muted);font-size:13px}.tile .value{margin-top:4px;font-size:30px;font-weight:700}.tile .hint{color:var(--muted);font-size:12px}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);margin-bottom:12px;padding:18px}.card h3{margin:0 0 4px;font-size:16px}.meta{color:var(--muted);font-size:13px}.grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px;display:grid}.pill{border:1px solid var(--line);border-radius:999px;padding:2px 10px;font-size:12px;font-weight:600;display:inline-block}.pill.acceso{color:var(--ok);border-color:var(--ok)}.pill.spento{color:var(--muted)}.pill.in-costruzione,.pill.da-decidere{color:var(--warn);border-color:var(--warn)}.pill.approvato{color:var(--ok);border-color:var(--ok)}.pill.rifiutato{color:var(--bad);border-color:var(--bad)}.tabs{flex-wrap:wrap;gap:6px;margin-bottom:16px;display:flex}.tabs a{color:var(--muted);border-radius:8px;padding:4px 12px;text-decoration:none}.tabs a.on{background:var(--panel-2);color:var(--text)}.btn{font:inherit;cursor:pointer;border:1px solid var(--line);background:var(--panel-2);color:var(--text);border-radius:10px;padding:9px 16px;font-weight:700}.btn.primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.btn:disabled{opacity:.6;cursor:wait}.working{color:var(--muted);align-self:center;font-size:13px}.btn.danger{color:var(--bad);border-color:var(--bad);background:0 0}.actions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}textarea{width:100%;min-height:64px;font:inherit;color:var(--text);background:var(--bg);border:1px solid var(--line);border-radius:10px;margin-top:12px;padding:10px}.doc{border-top:1px solid var(--line);margin-top:12px;padding-top:4px}.doc h2{color:var(--accent);margin:18px 0 6px;font-size:15px}.doc h1{margin:12px 0 4px;font-size:20px}.doc p,.doc ul{margin:6px 0}.doc ul{padding-left:20px}details summary{cursor:pointer;color:var(--accent);margin-top:10px;font-weight:600}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--line);padding:10px 8px}th{color:var(--muted);font-size:13px;font-weight:600}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}.scroll{overflow-x:auto}.notice{border-left:3px solid var(--accent);background:var(--panel);border-radius:8px;margin-bottom:16px;padding:10px 14px}.notice.bad{border-color:var(--bad)}.empty{color:var(--muted);text-align:center;border:1px dashed var(--line);border-radius:var(--radius);padding:24px}.field{width:100%;font:inherit;color:var(--text);background:var(--bg);border:1px solid var(--line);border-radius:10px;margin-top:12px;padding:10px}.logout{margin-left:auto}.logout button{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:none;padding:0}.public{text-align:center;flex-direction:column;max-width:440px;min-height:100vh;margin:0 auto;padding:48px 16px 40px;display:flex}.public-logo{width:220px;height:auto;margin:0 auto 32px}.public h1{margin-bottom:12px;font-size:30px}.public-buttons{flex-direction:column;gap:12px;margin-top:12px;display:flex}.public-buttons .btn{padding:15px 16px;font-size:17px;text-decoration:none;display:block}.public-foot{margin-top:auto;padding-top:40px}.qr-img{background:#fff;border-radius:8px;width:132px;height:132px;padding:6px;display:block}.form-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:0 16px;display:grid}.form-grid label{color:var(--muted);margin-top:12px;font-size:13px;display:block}.form-grid label .field,.form-grid label textarea{margin-top:4px}
