:root{--ink:#173448;--muted:#637c8d;--blue:#125c86;--blue2:#257eab;--accent:#e8f4f9;--canvas:#f5f8fa;--border:#dbe6eb;--shadow:0 5px 25px rgba(25,61,86,.055);font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:var(--canvas);font-size:15px;line-height:1.52}
*{box-sizing:border-box}body{margin:0;min-width:320px}a{color:#086b9e;text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.6;cursor:not-allowed}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(1.8rem,3.8vw,2.75rem);line-height:1.18;letter-spacing:-.035em;margin-bottom:13px}h2{font-size:1.26rem;letter-spacing:-.02em}h3{font-size:1.1rem;letter-spacing:-.015em}small{font-size:.79rem}.container{max-width:1190px;margin:0 auto;padding:0 26px}.main{padding-top:40px;padding-bottom:65px;min-height:calc(100vh - 164px)}.topbar{background:#13394f;color:#fff;box-shadow:0 1px 8px #17475b20}.topbar-inner{display:flex;align-items:center;justify-content:space-between;gap:22px;min-height:77px}.brand{color:#fff;display:flex;align-items:center;gap:12px}.brand:hover{text-decoration:none}.brand span:last-child{display:flex;flex-direction:column;line-height:1.1;gap:3px}.brand strong{font-size:1.08rem;letter-spacing:.11em}.brand small{font-size:.72rem;color:#bcd4de;letter-spacing:.025em}.logo-mark{background:#2a7498;border:1px solid #6099b4;width:39px;height:39px;display:grid;place-items:center;border-radius:12px;font-size:21px}.topbar nav{display:flex;gap:19px;align-items:center;flex-wrap:wrap}.topbar nav a,.nav-logout{color:#d9e8ee;font-size:.87rem}.nav-logout{background:none;border:0;padding:0}.nav-inline{display:inline;margin:0}.sitefooter{border-top:1px solid var(--border);padding:20px 0;color:var(--muted);font-size:.79rem}.sitefooter span{margin:0 6px}.eyebrow{color:#24799f;letter-spacing:.14em;font-size:.75rem;font-weight:800;margin-bottom:11px}.hero{padding:18px 0 26px;max-width:680px}.hero h1{font-size:clamp(2.2rem,5vw,3.65rem)}.hero p:not(.eyebrow){color:var(--muted);font-size:1.05rem}.panel{background:#fff;border:1px solid var(--border);border-radius:17px;box-shadow:var(--shadow);padding:27px;margin-bottom:22px}.panel-head,.page-header,.survey-head{display:flex;justify-content:space-between;align-items:center;gap:20px}.panel-head{margin-bottom:20px}.panel-head h2,.panel-head h3{margin-bottom:3px}.panel-head p,.page-header p:not(.eyebrow){margin-bottom:0;color:var(--muted)}.outside{margin-top:28px;margin-bottom:12px}.site-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.site-tile{border:1px solid var(--border);background:#f9fcfd;display:flex;align-items:center;gap:12px;padding:18px;border-radius:12px;color:var(--ink)}.site-tile:hover{background:#edf6fa;text-decoration:none;border-color:#9abfcf}.site-symbol{width:39px;height:39px;display:grid;place-items:center;color:#136a98;background:#e2f1f7;border-radius:10px;font-size:24px}.site-label{font-weight:650;flex:1}.site-go{font-size:21px;color:#2e7694}.privacy-strip{margin-top:12px;display:flex;gap:13px;align-items:flex-start;background:#eaf3f7;padding:17px 19px;border-radius:12px;color:#456779}.privacy-strip p{margin:0;font-size:.87rem}.privacy-strip span{font-size:24px;color:#2384a6}.pill{display:inline-flex;align-items:center;white-space:nowrap;border-radius:999px;font-size:.78rem;font-weight:700;padding:6px 11px}.pill.neutral{background:#eaf1f5;color:#4b6679}.pill.success{background:#def4e9;color:#21684e}.count-label{color:var(--muted);font-weight:600;font-size:.84rem;white-space:nowrap}.muted{color:var(--muted)}.subtle-link{color:#4c7590;font-weight:650;font-size:.85rem}.page-header{margin-bottom:26px}.page-header h1{margin-bottom:6px}.btn-primary,.btn-outline{border:1px solid transparent;min-height:43px;border-radius:10px;padding:11px 17px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:.91rem;font-weight:700;white-space:nowrap}.btn-primary{color:#fff;background:var(--blue)}.btn-primary:hover{background:#0e4c6f;text-decoration:none}.btn-outline{color:#165b80;background:#fff;border-color:#cadbe4}.btn-outline:hover{background:#ecf5f9;text-decoration:none}.full{width:100%}.survey-wrap{max-width:810px;margin:0 auto}.survey-head{margin-bottom:30px}.survey-intro{margin-bottom:25px}.survey-intro p:not(.eyebrow){max-width:730px;color:var(--muted)}.privacy-warning{background:#eaf3f7;padding:12px 15px;border-left:3px solid #367e9a;font-size:.86rem;border-radius:6px}.progress-holder{margin-bottom:18px}.progress-head{display:flex;justify-content:space-between;font-size:.82rem;color:#5d7a8a;font-weight:650;margin-bottom:9px}.progress-track{height:7px;background:#dae8ee;border-radius:99px;overflow:hidden}.progress-bar{height:100%;width:0;background:#207da7;border-radius:99px;transition:width .2s}.step-heading{display:flex;align-items:center;gap:15px;border-bottom:1px solid #edf1f3;padding-bottom:19px;margin-bottom:20px}.step-heading h2{margin:0}.section-number{background:#e7f2f7;color:#0c6590;border-radius:11px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 45px;width:45px;height:45px;font-weight:800}.question{margin:0;padding:19px 0 23px;border:0;border-bottom:1px solid #edf1f3;min-width:0}.question:last-child{border:0;padding-bottom:0}.question legend{font-weight:700;float:left;width:100%;padding:0;margin-bottom:12px}.question legend::after{content:'';display:table;clear:both}.question .hint{font-weight:600;color:#456879;font-size:.9rem}.answer-options{display:grid;grid-template-columns:1fr 1fr;gap:10px;clear:both}.answer-option{border:1px solid #d9e4e9;border-radius:10px;padding:13px;display:flex;align-items:center;gap:10px;font-size:.91rem;cursor:pointer;transition:background .12s}.answer-option:hover{background:#f4fafc}.answer-option:has(input:checked){background:#e7f3f9;border-color:#4e9bbd;color:#084f74;font-weight:650}.answer-option input{accent-color:#136e97;margin:0;flex-shrink:0}.question textarea{width:100%;border-radius:9px;border:1px solid #cadbe3;resize:vertical;padding:12px 13px;min-height:66px}.question textarea:focus,.filter-form input:focus,.filter-form select:focus,input:focus,select:focus{outline:2px solid #4b9ec2;outline-offset:1px}.followup{padding-top:8px}.followup legend{margin-bottom:8px}.survey-actions{display:flex;justify-content:flex-end;gap:12px;margin:15px 0}.survey-actions #prev-step{margin-right:auto}.footnote{font-size:.79rem;color:#7a8e9a}.success-box{max-width:650px;margin:55px auto;text-align:center;background:#fff;border:1px solid var(--border);padding:44px 30px;border-radius:20px}.success-icon{width:64px;height:64px;background:#ddf4e8;border-radius:50%;color:#2d8462;display:grid;place-items:center;font-size:33px;margin:0 auto 20px}.receipt{background:#f2f7fa;border:1px dashed #b4cdd9;padding:17px;border-radius:11px;margin:24px 0}.receipt span{display:block;font-size:.8rem;color:var(--muted);margin-bottom:5px}.receipt strong{font-family:monospace;word-break:break-all}.login-wrap{display:grid;place-items:center;min-height:66vh}.login-card{width:min(100%,460px);padding:38px}.lock-mark{display:grid;place-items:center;border-radius:13px;background:#e7f4f9;color:#156b92;width:52px;height:52px;font-size:34px;margin-bottom:21px}.form-label{display:block;font-size:.89rem;font-weight:650;margin:18px 0 7px}.login-card input,.settings-form input:not([type=checkbox]),.settings-form select,.inline-form input,.filter-form input,.filter-form select{display:block;width:100%;border:1px solid #ccdae2;border-radius:9px;padding:11px 12px;background:#fff;color:var(--ink);height:43px}.login-card .btn-primary{margin-top:25px}.alert{padding:12px 14px;border-radius:9px}.alert.error{background:#fff2f1;color:#a3302b}.filter-form{display:flex;flex-wrap:wrap;align-items:end;gap:13px;padding:21px}.filter-form label{display:block;font-size:.81rem;font-weight:700;flex:1;min-width:160px}.filter-form label:first-child{flex:2}.filter-form input,.filter-form select{margin-top:7px}.filter-form .btn-primary,.filter-form .btn-outline{margin-bottom:0}.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.kpi{background:#fff;border:1px solid var(--border);padding:21px;border-radius:15px;box-shadow:var(--shadow)}.kpi span,.kpi small{color:#647f90;display:block}.kpi span{font-size:.82rem;font-weight:650}.kpi strong{display:block;font-size:2.15rem;letter-spacing:-.05em;line-height:1.5}.kpi small{font-size:.75rem}.action-buttons{display:flex;gap:9px;flex-wrap:wrap}.dashboard-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:16px}.dashboard-grid .panel{min-width:0}.score-row{margin:17px 0}.score-line{display:flex;justify-content:space-between;gap:10px;font-size:.86rem}.score-line span{max-width:85%}.score-line strong{white-space:nowrap}.score-track,.month-bar{height:9px;background:#e6eef2;border-radius:99px;overflow:hidden;margin:6px 0}.score-fill{background:#238d83;height:100%;border-radius:99px;width:0}.score-fill.low{background:#d18261}.score-fill.medium{background:#d4ae58}.score-row small{color:#8094a0}.month-bars{margin-top:20px}.month-row{display:grid;grid-template-columns:76px 1fr 35px;gap:11px;align-items:center;font-size:.86rem;margin:14px 0}.month-row strong{text-align:right}.month-fill{background:#3b92b3;height:100%;width:0;border-radius:99px}.separator{border-top:1px solid #edf1f3;margin:27px 0}.critical-item{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid #eef2f5;padding:12px 0;font-size:.87rem}.critical-item strong{color:#ae704d}.empty{color:#82949e;font-size:.9rem;padding:15px 0}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;border-bottom:1px solid #eaf0f3;padding:12px 13px;font-size:.87rem;vertical-align:top}th{background:#f6f9fa;color:#617b8a;font-size:.76rem;letter-spacing:.02em}table tr:last-child td{border-bottom:0}.distribution{display:grid;grid-template-columns:repeat(2,minmax(200px,1fr));gap:3px 20px;min-width:420px}.distribution div{display:flex;justify-content:space-between;gap:10px;font-size:.77rem}.distribution span{color:var(--muted)}.distribution strong{white-space:nowrap}.detail-list{display:grid}.detail-row{display:grid;grid-template-columns:40% 1fr;gap:15px;border-bottom:1px solid #eef2f5;padding:13px 0;font-size:.9rem}.detail-row:last-child{border-bottom:0}.detail-row span{color:var(--muted)}.detail-row strong{font-weight:650;white-space:pre-wrap;overflow-wrap:anywhere}.inline-form{display:flex;gap:12px;align-items:end;flex-wrap:wrap}.inline-form label{flex:1;min-width:220px}.inline-form input{margin-top:6px}.site-management,.users-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.site-admin-card{display:flex;justify-content:space-between;gap:15px;align-items:start;min-width:0}.site-admin-card a{word-break:break-all;font-size:.81rem}.site-admin-card form{margin-top:17px}.site-admin-card .panel-head{margin:0 0 5px}.site-admin-card h3{margin:0}.qr-holder{min-width:150px;display:flex;flex-direction:column;align-items:center;gap:6px}.qr-holder img{border:1px solid var(--border);border-radius:6px}.qr-holder a{font-size:.78rem}.settings-form label{display:block;font-weight:650;font-size:.87rem;margin-bottom:13px}.settings-form input:not([type=checkbox]),.settings-form select{margin-top:6px}.form-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.site-assignment{border:1px solid var(--border);padding:13px 15px;border-radius:10px;margin:14px 0 20px}.site-assignment legend{font-size:.8rem;color:var(--muted);font-weight:700}.check-option{display:inline-flex!important;align-items:center;gap:7px;margin:6px 14px 7px 0!important;font-weight:500!important}.check-option input{accent-color:#186f96}.users-grid .panel{margin-bottom:0}.error-page{max-width:660px;margin:70px auto}.error-page p:not(.eyebrow){color:var(--muted)}
@media(max-width:960px){.dashboard-grid{grid-template-columns:1fr}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.site-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.site-management,.users-grid{grid-template-columns:1fr}.form-columns{grid-template-columns:1fr 1fr}}
@media(max-width:630px){.container{padding:0 16px}.main{padding-top:24px;padding-bottom:45px}.topbar-inner{align-items:start;padding:13px 16px;flex-direction:column;gap:10px}.topbar nav{gap:14px}.site-grid{grid-template-columns:1fr}.panel{padding:19px;border-radius:13px}.panel-head,.page-header{align-items:start;flex-direction:column;gap:11px}.hero h1{font-size:2.2rem}.survey-head{flex-wrap:wrap}.answer-options{grid-template-columns:1fr}.filter-form label{min-width:100%}.kpi-grid{gap:9px}.kpi{padding:16px}.kpi strong{font-size:1.8rem}.site-admin-card{flex-wrap:wrap}.detail-row{grid-template-columns:1fr;gap:2px}.form-columns{grid-template-columns:1fr}.receipt strong{font-size:.8rem}.survey-actions{gap:8px}.btn-primary,.btn-outline{white-space:normal;font-size:.87rem}.count-label{white-space:normal}}
@media print{.topbar,.sitefooter,.filter-form,.action-buttons,.nav-inline{display:none!important}.main{padding:10px}.panel{box-shadow:none;break-inside:avoid}}
[hidden]{display:none!important}

/* PNES v1.1: distribuzione fedele ai cinque livelli della scala. */
.scale-legend{display:flex;flex-wrap:wrap;gap:9px 15px;margin:0 0 20px}
.legend-item{display:inline-flex;align-items:center;gap:6px;font-size:.73rem;color:#506c7f}
.legend-item::before{content:"";display:inline-block;width:10px;height:10px;border-radius:3px;background:var(--level-color)}
.level-0{--level-color:#178475}
.level-1{--level-color:#65b7a3}
.level-2{--level-color:#e2ad4f}
.level-3{--level-color:#dd8460}
.level-4{--level-color:#b24b53}
.scale-row{padding:15px 0;border-bottom:1px solid #eaf0f3;margin:0}
.scale-row:last-child{border:0;padding-bottom:0}
.scale-row .score-line{align-items:baseline;gap:15px}
.scale-row .score-line strong{font-size:.9rem;white-space:normal}
.scale-row .sample-count{font-size:.76rem;color:#6c8291;white-space:nowrap;flex-shrink:0}
.stack-track{display:flex;height:14px;overflow:hidden;border-radius:5px;background:#e7eef1;margin:12px 0 9px}
.stack-segment{height:100%;width:0;display:block;background:var(--level-color);flex:0 0 auto}
.scale-breakdown{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 18px}
.scale-breakdown-item{display:flex;justify-content:space-between;align-items:baseline;gap:6px;font-size:.73rem;color:#587487}
.scale-breakdown-item strong{color:#173448;white-space:nowrap}
.scale-summary{font-size:.77rem;color:#547084;margin:11px 0 0}
.scale-summary strong{color:#173448}
.sample-warning{font-size:.75rem;color:#936d25;margin:6px 0 0}
.critical-item small{font-size:.75rem;color:#7a90a0}
.critical-item strong{white-space:nowrap}
@media(max-width:630px){
.scale-breakdown{grid-template-columns:1fr}
.scale-row .score-line{align-items:flex-start;flex-wrap:wrap}
.scale-row .sample-count{white-space:normal}
.critical-item{flex-wrap:wrap}
}

/* PNES v1.2 – eliminazione questionari, accessibile soltanto all'amministratore */
.pnes-delete-panel{margin-top:18px}
.pnes-delete-link{display:inline-block;margin-left:14px;color:#a62835!important;font-weight:700}
.pnes-delete-warning{padding:15px 18px;background:#fff3f1;border:1px solid #e8b0b4;border-radius:12px;color:#7e1e29;margin:16px 0}
.pnes-delete-success{padding:14px 18px;margin-bottom:18px;background:#e9f5ef;border:1px solid #a5d3b9;border-radius:12px;color:#1d6541;font-weight:700}
.pnes-delete-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:18px}
.pnes-delete-button{border:0;border-radius:10px;background:#aa2836;color:white;cursor:pointer;padding:12px 20px;font-weight:700}
.pnes-delete-button:hover,.pnes-delete-button:focus-visible{background:#851e2a}
.pnes-delete-code{display:block;max-width:100%;overflow-wrap:anywhere;padding:12px;background:#f3f6f8;border-radius:9px;font-size:1.02rem}
.pnes-delete-confirm input[type=text]{max-width:100%;width:460px;font-family:monospace}
.pnes-list-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.pnes-pagination{display:flex;gap:16px;align-items:center;justify-content:space-between;margin-top:16px}
@media print{.pnes-delete-link,.pnes-delete-actions{display:none!important}}
