:root{--blu:#1d3a5f;--blu2:#2f5d8a;--grigio:#f4f6f8;--testo:#1f2933;--bordo:#d5dbe1;--avviso:#fff7e0;--errore:#b42318}
*{box-sizing:border-box}
body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--testo);line-height:1.55;font-size:17px;background:#fff}
.bozza{background:#b42318;color:#fff;text-align:center;padding:.4rem;font-size:.85rem;font-weight:600}
header,main section,footer{padding:1.5rem 1.1rem}
.contenitore{max-width:860px;margin:0 auto}
header{background:var(--blu);color:#fff}
header .marchio{font-weight:700;letter-spacing:.02em;opacity:.9}
h1{font-size:1.65rem;line-height:1.25;margin:.8rem 0}
h2{font-size:1.3rem;color:var(--blu);margin-top:0}
h3{font-size:1.05rem;margin-bottom:.3rem}
a{color:var(--blu2)} header a{color:#fff}
.btn{display:inline-block;background:#f2b705;color:#1f2933;padding:.8rem 1.2rem;border-radius:6px;text-decoration:none;font-weight:700;border:0;font-size:1rem;cursor:pointer;margin:.2rem 0}
.btn.sec{background:#fff;color:var(--blu);border:1px solid #fff}
.btn.sec-scuro{background:#fff;color:var(--blu);border:1px solid var(--blu)}
.btn.disattivato{background:#c9ced4;color:#52606d;cursor:not-allowed}
section:nth-of-type(even){background:var(--grigio)}
.prezzo{font-size:1.2rem}
.avviso{background:var(--avviso);border-left:4px solid #f2b705;padding:.7rem .9rem}
.errore{color:var(--errore);font-weight:600}
.piccolo{font-size:.85rem;color:#52606d}
.demo-box{border:1px solid var(--bordo);border-radius:6px;background:#fff;padding:.6rem}
.demo-box iframe{width:100%;min-height:520px;border:0}
form .campo{margin-bottom:.9rem}
label{display:block;font-weight:600;margin-bottom:.25rem}
input,select,textarea{width:100%;padding:.6rem;border:1px solid var(--bordo);border-radius:5px;font-size:1rem;font-family:inherit}
.riga{display:grid;grid-template-columns:1fr;gap:.6rem}
.check{display:flex;gap:.6rem;align-items:flex-start;font-weight:400}
.check input{width:auto;margin-top:.3rem}
details{border:1px solid var(--bordo);border-radius:6px;padding:.6rem .9rem;margin-bottom:.6rem;background:#fff}
summary{font-weight:600;cursor:pointer}
ul.si li::marker{content:"✔ "} ul.no li::marker{content:"✘ "}
footer{background:#11243b;color:#cbd2d9;font-size:.85rem} footer a{color:#fff}
@media(min-width:700px){h1{font-size:2.1rem}.riga{grid-template-columns:1fr 1fr}}
/* aggiunte prototipo */
.wide{max-width:1240px;margin:0 auto}
.wow{border:3px dashed #f2b705;background:#fff7e0;color:#1f2933;padding:1rem;border-radius:8px;margin-top:1rem}
.wow strong{font-size:1.25rem}
.grid2{display:grid;grid-template-columns:1fr;gap:1rem}
@media(min-width:1000px){.grid2{grid-template-columns:1fr 1fr}}
.pannello{background:#fff;border:1px solid var(--bordo);border-radius:8px;padding:.8rem;overflow-x:auto}
.pannello h3{margin-top:0}
table.bom{border-collapse:collapse;width:100%;font-size:.8rem}
table.bom th,table.bom td{border-bottom:1px solid var(--bordo);padding:.28rem .35rem;text-align:left;vertical-align:top;white-space:nowrap}
table.bom th{background:#e8edf2}
tr.manca td{background:#fde8e7}
.tag{display:inline-block;padding:.05rem .45rem;border-radius:10px;font-weight:700;font-size:.75rem}
.ok{background:#dcf5e3;color:#14532d}.svhc{background:#fff1c2;color:#7a4b00}.miss{background:#b42318;color:#fff}.attesa{background:#e5e7eb;color:#52606d}
tr.lavora td{background:#e7f0fb}
.rosso{color:#b42318;font-weight:700}
.dich{white-space:pre-wrap;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:.78rem;background:#f9fafb;border:1px solid var(--bordo);padding:.7rem;border-radius:6px}
.calc .riga3{display:grid;grid-template-columns:1fr;gap:.6rem}
@media(min-width:700px){.calc .riga3{grid-template-columns:1fr 1fr 1fr}}
.barre .b{height:28px;border-radius:4px;color:#fff;font-weight:700;font-size:.85rem;padding:.25rem .5rem;margin:.3rem 0;white-space:nowrap;min-width:3rem}
.b.oggi{background:#b42318}.b.noi{background:#2f5d8a}
.esito-calc{font-size:1.1rem;font-weight:700}
.scelta .btn.attivo{outline:3px solid var(--blu)}
/* distinta reale (22/10) */
table.bom td.a-capo{white-space:normal;min-width:14rem}
tr.riga-esempio td{background:#eef0f3;color:#52606d;font-style:italic}
.esempio{background:#52606d;color:#fff}
.b.abb{background:#6b4fa0}
.opz-box{border:1px solid var(--bordo);border-radius:8px;padding:.6rem .9rem;background:#fff}
.opz-box h3{margin-top:0}
/* copiate da pagina/stile.css: senza queste il campo email era visibile anche senza consenso (2) */
.opz label{display:flex;gap:.55rem;align-items:flex-start;font-weight:400;margin:.25rem 0}
.opz input{width:auto;margin-top:.3rem}
.nascosto{display:none}
.wow a{color:#1d3a5f}
