:root{--ink:#10231b;--green:#76b82a;--green-dark:#347047;--paper:#f4f7f3;--line:#dce5dd;--muted:#65726b;--white:#fff;--shadow:0 16px 50px rgba(16,35,27,.1)}*{box-sizing:border-box}html{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper)}body{margin:0;min-height:100vh}button,input,select{font:inherit}.topbar{height:84px;background:#fff;display:flex;align-items:center;padding:0 clamp(20px,4vw,64px);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.brand{display:flex;width:175px}.brand img{width:100%;height:auto}.topbar nav{display:flex;gap:6px;margin:auto}.nav-link{border:0;background:transparent;padding:14px 16px;color:#536159;font-weight:650;cursor:pointer;border-radius:10px}.nav-link:hover,.nav-link.active{color:var(--green-dark);background:#eef6e8}.account{display:flex;align-items:center;gap:10px;border:0;background:transparent;cursor:pointer}.account span{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--ink);color:#fff;font-size:13px}.account b{font-size:14px}.intro{padding:44px clamp(20px,6vw,90px) 30px;background:linear-gradient(115deg,#0d261c,#1f4934);color:#fff;display:flex;justify-content:space-between;align-items:end;gap:30px}.intro h1{font-size:clamp(32px,4vw,56px);line-height:1.02;margin:8px 0 12px;letter-spacing:-.04em}.intro p{margin:0;color:#c9d7cf}.intro .eyebrow{font-size:12px;font-weight:800;letter-spacing:.18em;color:#9bce62}.progress{display:flex;align-items:center}.progress span{width:34px;height:34px;border:1px solid rgba(255,255,255,.4);border-radius:50%;display:grid;place-items:center;font-weight:800}.progress span.done{background:var(--green);border-color:var(--green);color:#112419}.progress i{height:1px;width:50px;background:rgba(255,255,255,.3)}main{min-height:calc(100vh - 84px)}.view{display:none}.active-view{display:block}.catalog-heading{padding:38px clamp(20px,6vw,90px) 20px;display:flex;align-items:end;justify-content:space-between;gap:24px}.step-label{font-size:12px;letter-spacing:.18em;color:var(--green-dark);font-weight:800;margin:0 0 7px}.catalog-heading h2,.placeholder h2{font-size:28px;margin:0}.search{width:min(360px,100%);background:#fff;border:1px solid var(--line);border-radius:12px;height:48px;display:flex;align-items:center;padding:0 14px;gap:10px}.search span{font-size:24px;color:#859088}.search input{border:0;outline:0;background:transparent;width:100%;font-size:15px}.category-tabs{display:flex;gap:9px;padding:0 clamp(20px,6vw,90px) 24px;overflow:auto}.tab{white-space:nowrap;border:1px solid var(--line);background:#fff;color:#536159;padding:11px 17px;border-radius:999px;font-weight:700;cursor:pointer}.tab:hover,.tab.active{background:var(--ink);border-color:var(--ink);color:#fff}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:28px;padding:0 clamp(20px,6vw,90px) 60px}.products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-content:start}.product{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;cursor:pointer;transition:.2s;position:relative}.product:hover,.product.selected{border-color:var(--green);transform:translateY(-2px);box-shadow:0 12px 30px rgba(20,45,32,.1)}.product.selected:after{content:'✓';position:absolute;top:12px;right:12px;width:28px;height:28px;border-radius:50%;background:var(--green);display:grid;place-items:center;font-weight:900}.product-image{height:165px;background:linear-gradient(150deg,#f7faf7,#e5eee7);display:grid;place-items:center;padding:20px}.product-image img{width:100%;height:100%;object-fit:contain}.product-body{padding:17px}.badge{font-size:10px;font-weight:800;letter-spacing:.1em;color:var(--green-dark)}.product h3{font-size:18px;margin:7px 0 6px}.product p{font-size:13px;line-height:1.45;color:var(--muted);margin:0}.product-footer{display:flex;justify-content:space-between;align-items:center;margin-top:14px;padding-top:12px;border-top:1px solid #edf1ed}.product-footer strong{font-size:14px}.product-footer span{color:var(--green-dark);font-weight:800}.config-card{background:#fff;border:1px solid var(--line);border-radius:20px;position:sticky;top:105px;align-self:start;min-height:410px;box-shadow:var(--shadow);overflow:hidden}.empty-state{padding:65px 38px;text-align:center}.window-icon{width:100px;height:118px;border:8px solid #cfdcd2;margin:0 auto 28px;display:flex;background:#edf4ee}.window-icon span{flex:1;border-right:3px solid #cfdcd2}.window-icon span:last-child{border:0}.empty-state h3{margin:0 0 7px}.empty-state p{color:var(--muted);font-size:14px;line-height:1.5}.hidden{display:none!important}.config-content{padding:24px}.config-title{display:flex;justify-content:space-between;align-items:start;padding-bottom:18px;border-bottom:1px solid var(--line);margin-bottom:18px}.config-title p{font-size:10px;letter-spacing:.12em;color:var(--green-dark);font-weight:800;margin:0 0 4px}.config-title h3{font-size:22px;margin:0}.config-title button{border:0;background:#edf2ee;border-radius:50%;width:32px;height:32px;font-size:22px;cursor:pointer}.config-content>label,.field-row label{display:block;font-size:13px;font-weight:750;margin-bottom:15px}.config-content select,.config-content input[type=number]{width:100%;height:45px;margin-top:7px;border:1px solid #ccd8ce;border-radius:9px;padding:0 11px;background:#fff}.config-content label small{float:right;color:var(--muted);font-weight:500}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.checks{display:grid;gap:9px;margin:8px 0 17px}.checks label{font-size:13px;padding:10px;background:#f4f7f4;border-radius:8px}.checks b{float:right;font-size:12px;color:var(--green-dark)}.price-box{background:var(--ink);color:#fff;border-radius:13px;padding:17px;display:grid;grid-template-columns:1fr auto;align-items:end}.price-box span{font-size:12px;color:#bad0c2}.price-box strong{font-size:26px}.price-box small{grid-column:1/-1;color:#8fa99a;margin-top:4px}.primary{width:100%;margin-top:12px;border:0;border-radius:11px;background:var(--green);color:#122116;padding:15px;font-weight:850;display:flex;justify-content:space-between;cursor:pointer}.primary:hover{filter:brightness(.95)}.placeholder{padding:54px clamp(20px,6vw,90px)}.placeholder>p{color:var(--muted)}.doc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:30px}.doc-grid article{background:#fff;border:1px solid var(--line);padding:28px;border-radius:16px}.doc-grid b{display:block;font-size:30px;color:var(--green-dark)}.doc-grid span{color:var(--muted)}#quoteList{display:grid;gap:12px;margin-top:25px}.quote-row{background:#fff;border:1px solid var(--line);padding:18px;border-radius:12px;display:flex;justify-content:space-between}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,120px);background:var(--ink);color:#fff;padding:13px 20px;border-radius:10px;transition:.25s;z-index:30}.toast.show{transform:translate(-50%,0)}@media(max-width:1100px){.workspace{grid-template-columns:1fr}.config-card{position:relative;top:0}.products{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.topbar{height:72px;padding:0 16px}.brand{width:135px}.topbar nav{position:fixed;bottom:0;left:0;right:0;background:#fff;border-top:1px solid var(--line);padding:8px;z-index:30;justify-content:space-around}.nav-link{font-size:12px;padding:10px 8px}.account b{display:none}.intro{padding:30px 20px 26px;align-items:start}.progress{display:none}.catalog-heading{padding:28px 20px 16px;align-items:stretch;flex-direction:column}.category-tabs{padding:0 20px 18px}.workspace{padding:0 20px 95px}.products{grid-template-columns:1fr}.product-image{height:180px}.doc-grid{grid-template-columns:1fr}.config-card{min-height:0}.empty-state{padding:35px}.placeholder{padding:35px 20px 100px}}

/* 1.0.24: gerarchia corretta del ramo Alzante scorrevole */
.catalog-branch-head{grid-column:1/-1;display:flex;gap:16px;align-items:center;padding:14px 16px;margin:0 0 8px;border:1px solid #dfe4df;border-radius:12px;background:#fff}.catalog-branch-head h3{margin:2px 0 3px}.catalog-branch-head p{margin:0;color:#667067;font-size:13px}.catalog-branch-head small{font-weight:800;letter-spacing:.08em;color:#6fad55}.catalog-back{border:1px solid #d7ddd6;background:#f7f9f7;border-radius:9px;padding:10px 12px;font-weight:700;white-space:nowrap;cursor:pointer}@media(max-width:700px){.catalog-branch-head{display:block}.catalog-back{margin-bottom:10px;width:100%}}

/* 1.0.24: nasconde automaticamente le categorie senza prodotti top-level e i filtri durante i rami interni */

/* IWInco 1.0.161 — riepilogo evidente nell'area cliente */
.iwinco-account-summary{margin:22px 0 28px;padding:22px;border:1px solid #dbe5df;border-radius:18px;background:#f7faf8}
.iwinco-account-summary-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;margin-bottom:16px}
.iwinco-account-summary-head h3{font-size:21px;margin:4px 0 6px}.iwinco-account-summary-head p{margin:0;color:#51635c}
.iwinco-document-counters{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:12px}
.iwinco-counter-card{border:1px solid #dae5df;background:white;padding:17px;border-radius:13px;min-height:100px}
.iwinco-counter-card strong{font-size:30px;line-height:1.2;display:block;color:#193d2c;font-weight:750}
.iwinco-counter-card span{font-size:13px;color:#53635a;display:block;margin-top:6px}
.iwinco-counter-card[data-counter="preventivi"],.iwinco-counter-card[data-counter="ordini"]{border-color:#a1c7ae}
.iwinco-counts-message{grid-column:1/-1;padding:14px;background:#fff;border:1px solid #e1e7e3;border-radius:10px}
@media(max-width:600px){.iwinco-account-summary{padding:14px}.iwinco-document-counters{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* IWInco 1.0.202 — nella composta si parte sempre dall'ingombro totale. */
.iwinco-composite-active #dimensionsMarker{margin-top:18px;padding:14px 16px;border:2px solid #76b82a;border-radius:14px;background:#f4faee}
.iwinco-composite-active #dimensionsMarker b{color:#244f35}
.iwinco-composite-active #width,.iwinco-composite-active #height{border:2px solid #76b82a;background:#fff;font-weight:800}
.composite-sequence{display:flex;align-items:center;gap:12px;margin:0 0 14px;padding:13px 15px;border-radius:12px;background:#173d2a;color:#fff}
.composite-sequence b{font-size:11px;letter-spacing:.08em;color:#b9df8a;white-space:nowrap}.composite-sequence span{font-size:13px;line-height:1.35}
@media(max-width:640px){.composite-sequence{display:block}.composite-sequence b{display:block;margin-bottom:5px}}
