:root{--paper:#f6f6f2;--white:#fff;--ink:#202923;--muted:#6d756f;--line:#dfe3dc;--accent:#dd572c;--accent-soft:#fff0e7;--green:#2d6b4a;--green-soft:#eaf3eb;--red:#ae3531;--yellow:#956700;--shadow:0 10px 35px #20292309;font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none;font-size:14px;line-height:1.5}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{outline-offset:4px}button{cursor:pointer}button:disabled{opacity:.5;cursor:wait}button,.button{border:1px solid var(--line);background:white;border-radius:7px;padding:10px 16px;color:var(--ink);font-weight:600;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:background .15s,box-shadow .15s}button:hover,.button:hover{background:#f0f2ec}button.primary,.button.primary{background:var(--accent);border-color:var(--accent);color:white}button.primary:hover{background:#c84921}button.dark{background:var(--ink);color:white;border-color:var(--ink)}button.quiet{border-color:transparent;background:transparent;color:var(--muted)}button.small{padding:7px 11px;font-size:12px}button.danger{color:var(--red)}input,textarea,select{border:1px solid #cdd3cb;border-radius:6px;padding:11px 12px;background:white;color:var(--ink);width:100%;min-width:0}input:focus,select:focus,textarea:focus{outline:2px solid #dd572c80;border-color:var(--accent)}input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent);flex:none}label{font-weight:600;font-size:12px;display:flex;flex-direction:column;gap:6px}label.check{flex-direction:row;align-items:center;font-weight:400;font-size:14px}h1,h2,h3,p{margin:0}h1{font-weight:600;font-size:34px;line-height:1.15;letter-spacing:-1.1px}h2{font-size:22px;font-weight:600;letter-spacing:-.5px}h3{font-size:16px;font-weight:650}p{color:var(--muted)}a{color:var(--accent)}small,.muted{color:var(--muted)}.mono{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px}.eyebrow{font-size:10px;font-weight:750;letter-spacing:1.8px;text-transform:uppercase}.num{font-variant-numeric:tabular-nums;white-space:nowrap}.logo{font-size:30px;font-weight:900;letter-spacing:-2px;line-height:1;color:var(--accent)}.logo span{color:inherit}.app-head{height:78px;padding:0 32px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:var(--white);gap:24px}.brand{display:flex;align-items:center;gap:22px}.brand .brand-description{border-left:1px solid var(--line);padding-left:22px;font-size:12px;color:var(--muted);line-height:1.35}.head-right{display:flex;gap:12px;align-items:center}.avatar{width:32px;height:32px;background:var(--green-soft);border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:700;color:var(--green)}.identity{font-size:12px;line-height:1.3}.identity small{display:block;font-size:10px;margin-top:3px}.shell{display:grid;grid-template-columns:222px minmax(0,1fr);min-height:calc(100vh - 78px)}.sidebar{background:#232d27;color:white;padding:32px 20px;display:flex;flex-direction:column;gap:34px}.sidebar .eyebrow{color:#91a097;margin-bottom:15px;font-size:9px}.sidebar button{background:transparent;border-color:transparent;color:#b9c4bd;justify-content:flex-start;text-align:left;width:100%;padding:11px 12px;font-size:12px;font-weight:500}.sidebar button:hover{background:#344239}.sidebar button.active{background:#3d4a40;color:white}.nav-icon{font-size:17px;width:22px}.side-bottom{margin-top:auto;border-top:1px solid #49534b;padding-top:20px;color:#a3b0a7;font-size:11px}.status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#99c6a0;margin-right:7px}.side-bottom p{color:#8c9b90;font-size:10px;margin-top:8px}.workspace{padding:30px 36px 44px;max-width:1600px;width:100%;margin:auto}.page-top{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:26px}.page-top .eyebrow{color:var(--accent);margin-bottom:10px}.page-top p{margin-top:12px;max-width:680px;font-size:13px}.tag{font-size:10px;letter-spacing:.3px;font-weight:650;background:var(--green-soft);color:var(--green);padding:5px 9px;border-radius:4px;display:inline-block;white-space:nowrap}.tag.neutral{color:var(--muted);background:#eef0eb}.tag.orange{color:#b94c29;background:var(--accent-soft)}.tag.red{color:var(--red);background:#ffefed}.steps{display:grid;grid-template-columns:repeat(4,1fr);background:white;border:1px solid var(--line);border-radius:8px;margin-bottom:26px;overflow:hidden}.steps button{border:0;border-radius:0;justify-content:flex-start;gap:11px;font-size:12px;padding:17px 19px;color:var(--muted);border-right:1px solid var(--line);position:relative}.steps button:last-child{border-right:0}.step-number{border:1px solid var(--line);border-radius:50%;width:24px;height:24px;display:grid;place-items:center;font-size:10px;flex:none}.steps button.active{background:var(--accent-soft);color:var(--ink)}.steps button.active:after{content:'';position:absolute;height:3px;background:var(--accent);bottom:0;left:0;right:0}.steps button.active .step-number{background:var(--accent);border-color:var(--accent);color:white}.config-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:24px;align-items:start}.panel{background:white;border:1px solid var(--line);border-radius:9px;box-shadow:var(--shadow)}.panel.pad{padding:24px}.panel-head{padding:21px 24px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:12px}.panel-head p{font-size:12px;margin-top:4px}.panel-body{padding:24px}.family-grid{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:21px}.family-grid button{font-size:11px;padding:7px 11px;border-radius:5px;background:transparent}.family-grid button.selected{background:var(--ink);color:white;border-color:var(--ink)}.search-row{display:flex;align-items:center;gap:12px;margin-bottom:20px}.search-input{position:relative;flex:1}.search-input input{padding-left:37px;background:#fbfcf9}.search-input:before{content:'⌕';position:absolute;left:13px;top:6px;font-size:23px;color:var(--muted)}.search-row select{width:180px}.search-row small{white-space:nowrap;font-size:11px}.section-label{display:flex;align-items:center;justify-content:space-between;margin:24px 0 12px;font-size:10px;text-transform:uppercase;font-weight:700;letter-spacing:1px;color:var(--muted)}.section-label:first-child{margin-top:0}.products{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.product{border:1px solid var(--line);border-radius:7px;padding:19px;display:flex;flex-direction:column;gap:13px;background:white;transition:border-color .15s,box-shadow .15s}.product:hover{border-color:#acb9aa;box-shadow:0 5px 18px #20292309}.product .product-top{display:flex;align-items:center;justify-content:space-between;gap:6px}.product .product-title{font-size:15px;line-height:1.45;font-weight:600;min-height:66px}.product .code{font-family:ui-monospace,Consolas,monospace;color:var(--muted);font-size:10px;word-break:break-all}.product .product-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding-top:13px;border-top:1px solid #edf0e9}.price{font-size:18px;font-weight:650;letter-spacing:-.5px}.unit{font-size:10px;color:var(--muted);margin-top:2px}.selection-summary{position:sticky;top:24px}.summary-dark{background:var(--ink);border-radius:9px;color:white;overflow:hidden}.summary-top{padding:22px 22px 18px;border-bottom:1px solid #465048}.summary-top .eyebrow{font-size:9px;color:#b5c2b8;margin-bottom:7px}.summary-top h3{font-size:18px}.summary-body{padding:19px 22px}.empty-selection{border:1px dashed #69756b;border-radius:6px;padding:23px 13px;text-align:center;color:#b0bdb3;font-size:12px;line-height:1.7}.empty-icon{font-size:27px;color:#d7dfd8;margin-bottom:9px}.summary-item{padding:12px 0;border-bottom:1px solid #465048}.summary-item:first-child{padding-top:0}.summary-item h4{font-size:12px;font-weight:550;margin:0 0 6px;line-height:1.5}.summary-item .inline{justify-content:space-between}.summary-item small{color:#b6c3b9;font-size:10px}.summary-item button{padding:0;background:none;border:0;color:#c2cfc6;font-size:10px;font-weight:400}.summary-totals{padding-top:18px}.summary-totals .inline{justify-content:space-between;font-size:11px;color:#b9c7bd;margin-bottom:8px}.summary-totals strong{display:block;font-size:29px;font-weight:550;letter-spacing:-1px;margin-top:9px}.summary-totals small{font-size:10px;color:#aab8ad}.summary-body>.primary{width:100%;margin-top:20px}.summary-note{padding:17px 4px;font-size:11px;line-height:1.7}.summary-note strong{font-weight:600;color:var(--ink)}.inline{display:flex;align-items:center;gap:9px}.wrap{flex-wrap:wrap}.spread{justify-content:space-between}.gap{display:grid;gap:18px}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.field-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.full{grid-column:1/-1}.base-card{padding:22px 24px;background:linear-gradient(120deg,#f0f4ed,#fff);border-bottom:1px solid var(--line)}.base-card h3{margin:10px 0 5px;max-width:650px}.base-fields{display:grid;grid-template-columns:130px 130px 1fr;align-items:end;gap:14px;margin-top:20px}.base-fields .price{text-align:right}.hint{font-size:11px;margin-top:7px;line-height:1.6}.notice{padding:13px 16px;border:1px solid #e8d8b3;background:#fff9ec;color:#7e6128;border-radius:6px;font-size:12px;line-height:1.6}.notice.success{background:var(--green-soft);border-color:#c8ddca;color:var(--green)}.notice.error{background:#fff0ed;border-color:#e5b7ac;color:var(--red)}.notice:empty{display:none}.included{border:1px solid #d7e4d6;border-radius:7px;margin:20px 0;background:#f8fbf6}.included summary{padding:14px 17px;font-weight:600;font-size:12px;cursor:pointer;color:var(--green)}.included ul{padding:0 20px 14px 35px;margin:0;display:grid;gap:7px;font-size:12px;color:var(--muted)}.accessory{display:grid;grid-template-columns:22px minmax(0,1fr) 85px;align-items:start;gap:12px;padding:17px 0;border-top:1px solid var(--line)}.accessory:first-child{border-top:0}.accessory input[type=checkbox]{margin-top:3px}.accessory h4{font-weight:550;font-size:12px;line-height:1.55;margin:0 0 4px}.accessory .num{font-size:12px;text-align:right}.accessory .code{font-size:10px;color:var(--muted);font-family:ui-monospace,Consolas,monospace}.accessory-fields{grid-column:2/-1;display:grid;grid-template-columns:110px 110px 1fr;align-items:end;gap:14px;margin-top:7px}.accessory-fields label{font-size:10px}.accessory-fields input{padding:7px 9px}.accessory-fields small{font-size:10px}.discount-yellow{border-color:#ba8a20!important;background:#fff5cd!important}.discount-red{border-color:#cb6257!important;background:#ffebe6!important}.actions{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:24px;margin-top:22px;border-top:1px solid var(--line)}.pack-options{display:grid;gap:12px;margin-top:20px}.pack-option{padding:20px;border:1px solid var(--line);border-radius:7px;display:grid;grid-template-columns:20px 1fr auto;gap:12px;cursor:pointer}.pack-option.selected{border-color:var(--accent);background:#fff9f5}.pack-option input{width:17px;margin-top:4px;accent-color:var(--accent)}.pack-option strong{font-size:12px;font-weight:550}.pack-option small{display:block;font-size:10px;margin-top:6px}.pack-option .num{font-size:14px;font-weight:650}.segmented{display:flex;gap:8px;margin-top:18px}.segmented button.selected{background:var(--ink);color:white;border-color:var(--ink)}.quote-toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:20px;flex-wrap:wrap}.quote-toolbar select{width:150px}.proposal{padding:42px;background:white;border:1px solid var(--line);border-radius:7px}.proposal-heading{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding-bottom:30px;border-bottom:2px solid var(--ink);margin-bottom:30px}.proposal-heading h2{font-size:26px;font-weight:500;margin:16px 0 8px}.proposal-heading p{font-size:11px}.proposal-ref{text-align:right;font-size:11px;line-height:1.8;color:var(--muted)}.quote-table{border-collapse:collapse;width:100%;font-size:11px}.quote-table th{text-align:left;font-size:9px;letter-spacing:.5px;text-transform:uppercase;color:var(--muted);padding:12px 8px;border-bottom:1px solid var(--line);background:#f4f6f1}.quote-table td{padding:12px 8px;border-bottom:1px solid #e9ede5;vertical-align:top}.quote-table .right{text-align:right}.quote-table .included-row td{color:var(--muted);font-size:10px;padding-top:7px;padding-bottom:7px}.quote-table .group-row td{font-weight:700;font-size:12px;padding-top:25px;background:#fafbf8}.quote-total{margin:28px 0 25px auto;max-width:320px}.quote-total .inline{justify-content:space-between;padding:8px 0;font-size:12px}.quote-total .grand{border-top:2px solid var(--ink);padding-top:15px;font-weight:650;font-size:23px;letter-spacing:-.5px}.quote-foot{font-size:11px;line-height:1.8;color:var(--muted);border-top:1px solid var(--line);padding-top:20px;white-space:pre-wrap;overflow-wrap:anywhere}.warning-list{margin:16px 0;padding:15px 20px;background:#fff8ea;border-radius:7px;font-size:12px;color:#806329}.warning-list summary{cursor:pointer;font-weight:650}.warning-list ul{padding-left:20px;margin-bottom:0}.admin-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:24px}.metric{border:1px solid var(--line);border-radius:7px;background:white;padding:18px 21px}.metric strong{display:block;font-size:27px;font-weight:550;margin:7px 0 2px;letter-spacing:-1px}.metric small{font-size:11px}.table-scroll{overflow:auto}.admin-table{border-collapse:collapse;width:100%;font-size:12px}.admin-table th{text-align:left;padding:12px 18px;background:#f5f7f1;border-bottom:1px solid var(--line);font-weight:650;font-size:10px;white-space:nowrap}.admin-table td{padding:15px 18px;border-bottom:1px solid var(--line);vertical-align:middle}.admin-table td.name-cell{min-width:240px;max-width:450px}.admin-table small{display:block;font-size:10px;margin-top:5px}.admin-table tr:last-child td{border:0}.admin-toolbar{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:20px}.admin-toolbar .search-input{min-width:200px;max-width:450px}.admin-toolbar select{width:180px}.empty{padding:45px;text-align:center;color:var(--muted);font-size:13px}.auth-layout{min-height:100vh;display:grid;grid-template-columns:1.05fr 1fr}.auth-aside{background:var(--ink);padding:55px 70px;color:white;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.auth-aside h1{font-size:54px;font-weight:500;letter-spacing:-2px;max-width:490px}.auth-aside p{color:#b6c4b9;max-width:420px;font-size:15px;line-height:1.8;margin-top:25px}.auth-aside .eyebrow{color:#b6c4b9;margin-bottom:22px}.auth-aside footer{font-size:10px;color:#93a599;padding-top:40px}.auth-graphic{margin-top:50px;border:1px solid #536257;border-radius:9px;padding:25px;max-width:390px;display:flex;gap:20px;align-items:center}.auth-graphic svg{width:80px;flex:none;color:#c8d7c9}.auth-graphic strong{font-size:13px;font-weight:550}.auth-graphic p{font-size:11px;margin-top:5px;line-height:1.6}.auth-main{display:flex;align-items:center;justify-content:center;padding:55px}.auth-form{width:100%;max-width:360px;display:grid;gap:20px}.auth-form h2{font-size:29px;font-weight:550}.auth-form p{font-size:13px;line-height:1.7}.auth-form button{margin-top:2px;width:100%}.auth-form .eyebrow{color:var(--accent);margin-bottom:-7px}.auth-form .form-end{font-size:10px;line-height:1.7;margin-top:2px}.loading{min-height:100vh;display:flex;align-items:center;justify-content:center;gap:30px;font-size:42px;font-weight:900;color:var(--accent);letter-spacing:-2px}.loading span{font-size:14px;color:var(--muted);font-weight:400;letter-spacing:0}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;box-shadow:0 8px 30px #0002;padding:13px 22px;border-radius:8px;font-size:13px;z-index:200;display:none;max-width:90vw}#toast.show{display:block}dialog{border:1px solid var(--line);border-radius:12px;padding:0;width:min(800px,94vw);max-height:90vh;box-shadow:0 20px 100px #0003;color:var(--ink)}dialog::backdrop{background:#15201890;backdrop-filter:blur(3px)}.modal-head{position:sticky;top:0;display:flex;justify-content:space-between;align-items:center;gap:20px;background:white;padding:22px 27px;border-bottom:1px solid var(--line);z-index:2}.modal-head p{font-size:12px;margin-top:3px}.modal-body{padding:25px 27px}.modal-actions{padding-top:20px;display:flex;justify-content:flex-end;gap:12px}.family-checks{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.family-checks label{font-size:11px}.divider{border:0;border-top:1px solid var(--line);margin:5px 0}.hidden{display:none!important}.spacer{height:20px}.pagination{display:flex;justify-content:center;align-items:center;gap:16px;margin-top:22px;font-size:11px}.error-banner{margin-bottom:20px}.subhead{font-size:11px;color:var(--muted);margin-top:5px}.no-print{}.print-only{display:none}.report-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.report-grid strong{display:block;font-size:25px;margin:8px 0}.report-list{max-height:230px;overflow:auto;font-size:12px;line-height:1.8}.import-drop{border:1px dashed #acb8ac;padding:26px;border-radius:7px;background:#fafcf8}.import-drop input{margin-top:16px;background:white}.toggle-row{display:flex;align-items:center;justify-content:space-between;gap:20px}.settings-card{max-width:760px}.account-row{display:flex;gap:8px;align-items:center}.proposal-notes{margin:18px 0}.proposal-notes textarea{min-height:90px}.screen-note{font-size:11px;margin-top:16px;line-height:1.7}.wrap-text{white-space:pre-wrap;overflow-wrap:anywhere}
@media(min-width:1600px){.workspace{padding-left:50px;padding-right:50px}.config-layout{grid-template-columns:minmax(0,1fr) 305px}.products{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1180px){.workspace{padding:26px 24px}.shell{grid-template-columns:185px minmax(0,1fr)}.sidebar{padding:28px 13px}.config-layout{grid-template-columns:minmax(0,1fr) 245px;gap:18px}.products{grid-template-columns:1fr}.product .product-title{min-height:0}.steps button{padding:16px 11px;font-size:11px}.panel.pad,.panel-body{padding:19px}.proposal{padding:25px}.auth-aside{padding:45px}.auth-aside h1{font-size:45px}}
@media(max-width:900px){.shell{display:block}.sidebar{padding:12px 20px;display:flex;flex-direction:row;gap:12px;overflow:auto}.sidebar>div{display:flex;gap:4px}.sidebar .eyebrow,.side-bottom{display:none!important}.sidebar button{white-space:nowrap;font-size:11px;padding:9px 12px}.sidebar .nav-icon{font-size:15px;width:auto}.workspace{padding:25px 22px}.config-layout{grid-template-columns:minmax(0,1fr) 250px}.app-head{height:68px;padding:0 24px}.brand-description{display:none}.auth-layout{grid-template-columns:1fr}.auth-aside{display:none}.auth-main{min-height:100vh;padding:30px}.admin-metrics{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){h1{font-size:27px}.app-head{padding:0 17px}.head-right{gap:7px}.identity{display:none}.workspace{padding:24px 15px}.page-top{gap:12px}.page-top .tag{font-size:9px}.steps{margin-bottom:20px}.steps button{flex-direction:column;padding:12px 4px;gap:6px;font-size:10px}.step-number{width:21px;height:21px}.config-layout{display:flex;flex-direction:column}.config-layout>div:first-child{width:100%}.selection-summary{position:static;width:100%}.products{grid-template-columns:1fr}.panel.pad,.panel-body{padding:17px}.panel-head,.base-card{padding:18px}.search-row{flex-wrap:wrap;gap:8px}.search-row select{width:100%}.family-grid{gap:6px}.family-grid button{font-size:10px;padding:7px 9px}.base-fields{grid-template-columns:1fr 1fr}.base-fields .price{grid-column:1/-1;text-align:left}.accessory{grid-template-columns:20px 1fr 70px;gap:8px}.accessory-fields{grid-template-columns:1fr 1fr}.accessory-fields small{grid-column:1/-1}.field-grid,.field-grid.three{grid-template-columns:1fr}.family-checks{grid-template-columns:repeat(2,1fr)}.proposal{padding:20px 14px}.proposal-heading{padding-bottom:20px;margin-bottom:20px}.proposal-heading h2{font-size:22px}.quote-table{font-size:9px}.quote-table th,.quote-table td{padding:9px 4px}.quote-table .code-column{display:none}.quote-table .included-row td{font-size:9px}.quote-total{max-width:none}.quote-toolbar{align-items:stretch}.quote-toolbar>.inline{flex-wrap:wrap}.quote-toolbar button{font-size:11px;padding:9px 12px}.admin-toolbar{flex-direction:column}.admin-toolbar .inline{flex-wrap:wrap}.report-grid{grid-template-columns:1fr}.modal-head,.modal-body{padding:20px}.pack-option{grid-template-columns:18px 1fr}.pack-option .num{grid-column:2}.admin-metrics{gap:10px}.metric{padding:15px}.actions{flex-wrap:wrap}.loading{flex-direction:column;gap:10px}.settings-card{width:100%}}
@media print{@page{size:A4;margin:14mm}body{background:white;color:#111;font-size:10pt}.app-head,.sidebar,.page-top,.steps,.quote-toolbar,.proposal-notes,.warning-list,.screen-note,.error-banner,.no-print,#toast,dialog{display:none!important}.shell,.workspace,.config-layout{display:block;padding:0;margin:0;max-width:none;min-height:0}.proposal{padding:0;border:0;box-shadow:none}.proposal-heading{margin-bottom:20px;break-inside:avoid}.quote-table{font-size:8pt}.quote-table th{font-size:7pt;background:#f2f2f2!important;print-color-adjust:exact}.quote-table td{padding:7px 5px}.quote-table thead{display:table-header-group}.quote-table tr{break-inside:avoid}.quote-table .included-row td{font-size:7pt}.quote-table .code-column{display:table-cell}.quote-total,.quote-foot{break-inside:avoid}.print-only{display:block}.quote-total .grand{font-size:18pt}.logo{color:#dd572c;print-color-adjust:exact}}
/* Versione 2: configurazioni, archivio e marginalità */
.spaced{margin-top:18px}.negative{color:var(--red)!important}.cost-small{display:flex;justify-content:space-between;gap:9px;margin-top:7px;font-size:10px;color:var(--muted)}.cost-small strong{font-weight:500}.product-associations{display:flex;gap:6px;flex-wrap:wrap}.offer-context{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:13px 17px;background:#eef1e8;border-radius:7px;font-size:12px;margin-bottom:20px}.summary-tools{display:flex;justify-content:space-between;margin-top:8px}.admin-brief{margin-top:12px;padding-top:10px;border-top:1px dashed #627264;font-size:11px}.admin-brief>small{display:block;color:#aebdb1;font-size:9px;margin-bottom:7px}.admin-brief .inline{justify-content:space-between;gap:8px;margin:4px 0}.admin-brief strong small{font-size:9px;color:#b5c2b8}.group-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:15px}.selected{border-color:var(--green);background:var(--green-soft);color:var(--green)}.accessory-overview{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:20px}.accessory-overview button{margin-left:auto}.combo-callout{background:var(--accent-soft);border-radius:6px;padding:14px;display:flex;align-items:center;gap:15px;justify-content:space-between;font-size:12px;margin-bottom:20px}.accessory-filters{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:12px}.accessory-category{margin-top:25px}.category-heading{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:10px;margin-bottom:10px}.category-heading h3{font-size:14px}.category-heading span{font-size:10px;color:var(--muted)}.accessory-v2{border:1px solid var(--line);border-radius:7px;margin:9px 0;overflow:hidden}.accessory-v2.is-included{background:#f5f8f2;border-color:#d8e4d5}.accessory-v2.is-selected{border-color:var(--accent)}.accessory-main{display:grid;grid-template-columns:20px minmax(0,1fr) minmax(90px,130px);gap:12px;padding:14px;align-items:start}.accessory-main>input{margin-top:4px}.accessory-main h4{font-size:12px;line-height:1.5;margin:7px 0 3px;font-weight:550}.accessory-main small{font-size:10px}.accessory-prices{text-align:right;font-size:12px}.accessory-prices .cost-small{display:block;font-size:9px}.accessory-prices .cost-small span{display:block}.accessory-fields{padding:13px 15px;background:#fafaf6;border-top:1px solid var(--line)}.packing-card{border:1px solid var(--line);padding:20px;border-radius:8px;margin:20px 0}.packing-card h3{margin-top:8px}.packing-card .field-grid{margin:18px 0}.packing-card .notice{margin-top:18px}.packing-amounts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding-top:16px;margin-top:16px;border-top:1px solid var(--line)}.packing-amounts small{font-size:10px;display:block}.packing-amounts strong{display:block;font-size:16px;margin-top:6px}.offer-fields{margin-bottom:22px}.save-row{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:20px}.save-row small{font-size:11px}.cost-breakdown{border:1px solid #b4c8b6;background:#f4f8f0;padding:20px;border-radius:8px;margin-bottom:25px}.cost-breakdown summary{font-weight:650;cursor:pointer}.cost-breakdown>p{font-size:11px;margin:8px 0 16px}.cost-breakdown .admin-table th,.cost-breakdown .admin-table td{padding:10px;font-size:11px}.cost-breakdown .table-scroll{background:white;border:1px solid var(--line);border-radius:6px}.cost-overall{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:20px 0 12px}.cost-overall strong{font-size:19px;display:block;margin-top:5px}.cost-overall small,.cost-overall span{font-size:11px;color:var(--muted)}.cost-overall strong small{font-size:12px}.proposal-incomplete{padding:12px;background:#fff6e4;border:1px solid #ead4aa;border-radius:4px;font-size:12px;margin-bottom:16px;color:#79530c}.pending-row td{color:#956700}.table-actions{display:flex;flex-wrap:wrap;gap:5px;min-width:150px}.category-editor{display:grid;gap:10px}.category-edit-row{display:grid;grid-template-columns:24px minmax(150px,1fr) 85px 35px 35px 65px;align-items:center;gap:8px}.category-edit-row .muted{font-size:11px}.tariff-table{min-width:660px}.tariff-table th,.tariff-table td{padding:10px}.tariff-table input{min-width:95px}.relation-list{max-height:390px}.relation-list th{position:sticky;top:0;background:#f3f6ee}.relation-list select{min-width:125px}.relation-list input{min-width:85px}.relation-list td:first-child{min-width:220px}.admin-table .name-cell{overflow-wrap:anywhere}
@media(max-width:1180px){.accessory-main{grid-template-columns:18px minmax(0,1fr)}.accessory-prices{grid-column:2;display:flex;gap:12px;align-items:baseline;text-align:left}.accessory-prices .cost-small{display:flex;margin:0}.packing-amounts{grid-template-columns:1fr 1fr}.packing-card{padding:15px}.offer-context{flex-wrap:wrap}.category-edit-row{grid-template-columns:20px minmax(120px,1fr) 65px 30px 30px 55px;gap:4px}}
@media(max-width:680px){.accessory-main{gap:9px}.combo-callout{flex-wrap:wrap}.cost-overall{grid-template-columns:1fr}.packing-amounts strong{font-size:14px}.category-edit-row{grid-template-columns:20px minmax(100px,1fr) 30px 30px 55px}.category-edit-row>span:nth-of-type(2){display:none}.group-tabs{max-height:125px;overflow:auto}.accessory-overview button{margin-left:0}.save-row{flex-wrap:wrap}}
@media print{.cost-breakdown,.offer-context,.offer-fields,.group-tabs{display:none!important}.proposal-incomplete{print-color-adjust:exact}.pending-row td{color:#79530c}}

/* Aggiornamento 2.1: gestione sconti finale, gruppi prodotto e larghezze */

.discount-editor{margin:0 0 22px}
.discount-editor .subhead{font-size:12px;max-width:780px;margin-top:6px}
.discount-editor .table-scroll{margin-top:18px;border:1px solid var(--line);border-radius:7px}
.discount-table{width:100%;min-width:650px}
.discount-table td{vertical-align:middle}
.discount-table td:first-child{min-width:200px}
.discount-table td:first-child strong{font-size:12px}
.discount-table td:first-child small{display:block;color:var(--muted);font-size:10px;max-width:400px;white-space:normal}
.discount-input-cell{width:126px;text-align:center}
.discount-input-cell input{width:105px;padding:8px 10px;text-align:right;font-variant-numeric:tabular-nums}
.discount-totals{display:flex;align-items:baseline;justify-content:flex-end;flex-wrap:wrap;gap:16px;margin-top:18px;font-size:12px}
.discount-totals strong{font-variant-numeric:tabular-nums}
.discount-totals .discount-net{font-size:15px;color:var(--green)}
.width-notice{margin:0 0 18px}
.width-warning{margin:0 0 20px}
.width-orphan{display:inline-flex;align-items:center;gap:9px;flex-wrap:wrap;margin:6px 10px 0 0}
.width-orphan button{padding:5px 8px}
.product-group-editor .category-edit-row{grid-template-columns:24px minmax(180px,1fr) 90px 65px}
@media(max-width:680px){.discount-totals{justify-content:flex-start}.product-group-editor .category-edit-row{grid-template-columns:18px minmax(120px,1fr) 60px}}
@media print{.discount-editor{display:none!important}}

/* OROX 2.2: categorie accessori richiudibili, logo ufficiale */
.accessory-category > summary.category-heading{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;user-select:none} 
.accessory-category > summary.category-heading::-webkit-details-marker{display:none}
.accessory-category .category-chevron{display:inline-block;transition:transform .15s;font-size:19px;margin-left:8px}
.accessory-category[open] .category-chevron{transform:rotate(180deg)}
.category-controls{margin:12px 0}.proposal-logo{max-width:185px;width:40%;height:auto;object-fit:contain;object-position:left center;display:block;margin-bottom:10px}.brand-logo{width:110px;max-height:48px;object-fit:contain}.auth-logo{max-width:230px;width:80%;height:auto;object-fit:contain;object-position:left center}
@media print {.proposal-logo{width:165px;max-width:165px}.category-controls{display:none!important}}

.line-selector{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;margin-bottom:16px}.line-selector select{min-width:155px}
.offer-fold{margin:.65rem 0;border:1px solid var(--line);border-radius:7px;overflow:hidden}
.offer-fold>summary{display:flex;align-items:baseline;gap:10px;padding:11px 13px;cursor:pointer;background:#f4f6f2;font-weight:600;list-style:none}
.offer-fold>summary::before{content:'▸';flex:none;opacity:.7}
.offer-fold[open]>summary::before{content:'▾'}
.offer-fold>summary>b,.line-subtotal>strong{margin-left:auto;white-space:nowrap;font-variant-numeric:tabular-nums}
.fold-body{padding:5px 12px 10px}.summary-dark .offer-fold{border-color:#47564a}.summary-dark .offer-fold>summary{background:#2d3a31;color:white;flex-wrap:wrap;gap:5px;padding:8px}.summary-dark .offer-fold>summary span{overflow-wrap:anywhere}.summary-dark .fold-body{padding:3px 7px 8px}
.summary-tools{flex-wrap:wrap;gap:5px}.summary-detail,.line-subtotal{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:6px 0}.summary-detail{font-size:11px;border-bottom:1px solid #465749}.summary-detail strong{white-space:nowrap}.sale-terms,fieldset{border:1px solid var(--line);border-radius:7px;padding:14px;margin:16px 0}.sale-terms legend,fieldset legend{font-weight:600}.sale-terms .field-grid{margin-top:12px}
.line-subtotal{border-top:1px solid var(--line);margin:7px 0;font-weight:600}.line-cost{margin-top:9px}.proposal-terms{margin:18px 0}.proposal h3,.proposal h4{break-after:avoid}.proposal h3>b,.proposal h4>b{float:right;margin-left:8px}.cost-breakdown.offer-fold{padding:0}.quote-table{width:100%}.summary-dark .summary-tools button{font-size:11px}
@media print{.line-selector,.line-selector button{display:none!important}.proposal section{break-inside:auto}.proposal-terms,.line-subtotal{break-inside:avoid}.proposal h3{margin-top:16pt;border-bottom:1pt solid #677767}.proposal h4{margin-bottom:6pt}.proposal .quote-table{table-layout:fixed}.proposal .quote-table th:first-child{width:36%}.proposal .quote-table th:nth-child(2){width:17%}.quote-table td{overflow-wrap:anywhere}.proposal .code-column{display:table-cell!important}}
.line-financials{display:flex;justify-content:flex-end;gap:18px;flex-wrap:wrap;margin:12px 0 3px;font-size:12px}.summary-dark .summary-tools>button{padding:5px 7px}

.catalog-print-link{font-size:12px;padding:7px 11px;color:#17482e;background:#eaf4ec;border-color:#97b7a1;white-space:nowrap}
.catalog-print-link:hover,.catalog-print-link:focus-visible{color:#133c27;background:#d8eadd}

.terms-profiles{display:grid;gap:12px;margin-bottom:22px}
.sale-terms .field-grid{margin:18px 0}
.sale-terms .table-scroll{margin-top:18px}
.sale-terms table select{min-width:180px}
.sale-terms table input{min-width:110px}
.sale-terms .packing-exceptions{margin:15px 0}
.conditions-table{width:100%;border-collapse:collapse;font-size:12px}
.conditions-table th,.conditions-table td{border:1px solid #d9dfda;padding:9px 12px;text-align:left;vertical-align:top;white-space:pre-wrap;overflow-wrap:anywhere}
.conditions-table th{width:26%;background:#eef1ed}
.service-summary{padding:14px 0;border-bottom:1px solid #d9dfda}
.service-summary>div{padding:5px 0}
@media print{.conditions-table{font-size:9pt}.conditions-table tr{break-inside:avoid}.proposal-terms{break-inside:auto!important}.proposal-terms h4{break-after:avoid}}

/* Mandatory per-model choices: native radio controls with full clickable cards. */
.choice-admin{padding:16px;border:1px solid #d6ded2;border-radius:8px;background:#f5f7f2}
.choice-admin h3,.required-choices h3{margin:0 0 6px}.choice-admin p,.required-choices p{margin:6px 0 12px}
.choice-enable{margin:16px 0 8px}.required-choices{margin-bottom:28px}
.choice-group{min-width:0;margin:20px 0 0;padding:18px;border:1px solid #d6ded2;border-radius:10px}
.choice-group.pending{border-color:#e3be87}.choice-group legend{padding:0 8px;font-weight:650;font-size:15px}
.choice-group legend .tag{margin-left:8px;font-size:10px}.choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:10px}
.choice-card{display:flex;align-items:flex-start;gap:12px;padding:16px;border:1px solid #d9ded7;border-radius:8px;background:white;cursor:pointer;color:#26352d;min-width:0}
.choice-card.selected{background:#eff7ef;border-color:#578c69;box-shadow:inset 0 0 0 1px #578c69}
.choice-card:focus-within{outline:2px solid #eb5728;outline-offset:3px}.choice-card input{width:18px;height:18px;flex:0 0 18px;margin:3px 0;accent-color:#326246}
.choice-copy{display:flex;flex-direction:column;gap:6px;flex:1;min-width:0}.choice-copy strong{font-size:14px}.choice-copy span{font-size:12px;line-height:1.45}.choice-copy small,.choice-price small{font-size:10px;font-weight:400;line-height:1.4;color:#647067}
.choice-price{white-space:nowrap;font-size:14px;font-weight:700;text-align:right;display:flex;flex-direction:column;gap:6px}
.choice-discount{max-width:200px;margin-top:14px}.choice-missing{margin-bottom:20px}.choice-missing .inline{margin-top:12px;gap:12px}.choice-summary-warning{padding:12px;border-radius:6px;background:#6f4c26;color:#fff0d4}
@media(max-width:700px){.choice-card{padding:12px;gap:8px}.required-choices>.inline{align-items:flex-start;gap:8px;flex-wrap:wrap}.choice-group{padding:12px}.choice-price{font-size:12px}}

/* Blade choice drives the consumable filter. */
.blade-fields{padding:14px;border:1px solid #d6ded2;border-radius:8px;background:#f8faf6}
.blade-error{color:#a33725}.blade-filter-note{margin:0 0 18px}.blade-filter-note p{margin-bottom:0}
.blade-orphans{margin-bottom:18px}.blade-orphans>div{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px}.blade-orphans button{flex-shrink:0}
.blade-relation-note{color:#356c4c}.blade-relation-note.blade-error{color:#a33725}

.item-cost-total{grid-column:1/-1;display:flex;gap:16px;flex-wrap:wrap;padding:14px;background:#eff4ee;border-radius:6px}.item-cost-total small{flex-basis:100%}.cost-overall{flex-wrap:wrap}.cost-breakdown table{min-width:780px}.tariff-table input{min-width:100px}

.language-switch{display:flex;gap:5px;align-items:center}.language-switch button{display:inline-flex;align-items:center;gap:6px;padding:7px 9px;background:transparent;font-size:11px;min-width:60px}.language-switch button[aria-pressed=true]{border-color:#22623e;background:#edf4ee;color:#164b2c}.language-switch svg{width:24px;height:16px;border:1px solid #ccc;flex:none}.auth-main>.language-switch{position:absolute;top:24px;right:24px}.offer-language-label{display:flex;gap:8px;align-items:center;font-size:11px}.offer-language-label select{width:auto}.head-right{flex-wrap:wrap}

/* Catalogue family settings: editable names, explicit visibility and stable order. */
.family-settings{display:grid;gap:14px;margin-top:20px}
.family-setting{padding:20px}
.family-setting-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.family-setting-controls{margin-top:16px;gap:14px}
.family-inactive{background:var(--surface,#f6f7f3);border-style:dashed}
.family-save{margin-top:22px;gap:16px}
.family-setting button:disabled{opacity:.4;cursor:not-allowed}
@media(max-width:650px){.family-setting-fields{grid-template-columns:1fr}.family-setting{padding:16px}}

/* Product groups remain visible below the selected family on every screen size. */
.product-group-selector{margin:16px 0 12px}
.product-group-label{display:block;font-size:11px;color:var(--muted);margin-bottom:8px}
.product-group-buttons{display:flex;flex-wrap:wrap;gap:8px}
.product-group-buttons button{white-space:normal;text-align:left;max-width:100%;overflow-wrap:anywhere}
.product-group-buttons button.selected{background:var(--ink);color:#fff;border-color:var(--ink)}
.product-group-buttons button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}

.login-policy{border:1px solid var(--line);background:#f6f8f3;border-radius:8px;padding:14px;font-size:11px;line-height:1.6}
.login-policy summary{font-size:13px;font-weight:650;cursor:pointer}
.login-policy-text{max-height:220px;overflow:auto;margin-top:10px;padding-right:8px}
.auth-form .login-policy p{font-size:11px;margin:10px 0;line-height:1.6}
.login-policy .policy-accept{align-items:flex-start;line-height:1.5;margin:14px 0 10px;font-size:12px}
.policy-accept input{flex:none;margin-top:3px}
.login-policy>small{display:block;color:var(--muted);font-size:10px}
.logic-targets{max-height:360px;overflow:auto;border:1px solid var(--line);border-radius:6px}
.logic-target{display:flex;gap:12px;align-items:flex-start;padding:14px;border-bottom:1px solid var(--line);cursor:pointer}
.logic-target:last-child{border-bottom:0}.logic-target>input{margin-top:4px;flex:none}
.logic-target>span{display:grid;gap:4px}.logic-target small{color:var(--muted)}
.logic-preview{border:1px solid var(--line);border-radius:6px;padding:16px}
.logic-preview p{margin-top:8px;font-size:12px}.logic-preview details{margin-top:12px;font-size:12px}
@media(max-width:680px){.auth-main{padding:25px 18px}.auth-form{max-width:100%}.login-policy-text{max-height:180px}}

.relation-context{display:block;margin-top:8px;font-size:11px}.relation-context select{margin-top:4px;font-size:12px;min-width:175px}
