:root{--accent-primary: #143a6d;--accent-primary-light: rgba(20, 58, 109, .08);--accent-primary-dark: #0e2a4f;--accent-rgb: 20, 58, 109;--bg-primary: #f5f7fa;--bg-page: #f5f7fa;--bg-secondary: #ffffff;--bg-card: #ffffff;--bg-hover: #f0f4f8;--bg-elevated: #ffffff;--bg-overlay: rgba(15, 23, 42, .45);--text-primary: #1a2b3c;--text-secondary: #5a6b7c;--text-muted: #8a9bac;--text-on-accent: #ffffff;--border-color: #dde3ea;--border-strong: #c5cfd9;--shadow: 0 2px 12px rgba(20, 58, 109, .05);--shadow-lg: 0 8px 30px rgba(20, 58, 109, .08);--shadow-pop: 0 16px 40px rgba(20, 58, 109, .16);--accent-green: #22a35b;--accent-green-soft: rgba(34, 163, 91, .12);--accent-orange: #e67e22;--accent-orange-soft: rgba(230, 126, 34, .12);--accent-red: #dc3545;--accent-red-soft: rgba(220, 53, 69, .12);--accent-yellow: #f59e0b;--accent-yellow-soft: rgba(245, 158, 11, .14);--accent-purple: #6d28d9;--accent-purple-soft: rgba(109, 40, 217, .14);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 20px;--radius-pill: 999px;--density-row: 14px;--density-cell-y: 12px;--density-cell-x: 16px;--density-card: 24px;--density-input: 10px;--density-gap: 16px;--fs-xs: 11px;--fs-sm: 12px;--fs-base: 14px;--fs-md: 15px;--fs-lg: 17px;--fs-xl: 20px;--fs-2xl: 26px;--fs-3xl: 32px;--sidebar-width: 260px;--sidebar-collapsed: 80px;--header-height: 64px;--bottom-nav-height: 0px;--transition: all .25s cubic-bezier(.4, 0, .2, 1);--transition-fast: all .15s cubic-bezier(.4, 0, .2, 1);--transition-slow: all .4s cubic-bezier(.4, 0, .2, 1);--ease-out: cubic-bezier(.16, 1, .3, 1)}[data-theme=dark]{--bg-primary: #0b1220;--bg-page: #0b1220;--bg-secondary: #131c2e;--bg-card: #131c2e;--bg-hover: #1a2438;--bg-elevated: #1c2740;--bg-overlay: rgba(0, 0, 0, .65);--text-primary: #e6edf6;--text-secondary: #aebbcc;--text-muted: #7a8aa0;--border-color: #283449;--border-strong: #3a4760;--shadow: 0 2px 12px rgba(0, 0, 0, .35);--shadow-lg: 0 8px 30px rgba(0, 0, 0, .45);--shadow-pop: 0 16px 40px rgba(0, 0, 0, .55);--accent-primary-light: rgba(var(--accent-rgb), .18);--accent-green-soft: rgba(34, 197, 94, .18);--accent-orange-soft: rgba(251, 146, 60, .18);--accent-red-soft: rgba(248, 113, 113, .18);--accent-yellow-soft: rgba(250, 204, 21, .2);--accent-purple-soft: rgba(167, 139, 250, .2)}[data-accent=campanile]{--accent-primary: #143a6d;--accent-primary-dark: #0e2a4f;--accent-rgb: 20, 58, 109}[data-accent=ocean]{--accent-primary: #0369a1;--accent-primary-dark: #075985;--accent-rgb: 3, 105, 161}[data-accent=emerald]{--accent-primary: #047857;--accent-primary-dark: #065f46;--accent-rgb: 4, 120, 87}[data-accent=sunset]{--accent-primary: #c2410c;--accent-primary-dark: #9a3412;--accent-rgb: 194, 65, 12}[data-accent=violet]{--accent-primary: #6d28d9;--accent-primary-dark: #5b21b6;--accent-rgb: 109, 40, 217}[data-accent=rose]{--accent-primary: #be123c;--accent-primary-dark: #9f1239;--accent-rgb: 190, 18, 60}[data-accent=graphite]{--accent-primary: #1f2937;--accent-primary-dark: #111827;--accent-rgb: 31, 41, 55}[data-density=compact]{--density-row: 8px;--density-cell-y: 7px;--density-cell-x: 12px;--density-card: 16px;--density-input: 8px;--density-gap: 12px}[data-density=comfy]{--density-row: 18px;--density-cell-y: 16px;--density-cell-x: 20px;--density-card: 32px;--density-input: 14px;--density-gap: 22px}[data-font=small]{--fs-base: 13px;--fs-sm: 11px;--fs-lg: 15px;--fs-xl: 18px;--fs-2xl: 22px;--fs-3xl: 28px}[data-font=large]{--fs-base: 15px;--fs-sm: 13px;--fs-lg: 18px;--fs-xl: 22px;--fs-2xl: 28px;--fs-3xl: 36px}[data-font=xlarge]{--fs-base: 17px;--fs-sm: 14px;--fs-lg: 20px;--fs-xl: 24px;--fs-2xl: 32px;--fs-3xl: 40px}[data-motion=reduced] *,[data-motion=reduced] *:before,[data-motion=reduced] *:after{animation-duration:.01ms!important;transition-duration:.01ms!important}@media (prefers-reduced-motion: reduce){:root:not([data-motion=full]) *,:root:not([data-motion=full]) *:before,:root:not([data-motion=full]) *:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--bg-primary);color:var(--text-primary);min-height:100vh;line-height:1.6;font-size:var(--fs-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background .3s ease,color .3s ease}.sidebar,.main-content,.header,.kpi-card,.chart-card,.modal,.data-table,.data-table th,.data-table td,.filters-bar,.table-container,.report-block,.report-table-card-standalone,.report-chart-card-standalone,.ven-marca-table-card,.ven-marca-chart-card,.static-note,input,select,textarea,button{transition:background-color .25s ease,color .25s ease,border-color .25s ease}*{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:999px;border:2px solid var(--bg-page)}*::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px;border-radius:4px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.app-container{display:flex;min-height:100vh}.sidebar{width:var(--sidebar-width);background:var(--bg-secondary);border-right:1px solid var(--border-color);display:flex;flex-direction:column;position:fixed;height:100vh;z-index:100;transition:var(--transition)}.sidebar.collapsed{width:var(--sidebar-collapsed)}.sidebar-header{height:80px;display:flex;align-items:center;justify-content:center;padding:0 24px;border-bottom:1px dashed var(--border-color)}.logo-wrapper{display:flex;align-items:center;justify-content:center;width:100%;height:100%;overflow:hidden}.logo-full{height:48px;width:auto;object-fit:contain;transition:var(--transition)}.logo-small{height:36px;width:auto;display:none;object-fit:contain;transition:var(--transition)}.sidebar.collapsed .logo-full{display:none}.sidebar.collapsed .logo-small{display:block}.sidebar-content{flex:1;padding:24px 12px;overflow-y:auto}.nav-group{margin-bottom:24px}.nav-group-label{padding:0 12px;margin-bottom:8px;font-size:11px;text-transform:uppercase;letter-spacing:1px;color:var(--text-muted);font-weight:700;transition:var(--transition)}.sidebar.collapsed .nav-group-label{opacity:0;visibility:hidden;height:0;margin:0}.nav-menu{display:flex;flex-direction:column;gap:4px}.nav-item{display:flex;align-items:center;gap:12px;padding:12px;border-radius:var(--radius-md);color:var(--text-secondary);text-decoration:none;transition:var(--transition);font-weight:500;position:relative;overflow:hidden}.nav-item:hover{background:var(--bg-hover);color:var(--text-primary)}.nav-item:hover .nav-icon{background:#143a6d1f;border-radius:var(--radius-sm)}.nav-item:hover .nav-icon svg{transform:scale(1.1)}.nav-item.active{background:var(--accent-primary-light);color:var(--accent-primary);font-weight:600}.nav-item.active:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);height:20px;width:3px;background:var(--accent-primary);border-radius:0 3px 3px 0;display:block}.nav-icon{display:flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:4px;border-radius:var(--radius-sm);transition:var(--transition)}.nav-icon svg{width:20px;height:20px;stroke-width:2;transition:var(--transition);transform-origin:center}.nav-label{white-space:nowrap;transition:var(--transition)}.sidebar.collapsed .nav-label{opacity:0;width:0;display:none}.sidebar.collapsed .nav-item{justify-content:center}.sidebar.collapsed .nav-item.active:before{display:none}.sidebar-footer{padding:16px;border-top:1px solid var(--border-color);background:var(--bg-secondary)}.sidebar-toggle-btn{width:100%;display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:var(--bg-primary);border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;color:var(--text-secondary);transition:var(--transition)}.sidebar-toggle-btn:hover{background:var(--bg-elevated);border-color:var(--accent-primary);box-shadow:var(--shadow);color:var(--accent-primary)}.toggle-icon{display:flex;align-items:center;justify-content:center}.toggle-icon svg{width:18px;height:18px}.toggle-label{font-size:13px;font-weight:500;margin-right:auto;margin-left:12px}.sidebar.collapsed .toggle-label{display:none}.sidebar.collapsed .sidebar-toggle-btn{justify-content:center;background:transparent;border-color:transparent;padding:10px}.sidebar.collapsed .sidebar-toggle-btn:hover{background:var(--bg-hover)}.sidebar.collapsed .toggle-icon svg{transform:rotate(180deg)}.main-content{flex:1;margin-left:var(--sidebar-width);padding:24px 32px;min-height:100vh;transition:var(--transition);background:var(--bg-primary);min-width:0;max-width:100%;overflow-x:hidden}.main-content.expanded{margin-left:var(--sidebar-collapsed)}.header{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px;gap:16px;flex-wrap:wrap}.menu-toggle{display:none;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-card);color:var(--text-primary);cursor:pointer;transition:var(--transition)}.menu-toggle:hover{background:var(--bg-hover);border-color:var(--accent-primary);color:var(--accent-primary)}.menu-toggle svg{width:22px;height:22px}.sidebar-overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:#0006;z-index:99;opacity:0;visibility:hidden;transition:opacity .25s,visibility .25s}.page-title{font-size:28px;font-weight:700;margin-bottom:4px;color:var(--accent-primary)}.page-subtitle{color:var(--text-secondary);font-size:14px}.search-box input{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:12px 20px;color:var(--text-primary);width:300px;font-size:14px;transition:var(--transition)}.search-box input:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-primary-light)}.search-box input::placeholder{color:var(--text-muted)}.section{display:none;max-width:100%;min-width:0;overflow-x:hidden}.section.active{display:block;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:32px}.kpi-card{background:var(--bg-card);border-radius:var(--radius-lg);padding:24px;display:flex;align-items:center;gap:16px;border:1px solid var(--border-color);transition:var(--transition);box-shadow:var(--shadow)}.kpi-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);border-color:var(--accent-primary)}.kpi-icon{width:56px;height:56px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:24px;background:var(--accent-primary-light);color:var(--accent-primary)}.kpi-icon svg{width:28px;height:28px;stroke:currentColor;fill:none;stroke-width:2}.kpi-icon.blue{background:var(--accent-primary-light);color:var(--accent-primary)}.kpi-icon.green{background:#22a35b1f;color:var(--accent-green)}.kpi-icon.purple{background:var(--accent-primary-light);color:var(--accent-primary)}.kpi-icon.orange{background:#e67e221f;color:var(--accent-orange)}.kpi-content{display:flex;flex-direction:column}.kpi-value{font-size:28px;font-weight:700;line-height:1.2;color:var(--accent-primary)}.kpi-label{color:var(--text-secondary);font-size:14px;margin-top:4px}.charts-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;min-width:0}.chart-card{background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border-color);overflow:hidden;box-shadow:var(--shadow);width:100%;max-width:100%;min-width:0}.sviluppo-chart-card{margin-top:24px}.sviluppo-chart-card .sviluppo-chart-body{height:300px;min-height:300px;overflow:hidden}.sviluppo-chart-scroll-x{overflow-x:auto;overflow-y:hidden;width:100%;height:100%;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable}.sviluppo-chart-scroll-x::-webkit-scrollbar{height:10px}.sviluppo-chart-scroll-x::-webkit-scrollbar-thumb{background:#143a6d40;border-radius:5px}.sviluppo-chart-inner{height:100%;position:relative}.chart-header{padding:20px 24px;border-bottom:1px solid var(--border-color)}.chart-header h3{font-size:16px;font-weight:600;color:var(--accent-primary)}.chart-body{padding:24px;height:300px;width:100%;max-width:100%;min-width:0;overflow:hidden;position:relative}.chart-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--bg-primary);border:2px dashed var(--border-color);border-radius:var(--radius-md);color:var(--text-muted);font-size:14px}.chart-placeholder p{margin-bottom:12px}.placeholder-bars,.placeholder-pie{width:200px;height:120px;background:#143a6d0f;border-radius:var(--radius-sm)}.static-note{background:var(--accent-primary-light);border-radius:var(--radius-md);padding:14px 18px;margin-bottom:24px;font-size:13px;color:var(--text-secondary);border-left:4px solid var(--accent-primary)}.table-scroll-x{overflow-x:auto}.data-table .text-muted{color:var(--text-muted);font-style:italic}.report-actions{margin-bottom:20px}.report-actions .btn-primary{display:inline-flex;align-items:center;gap:8px}.report-builder-toolbar{margin-bottom:16px}.report-builder-toolbar .btn-primary,.report-builder-toolbar .btn-secondary,.report-builder-toolbar .btn-cancel{align-self:flex-end}.report-edit-input{width:100%;min-width:90px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-elevated);color:var(--text-primary);padding:6px 8px;font-size:12px}.report-edit-head{font-weight:600}.report-head-cell{display:flex;align-items:center;gap:6px}.report-actions-col{width:72px;text-align:center;white-space:nowrap}.report-edit-computed{background:color-mix(in srgb,var(--accent-primary, #143a6d) 7%,var(--bg-elevated));font-weight:600;cursor:default}.report-formula-badge{flex:0 0 auto;font-size:10px;font-weight:800;line-height:1;padding:3px 5px;border-radius:5px;background:var(--accent-primary, #143a6d);color:var(--text-on-accent, #fff);cursor:help}.report-totals-row td{background:color-mix(in srgb,var(--accent-primary, #143a6d) 12%,var(--bg-card, #fff));border-top:2px solid var(--accent-primary, #143a6d);text-align:right;white-space:nowrap}.report-totals-row td:first-child{text-align:left}.report-inline-del-row,.report-inline-del-col{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center}#reportContainer{display:flex;flex-direction:column;gap:32px;max-width:100%;min-width:0}.report-block{display:flex;flex-direction:column;gap:20px;width:100%;max-width:100%;min-width:0}.report-chart-card-standalone{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow);overflow:hidden;width:100%;max-width:100%;min-width:0;display:flex;flex-direction:column}.report-chart-card-standalone .chart-header{padding:12px 16px;border-bottom:1px solid var(--border-color);flex-shrink:0}.report-chart-card-standalone .chart-header h3{font-size:14px;margin:0}.report-chart-card-standalone .chart-body{height:260px;min-height:200px;padding:12px 16px;width:100%;max-width:100%;min-width:0;overflow:hidden}.report-table-card-standalone{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow);overflow:visible;width:100%;max-width:100%;min-width:0}.report-table-card-standalone .report-table-card-inner{padding:12px 14px;overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch}.report-table-card-standalone .report-table{width:100%;min-width:280px}.report-table-wrap{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:12px 14px;min-width:0;overflow:hidden}.report-table{font-size:12px;width:100%;max-width:100%;table-layout:fixed}.report-table-excel th,.report-table-excel td{padding:5px 8px;white-space:normal;word-break:break-word;border:1px solid var(--border-color)}.report-table-excel thead th{background:var(--accent-primary-light);color:var(--accent-primary);font-weight:600}.report-table .report-subhead th{font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);font-weight:600;background:var(--bg-hover)}.report-total-row{background:var(--accent-primary-light);font-weight:600}.report-total-row td,.report-total-row th{border-top:2px solid var(--accent-primary);padding-top:8px}.report-chart-wrap{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow);min-width:0;display:flex;flex-direction:column}.report-chart-card{flex:1;min-height:0;display:flex;flex-direction:column;border:none;border-radius:0;box-shadow:none}.report-chart-card .chart-header{flex-shrink:0;padding:12px 16px;border-bottom:1px solid var(--border-color)}.report-chart-card .chart-header h3{font-size:14px;margin:0}.report-chart-card .chart-body{flex:1;min-height:180px;height:200px;padding:12px 16px}.ctr-tipo-table-wrap{padding:0 16px 16px;border-top:1px solid var(--border-color);margin-top:8px}.ctr-tipo-table-wrap .ctr-tipo-table{font-size:12px;margin-top:8px}.ctr-tipo-table-wrap .ctr-tipo-table th,.ctr-tipo-table-wrap .ctr-tipo-table td{padding:4px 8px}.ctr-chart-card{margin-top:16px;margin-bottom:24px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow);overflow:hidden;display:flex;flex-direction:column;width:100%;max-width:100%;min-width:0}.ctr-chart-card .chart-body{min-width:0}.ctr-table-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow);overflow:visible}.ctr-table-card-inner{padding:12px 14px;overflow:visible}.ctr-table-card-inner .ctr-mese-table{width:100%}.ctr-chart-card .chart-header{padding:12px 16px;border-bottom:1px solid var(--border-color)}.ctr-chart-card .chart-header h3{font-size:14px;margin:0}.ctr-chart-card .chart-body{height:280px;min-height:280px;padding:12px 16px}.ven-marca-chart-card{margin-top:16px;margin-bottom:24px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow);overflow:hidden;display:flex;flex-direction:column;width:100%;max-width:100%;min-width:0}.ven-marca-chart-card .chart-body{min-width:0}.ven-marca-chart-card .chart-header{padding:12px 16px;border-bottom:1px solid var(--border-color)}.ven-marca-chart-card .chart-header h3{font-size:14px;margin:0}.ven-marca-chart-card .chart-body{height:280px;min-height:280px;padding:12px 16px}.ven-marca-table-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow);overflow:visible}.ven-marca-table-card-inner{padding:12px 14px;overflow:visible}.ven-marca-table-card-inner .ven-marca-table{width:100%}.ctr-expand-col{width:32px;padding:4px 8px!important;vertical-align:middle}.ctr-expand-btn{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-card);color:var(--accent-primary);font-size:14px;line-height:1;cursor:pointer;transition:background .15s,color .15s}.ctr-expand-btn:hover{background:var(--accent-primary-light);color:var(--accent-primary)}.ctr-expand-empty{display:inline-block;width:22px;height:22px}.ctr-detail-row{background:var(--bg-page)}.ctr-detail-cell{padding:8px 12px 12px 32px!important;vertical-align:top;border-bottom:1px solid var(--border-color)}.ctr-detail-table{font-size:11px;width:100%;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-sm);overflow:hidden}.ctr-detail-table th,.ctr-detail-table td{padding:6px 8px;text-align:left;border-bottom:1px solid var(--border-color)}.ctr-detail-table thead th{background:var(--accent-primary-light);color:var(--accent-primary);font-weight:600}.ctr-detail-table tbody tr:last-child td{border-bottom:none}.ctr-detail-table .company-link{cursor:pointer;text-decoration:underline;color:var(--accent-primary)}.report-chart-placeholder{min-height:180px;display:flex;align-items:center;justify-content:center;background:var(--bg-primary);border:2px dashed var(--border-color);border-radius:var(--radius-md);color:var(--text-muted);font-size:13px}@media (max-width: 1366px){.report-table-wrap,.report-table-card-standalone .report-table-card-inner{padding:10px 12px}.report-table{font-size:11px}.report-table-excel th,.report-table-excel td{padding:4px 6px}.report-chart-card .chart-header,.report-chart-card-standalone .chart-header{padding:10px 14px}.report-chart-card .chart-header h3,.report-chart-card-standalone .chart-header h3{font-size:13px}.report-chart-card .chart-body,.report-chart-card-standalone .chart-body{height:220px;min-height:180px;padding:10px 14px}.report-chart-placeholder{min-height:160px}}@media (max-width: 1100px){#reportContainer{gap:28px}.report-block{gap:16px}.report-chart-card-standalone .chart-body{height:240px;min-height:220px}.ctr-chart-card .chart-body{height:240px;min-height:240px}}@media (max-width: 768px){#reportContainer{gap:24px}.report-block{gap:14px}.report-table{font-size:11px}.report-table-excel th,.report-table-excel td{padding:4px 6px}.report-chart-card-standalone .chart-body{height:200px;min-height:180px;padding:8px 10px}.report-chart-card-standalone .chart-header,.report-table-card-standalone .report-table-card-inner{padding:10px 12px}}.filters-bar{background:var(--bg-card);border-radius:var(--radius-lg);padding:20px 24px;display:flex;flex-wrap:wrap;gap:16px;align-items:flex-end;margin-bottom:24px;border:1px solid var(--border-color);box-shadow:var(--shadow)}.filter-group{display:flex;flex-direction:column;gap:6px}.filter-group label{font-size:12px;color:var(--text-secondary);font-weight:500;text-transform:uppercase;letter-spacing:.5px}.filter-group select,.filter-group input{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:10px 14px;color:var(--text-primary);font-size:14px;min-width:140px;cursor:pointer;transition:var(--transition)}.filter-group select:focus,.filter-group input:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-primary-light)}.btn-reset{background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:10px 16px;color:var(--text-secondary);font-size:14px;cursor:pointer;transition:var(--transition);margin-left:auto;display:flex;align-items:center}.btn-reset:hover{background:var(--bg-hover);color:var(--accent-primary);border-color:var(--accent-primary)}.results-summary{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding:0 4px}.results-summary span{color:var(--text-secondary);font-size:14px}.btn-export{background:var(--accent-primary);border:none;border-radius:var(--radius-sm);padding:10px 20px;color:#fff;font-size:14px;font-weight:500;cursor:pointer;transition:var(--transition);display:flex;align-items:center}.btn-export:hover{background:var(--accent-primary-dark);transform:translateY(-1px);box-shadow:0 4px 12px #143a6d33}.table-container{background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border-color);overflow:hidden;box-shadow:var(--shadow)}.data-table{width:100%;border-collapse:collapse}.data-table th{background:var(--accent-primary);padding:16px 20px;text-align:left;font-size:12px;font-weight:600;color:#fff;text-transform:uppercase;letter-spacing:.5px;cursor:pointer;transition:var(--transition);white-space:nowrap}.data-table th:hover{background:var(--accent-primary-dark)}.data-table th.sorted-asc:after{content:" ↑";color:#fff}.data-table th.sorted-desc:after{content:" ↓";color:#fff}.data-table td{padding:16px 20px;border-bottom:1px solid var(--border-color);font-size:14px}.data-table tbody tr{transition:var(--transition)}.data-table tbody tr:hover{background:var(--bg-hover)}.data-table tfoot tr.sviluppo-totals-row td{border-top:2px solid var(--accent-primary);background:var(--accent-primary-light);padding:14px 20px;font-weight:600}.type-badge{display:inline-block;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600}.type-badge.new,.type-badge.tipo-n{background:#22a35b1f;color:var(--accent-green)}.type-badge.internal,.type-badge.tipo-i{background:var(--accent-primary-light);color:var(--accent-primary)}.type-badge.tipo-r{background:#a78bfa26;color:#6d28d9}.type-badge.tipo-f{background:#fb923c26;color:#c2410c}.type-badge.tipo-a{background:#f8717126;color:#b91c1c;text-decoration:line-through}.type-badge.tipo-default{background:#64748b1f;color:#475569}.note-badge{display:inline-block;padding:3px 10px;border-radius:14px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.note-badge.note-saldata{background:#22c55e24;color:#15803d}.note-badge.note-annullato{background:#f8717124;color:#b91c1c}.note-badge.note-pending{background:#facc152e;color:#a16207}.section-subtitle{margin:24px 0 12px;font-size:16px;font-weight:600;color:var(--accent-primary, #143A6D);border-left:3px solid var(--accent-primary, #143A6D);padding-left:10px}#forecastTable td[contenteditable=true]:hover{background:#143a6d0a;cursor:text}#forecastTable td[contenteditable=true]:focus{outline:2px solid var(--accent-primary);outline-offset:-2px;background:var(--bg-elevated)}#forecastTable td.forecast-computed{background:#143a6d0d;color:var(--text-secondary)}.currency{font-family:SF Mono,Monaco,Consolas,monospace;color:var(--accent-green)}.venditore-badge{background:var(--accent-primary-light);color:var(--accent-primary);padding:4px 10px;border-radius:var(--radius-sm);font-size:12px;font-weight:500}@media (max-width: 1400px){.kpi-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 1366px){.main-content{padding:18px 20px}.header{margin-bottom:20px}.page-title{font-size:22px}.search-box input{width:220px;padding:10px 14px;font-size:13px}.filters-bar{padding:14px 18px;gap:12px}.filter-group select,.filter-group input{min-width:120px}.chart-card{padding:14px}.chart-body{height:260px}}@media (max-width: 1200px){.charts-grid{grid-template-columns:1fr}.main-content{padding:16px 18px}}@media (max-width: 992px){.menu-toggle{display:flex;order:-1}.sidebar{width:var(--sidebar-width);transform:translate(-100%);box-shadow:none;transition:transform .3s ease,box-shadow .3s ease}.sidebar.collapsed{width:var(--sidebar-width)}body.sidebar-open .sidebar{transform:translate(0);box-shadow:8px 0 24px #0000001f}.sidebar-overlay{display:block}body.sidebar-open .sidebar-overlay{opacity:1;visibility:visible}.main-content{margin-left:0!important;padding:16px 20px;width:100%}.header{margin-bottom:20px}.page-title{font-size:22px}.search-box input{width:100%;max-width:280px}.table-container{overflow-x:auto;-webkit-overflow-scrolling:touch}.data-table{min-width:800px}.filters-bar{flex-wrap:wrap;gap:10px}.filter-group{min-width:140px}.filter-group select,.filter-group input{width:100%;min-width:0}.form-row{grid-template-columns:repeat(2,1fr)}.modal{max-width:96%;max-height:92vh}.modal-body{padding:16px}.action-bar{flex-wrap:wrap}.chart-card,.ctr-chart-card,.ven-marca-chart-card{padding:0}.chart-card .chart-body,.ctr-chart-card .chart-body,.ven-marca-chart-card .chart-body{padding:10px 12px;height:240px;min-height:220px}}@media (max-width: 768px){.main-content{padding:12px 16px}.header{flex-direction:row;flex-wrap:wrap;margin-bottom:16px}.header-left{flex:1 1 100%}.header-right,.search-box{width:100%}.search-box input{max-width:none}.page-title{font-size:20px}.kpi-grid{grid-template-columns:repeat(2,1fr);gap:12px}.kpi-card{padding:16px}.kpi-value{font-size:22px}.chart-body{height:220px}.chart-card .chart-body,.ctr-chart-card .chart-body,.ven-marca-chart-card .chart-body{padding:8px 10px;height:200px;min-height:180px}.ctr-chart-card .chart-header,.ven-marca-chart-card .chart-header{padding:10px 12px}.form-row{grid-template-columns:1fr}.venditori-grid{grid-template-columns:repeat(2,1fr)}.modal{margin:8px;max-width:calc(100% - 16px);max-height:88vh}.modal-header,.modal-footer{padding:14px 16px}.modal-header h2{font-size:18px}.filters-bar{flex-direction:column;align-items:stretch}.btn-primary{width:100%;justify-content:center}.action-bar .btn-primary{width:auto}.ctr-detail-table{font-size:10px}.ctr-detail-table th,.ctr-detail-table td{padding:4px 6px}}@media (max-width: 600px){.main-content{padding:12px 14px}.chart-card .chart-body,.ctr-chart-card .chart-body,.ven-marca-chart-card .chart-body{padding:6px 8px;height:180px;min-height:160px}#reportContainer{gap:20px}.report-block{gap:12px}.report-chart-card-standalone .chart-body{height:180px;min-height:160px;padding:6px 8px}.report-chart-card-standalone .chart-header{padding:8px 10px}.report-chart-card-standalone .chart-header h3{font-size:13px}.report-table-card-standalone .report-table-card-inner{padding:8px 10px}.kpi-grid{grid-template-columns:1fr}.header{flex-direction:column;align-items:stretch;gap:12px}.search-box input{width:100%}.data-table th,.data-table td{padding:10px 12px;font-size:13px}.btn-icon{width:32px;height:32px}.report-table-excel th,.report-table-excel td{padding:4px 6px;font-size:11px}}@media (max-width: 480px){.main-content{padding:10px 12px}#reportContainer{gap:18px}.report-block{gap:10px}.report-chart-card-standalone .chart-body{height:160px;min-height:140px;padding:6px 8px}.report-chart-card-standalone .chart-header h3{font-size:12px}.page-title{font-size:18px}.page-subtitle{font-size:12px}.kpi-card{padding:12px}.kpi-icon{width:44px;height:44px;font-size:20px}.kpi-value{font-size:20px}.chart-card{padding:0}.chart-body{height:200px}.chart-card .chart-body,.ctr-chart-card .chart-body,.ven-marca-chart-card .chart-body{padding:6px 8px;height:170px;min-height:150px}.modal-header h2{font-size:16px}.menu-toggle{width:40px;height:40px}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.action-bar{display:flex;gap:12px;margin-bottom:20px}.btn-primary{background:var(--accent-primary);border:none;border-radius:var(--radius-sm);padding:12px 24px;color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:var(--transition);display:flex;align-items:center;gap:8px;box-shadow:var(--shadow)}.btn-primary:hover{background:var(--accent-primary-dark);transform:translateY(-1px);box-shadow:0 4px 12px #143a6d40}.btn-secondary{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:12px 24px;color:var(--text-primary);font-size:14px;font-weight:500;cursor:pointer;transition:var(--transition);display:flex;align-items:center;gap:8px}.btn-secondary:hover{background:var(--bg-hover);border-color:var(--accent-primary);color:var(--accent-primary)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#143a6d66;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:none;justify-content:center;align-items:center;z-index:1000;padding:20px}.modal-overlay.active{display:flex;animation:fadeIn .2s ease}.modal{position:relative;z-index:1;background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border-color);width:100%;max-width:800px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;animation:slideUp .3s ease;box-shadow:var(--shadow-lg);pointer-events:auto}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--border-color);background:var(--accent-primary)}.modal-header h2{font-size:20px;font-weight:600;color:#fff}.modal-close{background:none;border:none;color:#fffc;font-size:28px;cursor:pointer;padding:0;line-height:1;transition:var(--transition)}.modal-close:hover{color:#fff}.modal-body{padding:24px;overflow-y:auto;flex:1}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px 24px;border-top:1px solid var(--border-color)}.form-row{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:16px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group.full{grid-column:1 / -1}.form-group label{font-size:13px;color:var(--text-secondary);font-weight:500}.form-group input,.form-group select{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:10px 14px;color:var(--text-primary);font-size:14px;transition:var(--transition)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-primary-light)}.form-group textarea{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:10px 14px;color:var(--text-primary);font-size:14px;font-family:inherit;resize:vertical;min-height:60px}.form-hint{display:block;font-size:12px;color:var(--text-muted);margin-top:4px}.form-cf-with-btn{display:flex;gap:8px;align-items:stretch}.form-cf-with-btn .uppercase-input{flex:1;min-width:0}.form-cf-with-btn .btn-secondary{flex-shrink:0;white-space:nowrap}.uppercase-input{text-transform:uppercase}.form-section-title{font-size:16px;font-weight:600;margin:24px 0 16px;padding-top:16px;border-top:1px solid var(--border-color);color:var(--accent-primary)}.venditori-grid{grid-template-columns:repeat(3,1fr)}.venditore-input{background:var(--accent-primary-light)!important;border-color:#143a6d33!important}.venditore-input:focus{border-color:var(--accent-primary)!important;box-shadow:0 0 0 3px var(--accent-primary-light)!important}.delta-preview{background:var(--bg-secondary);border-radius:var(--radius-md);padding:16px 20px;display:flex;justify-content:space-between;align-items:center;margin-top:20px;border:1px solid var(--border-color)}.delta-label{font-size:14px;color:var(--text-secondary);font-weight:500}.delta-value{font-size:24px;font-weight:700;color:var(--accent-orange);font-family:SF Mono,Monaco,Consolas,monospace}.btn-cancel{background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:12px 24px;color:var(--text-secondary);font-size:14px;font-weight:500;cursor:pointer;transition:var(--transition)}.btn-cancel:hover{background:var(--bg-hover);color:var(--text-primary)}.btn-save{background:var(--accent-primary);border:none;border-radius:var(--radius-sm);padding:12px 24px;color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:var(--transition)}.btn-save:hover{background:var(--accent-primary-dark);transform:translateY(-1px)}.table-actions{display:flex;gap:8px}.btn-icon{background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-sm);width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--transition);font-size:14px}.btn-icon svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2}.btn-icon:hover{background:var(--bg-hover)}.btn-icon.edit:hover{border-color:var(--accent-primary);color:var(--accent-primary)}.btn-icon.delete:hover{border-color:var(--accent-red);color:var(--accent-red)}.delta-positive{color:var(--accent-green)}.delta-negative{color:var(--accent-red)}.venditori-list{display:flex;flex-wrap:wrap;gap:4px}.venditori-list .venditore-badge{font-size:10px;padding:2px 6px}.venditori-list .venditore-amount{font-size:10px;color:var(--accent-green);margin-left:2px}.table-container{overflow-x:auto}.data-table{min-width:1200px}.data-table th,.data-table td{padding:12px 14px}.detail-modal{max-width:700px}.detail-grid{display:grid;gap:24px}.detail-section{background:var(--bg-primary);border-radius:var(--radius-md);padding:20px;border:1px solid var(--border-color)}.detail-section-title{font-size:14px;font-weight:600;color:var(--accent-primary);margin-bottom:16px;text-transform:uppercase;letter-spacing:.5px;display:flex;align-items:center;gap:8px}.detail-section-title svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:2}.detail-row{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:12px}.detail-row:last-child{margin-bottom:0}.detail-item{display:flex;flex-direction:column;gap:4px}.detail-item.full{grid-column:1 / -1}.detail-label{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.detail-value{font-size:15px;color:var(--text-primary);font-weight:500}.detail-value.currency{color:var(--accent-green);font-family:SF Mono,Monaco,Consolas,monospace}.detail-value.highlight{color:var(--accent-orange);font-size:18px;font-weight:700}.detail-value.azienda{font-size:20px;font-weight:700;color:var(--accent-primary)}.venditori-detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.venditore-detail-item{background:var(--accent-primary-light);border-radius:var(--radius-sm);padding:10px 14px;display:flex;justify-content:space-between;align-items:center}.venditore-detail-name{font-size:12px;color:var(--accent-primary);font-weight:500}.venditore-detail-amount{font-size:14px;color:var(--accent-green);font-weight:600;font-family:SF Mono,Monaco,Consolas,monospace}.company-link{color:var(--accent-primary);cursor:pointer;transition:var(--transition);text-decoration:none}.company-link:hover{color:var(--accent-primary-dark);text-decoration:underline}.btn-delete{background:#dc35451a;border:1px solid var(--accent-red);border-radius:var(--radius-sm);padding:12px 24px;color:var(--accent-red);font-size:14px;font-weight:500;cursor:pointer;transition:var(--transition)}.btn-delete:hover{background:var(--accent-red);color:#fff}@media (max-width: 600px){.detail-row{grid-template-columns:1fr}.venditori-detail-grid{grid-template-columns:1fr 1fr}}.header{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.header-actions{display:flex;align-items:center;gap:8px;margin-left:auto}.icon-btn{width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-md);border:1px solid transparent;background:transparent;color:var(--text-secondary);cursor:pointer;transition:var(--transition-fast);padding:0}.icon-btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.icon-btn:hover{background:var(--accent-primary-light);color:var(--accent-primary)}.icon-btn:active{transform:scale(.94)}.icon-btn.has-badge{position:relative}.icon-btn .badge-dot{position:absolute;top:6px;right:6px;width:8px;height:8px;border-radius:50%;background:var(--accent-red);box-shadow:0 0 0 2px var(--bg-secondary)}.settings-drawer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg-overlay);z-index:1100;opacity:0;pointer-events:none;transition:opacity .25s var(--ease-out)}.settings-drawer-overlay.active{opacity:1;pointer-events:auto}.settings-drawer{position:fixed;top:0;right:0;height:100vh;width:min(420px,100vw);background:var(--bg-secondary);border-left:1px solid var(--border-color);box-shadow:var(--shadow-pop);z-index:1101;transform:translate(100%);transition:transform .32s var(--ease-out);display:flex;flex-direction:column}.settings-drawer.active{transform:translate(0)}.settings-drawer-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--border-color)}.settings-drawer-header h2{font-size:var(--fs-lg);font-weight:700}.settings-drawer-body{flex:1;overflow-y:auto;padding:8px 24px 24px}.settings-section{padding:18px 0;border-bottom:1px dashed var(--border-color)}.settings-section:last-child{border-bottom:none}.settings-section-title{font-size:var(--fs-xs);font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--text-muted);margin-bottom:12px}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.settings-row-label{flex:1;font-size:var(--fs-base);color:var(--text-primary);font-weight:500}.settings-row-hint{display:block;font-size:var(--fs-xs);color:var(--text-muted);margin-top:2px;font-weight:400}.segmented{display:inline-flex;background:var(--bg-hover);border-radius:var(--radius-pill);padding:3px;gap:2px}.segmented button{padding:6px 14px;border:none;background:transparent;color:var(--text-secondary);font-size:var(--fs-sm);font-weight:600;cursor:pointer;border-radius:var(--radius-pill);transition:var(--transition-fast);white-space:nowrap}.segmented button.active{background:var(--bg-secondary);color:var(--accent-primary);box-shadow:var(--shadow)}.segmented button:hover:not(.active){color:var(--text-primary)}.color-swatches{display:flex;gap:10px;flex-wrap:wrap}.color-swatch{width:36px;height:36px;border-radius:50%;border:3px solid var(--bg-secondary);cursor:pointer;transition:transform .18s var(--ease-out);box-shadow:0 0 0 1px var(--border-color);position:relative}.color-swatch:hover{transform:scale(1.08)}.color-swatch.active{box-shadow:0 0 0 3px var(--accent-primary);transform:scale(1.05)}.color-swatch.active:after{content:"";position:absolute;border-radius:50%;background:#fffffff2;width:8px;height:8px;margin:auto;top:0;right:0;bottom:0;left:0}.toggle{position:relative;display:inline-block;width:42px;height:24px;flex-shrink:0}.toggle input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--border-strong);border-radius:999px;cursor:pointer;transition:var(--transition-fast)}.toggle-slider:before{content:"";position:absolute;width:18px;height:18px;left:3px;top:3px;background:#fff;border-radius:50%;transition:var(--transition-fast);box-shadow:0 1px 3px #0000002e}.toggle input:checked+.toggle-slider{background:var(--accent-primary)}.toggle input:checked+.toggle-slider:before{transform:translate(18px)}.settings-actions{display:flex;gap:8px;padding:16px 24px;border-top:1px solid var(--border-color)}.settings-actions .btn-secondary,.settings-actions .btn-primary{flex:1;justify-content:center}.menu-dropdown{position:absolute;top:calc(100% + 6px);right:0;min-width:220px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-pop);z-index:50;padding:6px;opacity:0;transform:translateY(-6px);pointer-events:none;transition:opacity .18s var(--ease-out),transform .18s var(--ease-out)}.menu-dropdown.active{opacity:1;transform:translateY(0);pointer-events:auto}.menu-dropdown-item{display:flex;align-items:center;gap:10px;width:100%;padding:8px 12px;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text-primary);font-size:var(--fs-sm);font-weight:500;cursor:pointer;text-align:left;transition:var(--transition-fast)}.menu-dropdown-item:hover{background:var(--accent-primary-light);color:var(--accent-primary)}.menu-dropdown-item svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2;flex-shrink:0}.menu-dropdown-item.danger{color:var(--accent-red)}.menu-dropdown-item.danger:hover{background:var(--accent-red-soft)}.menu-dropdown-divider{height:1px;background:var(--border-color);margin:4px 0}.menu-dropdown-section{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:var(--text-muted);padding:6px 12px 4px;font-weight:700}.menu-dropdown-checkbox{margin-left:auto;width:16px;height:16px;border:1.5px solid var(--border-strong);border-radius:4px;flex-shrink:0;position:relative}.menu-dropdown-item.checked .menu-dropdown-checkbox{background:var(--accent-primary);border-color:var(--accent-primary)}.menu-dropdown-item.checked .menu-dropdown-checkbox:after{content:"";position:absolute;width:4px;height:8px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg);top:2px;left:5px}.toast-stack{position:fixed;top:24px;right:24px;z-index:2000;display:flex;flex-direction:column;gap:10px;max-width:380px;pointer-events:none}.toast{background:var(--bg-secondary);border:1px solid var(--border-color);border-left:4px solid var(--accent-primary);border-radius:var(--radius-md);box-shadow:var(--shadow-pop);padding:12px 14px;display:flex;align-items:flex-start;gap:10px;pointer-events:auto;animation:toast-in .32s var(--ease-out);min-width:280px}.toast.toast-out{animation:toast-out .24s var(--ease-out) forwards}.toast .toast-icon{width:22px;height:22px;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:var(--accent-primary)}.toast .toast-icon svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.toast .toast-content{flex:1;min-width:0}.toast .toast-title{font-weight:600;color:var(--text-primary);font-size:var(--fs-sm);margin-bottom:2px}.toast .toast-msg{color:var(--text-secondary);font-size:var(--fs-sm);word-break:break-word}.toast .toast-close{background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:0;margin-left:4px;font-size:18px;line-height:1;flex-shrink:0}.toast.success{border-left-color:var(--accent-green)}.toast.success .toast-icon{color:var(--accent-green)}.toast.error{border-left-color:var(--accent-red)}.toast.error .toast-icon{color:var(--accent-red)}.toast.warning{border-left-color:var(--accent-yellow)}.toast.warning .toast-icon{color:var(--accent-yellow)}.toast.info{border-left-color:var(--accent-primary)}@keyframes toast-in{0%{opacity:0;transform:translate(40px) scale(.95)}to{opacity:1;transform:translate(0) scale(1)}}@keyframes toast-out{to{opacity:0;transform:translate(40px) scale(.95)}}.confirm-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg-overlay);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:1500;display:none;align-items:center;justify-content:center;opacity:0;transition:opacity .22s var(--ease-out)}.confirm-modal-overlay.active{display:flex;opacity:1}.confirm-modal{background:var(--bg-secondary);border-radius:var(--radius-lg);box-shadow:var(--shadow-pop);padding:28px;width:min(420px,calc(100% - 32px));transform:scale(.94);transition:transform .22s var(--ease-out)}.confirm-modal-overlay.active .confirm-modal{transform:scale(1)}.confirm-modal-icon{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:16px;background:var(--accent-red-soft);color:var(--accent-red)}.confirm-modal.info .confirm-modal-icon{background:var(--accent-primary-light);color:var(--accent-primary)}.confirm-modal.success .confirm-modal-icon{background:var(--accent-green-soft);color:var(--accent-green)}.confirm-modal-icon svg{width:28px;height:28px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.confirm-modal-title{font-size:var(--fs-lg);font-weight:700;color:var(--text-primary);margin-bottom:8px}.confirm-modal-msg{color:var(--text-secondary);font-size:var(--fs-base);line-height:1.5;margin-bottom:24px}.confirm-modal-actions{display:flex;gap:8px;justify-content:flex-end}.empty-state{padding:48px 24px;text-align:center;color:var(--text-muted)}.empty-state-icon{width:64px;height:64px;margin:0 auto 16px;border-radius:50%;background:var(--accent-primary-light);color:var(--accent-primary);display:flex;align-items:center;justify-content:center}.empty-state-icon svg{width:28px;height:28px;stroke:currentColor;fill:none;stroke-width:2}.empty-state-title{font-size:var(--fs-md);font-weight:600;color:var(--text-primary);margin-bottom:4px}.empty-state-message{font-size:var(--fs-sm);margin-bottom:16px}.skeleton{background:linear-gradient(90deg,var(--bg-hover) 0%,var(--bg-elevated) 50%,var(--bg-hover) 100%);background-size:200% 100%;animation:skel 1.4s ease-in-out infinite;border-radius:var(--radius-sm)}@keyframes skel{0%{background-position:-200% 0}to{background-position:200% 0}}[data-tooltip]{position:relative}[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%) translateY(4px);background:var(--text-primary);color:var(--bg-secondary);padding:5px 10px;border-radius:var(--radius-sm);font-size:var(--fs-xs);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .18s,transform .18s;z-index:1000;font-weight:500}[data-tooltip]:hover:after{opacity:1;transform:translate(-50%) translateY(0)}.filter-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.filter-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-pill);font-size:var(--fs-sm);color:var(--text-secondary);cursor:pointer;transition:var(--transition-fast);-webkit-user-select:none;user-select:none;font-weight:500}.filter-chip:hover{border-color:var(--accent-primary);color:var(--accent-primary)}.filter-chip.active{background:var(--accent-primary);color:var(--text-on-accent);border-color:var(--accent-primary)}.filter-chip .chip-count{background:#ffffff40;color:inherit;padding:1px 7px;border-radius:var(--radius-pill);font-size:10px;font-weight:700}.filter-chip:not(.active) .chip-count{background:var(--accent-primary-light);color:var(--accent-primary)}.search-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg-overlay);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1300;display:none;justify-content:center;padding-top:12vh;opacity:0;transition:opacity .18s}.search-overlay.active{display:flex;opacity:1}.search-overlay-box{background:var(--bg-secondary);width:min(640px,92vw);max-height:70vh;border-radius:var(--radius-lg);box-shadow:var(--shadow-pop);overflow:hidden;display:flex;flex-direction:column;transform:scale(.96);transition:transform .18s var(--ease-out)}.search-overlay.active .search-overlay-box{transform:scale(1)}.search-overlay-input{width:100%;border:none;padding:18px 22px;font-size:var(--fs-md);background:transparent;color:var(--text-primary);outline:none;border-bottom:1px solid var(--border-color)}.search-overlay-results{flex:1;overflow-y:auto;padding:8px}.search-result-item{display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition-fast)}.search-result-item:hover,.search-result-item.focused{background:var(--accent-primary-light)}.search-result-icon{width:32px;height:32px;border-radius:8px;background:var(--bg-hover);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--accent-primary)}.search-result-icon svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2}.search-result-content{flex:1;min-width:0}.search-result-title{font-size:var(--fs-sm);font-weight:600;color:var(--text-primary)}.search-result-meta{font-size:var(--fs-xs);color:var(--text-muted)}.search-result-shortcut{font-size:10px;background:var(--bg-hover);border:1px solid var(--border-color);border-radius:4px;padding:2px 6px;color:var(--text-muted);font-family:monospace}.bottom-nav{display:none;position:fixed;bottom:0;left:0;right:0;background:var(--bg-secondary);border-top:1px solid var(--border-color);z-index:90;padding:6px 4px calc(6px + env(safe-area-inset-bottom));box-shadow:0 -2px 12px #0000000f}.bottom-nav-track{display:flex;justify-content:space-around;align-items:stretch;overflow-x:auto;scrollbar-width:none}.bottom-nav-track::-webkit-scrollbar{display:none}.bottom-nav-item{flex:0 0 auto;min-width:64px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:6px 8px;border-radius:var(--radius-sm);cursor:pointer;color:var(--text-muted);text-decoration:none;font-size:10px;font-weight:500;transition:var(--transition-fast)}.bottom-nav-item svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.bottom-nav-item.active{color:var(--accent-primary)}.bottom-nav-item.active svg{stroke-width:2.4}.bottom-nav-more{flex:0 0 auto}.fab{display:none;position:fixed;bottom:calc(72px + env(safe-area-inset-bottom));right:18px;width:56px;height:56px;border-radius:50%;background:var(--accent-primary);color:var(--text-on-accent);border:none;box-shadow:0 8px 24px rgba(var(--accent-rgb),.4);cursor:pointer;z-index:80;align-items:center;justify-content:center;transition:var(--transition-fast)}.fab:hover{transform:scale(1.05)}.fab:active{transform:scale(.94)}.fab svg{width:24px;height:24px;stroke:currentColor;fill:none;stroke-width:2.2}.cards-list{display:none;flex-direction:column;gap:10px}.contract-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:14px;transition:var(--transition-fast)}.contract-card:hover{border-color:var(--accent-primary);box-shadow:var(--shadow)}.contract-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px}.contract-card-azienda{font-weight:600;color:var(--text-primary);font-size:var(--fs-base);flex:1;min-width:0}.contract-card-meta{color:var(--text-muted);font-size:var(--fs-xs);margin-top:2px}.contract-card-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px 12px;font-size:var(--fs-sm);margin-bottom:10px}.contract-card-cell{display:flex;flex-direction:column;gap:1px}.contract-card-cell .label{font-size:10px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;font-weight:600}.contract-card-cell .value{color:var(--text-primary);font-weight:500}.contract-card-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:10px;border-top:1px dashed var(--border-color)}.onboarding-banner{background:linear-gradient(135deg,rgba(var(--accent-rgb),.12),rgba(var(--accent-rgb),.04));border:1px solid rgba(var(--accent-rgb),.2);border-radius:var(--radius-lg);padding:18px 22px;margin-bottom:20px;display:flex;align-items:center;gap:16px;position:relative}.onboarding-banner-icon{width:46px;height:46px;border-radius:var(--radius-md);background:var(--bg-secondary);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--accent-primary)}.onboarding-banner-icon svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:2}.onboarding-banner-content{flex:1}.onboarding-banner-title{font-weight:700;color:var(--text-primary);margin-bottom:2px}.onboarding-banner-message{color:var(--text-secondary);font-size:var(--fs-sm)}.onboarding-banner-close{background:transparent;border:none;color:var(--text-muted);font-size:22px;cursor:pointer;padding:4px;line-height:1;flex-shrink:0}.config-tabs{display:flex;gap:4px;background:var(--bg-hover);border-radius:var(--radius-md);padding:4px;margin-bottom:20px;overflow-x:auto;scrollbar-width:none}.config-tabs::-webkit-scrollbar{display:none}.config-tab{padding:8px 14px;border:none;background:transparent;color:var(--text-secondary);font-size:var(--fs-sm);font-weight:600;cursor:pointer;border-radius:var(--radius-sm);transition:var(--transition-fast);white-space:nowrap}.config-tab.active{background:var(--bg-secondary);color:var(--accent-primary);box-shadow:var(--shadow)}.config-pane{display:none}.config-pane.active{display:block}.config-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:16px;margin-bottom:16px}.config-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.config-card-title{font-weight:700;color:var(--text-primary);font-size:var(--fs-md)}.config-card-subtitle{font-size:var(--fs-sm);color:var(--text-muted);font-weight:400;margin-top:2px}.config-list{display:flex;flex-direction:column;gap:8px}.config-list-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:var(--radius-sm);background:var(--bg-hover);border:1px solid transparent;transition:var(--transition-fast)}.config-list-item:hover{border-color:var(--border-color)}.config-list-item .item-color{width:12px;height:12px;border-radius:4px;flex-shrink:0}.config-list-item .item-text{flex:1;font-weight:500}.config-list-item .item-meta{color:var(--text-muted);font-size:var(--fs-sm)}.config-list-item .item-actions{display:flex;gap:4px}.config-add-form{display:flex;gap:8px;margin-top:10px;padding-top:10px;border-top:1px dashed var(--border-color)}.config-add-form input,.config-add-form select{flex:1;padding:8px 12px;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--fs-sm);background:var(--bg-secondary);color:var(--text-primary)}.config-add-form input:focus,.config-add-form select:focus{outline:none;border-color:var(--accent-primary)}.sidebar-profile{padding:12px;margin:0 12px 8px;border-radius:var(--radius-md);display:flex;align-items:center;gap:10px;cursor:pointer;transition:var(--transition-fast)}.sidebar-profile:hover{background:var(--bg-hover)}.sidebar-profile-avatar{width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,var(--accent-primary),var(--accent-primary-dark));color:var(--text-on-accent);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:var(--fs-sm);flex-shrink:0}.sidebar-profile-info{flex:1;min-width:0;overflow:hidden;transition:opacity .2s,max-width .3s}.sidebar-profile-name{font-size:var(--fs-sm);font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-profile-role{font-size:11px;color:var(--text-muted)}.sidebar.collapsed .sidebar-profile-info{display:none}.kpi-card{cursor:default;position:relative}.kpi-card.draggable{cursor:grab}.kpi-card.draggable:active{cursor:grabbing}.kpi-card.dragging{opacity:.5}.kpi-card .kpi-trend{position:absolute;top:12px;right:12px;font-size:var(--fs-xs);font-weight:600;padding:2px 8px;border-radius:var(--radius-pill)}.kpi-card .kpi-trend.up{background:var(--accent-green-soft);color:var(--accent-green)}.kpi-card .kpi-trend.down{background:var(--accent-red-soft);color:var(--accent-red)}.data-table th,.data-table td{padding:var(--density-cell-y) var(--density-cell-x)}.kpi-card,.chart-card,.report-table-card-standalone,.report-chart-card-standalone{padding:var(--density-card)}.filters-bar{gap:var(--density-gap)}.table-container{max-height:calc(100vh - 280px);overflow:auto}.data-table thead th{position:sticky;top:0;background:var(--accent-primary);z-index:5;box-shadow:0 1px 0 var(--border-color)}[data-theme=dark] .report-table-excel.data-table thead th{background:var(--bg-elevated);color:var(--text-primary)}:root:not([data-theme=dark]) .report-table-excel.data-table thead th:hover{color:var(--text-on-accent)}.summary-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin-bottom:20px}.summary-tile{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:14px 16px}.summary-tile-label{font-size:var(--fs-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;font-weight:600;margin-bottom:4px}.summary-tile-value{font-size:var(--fs-xl);font-weight:700;color:var(--text-primary);font-family:SF Mono,Monaco,Consolas,monospace}.summary-tile-trend{font-size:var(--fs-xs);color:var(--text-muted);margin-top:2px}@media print{.sidebar,.header,.bottom-nav,.fab,.filters-bar,.action-bar,.table-actions,.modal-overlay,.settings-drawer,.toast-stack,.menu-dropdown{display:none!important}.main-content,.main-content.expanded{margin-left:0!important;padding:0!important}.data-table{box-shadow:none}body{background:#fff;color:#000}}@media (max-width: 1280px){.main-content{padding:20px}.charts-grid{grid-template-columns:1fr}.kpi-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 992px){.sidebar{transform:translate(-100%);z-index:1200;box-shadow:var(--shadow-pop)}body.sidebar-open .sidebar{transform:translate(0)}.main-content{margin-left:0!important;padding-bottom:calc(72px + env(safe-area-inset-bottom))}.menu-toggle{display:inline-flex}.bottom-nav{display:block}.fab{display:inline-flex}}@media (max-width: 768px){:root{--header-height: 56px}.header{padding:12px 16px;height:var(--header-height);position:sticky;top:0;z-index:50;background:var(--bg-secondary);border-bottom:1px solid var(--border-color)}.main-content{padding:16px}.page-title{font-size:var(--fs-xl)}.page-subtitle,.header-right .search-box{display:none}.kpi-grid{grid-template-columns:1fr 1fr;gap:10px}.kpi-value{font-size:var(--fs-xl)}.kpi-card{padding:14px}.modal{width:100%;max-width:100%!important;max-height:100vh;border-radius:0;margin:0}.modal-overlay{padding:0;align-items:stretch}.modal-overlay>.modal{height:100vh;max-height:100vh}.form-row{grid-template-columns:1fr!important}.filters-bar{flex-direction:column;align-items:stretch}.filter-group{width:100%}.action-bar{flex-wrap:wrap}.action-bar button{flex:1 1 calc(50% - 4px)}.table-container{display:none}.cards-list{display:flex}.settings-drawer{width:100vw}.sidebar-footer{display:none}.venditori-detail-grid,.summary-strip{grid-template-columns:1fr 1fr}}@media (max-width: 480px){.kpi-grid{grid-template-columns:1fr}.header{padding:10px 14px}.main-content{padding:12px}.toast-stack{top:10px;right:10px;left:10px;max-width:none}.toast{min-width:0}.config-tabs{flex-wrap:nowrap}.summary-strip,.contract-card-grid{grid-template-columns:1fr}.action-bar button{flex:1 1 100%}}[data-theme=dark] .sidebar{background:var(--bg-secondary)}[data-theme=dark] .nav-item.active{background:var(--accent-primary-light);color:var(--accent-primary)}[data-theme=dark] .data-table thead th{background:var(--bg-elevated);color:var(--text-primary)}[data-theme=dark] .filters-bar,[data-theme=dark] .modal{background:var(--bg-secondary)}[data-theme=dark] input,[data-theme=dark] select,[data-theme=dark] textarea{background:var(--bg-elevated);color:var(--text-primary);border-color:var(--border-color)}[data-theme=dark] input::placeholder,[data-theme=dark] textarea::placeholder{color:var(--text-muted)}[data-theme=dark] .data-table tbody tr:hover{background:var(--bg-hover)}[data-sidebar-pos=right] .sidebar{left:auto;right:0;border-right:none;border-left:1px solid var(--border-color)}[data-sidebar-pos=right] .main-content{margin-left:0;margin-right:var(--sidebar-width)}[data-sidebar-pos=right] .main-content.expanded{margin-right:var(--sidebar-collapsed)}@media (max-width: 992px){[data-sidebar-pos=right] .sidebar{transform:translate(100%)}[data-sidebar-pos=right].sidebar-open .sidebar{transform:translate(0)}[data-sidebar-pos=right] .main-content{margin-right:0}}.page-body{padding:24px 28px 60px}.fullscreen-loader{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;gap:16px;align-items:center;justify-content:center;color:#143a6d;font-weight:500;background:#f4f6fb}.spinner{width:38px;height:38px;border-radius:50%;border:4px solid #d7e0ef;border-top-color:#143a6d;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.login-split{display:flex;min-height:100vh;background:#fff}.login-split-form{flex:1 1 46%;display:flex;align-items:center;justify-content:center;padding:40px 28px}.login-form-inner{width:100%;max-width:380px}.login-brand{margin-bottom:34px}.login-brand img{height:52px}.login-title{font-size:30px;font-weight:700;color:#0f2747;margin:0 0 6px;letter-spacing:-.5px}.login-subtitle{color:#6b7280;font-size:15px;margin:0 0 30px}.login-field{margin-bottom:18px}.login-field label{display:block;font-size:13px;font-weight:600;margin-bottom:7px;color:#334155}.login-field input{width:100%;padding:13px 15px;border:1px solid #dbe2ec;border-radius:12px;font-size:15px;background:#f8fafc;transition:border-color .15s,box-shadow .15s,background .15s}.login-field input:focus{outline:none;border-color:#1e5aa8;background:#fff;box-shadow:0 0 0 4px #1e5aa81f}.login-pw{position:relative}.login-pw input{padding-right:46px}.login-pw-toggle{position:absolute;right:6px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:#94a3b8;padding:8px;border-radius:8px}.login-pw-toggle:hover{color:#1e5aa8}.login-pw-toggle svg{width:20px;height:20px}.login-submit{width:100%;padding:14px;margin-top:6px;border:none;border-radius:12px;cursor:pointer;font-size:15px;font-weight:600;color:#fff;background:linear-gradient(135deg,#1e5aa8,#143a6d);box-shadow:0 10px 24px #143a6d47;transition:transform .1s,box-shadow .15s,opacity .15s}.login-submit:hover{box-shadow:0 12px 30px #143a6d61}.login-submit:active{transform:translateY(1px)}.login-submit:disabled{opacity:.65;cursor:default;box-shadow:none}.login-error{background:#fee2e2;color:#b91c1c;padding:11px 13px;border-radius:10px;font-size:13px;margin-bottom:18px;border:1px solid #fecaca}.login-foot{margin-top:26px;font-size:12px;color:#9ca3af}.login-split-media{flex:1 1 54%;position:relative;overflow:hidden;background-image:url(/assets/img/login-bg.jpg);background-size:cover;background-position:center}.login-media-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(150deg,#143a6dc7,#0f27478c 45%,#0b1a30d9)}.login-media-content{position:absolute;left:0;right:0;bottom:0;padding:54px;color:#fff}.login-media-logo{height:46px;margin-bottom:22px}.login-media-content h2{font-size:34px;font-weight:700;margin:0 0 10px;letter-spacing:-.5px}.login-media-content p{font-size:16px;margin:0;color:#ffffffd1;max-width:440px}@media (max-width: 880px){.login-split-media{display:none}.login-split-form{flex-basis:100%}}.toast-stack{position:fixed;top:18px;right:18px;z-index:4000;display:flex;flex-direction:column;gap:10px}.toast{background:#fff;border-left:4px solid #3b82f6;border-radius:8px;padding:12px 18px;box-shadow:0 8px 24px #00000024;min-width:240px;max-width:360px;font-size:14px;animation:toastIn .2s ease}@keyframes toastIn{0%{transform:translate(20px);opacity:0}to{transform:none;opacity:1}}.toast-success{border-left-color:#22c55e}.toast-error{border-left-color:#ef4444}.toast-warning{border-left-color:#f59e0b}.toast-info{border-left-color:#3b82f6}.btn-danger{background:#ef4444!important}.btn-danger:hover{background:#dc2626!important}.btn-secondary{background:#eef2f7;color:#143a6d;border:1px solid #d7e0ef;border-radius:8px;padding:8px 14px;cursor:pointer;font-weight:500;font-size:13px}.btn-secondary:hover{background:#e2e9f3}.btn-primary{background:#143a6d;color:#fff;border:none;border-radius:8px;padding:9px 16px;cursor:pointer;font-weight:600;font-size:14px;display:inline-flex;align-items:center;gap:6px}.btn-primary:hover{background:#0f2d55}.btn-primary:disabled{opacity:.6;cursor:default}.page-toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;margin-bottom:18px}.page-toolbar .toolbar-actions{display:flex;gap:8px;flex-wrap:wrap}.filters-bar{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px}.filters-bar select,.filters-bar input{padding:8px 10px;border:1px solid #d7e0ef;border-radius:8px;font-size:13px;background:#fff}.empty-state{text-align:center;padding:50px 20px;color:#6b7280}.empty-state-icon{font-size:42px;margin-bottom:10px}.users-grid{display:grid;grid-template-columns:320px 1fr;gap:22px;align-items:start}@media (max-width: 900px){.users-grid{grid-template-columns:1fr}}.user-list-item{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid #e5e9f2;border-radius:10px;margin-bottom:8px;cursor:pointer;background:#fff}.user-list-item:hover{border-color:#143a6d}.user-list-item.selected{border-color:#143a6d;box-shadow:0 0 0 2px #143a6d1f}.user-avatar{width:40px;height:40px;border-radius:50%;background:#143a6d;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;flex-shrink:0}.user-meta{flex:1;min-width:0}.user-meta .uname{font-weight:600}.user-meta .urole{font-size:12px;color:#6b7280}.badge-pill{font-size:11px;padding:2px 8px;border-radius:999px;background:#eef2f7;color:#143a6d;font-weight:600}.badge-pill.sa{background:#143a6d;color:#fff}.badge-pill.off{background:#fee2e2;color:#b91c1c}.perm-category{border:1px solid #e5e9f2;border-radius:10px;margin-bottom:12px;overflow:hidden}.perm-category-head{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:#f7f9fc;font-weight:600;cursor:pointer}.perm-category-head .cat-count{font-size:12px;color:#6b7280;font-weight:500}.perm-items{padding:6px 14px 12px;display:grid;grid-template-columns:1fr 1fr;gap:6px}@media (max-width: 700px){.perm-items{grid-template-columns:1fr}}.perm-item{display:flex;align-items:flex-start;gap:9px;padding:7px 6px;border-radius:7px}.perm-item:hover{background:#f7f9fc}.perm-item input{margin-top:3px}.perm-item .perm-label{font-size:13px;font-weight:500}.perm-item .perm-desc{font-size:11px;color:#9ca3af}.perm-toolbar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px;align-items:center}.section-card{background:#fff;border:1px solid #e9edf5;border-radius:14px;padding:20px;margin-bottom:20px}.section-card h3{margin:0 0 14px;font-size:16px;color:#143a6d}.table-scroll{overflow-x:auto}td.editable-cell{cursor:text}td.editable-cell:focus{outline:2px solid #143A6D;background:#eef4ff}.form-row{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:14px}.form-group{flex:1;min-width:160px;display:flex;flex-direction:column}.form-group.full{flex-basis:100%}.form-group label{font-size:13px;font-weight:600;margin-bottom:5px;color:#374151}.form-group input,.form-group select,.form-group textarea{padding:9px 11px;border:1px solid #d7e0ef;border-radius:8px;font-size:14px;font-family:inherit}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#143a6d;box-shadow:0 0 0 3px #143a6d1a}.venditori-grid .form-group{min-width:120px}:root{--font-display: "Plus Jakarta Sans", "Inter", -apple-system, BlinkMacSystemFont, sans-serif;--chart-h: 320px}.page-title,.login-title,.login-media-content h2,.kpi-value,.summary-tile-value,.delta-value,.sidebar-header,.modal-header h2,.section-card h3,.chart-header h3,.config-card-title,.settings-drawer-header h2,.empty-state-title{font-family:var(--font-display);letter-spacing:-.01em}.kpi-value,.summary-tile-value,.delta-value,.currency,.detail-value.currency,td.currency,.data-table td.currency{font-variant-numeric:tabular-nums}.main-content{background:radial-gradient(1200px 520px at 100% -10%,rgba(var(--accent-rgb),.06),transparent 60%),radial-gradient(900px 480px at -10% 0%,rgba(var(--accent-rgb),.045),transparent 55%),var(--bg-primary)}[data-theme=dark] .main-content{background:radial-gradient(1200px 520px at 100% -10%,rgba(var(--accent-rgb),.16),transparent 60%),radial-gradient(900px 480px at -10% 0%,rgba(var(--accent-rgb),.1),transparent 55%),var(--bg-primary)}.sidebar{background:linear-gradient(180deg,color-mix(in srgb,var(--bg-secondary) 94%,var(--accent-primary)) 0%,var(--bg-secondary) 22%);box-shadow:1px 0 0 var(--border-color),var(--shadow)}.sidebar-header{border-bottom:1px solid var(--border-color);background:linear-gradient(180deg,rgba(var(--accent-rgb),.06),transparent)}.nav-group-label{font-weight:800}.nav-item{border-radius:var(--radius-md);font-weight:600}.nav-item:hover{transform:translate(2px)}.nav-item.active{background:linear-gradient(135deg,rgba(var(--accent-rgb),.16),rgba(var(--accent-rgb),.06));box-shadow:inset 0 0 0 1px rgba(var(--accent-rgb),.16)}.nav-item.active:before{height:60%;width:3px;box-shadow:0 0 12px rgba(var(--accent-rgb),.6)}.nav-item.active .nav-icon{background:rgba(var(--accent-rgb),.14);border-radius:var(--radius-sm)}.sidebar-profile-avatar{box-shadow:0 4px 12px rgba(var(--accent-rgb),.35),inset 0 0 0 2px #ffffff2e}.sidebar-profile{border:1px solid transparent}.sidebar-profile:hover{border-color:var(--border-color);box-shadow:var(--shadow)}.toggle-icon svg{transition:transform .3s var(--ease-out)}@media (max-width: 992px){.sidebar.open{transform:translate(0)!important;box-shadow:var(--shadow-pop)}[data-sidebar-pos=right] .sidebar.open{transform:translate(0)!important}}.sidebar-overlay.show{display:block;opacity:1;visibility:visible}.header{padding-bottom:16px;border-bottom:1px solid var(--border-color);backdrop-filter:saturate(1.3) blur(8px);-webkit-backdrop-filter:saturate(1.3) blur(8px)}.page-title{background:linear-gradient(120deg,var(--accent-primary),color-mix(in srgb,var(--accent-primary) 55%,var(--text-primary)));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}[data-theme=dark] .page-title{background:linear-gradient(120deg,color-mix(in srgb,var(--accent-primary) 60%,#ffffff),#fff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.icon-btn:hover{transform:translateY(-1px);box-shadow:var(--shadow)}[data-tooltip]:after{background:var(--bg-card);color:var(--text-primary);border:1px solid var(--border-color);box-shadow:var(--shadow-pop)}.section-card,.kpi-card,.chart-card,.config-card,.report-table-card-standalone,.report-chart-card-standalone,.ctr-chart-card,.ctr-table-card,.ven-marca-chart-card,.ven-marca-table-card{background:linear-gradient(180deg,var(--bg-card),color-mix(in srgb,var(--bg-card) 93%,var(--accent-primary)));box-shadow:inset 0 1px rgba(var(--accent-rgb),.1),var(--shadow);border-color:var(--border-color)}.section-card{border:1px solid var(--border-color);border-radius:var(--radius-lg)}.section-card:hover,.kpi-card:hover,.chart-card:hover{transform:translateY(-2px);box-shadow:inset 0 1px rgba(var(--accent-rgb),.14),var(--shadow-lg);border-color:color-mix(in srgb,var(--accent-primary) 35%,var(--border-color))}.section-card>h3,.config-card-title{position:relative;padding-left:14px}.section-card>h3:before,.config-card-title:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:4px;height:1em;border-radius:999px;background:linear-gradient(var(--accent-primary),var(--accent-primary-dark))}.kpi-card{position:relative;overflow:hidden}.kpi-card:after{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--accent-primary),color-mix(in srgb,var(--accent-primary) 40%,transparent))}.kpi-card .kpi-icon{box-shadow:inset 0 0 0 1px rgba(var(--accent-rgb),.12)}.kpi-icon.green{background:var(--accent-green-soft);color:var(--accent-green)}.kpi-icon.orange{background:var(--accent-orange-soft);color:var(--accent-orange)}.kpi-icon.purple{background:var(--accent-purple-soft);color:var(--accent-purple)}.kpi-value{font-size:var(--fs-2xl);font-weight:800}.dashboard-charts{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:20px}.chart-box{height:var(--chart-h);position:relative}.table-container,.table-scroll{border-radius:var(--radius-lg)}.data-table thead th{background:linear-gradient(180deg,var(--accent-primary),var(--accent-primary-dark));letter-spacing:.06em}.data-table tbody tr:nth-child(2n) td{background:color-mix(in srgb,var(--bg-hover) 55%,transparent)}.data-table tbody tr:hover td{background:var(--accent-primary-light)}.data-table td.currency,.data-table td .currency{text-align:right}.data-table tfoot tr.sviluppo-totals-row td{background:linear-gradient(180deg,var(--accent-primary-light),transparent)}.data-table tbody td:not([contenteditable]):empty:after{content:"—";color:var(--text-muted)}.btn-primary,.btn-save,.btn-export,.login-submit{background:linear-gradient(135deg,color-mix(in srgb,var(--accent-primary) 88%,#ffffff 6%),var(--accent-primary-dark));box-shadow:0 6px 16px rgba(var(--accent-rgb),.28);border:none}.btn-primary:hover,.btn-save:hover,.btn-export:hover{transform:translateY(-1px);box-shadow:0 10px 22px rgba(var(--accent-rgb),.38);filter:saturate(1.05)}.btn-primary:active,.btn-save:active,.btn-export:active,.btn-secondary:active,.login-submit:active{transform:translateY(0) scale(.985)}.btn-primary:disabled,.login-submit:disabled{filter:grayscale(.2);box-shadow:none}.btn-secondary{background:var(--bg-card);border:1px solid var(--border-color);display:inline-flex;align-items:center;gap:6px}.toolbar-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.btn-secondary:hover{border-color:var(--accent-primary);color:var(--accent-primary);background:var(--accent-primary-light)}.btn-icon{border-radius:var(--radius-md);transition:var(--transition-fast);display:inline-flex;vertical-align:middle;margin-right:4px}.btn-icon:hover{transform:translateY(-1px) scale(1.06)}.btn-icon.edit:hover{background:var(--accent-primary-light)}.btn-icon.delete:hover{background:var(--accent-red-soft)}.type-badge,.note-badge,.badge-pill,.venditore-badge{border:1px solid color-mix(in srgb,currentColor 22%,transparent)}.badge-pill.sa{background:linear-gradient(135deg,var(--accent-primary),var(--accent-primary-dark));color:#fff;border-color:transparent}.note-badge.note-pending{background:var(--accent-yellow-soft);color:#a16207}.filter-chip.active{box-shadow:0 4px 12px rgba(var(--accent-rgb),.3)}.form-group input,.form-group select,.form-group textarea,.login-field input,.config-add-form input,.config-add-form select{background:var(--bg-card);transition:var(--transition-fast)}.form-group input:hover,.form-group select:hover,.form-group textarea:hover{border-color:var(--border-strong)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus,.login-field input:focus{box-shadow:0 0 0 3px var(--accent-primary-light)}input:disabled,select:disabled,textarea:disabled{background:var(--bg-hover);color:var(--text-muted);cursor:not-allowed;opacity:.9}.page-toolbar input,.page-toolbar select,.filters-bar input,.filters-bar select{background:var(--bg-card)!important;color:var(--text-primary)!important;border:1px solid var(--border-color)!important;border-radius:var(--radius-md)!important;transition:var(--transition-fast)}.page-toolbar input:focus,.page-toolbar select:focus,.filters-bar input:focus,.filters-bar select:focus{border-color:var(--accent-primary)!important;box-shadow:0 0 0 3px var(--accent-primary-light)!important;outline:none}.page-toolbar p,.page-toolbar>span{color:var(--text-secondary)!important}.modal-overlay{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:var(--bg-overlay)}.modal{border-radius:var(--radius-lg);box-shadow:var(--shadow-pop)}.modal-header{background:linear-gradient(135deg,var(--accent-primary),var(--accent-primary-dark))}.modal-close{width:34px;height:34px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;transition:var(--transition-fast)}.modal-close:hover{background:#ffffff2e;transform:rotate(90deg)}.settings-drawer{border-top-left-radius:var(--radius-lg);border-bottom-left-radius:var(--radius-lg)}.settings-drawer-overlay{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.color-swatch{width:30px;height:30px}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:180px;color:var(--text-secondary)}.empty-state:before{content:"";width:52px;height:52px;margin-bottom:6px;border-radius:50%;background:radial-gradient(circle at 50% 45%,var(--accent-primary-light),transparent 70%),var(--bg-hover);box-shadow:inset 0 0 0 1px var(--border-color)}.login-split-media{background-color:var(--accent-primary-dark)}.login-media-overlay{background:radial-gradient(800px 400px at 80% 10%,rgba(255,255,255,.16),transparent 60%),linear-gradient(150deg,#143a6dd1,#0f274799 45%,#0b1a30e6)}.login-form-inner{background:var(--bg-card);padding:36px 34px;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);border:1px solid var(--border-color)}.login-submit{background:linear-gradient(135deg,#1e5aa8 0%,var(--accent-primary) 100%)}.login-submit:hover{transform:translateY(-1px)}.login-error{animation:shake-in .3s var(--ease-out)}@keyframes shake-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}[data-theme=dark] .login-split{background:var(--bg-primary)}[data-theme=dark] .login-title{color:var(--text-primary);-webkit-text-fill-color:initial;background:none}[data-theme=dark] .login-subtitle,[data-theme=dark] .login-field label{color:var(--text-secondary)}[data-theme=dark] .login-field input{background:var(--bg-elevated);color:var(--text-primary);border-color:var(--border-color)}*::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--accent-primary) 30%,var(--border-strong));border-radius:999px;border:2px solid transparent;background-clip:padding-box}*::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--accent-primary) 55%,var(--border-strong));background-clip:padding-box}.section-card{padding:var(--density-card)}.kpi-grid,.users-grid,.summary-strip{gap:var(--density-gap)}:root:not([data-motion=reduced]) .kpi-grid>.kpi-card{animation:rise-in .4s var(--ease-out) both}:root:not([data-motion=reduced]) .kpi-grid>.kpi-card:nth-child(2){animation-delay:.05s}:root:not([data-motion=reduced]) .kpi-grid>.kpi-card:nth-child(3){animation-delay:.1s}:root:not([data-motion=reduced]) .kpi-grid>.kpi-card:nth-child(4){animation-delay:.15s}@keyframes rise-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}[data-theme=dark] .data-table thead th{background:linear-gradient(180deg,var(--bg-elevated),color-mix(in srgb,var(--bg-elevated) 80%,#000));color:var(--text-primary)}[data-theme=dark] .modal-header{background:linear-gradient(135deg,color-mix(in srgb,var(--accent-primary) 70%,#000),var(--accent-primary-dark))}[data-theme=dark] .btn-secondary{background:var(--bg-elevated)}[data-theme=dark] .login-form-inner{background:var(--bg-secondary)}.company-link{font-weight:600}.ac-wrap{position:relative}.ac-wrap>input{width:100%}.ac-list{position:absolute;z-index:60;top:calc(100% + 4px);left:0;right:0;margin:0;padding:4px;list-style:none;max-height:264px;overflow-y:auto;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-pop);animation:rise-in .14s var(--ease-out)}.ac-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;border-radius:var(--radius-sm);cursor:pointer;font-size:var(--fs-sm)}.ac-item.active,.ac-item:hover{background:var(--accent-primary-light)}.ac-name{font-weight:600;color:var(--text-primary)}.ac-meta{font-size:var(--fs-xs);color:var(--text-muted);white-space:nowrap}.tipo-select{display:flex;align-items:stretch}.tipo-select>input{flex:1;border-top-right-radius:0;border-bottom-right-radius:0}.tipo-select-toggle{flex-shrink:0;padding:0 10px;border:1px solid var(--border-color);border-left:none;border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:var(--bg-elevated);cursor:pointer;color:var(--text-muted);font-size:1.1em;line-height:1}.tipo-select-toggle:hover{background:var(--accent-primary-light);color:var(--text-primary)}.ac-item-new .ac-name{font-style:italic}kbd{display:inline-block;min-width:18px;padding:2px 7px;font-family:var(--font-display),monospace;font-size:.82em;font-weight:700;line-height:1.5;text-align:center;color:var(--text-primary);background:var(--bg-hover);border:1px solid var(--border-color);border-bottom-width:2px;border-radius:6px;box-shadow:0 1px #0000000a}.onboarding-banner kbd{background:var(--bg-secondary)}.search-overlay-input::placeholder{color:var(--text-muted)}.search-result-item.focused{outline:none}.dash-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:18px}.dash-toolbar .spacer{margin-left:auto}.dash-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--density-gap);align-items:stretch}.dash-widget{position:relative;min-width:0;display:flex}.dash-widget>*{width:100%}.dash-widget.size-sm{grid-column:span 1}.dash-widget.size-md,.dash-widget.size-lg{grid-column:span 2}@media (max-width: 1200px){.dash-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 680px){.dash-grid{grid-template-columns:1fr}.dash-widget{grid-column:span 1!important}}.dash-edit .dash-widget:before{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border:2px dashed color-mix(in srgb,var(--accent-primary) 45%,var(--border-strong));border-radius:calc(var(--radius-lg) + 4px);pointer-events:none;z-index:1}.dash-widget-controls{position:absolute;top:6px;right:6px;display:flex;gap:4px;z-index:3}.dash-widget-controls button{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-secondary);cursor:pointer;font-size:15px;line-height:1;box-shadow:var(--shadow);transition:var(--transition-fast)}.dash-widget-controls button:hover{color:var(--accent-primary);border-color:var(--accent-primary)}.dash-widget-controls button.danger:hover{color:var(--accent-red);border-color:var(--accent-red);background:var(--accent-red-soft)}.quicklinks-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}.quicklink{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-primary);cursor:pointer;font-weight:600;transition:var(--transition-fast);text-align:left}.quicklink:hover{border-color:var(--accent-primary);color:var(--accent-primary);transform:translateY(-2px);box-shadow:var(--shadow)}.quicklink .ql-icon{width:36px;height:36px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);background:var(--accent-primary-light);color:var(--accent-primary)}.quicklink .ql-icon svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:2}.note-widget textarea{width:100%;min-height:120px;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-card);color:var(--text-primary);padding:12px 14px;font-family:inherit;font-size:var(--fs-base);resize:vertical}.shortcut-widget{display:flex;flex-direction:column;gap:8px;align-items:flex-start;justify-content:center;cursor:pointer}.shortcut-widget .sc-icon{width:48px;height:48px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-md);background:var(--accent-primary-light);color:var(--accent-primary)}.shortcut-widget .sc-icon svg{width:26px;height:26px;stroke:currentColor;fill:none;stroke-width:2}.shortcut-widget:hover{border-color:var(--accent-primary)}.widget-picker-group{margin-bottom:18px}.widget-picker-group h4{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:1px;color:var(--text-muted);margin-bottom:10px;font-weight:700}.widget-picker-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}.widget-picker-item{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-card);cursor:pointer;transition:var(--transition-fast);text-align:left}.widget-picker-item:hover:not(:disabled){border-color:var(--accent-primary);transform:translateY(-2px);box-shadow:var(--shadow)}.widget-picker-item:disabled{opacity:.5;cursor:default}.widget-picker-item .wp-icon{width:38px;height:38px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);background:var(--accent-primary-light);color:var(--accent-primary)}.widget-picker-item .wp-icon svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:2}.widget-picker-item .wp-title{font-weight:600;color:var(--text-primary);font-size:var(--fs-sm)}.widget-picker-item .wp-desc{font-size:var(--fs-xs);color:var(--text-muted)}.dash-empty{border:2px dashed var(--border-color);border-radius:var(--radius-lg);padding:48px 24px;text-align:center;color:var(--text-secondary)}:root{--radius-sm: 7px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 18px;--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--ease-snappy: cubic-bezier(.6, .05, .01, .9);--ease-glide: cubic-bezier(.25, .46, .45, .94);--ease-out: cubic-bezier(.16, 1, .3, 1);--shadow-xs: 0 1px 2px rgba(var(--accent-rgb), .06);--shadow: 0 1px 2px rgba(var(--accent-rgb), .05), 0 4px 12px rgba(var(--accent-rgb), .08);--shadow-lg: 0 2px 6px rgba(var(--accent-rgb), .06), 0 8px 24px rgba(var(--accent-rgb), .1), 0 1px 0 rgba(255,255,255,.6) inset;--shadow-pop: 0 4px 12px rgba(var(--accent-rgb), .1), 0 16px 48px rgba(var(--accent-rgb), .18), 0 1px 0 rgba(255,255,255,.5) inset;--ring: 0 0 0 3px color-mix(in srgb, var(--accent-primary) 22%, transparent);--accent-gradient: linear-gradient(135deg, color-mix(in srgb, var(--accent-primary) 92%, #fff 8%), var(--accent-primary-dark));--glass-bg: color-mix(in srgb, var(--bg-card) 72%, transparent);--glass-border: rgba(255,255,255,.5);--hairline: color-mix(in srgb, var(--accent-primary) 8%, var(--border-color));--transition: all .22s var(--ease-glide);--transition-fast: all .15s var(--ease-glide);--transition-slow: all .4s var(--ease-glide);color-scheme:light}[data-theme=dark]{--shadow-xs: 0 1px 2px rgba(0,0,0,.3);--shadow: 0 1px 2px rgba(0,0,0,.3), 0 4px 14px rgba(0,0,0,.36);--shadow-lg: 0 2px 6px rgba(0,0,0,.36), 0 10px 30px rgba(0,0,0,.46), 0 1px 0 rgba(255,255,255,.05) inset;--shadow-pop: 0 8px 28px rgba(0,0,0,.5), 0 24px 60px rgba(0,0,0,.55), 0 1px 0 rgba(255,255,255,.06) inset;--ring: 0 0 0 3px color-mix(in srgb, var(--accent-primary) 40%, transparent);--glass-bg: color-mix(in srgb, var(--bg-secondary) 78%, transparent);--glass-border: rgba(255,255,255,.08);--hairline: rgba(255,255,255,.07);color-scheme:dark}.main-content{background:radial-gradient(1100px 520px at 100% -8%,rgba(var(--accent-rgb),.06),transparent 60%),radial-gradient(900px 480px at -8% 4%,rgba(var(--accent-rgb),.04),transparent 55%),var(--bg-primary);background-attachment:fixed,fixed,scroll}[data-theme=dark] .main-content{background:radial-gradient(1100px 520px at 100% -8%,rgba(var(--accent-rgb),.16),transparent 60%),radial-gradient(900px 480px at -8% 4%,rgba(var(--accent-rgb),.1),transparent 55%),var(--bg-primary);background-attachment:fixed,fixed,scroll}.section-card,.kpi-card,.chart-card,.config-card,.report-table-card-standalone,.report-chart-card-standalone,.ctr-chart-card,.ctr-table-card,.ven-marca-chart-card,.ven-marca-table-card{background:linear-gradient(180deg,var(--bg-card),color-mix(in srgb,var(--bg-card) 96%,var(--accent-primary)));border:1px solid var(--hairline);box-shadow:var(--shadow);transition:transform .3s var(--ease-spring),box-shadow .3s var(--ease-out),border-color .3s var(--ease-out)}.kpi-card:hover{transform:translateY(-3px) scale(1.006);box-shadow:var(--shadow-lg);border-color:color-mix(in srgb,var(--accent-primary) 30%,var(--hairline))}.section-card:hover,.chart-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg);border-color:color-mix(in srgb,var(--accent-primary) 30%,var(--hairline))}.kpi-card:after{height:2px;background:linear-gradient(90deg,var(--accent-primary),color-mix(in srgb,var(--accent-primary) 30%,transparent) 70%,transparent)}.dash-widget>.kpi-card,.dash-widget>.section-card,.dash-widget>.chart-card{height:100%}.kpi-value,.summary-tile-value{font-weight:600;letter-spacing:-.015em;font-variant-numeric:tabular-nums lining-nums;line-height:1.1}.kpi-label{font-size:var(--fs-sm);font-weight:500;letter-spacing:.02em;color:var(--text-secondary)}.kpi-card .kpi-icon{box-shadow:inset 0 0 0 1px rgba(var(--accent-rgb),.1);border-radius:var(--radius-md)}.sidebar{background:linear-gradient(180deg,color-mix(in srgb,var(--bg-secondary) 92%,var(--accent-primary)) 0%,var(--bg-secondary) 26%);border-right:1px solid var(--hairline);box-shadow:var(--shadow-xs)}.nav-item{border-radius:var(--radius-md);font-weight:600;transition:background .22s var(--ease-glide),color .22s var(--ease-glide),transform .22s var(--ease-spring)}.nav-item:hover{transform:translate(3px)}.nav-item.active{background:linear-gradient(135deg,rgba(var(--accent-rgb),.18),rgba(var(--accent-rgb),.05));box-shadow:inset 0 0 0 1px rgba(var(--accent-rgb),.18)}.nav-item.active:before{height:56%;width:3px;border-radius:999px;box-shadow:0 0 14px rgba(var(--accent-rgb),.55)}.nav-group-label{font-weight:700;letter-spacing:.08em}.header{background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;border-bottom:1px solid var(--border-color);padding-bottom:16px}.icon-btn{border-radius:var(--radius-md);transition:background .18s var(--ease-glide),color .18s var(--ease-glide),transform .18s var(--ease-spring),box-shadow .18s var(--ease-out)}.icon-btn:hover{transform:translateY(-1px);box-shadow:var(--shadow-xs)}.btn-primary,.btn-save,.btn-export,.login-submit{background:var(--accent-gradient);border:1px solid color-mix(in srgb,var(--accent-primary-dark) 60%,transparent);box-shadow:0 1px #ffffff2e inset,0 4px 12px rgba(var(--accent-rgb),.24);border-radius:var(--radius-md);transition:transform .16s var(--ease-snappy),box-shadow .22s var(--ease-out),filter .22s var(--ease-out)}.btn-primary:hover,.btn-save:hover,.btn-export:hover{transform:translateY(-2px);box-shadow:0 1px #ffffff38 inset,0 8px 22px rgba(var(--accent-rgb),.34)}.btn-primary:active,.btn-save:active,.btn-export:active,.btn-secondary:active,.login-submit:active{transform:translateY(0) scale(.97);transition-duration:.08s}.btn-secondary{border-radius:var(--radius-md);background:var(--bg-card);border:1px solid var(--border-color)}.btn-secondary:hover{border-color:color-mix(in srgb,var(--accent-primary) 50%,var(--border-color));background:var(--accent-primary-light);box-shadow:var(--shadow-xs)}.btn-icon:hover{transform:translateY(-1px) scale(1.08)}.table-container,.table-scroll{border-radius:var(--radius-lg);border:1px solid var(--hairline);box-shadow:var(--shadow-xs);overflow:hidden}.data-table thead th{background:color-mix(in srgb,var(--bg-card) 92%,var(--accent-primary));color:var(--text-secondary);font-size:var(--fs-xs);font-weight:600;letter-spacing:.05em;text-transform:uppercase;border-bottom:1px solid var(--hairline);box-shadow:0 1px 0 var(--hairline)}.data-table thead th:hover{background:color-mix(in srgb,var(--bg-card) 86%,var(--accent-primary));color:var(--text-primary)}.data-table thead th.sorted-asc:after,.data-table thead th.sorted-desc:after{color:var(--accent-primary)}.data-table tbody td{font-variant-numeric:tabular-nums lining-nums;border-bottom:1px solid color-mix(in srgb,var(--border-color) 55%,transparent)}.data-table tbody tr:nth-child(2n) td{background:color-mix(in srgb,var(--bg-hover) 40%,transparent)}.data-table tbody tr:hover td{background:color-mix(in srgb,var(--accent-primary) 6%,transparent);transition:background .15s var(--ease-glide)}[data-theme=dark] .data-table thead th{background:color-mix(in srgb,var(--bg-elevated) 88%,var(--accent-primary));color:var(--text-secondary);border-bottom:1px solid rgba(255,255,255,.06)}.report-table-excel.data-table thead th{background:var(--accent-primary-light);color:var(--accent-primary)}.modal-overlay{background:color-mix(in srgb,var(--bg-overlay) 86%,transparent);-webkit-backdrop-filter:blur(12px) saturate(1.1);backdrop-filter:blur(12px) saturate(1.1)}.modal{border-radius:var(--radius-lg);border:1px solid var(--glass-border);box-shadow:var(--shadow-pop);animation:modal-pop .34s var(--ease-spring) both}@keyframes modal-pop{0%{opacity:0;transform:translateY(10px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{background:linear-gradient(135deg,color-mix(in srgb,var(--bg-card) 86%,var(--accent-primary)),var(--bg-card));border-bottom:1px solid var(--hairline)}.modal-header h2{color:var(--text-primary)}.modal-close{color:var(--text-secondary)}.modal-close:hover{color:var(--text-primary);background:var(--accent-primary-light);transform:rotate(90deg)}[data-theme=dark] .modal-header{background:linear-gradient(135deg,color-mix(in srgb,var(--bg-elevated) 82%,var(--accent-primary)),var(--bg-elevated))}.settings-drawer{background:var(--glass-bg);-webkit-backdrop-filter:blur(18px) saturate(1.3);backdrop-filter:blur(18px) saturate(1.3);border-left:1px solid var(--glass-border);box-shadow:var(--shadow-pop);transition:transform .38s var(--ease-spring)}.settings-drawer-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.settings-drawer-header{border-bottom:1px solid var(--hairline)}.segmented button{transition:color .2s var(--ease-glide),background .25s var(--ease-spring)}.segmented button.active{box-shadow:var(--shadow-xs)}.search-overlay{background:color-mix(in srgb,var(--bg-overlay) 80%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.search-overlay-box{background:var(--glass-bg);-webkit-backdrop-filter:blur(22px) saturate(1.4);backdrop-filter:blur(22px) saturate(1.4);border:1px solid var(--glass-border);box-shadow:var(--shadow-pop)}.search-overlay-input{font-weight:500;border-bottom:1px solid var(--hairline)}.search-result-item:hover,.search-result-item.focused{background:color-mix(in srgb,var(--accent-primary) 8%,transparent)}.search-result-item.focused{box-shadow:inset 0 0 0 1px rgba(var(--accent-rgb),.18)}.quicklink{border-radius:var(--radius-md);border:1px solid var(--hairline);transition:transform .24s var(--ease-spring),border-color .24s var(--ease-out),box-shadow .24s var(--ease-out),color .24s var(--ease-out)}.quicklink:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--accent-primary) 45%,var(--hairline));box-shadow:var(--shadow)}.quicklink .ql-icon{box-shadow:inset 0 0 0 1px rgba(var(--accent-rgb),.1)}.type-badge,.note-badge,.badge-pill,.venditore-badge{border-radius:var(--radius-pill);font-weight:600;letter-spacing:.01em;border:1px solid color-mix(in srgb,currentColor 20%,transparent)}.badge-pill.sa{background:var(--accent-gradient)}.filter-chip{border-radius:var(--radius-pill);transition:var(--transition-fast)}.filter-chip.active{background:var(--accent-gradient);box-shadow:0 2px 8px rgba(var(--accent-rgb),.28)}.form-group input,.form-group select,.form-group textarea,.login-field input,.config-add-form input,.config-add-form select,.note-widget textarea,.ac-wrap>input,.report-edit-input{border-radius:var(--radius-sm);transition:border-color .18s var(--ease-out),box-shadow .18s var(--ease-out),background .18s var(--ease-out)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus,.login-field input:focus,.note-widget textarea:focus,.ac-wrap>input:focus{border-color:var(--accent-primary);box-shadow:var(--ring);outline:none}.page-toolbar input:focus,.page-toolbar select:focus,.filters-bar input:focus,.filters-bar select:focus{box-shadow:var(--ring)!important}.btn-primary:focus-visible,.btn-secondary:focus-visible,.icon-btn:focus-visible,.nav-item:focus-visible,.quicklink:focus-visible,.filter-chip:focus-visible{outline:none;box-shadow:var(--ring)}:root:not([data-motion=reduced]) .kpi-grid>.kpi-card,:root:not([data-motion=reduced]) .dash-grid>.dash-widget{animation:rise-in-spring .5s var(--ease-spring) both}:root:not([data-motion=reduced]) .kpi-grid>.kpi-card:nth-child(2),:root:not([data-motion=reduced]) .dash-grid>.dash-widget:nth-child(2){animation-delay:.06s}:root:not([data-motion=reduced]) .kpi-grid>.kpi-card:nth-child(3),:root:not([data-motion=reduced]) .dash-grid>.dash-widget:nth-child(3){animation-delay:.12s}:root:not([data-motion=reduced]) .kpi-grid>.kpi-card:nth-child(4),:root:not([data-motion=reduced]) .dash-grid>.dash-widget:nth-child(4){animation-delay:.18s}@keyframes rise-in-spring{0%{opacity:0;transform:translateY(16px);filter:blur(3px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}:root:not([data-motion=reduced]) .dashboard-charts>.section-card{animation:rise-in .45s var(--ease-out) both}:root:not([data-motion=reduced]) .dashboard-charts>.section-card:nth-child(2){animation-delay:.08s}.filters-bar{align-items:flex-end;gap:12px}.filter-group{gap:6px}.filter-group label{font-size:var(--fs-xs);font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary)}.filters-bar select,.filters-bar input,.filters-bar .filter-group select,.filters-bar .filter-group input,.filter-group select,.filter-group input{height:40px;min-width:180px;padding:0 14px;border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-primary);font-size:var(--fs-sm);line-height:normal;box-sizing:border-box}.filters-bar select:focus,.filters-bar input:focus,.filter-group select:focus,.filter-group input:focus{border-color:var(--accent-primary);box-shadow:var(--ring);outline:none}@media (max-width: 768px){.filters-bar select,.filters-bar input,.filter-group select,.filter-group input{width:100%;min-width:0}}#forecastTable input.forecast-edit{width:100%;min-width:52px;border:1px solid transparent;background:transparent;text-align:right;padding:5px 6px;border-radius:var(--radius-sm);font-variant-numeric:tabular-nums;color:var(--text-primary);font-size:var(--fs-sm)}#forecastTable input.forecast-edit:hover{background:var(--bg-hover)}#forecastTable input.forecast-edit:focus{outline:none;border-color:var(--accent-primary);background:var(--bg-card);box-shadow:var(--ring)}#forecastTable td.forecast-computed{background:rgba(var(--accent-rgb),.07);color:var(--text-primary)}#forecastTable td.forecast-computed.delta-positive{background:var(--accent-green-soft);color:var(--accent-green)}#forecastTable td.forecast-computed.delta-negative{background:var(--accent-red-soft);color:var(--accent-red)}#forecastTable thead th{white-space:nowrap}.dash-edit .dash-widget{cursor:grab}.dash-edit .dash-widget:active{cursor:grabbing}.dash-widget.dragging{opacity:.4}.dash-widget.drag-over{outline:2px dashed var(--accent-primary);outline-offset:4px;border-radius:var(--radius-lg)}.dash-grip{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-muted);cursor:grab;font-size:14px;line-height:1;box-shadow:var(--shadow-xs)}.dash-grip:active{cursor:grabbing}.data-table thead th{background:#143a6d!important;color:#fff!important;border-bottom:1px solid #0e2a4f!important;box-shadow:0 1px #0e2a4f}.data-table thead th:hover{background:#0e2a4f!important;color:#fff!important}.data-table thead th.sorted-asc:after,.data-table thead th.sorted-desc:after{color:#fff!important}[data-theme=dark] .data-table thead th,.report-table-excel.data-table thead th{background:#143a6d!important;color:#fff!important}.data-table thead th.th-currency{text-align:right}.delta-hint{font-size:12px;color:var(--text-muted);margin-top:4px}.prod-centered thead th,.prod-centered tbody td,.prod-centered tfoot td,.prod-centered td.currency{text-align:center}.prod-centered thead th:first-child,.prod-centered tbody td:first-child,.prod-centered tfoot td:first-child{text-align:left}.table-scroll{overflow:auto;max-height:calc(100vh - 230px);border:1px solid var(--hairline, #dbe3ef);border-radius:14px;background:var(--bg-card, #fff);box-shadow:0 1px 2px #102a4f0f,0 8px 24px #102a4f0d;scrollbar-width:thin;scrollbar-color:#9fb2cf transparent}.table-scroll::-webkit-scrollbar{width:13px;height:13px}.table-scroll::-webkit-scrollbar-track{background:#eef2f8;border-radius:10px}.table-scroll::-webkit-scrollbar-thumb{background:#b3c3db;border-radius:10px;border:3px solid #eef2f8}.table-scroll::-webkit-scrollbar-thumb:hover{background:#8aa0bf}.table-scroll::-webkit-scrollbar-corner{background:#eef2f8}.data-table{border-collapse:separate;border-spacing:0}.data-table thead th{position:sticky;top:0;z-index:6;box-shadow:inset 0 -1px #0e2a4f,0 2px 6px #102a4f2e}.data-table thead tr:nth-child(2) th{top:41px}.data-table th,.data-table td{padding:11px 14px;vertical-align:middle}.data-table tbody td{border-bottom:1px solid color-mix(in srgb,var(--hairline, #dbe3ef) 70%,transparent)}.data-table tbody tr{transition:background-color .12s ease}.data-table tbody tr:hover td{background:color-mix(in srgb,var(--accent-primary, #143a6d) 9%,var(--bg-card, #fff))}.data-table tbody tr:last-child td{border-bottom:none}.data-table tfoot td{border-top:2px solid color-mix(in srgb,var(--accent-primary, #143a6d) 35%,transparent);font-weight:700}.data-table tbody tr td.empty-state{background:transparent}[data-theme=dark] .table-scroll{border-color:#1f3354;background:var(--bg-card, #0f1b2d);scrollbar-color:#3a4f72 transparent}[data-theme=dark] .table-scroll::-webkit-scrollbar-track,[data-theme=dark] .table-scroll::-webkit-scrollbar-corner{background:#16263f}[data-theme=dark] .table-scroll::-webkit-scrollbar-thumb{background:#3a4f72;border-color:#16263f}[data-theme=dark] .data-table tbody tr:hover td{background:color-mix(in srgb,var(--accent-primary, #143a6d) 22%,var(--bg-card, #0f1b2d))}.tablepage{position:relative}.tablepage .table-scroll{max-height:calc(100vh - 130px);margin:0}.table-fab{position:fixed;top:18px;right:264px;width:58px;height:58px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;border:none;cursor:pointer;background:var(--accent-primary, #143a6d);color:var(--text-on-accent, #fff);box-shadow:0 10px 28px rgba(var(--accent-rgb, 20 58 109),.42),0 2px 6px #102a4f3d;z-index:70;transition:transform .14s ease,box-shadow .14s ease}.table-fab:hover{transform:translateY(-2px) scale(1.05)}.table-fab:active{transform:scale(.94)}.table-fab svg{width:25px;height:25px}.page-tools-slot{display:flex;align-items:center;margin-right:6px}.page-tools-slot:empty{display:none}.table-fab.table-fab-docked{position:relative;width:42px;height:42px;border-radius:var(--radius-md, 10px);box-shadow:0 4px 12px rgba(var(--accent-rgb, 20 58 109),.28)}.table-fab.table-fab-docked:hover{transform:translateY(-1px)}.table-fab.table-fab-docked svg{width:20px;height:20px}.table-fab.table-fab-docked .table-fab-badge{top:-7px;right:-7px;min-width:19px;height:19px;line-height:15px;font-size:10px}.table-fab-badge{position:absolute;top:-6px;right:-6px;min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:var(--bg-card, #fff);color:var(--accent-primary, #143a6d);border:2px solid var(--accent-primary, #143a6d);font-size:11px;font-weight:800;line-height:18px;text-align:center;box-shadow:0 2px 6px #102a4f33}@media (max-width: 992px){.table-fab:not(.table-fab-docked){top:auto;right:20px;bottom:calc(84px + env(safe-area-inset-bottom))}.table-fab.table-fab-docked{width:38px;height:38px}.tablepage .table-scroll{max-height:calc(100vh - 190px)}}.tools-note{margin:0 0 14px;padding:10px 12px;border-radius:10px;background:color-mix(in srgb,var(--accent-primary, #143a6d) 8%,var(--bg-card, #fff));color:var(--text-secondary, #4b5563);font-size:13px;line-height:1.5}.tools-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-top:4px}.tools-filters .filter-group{display:flex;flex-direction:column;gap:5px;margin:0}.tools-filters .filter-group label{font-size:12px;font-weight:600;color:var(--text-secondary, #4b5563)}.tools-filters .filter-group select,.tools-filters .filter-group input{width:100%}.tools-extra{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.tools-count{margin:16px 0 0;color:var(--text-muted, #6b7280);font-size:13px}body.tablepage-full{overflow:hidden}body.tablepage-full .main-content{height:100vh;height:100dvh;min-height:0;display:flex;flex-direction:column;overflow:hidden;padding:24px 0 0}body.tablepage-full .header{flex:0 0 auto;margin:0 24px 18px}body.tablepage-full .page-body{flex:1 1 auto;min-height:0;display:flex;padding:0 24px 24px}.tablepage-fill{flex:1 1 auto;min-width:0;display:flex;flex-direction:column}.tablepage-fill .table-scroll{flex:1 1 auto;min-height:0;max-height:none;width:100%}@media (max-width: 992px){body.tablepage-full .main-content{padding:16px 0 0}body.tablepage-full .header{margin:0 14px 12px}body.tablepage-full .page-body{padding:0 14px 14px}body.tablepage-full .table-fab:not(.table-fab-docked){bottom:calc(24px + env(safe-area-inset-bottom))}}:root{--xl-line: #d6dde8;--xl-line-strong: #b7c2d3;--xl-cell: #ffffff;--xl-cell-alt: #f7f9fc;--xl-hover: #e9f0fb;--xl-sel-bg: rgba(20, 58, 109, .14);--xl-focus: #143a6d;--xl-head-bg: #143a6d;--xl-head-fg: #ffffff;--xl-head-active: #0b2749;--xl-head-active-fg: #ffffff;--xl-gutter: 38px;--xl-gutter-bg: #eef1f7;--xl-gutter-fg: #6b7a90;--xl-canvas: #f2f5f9;--xl-pad-y: 4px;--xl-pad-x: 9px;--xl-font: 12.5px;--xl-head-font: 11.5px;--xl-sb: 14px}[data-density=compact]{--xl-pad-y: 2px;--xl-pad-x: 7px;--xl-font: 12px;--xl-gutter: 34px}[data-density=comfy]{--xl-pad-y: 8px;--xl-pad-x: 13px;--xl-font: 13.5px;--xl-gutter: 42px}[data-theme=dark]{--xl-line: #24344f;--xl-line-strong: #3a4d70;--xl-cell: #101c2e;--xl-cell-alt: #13202f;--xl-hover: #1a2b45;--xl-sel-bg: rgba(96, 152, 233, .22);--xl-focus: #6aa6ff;--xl-gutter-bg: #17253a;--xl-gutter-fg: #8ea3bf;--xl-canvas: #0b1626}.page-body{padding-left:28px;padding-right:28px;--xl-bleed: 28px}.section-card{--xl-bleed: var(--density-card, 24px)}.report-table-card-standalone{--xl-bleed: 14px}.config-card{--xl-bleed: 16px}.table-scroll,.table-container,.report-table-card-standalone .report-table-card-inner{overflow:auto!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:var(--xl-canvas)!important;padding:0!important;margin-left:calc(-1 * var(--xl-bleed, 0px));margin-right:calc(-1 * var(--xl-bleed, 0px));width:auto;max-width:none;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-width:auto;scrollbar-color:#9aabc4 var(--xl-canvas)}.section-card>.table-scroll:last-child,.config-card>.table-scroll:last-child{margin-bottom:calc(-1 * var(--xl-bleed, 0px));border-bottom-left-radius:inherit;border-bottom-right-radius:inherit}.table-scroll{max-height:calc(100vh - 210px)}.tablepage .table-scroll{max-height:calc(100vh - 150px)}.section-card .table-scroll{max-height:72vh}.table-scroll::-webkit-scrollbar,.table-container::-webkit-scrollbar,.report-table-card-inner::-webkit-scrollbar{width:var(--xl-sb);height:var(--xl-sb)}.table-scroll::-webkit-scrollbar-track,.table-container::-webkit-scrollbar-track,.report-table-card-inner::-webkit-scrollbar-track{background:var(--xl-canvas)}.table-scroll::-webkit-scrollbar-thumb,.table-container::-webkit-scrollbar-thumb,.report-table-card-inner::-webkit-scrollbar-thumb{background:#a8b8ce;border-radius:8px;border:3px solid var(--xl-canvas)}.table-scroll::-webkit-scrollbar-thumb:hover{background:#8195b2}.table-scroll::-webkit-scrollbar-corner{background:var(--xl-canvas)}[data-theme=dark] .table-scroll::-webkit-scrollbar-thumb{background:#3d5378}[data-theme=dark] .table-scroll::-webkit-scrollbar-thumb:hover{background:#4d6693}.data-table{border-collapse:separate;border-spacing:0;width:100%;min-width:100%!important;max-width:none;background:var(--xl-cell);font-size:var(--xl-font);font-variant-numeric:tabular-nums lining-nums;color:var(--text-primary, #1f2937)}.data-table th,.data-table td{padding:var(--xl-pad-y) var(--xl-pad-x)!important;white-space:nowrap;vertical-align:middle;border-right:1px solid var(--xl-line);border-bottom:1px solid var(--xl-line);line-height:1.45}.data-table th:last-child,.data-table td:last-child{border-right:0}.data-table[data-xl-fixed] th,.data-table[data-xl-fixed] td{overflow:hidden;text-overflow:ellipsis}.data-table thead th{position:sticky;top:0;z-index:6;padding-top:6px!important;padding-bottom:6px!important;background:var(--xl-head-bg)!important;color:var(--xl-head-fg)!important;font-size:var(--xl-head-font);font-weight:600;letter-spacing:.02em;text-transform:none;text-align:left;border-right:1px solid rgba(255,255,255,.18)!important;border-bottom:1px solid var(--xl-line-strong)!important;box-shadow:none;-webkit-user-select:none;user-select:none}.data-table thead th:hover{background:var(--xl-head-active)!important}.data-table thead tr:nth-child(2) th{top:var(--xl-head-h, 28px);z-index:5}.data-table tbody{counter-reset:xlrow}.data-table tbody>tr{counter-increment:xlrow;transition:none}.data-table tbody>tr>td{background:var(--xl-cell)}.data-table tbody>tr:nth-child(2n)>td{background:var(--xl-cell-alt)}.data-table tbody>tr:hover>td{background:var(--xl-hover)}.data-table tbody>tr:last-child>td{border-bottom:1px solid var(--xl-line)}.data-table thead>tr:first-child>th:first-child,.data-table tbody>tr>td:first-child,.data-table tfoot>tr>td:first-child{position:sticky;left:0;padding-left:calc(var(--xl-gutter) + var(--xl-pad-x))!important;border-right:1px solid var(--xl-line-strong)!important}.data-table thead>tr:first-child>th:first-child{z-index:8}.data-table tbody>tr>td:first-child{z-index:2}.data-table tfoot>tr>td:first-child{z-index:6}.table-scroll.xl-scrolled-x .data-table thead>tr:first-child>th:first-child,.table-scroll.xl-scrolled-x .data-table tbody>tr>td:first-child,.table-scroll.xl-scrolled-x .data-table tfoot>tr>td:first-child{box-shadow:7px 0 9px -5px #0b1e3a59}.data-table tbody>tr>td:first-child:before{content:counter(xlrow);position:absolute;top:0;bottom:0;left:0;width:var(--xl-gutter);display:flex;align-items:center;justify-content:center;background:var(--xl-gutter-bg);color:var(--xl-gutter-fg);border-right:1px solid var(--xl-line-strong);font-size:10.5px;font-weight:500;cursor:pointer}.data-table thead>tr:first-child>th:first-child:before,.data-table tfoot>tr>td:first-child:before{content:"";position:absolute;top:0;bottom:0;left:0;width:var(--xl-gutter);background:linear-gradient(to bottom right,transparent 52%,rgba(255,255,255,.5) 52%);border-right:1px solid var(--xl-line-strong);cursor:pointer}.data-table tfoot>tr>td:first-child:before{background:var(--xl-gutter-bg)}.data-table tbody>tr>td.empty-state,.data-table tbody>tr>td[colspan]:first-child{padding-left:var(--xl-pad-x)!important;position:static;text-align:center;color:var(--text-muted, #6b7280);background:var(--xl-cell)!important}.data-table tbody>tr>td.empty-state:before,.data-table tbody>tr>td[colspan]:first-child:before{content:none}.data-table tfoot>tr>td,.data-table tfoot>tr.sviluppo-totals-row>td{position:sticky;bottom:0;z-index:5;background:var(--xl-gutter-bg)!important;border-top:2px solid var(--xl-line-strong);border-bottom:0;font-weight:700;padding-top:5px!important;padding-bottom:5px!important}.data-table td.currency,.data-table td .currency,.data-table th.th-currency,.data-table thead th.th-currency{text-align:right}.data-table .table-actions{display:inline-flex;gap:2px;align-items:center}.data-table .btn-icon{width:22px;height:22px;min-width:22px;padding:0;font-size:12px;line-height:1;border-radius:4px;transform:none!important}.data-table .type-badge,.data-table .status-badge,.data-table .badge{padding:1px 7px;font-size:10.5px;border-radius:4px;line-height:1.6}.data-table tbody td:not([contenteditable]):empty:after{content:""}.data-table tbody{user-select:none;-webkit-user-select:none}.data-table tbody input,.data-table tbody textarea{user-select:text;-webkit-user-select:text}body.xl-col-resize,body.xl-col-resize *{cursor:col-resize!important}body.xl-resizing{-webkit-user-select:none!important;user-select:none!important}.data-table thead th:after{pointer-events:none}body.tablepage-full .main-content{padding:20px 0 0}body.tablepage-full .header{margin:0 22px 12px}body.tablepage-full .page-body{padding:0!important;--xl-bleed: 0px}.tablepage-fill .table-scroll{flex:1 1 auto;min-height:0;max-height:none;width:100%;margin:0;border-top:1px solid var(--xl-line-strong)!important}.tablepage:not(.tablepage-fill) .section-card:last-child{margin-bottom:0}.xl-statusbar{position:fixed;right:16px;bottom:14px;z-index:120;display:none;gap:14px;align-items:center;padding:6px 14px;border-radius:8px;background:var(--xl-head-bg);color:#fff;font-size:12px;font-weight:600;letter-spacing:.01em;box-shadow:0 8px 22px #102a4f52;pointer-events:none;font-variant-numeric:tabular-nums}.xl-statusbar.show{display:flex}.xl-statusbar span{white-space:nowrap}.xl-statusbar span+span{border-left:1px solid rgba(255,255,255,.28);padding-left:14px}.xl-statusbar .xl-ok{color:#b9f6c4}.tools-shortcuts{margin-top:18px;padding:12px 14px;border-radius:10px;background:color-mix(in srgb,var(--accent-primary, #143a6d) 7%,var(--bg-card, #fff));font-size:12.5px;color:var(--text-secondary, #4b5563)}.tools-shortcuts strong{display:block;margin-bottom:8px;color:var(--text-primary, #1f2937)}.tools-shortcuts ul{margin:0;padding-left:18px;display:grid;gap:4px}.tools-shortcuts kbd{display:inline-block;padding:1px 5px;border-radius:4px;border:1px solid var(--xl-line);border-bottom-width:2px;background:var(--xl-cell);color:var(--text-primary, #1f2937);font:600 11px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace}.report-table-excel.data-table thead th{background:var(--xl-head-bg)!important;color:var(--xl-head-fg)!important}.report-table-excel .report-edit-input{border:0;background:transparent;width:100%;min-width:60px;font:inherit;padding:0;color:inherit}.report-table-excel .report-edit-input:focus{outline:2px solid var(--xl-focus);outline-offset:-2px;background:var(--xl-cell)}.report-table-card-standalone{border:0!important;box-shadow:none!important;border-radius:0!important}.report-table-card-standalone .report-table-card-inner{max-height:68vh}.report-table-excel.data-table{min-width:0!important;width:max-content}@media (max-width: 1200px){.page-body{padding-left:20px;padding-right:20px;--xl-bleed: 20px}}@media (max-width: 992px){:root{--xl-gutter: 32px;--xl-pad-x: 8px;--xl-font: 12px;--xl-sb: 12px}.page-body{padding-left:16px;padding-right:16px;--xl-bleed: 16px}.config-card,.report-table-card-standalone{--xl-bleed: 14px}.table-scroll{max-height:calc(100vh - 200px)}.tablepage .table-scroll{max-height:calc(100vh - 170px)}body.tablepage-full .main-content{padding:12px 0 0}body.tablepage-full .header{margin:0 12px 10px}body.tablepage-full .page-body{padding-bottom:env(safe-area-inset-bottom)!important}}@media (max-width: 640px){:root{--xl-gutter: 26px;--xl-pad-y: 3px;--xl-pad-x: 7px;--xl-font: 11.5px;--xl-head-font: 10.5px}.page-body{padding-left:12px;padding-right:12px;--xl-bleed: 12px}.config-card,.report-table-card-standalone{--xl-bleed: 12px}.data-table th,.data-table td{padding:var(--xl-pad-y) var(--xl-pad-x)!important}.data-table .btn-icon{width:26px;height:26px;min-width:26px}.xl-statusbar{left:8px;right:88px;bottom:calc(18px + env(safe-area-inset-bottom));justify-content:center;flex-wrap:wrap;gap:6px;padding:5px 10px;font-size:11px}.xl-statusbar span+span{padding-left:6px}.xl-statusbar .xl-cells,.xl-statusbar .xl-count{display:none}}@media (min-width: 1800px){:root{--xl-font: 13px;--xl-pad-y: 5px;--xl-pad-x: 11px}}@media (hover: none) and (pointer: coarse){:root{--xl-pad-y: 7px}.data-table tbody>tr:hover>td{background:var(--xl-cell)}.data-table tbody>tr:nth-child(2n):hover>td{background:var(--xl-cell-alt)}}@media print{.xl-statusbar{display:none!important}.table-scroll{max-height:none!important;overflow:visible!important}.data-table thead th{position:static;background:#e8edf5!important;color:#000!important}.data-table tbody>tr>td:first-child{position:static;padding-left:var(--xl-pad-x)!important}.data-table tbody>tr>td:first-child:before{display:none}.data-table th,.data-table td{border:1px solid #999!important}}
