:root{--font-family: "DM Sans", sans-serif;--text-color: rgb(48, 48, 48);--text-color-inverted: white;--text-secondary: #6b6b6b;--background-color: rgb(255, 255, 255);--primary-color: rgb(74, 185, 144);--secondary-color: rgb(41, 255, 177);--info-color: rgb(83, 155, 255);--warning-color: rgb(255, 174, 31);--success-color: rgb(19, 222, 94);--error-color: rgb(250, 137, 107);--disabled-color: rgb(205, 205, 205);--accent-color: rgba(217, 0, 255, .765);--accent-color2: rgb(255, 133, 2);--catchy: rgb(0, 170, 255);--shadow: 0 8px 20px rgba(0, 0, 0, .6);--border-color: #dcdcdc;--sidebar-width: 270px;--icon-color: #6b6b6b;--icon-hover: rgba(74, 185, 144, .155);--success: rgba(var(--success-color), .2);--success-title: var(--success-color);--success-border: var(--success-color);--error: rgba(var(--error-color), .2);--error-title: var(--error-color);--error-border: var(--error-color);--warning: rgba(var(--warning-color), .2);--warning-title: var(--warning-color);--warning-border: var(--warning-color);--info: rgba(var(--info-color), .2);--info-title: var(--info-color);--info-border: var(--info-color);--input-height: 38px}[data-theme=dark]{--font-family: "DM Sans", sans-serif;--text-color: rgb(48, 48, 48);--text-color-inverted: white;--text-secondary: #6b6b6b;--background-color: white;--primary-color: rgb(93, 135, 255);--secondary-color: rgb(68, 183, 247);--info-color: rgb(83, 155, 255);--warning-color: rgb(255, 174, 31);--success-color: rgb(19, 222, 185);--error-color: rgb(250, 137, 107);--disabled-color: rgb(205, 205, 205);--accent-color: rgb(255, 0, 225);--accent-color2: rgb(180, 103, 197);--catchy: rgb(0, 170, 255);--shadow: 0 8px 20px rgba(0, 0, 0, .6);--border-color: #dcdcdc;--icon-color: var(--primary-color);--success: rgba(var(--success-color), .2);--success-title: var(--success-color);--success-border: var(--success-color);--error: rgba(var(--error-color), .2);--error-title: var(--error-color);--error-border: var(--error-color);--warning: rgba(var(--warning-color), .2);--warning-title: var(--warning-color);--warning-border: var(--warning-color);--info: rgba(var(--info-color), .2);--info-title: var(--info-color);--info-border: var(--info-color)}*::-webkit-scrollbar{width:10px}*::-webkit-scrollbar-track{background-color:#2e2e2e;border-radius:10px}*::-webkit-scrollbar-thumb{background-color:#555;border-radius:10px}*{scrollbar-width:thin;font-family:var(--font-family);-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;box-sizing:border-box!important}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 50px var(--background-color) inset!important;-webkit-text-fill-color:var(--text-color)!important}input:autofill,input:autofill:hover,input:autofill:focus,input:autofill:active{box-shadow:0 0 0 50px var(--background-color) inset!important;-moz-box-shadow:0 0 0 50px var(--background-color) inset!important}input:-moz-placeholder{background-color:var(--background-color)!important;color:var(--text-color)!important}input:autofill{background-color:var(--background-color)!important;color:var(--text-color)!important}input{font-size:16px}img{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}html,body{margin:0;box-sizing:border-box;background-color:var(--background-color);color:var(--text-color);height:100vh;font-family:var(--font-family)}.logo{width:30px;height:32px}.pf{width:150px}.meta{font-size:12px;opacity:.6!important}@media(max-width:500px){.pf{display:none!important}}.app-section-container{margin-top:70px!important;padding:10px 16px 100px!important}@media(min-width:1600px){.app-section-container{margin-top:14px!important}}.page{display:flex;flex-direction:column;gap:16px}@media(max-width:400px){.page{gap:5px!important}}.page-header{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:12px}.toolbar{display:flex;gap:10px;align-items:center}.avatar-wrapper{position:relative;width:45px;height:45px;border-radius:50%;border:2px solid var(--primary-color);overflow:hidden;cursor:pointer;transition:border .3s;padding:2px}.avatar-wrapper:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;border-radius:50%;background:#0000;transition:background .3s}.avatar-wrapper:hover:after{background:#00000015}.avatar-wrapper img.avatar-profilo{width:100%;height:100%;object-fit:cover;display:block;border-radius:50%}.avatar-wrapper .avatar-fallback{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--icon-hover);border-radius:50%}.avatar-wrapper .avatar-fallback .material-icons{font-size:22px!important;color:var(--text-secondary, #888)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;background:var(--primary-color);color:#fff;border:none;padding:12px 16px;border-radius:10px;font-weight:700!important}.btn:hover{box-shadow:0 0 0 3px #b5ccff40,0 3px 10px #a0b5e559}.btn:active{box-shadow:0 0 0 2px #487fff33,0 4px 10px #487fff40}.btn:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}.btn .material-icons{font-size:16px!important}.btn-primary{background:linear-gradient(90deg,#4ab990,#2d8c6e)!important}.btn-secondary{display:inline-flex;align-items:center;gap:4px;border-radius:8px;border:1px solid rgba(0,0,0,.15);background:#fff;color:var(--text-color, #333);font-size:.84rem;font-weight:600;cursor:pointer;transition:background .15s}.btn-secondary:hover:not(:disabled){background:#0000000a}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.btn-elimina{background:var(--error-color)}.btn-danger{background:#e74c3c!important;color:#fff!important;border:none!important}.btn-danger:hover:not(:disabled){opacity:.88}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.btn-success{background:#4ab990!important;color:#fff!important;border:none!important}.btn-success:hover:not(:disabled){opacity:.88}.btn-success:disabled{opacity:.5;cursor:not-allowed}.overlay{position:fixed;inset:0;background:#00000080;z-index:1000;display:flex;align-items:center;justify-content:center;padding:16px}.overlay-top{z-index:1010}.dialog{background:var(--card-bg, #fff);border-radius:16px;box-shadow:0 12px 48px #00000038;width:480px;max-width:100%;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.dialog-sm{width:420px}.dialog-md{width:580px}.dialog-lg{width:780px}.dialog-xl{width:960px}.dialog-header{display:flex;align-items:center;gap:12px;padding:20px 24px;border-bottom:1px solid var(--border-color)}.dialog-header h3{margin:0;font-size:1rem;font-weight:600;flex:1;min-width:0}.header-left{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.dialog-header-icon{width:36px;height:36px;border-radius:10px;background:var(--primary-color);color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0}.dialog-header-icon .material-icons{font-size:20px}.dialog-header-icon.icon-warning{background:#ff8502}.dialog-header-icon.icon-store{background:#2176ae}.dialog-header-icon.icon-info{background:var(--info-color, #539bff)}.dialog-close{background:none;border:none;cursor:pointer;padding:6px;border-radius:8px;color:var(--text-secondary);display:inline-flex;align-items:center;flex-shrink:0;transition:color .15s,background .15s}.dialog-close:hover{color:var(--text-color);background:var(--hover-bg, rgba(0, 0, 0, .06))}.dialog-close .material-icons{font-size:20px}.dialog-body{padding:24px;overflow-y:auto;flex:1}.dialog-footer{display:flex;justify-content:flex-end;align-items:center;gap:8px;padding:16px 24px;border-top:1px solid var(--border-color)}.dialog-field{margin-bottom:20px}.dialog-field:last-child{margin-bottom:0}.dialog-field-label{display:block;font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);margin-bottom:8px}.dialog-hint{display:flex;align-items:flex-start;gap:8px;margin-top:16px;padding:10px 14px;background:var(--hover-bg, rgba(0, 0, 0, .03));border-radius:8px;font-size:.82rem;color:var(--text-secondary)}.dialog-hint .material-icons{font-size:16px;flex-shrink:0;margin-top:1px}.dialog-note{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:8px;margin-bottom:16px;font-size:.88rem;line-height:1.5}.dialog-note .material-icons{font-size:18px;margin-top:1px;flex-shrink:0}.dialog-note.note-warning{background:#fff3e0;color:#bf360c;border-left:3px solid #e65100}.dialog-note.note-warning .material-icons{color:#e65100}.dialog-note.note-muted{background:var(--hover-bg, rgba(0, 0, 0, .04));color:var(--text-secondary);border-left:3px solid var(--border-color)}.dialog-note.note-muted .material-icons{color:var(--text-secondary)}.badge-stato{display:inline-block;padding:3px 10px;border-radius:12px;font-size:.78rem;font-weight:600;white-space:nowrap}.badge-stato.stato-bozza{background:#f0f0f0;color:#666}.badge-stato.stato-emesso{background:#e3f0fb;color:#2176ae}.badge-stato.stato-contestato{background:#fff3e0;color:#e65100}.badge-stato.stato-accettato{background:#e8f5e9;color:#2e7d32}.badge-stato.stato-pagato{background:#e8f5e9;color:#1b5e20}.btn-annulla{display:inline-flex;align-items:center;gap:4px;padding:8px 14px;border-radius:8px;border:1px solid rgba(0,0,0,.15)!important;background:#fff;color:var(--text-color, #333);font-size:.84rem;font-weight:600;cursor:pointer;transition:background .15s}.btn-annulla:hover:not(:disabled){background:#0000000a}.btn-annulla:disabled{opacity:.5;cursor:not-allowed}.btn-azioni{padding:8px!important}.x-close-btn{border:none;background:transparent;font-size:22px;margin:0!important;padding:0!important;cursor:pointer;color:#535353;width:40px;height:40px;border-radius:50%;border:1px solid black}.x-close-btn:hover{color:var(--primary-color);background:var(--icon-hover)!important}.hamburger{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:transparent;border:none;cursor:pointer;padding:0;transition:background .15s ease;color:var(--icon-color)}.hamburger:hover{background:var(--icon-hover)!important;color:var(--primary-color)!important}.hamburger .material-icons{transition:transform .25s ease,color .18s ease;display:inline-block}.hamburger.rotated .material-icons{transform:rotate(90deg)}.icon-wrapper{position:relative;width:40px!important;height:40px!important;overflow:hidden;cursor:pointer;transition:border .3s;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background .15s ease}.icon-wrapper:hover{background:var(--icon-hover);color:var(--primary-color)!important}.icon-wrapper:hover .icon{color:var(--primary-color)!important}.icon-wrapper:active{background:#84848448}.icon{font-size:25px!important;cursor:pointer!important;color:var(--accent-color2)!important;transition:color .15s ease}.icon-in-btn{color:#fff!important;font-size:20px!important}.small-icon{font-size:15px}.section-title{margin:0!important;font-size:18px!important;font-weight:700!important;width:100%;text-align:left}.app-autocomplete{position:relative;width:100%;max-width:420px}.app-autocomplete-input{width:100%;height:var(--input-height);padding:0 14px;font-size:14px;border-radius:10px;border:1px solid rgba(0,0,0,.15);background:#fff;transition:all .2s ease;outline:none}.app-autocomplete-input:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #3b82f626}.app-autocomplete-input:disabled{opacity:.65!important;background:var(--disabled-color);cursor:not-allowed}.app-autocomplete-panel{position:absolute;top:calc(100% + 6px);left:0;width:100%;background:#fff;border-radius:12px;border:1px solid rgba(0,0,0,.08);box-shadow:0 8px 24px #00000014;max-height:260px;overflow-y:auto;z-index:1000;padding:6px 0}.app-autocomplete-item{padding:10px 14px;cursor:pointer;font-size:14px;display:flex;flex-direction:column;gap:2px;transition:background .15s ease}.app-autocomplete-item:hover{background:#0000000a}.app-autocomplete-item.active{background:#3b82f61a}.app-autocomplete-panel::-webkit-scrollbar{width:6px}.app-autocomplete-panel::-webkit-scrollbar-thumb{background:#00000026;border-radius:10px}.app-autocomplete-empty{padding:10px 14px;font-size:13px;opacity:.7;cursor:default;-webkit-user-select:none;user-select:none}.app-loading-overlay{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:#00000040;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.app-loading-card{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:14px;background:#ffffffeb;box-shadow:0 10px 28px #0000002e;border:1px solid rgba(0,0,0,.08)}.app-spinner{width:22px;height:22px;border-radius:50%;border:3px solid rgba(0,0,0,.12);border-top-color:#0000008c;animation:appSpin .8s linear infinite}.app-loading-text{font-size:13px;font-weight:600;color:#000000bf}@keyframes appSpin{to{transform:rotate(360deg)}}body.app-no-scroll{overflow:hidden}.bubble-field{position:relative}.bubble{position:absolute;top:-10px;left:0;transform:translateY(-100%);max-width:340px;z-index:50;padding:8px 10px;border-radius:10px;font-size:12px;line-height:1.2;background:#1f1f1f;color:#fff;box-shadow:0 10px 24px #0000002e}.bubble:after{content:"";position:absolute;left:14px;bottom:-6px;width:12px;height:12px;background:#1f1f1f;transform:rotate(45deg)}.input.is-invalid,.textarea.is-invalid,.app-autocomplete-input.is-invalid,.dropzone.is-invalid,.checks.is-invalid{border-color:#e74c3c!important;outline:none}.req{color:var(--danger-color, #d32f2f)}textarea{width:100%!important;min-height:90px!important;border-radius:8px!important;padding:10px!important}.app-pagination-bar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;padding:10px 2px;border-top:1px solid rgba(0,0,0,.08)}.app-pagination-info{display:flex;align-items:center;gap:6px;font-size:.82rem;color:var(--text-secondary);white-space:nowrap}.app-pagination-info .app-pagination-sep{opacity:.5}.app-pagination-controls{display:flex;align-items:center;gap:3px}.app-page-btn{min-width:32px;height:32px;padding:0 6px;border:1px solid var(--border-color);border-radius:6px;background:var(--background-color);color:var(--text-color);font-size:.85rem;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .15s,border-color .15s,color .15s}.app-page-btn:hover:not(:disabled){border-color:var(--primary-color);color:var(--primary-color)}.app-page-btn.active{background:var(--primary-color);border-color:var(--primary-color);color:#fff;font-weight:600;pointer-events:none}.app-page-btn:disabled{opacity:.35;cursor:not-allowed}.app-page-btn .material-icons{font-size:18px}.app-page-nav{color:var(--text-secondary)}.app-page-ellipsis{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:32px;font-size:.85rem;color:var(--text-secondary);letter-spacing:1px}.app-per-page{display:flex;align-items:center;gap:6px;font-size:.82rem;color:var(--text-secondary);white-space:nowrap}.app-per-page select{height:32px;padding:0 8px;border:1px solid var(--border-color);border-radius:6px;background:var(--background-color);color:var(--text-color);font-size:.82rem;cursor:pointer}.app-per-page select:focus{outline:none;border-color:var(--primary-color)}
