/* Check NIS2 e Check chiamate AI: solo le aggiunte a stile.css, con gli stessi colori e caratteri del sito */

/* Hero dei check: il testo resta in alto accanto alla card, anche con domande lunghe */
.hero .wrap:has(.check-card){align-items:start}
@media (min-width:1101px){.hero .wrap:has(.check-card) .hero-copy{position:sticky;top:112px;padding-top:24px}}

/* Domande */
.check-card{min-height:520px}
.check-q h2{font-size:clamp(22px,2vw,26px);line-height:1.2}
.step-top{gap:16px}
.meter{flex:0 0 120px;height:6px;border-radius:3px;background:#E1E8E4;overflow:hidden}
.meter i{display:block;height:100%;border-radius:3px;background:var(--forest);transition:width .25s ease}
.tiles.one{grid-template-columns:1fr}
.tiles.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.tiles-group{grid-column:1/-1;margin:6px 0 -2px;font-size:13px;font-weight:700;color:var(--forest);letter-spacing:.02em}
.tiles-group:first-child{margin-top:0}
.tiles.one .tile-box{min-height:56px}
.tile input[type="checkbox"]+.tile-box::before{content:"";width:20px;height:20px;border-radius:6px;border:2px solid #C9D6CF;background:#fff;flex-shrink:0}
.tile input[type="checkbox"]:checked+.tile-box::before{border-color:var(--forest);background:var(--forest) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 12l5 5 9-10' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/14px no-repeat}
.q-nav{display:flex;justify-content:space-between;align-items:center;gap:16px}
.q-nav [data-next]{margin-left:auto}
.inp-euro{position:relative;display:block;max-width:260px}
.inp-euro::before{content:"€";position:absolute;left:16px;top:50%;transform:translateY(-50%);font-weight:700;color:var(--muted)}
.inp-euro .inp{padding-left:38px;font-size:20px;font-weight:600}

/* Riepilogo nella card e form */
.check-sum{display:flex;flex-direction:column;gap:10px;align-items:flex-start;padding:16px 18px;border-radius:18px;background:var(--cream);border:1px solid var(--line)}
.check-sum p{font-size:15px;color:var(--text)}
.check-sum a{font-weight:700}
.pill.is-ok{background:var(--mint);color:var(--forest)}
.pill.is-warn{background:var(--sun-soft);color:#7A5A00}
.pill.is-alert{background:var(--rose);color:#A12C1F}
.pill.is-info{background:var(--sky);color:#1F4E86}
.pill.is-neutral{background:var(--stone);color:var(--text)}
.check-actions{display:flex;flex-direction:column;gap:8px;align-items:center}
.done strong{color:var(--ink)}

/* Esito */
.check-result .sec-head .pill{align-self:flex-start}
.score-card{background:#fff;border-radius:28px;padding:clamp(24px,3vw,40px);display:flex;flex-direction:column;gap:18px}
.score-top{display:flex;align-items:flex-end;gap:14px;flex-wrap:wrap}
.score-num{font:800 clamp(56px,6vw,72px)/.9 var(--display);letter-spacing:-.03em;color:var(--ink)}
.score-of{font-size:16px;font-weight:600;color:var(--muted);padding-bottom:6px}
.strip{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:6px}
.strip i{display:block;height:14px;border-radius:4px;background:#E1E8E4}
.strip .full{background:var(--forest)}
.strip .half{background:linear-gradient(90deg,var(--forest) 0 50%,#E1E8E4 50% 100%)}
.strip-legend{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px 20px;font-size:14px;color:var(--text)}
.strip-legend li{display:flex;align-items:center;gap:8px}
.strip-legend i{display:block;width:16px;height:10px;border-radius:3px;background:#E1E8E4}
.strip-legend .full{background:var(--forest)}
.strip-legend .half{background:linear-gradient(90deg,var(--forest) 0 50%,#E1E8E4 50% 100%)}
.score-note{font-size:14px;line-height:1.5;color:var(--muted)}
.gaps-head{margin-top:clamp(48px,6vw,72px)}
.prob .tag{align-self:flex-start;padding:4px 10px;border-radius:999px;background:var(--stone);color:var(--muted);font-size:13px;font-weight:600}
.check-result .note-line a{font-weight:700}
.stats h3{font-size:clamp(28px,3vw,38px);line-height:1.05;margin-bottom:8px}
.stats h3 small{font:600 16px var(--body);color:var(--text);letter-spacing:0}
.check-result .svc .example{padding:14px 16px;border-radius:14px;background:var(--mint);font-size:15px;line-height:1.5;color:var(--ink)}
.check-result .svc .example b{display:block;font-size:13px;color:var(--forest);margin-bottom:2px}
.compat-col{display:flex;flex-direction:column;gap:20px}
.compat dd .pill{display:inline-block;margin-bottom:6px;padding:5px 12px;font-size:13px}
.calc{border-radius:20px}
.calc summary{min-height:60px;font-size:17px}
.calc p{font-size:15.5px}
.demo{display:flex;flex-direction:column;gap:6px;padding:20px 24px;border-radius:20px;background:var(--sun-soft)}
.demo small{font-size:14px;font-weight:700;color:#7A5A00}
.demo-line{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.demo-num{font:800 26px var(--display);letter-spacing:-.01em;user-select:all}
.demo p{font-size:15px;color:var(--text)}
.result-cta{display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center;justify-content:center;margin-top:28px}

@media (max-width:760px){
.check-card{min-height:0}
.tiles.three{grid-template-columns:1fr}
.meter{flex-basis:80px}
.score-num{font-size:56px}
}
