:root{
  --od-bg:#f4f4f4;--od-surface:#fff;--od-surface-2:#f7f7f7;--od-text:#1c2430;--od-muted:#666666;
  --od-primary:#16305c;--od-primary-2:#2f5aa0;--od-accent:#FFD700;--od-border:#dfe3ea;--od-success:#176b50;
  --od-danger:#b23b3b;--od-warning:#a36814;--od-shadow:0 14px 35px rgba(26,48,78,.08);--od-radius:16px;
}
*{box-sizing:border-box}
html{background:var(--od-bg)}
body{font-family:Inter,"Segoe UI",Roboto,Arial,sans-serif!important;background:var(--od-bg)!important;color:var(--od-text)!important;line-height:1.45}
body>.container,body>.pagina,.container,.pagina{max-width:1320px!important;padding:30px 32px!important;margin-left:auto!important;margin-right:auto!important}
h1{font-size:clamp(1.65rem,2.5vw,2.25rem)!important;letter-spacing:-.035em!important;color:var(--od-text)!important;margin-top:0!important}
h2{font-size:1.15rem!important;letter-spacing:-.015em!important;color:var(--od-text)!important}
p{color:var(--od-muted)}
a{color:var(--od-primary-2)}
.menu-admin{width:252px!important;background:var(--colore-sfondo-menu)!important;padding:18px 12px!important;border-right:1px solid rgba(255,255,255,.06);box-shadow:10px 0 30px rgba(16,43,77,.08)}
body{margin-left:252px!important}
.logo-admin{border:0!important;font-size:1.18rem!important;padding:13px 14px 20px!important;letter-spacing:-.02em}
.logo-admin::after{content:"360";color:#FFD700;margin-left:3px}
details.menu-section{border:0!important;margin:2px 0!important}
.menu-section{padding:0!important}
.menu-title{color:var(--colore-titoli)!important;text-transform:none!important;letter-spacing:0!important;font-size:.79rem!important;padding:10px 12px!important;border-radius:10px}
.menu-title:hover{background:var(--colore-hover)!important}
.menu-admin a{font-size:.88rem!important;border-radius:9px!important;padding:9px 12px!important;color:#e8eef6!important;margin:1px 0!important}
.menu-admin .voci{padding:0 0 7px 8px!important}
.menu-admin a:hover{background:var(--colore-hover)!important}
.menu-admin a.attivo,.menu-admin a.attivo:hover{background:var(--colore-attivo)!important;box-shadow:0 6px 16px rgba(0,0,0,.12)!important}
.menu-fondo{border-top:1px solid rgba(255,255,255,.08)!important;padding-top:10px!important}
.versione-app{color:#7790aa!important}.logo-fondo-menu{opacity:.75!important}
.card-numero,.novita-riquadro,fieldset,.od-card,.od-panel{background:var(--od-surface)!important;border:1px solid var(--od-border)!important;border-radius:var(--od-radius)!important;box-shadow:var(--od-shadow)!important}
.card-numero{padding:20px!important}.card-numero .numero{color:var(--od-primary)!important;letter-spacing:-.04em}.card-numero .etichetta{color:var(--od-muted)!important}
input[type=text],input[type=email],input[type=password],input[type=number],input[type=date],input[type=datetime-local],input[type=time],input[type=file],select,textarea{border:1px solid #d7dfeb!important;border-radius:10px!important;background:#fff!important;min-height:42px;padding:9px 11px!important;color:var(--od-text)!important;box-shadow:0 1px 2px rgba(15,23,42,.025)}
input:focus,select:focus,textarea:focus{outline:0!important;border-color:#2f5aa0!important;box-shadow:0 0 0 3px rgba(47,90,160,.12)!important}
button,.bottone,a.bottone,.btn{border-radius:10px!important;border:0!important;background:var(--od-primary)!important;color:#fff!important;padding:10px 16px!important;font-weight:650!important;text-decoration:none!important;cursor:pointer;box-shadow:none!important}
button:hover,.bottone:hover,a.bottone:hover,.btn:hover{background:var(--od-primary-2)!important;transform:translateY(-1px)}
.btn-secondary{background:#eaf0f6!important;color:var(--od-primary)!important}.btn-danger{background:#a93737!important}.btn-success{background:#16634b!important}.btn-ghost{background:#fff!important;color:var(--od-primary)!important;border:1px solid var(--od-border)!important}
table{border-collapse:separate!important;border-spacing:0!important;border:1px solid var(--od-border)!important;border-radius:14px!important;overflow:hidden!important;background:#fff!important;box-shadow:0 5px 18px rgba(25,45,72,.04)!important}
th{background:#f4f7fb!important;color:#435168!important;border-color:var(--od-border)!important;text-transform:uppercase!important;font-size:.72rem!important;letter-spacing:.045em!important}td{border-color:#edf1f5!important;color:#263447!important}tbody tr:hover{background:#fafcff!important}
fieldset{padding:20px 22px!important}legend{font-size:.9rem!important;color:var(--od-primary)!important;background:#fff;padding:0 8px!important}
.msg,.successo,.errore,.alert{border-radius:12px!important;border:1px solid var(--od-border)!important;padding:12px 14px!important}.msg.success,.successo,.alert-success{background:#edf8f4!important;color:#176b50!important}.errore,.error,.alert-error{background:#fff0f0!important;color:#9c3333!important}
.od-page{max-width:1320px;margin:0 auto;padding:30px 32px 60px}.od-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:24px}.od-head h1{margin-bottom:5px!important}.od-head p{margin:0}.od-actions{display:flex;gap:8px;flex-wrap:wrap}.od-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:16px}.od-card{padding:20px}.od-card h3{margin:0 0 5px;font-size:1rem}.od-kpi{grid-column:span 3}.od-kpi strong{display:block;font-size:1.9rem;letter-spacing:-.045em;color:var(--od-primary)}.od-kpi span{font-size:.82rem;color:var(--od-muted)}
.od-form-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:14px}.od-field{grid-column:span 4}.od-field.w6{grid-column:span 6}.od-field.w8{grid-column:span 8}.od-field.w12{grid-column:1/-1}.od-field label{display:block;font-size:.74rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#66758c;margin:0 0 5px}.od-field input,.od-field select,.od-field textarea{width:100%}.od-field textarea{min-height:90px}.od-toolbar{display:flex;align-items:end;gap:10px;flex-wrap:wrap;margin:18px 0}.od-toolbar .od-field{min-width:170px;flex:1}.od-table-wrap{overflow:auto}.od-badge{display:inline-flex;align-items:center;border-radius:999px;padding:4px 9px;font-size:.74rem;font-weight:700;background:#edf2f7;color:#4d5c70;white-space:nowrap}.od-badge.ok{background:#e8f5ef;color:#176b50}.od-badge.warn{background:#fff4df;color:#8a5b12}.od-badge.danger{background:#fdecec;color:#9f3333}.od-badge.info{background:#e9f2fa;color:#245d91}.od-muted{color:var(--od-muted);font-size:.85rem}.od-empty{text-align:center;padding:36px;color:var(--od-muted)}
.od-kanban{display:grid;grid-template-columns:repeat(4,minmax(235px,1fr));gap:14px;overflow:auto;padding-bottom:5px}.od-column{background:#eef3f8;border:1px solid #e0e7ef;border-radius:15px;padding:12px;min-height:180px}.od-column h3{font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;color:#53657c;margin:2px 4px 10px}.od-job{background:#fff;border:1px solid #dfe6ee;border-radius:12px;padding:13px;margin-bottom:9px;box-shadow:0 4px 12px rgba(22,47,78,.05)}.od-job strong{display:block;color:var(--od-text);margin-bottom:2px}.od-job .code{font-size:.72rem;color:#718096}.od-job .due{font-size:.78rem;margin-top:8px;color:#56657a}
.od-timeline{display:flex;flex-direction:column;gap:8px}.od-event{display:grid;grid-template-columns:86px 1fr auto;gap:12px;align-items:center;padding:12px 14px;border:1px solid var(--od-border);border-radius:12px;background:#fff}.od-event-time{font-weight:800;color:var(--od-primary);font-size:1rem}.od-event-main strong{display:block}.od-event-main span{color:var(--od-muted);font-size:.82rem}
@media(max-width:1000px){.od-kpi{grid-column:span 6}.od-kanban{grid-template-columns:repeat(4,260px)}}
@media(max-width:900px){body{margin-left:0!important;padding-top:52px!important}.menu-admin{width:100%!important}.od-page,body>.container,body>.pagina,.container,.pagina{padding:22px 16px 50px!important}.od-head{flex-direction:column}.od-field,.od-field.w6,.od-field.w8{grid-column:span 6}}
@media(max-width:600px){.od-kpi{grid-column:span 12}.od-field,.od-field.w6,.od-field.w8{grid-column:1/-1}.od-event{grid-template-columns:64px 1fr}.od-event>:last-child{grid-column:2}.od-actions{width:100%}.od-actions .btn{flex:1;text-align:center}}
body.login-page{margin-left:0!important;padding-top:0!important;background:radial-gradient(circle at 15% 10%,#eef1f6 0,transparent 32%),linear-gradient(145deg,#f8f8f8,#eeeeee)!important}
body.login-page .login-container{max-width:430px!important;padding:42px!important;border:1px solid #e2e8f0!important;border-radius:22px!important;box-shadow:0 24px 70px rgba(25,53,86,.13)!important;text-align:left!important}
body.login-page .login-container .logo{margin:0 0 28px!important;max-width:175px!important}
body.login-page .login-container h2{font-size:1.65rem!important;color:var(--od-text)!important;letter-spacing:-.03em!important;margin-bottom:7px!important}
body.login-page .login-container h2::after{content:"Accedi al gestionale del punto vendita";display:block;font-size:.87rem;font-weight:400;color:var(--od-muted);letter-spacing:0;margin-top:7px}
body.login-page .login-container label{text-transform:none!important;font-size:.78rem!important;font-weight:700!important;color:#53657c!important;margin:16px 0 6px!important}
body.login-page .login-container button{margin-top:24px!important;min-height:46px}
body.login-page .login-container .link{text-align:left!important;margin-top:22px!important;color:var(--od-muted)!important}
.od-bars{display:flex;flex-direction:column;gap:10px;margin-top:14px}.od-bar-row{display:grid;grid-template-columns:70px 1fr 105px;gap:10px;align-items:center;font-size:.82rem}.od-bar-track{height:10px;background:#eef2f6;border-radius:999px;overflow:hidden}.od-bar-track i{height:100%;display:block;background:var(--od-primary-2);border-radius:999px}.od-bar-row strong{text-align:right}.od-big-rate{font-size:3rem;font-weight:800;letter-spacing:-.05em;color:var(--od-primary);margin-top:18px}.od-status-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}.od-status-list>div{display:flex;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid var(--od-border);border-radius:12px;background:#fff}.od-status-list strong{color:var(--od-primary)}
@media(max-width:700px){.od-bar-row{grid-template-columns:58px 1fr}.od-bar-row strong{grid-column:2}.od-grid>section[style*="span 8"],.od-grid>section[style*="span 6"],.od-grid>section[style*="span 4"]{grid-column:1/-1!important}}
/* v2.3 - icone locali e uniformità azioni */
.ui-icon{width:1.08em;height:1.08em;display:inline-block;vertical-align:-.16em;flex:0 0 auto;color:currentColor}.menu-admin .ui-icon{margin-right:8px;opacity:.92}.menu-admin summary.menu-title>.ui-icon{margin-right:8px}.menu-admin .voci a{display:flex;align-items:center;gap:2px}.menu-admin a.menu-link-diretto{align-items:center}.od-actions .ui-icon,button .ui-icon,a.btn .ui-icon{margin-right:6px}.btn,.od-actions a,button{display:inline-flex;align-items:center;justify-content:center;gap:3px}
