:root{--bg:#f5f7fa;--panel:#fff;--ink:#192a3a;--muted:#7a8999;--line:#e8edf2;--nav:#142333;--nav-light:#1b3346;--brand:#287f70;--brand-dark:#20695d;--soft:#f2f5f8;--radius:14px;--shadow:0 3px 18px rgba(20,35,51,.035)}
*{box-sizing:border-box}html{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg);font-size:14px}body{margin:0;min-height:100vh}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}h1,h2,p{margin-top:0}.app-shell{display:flex;min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:246px;background:var(--nav);color:#d7e3e8;display:flex;flex-direction:column;padding:28px 16px 19px;z-index:12}.brand{display:flex;align-items:center;gap:12px;padding:1px 12px 42px;color:#fff}.brand-icon,.auth-mark{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:#2b8172;color:white;font-size:25px;font-weight:700}.brand strong,.brand small{display:block}.brand strong{font-size:19px;letter-spacing:-.7px}.brand small{font-size:11px;color:#9ab2bd;margin-top:3px}.nav-caption{color:#78909b;font-size:10px;font-weight:800;letter-spacing:1.2px;padding:0 15px;margin-bottom:14px}.navigation{display:flex;flex-direction:column;gap:5px}.nav-link{display:flex;align-items:center;gap:14px;border-radius:9px;padding:13px 15px;color:#b7c8d0;font-weight:550;transition:.15s}.nav-link:hover,.nav-link.active{color:#fff;background:var(--nav-light)}.nav-link.active{box-shadow:inset 3px 0 #5bc8ad}.nav-symbol{font-size:20px;line-height:1;width:22px;text-align:center}.sidebar-bottom{margin-top:auto;display:flex;align-items:center;border-top:1px solid #2d4050;padding:20px 8px 0;gap:10px}.avatar{width:37px;height:37px;display:grid;place-items:center;border-radius:50%;background:#395969;color:#fff;font-weight:700}.account{min-width:0;flex:1}.account strong,.account small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account strong{color:#fff;font-size:12px}.account small{color:#9db1bd;font-size:11px;margin-top:3px}.logout-form{margin:0}.logout-btn{border:0;background:transparent;color:#c6d7df;padding:9px;font-size:23px}.logout-btn:hover{color:#fff}.main-area{margin-left:246px;min-width:0;flex:1;display:flex;flex-direction:column}.topbar{height:69px;display:flex;align-items:center;justify-content:space-between;padding:0 36px;border-bottom:1px solid var(--line);background:var(--panel)}.topbar-label{font-weight:600;color:#556879;font-size:13px}.topbar-right{color:#728494;font-size:12px;display:flex;align-items:center;gap:8px}.online-dot{height:7px;width:7px;background:#30ad78;border-radius:50%}.menu-toggle{display:none;background:none;border:0;font-size:23px;color:var(--ink)}.content{padding:38px 37px 44px;max-width:1570px;width:100%;margin:0 auto;flex:1}.page-heading{display:flex;justify-content:space-between;gap:20px}.page-heading h1{font-size:28px;letter-spacing:-.9px;font-weight:750;margin:0 0 7px}.page-heading p,.muted{color:var(--muted)}.page-heading p{margin:0;font-size:13px}.actions-bar{margin:27px 0 20px;display:flex;align-items:center;justify-content:space-between;gap:15px}.button-group{display:flex;gap:10px;flex-wrap:wrap}.btn{min-height:39px;display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid transparent;border-radius:8px;padding:0 16px;font-size:12px;font-weight:700;white-space:nowrap;transition:.15s}.btn-primary{color:#fff;background:var(--brand)}.btn-primary:hover{background:var(--brand-dark)}.btn-soft{background:#fff;color:#536578;border-color:#dfe6ed}.btn-soft:hover{background:#f6f9fb}.btn-full{width:100%;height:45px;justify-content:space-between;font-size:13px}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin-bottom:22px}.stat-card,.panel{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:var(--radius)}.stat-card{display:flex;flex-direction:column;align-items:flex-start;min-height:182px;padding:23px 24px}.stat-icon{height:39px;width:39px;display:grid;place-items:center;font-size:22px;border-radius:10px;margin-bottom:17px;font-weight:700}.stat-icon.blue{color:#4479bc;background:#eaf2ff}.stat-icon.green{color:#249b7b;background:#e6f7f0}.stat-icon.amber{color:#e7a12b;background:#fff4dd}.stat-icon.red{color:#df6869;background:#fff0f0}.stat-label{font-size:12px;color:#637485;font-weight:650}.stat-card strong{font-size:31px;line-height:1.25;letter-spacing:-1px;margin-top:5px}.stat-card small{color:#9ba7b3;margin-top:7px;font-size:11px}.two-panels{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;align-items:start}.panel{min-width:0;overflow:hidden}.panel-head{display:flex;align-items:center;justify-content:space-between;padding:24px 24px 19px;gap:10px}.panel-head h2{font-size:15px;margin:0 0 6px;letter-spacing:-.2px}.panel-head p{font-size:12px;color:var(--muted);margin:0}.text-link{color:var(--brand);font-size:12px;font-weight:700;white-space:nowrap}.text-link:hover{text-decoration:underline}.list-rows{padding:0 23px 14px}.compact-row{display:flex;align-items:center;border-top:1px solid var(--line);padding:15px 0;gap:11px;min-width:0}.product-square{display:grid;place-items:center;flex-shrink:0;width:36px;height:36px;background:#eef4f7;border-radius:9px;color:#638095;font-size:20px}.compact-details{min-width:0;flex:1}.compact-details strong,.compact-details small{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.compact-details strong{font-size:12px}.compact-details small{font-size:11px;color:var(--muted);margin-top:5px}.compact-right{text-align:right}.compact-right strong{display:block;font-size:12px;margin-bottom:6px}.pill{display:inline-block;border-radius:15px;padding:5px 9px;white-space:nowrap;font-size:10px;line-height:1;font-weight:750}.pill-green{background:#e9f8ef;color:#248a5c}.pill-orange{background:#fff3e1;color:#ba7d24}.pill-red{background:#fff0f0;color:#c95558}.move-symbol{display:grid;place-items:center;border-radius:10px;width:36px;height:36px;flex-shrink:0;font-weight:800;font-size:18px}.move-symbol.positive{background:#e9f8ef;color:#29956b}.move-symbol.negative{background:#fff0f0;color:#cf6462}.text-green{color:#269469}.text-red{color:#d2585f}.empty-state{padding:46px 22px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px}.empty-state>span{font-size:30px;color:#a6b5c2}.empty-state strong{font-size:14px}.empty-state p{margin:0;color:var(--muted);font-size:12px;max-width:290px;line-height:1.6}.empty-state .btn{margin-top:8px}.filters{display:flex;flex-wrap:wrap;gap:10px;padding:20px 21px;border-bottom:1px solid var(--line)}.filters .search-wrap{flex:1;min-width:195px;display:flex;align-items:center;border:1px solid #dfe7ed;border-radius:8px;min-height:39px;background:#fff;color:#91a0af}.search-wrap>span{font-size:24px;padding-left:13px}.search-wrap input{width:100%;border:0;outline:0;min-width:0;height:37px;padding:0 10px;color:var(--ink)}input,select,textarea{border-radius:8px;border:1px solid #dfe7ed;background:#fff;color:var(--ink);outline:0;min-height:39px;padding:10px 12px}input:focus,select:focus,textarea:focus{border-color:#60a699;box-shadow:0 0 0 3px #55af9e22}input::placeholder,textarea::placeholder{color:#a1afba}.filters select{color:#607385;font-size:12px;max-width:220px}.table-overflow{width:100%;overflow-x:auto}table{border-collapse:collapse;width:100%;text-align:left}thead{background:#fafbfc}th{font-size:10px;letter-spacing:.7px;color:#90a0ae;font-weight:800;padding:17px 20px;white-space:nowrap}td{padding:16px 20px;border-top:1px solid var(--line);color:#586b7c;font-size:12px}td strong{color:var(--ink);font-weight:700}.item-name{display:flex;align-items:center;gap:12px;min-width:185px}.item-name strong{line-height:1.35}.code-label{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px;color:#7b8c9b}.align-right{text-align:right}.table-actions{display:flex;justify-content:flex-end;gap:13px;align-items:center;white-space:nowrap}.action-link{font-size:11px;font-weight:700;color:#3b8475;background:none;border:0;padding:3px 0}.action-link:hover{text-decoration:underline}.action-danger{color:#bf6c6c}.inline-form{display:inline;margin:0}.panel-bottom{border-top:1px solid var(--line);padding:16px 20px;color:#9aabba;font-size:11px}.nowrap{white-space:nowrap}.back-link{font-size:12px;color:#5a778b;font-weight:700}.back-link:hover{color:var(--brand)}.form-panel{max-width:850px}.edit-form{padding:4px 24px 26px;display:flex;flex-direction:column;gap:22px}.edit-form label,.stack-form label{display:flex;flex-direction:column;gap:9px;font-size:12px;color:#43576a;font-weight:700}.edit-form label em{font-style:normal;color:#cb6c6b}.edit-form label small{font-weight:400;color:#93a0ab;line-height:1.5}.edit-form label small a{color:#348775}.edit-form input,.edit-form select,.edit-form textarea,.stack-form input{width:100%;font-size:13px}.edit-form textarea{resize:vertical}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.form-actions{display:flex;gap:10px;justify-content:flex-end;border-top:1px solid var(--line);padding-top:22px}.hint-box{padding:15px 17px;border:1px solid #dfeeea;background:#f5faf8;border-radius:9px;font-size:12px;line-height:1.7;color:#4b7971}.hint-box code{background:#eaf1ee;padding:2px 5px;border-radius:4px;word-break:break-word}.category-layout{grid-template-columns:minmax(0,1.3fr) minmax(300px,1fr);margin-top:28px}.category-layout .panel .edit-form{gap:19px}.settings-rows{padding:0 24px 18px}.settings-rows div{padding:15px 0;display:flex;justify-content:space-between;gap:15px;border-top:1px solid var(--line);font-size:12px}.settings-rows span{color:var(--muted)}.category-layout .hint-box{margin:0 24px 18px}.category-layout .btn-soft{margin:0 24px 24px}.footer{padding:18px 37px 25px;text-align:right;font-size:11px;color:#aab5bd}.alert{padding:14px 16px;border-radius:9px;margin:19px 0;font-size:12px;font-weight:600}.alert-success{border:1px solid #cdebd9;background:#eaf9f0;color:#24774e}.alert-error{border:1px solid #f0d0d1;background:#fff0f0;color:#b35157}
/* Setup / login */
.auth-body{background:radial-gradient(ellipse at 50% 0%,#e3efed,#f5f7fa 58%);display:grid;place-items:center;padding:35px 18px}.auth-wrap{width:100%;max-width:430px}.auth-brand{text-align:center;margin-bottom:27px}.auth-mark{margin:0 auto 14px;width:52px;height:52px;font-size:29px}.auth-brand h1{font-size:26px;letter-spacing:-1px;margin:0 0 6px}.auth-brand p{font-size:12px;color:var(--muted);margin:0}.auth-card{background:#fff;border:1px solid #e6edf2;border-radius:18px;padding:34px;box-shadow:0 15px 50px rgba(24,57,69,.06)}.auth-card h2{font-size:20px;margin:0 0 8px}.auth-card>.muted{font-size:12px;line-height:1.6;margin:0 0 26px}.stack-form{display:flex;flex-direction:column;gap:18px}.stack-form label{gap:8px}.stack-form input{min-height:44px}.stack-form button{margin-top:4px}.auth-foot{text-align:center;margin:23px 0 0;color:#97a6b0;font-size:11px}.requirements{margin-bottom:24px;padding:10px 16px;background:#f7f9fa;border:1px solid var(--line);border-radius:9px}.requirements>div{display:flex;justify-content:space-between;align-items:center;padding:8px 0;gap:15px;font-size:11px;color:#5c6e79}.requirements strong{white-space:nowrap}.req-ok{color:#2a9769}.req-no{color:#c44d57}
@media(max-width:1120px){.stats-grid{grid-template-columns:repeat(2,1fr)}.two-panels{grid-template-columns:1fr}.category-layout{grid-template-columns:1fr 1fr}.sidebar{width:220px}.main-area{margin-left:220px}.content{padding:30px 25px}.topbar{padding:0 25px}}
@media(max-width:760px){.sidebar{transform:translateX(-100%);transition:transform .2s;box-shadow:8px 0 20px #0001}.sidebar.is-open{transform:translateX(0)}.main-area{margin-left:0}.menu-toggle{display:block}.topbar{height:59px;padding:0 17px;gap:12px;justify-content:flex-start}.topbar-right{margin-left:auto}.content{padding:27px 17px}.page-heading h1{font-size:25px}.stats-grid{gap:11px}.stat-card{min-height:157px;padding:17px}.stat-card strong{font-size:27px}.stat-icon{margin-bottom:10px}.category-layout{grid-template-columns:1fr}.filters{padding:16px}.filters select{max-width:unset;flex:1}.filters .btn{flex:1}.actions-bar{align-items:flex-start}.actions-bar>.muted{max-width:40%}.table-actions{gap:12px}}
@media(max-width:490px){.stat-card{padding:15px 12px;min-height:152px}.stat-label{font-size:11px}.stat-card strong{font-size:27px}.stat-card small{font-size:10px}.actions-bar{flex-wrap:wrap}.actions-bar>.muted{max-width:100%}.actions-bar>.button-group{width:100%}.actions-bar>.button-group .btn{flex:1}.actions-bar>.btn-primary{margin-left:auto}.form-grid{grid-template-columns:1fr}.form-actions .btn{flex:1}.edit-form{padding:4px 18px 20px}.panel-head{padding:21px 18px 18px}.list-rows{padding:0 18px 10px}.auth-card{padding:25px 22px}.topbar-right{font-size:11px}}

/* v0.0.2 — Dettaglio prodotto a tutta larghezza e foto */
.form-panel-wide{max-width:none;width:100%}
.product-editor-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,320px);gap:30px;align-items:start}
.product-fields{min-width:0;display:flex;flex-direction:column;gap:22px}
.photo-panel{display:flex;flex-direction:column;gap:13px;padding:18px;background:#f9fbfc;border:1px solid var(--line);border-radius:11px;min-width:0}
.photo-panel>label:first-child{font-size:12px;font-weight:700;color:#43576a;display:block}
.photo-panel>label small{font-weight:400;color:#93a0ab}
.photo-panel>small{font-size:11px;color:#8292a1;line-height:1.5}
.photo-preview{aspect-ratio:4/3;border:1px dashed #cfdce5;border-radius:10px;background:#fff;display:grid;place-items:center;overflow:hidden}
.photo-preview img{width:100%;height:100%;object-fit:contain}
.photo-empty{display:flex;flex-direction:column;align-items:center;gap:7px;color:#9badb9;font-size:32px}
.photo-empty small{font-size:11px}
.photo-panel input[type=file]{max-width:100%;padding:9px;background:#fff;font-size:11px}
.photo-panel .photo-remove{display:flex;flex-direction:row;align-items:center;gap:9px;font-size:12px;font-weight:500}
.photo-panel .photo-remove input{width:15px;min-height:15px;height:15px}
.product-square.has-image{background:#fff;overflow:hidden;border:1px solid var(--line)}
.product-square.has-image img{width:100%;height:100%;object-fit:cover}
.stats-grid-three{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:1120px){.product-editor-grid{grid-template-columns:minmax(0,1fr) 260px}}
@media(max-width:900px){.product-editor-grid{grid-template-columns:1fr}.photo-panel{max-width:none}.photo-preview{aspect-ratio:16/9;max-height:310px}}
@media(max-width:760px){.stats-grid-three{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:490px){.stats-grid-three{grid-template-columns:1fr}.stats-grid-three .stat-card{min-height:135px}}

/* v0.0.3 — categorie multiple e prezzi */
.category-field{display:flex;flex-direction:column;gap:9px;min-width:0}
.field-title{font-size:12px;color:#43576a;font-weight:700}
.field-title small{color:#92a0ac;font-weight:400}
.category-field>small,.category-field>small a{font-size:11px;color:#348775}
.category-checkboxes{display:flex;flex-wrap:wrap;gap:9px;min-height:45px;padding:11px;border:1px solid #dfe7ed;border-radius:9px;background:#f9fbfc;align-content:flex-start}
.edit-form .category-choice{display:inline-flex;flex-direction:row;align-items:center;gap:8px;min-height:36px;border:1px solid #dbe5eb;border-radius:8px;padding:8px 12px;background:#fff;cursor:pointer;font-size:12px;font-weight:600;color:#536b7b;transition:.15s}
.edit-form .category-choice:has(input:checked){border-color:#8dcab9;background:#eaf8f2;color:#23785e}
.edit-form .category-choice input{width:16px;min-height:16px;height:16px;margin:0;accent-color:#23866b;flex-shrink:0}
.category-empty{font-size:12px;color:#7f91a1;padding:8px}
.price-section{display:flex;flex-direction:column;gap:13px;background:#f9fbfc;border:1px solid #e3ebef;border-radius:9px;padding:17px}
.price-section input{background:white}
@media(max-width:490px){.price-section{padding:13px}.category-checkboxes{padding:9px}}


/* v0.0.4 — duplicazione prodotti e riepilogo guadagni */
.stats-grid-four{grid-template-columns:repeat(4,minmax(0,1fr))}
.profit-positive{color:#23836b!important}
.profit-negative{color:#bd5966!important}
.profit-caption{font-size:10px;color:#8998a6;line-height:1.6;white-space:nowrap}
.profit-preview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.profit-preview>div{display:flex;flex-direction:column;gap:9px;padding:15px;border:1px solid #dceae5;border-radius:9px;background:#fff}
.profit-preview>div span{font-size:11px;line-height:1.5;color:#738a87;font-weight:600}
.profit-preview>div strong{font-size:18px;line-height:1.25;color:#263e41;overflow-wrap:anywhere}
.profit-note{font-size:11px;color:#8597a3;line-height:1.55}
.stat-card .profit-stat{font-size:clamp(18px,1.9vw,31px);white-space:nowrap}
@media(max-width:1250px){.stats-grid-four{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.profit-preview{grid-template-columns:1fr}}
@media(max-width:490px){.stats-grid-four{grid-template-columns:1fr}}

/* v0.0.5 — Riga finale riepilogo prodotti */
tfoot .inventory-total-row {background:#f0f7f5;border-top:2px solid #c4ddd3;}
tfoot .inventory-total-row th,tfoot .inventory-total-row td {padding:17px 20px;text-align:left;vertical-align:top;border-top:0;font-size:13px;color:#263e41;white-space:nowrap;}
tfoot .inventory-total-row th strong,tfoot .inventory-total-row td strong {font-size:14px;font-weight:800;color:#1c5147;}
tfoot .inventory-total-row th small,tfoot .inventory-total-row td small {display:block;margin-top:6px;font-size:10px;font-weight:500;color:#65877c;letter-spacing:0;line-height:1.4;}
.inventory-total-note {display:flex;flex-wrap:wrap;gap:6px 18px;line-height:1.65;}
.inventory-price-warning {color:#a46c2f;font-weight:700;}

/* v0.0.6 — ordine esplicito e pulito del modulo prodotti */
.product-fields>.product-name-field{width:100%;min-width:0}
.product-fields>.product-form-row{align-items:start}
.product-form-row>label,.product-form-row>.category-field{min-width:0}
.product-editor-grid>.photo-panel{grid-column:2;grid-row:1;position:relative}
@media(max-width:900px){.product-editor-grid>.photo-panel{grid-column:1;grid-row:auto}}


/* v0.0.7 — filtri personalizzabili e ordinamento */
[hidden]{display:none!important}
.filter-toolbar{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:18px 21px 0}
.filter-toolbar>div,.filter-settings-head{display:flex;flex-direction:column;gap:5px}
.filter-toolbar strong,.filter-settings-head strong{font-size:12px;color:#43576a}
.filter-toolbar small,.filter-settings-head small{font-size:11px;color:#8497a5}
.filter-settings{margin:13px 21px 0;border:1px solid #dce8e5;background:#f6faf8;border-radius:9px;padding:15px}
.filter-switches{display:flex;gap:10px 20px;flex-wrap:wrap;margin-top:13px}
.filter-switches label{display:flex;align-items:center;gap:8px;color:#43576a;font-size:12px;font-weight:600;cursor:pointer}
.filter-switches input{min-height:0;width:16px;height:16px;margin:0;accent-color:var(--brand)}
.product-filters{align-items:center}
.product-filters .sort-select{max-width:290px;min-width:210px}
@media(max-width:760px){.filter-toolbar{padding:16px 16px 0}.filter-settings{margin:12px 16px 0}.product-filters .sort-select{flex:1;max-width:unset;min-width:180px}}
@media(max-width:490px){.filter-toolbar{flex-wrap:wrap}.filter-toolbar .btn{width:100%}.product-filters select,.product-filters .search-wrap{flex-basis:100%;min-width:0;width:100%}.product-filters .btn{flex:1}}

/* v0.0.8 — selettore colonne della tabella Prodotti */
.column-switches{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px 16px}
.column-switches label{min-height:37px;padding:9px 11px;border:1px solid #dce8e5;border-radius:8px;background:#fff}
.column-switches label:has(input:checked){border-color:#a9d2c4;background:#f0faf5}
.column-settings-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:15px}
.column-settings-footer small{font-size:11px;color:#778d91;line-height:1.6}
#product-table [data-product-column][hidden]{display:none!important}
@media(max-width:950px){.column-switches{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:490px){.column-switches{grid-template-columns:1fr 1fr;gap:8px}.column-switches label{font-size:11px;padding:9px}.column-settings-footer{flex-wrap:wrap}.column-settings-footer button{margin-left:auto}}


/* v0.0.9 — gestione amministratori */
.admins-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,340px);gap:20px;align-items:start}
.admin-count{white-space:nowrap;padding:7px 11px;border:1px solid var(--line);border-radius:9px;font-size:12px;color:#627789;background:#f7fafb}
.admin-identity{display:flex;align-items:center;gap:9px;min-width:0}.admin-identity strong{overflow-wrap:anywhere}.admin-identity small{font-size:11px;color:#889baa}
.admin-avatar{height:32px;width:32px;flex-shrink:0;display:grid;place-items:center;background:#e9f3f0;border-radius:50%;color:#257861;font-weight:800}
.role-tag{font-size:11px;font-weight:700;color:#536d7c;white-space:nowrap}.role-owner{color:#247b64}
.admin-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;align-items:center}
.admin-table td{vertical-align:middle}
.create-admin-panel .edit-form{display:flex;flex-direction:column;gap:19px}
@media(max-width:1260px){.admins-layout{grid-template-columns:1fr}.create-admin-panel{max-width:none}}
@media(max-width:620px){.admin-table{min-width:720px}.admin-actions{flex-wrap:nowrap}}

/* v0.1.0 — prezzo scontato e finestra Esporta / Stampa */
.discount-price{color:#158364;font-weight:800}
.report-dialog-open{overflow:hidden}
.report-dialog{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;padding:20px}
.report-dialog-shade{position:absolute;inset:0;background:#152435a8;backdrop-filter:blur(2px)}
.report-dialog-panel{position:relative;width:min(940px,100%);max-height:min(90vh,920px);overflow:auto;background:white;border-radius:15px;box-shadow:0 22px 90px #13283a45;outline:none}
.report-dialog-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;border-bottom:1px solid #e5edef;padding:24px 27px 20px}
.report-dialog-header h2{font-size:21px;color:#172c3c;margin:0 0 7px}
.report-dialog-header p{font-size:12px;color:#8092a0;margin:0}
.report-dialog-x{font-size:27px;line-height:1;border:0;background:transparent;color:#8194a2;cursor:pointer}
.report-dialog-body{padding:22px 27px}
.report-choice{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:21px}
.report-choice label{display:flex;gap:12px;padding:17px;border:1px solid #dbe6eb;border-radius:10px;cursor:pointer;align-items:flex-start}
.report-choice label:has(input:checked){background:#f1faf6;border-color:#87bdaa}
.report-choice input{accent-color:#25836d;margin-top:2px}
.report-choice label span{display:flex;flex-direction:column;gap:6px}
.report-choice strong{font-size:13px;color:#2b4451}
.report-choice small{font-size:11px;color:#748b96;line-height:1.4}
.report-column-heading,.report-preview-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.report-column-heading strong,.report-preview-heading strong{font-size:13px;color:#344e59}
.report-column-heading .text-link{background:transparent;border:0;color:#22816c;font-weight:700;font-size:11px;cursor:pointer}
.report-check-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:23px}
.report-check-grid label{display:flex;align-items:center;gap:9px;font-size:11px;min-height:40px;line-height:1.45;padding:9px;background:#f7fafb;border:1px solid #e4ebef;border-radius:8px;color:#425b69;cursor:pointer}
.report-check-grid label:has(input:checked){background:#edf8f3;border-color:#bedbce}
.report-check-grid input{accent-color:#23866b;flex-shrink:0}
.report-preview-heading small,.report-info{font-size:11px;color:#758996}
.report-preview-wrap{max-height:230px;overflow:auto;border:1px solid #e0e8ed;border-radius:9px}
#report-preview-table{width:100%;min-width:max-content;border-collapse:collapse}
#report-preview-table th,#report-preview-table td{padding:10px 12px;border-bottom:1px solid #e8eef1;max-width:260px;overflow-wrap:anywhere;font-size:11px}
#report-preview-table th{background:#f2f7f7;color:#536875;white-space:nowrap;position:sticky;top:0}
.report-info{line-height:1.5;margin:11px 0 0}.report-error{color:#c43d40;font-size:12px;margin-top:10px;font-weight:700}
.report-dialog-actions{display:flex;justify-content:flex-end;gap:10px;padding:16px 27px;border-top:1px solid #e4edef;background:#fbfdfc}
@media(max-width:690px){.report-dialog{padding:8px}.report-dialog-panel{max-height:96vh}.report-dialog-header,.report-dialog-body{padding:17px}.report-dialog-actions{padding:14px 17px}.report-choice{grid-template-columns:1fr}.report-check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:410px){.report-check-grid{grid-template-columns:1fr}.report-column-heading{flex-direction:column;align-items:flex-start}}

/* v0.1.1: scelta dei prodotti da stampare, separata dal CSV. */
.report-print-scope{border:1px solid #dbe6eb;border-radius:10px;padding:16px;margin:0 0 22px;min-width:0;background:#fafdfb}
.report-print-scope legend{font-size:13px;font-weight:750;color:#2b4451;padding:0 6px}
.scope-options{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin:8px 0 14px}
.scope-options label{display:flex;align-items:center;gap:8px;font-size:12px;color:#385361;cursor:pointer}
.scope-options input{accent-color:#25836d}
.scope-category{display:flex;flex-direction:column;gap:7px;max-width:420px;font-size:12px;font-weight:700;color:#385361;margin-bottom:12px}
.scope-category select{width:100%;border:1px solid #dbe6eb;border-radius:7px;padding:11px;background:white;color:#273e4d}
.report-print-scope small{display:block;font-size:11px;color:#7a8e99;line-height:1.5}
.report-print-scope[hidden], .scope-category[hidden]{display:none!important}
