@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&display=swap";:root{--primary:#0f172a;--primary-light:#1e293b;--accent:#3b82f6;--accent-glow:#3b82f680;--success:#10b981;--warning:#f59e0b;--danger:#ef4444;--text:#f8fafc;--text-muted:#94a3b8;--surface:#ffffff08;--surface-border:#ffffff14;--glass:#0f172acc;--font-main:"Outfit", sans-serif;--transition:all .3s cubic-bezier(.4, 0, .2, 1);--sidebar-width:280px;--mobile-topbar-height:56px;--bottom-tab-height:56px;--touch-min:44px;--input-font-size:1rem;--modal-gutter:.75rem}*{box-sizing:border-box;margin:0;padding:0}html{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}body{font-family:var(--font-main);background-color:var(--primary);color:var(--text);-webkit-font-smoothing:antialiased;overflow-x:hidden}select,input[type=date],input[type=datetime-local],input[type=time]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}option,optgroup{color:#f8fafc;background-color:#1e293b}a{color:inherit;text-decoration:none}button{cursor:pointer;background:0 0;border:none;font-family:inherit}.app-container{background:radial-gradient(circle at 100% 0,#1e293b,#0f172a);min-height:100vh;display:flex}.main-content{margin-left:var(--sidebar-width);transition:var(--transition);flex:1;padding:2rem}.mobile-topbar{height:calc(var(--mobile-topbar-height) + env(safe-area-inset-top));padding:env(safe-area-inset-top) .75rem 0;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid var(--surface-border);z-index:120;background:#0f172aeb;align-items:center;gap:.75rem;display:flex;position:fixed;top:0;left:0;right:0;box-shadow:0 10px 30px #00000059}@media (width>=901px){.mobile-topbar{display:none}}@media (width<=900px){:root{--sidebar-width:296px}.sidebar{transform:translate(-105%)!important}.sidebar.open{transform:translate(0)!important}.main-content{padding:1rem;padding-top:calc(1rem + var(--mobile-topbar-height) + env(safe-area-inset-top));margin-left:0}.mobile-topbar{pointer-events:auto}.mobile-menu-btn{width:var(--touch-min);height:var(--touch-min);min-width:var(--touch-min);min-height:var(--touch-min);border:1px solid var(--surface-border);color:var(--text);transition:var(--transition);background:#ffffff0f;border-radius:.8rem;justify-content:center;align-items:center;display:inline-flex}@media (hover:hover) and (pointer:fine){.mobile-menu-btn:hover{border-color:var(--accent);box-shadow:0 0 0 3px #3b82f62e}}.mobile-topbar-title{letter-spacing:-.2px;text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.95rem;font-weight:700;overflow:hidden}.mobile-topbar-spacer{width:var(--touch-min)}.app-container.has-bottom-tab .main-content{padding-bottom:calc(1rem + var(--bottom-tab-height) + env(safe-area-inset-bottom,0px))}.app-container.has-bottom-tab .mobile-topbar-spacer{display:none}}.bottom-tab-autista{display:none}@media (width<=900px){.bottom-tab-autista{z-index:110;height:calc(var(--bottom-tab-height) + env(safe-area-inset-bottom,0px));padding:0 .25rem env(safe-area-inset-bottom,0px);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-top:1px solid var(--surface-border);background:#0f172af0;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 24px #00000059}.bottom-tab-item{min-height:var(--bottom-tab-height);color:var(--text-muted);letter-spacing:.01em;-webkit-tap-highlight-color:transparent;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.2rem;font-size:.6875rem;font-weight:600;text-decoration:none;display:flex}.bottom-tab-item.active{color:var(--accent)}.bottom-tab-item:active{background:#ffffff0a}}.glass-card{background:var(--surface);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--surface-border);transition:var(--transition);border-radius:1.5rem;padding:1.5rem}@media (hover:hover) and (pointer:fine){.glass-card:hover{border-color:var(--accent);transform:translateY(-4px);box-shadow:0 0 20px #3b82f61a}}h1{background:linear-gradient(to right, #fff, var(--text-muted));-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:1.5rem;font-size:2.5rem;font-weight:700}h2{margin-bottom:1rem;font-size:1.5rem;font-weight:600}p{color:var(--text-muted);line-height:1.6}.operational-date{flex-direction:column;gap:.125rem;line-height:1.2;display:inline-flex}.operational-date .date-label{color:var(--text);font-size:1rem;font-weight:700}.operational-date .date-subtitle{color:var(--text-muted);font-size:.75rem;font-weight:400}.operational-date.near-term .date-label{color:var(--accent)}.operational-date.compact{gap:0}.operational-date.compact .date-label{font-size:.9375rem}.operational-date.compact .date-subtitle{font-size:.7rem}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.animate-fade-in{animation:.4s forwards fadeIn}.date-picker-operational-form{flex-direction:column;gap:.4rem;display:flex}.date-picker-operational-form .date-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;font-weight:600}.date-picker-operational-form .date-input-wrapper{background:var(--surface);border:1px solid var(--surface-border);cursor:pointer;min-height:44px;transition:var(--transition);border-radius:.6rem;align-items:center;gap:.75rem;padding:.65rem .85rem;display:flex;position:relative}.date-picker-operational-form .date-input-wrapper:hover{border-color:var(--accent)}.date-picker-operational-form .calendar-icon{color:var(--text-muted);flex-shrink:0}.date-picker-operational-form .date-display-layer{pointer-events:none;flex:1}.date-picker-operational-form .placeholder-text{color:var(--text-muted);font-size:.9375rem}.date-picker-operational-form .date-input-native{opacity:0;cursor:pointer;font-family:inherit;font-size:inherit;position:absolute;inset:0}.date-picker-operational-form .date-input-native::-webkit-calendar-picker-indicator{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.date-picker-operational-filter{background:var(--surface);border:1px solid var(--surface-border);cursor:pointer;min-width:160px;transition:var(--transition);border-radius:.6rem;align-items:center;gap:.5rem;padding:.4rem .7rem;display:flex;position:relative}.date-picker-operational-filter:hover{border-color:var(--accent)}.date-picker-operational-filter>svg{color:var(--text-muted);flex-shrink:0}.date-picker-operational-filter .date-display-layer{pointer-events:none;flex:1}.date-picker-operational-filter .placeholder-text{color:var(--text-muted);font-size:.875rem}.date-picker-operational-filter .date-input-native{opacity:0;cursor:pointer;font-family:inherit;font-size:.875rem;position:absolute;inset:0}.date-picker-operational-filter .date-input-native::-webkit-calendar-picker-indicator{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--primary)}::-webkit-scrollbar-thumb{background:var(--primary-light);border-radius:10px}::-webkit-scrollbar-thumb:hover{background:var(--accent)}.modal-overlay{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:1000;background:#000000a6;padding:5vh 1rem 3rem;position:fixed;inset:0;overflow-y:auto}@media (height<=700px){.modal-overlay{padding:1.5vh .75rem 1.5rem}}.modal-content{width:100%;max-width:500px;margin:0 auto;padding:2rem}.modal-content.large{max-width:min(1040px,100vw - 2rem)}.modal-header{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1.5rem;display:flex}.modal-header-main{flex:1;min-width:0}.modal-header-main h2{margin:0}.close-btn{color:var(--text-muted);cursor:pointer;transition:var(--transition);background:0 0;border:none;border-radius:.5rem;padding:.25rem}.close-btn:hover{color:var(--text);background:var(--surface-border)}@media (width<=900px){.modal-overlay{background:var(--primary);-webkit-backdrop-filter:none;backdrop-filter:none;z-index:2000;padding:0;overflow-y:auto}.modal-content,.modal-content.large{width:100%;max-width:none;min-height:100dvh;padding:calc(var(--modal-gutter) + env(safe-area-inset-top,0px)) calc(var(--modal-gutter) + env(safe-area-inset-right,0px)) calc(var(--modal-gutter) + env(safe-area-inset-bottom,0px)) calc(var(--modal-gutter) + env(safe-area-inset-left,0px));box-shadow:none;border:none;border-radius:0;margin:0}.modal-overlay .glass-card:hover{box-shadow:none;border-color:var(--surface-border);transform:none}.modal-header{gap:.75rem;margin-bottom:1rem}.modal-header .close-btn{min-width:var(--touch-min);min-height:var(--touch-min);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.form-footer{flex-wrap:wrap;gap:.5rem}.form-footer .btn-primary,.form-footer .btn-outline,.form-footer .btn-ghost{min-height:var(--touch-min);flex:auto;justify-content:center}.form-group input,.form-group select,.form-group textarea,input[type=text],input[type=number],input[type=search],input[type=email],input[type=password],input[type=tel],input:not([type]),select,textarea{font-size:var(--input-font-size)!important}h1{font-size:1.75rem}}.hint{color:var(--text-muted);background:#3b82f60f;border:1px solid #3b82f626;border-radius:.6rem;padding:.75rem;font-size:.8125rem;line-height:1.5}.form{flex-direction:column;gap:1rem;display:flex}.form-group{flex-direction:column;gap:.4rem;display:flex}.form-group label{color:var(--text-muted);font-size:.875rem;font-weight:500}.form-group input,.form-group select,.form-group textarea{background:var(--surface);border:1px solid var(--surface-border);color:var(--text);font-family:inherit;font-size:var(--input-font-size);min-height:var(--touch-min);transition:var(--transition);border-radius:.6rem;padding:.65rem .85rem}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow);outline:none}.form-footer{border-top:1px solid var(--surface-border);justify-content:flex-end;gap:.75rem;margin-top:.5rem;padding-top:1rem;display:flex}html[data-nascondi-importi] .importo-euro,html[data-nascondi-importi] .cell-euro,html[data-nascondi-importi] .total-euro,html[data-nascondi-importi] .euro-stat,html[data-nascondi-importi] .incasso-badge,html[data-nascondi-importi] .riga-subtot,html[data-nascondi-importi] .prod-prezzo,html[data-nascondi-importi] .prod-subtot,html[data-nascondi-importi] .pezz-subtot,html[data-nascondi-importi] .stat-euro,html[data-nascondi-importi] .prezzo-valore,html[data-nascondi-importi] .detail-total-value,html[data-nascondi-importi] .detail-footer{display:none!important}
