/* GruppoVPM: stili NIS2 adattati ai componenti dell'assessment AI Act.
   Palette e moduli dal riferimento pubblico; menu dal riferimento fornito.
   Il caricamento è locale e non dipende dal sito NIS2. */
:root{--ink:#253333;--green:#536d17;--green-dark:#3e5410;--lime:#99c218;--line:#dfe7db;--wash:#f4f7f3}
body{min-width:320px;color:var(--ink);font:16px/1.5 Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",ui-sans-serif,sans-serif}
html[data-palette=verde]{--primary:#536d17;--hover:#3e5410;--accent:#99c218;--tint:#edf4e6;--bg:#f4f7f3;--border:#dfe7db;--muted:#6f7d68}
.brand-band{height:5px;background:linear-gradient(90deg,#f39800 0 16.6%,#fff000 16.6% 33.2%,#e60012 33.2% 49.8%,#bba5cc 49.8% 66.4%,#e91976 66.4% 83%,#99c218 83%)}
.application-page .top{padding-top:18px;padding-bottom:18px;gap:24px}
.application-page .brand{flex-shrink:0}
.application-page .brand span{color:#6f7d68;font-weight:600}
.application-page .main{margin-top:32px;padding-bottom:50px;min-width:0}
.application-page h1{font-size:30px;letter-spacing:-.7px}
.application-page h2{font-size:22px}
.application-page .card{border-radius:14px;padding:24px;box-shadow:0 5px 20px #25333304}
.application-page .card.compact{padding:18px}
.application-page .muted,.application-page .help{font-size:14px}
.application-page label{font-size:14px;font-weight:750;margin-top:20px;margin-bottom:7px}
.application-page .field{min-height:50px;padding:12px 14px;border:1px solid #cbd8c4;border-radius:10px;color:var(--ink);background:#fff;font-size:16px;transition:border-color .15s,box-shadow .15s}
.application-page .field:focus{border-color:var(--primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 16%,transparent);outline:2px solid var(--primary);outline-offset:1px}
.application-page .field::placeholder{color:#84908e;opacity:1}
.application-page textarea.field{min-height:90px;line-height:1.5}
.application-page button,.application-page .button{border-radius:10px;min-height:46px;font-size:14px;font-weight:750;padding:12px 18px;transition:background .15s,border-color .15s}
.application-page .button.small,.application-page button.small{min-height:40px;font-size:13px;padding:9px 13px}
.application-page .button.secondary,.application-page button.secondary{border-color:#ccd7c0}
.application-page .notice{border-radius:10px;line-height:1.5}
.application-page .metric{border-radius:14px;padding:22px}
.application-page .metric strong{font-size:28px}
.application-page .metric span{font-size:13px}
.application-page table{font-size:14px}
.application-page th{font-size:11px}
.application-page td strong{font-size:15px}
.application-page .section-link{font-size:13px;min-height:44px;padding:12px 10px}
.application-page .question h3 label{font-size:18px;line-height:1.4}
.application-page .question{padding:25px 0}
.application-page .answer-details{border-radius:10px;padding:14px 16px}
.application-page .answer-details summary{font-size:14px;min-height:24px}
.application-page .save-row{gap:14px}
/* Menu: tutti i collegamenti e il logout hanno lo stile compatto di Esci. */
.application-page .top-nav{display:flex;align-items:center;flex-wrap:wrap;gap:10px;min-width:0}
.application-page .top-nav>a,
.application-page .top-nav>form.inline>.nav-logout{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:42px;margin:0;padding:10px 16px;
  border:1px solid #ccd7c0;border-radius:8px;
  background:#fff;color:#536d17;
  font-family:inherit;font-size:13px;font-weight:600;line-height:1.2;
  text-decoration:none;white-space:nowrap;cursor:pointer;box-shadow:none;
}
.application-page .top-nav>a:hover,
.application-page .top-nav>form.inline>.nav-logout:hover{background:#f1f5e9;border-color:#9cb67b;color:#536d17;text-decoration:none}
.application-page .top-nav>a[aria-current=page]{background:#f1f5e9}
.application-page .top-nav>a:focus-visible,
.application-page .top-nav>form.inline>.nav-logout:focus-visible{outline:3px solid #9abe35;outline-offset:3px}
.application-page .top-nav>form.inline{display:inline-flex;margin:0}
@media(max-width:1100px){.application-page .top{flex-wrap:wrap}}
@media(max-width:780px){.application-page .top{padding:18px 16px;gap:20px}.top-nav{width:100%}.application-page .main{margin-top:22px;padding-bottom:30px}.application-page .card{padding:20px}.application-page h1{font-size:26px}.application-page .question h3 label{font-size:17px}.application-page .metric{padding:17px}.application-page .metric strong{font-size:25px}.application-page .filters label{min-width:min(160px,100%)}.application-page .filters>*{max-width:100%}}
@media(max-width:600px){.application-page .filters{flex-direction:column;align-items:stretch;gap:12px}.application-page .filters>label{flex:none;width:100%;margin:0}.application-page .filters>button,.application-page .filters>.button{flex:none;width:100%;margin:0}.application-page .table-wrap>table{min-width:760px}}
@media(prefers-reduced-motion:reduce){.application-page .field,.application-page button,.application-page .button{transition:none}}
@media print{body{font-size:12px}.application-page .main{margin:0;padding:0}.application-page .card{box-shadow:none;border:0;padding:0}.application-page .question h3 label{font-size:15px}}
