.mobile-app{--mobile-tabbar-h: 3.75rem;--mobile-header-h: 3.5rem;display:flex;flex-direction:column;min-height:100dvh;background:radial-gradient(120% 80% at 0% 0%,rgba(20,145,155,.12),transparent 55%),radial-gradient(90% 60% at 100% 0%,rgba(13,115,119,.08),transparent 50%),#f4f8f7;color:#0b1f1e}.mobile-app-header{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:.5rem;min-height:var(--mobile-header-h);padding:.55rem .85rem;padding-top:max(.55rem,env(safe-area-inset-top));background:#062a28;border-bottom:1px solid rgba(255,255,255,.1)}.mobile-app-brand{display:flex;align-items:center;gap:.65rem;min-width:0;flex:1}.mobile-app-logo{display:flex;size:2rem;width:2rem;height:2rem;flex-shrink:0;align-items:center;justify-content:center;border-radius:.65rem;background:#14919b;font-family:var(--font-display);font-size:.8rem;font-weight:700;color:#fff}.mobile-app-header-controls{display:flex;flex-shrink:0;align-items:center;gap:.35rem}.mobile-app-header-controls select option{background:#fff;color:#0b1f1e}.mobile-app-main{position:relative;flex:1;min-height:0;padding:.85rem .85rem calc(var(--mobile-tabbar-h) + 1rem + env(safe-area-inset-bottom));overflow-x:hidden}.mobile-app-tabbar{position:fixed;bottom:0;left:0;right:0;z-index:40;display:grid;min-height:var(--mobile-tabbar-h);padding:.35rem .4rem calc(.35rem + env(safe-area-inset-bottom));background:#fffffff0;border-top:1px solid #d5e3e1;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 -8px 24px #062a280f}.mobile-app-tab{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.15rem;min-height:2.75rem;border-radius:.75rem;color:#5b6f6d;font-size:.68rem;font-weight:600;letter-spacing:.01em;text-decoration:none;transition:color .15s ease,background .15s ease}.mobile-app-tab--active{color:#0d7377;background:#0d73771a}.mobile-page{display:grid;gap:.9rem}.mobile-page-title{margin:0;font-family:var(--font-display);font-size:1.35rem;font-weight:700;letter-spacing:-.02em;color:#062a28}.mobile-page-sub{margin:.15rem 0 0;font-size:.85rem;color:#5b6f6d}.mobile-period-chips{display:flex;flex-wrap:wrap;gap:.4rem}.mobile-chip{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid #d5e3e1;background:#fff;color:#0b1f1e;border-radius:999px;padding:.45rem .85rem;font-size:.8rem;font-weight:600;cursor:pointer}.mobile-chip--active{border-color:#0d7377;background:#0d7377;color:#fff}.mobile-kpi-grid{display:grid;grid-template-columns:1fr 1fr;gap:.65rem}.mobile-kpi{display:grid;gap:.2rem;padding:.85rem .9rem;border-radius:.9rem;background:#fff;border:1px solid #d5e3e1;box-shadow:0 1px #062a2808}.mobile-kpi-label{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#5b6f6d}.mobile-kpi-value{font-family:var(--font-display);font-size:1.15rem;font-weight:700;color:#062a28;line-height:1.2;word-break:break-word}.mobile-kpi-var{font-size:.72rem;font-weight:700}.mobile-kpi-var--up{color:#1b7f5a}.mobile-kpi-var--down{color:#c23b3b}.mobile-kpi-var--neutral{color:#5b6f6d}.mobile-card{display:grid;gap:.65rem;padding:.95rem;border-radius:.95rem;background:#fff;border:1px solid #d5e3e1}.mobile-card-title{margin:0;font-family:var(--font-display);font-size:.95rem;font-weight:700;color:#062a28}.mobile-list{display:grid;gap:.35rem;margin:0;padding:0;list-style:none}.mobile-list-row{display:grid;grid-template-columns:1.5rem 1fr auto;gap:.55rem;align-items:baseline;padding:.45rem 0;border-bottom:1px solid #e8f0ef;font-size:.88rem}.mobile-list-row:last-child{border-bottom:0}.mobile-list-rank{color:#5b6f6d;font-weight:700;font-size:.78rem}.mobile-list-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.mobile-list-meta{color:#5b6f6d;font-variant-numeric:tabular-nums;font-size:.82rem;white-space:nowrap}.mobile-toolbar{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.mobile-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:.75rem;border:1px solid #d5e3e1;background:#fff;color:#0d7377;cursor:pointer}.mobile-icon-btn:disabled{opacity:.55;cursor:wait}.mobile-icon-btn--spin svg{animation:mobile-spin .8s linear infinite}@keyframes mobile-spin{to{transform:rotate(360deg)}}.mobile-link-card{display:flex;align-items:center;gap:.75rem;padding:.9rem 1rem;border-radius:.9rem;background:#fff;border:1px solid #d5e3e1;text-decoration:none;color:inherit;transition:border-color .15s ease,background .15s ease}.mobile-link-card:active{background:#eef8f7;border-color:#a8ddd9}.mobile-link-card-ico{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;flex-shrink:0;border-radius:.75rem;background:#0d73771a;color:#0d7377}.mobile-link-card-body{min-width:0;flex:1}.mobile-link-card-title{margin:0;font-size:.95rem;font-weight:700;color:#062a28}.mobile-link-card-desc{margin:.15rem 0 0;font-size:.78rem;color:#5b6f6d}.mobile-link-card-chevron{flex-shrink:0;color:#a8ddd9}.mobile-back{display:inline-flex;align-items:center;gap:.35rem;margin-bottom:.35rem;padding:.35rem 0;border:0;background:transparent;color:#0d7377;font-size:.85rem;font-weight:600;text-decoration:none;cursor:pointer}.mobile-embed{margin:-.15rem}.mobile-embed .portal-shell,.mobile-embed .legacy-page-content{padding:0!important;margin:0!important;max-width:none!important}.mobile-embed .stats-page,.mobile-embed .stats-page-shell{padding-left:0!important;padding-right:0!important}.mobile-embed .stats-period-toolbar,.mobile-embed .stats-export-btns{flex-wrap:wrap}.mobile-embed .page-header h1,.mobile-embed .stats-page-subtitle{display:none}.mobile-embed .page-header{margin-bottom:.5rem;padding-bottom:.35rem}.mobile-embed .stats-page-header-actions{width:100%;justify-content:flex-end;flex-wrap:wrap}.mobile-embed .stats-quick-links{display:none}.mobile-altro-actions{display:grid;gap:.55rem}.mobile-altro-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;min-height:2.85rem;padding:.7rem 1rem;border-radius:.85rem;border:1px solid #d5e3e1;background:#fff;color:#0b1f1e;font-size:.9rem;font-weight:600;cursor:pointer;text-decoration:none}.mobile-altro-btn--primary{border-color:#0d7377;background:#0d7377;color:#fff}.mobile-altro-btn--danger{border-color:#f0c9c9;background:#fff5f5;color:#a12b2b}.mobile-muted{margin:0;font-size:.85rem;color:#5b6f6d}.mobile-chart-wrap{position:relative;width:100%;height:11rem}.mobile-empty{margin:0;padding:.75rem 0;font-size:.88rem;color:#5b6f6d;text-align:center}.dashboard-page{--bg-card: #ffffff;--accent: #0D7377;--text: #0B1F1E;--text-muted: #5B6F6D;--radius: 12px;--shadow: 0 1px 3px rgba(11, 31, 30, .06);--font-ui: "DM Sans", system-ui, sans-serif;--font-display: "Sora", "DM Sans", system-ui, sans-serif;display:flex;flex-direction:column;min-height:0;flex:1}.dashboard-page .nascosto{display:none!important}.dashboard-page .btn-icon{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border:none;border-radius:8px;background:transparent;cursor:pointer}.dashboard-wrap{flex:1;display:flex;flex-direction:column;min-height:0;width:100%;max-width:none;margin:0;overflow-y:auto}.dashboard-header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:1rem 1.5rem;margin-bottom:1rem;flex-shrink:0}.dashboard-header-main{min-width:0;flex:1}.dashboard-saluto-row{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem .85rem;min-width:0}.dashboard-pagine-nav{display:flex;flex-wrap:nowrap;align-items:center;gap:.35rem;flex-shrink:0}.dashboard-pagina-tab{font-family:var(--font-ui);cursor:pointer;transition:background .15s,color .15s,border-color .15s}.dashboard-pagina-tab--icon{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;padding:0;border-radius:var(--radius);border:1px solid rgba(0,0,0,.12);background:var(--bg-card);color:var(--text-muted)}.dashboard-pagina-tab--icon svg{display:block}.dashboard-pagina-tab--icon:hover,.dashboard-pagina-tab--icon:focus-visible{color:var(--accent);border-color:#0d737759;background:#0d73770f;outline:none}.dashboard-pagina-tab--icon.dashboard-pagina-tab--attiva{background:var(--accent);border-color:var(--accent);color:#fff}[data-theme=scuro] .dashboard-pagina-tab--icon{border-color:#ffffff1f}[data-theme=scuro] .dashboard-pagina-tab--icon:hover,[data-theme=scuro] .dashboard-pagina-tab--icon:focus-visible{background:#58a6ff1f}[data-theme=scuro] .dashboard-pagina-tab--icon.dashboard-pagina-tab--attiva{background:var(--accent);border-color:var(--accent);color:#fff}.dashboard-page.view-dashboard--analisi{overflow:hidden;height:calc(100vh - 4.5rem);max-height:calc(100vh - 4.5rem)}.dashboard-wrap.dashboard-wrap--analisi{overflow:hidden}.dashboard-wrap--analisi .dashboard-header{margin-bottom:.65rem}.dashboard-pagina{min-height:0;flex:1;display:flex;flex-direction:column}.dashboard-saluto{font-family:var(--font-display, "Sora", "DM Sans", system-ui, sans-serif);font-size:clamp(1.25rem,4vw,1.65rem);font-weight:600;color:var(--text);margin:0 0 .2rem;line-height:1.2;letter-spacing:-.02em}.dashboard-data-estesa{text-transform:capitalize;font-size:clamp(.72rem,2vw,.88rem);color:var(--text-muted);font-weight:500;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:min(100%,220px)}.dashboard-ora{font-size:clamp(.95rem,2.5vw,1.15rem);font-weight:700;color:var(--accent);font-variant-numeric:tabular-nums;line-height:1.2}.dashboard-page .header-dashboard-datetime-col{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:.05rem;min-width:0}.dashboard-periodo-wrap{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1rem;flex-shrink:0}.dashboard-periodo{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;flex-shrink:0}.dashboard-btn-export-csv{flex-shrink:0;color:var(--accent)}.dashboard-btn-refresh{flex-shrink:0;position:relative;color:var(--text-muted)}.dashboard-btn-refresh:hover:not(:disabled){color:var(--accent);background:#0d73771a}.dashboard-btn-refresh--hint:not(:disabled){color:var(--accent)}.dashboard-btn-refresh--hint:not(:disabled):after{content:"";position:absolute;top:6px;right:6px;width:7px;height:7px;border-radius:50%;background:#16a34a;box-shadow:0 0 0 2px #fff}.dashboard-btn-refresh:disabled{opacity:.55;cursor:wait}.dashboard-refresh-spin{animation:dashboard-refresh-spin .8s linear infinite}@keyframes dashboard-refresh-spin{to{transform:rotate(360deg)}}.dashboard-btn-export-csv:hover{color:var(--accent);background:#0d73771a}[data-theme=scuro] .dashboard-btn-export-csv:hover{background:#58a6ff1f}.dashboard-btn-export-pdf{flex-shrink:0;color:#dc2626}.dashboard-btn-export-pdf:hover:not(:disabled){background:#dc262614;border-color:#dc2626}.dashboard-btn-export-pdf:disabled{opacity:.45;cursor:not-allowed}.dashboard-btn-export-csv svg,.dashboard-btn-export-pdf svg,.dashboard-btn-refresh svg{display:block}.dashboard-periodo label{font-weight:500;color:var(--text);font-size:.95rem}.dashboard-periodo select{font-family:var(--font-ui);font-size:1rem;padding:.5rem .75rem;border:1px solid rgba(0,0,0,.15);border-radius:var(--radius);background:var(--bg-card);color:var(--text);cursor:pointer;min-width:0;width:100%;max-width:220px}.dashboard-periodo select:hover{border-color:var(--accent)}.dashboard-periodo select:focus,.dashboard-periodo select:focus-visible{outline:none;box-shadow:none;border-color:var(--border, #cbd5e1)}.dashboard-grid{flex:1;min-height:0;display:grid;grid-template-columns:1fr;grid-template-rows:auto repeat(3,minmax(0,1fr));gap:1rem;align-content:stretch}@media (max-width: 959px){.dashboard-grid{flex:0 0 auto;min-height:auto;grid-template-rows:none;grid-auto-rows:auto;align-content:start}.dashboard-card-prodotti .dashboard-prodotti-layout,.dashboard-card-reparti .dashboard-reparti-layout,.dashboard-card-pagamenti .dashboard-pagamenti-layout{flex:0 1 auto;min-height:0}.dashboard-chart-wrap.dashboard-chart-prodotti,.dashboard-chart-wrap.dashboard-chart-reparti,.dashboard-chart-wrap.dashboard-chart-pagamenti{height:200px;min-height:200px;max-height:200px;flex:0 0 200px}}@media (min-width: 560px){.dashboard-periodo select{width:auto;min-width:180px}}@media (min-width: 640px){.view-dashboard.active{padding:1rem 1.25rem}.dashboard-grid{gap:1.25rem}}@media (min-width: 960px){.view-dashboard.active{padding:1rem 1.5rem}.dashboard-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:none;grid-auto-rows:auto;gap:1.25rem}}@media (min-width: 1200px){.dashboard-grid{gap:1.5rem}}.dashboard-card{background:var(--bg-card);border-radius:var(--radius);padding:.5rem;box-shadow:var(--shadow);border:1px solid rgba(0,0,0,.06);min-height:200px;display:flex;flex-direction:column}@media (min-width: 640px){.dashboard-card{padding:.625rem;min-height:220px}}@media (min-width: 960px){.dashboard-card{min-height:0}}.dashboard-row-situazioni{grid-column:1 / -1;display:grid;grid-template-columns:1fr;gap:1rem;min-width:0}@media (min-width: 640px){.dashboard-row-situazioni{grid-template-columns:minmax(0,7fr) minmax(0,3fr);gap:1.25rem}}@media (min-width: 1200px){.dashboard-row-situazioni{gap:1.5rem}}.dashboard-card-situazione-oggi,.dashboard-card-magazzino{min-height:0!important;flex:0 0 auto}.dashboard-situazione-oggi-titolo{font-family:var(--font-ui);font-size:clamp(1rem,2.5vw,1.15rem);font-weight:600;color:var(--text);margin:0 0 .75rem;flex-shrink:0}@media (min-width: 640px){.dashboard-situazione-oggi-titolo{margin-bottom:1rem}}.dashboard-oggi-kpi-grid{display:grid;grid-template-columns:1fr;gap:.75rem 1rem}@media (min-width: 520px){.dashboard-oggi-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.dashboard-oggi-kpi{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.25rem;padding:.65rem .75rem;border-radius:var(--radius);background:#00000008;border:1px solid rgba(0,0,0,.06);min-width:0}[data-theme=scuro] .dashboard-oggi-kpi{background:#ffffff0a;border-color:#ffffff14}.dashboard-oggi-kpi-label{font-size:.8rem;font-weight:500;color:var(--text-muted);line-height:1.2}.dashboard-oggi-kpi-value{font-family:var(--font-ui);font-size:clamp(1.15rem,3.5vw,1.45rem);font-weight:700;color:var(--accent);font-variant-numeric:tabular-nums;line-height:1.2}.dashboard-magazzino-titolo{font-family:var(--font-ui);font-size:clamp(1rem,2.5vw,1.15rem);font-weight:600;color:var(--text);margin:0 0 .75rem;flex-shrink:0}@media (min-width: 640px){.dashboard-magazzino-titolo{margin-bottom:1rem}}.dashboard-magazzino-kpi-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem 1rem}.dashboard-magazzino-kpi{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.25rem;padding:.65rem .75rem;border-radius:var(--radius);background:#00000008;border:1px solid rgba(0,0,0,.06);min-width:0}[data-theme=scuro] .dashboard-magazzino-kpi{background:#ffffff0a;border-color:#ffffff14}.dashboard-magazzino-kpi-label{font-size:.8rem;font-weight:500;color:var(--text-muted);line-height:1.2}.dashboard-magazzino-kpi-value{font-family:var(--font-ui);font-size:clamp(1.15rem,3.5vw,1.45rem);font-weight:700;color:var(--accent);font-variant-numeric:tabular-nums;line-height:1.2}.dashboard-magazzino-kpi-value.dashboard-magazzino-kpi-value--alert{color:var(--danger)}.dashboard-magazzino-kpi-click{cursor:pointer;transition:background .15s ease,border-color .15s ease}.dashboard-magazzino-kpi-click:hover,.dashboard-magazzino-kpi-click:focus-visible{background:rgba(var(--accent-rgb, 59, 130, 246),.08);outline:none}.dashboard-magazzino-kpi-click:focus-visible{box-shadow:0 0 0 2px var(--accent)}.view-magazzino{overflow:auto;padding:.75rem 1rem;-webkit-overflow-scrolling:touch;height:100%}.view-magazzino.active{display:flex;flex-direction:column;overflow:hidden}.magazzino-wrap{width:100%;flex:1;min-height:0;display:flex;flex-direction:column;gap:.5rem}.magazzino-header{margin-bottom:0;flex-shrink:0}.magazzino-header .titolo-vista-tavoli{margin:0 0 .15rem;font-size:clamp(1.25rem,4vw,1.5rem)}.magazzino-header .sottotitolo-vista-tavoli{margin:0;font-size:.9rem;color:var(--text-muted)}.magazzino-tabs-row{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.magazzino-tabs{display:flex;flex-wrap:wrap;gap:.35rem;flex:1;min-width:0}.magazzino-btn-export-csv{flex-shrink:0}.magazzino-btn-export-csv.btn-icon{width:3rem;height:3rem;min-width:3rem;min-height:3rem;font-size:1.4rem}.magazzino-btn-export-csv svg{width:1.4rem;height:1.4rem}.magazzino-tab{font-family:var(--font-ui);font-size:.9rem;padding:.45rem .85rem;border-radius:var(--radius);border:1px solid rgba(0,0,0,.12);background:var(--bg-card);color:var(--text);cursor:pointer}.magazzino-tab.active{background:var(--accent);border-color:var(--accent);color:#fff}.magazzino-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.magazzino-toolbar--movimenti .magazzino-search{flex:1 1 180px;min-width:160px}.magazzino-toolbar--movimenti .magazzino-movimenti-filtri{flex:1 1 100%;width:100%}.magazzino-toolbar--situazione .magazzino-search,.magazzino-toolbar--inventario .magazzino-search{flex:1;min-width:160px}.magazzino-toolbar--situazione .magazzino-deposito-operativo-wrap,.magazzino-toolbar--inventario .magazzino-deposito-operativo-wrap{order:2}.magazzino-toolbar--situazione .magazzino-filtri,.magazzino-toolbar--inventario .magazzino-filtri{order:3}.magazzino-search{flex:1;min-width:160px;height:2.5rem;box-sizing:border-box;font-family:var(--font-ui);padding:0 .65rem;border:1px solid rgba(0,0,0,.15);border-radius:var(--radius);background:var(--bg-main)}.magazzino-filtri{display:flex;flex-wrap:wrap;align-items:stretch;gap:.35rem}.magazzino-movimenti-filtri{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;flex:1;min-width:220px}.magazzino-movimenti-filtri>label{font-size:.85rem;font-weight:500;color:var(--text-muted);white-space:nowrap}.magazzino-movimenti-filtri select,.magazzino-movimenti-filtri input[type=search],.magazzino-movimenti-range input[type=date]{height:2.5rem;box-sizing:border-box;font-family:var(--font-ui);font-size:.9rem;padding:0 .65rem;border:1px solid rgba(0,0,0,.15);border-radius:var(--radius);background:var(--bg-main);color:var(--text)}.magazzino-movimenti-filtri select,.magazzino-mov-prodotto-filtro{min-width:11rem}.magazzino-movimenti-range{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .5rem}.magazzino-movimenti-range label{font-size:.85rem;font-weight:500;color:var(--text-muted)}.magazzino-filtro-btn.btn{height:2.5rem;box-sizing:border-box;padding:0 .85rem;font-size:.9rem;line-height:1;display:inline-flex;align-items:center;justify-content:center}.magazzino-panel{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.magazzino-table-wrap{flex:1;min-height:0;overflow:auto;width:100%;max-width:none;border:1px solid #D5E3E1;border-radius:12px;background:#fff}.magazzino-table{width:100%;border-collapse:collapse;font-size:.9rem}.magazzino-table th,.magazzino-table td{padding:.55rem .65rem;text-align:left;border-bottom:1px solid rgba(0,0,0,.06)}.magazzino-table th{position:sticky;top:0;background:var(--bg-card);font-weight:600;z-index:1}.magazzino-azioni{width:5rem;text-align:center;padding-left:.35rem;padding-right:.35rem}.magazzino-btn-mov.btn-icon{width:3rem;height:3rem;min-width:3rem;min-height:3rem;font-size:1.4rem}.magazzino-btn-mov svg{width:1.4rem;height:1.4rem}.magazzino-panel[data-mag-panel=situazione] .magazzino-table th,.magazzino-panel[data-mag-panel=situazione] .magazzino-table td{vertical-align:middle}.magazzino-panel[data-mag-panel=situazione] .magazzino-azioni{width:4.25rem;padding:.1rem .35rem}.magazzino-panel[data-mag-panel=situazione] .magazzino-stato-badge{padding:.08rem .35rem}.magazzino-num{font-variant-numeric:tabular-nums;text-align:right}.magazzino-stato-badge{display:inline-block;padding:.15rem .45rem;border-radius:999px;font-size:.78rem;font-weight:600}.magazzino-stato-ok{background:#28a74526;color:#1e7e34}.magazzino-stato-sottoscorta{background:#ffc10733;color:#856404}.magazzino-stato-esaurito{background:#dc354526;color:var(--danger)}.magazzino-vuoto{text-align:center;color:var(--text-muted);padding:1.5rem}.magazzino-inventario-hint{margin:0 0 .5rem;color:var(--text-muted);font-size:.85rem}.magazzino-inventario-list{flex:1;min-height:0;overflow:auto;display:flex;flex-direction:column;gap:.25rem;margin-bottom:.5rem}.magazzino-inventario-riga{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;column-gap:.65rem;padding:.35rem .5rem;background:var(--bg-card);border-radius:var(--radius);border:1px solid rgba(0,0,0,.08)}.magazzino-inventario-nome{min-width:0;font-size:.9rem;font-weight:500;line-height:1.25}.magazzino-inventario-attuale{font-size:.78rem;color:var(--text-muted);white-space:nowrap}.magazzino-inventario-quantita-wrap{display:flex;align-items:stretch;gap:.25rem;flex-shrink:0}.magazzino-inventario-quantita-wrap .modifica-riga-quantita-btn{width:2rem;height:2rem;font-size:1rem}.magazzino-inventario-input{width:4.5rem;flex:0 0 4.5rem;height:2rem;box-sizing:border-box;font-family:var(--font-ui);font-size:.88rem;padding:.2rem .35rem;border:1px solid rgba(0,0,0,.15);border-radius:var(--radius);text-align:center;font-variant-numeric:tabular-nums}.magazzino-fab{position:fixed;bottom:1.5rem;right:1.5rem;z-index:50}.magazzino-fornitori-subtabs{display:flex;gap:.35rem;flex-wrap:wrap;flex-shrink:0}.magazzino-fornitori-subtab{height:2.5rem;box-sizing:border-box;font-family:var(--font-ui);font-size:.88rem;font-weight:600;padding:0 .85rem;border:1px solid rgba(0,0,0,.1);border-radius:var(--radius);background:var(--bg-main);color:var(--text-muted);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}.magazzino-fornitori-subtab.active{background:var(--accent, #3b82f6);border-color:var(--accent, #3b82f6);color:#fff}.magazzino-fornitori-subpanel.nascosto{display:none}.magazzino-panel[data-mag-panel=fornitori] .magazzino-fornitori-subpanel:not(.nascosto){flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.magazzino-panel[data-mag-panel=fornitori] .magazzino-fornitori-subpanel:not(.nascosto) .magazzino-table-wrap{flex:1;min-height:0;overflow:auto;-webkit-overflow-scrolling:touch}.magazzino-ddt-modal{max-width:760px;z-index:1001}#magazzinoDdtOverlay{z-index:1000}.magazzino-ddt-form{display:grid;grid-template-columns:1fr 1fr;gap:.85rem 1rem}.magazzino-ddt-field{display:flex;flex-direction:column;gap:.3rem;min-width:0}.magazzino-ddt-field-full{grid-column:1 / -1}.magazzino-ddt-field label{font-size:.68rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted)}.magazzino-ddt-field input,.magazzino-ddt-field select,.magazzino-ddt-field textarea{font-family:var(--font-ui);font-size:.95rem;padding:.55rem .7rem;border:1px solid rgba(0,0,0,.12);border-radius:var(--radius);background:var(--bg-main);color:var(--text);width:100%;box-sizing:border-box}.magazzino-ddt-field textarea{resize:vertical;min-height:4rem}.magazzino-ddt-righe-wrap{display:flex;flex-direction:column;gap:.5rem}.magazzino-ddt-righe-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;font-weight:600;font-size:.9rem}.magazzino-ddt-righe-table select,.magazzino-ddt-righe-table input{font-family:var(--font-ui);font-size:.9rem;padding:.4rem .55rem;border:1px solid rgba(0,0,0,.12);border-radius:var(--radius);background:var(--bg-main);color:var(--text);width:100%;box-sizing:border-box}.magazzino-ddt-righe-table .magazzino-ddt-riga-rimuovi{color:var(--danger, #dc2626)}.magazzino-ddt-actions{display:flex;justify-content:flex-end;gap:.65rem;margin-top:1rem}.magazzino-carico-modal{z-index:1001}.magazzino-carico-modal-fullscreen{top:0;left:0;right:0;bottom:0;width:100%;max-width:none;height:100%;transform:none;border-radius:0;display:flex;flex-direction:column}.magazzino-carico-modal-fullscreen:not(.nascosto){opacity:1;pointer-events:auto}.magazzino-carico-modal-fullscreen .form-modal-body{flex:1;min-height:0;max-height:none;display:flex;flex-direction:column;overflow:hidden;padding:1rem 1.25rem 1.25rem}#magazzinoCaricoOverlay{z-index:1000}.magazzino-carico-form{display:flex;flex-direction:column;gap:.85rem;flex:1;min-height:0}.magazzino-carico-field{display:flex;flex-direction:column;gap:.3rem;min-width:0}.magazzino-carico-field-full{width:100%}.magazzino-carico-field-row{display:flex;gap:.85rem;align-items:stretch}.magazzino-carico-field-row .magazzino-carico-field{flex:1;min-width:0}@media (max-width: 560px){.magazzino-carico-field-row{flex-direction:column}}.magazzino-carico-field label{font-size:.68rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted)}.magazzino-carico-field select,.magazzino-carico-field input{font-family:var(--font-ui);font-size:.95rem;padding:.55rem .7rem;border:1px solid rgba(0,0,0,.12);border-radius:var(--radius);background:var(--bg-main);color:var(--text);width:100%;box-sizing:border-box}.magazzino-carico-righe-wrap{display:flex;flex-direction:column;gap:.5rem;flex:1;min-height:0}.magazzino-carico-righe-wrap .magazzino-table-wrap{flex:1;min-height:0;overflow:auto}.magazzino-carico-righe-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;font-weight:600;font-size:.9rem}.magazzino-carico-righe-table th:nth-child(2),.magazzino-carico-righe-table .magazzino-carico-qty-cell{text-align:center}.magazzino-carico-righe-table .magazzino-carico-azioni-cell{width:4.5rem;text-align:center}.magazzino-carico-prodotto-wrap{position:relative;min-width:0}.magazzino-carico-prodotto-input{font-family:var(--font-ui);font-size:.95rem;padding:.5rem .65rem;border:1px solid rgba(0,0,0,.12);border-radius:var(--radius);background:var(--bg-main);color:var(--text);width:100%;box-sizing:border-box}.magazzino-carico-prodotto-suggest{position:absolute;top:calc(100% + .25rem);left:0;right:0;z-index:20;max-height:220px;overflow:auto;background:var(--bg-card);border:1px solid rgba(0,0,0,.12);border-radius:var(--radius);box-shadow:0 8px 24px #00000026}.magazzino-carico-prodotto-opt{display:block;width:100%;text-align:left;border:none;background:transparent;color:var(--text);font-family:var(--font-ui);font-size:.92rem;padding:.55rem .7rem;cursor:pointer}.magazzino-carico-prodotto-opt:hover,.magazzino-carico-prodotto-opt:focus{background:#3b82f61f;outline:none}.magazzino-carico-prodotto-suggest-vuoto{padding:.65rem .7rem;font-size:.88rem;color:var(--text-muted)}.magazzino-carico-quantita-wrap{justify-content:center;margin:0 auto;max-width:220px}.magazzino-carico-quantita-wrap.modifica-riga-quantita-wrap{margin-bottom:0}.magazzino-carico-righe-table td{vertical-align:middle}.magazzino-carico-quantita-wrap .magazzino-carico-qty{width:5.5rem;flex:0 0 5.5rem;text-align:center;font-variant-numeric:tabular-nums}.magazzino-carico-righe-table select,.magazzino-carico-righe-table input{font-family:var(--font-ui);font-size:.9rem;padding:.4rem .55rem;border:1px solid rgba(0,0,0,.12);border-radius:var(--radius);background:var(--bg-main);color:var(--text);width:100%;box-sizing:border-box}.magazzino-carico-righe-table .magazzino-carico-riga-rimuovi{width:3rem;height:3rem;min-width:3rem;min-height:3rem;color:var(--danger, #dc2626)}.magazzino-carico-righe-table .magazzino-carico-riga-rimuovi svg{width:1.45rem;height:1.45rem}.magazzino-carico-righe-table .magazzino-carico-riga-rimuovi:hover{background:#dc26261a;color:var(--danger, #dc2626)}.magazzino-carico-actions{display:flex;justify-content:flex-end;gap:.65rem;margin-top:1rem}.magazzino-barcode-input{font-family:var(--font-ui);font-size:.95rem;padding:.55rem .7rem;border:1px solid rgba(0,0,0,.12);border-radius:var(--radius);background:var(--bg-main);color:var(--text);width:100%;box-sizing:border-box}.prodotto-form-ricette-intro{margin:0 0 .75rem;font-size:.88rem;color:var(--text-muted);line-height:1.45}.catalogo-ricette-toolbar{display:flex;justify-content:flex-end;margin-bottom:.5rem}.catalogo-ricette-table-wrap,.catalogo-ricette-list-wrap{margin-bottom:.85rem;border:1px solid rgba(0,0,0,.08);border-radius:var(--radius);background:var(--bg-card);overflow:hidden}.catalogo-ricetta-head{padding:.55rem .65rem;border-bottom:1px solid rgba(0,0,0,.08);background:#00000005;font-size:.9rem}.catalogo-ricette-body{display:flex;flex-direction:column}.catalogo-ricetta-riga{padding:.4rem .55rem;border-bottom:1px solid rgba(0,0,0,.06)}.catalogo-ricetta-riga:last-child{border-bottom:none}.catalogo-ricette-vuoto{padding:1.25rem .65rem}.catalogo-ricetta-riga-inner{display:grid;grid-template-columns:minmax(0,1fr) 5.75rem 2.5rem;column-gap:.5rem;align-items:center;width:100%;min-width:0}.catalogo-ricetta-riga-inner .catalogo-ricetta-ingrediente-wrap{min-width:0;width:100%}.catalogo-ricetta-riga-inner .catalogo-ricetta-qty-wrap{width:100%}.catalogo-ricetta-head-inner{color:inherit}.catalogo-ricetta-head-ing{text-align:left;font-weight:600}.catalogo-ricetta-head-qty{text-align:center;font-weight:600}.catalogo-ricetta-head-act{width:2.5rem}.catalogo-ricetta-ingrediente-wrap{position:relative;min-width:0}.catalogo-ricetta-riga-inner .catalogo-ricetta-ingrediente-input,.catalogo-ricetta-riga-inner .catalogo-ricetta-qty{display:block;width:100%;height:2.5rem;min-height:2.5rem;max-height:2.5rem;margin:0;padding:0 .55rem;font-family:var(--font-ui);font-size:.9rem;line-height:1.2;border:1px solid rgba(0,0,0,.12);border-radius:var(--radius);background:var(--bg-main);color:var(--text);box-sizing:border-box}.catalogo-ricetta-ingrediente-suggest{position:absolute;top:calc(100% + .25rem);left:0;right:0;z-index:30;max-height:220px;overflow:auto;background:var(--bg-card);border:1px solid rgba(0,0,0,.12);border-radius:var(--radius);box-shadow:0 8px 24px #00000026}.catalogo-ricetta-ingrediente-opt{display:flex;align-items:center;justify-content:space-between;gap:.5rem;width:100%;text-align:left;border:none;background:transparent;color:var(--text);font-family:var(--font-ui);font-size:.9rem;padding:.5rem .65rem;cursor:pointer}.catalogo-ricetta-opt-nome{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.catalogo-ricetta-opt-tipo{flex:0 0 auto;font-size:.72rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:var(--text-muted);opacity:.85}.catalogo-ricetta-ingrediente-opt:hover,.catalogo-ricetta-ingrediente-opt:focus{background:#3b82f61f;outline:none}.catalogo-ricetta-ingrediente-suggest-vuoto{padding:.55rem .65rem;font-size:.86rem;color:var(--text-muted)}.catalogo-ricetta-riga-inner .catalogo-ricetta-qty{text-align:center;-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.catalogo-ricetta-riga-inner .catalogo-ricetta-qty::-webkit-outer-spin-button,.catalogo-ricetta-riga-inner .catalogo-ricetta-qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.catalogo-ricetta-riga-rimuovi{width:2.5rem;height:2.5rem;min-width:2.5rem;min-height:2.5rem;padding:0;margin:0;display:inline-flex;align-items:center;justify-content:center;justify-self:center;border:none;border-radius:var(--radius);background:transparent;cursor:pointer;color:var(--danger, #dc2626)}.catalogo-ricetta-riga-rimuovi svg{width:1.15rem;height:1.15rem;display:block}.catalogo-ricetta-riga-rimuovi:hover{background:#dc26261a;color:var(--danger, #dc2626)}.catalogo-ricetta-anteprima{padding:.75rem .85rem;background:var(--bg-main);border:1px solid rgba(0,0,0,.08);border-radius:var(--radius)}.catalogo-ricetta-anteprima-titolo{margin:0 0 .45rem;font-size:.82rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.catalogo-ricetta-anteprima ul{margin:0;padding-left:1.1rem;font-size:.9rem}.catalogo-ricetta-anteprima li{margin:.2rem 0}.catalogo-ricetta-anteprima-insuff{color:var(--danger, #dc2626);font-weight:600}.catalogo-ricetta-anteprima-vuoto{margin:0;font-size:.88rem;color:var(--text-muted)}.magazzino-fornitori-list{flex:1;min-height:0;overflow:auto;display:flex;flex-direction:column;gap:.5rem;-webkit-overflow-scrolling:touch}.magazzino-fornitore-card{display:flex;flex-direction:row;align-items:center;gap:.65rem;padding:.65rem .85rem;background:var(--bg-card);border-radius:var(--radius);border:1px solid rgba(0,0,0,.08)}.magazzino-fornitore-card-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:.2rem}.magazzino-fornitore-card-azioni{flex-shrink:0}.magazzino-btn-forn-modifica.btn-icon{width:3rem;height:3rem;min-width:3rem;min-height:3rem;font-size:1.4rem}.magazzino-btn-forn-modifica svg{width:1.4rem;height:1.4rem}.magazzino-depositi-list{flex:1;min-height:0;overflow:auto;display:flex;flex-direction:column;gap:.5rem}.magazzino-depositi-hint{margin:0 0 .75rem;flex-shrink:0;color:var(--text-muted, #666);font-size:.9rem}.magazzino-deposito-card{display:flex;flex-direction:row;align-items:center;gap:.65rem;padding:.65rem .85rem;background:var(--bg-card);border-radius:var(--radius);border:1px solid rgba(0,0,0,.08)}.magazzino-deposito-card-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:.2rem}.magazzino-deposito-card-azioni{flex-shrink:0}.magazzino-btn-dep-modifica.btn-icon{width:3rem;height:3rem;min-width:3rem;min-height:3rem;font-size:1.4rem}.magazzino-btn-dep-modifica svg{width:1.4rem;height:1.4rem}.magazzino-deposito-id{font-size:.82rem;color:var(--text-muted, #666)}.magazzino-deposito-badge{display:inline-block;margin-left:.35rem;padding:.1rem .45rem;font-size:.75rem;font-weight:600;border-radius:999px;background:#2e7d321f;color:#2e7d32}.magazzino-deposito-operativo-wrap{display:flex;align-items:center;gap:.4rem;flex-shrink:0}.magazzino-deposito-operativo-wrap label{font-size:.85rem;font-weight:500;color:var(--text-muted);white-space:nowrap}.magazzino-deposito-operativo-wrap select{min-width:11rem;max-width:16rem;height:2.5rem;box-sizing:border-box;font-family:var(--font-ui);font-size:.9rem;padding:0 .65rem;border:1px solid rgba(0,0,0,.15);border-radius:var(--radius);background:var(--bg-main);color:var(--text)}.magazzino-movimenti-filtri .magazzino-deposito-operativo-wrap label{font-size:.85rem;font-weight:500;color:var(--text-muted)}.magazzino-deposito-modal{max-width:420px;z-index:1001}#magazzinoDepositoOverlay{z-index:1000}.magazzino-deposito-form{display:flex;flex-direction:column;gap:.75rem}.magazzino-deposito-field{display:flex;flex-direction:column;gap:.3rem;min-width:0}.magazzino-deposito-field label{font-size:.68rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted)}.magazzino-deposito-field input[type=text]{font-family:var(--font-ui);font-size:.95rem;padding:.55rem .7rem;border:1px solid rgba(0,0,0,.12);border-radius:var(--radius);background:var(--bg-main);color:var(--text);width:100%;box-sizing:border-box}.magazzino-deposito-field input[type=text]:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px #0063cc26}.magazzino-deposito-field.impostazioni-field-checkbox{padding-top:.15rem}.magazzino-deposito-field .impostazioni-checkbox-label{font-size:.9rem;font-weight:500;letter-spacing:normal;text-transform:none;color:var(--text)}.magazzino-deposito-actions{display:flex;justify-content:space-between;align-items:center;gap:.65rem;margin-top:1rem}.magazzino-deposito-actions-right{display:flex;align-items:center;gap:.65rem;margin-left:auto}.magazzino-dep-elimina,.magazzino-forn-elimina{display:inline-flex;align-items:center;gap:.4rem;color:#b42318;border:1px solid rgba(180,35,24,.35);background:#b423180f}.magazzino-dep-elimina:hover,.magazzino-forn-elimina:hover{background:#b423181f;border-color:#b4231880;color:#912018}.magazzino-fornitore-modal{max-width:680px;z-index:1001}#magazzinoFornitoreOverlay{z-index:1000}.magazzino-fornitore-form{display:grid;grid-template-columns:1fr 1fr;gap:.85rem 1rem}.magazzino-fornitore-field{display:flex;flex-direction:column;gap:.3rem;min-width:0}.magazzino-fornitore-field-full{grid-column:1 / -1}.magazzino-fornitore-field label{font-size:.68rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted)}.magazzino-fornitore-field input,.magazzino-fornitore-field select,.magazzino-fornitore-field textarea{font-family:var(--font-ui);font-size:.95rem;padding:.55rem .7rem;border:1px solid rgba(0,0,0,.12);border-radius:var(--radius);background:var(--bg-main);color:var(--text);width:100%;box-sizing:border-box}.magazzino-fornitore-field textarea{resize:vertical;min-height:5.5rem}.magazzino-fornitore-field input:focus,.magazzino-fornitore-field textarea:focus{outline:2px solid var(--accent-soft, rgba(59, 130, 246, .35));outline-offset:1px;border-color:var(--accent, #3b82f6)}.magazzino-fornitore-field select:focus,.magazzino-fornitore-field select:focus-visible{outline:none;box-shadow:none;border-color:#0000001f}.magazzino-fornitore-actions{display:flex;justify-content:space-between;align-items:center;gap:.65rem;margin-top:1.1rem;padding-top:.25rem}.magazzino-fornitore-actions-right{display:flex;align-items:center;gap:.65rem;margin-left:auto}.magazzino-fornitore-salva{display:inline-flex;align-items:center;gap:.45rem}@media (max-width: 640px){.magazzino-fornitore-form{grid-template-columns:1fr}}.magazzino-inventario-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.5rem;margin-top:1rem;width:100%}.magazzino-report-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.65rem;margin-bottom:.85rem;flex-shrink:0}.magazzino-panel[data-mag-panel=report] .magazzino-report-panel:not(.nascosto){flex:1;min-height:0;overflow:auto;-webkit-overflow-scrolling:touch}.magazzino-panel[data-mag-panel=report] .magazzino-report-filtri,.magazzino-panel[data-mag-panel=report] .magazzino-report-totale,.magazzino-panel[data-mag-panel=report] .magazzino-report-hint,.magazzino-panel[data-mag-panel=report] .magazzino-report-sezione-titolo{flex-shrink:0}.magazzino-panel[data-mag-panel=report] .magazzino-table-wrap{flex:none;min-height:0;overflow:visible;margin-bottom:.75rem}.magazzino-panel[data-mag-panel=report] .magazzino-table-wrap:last-child{margin-bottom:0}.magazzino-report-subtabs{display:flex;flex-wrap:wrap;gap:.35rem}.magazzino-report-subtab{font-family:var(--font-ui);font-size:.88rem;padding:.4rem .75rem;border-radius:var(--radius-sm, 6px);border:1px solid var(--border, #ddd);background:var(--bg-card, #fff);color:var(--text-muted, #666);cursor:pointer}.magazzino-report-subtab.active{background:rgba(var(--accent-rgb, 59, 130, 246),.12);border-color:rgba(var(--accent-rgb, 59, 130, 246),.35);color:var(--text, #111);font-weight:600}.magazzino-report-filtri{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.75rem}.magazzino-report-filtri label{font-size:.9rem}.magazzino-report-filtri select,.magazzino-report-filtri input[type=number]{font-family:var(--font-ui);padding:.35rem .5rem;border-radius:var(--radius-sm, 6px);border:1px solid var(--border, #ddd)}.magazzino-report-sezione-titolo{margin:1rem 0 .5rem;font-size:.95rem;font-weight:600}.magazzino-report-hint{margin:0 0 .75rem;font-size:.88rem;color:var(--text-muted, #666)}.magazzino-report-totale{margin:0 0 .75rem;font-size:1rem}.magazzino-riga-prodotto{cursor:pointer}.magazzino-riga-prodotto:hover{background:rgba(var(--accent-rgb, 59, 130, 246),.06)}.magazzino-modale-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:.5rem}.magazzino-movimento-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:1000}.magazzino-movimento-modal{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);width:90%;max-width:420px;max-height:90vh;overflow-y:auto;background:var(--bg-card);border-radius:var(--radius);padding:1.25rem;box-shadow:0 8px 32px #0003;z-index:1001}.magazzino-movimento-modal h3{margin:0 0 1rem;font-size:1.25rem;color:var(--text)}.magazzino-mov-form,.magazzino-modale-form{display:flex;flex-direction:column;gap:.75rem}.magazzino-mov-form label,.magazzino-modale-form label{display:flex;flex-direction:column;gap:.25rem;font-size:.9rem}.magazzino-mov-form label.nascosto,.magazzino-modale-form label.nascosto,.magazzino-mov-form select.nascosto,.magazzino-modale-form select.nascosto{display:none!important}.magazzino-mov-form select,.magazzino-mov-form input,.magazzino-modale-form select,.magazzino-modale-form input{font-family:var(--font-ui);padding:.45rem .6rem;border:1px solid rgba(0,0,0,.15);border-radius:var(--radius);background:var(--bg-main);color:var(--text)}.magazzino-mov-quantita-wrap{display:flex;align-items:stretch;gap:.35rem}.magazzino-mov-quantita-wrap input{flex:1;min-width:0;height:2.5rem;box-sizing:border-box;margin-bottom:0;text-align:center;font-variant-numeric:tabular-nums}.magazzino-mov-actions,.magazzino-modale-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:1rem}.dashboard-card-heading{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-shrink:0;margin-bottom:.75rem}@media (min-width: 640px){.dashboard-card-heading{margin-bottom:1rem}}.dashboard-card-heading h3{font-family:var(--font-ui);font-size:clamp(1rem,2.5vw,1.15rem);font-weight:600;color:var(--text);margin:0;flex:1;min-width:0;line-height:1.25}.dashboard-vista-toggle{flex-shrink:0;width:38px;height:38px}.dashboard-vista-toggle svg{display:block}.dashboard-chart-wrap{flex:1;min-height:0;position:relative;width:100%}@media (max-width: 959px){.dashboard-chart-wrap{min-height:180px}}@media (min-width: 640px) and (max-width: 959px){.dashboard-chart-wrap{min-height:200px}}.dashboard-card-prodotti .dashboard-prodotti-layout,.dashboard-card-reparti .dashboard-reparti-layout,.dashboard-card-pagamenti .dashboard-pagamenti-layout{flex:0 1 auto;min-height:0;display:flex;flex-direction:column;gap:.65rem}.dashboard-chart-prodotti,.dashboard-chart-reparti,.dashboard-chart-pagamenti{flex:0 0 auto;min-height:0}.dashboard-chart-wrap.dashboard-chart-prodotti,.dashboard-chart-wrap.dashboard-chart-reparti,.dashboard-chart-wrap.dashboard-chart-pagamenti{position:relative;width:100%;height:240px;min-height:240px;max-height:240px;flex:0 0 240px}.dashboard-prodotti-layout[data-dashboard-vista=grafico] .dashboard-top-prodotti-table-wrap,.dashboard-reparti-layout[data-dashboard-vista=grafico] .dashboard-reparti-table-wrap,.dashboard-pagamenti-layout[data-dashboard-vista=grafico] .dashboard-pagamenti-table-wrap,.dashboard-prodotti-layout[data-dashboard-vista=tabella] .dashboard-chart-prodotti,.dashboard-reparti-layout[data-dashboard-vista=tabella] .dashboard-chart-reparti,.dashboard-pagamenti-layout[data-dashboard-vista=tabella] .dashboard-chart-pagamenti{display:none}.dashboard-top-prodotti-table-wrap,.dashboard-reparti-table-wrap,.dashboard-pagamenti-table-wrap{flex-shrink:0;max-height:min(220px,42vh);overflow:auto;width:100%;max-width:none;border-radius:12px;border:1px solid #D5E3E1;background:#fff}.dashboard-prodotti-layout[data-dashboard-vista=tabella] .dashboard-top-prodotti-table-wrap,.dashboard-reparti-layout[data-dashboard-vista=tabella] .dashboard-reparti-table-wrap,.dashboard-pagamenti-layout[data-dashboard-vista=tabella] .dashboard-pagamenti-table-wrap{flex:1;min-height:0;max-height:none}.dashboard-top-prodotti-table,.dashboard-reparti-table,.dashboard-pagamenti-table{width:100%;border-collapse:collapse;font-size:.82rem;font-family:var(--font-ui)}.dashboard-top-prodotti-table th,.dashboard-top-prodotti-table td,.dashboard-reparti-table th,.dashboard-reparti-table td,.dashboard-pagamenti-table th,.dashboard-pagamenti-table td{padding:.4rem .5rem;text-align:left;border-bottom:1px solid rgba(0,0,0,.06)}.dashboard-top-prodotti-table th,.dashboard-reparti-table th,.dashboard-pagamenti-table th{font-weight:600;color:var(--text);background:var(--bg-card);position:sticky;top:0;z-index:1;box-shadow:0 1px #0000000f}.dashboard-top-prodotti-table tbody tr:last-child td,.dashboard-reparti-table tbody tr:last-child td,.dashboard-pagamenti-table tbody tr:last-child td{border-bottom:none}.dashboard-top-prodotti-table td:nth-child(3),.dashboard-top-prodotti-table th:nth-child(3),.dashboard-top-prodotti-table td:nth-child(4),.dashboard-top-prodotti-table th:nth-child(4),.dashboard-reparti-table td:nth-child(3),.dashboard-reparti-table th:nth-child(3),.dashboard-reparti-table td:nth-child(4),.dashboard-reparti-table th:nth-child(4),.dashboard-reparti-table td:nth-child(5),.dashboard-reparti-table th:nth-child(5),.dashboard-pagamenti-table td:nth-child(2),.dashboard-pagamenti-table th:nth-child(2),.dashboard-pagamenti-table td:nth-child(3),.dashboard-pagamenti-table th:nth-child(3){text-align:right;font-variant-numeric:tabular-nums}.dashboard-vuoto{color:var(--text-muted);font-size:.95rem;padding:1rem 0;margin:0}.dashboard-card-wide{grid-column:1 / -1}.dashboard-card-per-sede{min-height:0!important;gap:.35rem}.dashboard-per-sede-list{display:flex;flex-direction:column;gap:.85rem;margin:0;padding:.15rem 0 .25rem}.dashboard-per-sede-row{display:flex;flex-direction:column;gap:.4rem;min-width:0}.dashboard-per-sede-meta{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.35rem 1rem;min-width:0}.dashboard-per-sede-nome{font-family:var(--font-ui);font-weight:600;font-size:.95rem;color:var(--text);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1 1 8rem}.dashboard-per-sede-vals{display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:.55rem .85rem;font-size:.88rem;color:var(--text-muted);flex:0 1 auto}.dashboard-per-sede-vals strong{font-family:var(--font-display);font-size:1.05rem;font-weight:600;color:var(--text);letter-spacing:-.02em}.dashboard-per-sede-pct{font-variant-numeric:tabular-nums;font-weight:600;color:var(--accent);min-width:3.25rem;text-align:right}.dashboard-per-sede-track{height:.55rem;border-radius:999px;background:#0d73771a;overflow:hidden}.dashboard-per-sede-bar{height:100%;border-radius:inherit;background:linear-gradient(90deg,#0d7377,#14a3a8);min-width:0;transition:width .35s ease}[data-theme=scuro] .dashboard-per-sede-track{background:#ffffff14}[data-theme=scuro] .dashboard-per-sede-bar{background:linear-gradient(90deg,#14a3a8,#2dd4bf)}.dashboard-row-kpi-periodo{grid-column:1 / -1;min-height:0!important}.dashboard-kpi-periodo-grid{display:grid;grid-template-columns:1fr;gap:.75rem}@media (min-width: 520px){.dashboard-kpi-periodo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 960px){.dashboard-kpi-periodo-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.dashboard-kpi-periodo{display:flex;flex-direction:column;gap:.25rem;padding:.75rem;border-radius:var(--radius);background:#00000008;border:1px solid rgba(0,0,0,.06);min-width:0}.dashboard-kpi-periodo-label{font-size:.78rem;font-weight:500;color:var(--text-muted)}.dashboard-kpi-periodo-value{font-size:clamp(1.05rem,2.5vw,1.35rem);font-weight:700;color:var(--accent, #0D7377);font-variant-numeric:tabular-nums;line-height:1.25;min-height:1.25em}.dashboard-variazione{display:inline-flex;align-self:flex-start;font-size:.72rem;font-weight:600;padding:.1rem .4rem;border-radius:999px}.dashboard-variazione--up{background:#dcfce7;color:#166534}.dashboard-variazione--down{background:#fee2e2;color:#991b1b}.dashboard-variazione--neutral{background:#d5e3e1;color:#475569}.dashboard-card-oraria,.dashboard-card-andamento{min-height:280px;display:flex;flex-direction:column}.dashboard-oraria-layout,.dashboard-andamento-layout{display:flex;flex-direction:column;gap:.75rem;flex:1;min-height:0}.dashboard-oraria-layout[data-dashboard-vista=grafico] .dashboard-oraria-table-wrap,.dashboard-andamento-layout[data-dashboard-vista=grafico] .dashboard-andamento-table-wrap{display:block}.dashboard-oraria-layout[data-dashboard-vista=tabella] .dashboard-chart-oraria,.dashboard-andamento-layout[data-dashboard-vista=tabella] .dashboard-chart-andamento{display:none}.dashboard-chart-wrap.dashboard-chart-oraria,.dashboard-chart-wrap.dashboard-chart-andamento{position:relative;width:100%;height:240px;min-height:240px;flex:0 0 240px}.dashboard-oraria-table-wrap,.dashboard-andamento-table-wrap,.dashboard-analytics-table-wrap{overflow:auto;max-height:280px}.dashboard-analytics-table,.dashboard-oraria-table,.dashboard-andamento-table{width:100%;border-collapse:collapse;font-size:.85rem}.dashboard-analytics-table th,.dashboard-analytics-table td,.dashboard-oraria-table th,.dashboard-oraria-table td,.dashboard-andamento-table th,.dashboard-andamento-table td{padding:.4rem .5rem;border-bottom:1px solid rgba(0,0,0,.06);text-align:left}.dashboard-analytics-table td:nth-child(n+3),.dashboard-analytics-table th:nth-child(n+3),.dashboard-oraria-table td:nth-child(n+2),.dashboard-oraria-table th:nth-child(n+2),.dashboard-andamento-table td:nth-child(n+2),.dashboard-andamento-table th:nth-child(n+2){text-align:right;font-variant-numeric:tabular-nums}.dashboard-row-analytics,.dashboard-row-canali{grid-column:1 / -1;display:grid;grid-template-columns:1fr;gap:1rem}@media (min-width: 900px){.dashboard-row-analytics,.dashboard-row-canali{grid-template-columns:repeat(2,minmax(0,1fr))}}.dashboard-card-nested{min-height:0!important;box-shadow:none;border:1px solid rgba(0,0,0,.06);background:#00000004}.dashboard-canali-layout{display:grid;grid-template-columns:1fr;gap:.75rem;align-items:center}@media (min-width: 640px){.dashboard-canali-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.dashboard-chart-canali{min-height:180px}.dashboard-canali-kpi{display:flex;flex-direction:column;gap:.65rem;font-size:.9rem}.dashboard-canali-kpi div{display:flex;flex-direction:column;gap:.15rem}.dashboard-canali-kpi strong{font-size:1.05rem;color:var(--accent)}.dashboard-card-oraria,.dashboard-card-andamento{min-height:280px}@media (min-width: 960px){.dashboard-card-prodotti,.dashboard-card-reparti,.dashboard-card-pagamenti{min-height:0}}#dashboardPaginaAnalisi{flex:1;min-height:0;overflow:hidden}#dashboardPaginaAnalisi .dashboard-grid-analisi{flex:1;min-height:0;display:flex;flex-direction:column;gap:.75rem;overflow:hidden;grid-template-columns:none;grid-template-rows:none}#dashboardPaginaAnalisi .dashboard-analisi-alto{flex:0 1 46%;min-height:0;max-height:50%;display:flex;gap:.75rem;overflow:hidden}#dashboardPaginaAnalisi .dashboard-analisi-alto>.dashboard-card-tavoli,#dashboardPaginaAnalisi .dashboard-analisi-alto>.dashboard-card-sale{flex:1.15 1 0;min-width:0}#dashboardPaginaAnalisi .dashboard-analisi-alto>.dashboard-card-canali{flex:.72 1 0;min-width:0;max-width:22rem}#dashboardPaginaAnalisi .dashboard-analisi-basso{flex:1 1 0;min-height:0;display:flex;gap:.75rem;overflow:hidden}#dashboardPaginaAnalisi .dashboard-analisi-basso>.dashboard-card-documenti{flex:0 0 32%;min-width:0;max-width:24rem}#dashboardPaginaAnalisi .dashboard-analisi-basso>.dashboard-card-oraria{flex:1 1 0;min-width:0}#dashboardPaginaAnalisi .dashboard-analisi-alto>.dashboard-card,#dashboardPaginaAnalisi .dashboard-analisi-basso>.dashboard-card{min-height:0;display:flex;flex-direction:column;overflow:hidden}#dashboardPaginaAnalisi .dashboard-canali-layout{flex:1;min-height:0;display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:.65rem;grid-template-columns:none}#dashboardPaginaAnalisi .dashboard-chart-wrap.dashboard-chart-canali{flex:1;min-height:0;width:100%;height:auto;max-height:none}#dashboardPaginaAnalisi .dashboard-canali-kpi{flex-shrink:0;display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:.35rem;font-size:.82rem}#dashboardPaginaAnalisi .dashboard-canali-kpi div{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:baseline;gap:.35rem;white-space:nowrap}#dashboardPaginaAnalisi .dashboard-canali-kpi-label{font-size:.82rem;color:var(--text-muted)}#dashboardPaginaAnalisi .dashboard-canali-kpi strong{font-size:1rem;color:var(--accent);font-variant-numeric:tabular-nums}#dashboardPaginaAnalisi .dashboard-analytics-table-wrap{flex:1;min-height:0;max-height:none;overflow:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}#dashboardPaginaAnalisi .dashboard-analytics-table-wrap::-webkit-scrollbar{display:none;width:0;height:0}#dashboardPaginaAnalisi .dashboard-card-oraria{flex:1 1 0;min-height:0;display:flex;flex-direction:column;overflow:hidden}#dashboardPaginaAnalisi .dashboard-oraria-layout{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}#dashboardPaginaAnalisi .dashboard-chart-wrap.dashboard-chart-oraria{flex:1;min-height:0;width:100%;height:auto;max-height:none}#dashboardPaginaAnalisi .dashboard-oraria-layout[data-dashboard-vista=grafico] .dashboard-oraria-table-wrap,#dashboardPaginaAnalisi .dashboard-oraria-layout[data-dashboard-vista=tabella] .dashboard-chart-oraria{display:none}#dashboardPaginaAnalisi .dashboard-oraria-table-wrap{flex:1;min-height:0;max-height:none;overflow:auto}#dashboardPaginaAnalisi .dashboard-card-nested{min-height:0!important}@media (max-width: 799px){.dashboard-page.view-dashboard--analisi{overflow:auto;height:auto;max-height:none}.dashboard-wrap.dashboard-wrap--analisi{overflow-y:auto}#dashboardPaginaAnalisi,#dashboardPaginaAnalisi .dashboard-grid-analisi{overflow:visible}#dashboardPaginaAnalisi .dashboard-analisi-alto{flex:0 0 auto;max-height:none;flex-direction:column}#dashboardPaginaAnalisi .dashboard-analisi-alto>.dashboard-card-tavoli,#dashboardPaginaAnalisi .dashboard-analisi-alto>.dashboard-card-sale{flex:0 0 auto;min-height:160px}#dashboardPaginaAnalisi .dashboard-analisi-alto>.dashboard-card-canali{flex:0 0 auto;max-width:none;min-height:220px}#dashboardPaginaAnalisi .dashboard-analisi-basso{flex:0 0 auto;flex-direction:column}#dashboardPaginaAnalisi .dashboard-analisi-basso>.dashboard-card-documenti{flex:0 0 auto;max-width:none;min-height:200px}#dashboardPaginaAnalisi .dashboard-analisi-basso>.dashboard-card-oraria{flex:0 0 auto;min-height:220px}#dashboardPaginaAnalisi .dashboard-canali-kpi{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:center;gap:.5rem 1.25rem;font-size:.9rem}#dashboardPaginaAnalisi .dashboard-card-oraria{flex:0 0 auto;min-height:220px;max-height:none}#dashboardPaginaAnalisi .dashboard-chart-wrap.dashboard-chart-oraria{min-height:180px;flex:0 0 180px}}.archivio-dettaglio-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:1200;display:flex;align-items:center;justify-content:center;padding:1rem}.archivio-dettaglio-modal{width:min(92vw,480px);max-height:min(92vh,900px);background:var(--bg-card, #fff);border-radius:16px;box-shadow:0 24px 48px #0f172a2e,0 0 0 1px #0f172a0f;display:flex;flex-direction:column;overflow:hidden;color:#0f172a}.archivio-dettaglio-modal--wide{width:min(92vw,720px)}.archivio-dettaglio-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:1rem 1.25rem;border-bottom:1px solid rgba(15,23,42,.08);flex-shrink:0}.archivio-dettaglio-header h3{margin:0;font-size:1.1rem;font-weight:600;letter-spacing:-.01em}.archivio-dettaglio-close{width:36px;height:36px;border:none;border-radius:8px;background:transparent;font-size:1.4rem;line-height:1;cursor:pointer;color:#64748b;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.archivio-dettaglio-close:hover{background:#0f172a0f;color:#0f172a}.archivio-dettaglio-body{padding:1rem 1.25rem;overflow-y:auto;flex:1;min-height:0}.archivio-dettaglio-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(7rem,1fr));gap:.65rem;margin-bottom:1rem}.archivio-dettaglio-kpi{padding:.65rem .75rem;border-radius:10px;background:#f8fafc;border:1px solid #D5E3E1}.archivio-dettaglio-kpi--accent{background:#0d73770f;border-color:#0d737733}.archivio-dettaglio-kpi-label{display:block;font-size:.72rem;font-weight:500;color:#64748b;text-transform:uppercase;letter-spacing:.04em;margin-bottom:.2rem}.archivio-dettaglio-kpi-value{display:block;font-size:.95rem;font-weight:600;color:#0f172a;word-break:break-word}.archivio-dettaglio-kpi--accent .archivio-dettaglio-kpi-value{font-size:1.15rem;color:var(--accent, #0D7377)}.archivio-dettaglio-meta{display:grid;grid-template-columns:minmax(6.5rem,auto) 1fr;gap:.45rem 1rem;margin:0 0 1rem;font-size:.9rem}.archivio-dettaglio-meta dt{margin:0;color:#64748b;font-weight:500}.archivio-dettaglio-meta dd{margin:0;color:#0f172a;word-break:break-word}.archivio-dettaglio-section-title{margin:0 0 .65rem;font-size:.88rem;font-weight:600;color:#475569;text-transform:uppercase;letter-spacing:.04em}.archivio-dettaglio-table-wrap{border:1px solid #D5E3E1;border-radius:10px;overflow:auto;background:#fff}.archivio-dettaglio-righe{width:100%;border-collapse:collapse;font-size:.88rem}.archivio-dettaglio-righe th,.archivio-dettaglio-righe td{padding:.55rem .75rem;text-align:left;border-bottom:1px solid #F4F8F7}.archivio-dettaglio-righe th{background:#f8fafc;color:#475569;font-weight:600;font-size:.8rem;white-space:nowrap}.archivio-dettaglio-righe tbody tr:last-child td{border-bottom:none}.archivio-dettaglio-righe td:nth-child(2),.archivio-dettaglio-righe td:nth-child(3),.archivio-dettaglio-righe td:nth-child(4),.archivio-dettaglio-righe th:nth-child(2),.archivio-dettaglio-righe th:nth-child(3),.archivio-dettaglio-righe th:nth-child(4){text-align:right;font-variant-numeric:tabular-nums}.archivio-dettaglio-vuoto{padding:1rem;text-align:center;color:#64748b;font-style:italic}.archivio-dettaglio-actions{display:flex;justify-content:flex-end;gap:.5rem;padding:.85rem 1.25rem;border-top:1px solid rgba(15,23,42,.08);background:#f8fafc;flex-shrink:0}.archivio-dettaglio-actions .btn{min-width:5.5rem;padding:.55rem 1.1rem;border-radius:10px}@media (max-width: 560px){.archivio-dettaglio-meta{grid-template-columns:1fr;gap:.15rem}.archivio-dettaglio-meta dt{margin-top:.35rem}.archivio-dettaglio-summary{grid-template-columns:1fr 1fr}}.catalogo-reparto-edit-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:1200}.catalogo-reparto-edit-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:min(92vw,720px);max-height:min(92vh,900px);overflow-y:auto;background:var(--bg-card, #fff);border-radius:16px;box-shadow:0 16px 48px #0003;z-index:1201;padding:0 0 1rem}.catalogo-reparto-edit-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid rgba(0,0,0,.08);position:sticky;top:0;background:inherit;z-index:1}.catalogo-reparto-edit-header h3{margin:0;font-size:1.15rem}.catalogo-reparto-edit-close{border:none;background:transparent;font-size:1.5rem;line-height:1;cursor:pointer;padding:.15rem .4rem;border-radius:6px;color:inherit}.catalogo-reparto-edit-close:hover{background:#0000000f}.catalogo-reparto-edit-form{padding:1rem 1.25rem 0;display:flex;flex-direction:column;gap:.85rem}.catalogo-reparto-edit-row{display:flex;flex-wrap:wrap;gap:.75rem}.catalogo-reparto-edit-row-2 .catalogo-reparto-edit-field{flex:1 1 0;min-width:0}.catalogo-reparto-edit-field-grow{flex-grow:1}.catalogo-reparto-edit-field-indice{flex:0 0 5rem}.catalogo-reparto-edit-field-indice input[type=number]{width:100%}.catalogo-reparto-edit-emoji-row{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;position:relative}.catalogo-reparto-edit-emoji-input{flex:0 0 4.5rem;max-width:5rem}.catalogo-reparto-edit-emoji-sfoglia{flex:0 0 auto;white-space:nowrap}.catalogo-reparto-edit-emoji-popover{position:absolute;top:calc(100% + .35rem);left:0;right:0;z-index:20;background:var(--bg-card, #fff);border:1px solid rgba(0,0,0,.12);border-radius:10px;box-shadow:0 8px 24px #00000026;max-height:16rem;overflow-y:auto;padding:.5rem}.catalogo-reparto-edit-emoji-popover.nascosto{display:none}.catalogo-reparto-edit-emoji-categoria-titolo{font-size:.78rem;font-weight:600;opacity:.75;margin:.35rem 0 .25rem}.catalogo-reparto-edit-emoji-categoria-grid{display:flex;flex-wrap:wrap;gap:.25rem}.catalogo-reparto-edit-emoji-btn-popover{border:1px solid rgba(0,0,0,.08);background:#00000008;border-radius:6px;padding:.25rem .4rem;cursor:pointer;font-size:1.1rem;line-height:1.2}.catalogo-reparto-edit-emoji-btn-popover:hover{background:#00000014}.catalogo-reparto-edit-form label{display:block;font-size:.88rem;font-weight:500;margin-bottom:.25rem}.catalogo-reparto-edit-form input[type=text],.catalogo-reparto-edit-form input[type=number]{width:100%;padding:.5rem .65rem;border:1px solid rgba(0,0,0,.15);border-radius:8px;font:inherit}.catalogo-reparto-edit-form input:focus{outline:2px solid rgba(13,115,119,.35);border-color:#0d7377}.catalogo-reparto-edit-select:focus,.catalogo-reparto-edit-select:focus-visible,.catalogo-reparto-edit-listino-select:focus,.catalogo-reparto-edit-listino-select:focus-visible{outline:none;box-shadow:none;border-color:#00000026}.catalogo-reparto-edit-select,.catalogo-reparto-edit-listino-select{width:100%;padding:.45rem .55rem;border:1px solid rgba(0,0,0,.15);border-radius:8px;font:inherit;background:#fff}.catalogo-reparto-edit-field-spacer{visibility:hidden;pointer-events:none}.catalogo-reparto-edit-label-block{display:block;font-size:.88rem;font-weight:500;margin-bottom:.35rem}.catalogo-reparto-edit-listini{display:flex;flex-direction:column;gap:.35rem}.catalogo-reparto-edit-listino-row{display:flex;align-items:center;gap:.5rem}.catalogo-reparto-edit-listino-label{flex:0 0 6.5rem;font-size:.85rem}.catalogo-reparto-edit-listino-select{flex:1}.catalogo-reparto-edit-toggles{display:grid;grid-template-columns:repeat(auto-fill,minmax(10rem,1fr));gap:.35rem .75rem}.impostazioni-checkbox-label{display:flex;align-items:center;gap:.35rem;font-size:.9rem;font-weight:400;margin:0;cursor:pointer}.catalogo-reparto-edit-actions{display:flex;align-items:center;gap:.5rem;margin-top:.5rem;padding-top:.75rem;border-top:1px solid rgba(0,0,0,.08)}.catalogo-reparto-edit-actions .catalogo-reparto-edit-elimina{margin-right:auto;padding:.45rem .65rem;color:#c0392b;background:transparent;border:1px solid rgba(192,57,43,.35)}.catalogo-reparto-edit-actions .catalogo-reparto-edit-elimina:hover{background:#c0392b14}.catalogo-reparto-edit-actions .catalogo-reparto-edit-elimina-spacer{margin-right:auto;width:2.5rem}.colore-pastello-dropdown-wrap{margin-bottom:0}.colore-pastello-dropdown{position:relative;display:inline-block;max-width:100%;width:100%}.colore-pastello-trigger{width:100%;padding:.5rem .75rem;border:1px solid rgba(0,0,0,.15);border-radius:8px;font-size:.95rem;cursor:pointer;text-align:left;font-family:inherit}.colore-pastello-list{position:absolute;top:100%;left:0;right:0;z-index:30;margin-top:.25rem;padding:.35rem;background:var(--bg-card, #fff);border:1px solid rgba(0,0,0,.15);border-radius:8px;box-shadow:0 4px 12px #00000026;max-height:14rem;overflow-y:auto;display:flex;flex-direction:column;gap:.2rem}.colore-pastello-list.nascosto{display:none}.colore-pastello-option{padding:.4rem .6rem;border:none;border-radius:6px;font-size:.9rem;cursor:pointer;text-align:left;font-family:inherit}.colore-pastello-option:hover{filter:brightness(.92)}.nascosto{display:none!important}.catalogo-edit-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:1200}.catalogo-edit-modal{--text: #0f172a;--text-muted: #64748b;--border: rgba(15, 23, 42, .08);--border-medium: rgba(15, 23, 42, .15);--bg-muted: #f8fafc;--radius: 10px;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:min(92vw,720px);max-height:min(92vh,900px);background:var(--bg-card, #fff);border-radius:16px;box-shadow:0 24px 48px #0f172a2e,0 0 0 1px #0f172a0f;z-index:1201;display:flex;flex-direction:column;overflow:hidden;color:var(--text);font-family:DM Sans,system-ui,sans-serif}.catalogo-edit-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;border-bottom:1px solid var(--border);flex-shrink:0;background:#fff}.catalogo-edit-header h3{margin:0;font-size:1.1rem;font-weight:600;letter-spacing:-.01em}.catalogo-edit-close{width:36px;height:36px;border:none;border-radius:8px;background:transparent;font-size:1.4rem;line-height:1;cursor:pointer;color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center;transition:background .15s ease,color .15s ease}.catalogo-edit-close:hover{background:#0f172a0f;color:var(--text)}.catalogo-edit-tabs{display:flex;gap:0;padding:0 1.5rem;border-bottom:1px solid var(--border);background:var(--bg-muted);flex-shrink:0;overflow:hidden}.catalogo-edit-tab{padding:.7rem 1rem;border:none;border-bottom:2px solid transparent;background:transparent;font-size:.9rem;font-weight:500;color:var(--text-muted);cursor:pointer;font-family:inherit;margin-bottom:-1px;white-space:nowrap;transition:color .15s ease,border-color .15s ease}.catalogo-edit-tab:hover{color:var(--text)}.catalogo-edit-tab.active{color:var(--accent, #0D7377);border-bottom-color:var(--accent, #0D7377);background:#ffffffa6}.catalogo-edit-tab.nascosto{display:none}.catalogo-edit-form{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden;background:#fff}.catalogo-edit-error{margin:0;padding:.65rem 1.5rem;background:#fef2f2;border-bottom:1px solid #fecaca;color:#b91c1c;font-size:.88rem;flex-shrink:0}.catalogo-edit-form-body{padding:1.25rem 1.5rem;overflow-y:auto;flex:1;min-height:0}.catalogo-edit-panel.nascosto{display:none}.prodotto-form-section{margin-bottom:1.5rem;padding-bottom:1.25rem;border-bottom:1px solid var(--border)}.prodotto-form-section:last-of-type{border-bottom:none;padding-bottom:0;margin-bottom:0}.prodotto-form-section-title{margin:0 0 .85rem;font-size:.95rem;font-weight:600;color:var(--text);letter-spacing:.02em}.prodotto-form-row{display:grid;gap:0 1rem;margin-bottom:.85rem}.prodotto-form-row:last-child{margin-bottom:0}.prodotto-form-row-2{grid-template-columns:1fr 2fr}.prodotto-form-row-colore-indice{grid-template-columns:minmax(0,2fr) minmax(6.5rem,1fr)}.prodotto-form-row-3{grid-template-columns:repeat(3,1fr)}.prodotto-form-field{min-width:0}.prodotto-form-field-grow{grid-column:span 1}.prodotto-form-field label,.prodotto-form-label-block{display:block;font-size:.88rem;font-weight:500;color:var(--text);margin-bottom:.35rem}.catalogo-edit-form input[type=text],.catalogo-edit-form input[type=number],.catalogo-edit-form select,.catalogo-edit-form textarea,.prodotto-form-field input[type=text],.prodotto-form-field input[type=number],.prodotto-form-field select,.prodotto-form-field textarea{width:100%;padding:.6rem .75rem;border:1px solid var(--border-medium);border-radius:var(--radius);font:inherit;font-size:.95rem;color:var(--text);background:#fff;box-sizing:border-box;transition:border-color .15s ease,box-shadow .15s ease}.catalogo-edit-form input:focus,.catalogo-edit-form textarea:focus{outline:none;border-color:var(--accent, #0D7377);box-shadow:0 0 0 3px #0d737724}.catalogo-edit-form select:focus,.catalogo-edit-form select:focus-visible{outline:none;box-shadow:none;border-color:#cbd5e1}.catalogo-edit-form input[readonly]{background:var(--bg-muted);color:var(--text-muted);cursor:default}.catalogo-edit-form textarea{resize:vertical;min-height:5.5rem}.prodotto-form-colore-preferito-wrap{display:flex;align-items:flex-end;gap:.5rem}.prodotto-form-colore-preferito-wrap .colore-pastello-dropdown-wrap{flex:1;margin:0}.btn-icon-preferito{flex:0 0 auto;width:44px;height:44px;border:1px solid var(--border-medium);border-radius:var(--radius);background:#fff;cursor:pointer;color:#cbd5e1;display:inline-flex;align-items:center;justify-content:center;transition:color .15s ease,border-color .15s ease,background .15s ease}.btn-icon-preferito:hover{border-color:#f5a62373;color:#f5a623}.btn-icon-preferito.active{color:#f5a623;border-color:#f5a62380;background:#f5a62314}.prodotto-barcodes-chips-shell{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .45rem;padding:.1rem 0 .35rem;min-height:2.1rem;width:100%;border-bottom:2px solid var(--border-medium);transition:border-color .15s ease}.prodotto-barcodes-chips-shell:focus-within{border-bottom-color:var(--accent, #0D7377)}.prodotto-barcode-chip{display:inline-flex;align-items:center;gap:.3rem;max-width:100%;padding:.2rem .25rem .2rem .55rem;border-radius:999px;background:var(--bg-muted);color:var(--text);font-size:.8125rem;line-height:1.25}.prodotto-barcode-chip-text{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;word-break:break-all;max-width:min(100%,14rem)}.prodotto-barcode-chip-remove{flex-shrink:0;width:1.125rem;height:1.125rem;border:none;border-radius:50%;background:#0f172a6b;color:#fff;font-size:.7rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}.prodotto-barcode-chip-remove:hover{background:#c0392be6}.prodotto-barcodes-chip-input{flex:1 1 7rem;min-width:5rem;border:none!important;outline:none!important;background:transparent!important;box-shadow:none!important;padding:.2rem .15rem!important;font-size:.9rem}.prodotto-barcodes-chip-input::placeholder{color:var(--text-muted)}.impostazioni-checkbox-label{display:inline-flex;align-items:center;gap:.4rem;font-size:.88rem;font-weight:400;margin:0;cursor:pointer;color:var(--text);-webkit-user-select:none;user-select:none}.impostazioni-checkbox-label input[type=checkbox]{width:1rem;height:1rem;margin:0;accent-color:var(--accent, #0D7377);cursor:pointer}.prodotto-form-row-toggles{display:flex;flex-wrap:wrap;gap:.45rem 1rem;margin-bottom:.85rem;align-items:center}.prodotto-form-row-catalogo-checkboxes{gap:.4rem .85rem}.prodotto-form-row-catalogo-checkboxes .impostazioni-checkbox-label{white-space:nowrap}.prodotto-form-allergeni-group{margin:1rem 0 0;padding:1rem 1.25rem;border:1px solid var(--border-medium);border-radius:var(--radius);background:var(--bg-muted)}.prodotto-form-allergeni-group legend{padding:0 .5rem;font-size:.95rem;font-weight:600;color:var(--text)}.prodotto-form-allergeni-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(11.5rem,1fr));gap:.45rem .85rem;margin-top:.65rem}.prodotto-form-allergene-item{display:flex;align-items:center;gap:.45rem;margin:0;font-size:.85rem;font-weight:400;cursor:pointer;color:var(--text)}.prodotto-form-allergene-item input{flex-shrink:0;accent-color:var(--accent, #0D7377)}.catalogo-edit-prezzi-grid{display:grid;grid-template-columns:1fr 1fr;gap:.65rem 1.25rem;margin-top:0;padding:.85rem 1rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-muted)}.prodotto-listino-row{display:flex;align-items:center;gap:.5rem;flex-wrap:nowrap}.prodotto-listino-row-label{flex:0 0 5.5rem;margin:0;font-size:.82rem;font-weight:600;color:var(--text-muted)}.prodotto-listino-row-prezzo{flex:0 0 4.75rem;min-width:0;text-align:right;font-variant-numeric:tabular-nums;padding:.45rem .55rem!important}.prodotto-listino-row-iva{flex:1;min-width:0;padding:.45rem .55rem!important;font-size:.88rem!important}.varianti-tipo-radio{display:flex;flex-wrap:wrap;gap:.75rem 1.25rem;padding:.65rem .85rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-muted)}.varianti-tipo-radio label{display:inline-flex;align-items:center;gap:.4rem;font-weight:400;margin:0;font-size:.9rem;cursor:pointer}.varianti-tipo-radio input{accent-color:var(--accent, #0D7377)}.catalogo-varianti-opzioni,.catalogo-varianti-testo{margin-top:.85rem}.catalogo-varianti-opzioni label,.catalogo-varianti-testo label{display:block;margin-bottom:.35rem;font-size:.88rem;font-weight:500}.catalogo-prodotto-immagini-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.catalogo-prodotto-immagini-gallery{display:flex;flex-wrap:wrap;gap:.75rem;min-height:4rem}.catalogo-prodotto-immagini-vuoto{margin:0;padding:1.25rem;width:100%;text-align:center;color:var(--text-muted);font-size:.9rem;border:1px dashed var(--border-medium);border-radius:var(--radius);background:var(--bg-muted)}.catalogo-prodotto-immagine-item{position:relative;width:7.5rem;min-height:6.5rem;border-radius:var(--radius);overflow:hidden;border:2px solid var(--border-medium);background:var(--bg-muted);display:flex;flex-direction:column;transition:border-color .15s ease,box-shadow .15s ease}.catalogo-prodotto-immagine-item.is-principale{border-color:var(--accent, #0D7377);box-shadow:0 0 0 3px #0d737724}.catalogo-prodotto-immagine-thumb{height:4.5rem;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#d5e3e1,#f4f8f7);color:var(--text-muted);font-size:1.75rem}.catalogo-prodotto-immagine-meta{padding:.35rem .45rem;font-size:.68rem;line-height:1.25;color:var(--text-muted);word-break:break-all;flex:1}.catalogo-prodotto-immagine-actions{display:flex;gap:.25rem;padding:0 .35rem .35rem}.catalogo-prodotto-immagine-actions button{flex:1;border:none;border-radius:6px;padding:.2rem .25rem;font-size:.68rem;cursor:pointer;background:#0f172a0f;color:var(--text)}.catalogo-prodotto-immagine-actions button:hover{background:#0f172a1a}.catalogo-prodotto-immagine-actions .btn-rimuovi:hover{background:#c0392b1f;color:#c0392b}.catalogo-prodotto-immagine-badge{position:absolute;top:.35rem;left:.35rem;padding:.1rem .35rem;border-radius:999px;background:var(--accent, #0D7377);color:#fff;font-size:.62rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.prodotto-form-magazzino-intro{font-size:.88rem;line-height:1.5;color:var(--text-muted);margin:0 0 1rem;padding:.75rem .85rem;border-radius:var(--radius);background:var(--bg-muted);border-left:3px solid var(--accent, #0D7377)}.prodotto-form-magazzino-intro strong{color:var(--text);font-weight:600}.catalogo-prodotto-magazzino-campi.nascosto{display:none}.catalogo-edit-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:0;padding:.85rem 1.5rem 1.1rem;border-top:1px solid var(--border);align-items:center;flex-shrink:0;background:var(--bg-muted)}.catalogo-edit-actions .catalogo-edit-elimina{margin-right:auto;display:inline-flex;align-items:center;gap:.4rem;padding:.5rem .85rem;border-radius:var(--radius);color:#c0392b;background:#fff;border:1px solid rgba(192,57,43,.35);font:inherit;font-size:.9rem;cursor:pointer;transition:background .15s ease}.catalogo-edit-actions .catalogo-edit-elimina:hover{background:#c0392b0f}.catalogo-edit-actions .catalogo-edit-elimina-spacer{margin-right:auto;width:2.5rem}.catalogo-edit-actions .btn.secondary,.catalogo-edit-actions .btn.primary{flex:0 0 auto;padding:.55rem 1.25rem;border-radius:var(--radius);font-size:.9rem;font-weight:500;border:none;cursor:pointer}.catalogo-edit-actions .btn.secondary{background:#fff;color:var(--text);border:1px solid var(--border-medium)}.catalogo-edit-actions .btn.secondary:hover{background:#f4f8f7}.catalogo-edit-actions .btn.primary{background:var(--accent, #0D7377);color:#fff;min-width:5.5rem}.catalogo-edit-actions .btn.primary:hover:not(:disabled){filter:brightness(1.05)}.catalogo-edit-actions .btn.primary:disabled{opacity:.65;cursor:not-allowed}@media (max-width: 560px){.catalogo-edit-header,.catalogo-edit-tabs,.catalogo-edit-form-body,.catalogo-edit-actions{padding-left:1rem;padding-right:1rem}.prodotto-form-row-2,.prodotto-form-row-3,.prodotto-form-row-colore-indice,.catalogo-edit-prezzi-grid{grid-template-columns:1fr}.prodotto-listino-row{flex-wrap:wrap}.prodotto-listino-row-label{flex:0 0 100%}}.view-stats{--stats-accent: var(--accent, #0D7377);--stats-accent-soft: rgba(13, 115, 119, .1);--stats-border: rgba(0, 0, 0, .06);--stats-surface: rgba(0, 0, 0, .03);min-width:0}[data-theme=scuro] .view-stats{--stats-accent-soft: rgba(13, 115, 119, .22);--stats-border: rgba(255, 255, 255, .1);--stats-surface: rgba(255, 255, 255, .04)}.view-stats .page-header{align-items:flex-start;gap:.75rem;margin-bottom:1rem}.stats-page-header-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;flex-shrink:0}.stats-export-btns{display:inline-flex;align-items:center;gap:.25rem}.stats-export-btns .btn-icon{color:var(--ink, #0B1F1E)}.stats-export-btns .btn-icon:disabled{opacity:.4;cursor:not-allowed}.stats-export-btns .btn-icon svg{width:1.25rem;height:1.25rem}.view-stats .page-header h1{margin:0;font-family:var(--font-display, "Sora", "DM Sans", system-ui, sans-serif);font-size:clamp(1.25rem,2.5vw,1.5rem);font-weight:600;color:var(--ink, #0B1F1E);letter-spacing:-.02em}.stats-page-subtitle{margin:.3rem 0 0;font-size:.9rem;color:var(--muted, #5B6F6D);line-height:1.4;max-width:42rem}.stats-toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.75rem 1rem;margin-bottom:1rem;padding:.85rem 1rem;background:var(--bg-card, #fff);border:1px solid var(--stats-border);border-radius:var(--radius, 10px);box-shadow:var(--shadow, 0 2px 8px rgba(0, 0, 0, .06))}.stats-toolbar label{display:grid;gap:.3rem;font-size:.78rem;font-weight:600;color:var(--text-muted, #64748b);min-width:0}.stats-toolbar select,.stats-toolbar input[type=date],.stats-toolbar input[type=search],.stats-toolbar input[type=text]{width:auto;min-width:8.5rem;max-width:100%;padding:.45rem .6rem;border:1px solid #cbd5e1;border-radius:8px;font-size:.9rem;background:#fff;color:inherit;font-family:inherit}.stats-toolbar input[type=search]{min-width:12rem}.stats-toolbar input:focus{outline:none;border-color:var(--stats-accent);box-shadow:0 0 0 3px #0d737724}.stats-toolbar select:focus,.stats-toolbar select:focus-visible{outline:none;box-shadow:none;border-color:#cbd5e1}[data-theme=scuro] .stats-toolbar select:focus,[data-theme=scuro] .stats-toolbar select:focus-visible{border-color:#ffffff24}[data-theme=scuro] .stats-toolbar select,[data-theme=scuro] .stats-toolbar input{background:#ffffff0f;border-color:#ffffff24;color:inherit}.stats-kpi-grid{display:grid;grid-template-columns:1fr;gap:.75rem;margin-bottom:1rem}@media (min-width: 520px){.stats-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 960px){.stats-kpi-grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}.stats-kpi-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}}.stats-kpi{display:flex;flex-direction:column;gap:.25rem;padding:.85rem 1rem;border-radius:var(--radius, 10px);background:var(--bg-card, #fff);border:1px solid var(--stats-border);box-shadow:var(--shadow, 0 2px 8px rgba(0, 0, 0, .06));min-width:0;position:relative}.stats-kpi--has-info{padding-right:2rem}.stats-kpi-info{position:absolute;top:.45rem;right:.45rem;z-index:2}.stats-kpi-info-btn{display:inline-flex;align-items:center;justify-content:center;width:1.35rem;height:1.35rem;padding:0;border:none;border-radius:999px;background:transparent;color:var(--text-muted, #64748b);cursor:pointer;transition:background .12s ease,color .12s ease}.stats-kpi-info-btn:hover,.stats-kpi-info-btn:focus-visible{background:var(--stats-surface, #f1f5f9);color:var(--stats-accent, #0f766e);outline:none}.stats-kpi-info-btn[aria-expanded=true]{background:var(--stats-accent-soft, #ccfbf1);color:var(--stats-accent, #0f766e)}.stats-kpi-info-popover{position:absolute;top:calc(100% + .35rem);right:0;width:min(18.5rem,calc(100vw - 2rem));padding:.75rem .85rem;border-radius:8px;border:1px solid var(--stats-border);background:var(--bg-card, #fff);box-shadow:0 8px 24px #0f172a1f;color:var(--text, #0f172a);font-size:.78rem;line-height:1.45;text-align:left;z-index:20}.stats-kpi-info-lead{margin:0 0 .5rem;color:var(--text-muted, #64748b)}.stats-kpi-info-list{margin:0;padding-left:1.1rem;display:flex;flex-direction:column;gap:.35rem}.stats-kpi-info-list strong{color:var(--stats-accent, #0f766e)}[data-theme=scuro] .stats-kpi-info-btn:hover,[data-theme=scuro] .stats-kpi-info-btn:focus-visible{background:#ffffff14}[data-theme=scuro] .stats-kpi-info-btn[aria-expanded=true]{background:#2dd4bf26}[data-theme=scuro] .stats-kpi-info-popover{box-shadow:0 8px 24px #00000073}.stats-kpi-label{font-size:.78rem;font-weight:500;color:var(--text-muted, #64748b)}.stats-kpi-value{font-size:clamp(1.1rem,2.5vw,1.4rem);font-weight:700;color:var(--stats-accent);font-variant-numeric:tabular-nums;line-height:1.25;letter-spacing:-.02em}.stats-kpi-hint{display:inline-flex;align-self:flex-start;font-size:.72rem;font-weight:600;padding:.1rem .45rem;border-radius:999px;margin-top:.15rem}.stats-kpi-hint--up{background:#dcfce7;color:#166534}.stats-kpi-hint--down{background:#fee2e2;color:#991b1b}.stats-kpi-hint--neutral{background:#d5e3e1;color:#475569}[data-theme=scuro] .stats-kpi-hint--up{background:#16653459;color:#86efac}[data-theme=scuro] .stats-kpi-hint--down{background:#991b1b59;color:#fca5a5}[data-theme=scuro] .stats-kpi-hint--neutral{background:#ffffff1a;color:#94a3b8}.stats-card{background:var(--bg-card, #fff);border-radius:var(--radius, 10px);border:1px solid var(--stats-border);box-shadow:var(--shadow, 0 2px 8px rgba(0, 0, 0, .06));display:flex;flex-direction:column;min-width:0;overflow:hidden}.stats-card--pad{padding:0}.stats-card--pad>.stats-card-heading{margin:0;padding:.85rem 1rem}.stats-card--pad>.stats-card-body{padding:1rem}.stats-card--pad.stats-card--flush-table>.stats-card-body,.stats-card--flush-table>.stats-card-body{padding:0}.stats-card-heading{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;flex-shrink:0;margin:0;padding:.85rem 1rem;border-bottom:1px solid var(--stats-border);font-family:var(--font-ui, "DM Sans", system-ui, sans-serif);font-size:.95rem;font-weight:600;color:var(--text, #0f172a);line-height:1.3}.stats-card-heading h2,.stats-card-heading h3{margin:0;font-size:inherit;font-weight:inherit;color:inherit}.stats-card-heading-meta{font-size:.8rem;font-weight:400;color:var(--text-muted, #64748b)}.stats-card-body{flex:1;min-height:0;padding:0}.stats-chart{position:relative;width:100%}.stats-empty{margin:0;padding:1.25rem .25rem;color:var(--text-muted, #64748b);font-size:.92rem;text-align:center}.stats-loading{margin:0 0 1rem;color:var(--text-muted, #64748b);font-size:.9rem}.stats-quick-links{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.stats-quick-link{display:inline-flex;align-items:center;gap:.35rem;padding:.45rem .85rem;border-radius:8px;border:1px solid var(--stats-border);background:var(--bg-card, #fff);color:var(--stats-accent);font-size:.85rem;font-weight:600;text-decoration:none;transition:background .15s ease,border-color .15s ease}.stats-quick-link:hover{background:var(--stats-accent-soft);border-color:#0d737759}.stats-stack{display:flex;flex-direction:column;gap:1rem}.stats-stack>.stats-kpi-grid,.stats-stack>.stats-card,.stats-stack>.stats-grid-2,.stats-stack>.stats-mb,.stats-stack>.stats-quick-links,.stats-stack>.alert{margin-bottom:0}.stats-card .stats-kpi-grid{margin-bottom:0}.stats-grid-2{display:grid;grid-template-columns:1fr;gap:1rem;margin-bottom:1rem;align-items:stretch}@media (min-width: 900px){.stats-grid-2{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)}.stats-grid-2--equal{grid-template-columns:1fr 1fr;align-items:stretch}.stats-grid-2--split{grid-template-columns:minmax(260px,1fr) minmax(300px,1.35fr);align-items:start}.stats-grid-2--reparti{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch}}.stats-grid-2--equal>.stats-card,.stats-grid-2--reparti>.stats-card{height:100%}.stats-card-body-pad{padding:.85rem 1rem}.stats-detail-header{display:flex;flex-wrap:wrap;gap:.75rem;align-items:flex-end;margin-bottom:.85rem}.stats-detail-header label{display:grid;gap:.3rem;font-size:.78rem;font-weight:600;color:var(--text-muted, #64748b)}.stats-detail-header select{padding:.45rem .6rem;border:1px solid #cbd5e1;border-radius:8px;font-size:.9rem;background:#fff;color:inherit;font-family:inherit}.stats-detail-header select:focus,.stats-detail-header select:focus-visible{outline:none;box-shadow:none;border-color:#cbd5e1}[data-theme=scuro] .stats-detail-header select:focus,[data-theme=scuro] .stats-detail-header select:focus-visible{border-color:#ffffff24}[data-theme=scuro] .stats-detail-header select{background:#ffffff0f;border-color:#ffffff24}.stats-detail-title{flex:1;min-width:160px}.stats-detail-title h2{margin:0;font-size:1.15rem;font-weight:700;color:var(--text, #0f172a);letter-spacing:-.02em}.stats-detail-title .muted,.stats-detail-meta{margin-top:.2rem;font-size:.85rem;color:var(--text-muted, #64748b)}.stats-subcharts{display:grid;grid-template-columns:1fr;gap:1rem;margin-top:1.15rem}@media (min-width: 640px){.stats-subcharts{grid-template-columns:1fr 1fr}}.stats-subchart-title{font-size:.88rem;font-weight:600;margin:0 0 .5rem;color:var(--text, #0f172a)}.stats-table-wrap{margin:0;overflow:auto;max-width:100%}.stats-table-wrap--scroll{max-height:min(70vh,640px)}.stats-table{width:100%;border-collapse:collapse;font-size:.85rem;font-family:var(--font-ui, "DM Sans", system-ui, sans-serif)}.stats-table th,.stats-table td{padding:.5rem .75rem;text-align:left;border-bottom:1px solid var(--stats-border);vertical-align:middle}.stats-table th{font-weight:600;color:var(--text, #0f172a);background:var(--stats-surface);position:sticky;top:0;z-index:1;white-space:nowrap}.stats-table tbody tr:last-child td{border-bottom:none}.stats-table td:nth-child(n+3),.stats-table th:nth-child(n+3){font-variant-numeric:tabular-nums}.stats-table .num,.stats-table th.num,.stats-table td.num{text-align:right;font-variant-numeric:tabular-nums}.stats-table a{color:var(--stats-accent);font-weight:500;text-decoration:none}.stats-table a:hover{text-decoration:underline}.stats-table tbody tr.stats-row--clickable{cursor:pointer;transition:background .12s ease}.stats-table tbody tr.stats-row--clickable:hover{background:var(--stats-surface)}.stats-table tbody tr.stats-row--active,.stats-table tbody tr.stats-row--active:hover{background:var(--stats-accent-soft)}.stats-abc-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.15rem .5rem;border-radius:999px;font-size:.75rem;font-weight:500;background:var(--stats-surface);color:var(--text-muted, #64748b)}.stats-heatmap-wrap{overflow-x:auto;margin-top:.25rem;border-radius:8px;border:1px solid var(--stats-border)}.stats-heatmap{border-collapse:separate;border-spacing:2px;font-size:.7rem;min-width:720px;width:100%;padding:.5rem}.stats-heatmap th{padding:.2rem;font-weight:500;color:var(--text-muted, #64748b);text-align:center}.stats-heatmap th.stats-heatmap-day{text-align:left;padding:.25rem .5rem;font-weight:600;color:var(--text, #0f172a);white-space:nowrap}.stats-heatmap-cell{width:24px;height:24px;border-radius:3px;border:1px solid transparent}.stats-heatmap-cell--empty{background:var(--stats-surface);border-color:var(--stats-border)}.stats-heatmap-legend{display:flex;align-items:center;gap:.5rem;margin-top:.75rem;font-size:.75rem;color:var(--text-muted, #64748b)}.stats-heatmap-legend-scale{display:flex;height:10px;width:120px;border-radius:4px;overflow:hidden;border:1px solid var(--stats-border)}.stats-heatmap-legend-scale span{flex:1}.stats-mb{margin-bottom:1rem}.legacy-page-content .view-stats .stats-table-wrap,.legacy-page-content .view-stats .stats-heatmap-wrap{background:transparent;border:none;border-radius:0;margin-bottom:0}.legacy-page-content .view-stats .stats-card{margin-bottom:0}.legacy-page-content .view-stats .stats-toolbar{margin-bottom:1rem}@media print{@page{margin:12mm}body *{visibility:hidden!important}.view-stats,.view-stats *{visibility:visible!important}.view-stats{position:absolute!important;left:0!important;top:0!important;width:100%!important;background:#fff!important;color:#000!important}.no-print,.stats-export-btns,.stats-toolbar,.stats-toolbar-wrap,.sync-freshness-pill,.stats-page-header-actions{display:none!important}.stats-card,.stats-kpi,.stats-table-wrap{break-inside:avoid;box-shadow:none!important;border-color:#ccc!important}.stats-chart{max-height:220px!important}a{text-decoration:none!important;color:inherit!important}}/*! tailwindcss v4.3.1 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial}}}@layer theme{:root,:host{--font-sans:"DM Sans", ui-sans-serif, system-ui, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-red-50:oklch(97.1% .013 17.38);--color-red-200:oklch(88.5% .062 18.334);--color-red-600:oklch(57.7% .245 27.325);--color-red-900:oklch(39.6% .141 25.723);--color-amber-50:oklch(98.7% .022 95.277);--color-amber-100:oklch(96.2% .059 95.617);--color-amber-200:oklch(92.4% .12 95.746);--color-amber-950:oklch(27.9% .077 45.635);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-md:28rem;--container-6xl:72rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--text-5xl:3rem;--text-5xl--line-height:1;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--leading-tight:1.25;--leading-relaxed:1.625;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--animate-spin:spin 1s linear infinite;--blur-sm:8px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--font-display:"Sora", "DM Sans", ui-sans-serif, system-ui, sans-serif;--color-brand-50:#eef8f7;--color-brand-100:#d5efed;--color-brand-200:#a8ddd9;--color-brand-300:#6fc4c0;--color-brand-400:#3aa5a3;--color-brand-500:#14919b;--color-brand-600:#0d7377;--color-brand-700:#0a5c5f;--color-brand-800:#084b4e;--color-brand-900:#062a28;--color-ink:#0b1f1e;--color-muted:#5b6f6d;--color-surface:#f4f8f7;--color-panel:#fff;--color-border:#d5e3e1;--radius-card:.75rem}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background-color:var(--color-surface);font-family:var(--font-sans);color:var(--color-ink)}h1,h2,h3,.font-display{font-family:var(--font-display)}input:where(:not([type=checkbox],[type=radio],[type=range],[type=file],[type=hidden],[type=submit],[type=button],[type=reset],[type=image])),select,textarea{border-radius:.625rem}:focus-visible{outline:none}.legacy-page-content :focus-visible:not(select){--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);--tw-ring-color:var(--color-brand-500);--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.legacy-page-content select:focus,.legacy-page-content select:focus-visible{--tw-ring-shadow:0 0 #0000;--tw-ring-offset-shadow:0 0 #0000;box-shadow:none!important;outline:none!important}select option{color:#0b1f1e;background-color:#fff}}@layer components;@layer utilities{.pointer-events-none{pointer-events:none}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.inset-0{top:0;right:0;bottom:0;left:0}.inset-y-0{inset-block:0}.-top-1{top:calc(var(--spacing) * -1)}.top-0{top:0}.top-1\/2{top:50%}.-right-1{right:calc(var(--spacing) * -1)}.right-0{right:0}.right-2{right:calc(var(--spacing) * 2)}.left-0{left:0}.z-10{z-index:10}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.mx-auto{margin-inline:auto}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-auto{margin-top:auto}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.ml-2{margin-left:calc(var(--spacing) * 2)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.table{display:table}.size-3\.5{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-5{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.size-9{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.size-10{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.size-12{width:calc(var(--spacing) * 12);height:calc(var(--spacing) * 12)}.size-14{width:calc(var(--spacing) * 14);height:calc(var(--spacing) * 14)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-11{height:calc(var(--spacing) * 11)}.h-full{height:100%}.h-screen{height:100vh}.max-h-80{max-height:calc(var(--spacing) * 80)}.min-h-\[40vh\]{min-height:40vh}.min-h-\[50vh\]{min-height:50vh}.min-h-screen{min-height:100vh}.w-\[min\(22rem\,calc\(100vw-2rem\)\)\]{width:min(22rem,100vw - 2rem)}.w-\[min\(100\%\,17rem\)\]{width:min(100%,17rem)}.w-full{width:100%}.max-w-6xl{max-width:var(--container-6xl)}.max-w-\[14rem\]{max-width:14rem}.max-w-\[min\(100\%\,11rem\)\]{max-width:min(100%,11rem)}.max-w-\[min\(100\%\,14rem\)\]{max-width:min(100%,14rem)}.max-w-md{max-width:var(--container-md)}.min-w-0{min-width:0}.min-w-5{min-width:calc(var(--spacing) * 5)}.flex-1{flex:1}.shrink-0{flex-shrink:0}.-translate-y-1\/2{--tw-translate-y: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.-rotate-90{rotate:-90deg}.rotate-0{rotate:0deg}.animate-spin{animation:var(--animate-spin)}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-start{justify-content:flex-start}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-10{gap:calc(var(--spacing) * 10)}:where(.space-y-0\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * .5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * .5) * calc(1 - var(--tw-space-y-reverse)))}.justify-self-center{justify-self:center}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-\[10px\]{border-radius:10px}.rounded-\[var\(--radius-card\)\]{border-radius:var(--radius-card)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-\[\#1B7F5A\]\/30{border-color:#1b7f5a4d}.border-\[\#C23B3B\]{border-color:#c23b3b}.border-\[\#C23B3B\]\/30{border-color:#c23b3b4d}.border-\[\#C48A1A\]\/35{border-color:#c48a1a59}.border-amber-200{border-color:var(--color-amber-200)}.border-border{border-color:var(--color-border)}.border-border\/60{border-color:#d5e3e199}@supports (color:color-mix(in lab,red,red)){.border-border\/60{border-color:color-mix(in oklab,var(--color-border) 60%,transparent)}}.border-brand-200{border-color:var(--color-brand-200)}.border-brand-200\/70{border-color:#a8ddd9b3}@supports (color:color-mix(in lab,red,red)){.border-brand-200\/70{border-color:color-mix(in oklab,var(--color-brand-200) 70%,transparent)}}.border-brand-200\/80{border-color:#a8ddd9cc}@supports (color:color-mix(in lab,red,red)){.border-brand-200\/80{border-color:color-mix(in oklab,var(--color-brand-200) 80%,transparent)}}.border-brand-600{border-color:var(--color-brand-600)}.border-current{border-color:currentColor}.border-red-200{border-color:var(--color-red-200)}.border-white\/10{border-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.border-white\/10{border-color:color-mix(in oklab,var(--color-white) 10%,transparent)}}.border-white\/15{border-color:#ffffff26}@supports (color:color-mix(in lab,red,red)){.border-white\/15{border-color:color-mix(in oklab,var(--color-white) 15%,transparent)}}.border-white\/20{border-color:#fff3}@supports (color:color-mix(in lab,red,red)){.border-white\/20{border-color:color-mix(in oklab,var(--color-white) 20%,transparent)}}.border-r-transparent{border-right-color:#0000}.bg-\[\#1B7F5A\]\/10{background-color:#1b7f5a1a}.bg-\[\#C23B3B\]{background-color:#c23b3b}.bg-\[\#C23B3B\]\/8{background-color:#c23b3b14}.bg-\[\#C48A1A\]{background-color:#c48a1a}.bg-\[\#C48A1A\]\/10{background-color:#c48a1a1a}.bg-\[\#C48A1A\]\/12{background-color:#c48a1a1f}.bg-amber-50{background-color:var(--color-amber-50)}.bg-brand-50{background-color:var(--color-brand-50)}.bg-brand-50\/40{background-color:#eef8f766}@supports (color:color-mix(in lab,red,red)){.bg-brand-50\/40{background-color:color-mix(in oklab,var(--color-brand-50) 40%,transparent)}}.bg-brand-50\/70{background-color:#eef8f7b3}@supports (color:color-mix(in lab,red,red)){.bg-brand-50\/70{background-color:color-mix(in oklab,var(--color-brand-50) 70%,transparent)}}.bg-brand-100{background-color:var(--color-brand-100)}.bg-brand-500{background-color:var(--color-brand-500)}.bg-brand-500\/90{background-color:#14919be6}@supports (color:color-mix(in lab,red,red)){.bg-brand-500\/90{background-color:color-mix(in oklab,var(--color-brand-500) 90%,transparent)}}.bg-brand-600{background-color:var(--color-brand-600)}.bg-brand-900{background-color:var(--color-brand-900)}.bg-brand-900\/55{background-color:#062a288c}@supports (color:color-mix(in lab,red,red)){.bg-brand-900\/55{background-color:color-mix(in oklab,var(--color-brand-900) 55%,transparent)}}.bg-panel{background-color:var(--color-panel)}.bg-red-50{background-color:var(--color-red-50)}.bg-red-600{background-color:var(--color-red-600)}.bg-surface{background-color:var(--color-surface)}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.bg-white\/10{background-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.bg-white\/10{background-color:color-mix(in oklab,var(--color-white) 10%,transparent)}}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.px-0{padding-inline:0}.px-1{padding-inline:var(--spacing)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-0{padding-block:0}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-3\.5{padding-block:calc(var(--spacing) * 3.5)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-10{padding-block:calc(var(--spacing) * 10)}.py-12{padding-block:calc(var(--spacing) * 12)}.pr-8{padding-right:calc(var(--spacing) * 8)}.pl-2{padding-left:calc(var(--spacing) * 2)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-display{font-family:var(--font-display)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[12px\]{font-size:12px}.text-\[13px\]{font-size:13px}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.text-\[\#0f4d37\]{color:#0f4d37}.text-\[\#1B7F5A\]{color:#1b7f5a}.text-\[\#6b4c0f\]{color:#6b4c0f}.text-\[\#7a2424\]{color:#7a2424}.text-\[\#8a6212\]{color:#8a6212}.text-\[\#C23B3B\]{color:#c23b3b}.text-amber-100\/90{color:#fef3c6e6}@supports (color:color-mix(in lab,red,red)){.text-amber-100\/90{color:color-mix(in oklab,var(--color-amber-100) 90%,transparent)}}.text-amber-950{color:var(--color-amber-950)}.text-brand-50{color:var(--color-brand-50)}.text-brand-100{color:var(--color-brand-100)}.text-brand-100\/80{color:#d5efedcc}@supports (color:color-mix(in lab,red,red)){.text-brand-100\/80{color:color-mix(in oklab,var(--color-brand-100) 80%,transparent)}}.text-brand-100\/85{color:#d5efedd9}@supports (color:color-mix(in lab,red,red)){.text-brand-100\/85{color:color-mix(in oklab,var(--color-brand-100) 85%,transparent)}}.text-brand-100\/90{color:#d5efede6}@supports (color:color-mix(in lab,red,red)){.text-brand-100\/90{color:color-mix(in oklab,var(--color-brand-100) 90%,transparent)}}.text-brand-200{color:var(--color-brand-200)}.text-brand-200\/80{color:#a8ddd9cc}@supports (color:color-mix(in lab,red,red)){.text-brand-200\/80{color:color-mix(in oklab,var(--color-brand-200) 80%,transparent)}}.text-brand-200\/85{color:#a8ddd9d9}@supports (color:color-mix(in lab,red,red)){.text-brand-200\/85{color:color-mix(in oklab,var(--color-brand-200) 85%,transparent)}}.text-brand-300{color:var(--color-brand-300)}.text-brand-600{color:var(--color-brand-600)}.text-brand-800{color:var(--color-brand-800)}.text-brand-900{color:var(--color-brand-900)}.text-ink{color:var(--color-ink)}.text-ink\/80{color:#0b1f1ecc}@supports (color:color-mix(in lab,red,red)){.text-ink\/80{color:color-mix(in oklab,var(--color-ink) 80%,transparent)}}.text-muted{color:var(--color-muted)}.text-red-900{color:var(--color-red-900)}.text-white{color:var(--color-white)}.text-white\/95{color:#fffffff2}@supports (color:color-mix(in lab,red,red)){.text-white\/95{color:color-mix(in oklab,var(--color-white) 95%,transparent)}}.opacity-80{opacity:.8}.opacity-90{opacity:.9}.opacity-\[0\.07\]{opacity:.07}.opacity-\[0\.035\]{opacity:.035}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-1{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-black\/20{--tw-shadow-color:#0003}@supports (color:color-mix(in lab,red,red)){.shadow-black\/20{--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--color-black) 20%, transparent) var(--tw-shadow-alpha), transparent)}}.shadow-black\/25{--tw-shadow-color:#00000040}@supports (color:color-mix(in lab,red,red)){.shadow-black\/25{--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--color-black) 25%, transparent) var(--tw-shadow-alpha), transparent)}}.shadow-brand-900\/5{--tw-shadow-color:#062a280d}@supports (color:color-mix(in lab,red,red)){.shadow-brand-900\/5{--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--color-brand-900) 5%, transparent) var(--tw-shadow-alpha), transparent)}}.shadow-brand-900\/10{--tw-shadow-color:#062a281a}@supports (color:color-mix(in lab,red,red)){.shadow-brand-900\/10{--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--color-brand-900) 10%, transparent) var(--tw-shadow-alpha), transparent)}}.shadow-brand-900\/15{--tw-shadow-color:#062a2826}@supports (color:color-mix(in lab,red,red)){.shadow-brand-900\/15{--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--color-brand-900) 15%, transparent) var(--tw-shadow-alpha), transparent)}}.shadow-brand-900\/30{--tw-shadow-color:#062a284d}@supports (color:color-mix(in lab,red,red)){.shadow-brand-900\/30{--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--color-brand-900) 30%, transparent) var(--tw-shadow-alpha), transparent)}}.ring-\[\#1B7F5A\]\/20{--tw-ring-color:oklab(53.1627% -.101583 .0313543/.2)}.ring-\[\#C48A1A\]\/25{--tw-ring-color:oklab(67.4231% .0296981 .130948/.25)}.ring-border{--tw-ring-color:var(--color-border)}.ring-brand-200\/80{--tw-ring-color:#a8ddd9cc}@supports (color:color-mix(in lab,red,red)){.ring-brand-200\/80{--tw-ring-color:color-mix(in oklab, var(--color-brand-200) 80%, transparent)}}.ring-brand-300\/40{--tw-ring-color:#6fc4c066}@supports (color:color-mix(in lab,red,red)){.ring-brand-300\/40{--tw-ring-color:color-mix(in oklab, var(--color-brand-300) 40%, transparent)}}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.placeholder\:text-muted\/70::placeholder{color:#5b6f6db3}@supports (color:color-mix(in lab,red,red)){.placeholder\:text-muted\/70::placeholder{color:color-mix(in oklab,var(--color-muted) 70%,transparent)}}.last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}@media (hover:hover){.hover\:border-brand-300:hover{border-color:var(--color-brand-300)}.hover\:bg-\[\#a83232\]:hover{background-color:#a83232}.hover\:bg-brand-50:hover{background-color:var(--color-brand-50)}.hover\:bg-brand-700:hover{background-color:var(--color-brand-700)}.hover\:bg-white\/10:hover{background-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.hover\:bg-white\/10:hover{background-color:color-mix(in oklab,var(--color-white) 10%,transparent)}}.hover\:bg-white\/15:hover{background-color:#ffffff26}@supports (color:color-mix(in lab,red,red)){.hover\:bg-white\/15:hover{background-color:color-mix(in oklab,var(--color-white) 15%,transparent)}}.hover\:text-amber-50:hover{color:var(--color-amber-50)}.hover\:text-brand-700:hover{color:var(--color-brand-700)}.hover\:text-ink:hover{color:var(--color-ink)}.hover\:text-white:hover{color:var(--color-white)}.hover\:underline:hover{text-decoration-line:underline}}.focus\:border-\[\#C23B3B\]:focus{border-color:#c23b3b}.focus\:border-brand-400:focus{border-color:var(--color-brand-400)}.focus\:border-brand-500:focus{border-color:var(--color-brand-500)}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-\[\#C23B3B\]\/15:focus{--tw-ring-color:oklab(55.0963% .156044 .0720329/.15)}.focus\:ring-brand-400\/25:focus{--tw-ring-color:#3aa5a340}@supports (color:color-mix(in lab,red,red)){.focus\:ring-brand-400\/25:focus{--tw-ring-color:color-mix(in oklab, var(--color-brand-400) 25%, transparent)}}.focus\:ring-brand-500\/15:focus{--tw-ring-color:#14919b26}@supports (color:color-mix(in lab,red,red)){.focus\:ring-brand-500\/15:focus{--tw-ring-color:color-mix(in oklab, var(--color-brand-500) 15%, transparent)}}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:cursor-wait:disabled{cursor:wait}.disabled\:bg-\[\#C23B3B\]\/60:disabled{background-color:#c23b3b99}.disabled\:bg-brand-600\/60:disabled{background-color:#0d737799}@supports (color:color-mix(in lab,red,red)){.disabled\:bg-brand-600\/60:disabled{background-color:color-mix(in oklab,var(--color-brand-600) 60%,transparent)}}.disabled\:bg-surface:disabled{background-color:var(--color-surface)}.disabled\:text-muted\/50:disabled{color:#5b6f6d80}@supports (color:color-mix(in lab,red,red)){.disabled\:text-muted\/50:disabled{color:color-mix(in oklab,var(--color-muted) 50%,transparent)}}.disabled\:opacity-60:disabled{opacity:.6}@media (min-width:40rem){.sm\:gap-3{gap:calc(var(--spacing) * 3)}.sm\:text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}}@media (min-width:48rem){.md\:block{display:block}}@media (min-width:64rem){.lg\:block{display:block}.lg\:flex{display:flex}.lg\:grid{display:grid}.lg\:hidden{display:none}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-\[15rem_1fr\]{grid-template-columns:15rem 1fr}.lg\:gap-16{gap:calc(var(--spacing) * 16)}.lg\:justify-self-end{justify-self:flex-end}.lg\:px-6{padding-inline:calc(var(--spacing) * 6)}.lg\:px-8{padding-inline:calc(var(--spacing) * 8)}.lg\:pr-4{padding-right:calc(var(--spacing) * 4)}}.\[\&_option\]\:bg-white option{background-color:var(--color-white)}.\[\&_option\]\:text-ink option{color:var(--color-ink)}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}:root{color-scheme:light;--accent: #0D7377;--accent-soft: #14919B;--accent-deep: #0A5C5F;--bg-card: #ffffff;--bg-app: #F4F8F7;--border: #D5E3E1;--ink: #0B1F1E;--muted: #5B6F6D;--success: #1B7F5A;--warning: #C48A1A;--danger: #C23B3B;--input-radius: 10px;--portal-pad: 10px;--radius-panel: 12px;--font-ui: "DM Sans", system-ui, sans-serif;--font-display: "Sora", "DM Sans", system-ui, sans-serif;font-family:var(--font-ui);line-height:1.5;color:#0b1f1e;background:#f4f8f7}*{box-sizing:border-box}body{margin:0}a{color:inherit}.portal-shell{padding:var(--portal-pad);min-width:0}.portal-shell>*{margin-bottom:var(--portal-pad)}.portal-shell>*:last-child{margin-bottom:0}.legacy-page-content{min-width:0}.sede-switch-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:20;display:flex;align-items:center;justify-content:center;background:#f4f8f7d9;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.sede-switch-overlay__panel{min-width:min(100%,18rem);padding:1.5rem 2rem;border-radius:14px;border:1px solid #D5E3E1;background:#fff;box-shadow:0 16px 40px #062a281f}.legacy-page-content .page{min-width:0}.legacy-page-content .page-header,.legacy-page-content .page>.tabs,.legacy-page-content .page>.toolbar,.legacy-page-content .page>.alert,.legacy-page-content .page>.kpi-grid,.legacy-page-content .page>.mag-filters,.legacy-page-content .page>.panel:not(:has(>.table-wrap)){margin-bottom:var(--portal-pad)}.legacy-page-content .table-wrap,.legacy-page-content .magazzino-table-wrap,.legacy-page-content .catalogo-ricette-table-wrap,.legacy-page-content .dashboard-top-prodotti-table-wrap,.legacy-page-content .dashboard-reparti-table-wrap,.legacy-page-content .dashboard-pagamenti-table-wrap,.legacy-page-content .stats-table-wrap,.legacy-page-content .stats-heatmap-wrap{width:100%;max-width:none;overflow:auto;background:#fff;border:1px solid #D5E3E1;border-radius:12px;margin-bottom:var(--portal-pad)}.legacy-page-content .table-wrap.panel,.legacy-page-content .panel:has(>.table-wrap){padding:0;margin-bottom:var(--portal-pad);box-shadow:none;border:1px solid #D5E3E1;border-radius:12px;background:#fff;overflow:hidden}.legacy-page-content .table-wrap.panel>.toolbar,.legacy-page-content .panel:has(>.table-wrap)>h2,.legacy-page-content .panel:has(>.table-wrap)>.panel-header{margin:0;padding:.75rem;border-bottom:1px solid #F4F8F7}.legacy-page-content .panel:has(>.table-wrap)>h2{font-size:1rem}.legacy-page-content .table-wrap table,.legacy-page-content .magazzino-table-wrap table,.legacy-page-content .catalogo-ricette-table-wrap table,.legacy-page-content .dashboard-top-prodotti-table,.legacy-page-content .dashboard-reparti-table,.legacy-page-content .dashboard-pagamenti-table{width:100%;table-layout:auto}.legacy-page-content .table-wrap th,.legacy-page-content .table-wrap td,.legacy-page-content .magazzino-table-wrap th,.legacy-page-content .magazzino-table-wrap td,.legacy-page-content .catalogo-ricette-table-wrap th,.legacy-page-content .catalogo-ricette-table-wrap td,.legacy-page-content .dashboard-top-prodotti-table th,.legacy-page-content .dashboard-top-prodotti-table td,.legacy-page-content .dashboard-reparti-table th,.legacy-page-content .dashboard-reparti-table td,.legacy-page-content .dashboard-pagamenti-table th,.legacy-page-content .dashboard-pagamenti-table td{padding:.6rem .75rem}.legacy-page-content .table-wrap th.table-actions-head,.legacy-page-content .table-wrap td.table-actions-cell{width:1%;white-space:nowrap;text-align:right}.legacy-page-content .table-wrap .toolbar{margin:0;padding:.75rem;border-bottom:1px solid #F4F8F7}.legacy-page-content .panel{margin-bottom:var(--portal-pad)}input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):not([type=hidden]):not([type=submit]):not([type=button]):not([type=reset]):not([type=image]),select,textarea{border-radius:var(--input-radius)}.page input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):not([type=hidden]),.page select,.page textarea,.toolbar input:not([type=checkbox]):not([type=radio]),.toolbar select,.form-grid input:not([type=checkbox]):not([type=radio]),.form-grid select,.form-grid textarea,.mag-filters input,.mag-filters select{padding:.55rem .7rem;border:1px solid #cbd5e1;background:#fff;font:inherit;color:inherit}.page input:focus,.page textarea:focus,.toolbar input:focus,.form-grid input:focus,.form-grid textarea:focus,.mag-filters input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #0d737724}.page select:focus,.page select:focus-visible,.toolbar select:focus,.toolbar select:focus-visible,.form-grid select:focus,.form-grid select:focus-visible,.mag-filters select:focus,.mag-filters select:focus-visible,select:focus,select:focus-visible{outline:none;box-shadow:none;border-color:#cbd5e1}[data-theme=scuro] .page select:focus,[data-theme=scuro] .page select:focus-visible,[data-theme=scuro] .toolbar select:focus,[data-theme=scuro] .toolbar select:focus-visible,[data-theme=scuro] .form-grid select:focus,[data-theme=scuro] .form-grid select:focus-visible,[data-theme=scuro] .mag-filters select:focus,[data-theme=scuro] .mag-filters select:focus-visible,[data-theme=scuro] select:focus,[data-theme=scuro] select:focus-visible{border-color:#ffffff24}.loading-screen,.login-page{min-height:100vh;display:grid;place-items:center}.login-card{width:min(400px,92vw);background:#fff;padding:2rem;border-radius:12px;box-shadow:0 10px 30px #0f172a14;display:grid;gap:1rem}.login-card h1{margin:0}.login-card label{display:grid;gap:.35rem;font-size:.9rem}.login-card input,select,textarea{width:100%;padding:.55rem .7rem;border:1px solid #cbd5e1;border-radius:var(--input-radius)}.login-card button,.btn{border:none;border-radius:8px;padding:.6rem 1rem;cursor:pointer;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:.4rem}.login-card button,.btn.primary{background:#0d7377;color:#fff}.btn.secondary{background:#d5e3e1;color:#0f172a;text-decoration:none}.btn svg{width:1rem;height:1rem;flex-shrink:0}.app-shell{display:grid;grid-template-columns:260px 1fr;min-height:100vh}.sidebar{background:#0f172a;color:#d5e3e1;padding:1.25rem;display:flex;flex-direction:column;gap:1rem}.brand{font-size:1.2rem;font-weight:700}.user-block{font-size:.9rem}.link-btn{background:none;border:none;color:#14919b;cursor:pointer;padding:0}.sidebar nav{display:grid;gap:.35rem}.sidebar nav a{color:#cbd5e1;text-decoration:none;padding:.5rem .65rem;border-radius:8px}.sidebar nav a.active{background:#1e293b;color:#fff}.sede-meta{display:grid;gap:.35rem;font-size:.85rem}.badge{display:inline-block;padding:.15rem .5rem;border-radius:999px;font-size:.75rem;font-weight:700}.badge.tier-mono{background:#14532d;color:#bbf7d0}.badge.tier-lan_node{background:#1e3a8a;color:#bfdbfe}.main{padding:1.25rem 1.5rem 2rem}.main-topbar{display:flex;justify-content:flex-end;margin-bottom:.75rem}.notif-wrap{position:relative}.notif-btn{position:relative;border:1px solid #cbd5e1;background:#fff;border-radius:8px;padding:.4rem .65rem;cursor:pointer;font-size:1.1rem}.notif-badge{position:absolute;top:-6px;right:-6px;background:#dc2626;color:#fff;font-size:.65rem;font-weight:700;border-radius:999px;min-width:18px;height:18px;display:grid;place-items:center;padding:0 4px}.notif-panel{position:absolute;right:0;top:calc(100% + 6px);width:min(360px,92vw);background:#fff;border:1px solid #D5E3E1;border-radius:10px;box-shadow:0 12px 30px #0f172a1f;z-index:40}.notif-header{display:flex;justify-content:space-between;align-items:center;padding:.65rem .85rem;border-bottom:1px solid #D5E3E1}.notif-list{list-style:none;margin:0;padding:0;max-height:360px;overflow:auto}.notif-list li{padding:.65rem .85rem;border-bottom:1px solid #F4F8F7}.notif-list li.unread{background:#eef8f7}.notif-title{font-weight:600;font-size:.9rem}.notif-body{font-size:.85rem;color:#475569;margin-top:.15rem}.notif-meta{display:flex;justify-content:space-between;align-items:center;margin-top:.35rem;font-size:.75rem;color:#64748b}.alert.success{background:#dcfce7;color:#166534;border:1px solid #bbf7d0}.table-wrap input,.table-wrap select{width:100%;padding:.35rem .45rem;border:1px solid #cbd5e1;border-radius:var(--input-radius);font-size:.85rem}.page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:var(--portal-pad);padding:.15rem .1rem .35rem}.page-header h1{margin:0 0 .25rem;font-family:var(--font-display);font-size:1.55rem;font-weight:600;letter-spacing:-.02em;color:var(--ink)}.page-header .muted,.page-header p{color:var(--muted)}.panel-header{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}.panel-header h2{margin:0;font-size:1.1rem}.mag-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:.75rem 1rem;margin-bottom:1rem;align-items:end}.mag-filters label{display:grid;gap:.35rem;font-size:.85rem;font-weight:500;color:#475569;min-width:0}.mag-filters label.mag-filters-search{grid-column:1 / -1}@media (min-width: 640px){.mag-filters{grid-template-columns:10rem 10rem minmax(12rem,1fr)}.mag-filters label.mag-filters-search{grid-column:auto}}.mag-filters input,.mag-filters select{width:100%;min-width:0}.mag-movimento-form-panel{margin-bottom:1rem}.mag-movimento-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:.75rem 1rem;align-items:end}.mag-movimento-form label{display:grid;gap:.35rem;font-size:.85rem;font-weight:500;color:#475569;min-width:0}.mag-movimento-form input,.mag-movimento-form select{width:100%;min-width:0}.mag-movimento-form-prodotto{grid-column:span 2}.mag-movimento-form-note{grid-column:1 / -1}.mag-movimento-form-actions{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:.75rem 1rem;align-items:center;justify-content:space-between;margin-top:.35rem;padding-top:.85rem;border-top:1px solid var(--border, #D5E3E1)}.mag-movimento-form-giacenza{flex:1;min-width:10rem}.mag-movimento-submit{margin-left:auto;min-height:2.75rem;padding:.7rem 1.35rem;font-size:.95rem;box-shadow:0 2px 8px #0d737747}.mag-movimento-submit:hover:not(:disabled){background:#0a5c5f}.mag-movimento-submit:disabled{opacity:.55;box-shadow:none}.mag-movimento-form-hint{margin:.75rem 0 0;font-size:.85rem}.impostazioni-tabs.tab,.impostazioni-tabs .tab{display:inline-flex;align-items:center;gap:.4rem}.impostazioni-tab-icon{width:.95rem;height:.95rem;flex-shrink:0}.impostazioni-tab-panel,.impostazioni-tab-body{min-width:0}.impostazioni-section-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap;margin-bottom:var(--portal-pad)}.impostazioni-section-header h2{margin:0 0 .25rem;font-family:var(--font-display);font-size:1.2rem;font-weight:600;letter-spacing:-.02em;color:var(--ink)}.impostazioni-section-header .muted{margin:0}.impostazioni-section-header .muted--single-line{white-space:nowrap}.fe-config-toggles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem 1.25rem;padding:.85rem 1rem;border:1px solid #c5e4e1;border-radius:12px;background:linear-gradient(180deg,#f3faf9,#eef7f6)}.fe-config-toggles .toggle-field{padding:.35rem .15rem;color:var(--ink, #0B1F1E);font-weight:600}@media (max-width: 639px){.fe-config-toggles{grid-template-columns:1fr}}.sede-access-panel{display:grid;gap:.75rem;padding:.85rem 1rem;border:1px solid #c5e4e1;border-radius:12px;background:linear-gradient(180deg,#f3faf9,#eef7f6)}.sede-access-panel__title{font-size:.8rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:var(--muted, #5B6F6D)}.sede-access-panel .toggle-field{color:var(--ink, #0B1F1E);font-weight:600}.sede-access-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(11rem,1fr));gap:.55rem 1rem;padding-top:.35rem;border-top:1px solid #c5e4e1}.sede-access-list .toggle-field{font-weight:500}.fasce-settings-list{display:grid;gap:.5rem;width:100%}.fasce-settings-row{display:flex;flex-wrap:nowrap;align-items:center;gap:.75rem 1rem;width:100%;padding:.55rem .75rem;border:1px solid var(--border, #D5E3E1);border-radius:12px;background:#fff}.fasce-settings-row.is-on{border-color:#a8ddd9;background:#eef8f7}.fasce-settings-enable{display:flex;align-items:center;gap:.5rem;flex:1 1 auto;min-width:0;font-weight:600;color:var(--ink, #0B1F1E)}.fasce-settings-enable span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fasce-settings-enable input{width:1.05rem;height:1.05rem;flex-shrink:0;accent-color:var(--accent, #0D7377)}.fasce-settings-time{display:flex;flex-direction:row;align-items:center;gap:.4rem;flex:0 0 auto;margin-left:auto;font-size:.8rem;font-weight:500;color:var(--muted, #5B6F6D);white-space:nowrap}.fasce-settings-time+.fasce-settings-time{margin-left:0}.fasce-settings-time input{width:6.5rem;min-width:6.5rem;max-width:6.5rem;flex:none}@media (max-width: 420px){.fasce-settings-row{flex-wrap:wrap}.fasce-settings-time{margin-left:0}}@media (max-width: 639px){.mag-movimento-form-prodotto{grid-column:1 / -1}}.btn-sm{padding:.25rem .55rem;font-size:.8rem}.table-wrap--loading{opacity:.65;pointer-events:none}.toolbar{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.archivio-page-toolbar{flex-wrap:wrap;justify-content:flex-end}.archivio-page-toolbar .archivio-cerca{flex:1 1 220px;min-width:180px;max-width:420px;padding:.5rem .65rem;border:1px solid #cbd5e1;border-radius:8px;font-size:.95rem;background:#fff;color:inherit}.archivio-page-toolbar .archivio-cerca:focus{outline:none;border-color:var(--accent, #0D7377);box-shadow:0 0 0 3px #0d737724}.archivio-filters-row{display:inline-flex;flex-wrap:nowrap;align-items:center;gap:.5rem;max-width:100%}.archivio-filters-row select,.archivio-filters-row input[type=date]{width:auto;min-width:0;flex:0 1 auto}.archivio-filters-row .btn,.archivio-filters-row .btn-icon{flex-shrink:0;white-space:nowrap}.btn-icon{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;padding:0;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:var(--accent, #0D7377);cursor:pointer}.btn-icon:hover{background:#0d737714;border-color:var(--accent, #0D7377)}.btn-icon svg{display:block}.archivio-btn-export-csv{flex-shrink:0}.archivio-btn-export-pdf{flex-shrink:0;color:#dc2626}.archivio-btn-export-pdf:hover{background:#dc262614;border-color:#dc2626}.portal-fe-summary,.archivio-fe-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem;margin:0 0 1rem}@media (max-width: 720px){.portal-fe-summary,.archivio-fe-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}.archivio-fe-box{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.25rem;padding:.75rem .85rem;border:1px solid #D5E3E1;border-radius:10px;background:#fff;color:inherit;cursor:pointer;text-align:center;transition:border-color .15s,box-shadow .15s,background .15s}.archivio-fe-box:hover{border-color:var(--accent, #0D7377);background:#f8fafc}.archivio-fe-box.is-active{border-color:var(--accent, #0D7377);box-shadow:0 0 0 3px #0d737724;background:#f8fafc}.archivio-fe-box-label{width:100%;font-size:.82rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.03em;text-align:center}.archivio-fe-box-count{width:100%;font-size:1.45rem;font-weight:700;line-height:1.1;text-align:center}.fe-box-pending .archivio-fe-box-count{color:#b45309}.fe-box-sent .archivio-fe-box-count{color:#0d7377}.fe-box-delivered .archivio-fe-box-count{color:#15803d}.fe-box-error .archivio-fe-box-count{color:#dc2626}.sedi-table-actions,.table-row-actions{display:flex;justify-content:flex-end;align-items:center;gap:.35rem}.table-wrap th.table-actions-head,.table-wrap td.table-actions-cell{width:1%;white-space:nowrap;text-align:right;vertical-align:middle}.table-action-btn--danger,.sedi-btn-delete{color:#dc2626}.table-action-btn--danger:hover,.sedi-btn-delete:hover{background:#dc262614;border-color:#dc2626}.table-action-btn--view{color:#0f766e}.table-action-btn--view:hover{background:#0f766e14;border-color:#0f766e}.table-action-btn--add{color:#0d7377}.table-action-btn--add:hover{background:#2563eb14;border-color:#0d7377}.platform-icon-toolbar{display:flex;align-items:center;gap:.35rem;flex-shrink:0}.muted{color:#64748b}.small{font-size:.85rem}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:var(--portal-pad);margin-bottom:var(--portal-pad)}.kpi-card{background:#fff;border-radius:var(--radius-panel, 12px);padding:1rem 1.1rem;border:1px solid var(--border, #D5E3E1);box-shadow:0 1px 2px #0b1f1e0a;transition:border-color .15s ease,box-shadow .15s ease}.kpi-card:hover{border-color:#a8ddd9;box-shadow:0 4px 14px #0d737714}.kpi-label{display:block;color:var(--muted, #5B6F6D);font-size:.85rem;font-weight:500}.kpi-card strong{font-family:var(--font-display);font-size:1.45rem;font-weight:600;color:var(--ink);letter-spacing:-.02em}.panel{background:#fff;border-radius:var(--radius-panel, 12px);padding:.85rem 1rem;box-shadow:0 1px 2px #0b1f1e0a;border:1px solid var(--border, #D5E3E1);margin-bottom:var(--portal-pad)}.charts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1rem}.rank-list{list-style:none;padding:0;margin:.75rem 0 0}.rank-list li{display:flex;justify-content:space-between;padding:.35rem 0;border-bottom:1px solid #D5E3E1}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:.92rem}th,td{text-align:left;padding:.55rem .45rem;border-bottom:1px solid #D5E3E1}th{color:#475569;font-weight:600}.alert{padding:.65rem .85rem;border-radius:12px;margin-bottom:var(--portal-pad);border:1px solid transparent}.alert.error{background:#fdecec;color:#7a2424;border-color:#c23b3b40}.alert.ok,.alert.success{background:#e8f6f0;color:#0f4d37;border-color:#1b7f5a40}.alert.warning{background:#fbf3e0;color:#6b4c0f;border-color:#c48a1a4d}.pill{display:inline-block;padding:.1rem .45rem;border-radius:999px;font-size:.75rem;text-transform:uppercase;background:#d5e3e1}.pill.pending{background:#fef3c7;color:#92400e}.pill.processing{background:#d5efed;color:#0a5c5f}.pill.done{background:#dcfce7;color:#166534}.pill.failed{background:#fee2e2;color:#991b1b}.pill.sottoscorta{background:#fef3c7}.pill.esaurito{background:#fee2e2}.catalog-page-sticky{position:sticky;top:3.25rem;z-index:20;margin:0 0 var(--portal-pad);padding:.35rem 0 .75rem;background:linear-gradient(#f4f8f7 75%,#f1f5f900);border-bottom:1px solid #D5E3E1}.catalog-page-sticky .page-header{margin-bottom:.65rem}.catalog-page-sticky .tabs{margin-bottom:0}.catalog-page-toolbar{align-items:center}.catalog-publish-pill{text-transform:none;font-size:.72rem;font-weight:500;letter-spacing:0;line-height:1.3;padding:.2rem .55rem;text-decoration:none;white-space:nowrap}.catalog-publish-pill strong{font-weight:600;text-transform:lowercase}.catalog-publish-pill:not(.pending):not(.processing):not(.done):not(.failed){background:#d5e3e1;color:#64748b}.catalog-publish-pill:hover{filter:brightness(.97)}.catalog-flash-pill{display:inline-flex;align-items:center;max-width:min(18rem,42vw);padding:.2rem .55rem;border-radius:999px;font-size:.72rem;font-weight:500;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.catalog-flash-pill.ok{background:#dcfce7;color:#166534}.sync-freshness-pill{display:inline-flex;align-items:center;max-width:min(14rem,36vw);padding:.2rem .55rem;border-radius:8px;font-size:.72rem;font-weight:500;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:#d5efed;color:#0a5c5f}.sync-freshness-pill.warning{background:#fef3c7;color:#92400e}.prose h2{margin-top:1.35rem;margin-bottom:.45rem;font-family:var(--font-display);font-size:1.1rem;font-weight:600;color:var(--ink)}.prose h2:first-child{margin-top:0}.prose p{color:var(--muted);line-height:1.55}.prose ul{padding-left:1.2rem;color:var(--muted)}.prose strong{color:var(--ink)}.prose code{font-size:.88em;padding:.1em .35em;border-radius:4px;background:#eef8f7;color:#0a5c5f}.tabs{display:flex;gap:.35rem;flex-wrap:wrap;margin-bottom:var(--portal-pad)}.tab{border:1px solid var(--border, #D5E3E1);background:#fff;border-radius:8px;padding:.45rem .85rem;cursor:pointer;font-weight:600;color:var(--ink);transition:background .15s,border-color .15s,color .15s}.tab:hover{border-color:#a8ddd9;background:#eef8f7}.tab.active{background:#0d7377;color:#fff;border-color:#0d7377}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;display:grid;place-items:center;z-index:50;padding:1rem}.modal{width:min(720px,96vw);max-height:90vh;overflow:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem}.modal-header h2{margin:0}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.form-grid label:not(.toggle-field){display:grid;gap:.35rem;font-size:.9rem}.form-grid .span-2{grid-column:span 2}.form-actions{display:flex;justify-content:flex-end;gap:.5rem}.form-actions--align-field{align-self:end;justify-content:flex-start}.platform-page-header{align-items:flex-start}.platform-page-toolbar{flex-shrink:0;display:flex;flex-wrap:wrap;align-items:center;gap:.65rem}.platform-view-toggle{display:inline-flex;border:1px solid #cbd5e1;border-radius:8px;overflow:hidden;background:#f8fafc}.platform-view-btn{border:none;background:transparent;padding:.4rem .75rem;font:inherit;font-size:.85rem;font-weight:500;color:#64748b;cursor:pointer}.platform-view-btn:hover{color:#0f172a;background:#f4f8f7}.platform-view-btn.active{background:#eef8f7;color:#0a5c5f}.platform-shards-wrap{padding:1rem 1.1rem;min-height:320px}.platform-shard-fill{font-size:.75rem;color:#64748b;margin-left:.25rem}.platform-shard-fill.warn{color:#b45309;font-weight:600}.platform-shard-alerts{display:grid;gap:.5rem;margin-bottom:.85rem}.platform-infra-strip{display:flex;flex-wrap:wrap;gap:.55rem 1rem;margin-bottom:.85rem;padding:.55rem .75rem;border-radius:8px;background:#f8fafc;border:1px solid #D5E3E1;font-size:.8rem;color:#475569}.platform-infra-strip code{font-size:.78rem}.platform-shard-row-warn{background:#fffbeb}.platform-migrate-plan{margin:0;padding:.75rem;background:#0f172a;color:#d5e3e1;border-radius:8px;font-size:.75rem;line-height:1.45;overflow-x:auto;white-space:pre-wrap}.platform-layout{display:grid;grid-template-columns:minmax(240px,280px) minmax(0,1fr);gap:1rem;align-items:start;min-height:420px}.platform-sidebar{padding:.85rem;display:flex;flex-direction:column;gap:.65rem;max-height:calc(100vh - 10rem);position:sticky;top:1rem}.platform-sidebar-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.platform-sidebar-head h2{margin:0;font-size:.95rem;font-weight:600}.platform-count{font-size:.75rem;font-weight:600;color:#64748b;background:#f4f8f7;padding:.15rem .45rem;border-radius:999px}.platform-search{width:100%;padding:.45rem .6rem;border:1px solid #cbd5e1;border-radius:8px;font:inherit;font-size:.88rem}.platform-org-list{display:flex;flex-direction:column;gap:.35rem;overflow-y:auto;min-height:0;flex:1}.platform-org-list-item{display:flex;flex-direction:column;align-items:flex-start;gap:.35rem;width:100%;text-align:left;padding:.65rem .75rem;border:1px solid transparent;border-radius:8px;background:transparent;cursor:pointer;transition:background .15s,border-color .15s}.platform-org-list-item:hover{background:#f8fafc;border-color:#d5e3e1}.platform-org-list-item.active{background:#eef8f7;border-color:#a8ddd9}.platform-org-list-name{font-size:.9rem;font-weight:600;color:#0f172a;line-height:1.25}.platform-org-list-badges{display:flex;flex-wrap:wrap;gap:.3rem}.platform-badge{font-size:.7rem;color:#64748b;background:#f4f8f7;padding:.1rem .4rem;border-radius:4px}.platform-org-list-item.active .platform-badge{background:#d5efed;color:#0a5c5f}.platform-sidebar-empty{margin:.5rem 0;font-size:.85rem}.platform-detail{padding:1rem 1.1rem;min-height:320px}.platform-detail-empty{display:grid;place-items:center;min-height:280px;text-align:center;padding:2rem}.platform-detail-header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.75rem 1rem;margin-bottom:1rem;padding-bottom:.85rem;border-bottom:1px solid #D5E3E1}.platform-detail-title{margin:0 0 .2rem;font-size:1.25rem}.platform-danger-btn{color:#b91c1c;border-color:#fecaca}.platform-danger-btn:hover{background:#fef2f2}.platform-tabs{display:flex;gap:.35rem;margin-bottom:1rem;border-bottom:1px solid #D5E3E1;padding-bottom:0}.platform-tab{display:inline-flex;align-items:center;gap:.4rem;padding:.55rem .85rem;margin-bottom:-1px;border:none;border-bottom:2px solid transparent;background:transparent;font:inherit;font-size:.9rem;font-weight:500;color:#64748b;cursor:pointer}.platform-tab:hover{color:#0f172a}.platform-tab.active{color:#0d7377;border-bottom-color:#0d7377}.platform-tab-count{font-size:.72rem;font-weight:600;background:#f4f8f7;color:#475569;padding:.1rem .4rem;border-radius:999px}.platform-tab.active .platform-tab-count{background:#d5efed;color:#0a5c5f}.platform-tab-panel{animation:platform-fade-in .15s ease}@keyframes platform-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.platform-tab-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem 1rem;margin-bottom:.75rem}.platform-tab-hint{margin:0 0 .75rem}.platform-tab-toolbar .platform-tab-hint{margin:0;flex:1;min-width:12rem}.platform-inline-form{margin-bottom:1rem;padding:.85rem;border:1px dashed #cbd5e1;border-radius:10px;background:#f8fafc}.platform-fieldset{border:1px solid #D5E3E1;border-radius:8px;padding:.75rem;margin:0}.platform-fieldset legend{font-size:.85rem;font-weight:600;color:#475569;padding:0 .35rem}.btn.secondary.small,.btn.primary.small{padding:.35rem .65rem;font-size:.82rem}@media (max-width: 900px){.platform-layout{grid-template-columns:1fr}.platform-sidebar{max-height:none;position:static}.platform-org-list{max-height:220px}}.checkbox-row,.toggle-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.75rem 1rem;align-items:center}.toggle-field{display:inline-flex;align-items:center;gap:.65rem;cursor:pointer;min-height:1.75rem;font-size:.85rem;font-weight:500;color:#334155;-webkit-user-select:none;user-select:none;margin:0}.toggle-field--disabled,.toggle-field:has(input:disabled){opacity:.55;cursor:not-allowed}.toggle-switch{position:relative;flex-shrink:0;width:2.75rem;height:1.35rem}.toggle-switch input[type=checkbox]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;margin:0;padding:0;opacity:0;-moz-appearance:none;appearance:none;-webkit-appearance:none;cursor:pointer;z-index:2}.toggle-field:has(input:disabled) .toggle-switch input[type=checkbox]{cursor:not-allowed}.toggle-track{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:999px;background:#cbd5e1;transition:background .2s ease;pointer-events:none}.toggle-thumb{position:absolute;top:50%;left:.15rem;width:1.05rem;height:1.05rem;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0f172a47;transform:translateY(-50%);transition:left .2s ease;pointer-events:none}.toggle-field:has(input[type=checkbox]:checked) .toggle-track{background:var(--accent, #0D7377)}.toggle-field:has(input[type=checkbox]:checked) .toggle-thumb{left:1.45rem}.toggle-field:has(input:focus-visible) .toggle-track{outline:2px solid rgba(13,115,119,.35);outline-offset:2px}.toggle-label{line-height:1.35}.field-stack{display:grid;gap:.35rem;font-size:.9rem}.field-stack>.field-label{font-size:.9rem;color:inherit}.detail-dl{display:grid;grid-template-columns:140px 1fr;gap:.35rem .75rem;margin:0 0 1rem}.detail-dl dt{color:#64748b}.detail-dl dd{margin:0}.modal-wide{width:min(860px,98vw)}.sub-tabs{margin-bottom:.75rem}.sub-tabs .tab{font-size:.85rem;padding:.35rem .65rem}.danger-text{color:#b91c1c}.ricetta-row{display:grid;grid-template-columns:1fr 100px auto;gap:.5rem;margin-bottom:.5rem;align-items:center}.ricetta-row select,.ricetta-row input{width:100%;padding:.45rem .55rem;border:1px solid #cbd5e1;border-radius:var(--input-radius)}@media (max-width: 900px){.app-shell{grid-template-columns:1fr}.sidebar{position:sticky;top:0;z-index:2}}
