.auth-card .btn-secondary{border-color:var(--border-strong);background:var(--surface);color:var(--text)}.auth-card .btn-secondary:hover{border-color:var(--border-strong);background:var(--surface-hover)}.auth-card .alert{margin-bottom:var(--sp-4);line-height:1.55}.mfa-text{margin-bottom:var(--sp-4);font-size:var(--fs-sm);line-height:1.55;color:var(--muted)}.mfa-text-small{margin-bottom:var(--sp-2);font-size:var(--fs-xs)}.mfa-steps{margin:0 0 var(--sp-4) 1.1rem;font-size:var(--fs-sm);line-height:1.7;color:var(--text-2)}.mfa-qr{display:flex;justify-content:center;margin-bottom:var(--sp-4);padding:var(--sp-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:#fff}.mfa-qr canvas{display:block;width:200px;height:200px;image-rendering:pixelated}.mfa-key,.mfa-recovery-list span{padding:10px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);color:var(--text);font-size:var(--fs);font-variant-numeric:tabular-nums;letter-spacing:.08em;text-align:center;word-break:break-all}.mfa-key{margin-bottom:var(--sp-4)}.auth-card .mfa-code-input{font-size:24px;letter-spacing:.35em;text-align:center;font-variant-numeric:tabular-nums}.mfa-recovery-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-2)}@media print{.btn{display:none}}:root{--color-bg-primary: var(--bg);--color-bg-secondary: var(--surface);--color-bg-tertiary: var(--surface-2);--color-bg-card: var(--surface);--color-bg-hover: var(--surface-hover);--bg-secondary: var(--surface);--bg-secondary-50: var(--surface-2);--color-accent-primary: var(--accent);--color-accent-secondary: var(--accent-hover);--color-accent-gradient: var(--accent);--color-primary: var(--accent-text);--color-success: var(--tone-success-fg);--color-warning: var(--tone-warning-fg);--color-error: var(--tone-danger-fg);--color-info: var(--tone-info-fg);--danger-color: var(--tone-danger-fg);--color-text-primary: var(--text);--color-text-secondary: var(--muted);--color-text-muted: var(--muted);--text-secondary: var(--muted);--color-border: var(--border);--color-border-hover: var(--border-strong);--border-color: var(--border);--shadow-glow: none;--shadow-xl: var(--shadow-lg);--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--radius-md: var(--radius);--radius-xl: var(--radius-lg);--radius-full: var(--radius-pill);--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-slow: .35s ease;--font-family: var(--font);--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 2rem;--sidebar-width: var(--sidebar-w);--sidebar-collapsed-width: 72px;--z-mobile-header: 1100}html{font-size:16px}th::-webkit-resizer{background:transparent}.page-header{display:block;padding:var(--sp-7) var(--sp-7) 0}.page-title{margin-bottom:2px}.page-content{padding:var(--sp-5) var(--sp-7) var(--sp-8)}.topbar-menu{display:none}.topbar-ruolo{font-size:var(--fs-xs);color:var(--muted)}.page-content .card+.card{margin-top:var(--sp-5)}.stats-grid{margin-bottom:var(--sp-6)}.stat-card-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;margin-bottom:var(--sp-1);border-radius:var(--radius-lg)}.stat-card-icon svg{width:20px;height:20px}.stat-card-icon.purple{background:var(--tone-violet-bg);color:var(--tone-violet-fg)}.stat-card-icon.blue{background:var(--tone-info-bg);color:var(--tone-info-fg)}.stat-card-icon.green{background:var(--tone-success-bg);color:var(--tone-success-fg)}.stat-card-icon.orange{background:var(--tone-warning-bg);color:var(--tone-warning-fg)}.table-container{width:100%}.table{table-layout:auto}.table-editor th{padding:var(--sp-1) var(--sp-2);font-size:var(--fs-xs)}.table-editor td{padding:var(--sp-1)}.table-editor .form-input,.table-editor .form-select,.table-editor .currency-input{min-height:32px;padding:var(--sp-1) var(--sp-2);font-size:var(--fs-sm)}.table-editor .currency-input{padding-right:24px}.table-editor .currency-symbol{right:8px;font-size:var(--fs-sm)}.form-group{margin-bottom:var(--sp-4)}.form-label.required:after{content:" *";color:var(--tone-danger-fg)}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-4)}.form-actions{gap:var(--sp-3);margin-top:var(--sp-6);padding-top:var(--sp-4);border-top:1px solid var(--border)}.form-checkbox-group{display:flex;align-items:center;gap:var(--sp-2)}.form-checkbox{width:18px;height:18px;accent-color:var(--accent);cursor:pointer}.currency-input-wrapper{position:relative;width:100%}.currency-input{width:100%;padding-right:30px;text-align:right;font-variant-numeric:tabular-nums;-webkit-appearance:textfield;appearance:textfield;-moz-appearance:textfield}.currency-input::-webkit-outer-spin-button,.currency-input::-webkit-inner-spin-button{margin:0;-moz-appearance:none;appearance:none;-webkit-appearance:none}.currency-symbol{position:absolute;top:50%;right:12px;transform:translateY(-50%);color:var(--muted);font-weight:500;pointer-events:none}.badge-pa{--b-bg: var(--tone-violet-bg);--b-fg: var(--tone-violet-fg);--b-dot: var(--tone-violet-dot)}.badge-dropdown{width:auto;min-width:110px;height:26px;padding:0 1.75rem 0 10px!important;border:1px solid transparent;border-radius:var(--radius-pill);background:var(--b-bg, var(--tone-neutral-bg));color:var(--b-fg, var(--tone-neutral-fg));font-family:inherit;font-size:var(--fs-xs);font-weight:600;cursor:pointer}.badge-dropdown:before{display:none}.badge-dropdown:hover{border-color:var(--b-dot, var(--border-strong))}.badge-dropdown:focus{outline:none;box-shadow:0 0 0 3px var(--accent-soft)}.badge-dropdown option{background:var(--surface);color:var(--text)}.tipo-cliente{display:flex;gap:var(--sp-2);margin-bottom:var(--sp-5)}.tipo-cliente button{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);padding:10px;border:2px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--muted);font-family:inherit;font-size:var(--fs-sm);font-weight:500;cursor:pointer}.tipo-cliente button.azienda[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-text)}.tipo-cliente button.privato[aria-pressed=true]{border-color:var(--tone-violet-dot);background:var(--tone-violet-bg);color:var(--tone-violet-fg)}.form-hint{font-size:var(--fs-xs);color:var(--muted)}.search-bar{display:flex;flex-wrap:wrap;gap:var(--sp-3);margin-bottom:var(--sp-5)}.search-input-wrapper{position:relative;flex:1;min-width:260px}.search-input-wrapper svg{position:absolute;top:50%;left:12px;width:16px;height:16px;transform:translateY(-50%);color:var(--muted)}.search-input{width:100%;min-height:var(--control-h-lg);padding:8px 12px 8px 36px;border:1px solid var(--border-input);border-radius:var(--radius);background:var(--surface);color:var(--text);font-family:inherit;font-size:var(--fs)}.search-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.filter-toggle{display:flex;align-items:center;gap:var(--sp-2);min-height:var(--control-h-lg);padding:0 var(--sp-3);border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface);color:var(--text-2);font-family:inherit;cursor:pointer}.filter-toggle:hover{background:var(--surface-hover);color:var(--text)}.filter-toggle.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-text);font-weight:600}.combobox{position:relative}.card:has(.combobox){overflow:visible}.combobox-input-wrapper{position:relative}.combobox-icon{position:absolute;top:50%;left:10px;width:16px;height:16px;transform:translateY(-50%);color:var(--muted);pointer-events:none}.combobox-input{padding-left:34px;padding-right:32px}.combobox-clear{position:absolute;top:50%;right:6px;display:flex;padding:4px;transform:translateY(-50%);border:0;border-radius:var(--radius-sm);background:transparent;color:var(--muted);cursor:pointer}.combobox-clear:hover{background:var(--surface-hover);color:var(--text)}.combobox-list{position:absolute;z-index:var(--z-topbar);top:calc(100% + 4px);left:0;right:0;max-height:320px;margin:0;padding:4px;overflow-y:auto;list-style:none;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-md)}.combobox-option{display:flex;flex-direction:column;gap:2px;padding:6px 8px;border-radius:var(--radius-sm);cursor:pointer}.combobox-option.active{background:var(--surface-hover)}.combobox-option[aria-selected=true]{background:var(--accent-soft)}.combobox-code{color:var(--muted);font-variant-numeric:tabular-nums}.combobox-badge{margin-left:var(--sp-2)}.combobox-meta{color:var(--muted);font-size:var(--fs-xs)}.combobox-empty{padding:6px 8px;color:var(--muted);font-size:var(--fs-sm)}.modal-overlay,.modal-backdrop{align-items:center;animation:fadeIn var(--transition-fast)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;justify-content:center;padding:var(--sp-6);background:var(--overlay)}.modal{max-width:600px;max-height:90vh;overflow-y:auto;animation:slideUp var(--transition-normal)}.modal-lg{max-width:900px}.modal-body{display:block}.modal-backdrop .modal-body{max-height:60vh;overflow-y:auto}.empty-state-icon{width:48px;height:48px;margin:0 auto var(--sp-2);color:var(--border-strong)}.empty-state-description{margin-bottom:var(--sp-4);color:var(--muted)}.spinner{width:24px;height:24px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}.loading-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:var(--overlay)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes spin{to{transform:rotate(360deg)}}.text-center{text-align:center}.text-right{text-align:right}.text-secondary{color:var(--muted)}.text-success{color:var(--tone-success-fg)}.text-warning{color:var(--tone-warning-fg)}.text-error{color:var(--tone-danger-fg)}.flex{display:flex}.flex-col,.flex-column{display:flex;flex-direction:column}.flex-center{display:flex;align-items:center;justify-content:center}.flex-between{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.relative{position:relative}.full-width{width:100%}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gap-xs{gap:var(--sp-1)}.gap-sm{gap:var(--sp-2)}.gap-md{gap:var(--sp-4)}.gap-lg{gap:var(--sp-6)}.mt-sm{margin-top:var(--sp-2)}.mt-md{margin-top:var(--sp-4)}.mt-lg{margin-top:var(--sp-6)}.mb-sm{margin-bottom:var(--sp-2)}.mb-md{margin-bottom:var(--sp-4)}.mb-lg{margin-bottom:var(--sp-6)}.hidden-mobile{display:block}.grid-2-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-6)}.grid-responsive{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--sp-6)}.tree-view{padding:var(--sp-4);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg)}.tree-node{border-radius:var(--radius-sm)}.tree-node-header{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-4);border-radius:var(--radius-sm);cursor:pointer;-webkit-user-select:none;user-select:none}.tree-node-header:hover{background:var(--surface-hover)}.tree-toggle{display:flex;align-items:center;justify-content:center;width:20px;height:20px;flex-shrink:0;color:var(--muted)}.tree-icon{flex-shrink:0;color:var(--accent)}.tree-label{font-size:var(--fs);font-weight:500}.tree-children{margin-left:calc(var(--sp-4) + 10px);padding-left:var(--sp-6);border-left:1px solid var(--border)}.tree-leaf{padding-left:calc(var(--sp-4) + 20px);cursor:default}.tree-level-1 .tree-icon{color:var(--tone-info-dot)}.tree-level-2 .tree-icon{color:var(--tone-warning-dot)}.tree-level-3 .tree-icon{color:var(--tone-success-dot)}.it-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-1);margin-bottom:var(--sp-6);padding:var(--sp-2) var(--sp-4);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}@media(max-width:900px){.topbar-menu{display:inline-flex}.page-content{padding:var(--sp-4)}.table-container>table{min-width:0}}@media(max-width:768px){.hidden-mobile{display:none!important}.grid-2-cols,.form-grid{grid-template-columns:minmax(0,1fr)}}@media(max-width:1024px){.page-header{padding:var(--sp-5) var(--sp-4) 0}.page-header .flex-between{flex-direction:column;align-items:flex-start;gap:var(--spacing-md)}.page-title{font-size:var(--font-size-xl)}.search-bar{flex-direction:column}.search-input-wrapper{min-width:unset;width:100%}.form-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:1fr 1fr}.stat-card-value{font-size:var(--font-size-xl)}.table-container{overflow-x:auto;-webkit-overflow-scrolling:touch}.modal,.modal-lg{max-width:calc(100vw - 2rem)}.flex-between{flex-wrap:wrap;gap:var(--spacing-sm)}.hidden-mobile{display:none!important}}.mobile-row-toggle{display:none}@media(max-width:1024px){.table thead:not(.keep-header){display:none}.table tr{display:block;margin-bottom:var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-card);padding:var(--spacing-sm);box-shadow:var(--shadow-sm);position:relative}.table td{display:flex!important;justify-content:space-between;align-items:center;padding:8px var(--spacing-sm)!important;border:none!important;border-bottom:1px solid var(--color-border)!important;text-align:right!important;font-size:var(--font-size-sm);min-height:32px}.table td:before{content:attr(data-label);font-weight:600;text-transform:uppercase;font-size:.65rem;color:var(--color-text-muted);margin-right:var(--spacing-sm);text-align:left;flex-shrink:0;max-width:45%;word-break:break-word}.table td:first-child{background:var(--color-bg-tertiary);margin:calc(var(--spacing-xs) * -1) calc(var(--spacing-sm) * -1) var(--spacing-xs);padding:var(--spacing-sm)!important;border-radius:var(--radius-md) var(--radius-md) 0 0;font-weight:700;text-align:left!important;justify-content:flex-start;font-size:var(--font-size-base)}.table td:first-child:before{display:none}.table:not(.always-expanded) tr:not(.is-expanded) td:not(:first-child):not([data-label=Cliente]):not([data-label=Azioni]):not([data-label=Oggetto]):not([data-label=Residuo]):not([data-label="Ragione Sociale"]){display:none!important}.table td[data-label="Ragione Sociale"]{display:none!important}.table td:last-child,.table td[data-label=Azioni]{border-bottom:none!important;justify-content:center;padding-top:var(--spacing-sm)!important;padding-bottom:var(--spacing-sm)!important;background:transparent}.mobile-row-toggle{display:block!important;position:absolute;right:var(--spacing-md);top:var(--spacing-md);z-index:10;cursor:pointer}tr.is-expanded .mobile-row-toggle{transform:rotate(180deg)}}@media(min-width:1025px)and (max-width:1440px){.table-container{overflow-x:auto}.table{min-width:900px}.table th:first-child,.table td:first-child{position:sticky;left:0;z-index:2;background:var(--surface)}.table th:first-child{z-index:3;background:var(--surface-2);box-shadow:inset -1px 0 0 var(--border)}.table td:first-child{box-shadow:inset -1px 0 0 var(--border)}}.table .flex.gap-sm{flex-wrap:nowrap;gap:var(--spacing-xs)!important}@media(max-width:1024px){.table .flex.gap-sm{width:100%;justify-content:center;gap:var(--spacing-md)!important;padding:var(--spacing-xs) 0}}.btn-icon{width:36px!important;height:36px!important}.btn-icon svg{width:18px!important;height:18px!important}.table-editor td{flex-direction:column;align-items:flex-start;text-align:left!important;height:auto}.table-editor td:before{margin-bottom:var(--spacing-xs)}.table-editor .form-input,.table-editor .form-select,.table-editor .form-textarea,.table-editor .currency-input-wrapper{width:100%!important;max-width:100%!important}@media(max-width:480px){.page-header{padding:var(--sp-4) var(--sp-4) 0}.page-content{padding:var(--spacing-md)}.stats-grid{grid-template-columns:1fr}.btn{font-size:var(--font-size-xs);padding:var(--spacing-xs) var(--spacing-md)}.card-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.table th,.table td{padding:var(--spacing-sm);font-size:var(--font-size-xs)}}@media(min-width:1025px){.table td[data-label="Ragione Sociale"]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:200px}.inline-ragione-sociale{display:none}}
