:root{--navy:#142f4b;--navy2:#0f263d;--blue:#2f75b5;--bluebg:#eaf3fb;--paper:#f4f6f9;--white:#fff;--ink:#20344a;--muted:#6d7e8f;--line:#dfe6ed;--green:#26724a;--greenbg:#e7f5ed;--amber:#8a6300;--amberbg:#fff4d4;--red:#a23f44;--redbg:#fbeaec;--violet:#6a50a7;--violetbg:#f0ecfa;--shadow:0 10px 26px rgba(20,47,75,.08)}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--paper);color:var(--ink)}button,input,select,textarea{font:inherit}button{cursor:pointer}.hidden{display:none!important}
.sidebar{position:fixed;inset:0 auto 0 0;width:268px;background:linear-gradient(180deg,var(--navy2),var(--navy));color:#fff;display:flex;flex-direction:column;z-index:20;box-shadow:8px 0 28px rgba(15,38,61,.12)}.logo-row{height:86px;display:flex;align-items:center;gap:12px;padding:0 22px;border-bottom:1px solid rgba(255,255,255,.09)}.logo{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:#fff;color:var(--navy);font-weight:900}.logo-row strong{display:block;font-size:15px}.logo-row span{display:block;margin-top:3px;font-size:.875rem;color:#b9c8d7}.sidebar nav{padding:15px 12px;overflow:auto;flex:1}.nav-label{font-size:.875rem;text-transform:uppercase;letter-spacing:1.4px;color:#91a7bb;padding:13px 13px 6px;margin:0}.sidebar nav button{width:100%;display:flex;align-items:center;gap:12px;border:0;background:transparent;color:#dce6ef;padding:10px 13px;border-radius:10px;text-align:left;font-weight:650;margin:2px 0}.sidebar nav button span{width:20px;text-align:center}.sidebar nav button:hover{background:rgba(255,255,255,.07)}.sidebar nav button.active{background:#fff;color:var(--navy);box-shadow:0 6px 18px rgba(0,0,0,.12)}.sidebar-foot{padding:17px 22px;border-top:1px solid rgba(255,255,255,.09);display:flex;gap:10px;align-items:center}.sidebar-foot strong,.sidebar-foot small{display:block}.sidebar-foot strong{font-size:.875rem}.sidebar-foot small{font-size:.875rem;color:#a9bbcc;margin-top:2px}.status-dot{width:9px;height:9px;border-radius:50%;background:#55d28b;box-shadow:0 0 0 4px rgba(85,210,139,.13)}
.app-shell{margin-left:268px;min-height:100vh}.topbar{height:86px;padding:0 31px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:17px;position:sticky;top:0;z-index:10}.topbar>div:nth-child(2){flex:1}.topbar p{margin:0 0 3px;color:var(--muted);font-size:.875rem}.topbar h1{margin:0;font-size:23px;letter-spacing:-.3px}.top-actions{display:flex;gap:9px;align-items:center}.top-actions select{max-width:190px}.menu-btn{display:none;border:0;background:transparent;font-size:22px}.primary,.secondary,.link-btn{border-radius:9px;padding:10px 15px;font-weight:750}.primary{border:0;background:var(--blue);color:#fff;box-shadow:0 5px 14px rgba(47,117,181,.2)}.secondary{border:1px solid var(--line);background:#fff;color:var(--ink)}.link-btn{border:0;background:var(--bluebg);color:var(--blue)}input,select,textarea{background:#fff;border:1px solid var(--line);border-radius:9px;padding:10px 12px;color:var(--ink)}textarea{min-height:95px;resize:vertical}
.staging-banner{display:none}.is-staging .staging-banner{position:fixed;inset:0 0 auto 0;height:52px;z-index:2147483646;display:flex;align-items:center;justify-content:center;gap:13px;padding:0 18px;background:repeating-linear-gradient(135deg,#b42318 0,#b42318 18px,#c52d20 18px,#c52d20 36px);color:#fff;border-bottom:3px solid #7a160f;box-shadow:0 4px 16px rgba(93,20,14,.35);text-align:center;letter-spacing:.02em}.staging-banner strong{font-size:16px;letter-spacing:.08em}.staging-banner span{font-size:.875rem;font-weight:700}.is-staging .sidebar{top:52px;height:calc(100vh - 52px)}.is-staging .app-shell{padding-top:52px}.is-staging .topbar{top:52px}.is-staging .login-overlay,.is-staging .company-chooser{top:52px}
main{padding:28px 31px 45px;max-width:1650px;margin:auto}.view{display:none}.view.active{display:block}.welcome{background:linear-gradient(120deg,#fff 0%,#edf5fc 100%);border:1px solid #d8e6f2;border-radius:19px;padding:31px 34px;display:flex;align-items:center;justify-content:space-between;box-shadow:var(--shadow)}.welcome h2{font-size:28px;margin:4px 0 8px}.welcome p:last-child{margin:0;color:var(--muted);max-width:820px;line-height:1.5}.welcome-mark{width:93px;height:93px;border-radius:25px;background:var(--navy);color:#fff;display:grid;place-items:center;font-size:32px;font-weight:900}.eyebrow{text-transform:uppercase;font-size:.875rem;letter-spacing:1.5px;font-weight:850;color:var(--blue);margin:0}.section-head{display:flex;justify-content:space-between;align-items:end;margin:3px 0 18px}.section-head h2{font-size:27px;margin:4px 0 5px}.section-head p:last-child{color:var(--muted);margin:0;font-size:.875rem}.subheading{margin:24px 0 10px}
.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0}.kpi-grid.mini{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:0}.kpi{background:#fff;border:1px solid var(--line);border-radius:15px;padding:18px;box-shadow:0 5px 16px rgba(20,47,75,.04)}.kpi .label{font-size:.875rem;color:var(--muted);font-weight:650}.kpi .value{font-size:27px;font-weight:900;color:var(--navy);margin-top:8px}.kpi .hint{font-size:.875rem;color:var(--muted);margin-top:3px}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.panel{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 5px 17px rgba(20,47,75,.04)}.panel-head{padding:17px 19px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.panel-head h3{margin:3px 0 0;font-size:18px}.list-empty{padding:29px;color:var(--muted);text-align:center}.list-row{display:grid;grid-template-columns:1fr auto;gap:12px;padding:13px 19px;border-bottom:1px solid #edf1f5}.list-row strong{display:block;font-size:.875rem}.list-row small{display:block;color:var(--muted);margin-top:3px}.date-chip{font-size:.875rem;font-weight:800;border-radius:100px;padding:5px 9px;background:var(--amberbg);color:var(--amber);align-self:center}.activity-item{padding:12px 19px;border-bottom:1px solid #edf1f5;display:grid;grid-template-columns:10px 1fr auto;gap:10px}.activity-dot{width:8px;height:8px;border-radius:50%;background:var(--blue);margin-top:5px}.activity-item strong{font-size:.875rem}.activity-item p{font-size:.875rem;color:var(--muted);margin:3px 0}.activity-item time{font-size:.875rem;color:#8e9cab}
.toolbar{display:flex;gap:10px;margin-bottom:12px}.toolbar input{min-width:330px}.table-card{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:auto;box-shadow:0 5px 16px rgba(20,47,75,.04)}table{width:100%;border-collapse:collapse;font-size:.875rem}th{font-size:.875rem;text-transform:uppercase;letter-spacing:.65px;color:var(--muted);background:#f9fbfc;padding:12px 14px;text-align:left;border-bottom:1px solid var(--line);white-space:nowrap}td{padding:12px 14px;border-bottom:1px solid #edf1f5;vertical-align:middle}tbody tr:hover{background:#f8fbfd}td strong{display:block}.sub{font-size:.875rem;color:var(--muted);margin-top:3px}.money{text-align:right;font-variant-numeric:tabular-nums}.pill{display:inline-flex;align-items:center;border-radius:100px;padding:5px 9px;font-size:.875rem;font-weight:800;background:#edf1f4;color:#526778;white-space:nowrap}.pill.active,.pill.approved,.pill.published,.pill.acknowledged,.pill.completed,.pill.revenue{background:var(--greenbg);color:var(--green)}.pill.pending,.pill.draft,.pill.simulation,.pill.processing{background:var(--amberbg);color:var(--amber)}.pill.rejected,.pill.inactive,.pill.failed,.pill.cost{background:var(--redbg);color:var(--red)}.pill.employee,.pill.intercompany{background:var(--violetbg);color:var(--violet)}.mini-actions{display:flex;gap:6px}.mini-btn{border:1px solid var(--line);background:#fff;color:var(--blue);border-radius:8px;padding:6px 8px;font-size:.875rem;font-weight:750}
.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.store-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:18px;box-shadow:0 5px 16px rgba(20,47,75,.04)}.store-card h3{margin:0 0 5px}.store-card p{margin:0;color:var(--muted);font-size:.875rem}.store-meta{margin-top:14px;border-top:1px solid #edf1f4;padding-top:12px;display:flex;justify-content:space-between}.document-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.document-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px;display:flex;gap:12px}.doc-icon{width:43px;height:51px;border-radius:9px;background:#eef2f7;color:var(--navy);display:grid;place-items:center;font-weight:900;font-size:.875rem;flex:none}.document-card h3{margin:0 0 4px;font-size:14px}.document-card p{margin:0 0 8px;color:var(--muted);font-size:.875rem}.doc-body{min-width:0;flex:1}.communication-list{display:grid;gap:12px}.communication-card,.contest-card,.scenario-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:18px 20px;box-shadow:0 5px 16px rgba(20,47,75,.04)}.communication-card h3,.contest-card h3,.scenario-card h3{margin:5px 0 8px}.communication-card .body{white-space:pre-wrap;color:#455b70;line-height:1.5;font-size:.875rem}.meta{margin-top:12px;display:flex;gap:8px;align-items:center;color:var(--muted);font-size:.875rem;flex-wrap:wrap}.contest-grid,.scenario-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.contest-card .top,.scenario-card .top{display:flex;justify-content:space-between;gap:10px}.scenario-result{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:14px}.scenario-result div{background:#f7f9fb;border-radius:9px;padding:10px}.scenario-result strong{display:block;font-size:16px}.scenario-result small{color:var(--muted)}
.info-banner{background:#edf5fc;border:1px solid #d6e7f5;color:#315b7c;padding:13px 15px;border-radius:11px;margin:14px 0;font-size:.875rem}.import-zone{background:#fff;border:2px dashed #b8ccdc;border-radius:16px;padding:22px;display:grid;grid-template-columns:1fr auto auto auto;gap:12px;align-items:center}.import-zone p{margin:5px 0 0;color:var(--muted);font-size:.875rem}.import-zone input{max-width:280px}
form{min-width:min(760px,90vw)}dialog{border:0;border-radius:17px;padding:0;box-shadow:0 24px 70px rgba(20,47,75,.25)}dialog::backdrop{background:rgba(9,24,38,.55)}#dynamicForm,#decisionForm{padding:27px;position:relative}.dialog-x{position:absolute;right:14px;top:11px;border:0;background:transparent;font-size:24px;color:var(--muted)}.form-title{margin:0 0 4px}.form-subtitle{margin:0 0 20px;color:var(--muted);font-size:.875rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid label,#decisionForm label{display:grid;gap:6px;font-size:.875rem;font-weight:700}.form-grid .wide{grid-column:1/-1}.checkbox{display:flex!important;grid-auto-flow:column;justify-content:start;align-items:center}.checkbox input{width:auto}.dialog-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:22px}.dialog-actions button{min-width:105px}#toast{position:fixed;right:24px;bottom:24px;background:var(--navy);color:#fff;padding:12px 16px;border-radius:10px;box-shadow:var(--shadow);opacity:0;transform:translateY(10px);pointer-events:none;transition:.2s;z-index:2147483647}#toast.show{opacity:1;transform:none}
@media(max-width:1100px){.kpi-grid,.kpi-grid.mini{grid-template-columns:repeat(2,1fr)}.card-grid,.document-grid{grid-template-columns:repeat(2,1fr)}.import-zone{grid-template-columns:1fr 1fr}.import-zone>div{grid-column:1/-1}}
@media(max-width:820px){.sidebar{transform:translateX(-100%);transition:.2s}.sidebar.open{transform:none}.sidebar-backdrop{position:fixed;inset:0;background:rgba(8,25,41,.42);z-index:19;opacity:0;pointer-events:none;transition:opacity .2s}.sidebar-backdrop.visible{opacity:1;pointer-events:auto}.app-shell{margin-left:0}.menu-btn{display:block}.topbar{padding:0 16px}.top-actions select{display:none}main{padding:18px 14px 35px}.grid-2,.contest-grid,.scenario-grid,.card-grid,.document-grid{grid-template-columns:1fr}.welcome-mark{display:none}.welcome{padding:23px}.welcome h2{font-size:23px}.toolbar input{min-width:0;width:100%}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.import-zone{grid-template-columns:1fr}.kpi-grid,.kpi-grid.mini{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.is-staging .staging-banner{height:62px;flex-direction:column;gap:2px;padding:7px 12px;line-height:1.15}.staging-banner strong{font-size:14px}.staging-banner span{font-size:.875rem}.is-staging .sidebar{top:62px;height:calc(100vh - 62px)}.is-staging .app-shell{padding-top:62px}.is-staging .topbar{top:62px}.is-staging .login-overlay,.is-staging .company-chooser{top:62px}}

/* 0.12.2-rc2 · r12: safe area iPhone, identità, ticket compatti e presenze */
:root{--safe-top:env(safe-area-inset-top,0px);--staging-content-height:52px}
.topbar{height:calc(86px + var(--safe-top));padding-top:var(--safe-top)}
.sidebar{padding-top:var(--safe-top)}
.login-overlay,.company-chooser{padding-top:calc(24px + var(--safe-top))}
.is-staging .staging-banner{height:calc(var(--staging-content-height) + var(--safe-top));padding-top:var(--safe-top)}
.is-staging .sidebar{top:calc(var(--staging-content-height) + var(--safe-top));height:calc(100vh - var(--staging-content-height) - var(--safe-top));padding-top:0}
.is-staging .app-shell{padding-top:calc(var(--staging-content-height) + var(--safe-top))}
.is-staging .topbar{top:calc(var(--staging-content-height) + var(--safe-top));height:86px;padding-top:0}
.is-staging .login-overlay,.is-staging .company-chooser{top:calc(var(--staging-content-height) + var(--safe-top));padding-top:24px}
.brand-logo{display:block;object-fit:contain}.brand-logo-full{width:155px;height:42px}.brand-logo-sidebar{width:88px;height:46px;flex:none;background:#fff;border-radius:9px;padding:5px}.logo-row{height:auto;min-height:86px}.logo-row>div:last-child{min-width:0}.logo-row strong{line-height:1.25}.welcome-mark{background:#fff;border:1px solid #d6e3ed;overflow:hidden;padding:10px}.welcome-mark img{width:100%;height:100%;object-fit:contain}.welcome-mark img.round-logo{width:150%;max-width:none}.brand-logo-sidebar.round-logo{width:105px}.passkey-login{width:100%;padding:11px}.top-actions #passkeySetupBtn{white-space:nowrap}
.communication-list{gap:7px}.communication-card{min-height:0;padding:10px 13px;gap:12px;margin-bottom:0;border-radius:11px;border-left-width:4px;box-shadow:0 3px 10px rgba(20,47,75,.045)}.communication-main h3{margin:5px 0 3px;font-size:14px}.communication-main .communication-meta{gap:5px;font-size:.875rem}.communication-open-area>p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;margin:4px 0;font-size:.875rem;line-height:1.35}.communication-open-area>small{font-size:.875rem}.communication-card .ticket-lifecycle,.communication-card .ticket-reopened-summary{margin-top:6px;padding:6px 8px;font-size:.875rem}.communication-actions{min-width:120px;flex-direction:row;align-items:center;justify-content:flex-end;flex-wrap:wrap}.communication-actions .mini-btn,.communication-actions .primary{padding:6px 9px;font-size:.875rem}
.attendance-clock-panel{padding:22px;background:linear-gradient(125deg,#102c45,#204f72);color:#fff;border-radius:20px;box-shadow:0 15px 32px rgba(15,45,68,.2)}.attendance-clock-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.attendance-clock-head h3{margin:4px 0;font-size:23px}.attendance-clock-head p:last-child{margin:0;color:#c5d7e5}.server-clock{text-align:right;display:grid}.server-clock strong{font-size:30px;letter-spacing:.03em}.server-clock small{color:#bcd0df}.attendance-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:22px 0 14px}.attendance-action{border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.08);color:#fff;border-radius:14px;padding:14px 10px;display:grid;place-items:center;gap:7px;opacity:.38}.attendance-action.available{opacity:1;background:#fff;color:var(--navy);box-shadow:0 7px 18px rgba(0,0,0,.15)}.attendance-action:disabled{cursor:not-allowed}.attendance-action span{font-size:24px}.attendance-action strong{font-size:.875rem}.attendance-requirements{display:flex;gap:7px;flex-wrap:wrap}.attendance-requirements span{padding:5px 8px;border-radius:999px;background:rgba(255,255,255,.1);font-size:.875rem}.attendance-summary{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:14px}.attendance-summary>div{padding:10px 12px;background:rgba(255,255,255,.08);border-radius:11px}.attendance-summary>div.attendance-summary-alert{background:rgba(255,181,71,.2);box-shadow:inset 0 0 0 1px rgba(255,205,126,.35)}.attendance-summary small,.attendance-summary strong{display:block}.attendance-summary small{color:#c5d7e5;font-size:.875rem;text-transform:uppercase}.attendance-summary strong{margin-top:4px}.attendance-grid{margin-top:16px}.attendance-event,.attendance-correction{display:flex;align-items:center;gap:11px;padding:11px 14px;border-bottom:1px solid var(--line)}.attendance-event-anomaly{background:#fff8ed}.attendance-event-anomaly .attendance-event-icon{background:#fff0d6;color:#ad6200}.attendance-event-icon{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:var(--bluebg);color:var(--blue);font-weight:900}.attendance-event>div,.attendance-correction>div:first-child{flex:1;min-width:0}.attendance-event strong,.attendance-event small,.attendance-correction strong,.attendance-correction small{display:block}.attendance-event small,.attendance-correction small{margin-top:3px;color:var(--muted);font-size:.875rem}.attendance-event .attendance-anomaly-label{color:#9a5600;font-weight:800}.attendance-verification{font-size:.875rem;color:var(--green);font-weight:800}.attendance-admin-panel{margin-top:16px}.attendance-admin-panel td small{display:block;margin-top:3px;color:var(--muted)}.attendance-row-anomaly{background:#fffaf1}.attendance-filters{display:flex;gap:7px}.attendance-filters input{max-width:145px}.attendanceCorrectionDialog form,#attendanceCorrectionForm,#attendanceStoreForm{padding:27px;position:relative}.attendanceCorrectionDialog label,#attendanceCorrectionForm>label{display:grid;gap:6px;margin:12px 0;font-size:.875rem;font-weight:750}.attendance-store-dialog{width:min(820px,95vw)}.attendance-qr-preview{display:grid;grid-template-columns:220px 1fr;gap:20px;align-items:center;margin-top:18px;padding:16px;border:1px solid var(--line);border-radius:14px;background:#f7fafc}.attendance-qr-preview svg{width:200px;height:200px;background:#fff}.attendance-qr-preview p{color:var(--muted)}.attendance-qr-preview small{display:block;word-break:break-all;color:#7a8a98}
.attendance-row-corrected{background:#fff8f1;color:#7b6252}.attendance-row-corrected td:first-child,.attendance-row-corrected td:nth-child(5){text-decoration:line-through;text-decoration-thickness:1px}
.attendance-verification-panel{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:0 0 12px}.attendance-verification-panel .primary{background:#fff;color:var(--navy);border-color:#fff}.attendance-live-status{padding:7px 10px;border-radius:10px;background:rgba(255,255,255,.1);font-size:.875rem}.attendance-live-status.ready{background:rgba(35,190,120,.24);color:#e6fff3}.attendance-live-status.warning{background:rgba(255,184,77,.22);color:#fff5df}.attendance-scanner-dialog{width:min(520px,95vw);padding:26px}.attendance-camera-frame{position:relative;overflow:hidden;border-radius:18px;background:#07131e;aspect-ratio:3/4;max-height:62vh;margin-top:16px}.attendance-camera-frame video{width:100%;height:100%;object-fit:cover;display:block}.attendance-camera-guide{position:absolute;inset:22%;border:3px solid #fff;border-radius:20px;box-shadow:0 0 0 999px rgba(0,0,0,.34)}.attendance-scanner-status{margin-top:12px;padding:10px 12px;border-radius:11px;background:var(--bluebg);color:var(--navy);font-weight:700}.attendance-scanner-status.error{background:#fff1ee;color:#9b332c}#attendanceReminderForm{padding:27px;position:relative}#attendanceReminderForm>label{display:grid;gap:6px;margin:12px 0;font-size:.875rem;font-weight:750}#attendanceReminderForm>label.checkbox{display:flex}
@media(max-width:820px){.top-actions #passkeySetupBtn{display:none}.brand-logo-sidebar{width:100px}.attendance-actions{grid-template-columns:1fr 1fr}.attendance-clock-panel{padding:17px}.attendance-clock-head h3{font-size:19px}.server-clock strong{font-size:24px}.attendance-summary{grid-template-columns:1fr 1fr}.attendance-admin-panel{overflow:hidden}.attendance-filters{width:100%;flex-wrap:wrap}.attendance-filters input{max-width:none;flex:1}.communication-card{flex-direction:row}.communication-actions{align-items:center;min-width:96px}}
@media(max-width:620px){:root{--staging-content-height:62px}.login-overlay,.company-chooser{padding-top:calc(14px + var(--safe-top));padding-bottom:max(14px,env(safe-area-inset-bottom,0px))}.is-staging .login-overlay,.is-staging .company-chooser{padding-top:14px}.is-staging .staging-banner{height:calc(var(--staging-content-height) + var(--safe-top));padding:calc(7px + var(--safe-top)) 12px 7px}.attendance-summary{grid-template-columns:1fr}.attendance-clock-head{align-items:center}.attendance-requirements{display:grid}.attendance-requirements span{text-align:center}.attendance-correction{align-items:flex-start;flex-wrap:wrap}.attendance-qr-preview{grid-template-columns:1fr;text-align:center}.attendance-qr-preview svg{max-width:100%;margin:auto}.communication-card{padding:9px 10px}.communication-actions{align-items:flex-end;flex-direction:column}.communication-open-area>p{-webkit-line-clamp:1}}
@media(max-width:620px){.attendance-verification-panel{display:grid}.attendance-verification-panel>*{width:100%;text-align:center}.attendance-scanner-dialog{padding:20px}.attendance-camera-frame{max-height:58vh}}

/* v0.4.0: selezione società, filtri e configurazione multi-brand */
.company-chooser{position:fixed;inset:0;background:rgba(8,23,37,.72);backdrop-filter:blur(7px);z-index:200;display:grid;place-items:center;padding:24px}.chooser-panel{width:min(760px,96vw);background:#fff;border-radius:24px;padding:34px;box-shadow:0 30px 90px rgba(0,0,0,.28)}.chooser-panel h1{margin:7px 0 8px;font-size:31px}.chooser-intro{color:var(--muted);margin:0 0 24px;line-height:1.5}.company-choices{display:grid;gap:12px}.company-choice{display:grid;grid-template-columns:58px 1fr auto;gap:15px;align-items:center;width:100%;border:1px solid var(--line);background:#fff;padding:17px;border-radius:15px;text-align:left;color:var(--ink);transition:.15s}.company-choice:hover{border-color:#9fc0dd;transform:translateY(-1px);box-shadow:var(--shadow)}.company-choice strong,.company-choice small{display:block}.company-choice strong{font-size:17px}.company-choice small{color:var(--muted);margin-top:4px}.company-choice b{color:var(--blue);font-size:.875rem}.choice-logo{width:52px;height:52px;border-radius:14px;background:var(--navy);color:#fff;display:grid;place-items:center;font-weight:900}.admin-choice{width:100%;margin-top:13px}.current-company{margin:12px 13px 0;padding:12px 14px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.06);border-radius:11px}.current-company small,.current-company strong{display:block}.current-company small{color:#9db1c3;font-size:.875rem;text-transform:uppercase;letter-spacing:1px}.current-company strong{font-size:.875rem;margin-top:4px;color:#fff}.filter-toolbar{flex-wrap:wrap;align-items:center}.filter-toolbar input,.filter-toolbar select{min-width:150px}.filter-toolbar input:first-child{flex:1;min-width:240px}.result-count{font-size:.875rem;color:var(--muted);font-weight:700;margin:0 0 9px}.brand-list{padding:16px 18px;display:flex;gap:9px;flex-wrap:wrap}.brand-chip{border:1px solid #cfe0ee;background:#f4f9fd;color:var(--navy);border-radius:100px;padding:8px 12px;font-weight:800}.brand-chip small{font-weight:600;color:var(--muted);margin-left:4px}.brand-chip.inactive{opacity:.55}.compact-panel{margin-top:16px}.borderless{border:0;border-radius:0;box-shadow:none}.hr-import{margin-bottom:15px}.field-hint{font-size:.875rem;color:var(--muted);font-weight:500}.form-grid select[multiple]{min-height:135px}.system-panel{padding:22px}.system-panel h3{margin-top:0}.system-panel li{margin:9px 0;color:#40576d}.path-box{padding:13px 15px;background:#eff4f8;border:1px solid var(--line);border-radius:9px;font:12px ui-monospace,SFMono-Regular,Menlo,monospace;overflow:auto;margin-top:17px}.pill.high{background:var(--amberbg);color:var(--amber)}.pill.urgent{background:var(--redbg);color:var(--red)}
@media(max-width:1250px){.top-actions #changeCompanyBtn{display:none}.filter-toolbar input,.filter-toolbar select{min-width:130px}}
@media(max-width:820px){.company-choice{grid-template-columns:50px 1fr}.company-choice b{display:none}.chooser-panel{padding:24px}.chooser-panel h1{font-size:25px}.current-company{margin-top:8px}.filter-toolbar>*{width:100%;min-width:0!important}.top-actions #refreshBtn{display:none}}

/* v0.5.0: CRM Digitale, agenda negozi e notifiche */
.crm-flow{display:grid;grid-template-columns:repeat(9,auto);gap:10px;align-items:center;justify-content:center;background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;margin:18px 0;box-shadow:0 5px 16px rgba(20,47,75,.04)}.crm-flow div{display:grid;grid-template-columns:34px auto;align-items:center;gap:9px;padding:9px 12px;background:#f5f9fc;border-radius:11px}.crm-flow strong{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--blue);color:#fff}.crm-flow span{font-size:.875rem;font-weight:800;color:var(--navy)}.crm-flow>b{color:#91a5b7}.crm-import{grid-template-columns:1fr minmax(220px,280px) minmax(220px,320px) auto}.notification-list{display:grid}.notification-card{display:flex;justify-content:space-between;gap:12px;padding:14px 18px;border-bottom:1px solid #edf1f5;background:#fff}.notification-card.read{opacity:.62}.notification-card strong{font-size:.875rem}.notification-card p{margin:4px 0;color:var(--muted);font-size:.875rem}.notification-card small{color:#8c9aaa}.mapping-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.mapping-grid label{display:grid;gap:6px;font-size:.875rem;font-weight:750}.preview-table{margin-top:18px;max-height:280px;overflow:auto;border:1px solid var(--line);border-radius:12px}.preview-table table{font-size:.875rem}.preview-table th,.preview-table td{padding:8px 10px;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#crmImportForm,#activityForm{padding:27px;position:relative;min-width:min(980px,94vw)}.overdue{background:var(--redbg);color:var(--red)}.overdue-text{color:var(--red);font-weight:800}.pill.new,.pill.assigned,.pill.accepted{background:var(--bluebg);color:var(--blue)}.pill.followup,.pill.reschedule,.pill.to_review,.pill.dealer_loaded,.pill.working,.pill.completed_with_warnings{background:var(--amberbg);color:var(--amber)}.pill.appointment,.pill.practice,.pill.arrived{background:var(--violetbg);color:var(--violet)}.pill.converted,.pill.completed,.pill.active{background:var(--greenbg);color:var(--green)}.pill.not_interested,.pill.unreachable,.pill.ko,.pill.no_show,.pill.cancelled{background:var(--redbg);color:var(--red)}
@media(max-width:1100px){.crm-flow{grid-template-columns:1fr}.crm-flow>b{transform:rotate(90deg);justify-self:center}.crm-import{grid-template-columns:1fr 1fr}.crm-import>div{grid-column:1/-1}}
@media(max-width:820px){.mapping-grid{grid-template-columns:1fr}.crm-import{grid-template-columns:1fr}#crmImportForm,#activityForm{min-width:94vw}}

/* v0.6.0: accessi personali, ruoli e postazione negozio */
.login-overlay{position:fixed;inset:0;z-index:500;background:linear-gradient(135deg,#0b2135,#183f61);display:grid;place-items:center;padding:24px}.login-overlay.hidden{display:none}.login-card{width:min(430px,94vw);min-width:0;background:#fff;border-radius:22px;padding:31px;box-shadow:0 35px 100px rgba(0,0,0,.35);display:grid;gap:14px}.login-card h1{margin:0;font-size:28px}.login-card>p:not(.eyebrow){margin:0 0 4px;color:var(--muted);line-height:1.45}.login-card label{display:grid;gap:6px;font-size:.875rem;font-weight:750}.login-brand{display:flex;align-items:center;gap:12px;padding-bottom:15px;border-bottom:1px solid var(--line)}.login-brand strong,.login-brand span{display:block}.login-brand span{font-size:.875rem;color:var(--muted);margin-top:3px}.login-error{min-height:18px;color:var(--red);font-size:.875rem;font-weight:700}.login-submit{width:100%;padding:12px}.login-help{color:var(--muted);line-height:1.45}.user-chip{display:grid;padding:5px 10px;border-left:1px solid var(--line);min-width:130px}.user-chip small{font-size:.875rem;text-transform:uppercase;letter-spacing:.8px;color:var(--muted)}.user-chip strong{font-size:.875rem;max-width:170px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.permission-note{font-size:.875rem;color:var(--muted)}#passwordForm{padding:27px;position:relative;min-width:min(480px,90vw)}#passwordForm label{display:grid;gap:6px;font-size:.875rem;font-weight:700;margin:12px 0}.quick-actions{display:flex;gap:5px;flex-wrap:wrap}.mini-btn.success{color:var(--green);border-color:#b8ddc8}.mini-btn.warning{color:var(--amber);border-color:#ead18a}.mini-btn.danger{color:var(--red);border-color:#efb9bd}.sidebar nav button.permission-hidden{display:none}.company-chooser .admin-choice.permission-hidden{display:none}.locked-select{pointer-events:none;background:#eef2f5;color:#627487}.must-change-banner{background:var(--amberbg);color:var(--amber);border:1px solid #ecd78f;padding:10px 14px;border-radius:10px;font-size:.875rem;font-weight:750;margin-bottom:14px}
@media(max-width:1250px){.top-actions .user-chip{display:none}.top-actions #changePasswordBtn{display:none}}
@media(max-width:820px){.top-actions #logoutBtn{display:none}.login-card{padding:24px}}


/* v0.7.0: turni, visibilità personale, ruoli multi-sede e dettaglio vendite */
.wide-dialog{width:min(1180px,96vw);max-width:1180px;max-height:90vh;overflow:auto;padding:27px;position:relative}
.sale-line-card{border:1px solid var(--line);border-radius:14px;background:#fff;margin:12px 0;overflow:hidden}
.sale-line-head{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:14px 16px;background:#f5f9fc;border-bottom:1px solid var(--line)}
.sale-line-head strong{font-size:.875rem;color:var(--navy)}
.sale-line-head span{font-size:.875rem;font-weight:800;color:var(--blue);white-space:nowrap}
.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:1px;background:var(--line)}
.detail-grid>div{display:grid;gap:4px;padding:11px 13px;background:#fff;min-width:0}
.detail-grid small{font-size:.875rem;text-transform:uppercase;letter-spacing:.65px;color:var(--muted);font-weight:800}
.detail-grid strong{font-size:.875rem;color:var(--ink);overflow-wrap:anywhere}
.field-help{display:block;color:var(--muted);font-size:.875rem;line-height:1.4;margin-top:4px;font-weight:500}
.form-grid select[multiple]{min-height:135px;padding:8px}
.personal-dashboard-note{padding:12px 15px;border-radius:11px;background:var(--bluebg);color:var(--blue);font-size:.875rem;font-weight:700;margin-bottom:14px}
@media(max-width:820px){.wide-dialog{width:96vw;padding:20px}.sale-line-head{align-items:flex-start;flex-direction:column}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* v0.8.0 */
.sales-filters{align-items:end}.sales-filters input,.sales-filters select{min-width:145px}.sales-filters #salesSearch{min-width:310px;flex:2}
.fund-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;margin:0 0 20px}.fund-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;display:flex;justify-content:space-between;gap:18px;box-shadow:var(--shadow)}.fund-card.low{border-color:#e8a33b;background:#fffaf0}.fund-card h3{margin:10px 0 4px}.fund-card p{margin:0;color:var(--muted)}.fund-balance{text-align:right;display:flex;flex-direction:column;gap:4px}.fund-balance strong{font-size:1.35rem}.fund-balance span,.fund-balance small{color:var(--muted)}
.amount{font-weight:750;white-space:nowrap}.amount.negative{color:#a12b2b}.amount.positive{color:#18734b}
.communication-card{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;padding:20px;background:#fff;border:1px solid var(--line);border-left:5px solid #9db1c2;border-radius:15px;margin-bottom:12px;box-shadow:var(--shadow)}.communication-card.unread{background:#f7fbff}.communication-card.priority-high{border-left-color:#e8a33b}.communication-card.priority-urgent{border-left-color:#c63d3d}.communication-main{min-width:0;flex:1}.communication-main h3{margin:9px 0 7px}.communication-main p{white-space:pre-wrap}.communication-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;color:var(--muted);font-size:.88rem}.communication-actions{display:flex;gap:8px;align-items:flex-end;flex-direction:column;min-width:170px}.message-thread{max-height:48vh;overflow:auto;padding:12px;background:#f5f7f9;border:1px solid var(--line);border-radius:14px;margin:18px 0}.message{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px;margin-bottom:10px}.message header{display:flex;justify-content:space-between;gap:15px;color:var(--muted)}.message p{white-space:pre-wrap}.thread-actions{flex-wrap:wrap}.idle-dialog{max-width:480px}.idle-dialog::backdrop{background:rgba(13,30,45,.66)}.idle-dialog strong{font-size:1.2em}.muted-field{opacity:.55;pointer-events:none}
.communication-tabs{display:flex;gap:8px;margin:0 0 12px;border-bottom:1px solid var(--line)}.communication-tabs button{border:0;border-bottom:3px solid transparent;background:transparent;padding:12px 14px;color:var(--muted);font:inherit;font-weight:800;cursor:pointer}.communication-tabs button.active{color:var(--navy);border-bottom-color:var(--blue)}.communication-tabs span{display:inline-grid;place-items:center;min-width:20px;height:20px;margin-left:5px;padding:0 6px;border-radius:999px;background:#edf3f8;color:#49647b;font-size:.875rem}.communication-tabs button.active span{background:#e1f0fc;color:var(--blue)}.communication-tab-summary{display:flex;gap:9px;align-items:baseline;padding:12px 14px;margin:0 0 14px;border:1px solid #dbe6ef;border-radius:12px;background:#f7fafc}.communication-tab-summary strong{color:var(--navy)}.communication-tab-summary span{color:var(--muted);font-size:.875rem}.communication-card.ticket-card{border-left-color:#6387a7}.communication-card.information-card{border-left-color:#5a8bb7}.communication-card .body{margin:0;line-height:1.5;color:#455b70}.pill.information{background:#eef4fa;color:#416a8f}.pill.acknowledged{background:#edf8f2;color:#18734b}.pill.pending{background:#fff3d7;color:#8a5c00}
@media(max-width:800px){.communication-card,.fund-card{flex-direction:column}.communication-actions{align-items:flex-start;min-width:0}.fund-balance{text-align:left}.sales-filters #salesSearch{min-width:100%}.communication-tabs{overflow:auto}.communication-tabs button{white-space:nowrap}.communication-tab-summary{display:grid;gap:4px}}

/* v0.9 · ticket, notifiche e visualizzatore allegati */
.notification-bell{position:relative;width:42px;height:42px;border:1px solid var(--line);border-radius:12px;background:#fff;display:grid;place-items:center;font-size:18px;cursor:pointer}.notification-bell.has-unread{background:#f7fbff;border-color:#9cc2e9}.notification-bell b{position:absolute;right:-6px;top:-7px;min-width:20px;height:20px;padding:0 5px;border-radius:12px;background:#c63d3d;color:#fff;font-size:.875rem;line-height:20px;text-align:center;box-shadow:0 2px 6px rgba(0,0,0,.18)}
.communication-card.overdue{border-color:#e7b1b1;border-left-color:#c63d3d}.ticket-type{background:#eef3f7;color:#486276}.overdue-pill{background:#fde8e8;color:#9f2424}.ticket-lifecycle{background:#f5f8fb;border:1px solid var(--line);border-radius:10px;padding:10px 12px;margin:12px 0 0;color:#536a7f}.attachment-head{margin-top:12px}
.file-preview-dialog{width:min(1100px,94vw);height:min(850px,92vh);padding:22px}.file-preview-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:15px}.file-preview-head h2{margin:2px 0 0}.file-preview-content{height:calc(100% - 80px);min-height:500px;background:#f4f6f8;border:1px solid var(--line);border-radius:14px;overflow:hidden;display:grid;place-items:center}.file-preview-content iframe{width:100%;height:100%;border:0;background:#fff}.file-preview-content img{max-width:100%;max-height:100%;object-fit:contain}.preview-unavailable{max-width:540px;text-align:center;padding:36px}.preview-unavailable strong{font-size:1.15rem}.preview-unavailable span{display:inline-block;margin-top:10px;padding:7px 10px;background:#fff;border:1px solid var(--line);border-radius:8px;color:var(--muted)}
@media(max-width:820px){.notification-bell{width:38px;height:38px}.file-preview-dialog{width:98vw;height:94vh;padding:16px}.file-preview-head{align-items:flex-start}.file-preview-content{min-height:420px}}

.fund-list.compact{display:grid;gap:8px;width:100%}.fund-row{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:#fff}.fund-row>div{display:grid;gap:3px}.fund-row span{font-size:.875rem;color:var(--muted)}.inline-create{display:grid;grid-template-columns:1fr auto;gap:6px}

/* v0.9.2 · guida operativa ticket, dashboard e centro notifiche */
.ticket-action-guide{display:grid;grid-template-columns:42px 1fr;gap:12px;align-items:flex-start;margin:16px 0;padding:14px 16px;border:1px solid var(--line);border-radius:13px;background:#f6f9fc}.ticket-action-guide .guide-icon{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:#fff;border:1px solid var(--line);font-weight:900}.ticket-action-guide strong{display:block;color:var(--navy);margin:1px 0 4px}.ticket-action-guide p{margin:0;color:var(--muted);line-height:1.45;font-size:.875rem}.ticket-action-guide.action{background:#eef7ff;border-color:#b9d8f1}.ticket-action-guide.review{background:#fff8e8;border-color:#ead59d}.ticket-action-guide.done{background:#edf8f2;border-color:#b9dfc9}.ticket-action-guide.waiting{background:#f7f7f7}.ticket-action-guide.info{background:#f5f8fb}
.attention-row{width:100%;border:0;border-bottom:1px solid #edf1f5;background:#fff;display:grid;grid-template-columns:38px 1fr auto;gap:12px;align-items:center;padding:14px 16px;text-align:left;color:var(--ink)}.attention-row:first-child{border-radius:12px 12px 0 0}.attention-row:last-child{border-bottom:0;border-radius:0 0 12px 12px}.attention-row:hover{background:#f7fbff}.attention-row .attention-icon{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:#edf4fa;color:var(--navy);font-weight:900}.attention-row strong,.attention-row small{display:block}.attention-row small{margin-top:3px;color:var(--muted)}.attention-row b{min-width:30px;text-align:center;padding:5px 8px;border-radius:999px;background:#edf4fa;color:var(--navy)}.attention-row.level-urgent .attention-icon,.attention-row.level-urgent b{background:#fde8e8;color:#9f2424}.attention-row.level-warning .attention-icon,.attention-row.level-warning b{background:#fff3d7;color:#8a5c00}.attention-empty{padding:24px;text-align:center;color:var(--muted)}.attention-empty strong{display:block;color:var(--green);margin-bottom:6px}.attention-empty p{margin:0}
.notification-center-dialog{width:min(760px,94vw);max-height:88vh;overflow:auto;padding:26px;position:relative}.notification-center-head h2{margin:4px 0 6px}.notification-center-head>p:last-child{margin:0 0 18px;color:var(--muted)}.notification-center-list{display:grid;gap:9px}.notification-center-item{display:grid;grid-template-columns:42px 1fr auto;gap:12px;align-items:center;border:1px solid var(--line);border-radius:13px;background:#fff;padding:13px 14px;text-align:left;color:inherit;font:inherit}.notification-center-item:hover{border-color:#a9cae6;background:#f9fcff}.notification-center-item .notification-icon{width:38px;height:38px;border-radius:11px;background:#eef4f9;display:grid;place-items:center;font-weight:900;color:var(--navy)}.notification-center-item strong,.notification-center-item small{display:block}.notification-center-item small{margin-top:4px;color:var(--muted);line-height:1.35}.notification-center-item time{display:block;margin-top:5px;color:#8a99a7;font-size:.875rem}.notification-center-item .notification-action{white-space:nowrap}.notification-center-item.level-urgent{border-left:5px solid #c63d3d}.notification-center-item.level-warning{border-left:5px solid #d69a2d}.notification-center-item.level-action{border-left:5px solid var(--blue)}.notification-center-empty{padding:36px 20px;text-align:center;border:1px dashed var(--line);border-radius:14px;color:var(--muted)}.notification-center-empty strong{display:block;color:var(--green);font-size:17px;margin-bottom:6px}.warning-text{color:var(--red)!important;font-weight:700!important}
@media(max-width:700px){.notification-center-dialog{width:97vw;padding:20px}.notification-center-item{grid-template-columns:38px 1fr}.notification-center-item .notification-action{grid-column:1/-1;width:100%}.ticket-action-guide{grid-template-columns:36px 1fr}.attention-row{grid-template-columns:34px 1fr auto}}

/* v0.9.4 · gestione fondi compatta e libro movimenti */
.section-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.fund-management{margin:0 0 22px}.fund-management .panel-head{margin-bottom:12px}.fund-row{grid-template-columns:minmax(220px,1.5fr) minmax(150px,.9fr) minmax(150px,.8fr) auto}.fund-row.low{border-color:#e0aa49;background:#fffaf0}.fund-row-main strong{font-size:.875rem;color:var(--navy)}.fund-row-main small,.fund-row-meta small,.fund-row-balance small{display:block;color:var(--muted);font-size:.875rem;margin-top:3px}.fund-row-meta,.fund-row-balance{display:grid;gap:3px}.fund-row-balance{text-align:right}.fund-row-balance strong{font-size:15px}.fund-row-actions{display:flex!important;flex-direction:row;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}.fund-ledger-dialog{width:min(1260px,97vw)}.fund-ledger-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:16px}.fund-ledger-head h2{margin:3px 0 5px}.fund-ledger-head p{margin:0;color:var(--muted)}.fund-ledger-table{max-height:55vh;overflow:auto}.fund-ledger-table table{min-width:900px}.fund-ledger-table tfoot td{font-weight:800;background:#f5f8fb;border-top:2px solid var(--line)}.fund-auto-note{grid-column:1/-1;padding:11px 13px;border-radius:10px;background:#eef7ff;border:1px solid #c8dff2;color:#315a78;font-size:.875rem;font-weight:700}.category-inline-create{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr auto;gap:8px;align-items:end;padding:12px;border:1px dashed var(--line);border-radius:11px;background:#f8fafc}.category-inline-create.hidden{display:none}.category-inline-create label{margin:0}.form-grid .wide-select{grid-column:1/-1}.form-grid .wide-select select{min-height:115px}.danger-text{color:var(--red)}
@media(max-width:980px){.fund-row{grid-template-columns:1fr 1fr}.fund-row-actions{grid-column:1/-1;justify-content:flex-start}.fund-row-balance{text-align:left}.fund-ledger-head{flex-direction:column}}
@media(max-width:620px){.section-actions{width:100%;justify-content:flex-start}.fund-row{grid-template-columns:1fr}.fund-row-actions{grid-column:auto}.category-inline-create{grid-template-columns:1fr}.fund-management{padding:14px}}
/* v0.9.4 - registro fondi in stile prospetto contabile */
.danger-outline{border-color:#c64a4a!important;color:#a52f2f!important;background:#fff!important}
.ledger-toolbar{display:flex;gap:12px;align-items:center;margin:14px 0}
.ledger-toolbar input{flex:1;min-width:260px}
.fund-ledger-dialog{width:min(1500px,96vw);max-width:1500px}
.fund-ledger-table{max-height:62vh;overflow:auto}
.fund-ledger-table table{min-width:1120px}
.fund-ledger-table thead th{position:sticky;top:0;z-index:2;background:#4358b8;color:#fff}
.fund-ledger-table tbody tr:nth-child(even){background:#fafbff}
.fund-ledger-table td,.fund-ledger-table th{white-space:nowrap}
.fund-ledger-table td:nth-child(3){white-space:normal;min-width:310px}
.approval-note{display:block;width:max-content;margin-top:5px;padding:3px 7px;border-radius:999px;background:#eaf8ef;color:#237a43;font-size:.875rem;font-weight:800}
.fund-ledger-table tfoot td{position:sticky;bottom:0;background:#eef2ff;border-top:2px solid #4358b8}

/* v0.9.8 - flusso spese cassa negozio */
.expense-pending-panel{margin:0 0 22px;padding:18px}.expense-pending-panel .panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:12px}.pending-count{display:grid;place-items:center;min-width:38px;height:38px;padding:0 10px;border-radius:999px;background:var(--amberbg);color:var(--amber);font-weight:900}.expense-pending-panel table{min-width:940px}.expense-pending-panel .table-card{overflow:auto}.expense-review-summary{display:grid;gap:5px;padding:14px;margin:12px 0 18px;border:1px solid var(--line);border-radius:12px;background:#f7fafc}.expense-review-summary strong{font-size:16px;color:var(--navy)}.expense-review-summary span,.expense-review-summary p{margin:0;color:var(--muted)}.fund-pending-section{margin:14px 0 18px;padding:14px;border:1px solid #ecd098;border-radius:13px;background:#fffaf0}.fund-pending-section.hidden{display:none}.fund-pending-section .panel-head{margin-bottom:9px}.fund-pending-item{display:grid;grid-template-columns:minmax(260px,1fr) auto auto;gap:14px;align-items:center;padding:11px 0;border-top:1px solid #f0dfbc}.fund-pending-item:first-child{border-top:0}.fund-pending-item>div:first-child{display:grid;gap:3px}.fund-pending-item small{color:var(--muted)}.fund-pending-item .row-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.inline-create input[list]{width:100%}
@media(max-width:800px){.fund-pending-item{grid-template-columns:1fr}.fund-pending-item .row-actions{justify-content:flex-start}.expense-pending-panel{padding:13px}}


/* v0.10.0 - planning turni settimanale */
.planner-toolbar{display:flex;justify-content:space-between;align-items:center;gap:18px;margin:14px 0;padding:15px 18px;background:#fff;border:1px solid var(--line);border-radius:16px}.planner-toolbar>div:first-child{display:grid;gap:2px}.planner-toolbar strong{font-size:18px;color:var(--navy)}.planner-filters{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.planner-filters input,.planner-filters select{min-width:180px}.planning-legend{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.planning-legend span{padding:5px 10px;border-radius:999px;font-size:.875rem;font-weight:800}.legend-work{background:#e7f2ff;color:#1769aa}.legend-rest{background:#f0f2f4;color:#596979}.legend-holiday{background:#e9f8ee;color:#167346}.legend-permission{background:#fff4d7;color:#936200}.legend-sick{background:#fde9e9;color:#af2a2a}.legend-training{background:#efe9ff;color:#6946b5}.planning-wrap{overflow:auto;border:1px solid var(--line);border-radius:17px;background:#fff;box-shadow:0 5px 18px rgba(20,47,75,.05)}.planning-table{min-width:1250px;width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed}.planning-table thead th{position:sticky;top:0;z-index:3;background:#315bb7;color:#fff;padding:12px 8px;text-align:center;text-transform:uppercase;font-size:.875rem;letter-spacing:.04em}.planning-table .employee-col{left:0;z-index:5;width:220px;text-align:left;padding-left:16px}.planning-table .hours-col{width:86px}.planning-table tbody th.employee-cell{position:sticky;left:0;z-index:2;background:#fff;width:220px;text-align:left;padding:12px 15px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.employee-cell strong{display:block;color:var(--navy);font-size:.875rem}.employee-cell small{display:block;color:var(--muted);margin-top:4px;font-size:.875rem}.planning-table td{border-bottom:1px solid var(--line);border-right:1px solid var(--line);vertical-align:top}.planner-cell{height:88px;padding:5px;position:relative;background:#fff;cursor:pointer}.planner-cell:hover{background:#f5f9ff}.planner-cell.today,.planning-table thead th.today{box-shadow:inset 0 0 0 2px #f0b429}.planner-add{display:grid;place-items:center;height:100%;font-size:22px;color:#b2c0ce;opacity:0;transition:.15s}.planner-cell:hover .planner-add{opacity:1}.planner-empty{display:grid;place-items:center;height:100%;color:#ccd5dd}.planner-shift{display:block;width:100%;border:0;border-radius:9px;padding:7px 8px;text-align:left;margin-bottom:4px;cursor:pointer;box-shadow:inset 0 0 0 1px rgba(0,0,0,.05)}.planner-shift strong{display:block;font-size:.875rem}.planner-shift small,.planner-shift em{display:block;margin-top:3px;font-size:.875rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-style:normal}.planner-shift.work{background:#e7f2ff;color:#135d9a}.planner-shift.rest{background:#f0f2f4;color:#596979}.planner-shift.holiday{background:#e9f8ee;color:#167346}.planner-shift.permission{background:#fff4d7;color:#936200}.planner-shift.sick{background:#fde9e9;color:#af2a2a}.planner-shift.training{background:#efe9ff;color:#6946b5}.planner-shift.cancelled{opacity:.45;text-decoration:line-through}.weekly-hours{width:86px;padding:12px 8px;text-align:center;background:#f7f9fb}.weekly-hours strong{display:block;color:var(--navy)}.weekly-hours small{font-size:.875rem;color:var(--muted)}.planner-foot{display:flex;justify-content:space-between;align-items:center;margin-top:10px;color:var(--muted)}
@media(max-width:900px){.planner-toolbar{align-items:flex-start;flex-direction:column}.planner-filters{width:100%;justify-content:flex-start}.planner-filters input,.planner-filters select{min-width:140px;flex:1}.section-actions{flex-wrap:wrap}}

.legend-transfer{background:#e8f7f6;color:#126c68}.planner-shift.transfer{background:#e8f7f6;color:#126c68}.late-badge{display:inline-block;margin-top:4px;padding:2px 5px;border-radius:999px;background:#fff0ef;color:#b22b2b;font-size:.875rem;font-weight:850}.planning-attendance-badge{display:block;margin-top:5px;padding:3px 6px;border-radius:7px;background:rgba(255,255,255,.72);font-size:.875rem;font-weight:900;line-height:1.25}.planning-attendance-badge.changed{color:#9a5600;box-shadow:inset 0 0 0 1px rgba(201,132,26,.25)}.planning-attendance-badge.regular{color:#17713d}.shift-quick{display:flex;gap:7px;align-items:center;flex-wrap:wrap;padding:10px 12px;border:1px dashed var(--line);border-radius:11px;background:#f8fafc}.shift-quick span{font-size:.875rem;font-weight:800;color:var(--muted);margin-right:4px}.shift-quick button{padding:7px 10px;border:1px solid #cbd9e5;background:#fff;border-radius:8px;color:var(--navy);font-weight:800}.shift-summary{padding:11px 13px;border-radius:10px;background:#eef7ff;border:1px solid #c8dff2;color:#315a78;font-size:.875rem;font-weight:800}.compact-notes textarea{min-height:78px}.planning-table tbody tr:hover th.employee-cell{background:#f7fbff}.planner-shift{min-height:54px}.planner-shift small{font-weight:700}.weekly-hours strong{font-size:15px}

/* v0.10.3 - impostazioni planning visibili e planning leggibile */
.employee-planning-settings{display:grid;gap:9px;padding:13px 15px;border:1px solid #cfe0ef;border-radius:12px;background:#f6faff}.employee-planning-settings>strong{color:var(--navy)}.employee-planning-settings small{color:var(--muted);line-height:1.35}.employee-flags{display:flex;gap:5px;flex-wrap:wrap;margin-top:6px}.mini-status{font-size:.875rem;font-weight:850;padding:3px 6px;border-radius:999px}.mini-status.on{background:#e9f8ee;color:#167346}.mini-status.off{background:#f0f2f4;color:#667481}
.planning-table .employee-col,.planning-table tbody th.employee-cell{width:290px;min-width:290px}.employee-cell strong{white-space:normal;overflow-wrap:anywhere;line-height:1.2;max-width:255px}.employee-cell small{white-space:normal;overflow-wrap:anywhere}.planning-table{min-width:1380px}.planning-table .hours-col,.weekly-hours{width:96px}
@media(max-width:900px){.planning-table .employee-col,.planning-table tbody th.employee-cell{width:230px;min-width:230px}.employee-cell strong{max-width:200px;font-size:.875rem}}

/* v0.11.2 - stabilizzazione planning e pubblicazione settimanale */
.planning-table .employee-col,.planning-table tbody th.employee-cell{width:400px;min-width:400px}.employee-cell strong{max-width:360px;font-size:.875rem;line-height:1.25}.planning-table{min-width:1500px}.planner-shift strong{display:grid;gap:2px}.shift-band{display:block;white-space:nowrap}.planning-card-state{display:inline-block;margin-top:5px;margin-right:4px;padding:2px 6px;border-radius:999px;font-size:.875rem;font-weight:900;text-transform:uppercase}.planning-card-state.draft{background:#fff3cf;color:#8a6200}.planning-card-state.changed{background:#fbe4ef;color:#9c2961}.planning-publication-state{display:inline-flex;align-items:center;min-height:38px;padding:0 12px;border-radius:999px;font-size:.875rem;font-weight:900;white-space:nowrap}.planning-publication-state.empty{background:#f0f2f4;color:#65717c}.planning-publication-state.draft{background:#fff3cf;color:#8a6200}.planning-publication-state.updated{background:#fbe4ef;color:#9c2961}.planning-publication-state.published{background:#e8f7ed;color:#17713d}.shift-quick button{display:grid;gap:2px;line-height:1.15;text-align:left}.shift-quick button small{font-size:.875rem;color:var(--muted);font-weight:800}.shift-bands{display:grid;gap:10px}.shift-band-row{padding:12px;border:1px solid var(--line);border-radius:12px;background:#fbfcfe}.shift-band-row.hidden,.shift-bands.hidden{display:none}.shift-band-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.shift-band-head strong{color:var(--navy);font-size:.875rem}.shift-band-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.shift-add-band{justify-self:start}.shift-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:13px}.shift-summary>div{display:grid;gap:3px;padding-right:10px;border-right:1px solid #c8dff2}.shift-summary>div:last-of-type{border-right:0}.shift-summary small{font-size:.875rem;text-transform:uppercase;letter-spacing:.04em;color:#62809a}.shift-summary strong{font-size:.875rem;line-height:1.3;overflow-wrap:anywhere}.shift-summary p{grid-column:1/-1;margin:0;padding-top:7px;border-top:1px solid #c8dff2;color:#8a5a00}.compact-notes textarea{min-height:64px}
@media(max-width:900px){.planning-table .employee-col,.planning-table tbody th.employee-cell{width:260px;min-width:260px}.employee-cell strong{max-width:225px}.shift-summary{grid-template-columns:1fr 1fr}.shift-band-fields{grid-template-columns:1fr}}

/* v0.11.2.2 · richieste turno, permessi planning e notifiche lette */
.shift-request-form{min-width:min(760px,82vw)}
.shift-request-current{display:grid;gap:4px;padding:15px 17px;border:1px solid #b9d8f1;border-left:5px solid var(--blue);border-radius:13px;background:#f4f9fd}
.shift-request-current span{font-size:.875rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);font-weight:800}.shift-request-current strong{font-size:16px;color:var(--navy)}.shift-request-current small{color:var(--muted)}
.nested-grid{padding:14px;border:1px solid var(--line);border-radius:13px;background:#f8fafc}.form-section-title{margin:0 0 2px;font-weight:850;color:var(--navy)}
.planning-card-state.request{background:#fff4d8;color:#7a5400;border-color:#e9c978}
.proposal-note{margin-top:7px;padding:7px 9px;border-radius:8px;background:#fff8e8;color:#6e530f}
.decision-dialog{width:min(760px,94vw)}.decision-alternative{margin:12px 0;padding:14px;border:1px solid #b9d8f1;border-radius:13px;background:#f5faff}.decision-alternative.hidden{display:none}
.notification-center-tabs{display:flex;gap:8px;margin:0 0 14px;padding:4px;background:#eef3f7;border-radius:12px}.notification-center-tabs button{flex:1;border:0;border-radius:9px;background:transparent;padding:9px 12px;font-weight:800;color:var(--muted)}.notification-center-tabs button.active{background:#fff;color:var(--navy);box-shadow:0 1px 5px rgba(20,47,70,.12)}.notification-center-tabs span{display:inline-grid;place-items:center;min-width:22px;height:22px;margin-left:5px;padding:0 6px;border-radius:999px;background:#dce8f1;font-size:.875rem}.notification-center-tabs button.active span{background:#e7f3ff;color:var(--blue)}
.notification-center-item.is-read{opacity:.78;border-left-color:#a9b5bf}.notification-center-item.is-read .notification-icon{background:#f2f4f6;color:#788793}.notification-center-item.is-read .notification-action{color:var(--muted)}
@media(max-width:700px){.shift-request-form{min-width:0}.nested-grid{grid-template-columns:1fr}.notification-center-tabs{position:sticky;top:-1px;z-index:2}}

/* v0.12.0-rc4 · ticket riaperti, filtri planning, archivio documenti HR e compatibilità PostgreSQL spese */
.pill.reopened{background:#fff0da;color:#8c4b00;border:1px solid #edc178}.communication-card.reopened-ticket{border-color:#edc178;border-left-color:#d97706;background:#fffcf5}.ticket-reopened-summary{display:grid;gap:4px;margin-top:11px;padding:10px 12px;border:1px solid #edc178;border-radius:10px;background:#fff7e8;color:#71410c}.ticket-reopened-summary span{font-size:.875rem;line-height:1.4}.ticket-lifecycle.reopened{background:#fff7e8;border-color:#edc178;color:#71410c}.ticket-action-guide.reopened{background:#fff7e8;border-color:#edc178}.ticket-action-guide.reopened .guide-icon{color:#a65300;border-color:#edc178}.message.ticket-event.reopen-event{border-color:#edc178;border-left:5px solid #d97706;background:#fff9ed}.communication-reply-form{display:grid;gap:12px;margin:14px 0;padding:16px;border:1px solid #b9d8f1;border-radius:14px;background:#f4faff}.communication-reply-label{display:grid!important;grid-template-columns:1fr!important;gap:7px!important;width:100%;font-weight:800;color:var(--navy)}.communication-reply-label textarea{display:block;width:100%;min-height:112px;resize:vertical;background:#fff}.communication-reply-form .thread-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin:0}.communication-reply-form .thread-actions button{margin:0}.communication-history h3{margin:18px 0 8px;color:var(--navy);font-size:1rem}.message-thread{margin:0}.message-thread .message{padding:11px 13px;margin-bottom:7px}.message-thread .message p{margin:7px 0 2px;line-height:1.45}
.sidebar nav button #documentsNavLabel{width:auto;flex:1;text-align:left}
.current-company{width:100%;border:0;background:rgba(255,255,255,.07);color:#fff;text-align:left;padding:12px 22px;display:grid;gap:3px}.current-company small{color:#b9c8d7;font-size:.875rem;text-transform:uppercase;letter-spacing:.8px}.current-company strong{font-size:.875rem}.current-company.can-change-company{cursor:pointer}.current-company.can-change-company:hover{background:rgba(255,255,255,.13)}.current-company:disabled{cursor:default}.sidebar-actions{display:flex;gap:8px;padding:12px;border-top:1px solid rgba(255,255,255,.09)}.sidebar-actions .secondary{flex:1;padding:9px 10px;font-size:.875rem}.sidebar-actions #sidebarLogoutBtn{color:#a23f44;background:#fff}
.planner-personal-summary{display:block;margin-top:5px;color:#315a78;font-size:.875rem;font-weight:800}.planner-filter-panel{min-width:min(650px,62vw);border:1px solid var(--line);border-radius:12px;background:#f8fafc}.planner-filter-panel summary{cursor:pointer;padding:10px 13px;color:var(--navy);font-weight:850;list-style:none}.planner-filter-panel summary::-webkit-details-marker{display:none}.planner-filter-panel summary::after{content:'▾';float:right;color:var(--muted)}.planner-filter-panel[open] summary::after{content:'▴'}.planner-filter-panel .planner-filters{padding:0 12px 12px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end}.planner-filter-panel .planner-filters label{display:grid;gap:5px;color:var(--muted);font-size:.875rem;font-weight:800}.planner-filter-panel .planner-filters input,.planner-filter-panel .planner-filters select{width:100%;min-width:0}
.document-sections{display:grid;gap:24px}.document-section{display:grid;gap:10px}.document-section.pending{padding:17px;border:1px solid #edc178;border-radius:16px;background:#fffcf5}.document-section-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.document-section-head h3{margin:2px 0 0;color:var(--navy)}.count-badge{display:grid;place-items:center;min-width:34px;height:34px;padding:0 10px;border-radius:999px;background:#fff0da;color:#8c4b00;font-weight:900}.document-card{align-items:flex-start}.document-card.needs-action{border-color:#edc178;box-shadow:0 5px 18px rgba(140,75,0,.08)}.document-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:9px}.document-card-head h3{min-width:0;overflow-wrap:anywhere}.document-expiry{display:block;margin:8px 0 0;color:#8c4b00;font-size:.875rem;font-weight:800}.document-actions{align-items:center}.document-actions .primary-action{background:var(--blue);border-color:var(--blue);color:#fff}.document-actions small{flex-basis:100%;color:var(--muted)}.success-empty{color:var(--green)}.document-upload-form select[multiple]{min-height:180px}.document-grid>.list-empty{grid-column:1/-1}
@media(max-width:900px){.planner-filter-panel{min-width:0;width:100%}.planner-filter-panel .planner-filters{grid-template-columns:1fr 1fr}.communication-reply-form .thread-actions{justify-content:flex-start}.document-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.planner-filter-panel .planner-filters{grid-template-columns:1fr}.document-grid{grid-template-columns:1fr}.document-section.pending{padding:12px}.communication-dialog{padding:17px}.communication-reply-label textarea{min-height:130px}.communication-reply-form .thread-actions{display:grid;grid-template-columns:1fr;width:100%}.communication-reply-form .thread-actions button{width:100%}.communication-actions{width:100%}.communication-actions button{width:100%}.document-card-head{display:grid}.document-actions .mini-btn,.document-actions a{flex:1;text-align:center}.document-upload-form{grid-template-columns:1fr}}

/* v0.12.0-rc5 · selettore multi-azienda più compatto */
.company-chooser{padding:18px}
.chooser-panel{width:min(620px,94vw);border-radius:20px;padding:24px 26px}
.chooser-panel h1{margin:5px 0 6px;font-size:26px}
.chooser-intro{margin:0 0 16px;font-size:.875rem;line-height:1.4}
.company-choices{gap:8px}
.company-choice{grid-template-columns:46px 1fr auto;gap:12px;padding:11px 13px;border-radius:12px}
.company-choice strong{font-size:15px}
.company-choice small{margin-top:2px;font-size:.875rem;line-height:1.3}
.company-choice b{font-size:.875rem}
.choice-logo{width:42px;height:42px;border-radius:11px;font-size:14px}
.admin-choice{margin-top:9px;padding:9px 13px}
@media(max-width:620px){
  .company-chooser{padding:12px}
  .chooser-panel{width:min(520px,96vw);padding:18px;border-radius:17px}
  .chooser-panel h1{font-size:23px}
  .chooser-intro{margin-bottom:13px;font-size:.875rem}
  .company-choice{grid-template-columns:40px 1fr;gap:10px;padding:10px}
  .company-choice strong{font-size:14px}
  .choice-logo{width:38px;height:38px;border-radius:10px;font-size:.875rem}
  .admin-choice{margin-top:8px;padding:9px 10px;font-size:.875rem}
}

/* rc49: un unico set SVG monocromatico per menu desktop e smartphone. */
.sidebar nav button>span:first-child{width:20px;height:20px;display:grid;place-items:center;flex:0 0 20px}.sidebar nav button>span:first-child svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.mobile-app-nav button span{display:grid;place-items:center;width:24px;height:24px;line-height:1}.mobile-app-nav button span svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.mobile-nav-choices span{display:grid;place-items:center;width:28px;height:28px}.mobile-nav-choices span svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.communication-open-area{cursor:pointer;border-radius:9px}.communication-open-area:focus-visible{outline:3px solid #2f80c9;outline-offset:5px}

/* PWA privata · installazione, safe area e stato connessione */
.offline-banner{position:fixed;inset:0 0 auto 0;z-index:2147483647;min-height:42px;display:grid;place-items:center;padding:9px calc(14px + env(safe-area-inset-right)) 9px calc(14px + env(safe-area-inset-left));background:#8c4b00;color:#fff;text-align:center;font-size:.875rem;font-weight:850;box-shadow:0 4px 14px rgba(66,37,0,.25)}
.offline-banner.hidden{display:none}
.is-staging .offline-banner:not(.hidden){top:52px}
.install-app{border-color:#9ec6e6;color:#1e639c;background:#f2f8fd}
@media(display-mode:standalone){
  .install-app{display:none!important}
  .sidebar{padding-bottom:env(safe-area-inset-bottom)}
  .topbar{padding-right:max(16px,env(safe-area-inset-right));padding-left:max(16px,env(safe-area-inset-left))}
  main{padding-bottom:calc(35px + env(safe-area-inset-bottom))}
}
@media(max-width:820px){
  .top-actions{gap:6px}
  .top-actions #installAppBtn{display:inline-flex;padding:9px 11px;font-size:.875rem}
  .top-actions #installAppBtn.hidden{display:none}
}

/* r70 · raccolta correttiva: struttura, HR, importazioni e controlli inventario. */
.structure-summary-card{grid-column:1/-1;display:grid;grid-template-columns:minmax(180px,.7fr) minmax(0,2fr);align-items:center;gap:22px}.structure-summary{display:grid;grid-template-columns:repeat(5,minmax(90px,1fr));gap:9px}.structure-summary span{display:grid;gap:2px;padding:11px;border:1px solid var(--line);border-radius:10px;background:#f8fbfd;color:var(--muted);font-size:.875rem;font-weight:800}.structure-summary b{color:var(--navy);font-size:19px}.brand-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.brand-structure-card{display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px;border-radius:12px}.brand-structure-card>strong{grid-column:1/-1}.brand-structure-card>button:not(.mini-btn){border:0;background:transparent;color:var(--blue);padding:0;text-align:left;font-size:.875rem;font-weight:850;cursor:pointer}.brand-structure-card .mini-btn{justify-self:end}.labeled-filter-toolbar{align-items:flex-end}.labeled-filter-toolbar>label{display:grid;gap:4px;color:var(--muted);font-size:.875rem;font-weight:850;text-transform:uppercase}.labeled-filter-toolbar>label:first-child{flex:1}.labeled-filter-toolbar>label input,.labeled-filter-toolbar>label select{width:100%;text-transform:none}.brand-checkbox-field{border:1px solid var(--line);border-radius:11px;padding:12px}.brand-checkbox-field legend{padding:0 5px;color:var(--navy);font-size:.875rem;font-weight:850}.brand-checkbox-field>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.brand-checkbox-field .checkbox{min-height:38px;padding:8px;border:1px solid #e0e7ec;border-radius:8px;background:#f9fbfc}.hr-document-tabs{display:flex;gap:5px;margin:0 0 16px;padding:4px;border:1px solid var(--line);border-radius:12px;background:#f5f8fa;overflow-x:auto}.hr-document-tabs button{border:0;border-radius:9px;background:transparent;color:#526b7f;padding:10px 13px;font-size:.875rem;font-weight:850;white-space:nowrap}.hr-document-tabs button.active{background:#fff;color:var(--blue);box-shadow:0 2px 8px rgba(20,47,75,.09)}.import-freshness-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.import-freshness-card{display:grid;gap:9px;padding:13px;border:1px solid #dfe7ed;border-radius:12px;background:#fbfcfd}.import-freshness-card.warning{border-color:#ead19b;background:#fffaf0}.import-freshness-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.import-freshness-card-head>div{display:grid;gap:3px}.import-freshness-card-head strong{color:var(--navy);font-size:14px}.import-freshness-card-head span{color:#23678e;font-size:.875rem;font-weight:800}.import-freshness-card-head>b{color:#50697d;font-size:.875rem;white-space:nowrap}.freshness-company{color:var(--muted);font-size:.875rem;font-weight:900;text-transform:uppercase}.import-freshness-meta{display:grid;gap:3px;color:var(--muted);font-size:.875rem}.import-freshness-card details{border-top:1px solid #e2e8ed;padding-top:8px}.import-freshness-card summary{color:var(--blue);cursor:pointer;font-size:.875rem;font-weight:850}.freshness-anomaly{margin-top:7px;color:#8a5d00;font-size:.875rem;font-weight:750}.freshness-store-list{display:grid;gap:5px;margin-top:8px}.freshness-store-list span{display:flex;justify-content:space-between;gap:10px;color:var(--muted);font-size:.875rem}.freshness-store-list b{color:#344f65}.fiscal-company-identity{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:15px;margin-bottom:16px;padding:16px 18px}.fiscal-company-identity>div{display:grid;gap:3px}.fiscal-company-identity h3{margin:0;color:var(--navy)}.fiscal-company-identity span,.fiscal-company-identity small{color:var(--muted);font-size:.875rem}.fiscal-company-state{padding:6px 9px;border-radius:999px;font-weight:850}.fiscal-company-state.complete{background:var(--greenbg);color:var(--green)}.fiscal-company-state.warning{background:var(--amberbg);color:var(--amber)}.warehouse-anomaly-banner{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:14px}.warehouse-anomaly-banner>div{display:grid;gap:3px}.warehouse-anomaly-banner span{font-size:.875rem}.warehouse-anomaly-row td{background:#fffaf0}.warehouse-anomaly-row td:first-child{box-shadow:inset 4px 0 #d9a234}
@media(max-width:820px){.structure-summary-card{grid-template-columns:1fr}.structure-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.brand-checkbox-field>div{grid-template-columns:1fr}.hr-document-tabs{margin-inline:-4px}.import-freshness-grid{grid-template-columns:1fr}.fiscal-company-identity{grid-template-columns:1fr}.fiscal-company-identity .secondary{width:100%}.warehouse-anomaly-banner{align-items:stretch;flex-direction:column}.warehouse-anomaly-banner button{width:100%}}

/* r66 · Fatture, scadenzario, partitari A+C e chiusure Fastweb/WINDTRE. */
/* r67 · Mappatura pagamenti Aruba protetta e finestre fiscali ampie. */
.fiscal-view{--fiscal-navy:#183b5b;--fiscal-blue:#2f75b5;--fiscal-soft:#f2f7fb;--fiscal-mint:#e8f6ef}
.fiscal-view.is-loading{opacity:.62;pointer-events:none}
.fiscal-page-head{align-items:center}.fiscal-page-head .section-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.fiscal-source-policy{display:flex;align-items:center;gap:12px;margin:0 0 17px;padding:13px 16px;border:1px solid #cfe1ef;border-radius:13px;background:linear-gradient(110deg,#f5faff,#fff);color:#315b7c}
.fiscal-source-policy>div{display:grid;gap:2px}.fiscal-source-policy strong{color:var(--navy);font-size:.875rem}.fiscal-source-policy small{color:var(--muted);line-height:1.4}.fiscal-policy-icon{width:31px;height:31px;display:grid;place-items:center;flex:none;border-radius:10px;background:#dff2e8;color:#1d7548;font-weight:950}
.fiscal-kpis .kpi{border-top:3px solid #b9d5e9}.fiscal-kpis .kpi .value{font-size:23px}
.fiscal-filterbar{display:grid;grid-template-columns:minmax(240px,1.5fr) repeat(5,minmax(130px,.7fr)) auto;align-items:center;margin:15px 0 10px}.fiscal-filterbar input{min-width:0}.fiscal-filterbar button{white-space:nowrap}
.fiscal-table-card{max-height:calc(100vh - 320px);min-height:240px}.fiscal-table{min-width:1080px}.fiscal-table th{position:sticky;top:0;z-index:2;background:#f7fafc}.fiscal-table td{vertical-align:top}.fiscal-table td small{display:block;margin-top:4px;color:var(--muted);font-size:.875rem;line-height:1.35}.fiscal-table .money-cell{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.money-cell.strong{font-weight:900;color:var(--navy)}.fiscal-open-row td:first-child{box-shadow:inset 4px 0 #efad3d}
.fiscal-link,.fiscal-party-name{border:0;background:none;padding:0;color:var(--navy);text-align:left}.fiscal-link{font-weight:850;text-decoration:underline;text-decoration-color:#b9d3e6;text-underline-offset:3px}.fiscal-party-name{display:grid;gap:3px}.fiscal-party-name strong{font-size:.875rem}.fiscal-party-name span{font-size:.875rem;color:var(--muted)}
.fiscal-brand-tag,.fiscal-role-tag{display:inline-flex;width:max-content;margin-top:5px;padding:3px 7px;border-radius:999px;background:#eaf3fb;color:#286796;font-size:.875rem!important;font-weight:900;letter-spacing:.04em}.fiscal-role-tag{background:#edf1f4;color:#506777}.fiscal-status.closed_reported,.fiscal-status.closed_brand,.fiscal-status.closed_manual,.fiscal-status.closed_verified,.fiscal-status.paid,.fiscal-status.sent{background:var(--greenbg);color:var(--green)}.fiscal-status.open,.fiscal-status.partial,.fiscal-status.review,.fiscal-status.preview{background:var(--amberbg);color:var(--amber)}.fiscal-status.credit_note{background:var(--violetbg);color:var(--violet)}.fiscal-status.error,.fiscal-status.failed{background:var(--redbg);color:var(--red)}
.fiscal-priority-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:11px;margin:0 0 15px}.fiscal-priority-card{border:1px solid var(--line);border-left:5px solid #9fb1c0;border-radius:14px;background:#fff;padding:14px 15px;display:grid;gap:4px;text-align:left;box-shadow:0 4px 13px rgba(20,47,75,.04)}.fiscal-priority-card span{font-size:.875rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:900}.fiscal-priority-card strong{font-size:21px;color:var(--navy)}.fiscal-priority-card small{font-size:.875rem;color:var(--muted)}.fiscal-priority-card.tone-danger{border-left-color:#c84e55}.fiscal-priority-card.tone-warning{border-left-color:#dea638}.fiscal-priority-card.tone-blue{border-left-color:#4b8fc8}.fiscal-priority-card.tone-green{border-left-color:#43a16c}.fiscal-priority-card.tone-violet{border-left-color:#7c63b8}.fiscal-priority-card.active{outline:3px solid rgba(47,117,181,.16);border-color:var(--blue)}
.fiscal-selection-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:5px 0 8px;padding:9px 12px;border:1px solid var(--line);border-radius:11px;background:#fff}.fiscal-selection-bar strong{font-size:.875rem;color:var(--blue)}.fiscal-selection-bar input:disabled{opacity:.45}.fiscal-priority-label,.fiscal-kind{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:.875rem;font-weight:900;white-space:nowrap}.fiscal-priority-label.overdue{background:var(--redbg);color:var(--red)}.fiscal-priority-label.today{background:#fff0d7;color:#a15d00}.fiscal-priority-label.next_7,.fiscal-priority-label.next_30{background:var(--bluebg);color:var(--blue)}.fiscal-priority-label.future,.fiscal-priority-label.without_date{background:#edf1f4;color:#5a6f80}.fiscal-priority-label.credit_note,.fiscal-kind.credit_note{background:var(--violetbg);color:var(--violet)}.fiscal-kind.issued{background:#e9f7ef;color:#1e754a}.fiscal-kind.received,.fiscal-kind.self_invoice{background:#f2edfb;color:#684e9c}.fiscal-due-overdue{background:#fffafb}.fiscal-due-today{background:#fffdf7}.fiscal-due-credit_note{background:#fbf9ff}.credit-note-amount{color:var(--violet)!important}
.fiscal-reminder-button{white-space:nowrap}.fiscal-reminder-button.active{border-color:#2e9a67!important;background:#e9f8ef!important;color:#176c46!important}.fiscal-party-header .fiscal-reminder-button.active{border-color:#bce8ce!important;background:#e9f8ef!important;color:#176c46!important}.fiscal-reminder-dialog{width:min(620px,94vw)}.fiscal-reminder-name{margin:4px 0 8px;padding:11px 13px;border:1px solid #dce6ed;border-radius:11px;background:#f8fafc;color:var(--navy);font-weight:850}.fiscal-reminder-enabled{align-items:flex-start!important;margin:18px 0;padding:14px;border:1px solid #c9dfeb;border-radius:13px;background:#f2f9fc}.fiscal-reminder-enabled span{display:grid;gap:3px}.fiscal-reminder-enabled small{color:var(--muted);font-weight:550;line-height:1.4}.fiscal-reminder-days{display:grid;grid-template-columns:1fr 1fr;gap:10px;border:1px solid var(--line);border-radius:13px;padding:14px}.fiscal-reminder-days legend{padding:0 7px;color:var(--navy);font-weight:850}.fiscal-reminder-days label{display:flex;align-items:center;gap:7px}.fiscal-reminder-days input,.fiscal-reminder-enabled input{width:auto}.fiscal-reminder-safety{display:grid;gap:3px;margin-top:15px;padding:12px 14px;border-radius:12px;background:#eef6fa;color:#385d73;font-size:.875rem}.fiscal-reminder-safety strong{color:#1f4c68}
.danger-text{color:var(--red)!important;font-weight:850}.attention-text{color:#9c6700!important;font-weight:850}.muted{color:var(--muted)}.secondary.compact{padding:7px 10px;font-size:.875rem}
.fiscal-party-detail{display:grid;gap:14px}.fiscal-party-top{display:flex;align-items:end;justify-content:space-between;gap:12px}.fiscal-party-switch label{display:grid;gap:5px;color:var(--muted);font-size:.875rem;font-weight:850}.fiscal-party-switch select{min-width:310px}.fiscal-party-header{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 24px;border-radius:18px;background:linear-gradient(125deg,#153550,#245d88);color:#fff;box-shadow:0 11px 25px rgba(18,53,80,.16)}.fiscal-party-header .eyebrow{color:#a9d5f4}.fiscal-party-header h2{margin:4px 0 6px;font-size:25px}.fiscal-party-header p{margin:0;color:#c9dcea;font-size:.875rem}.fiscal-party-header .section-actions{display:flex;gap:8px}.fiscal-party-header .secondary{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.28);color:#fff}.fiscal-party-header .primary{background:#fff;color:var(--navy)}
.fiscal-tabs{display:flex;gap:4px;overflow:auto;padding:5px;border:1px solid var(--line);border-radius:13px;background:#eaf0f5}.fiscal-tabs button{border:0;border-radius:9px;background:transparent;color:#5a7183;padding:9px 13px;font-size:.875rem;font-weight:850;white-space:nowrap}.fiscal-tabs button.active{background:#fff;color:var(--navy);box-shadow:0 2px 7px rgba(20,47,75,.12)}.fiscal-party-panel{min-height:280px}.fiscal-priority-stack{display:grid;gap:8px;padding:16px}.fiscal-party-due{display:grid;grid-template-columns:100px 1fr auto auto;gap:14px;align-items:center;padding:12px 14px;border:1px solid var(--line);border-left:5px solid #9bb4c7;border-radius:12px}.fiscal-party-due.overdue{border-left-color:#c94b52;background:#fffafb}.fiscal-party-due.today{border-left-color:#df9f2d;background:#fffdf6}.fiscal-party-due>span{font-size:.875rem;font-weight:900}.fiscal-party-due>div{display:grid;gap:3px}.fiscal-party-due small{color:var(--muted);font-size:.875rem}.fiscal-party-due>b{color:var(--navy);font-variant-numeric:tabular-nums}.fiscal-profile-data{display:grid;grid-template-columns:repeat(2,1fr);gap:0;margin:0}.fiscal-profile-data>div{padding:15px 19px;border-bottom:1px solid var(--line)}.fiscal-profile-data dt{font-size:.875rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:900}.fiscal-profile-data dd{margin:5px 0 0;font-weight:800;color:var(--navy)}
.fiscal-party-schedule-head small{display:block;margin-top:4px;color:var(--muted)}.fiscal-party-due-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#f8fafc}.fiscal-party-due-filters,.fiscal-party-due-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.fiscal-party-due-filters button.active{border-color:var(--blue);background:var(--blue);color:#fff}.fiscal-party-due-actions{justify-content:flex-end}.fiscal-party-due-actions label{display:flex;align-items:center;gap:6px;color:#435d70;font-size:.875rem;font-weight:850}.fiscal-party-due-actions>span{padding:4px 8px;border-radius:999px;background:#e8f1f8;color:#285d84;font-size:.875rem;font-weight:900}.fiscal-party-print-summary{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr));gap:8px;padding:12px 14px;background:#fff}.fiscal-party-print-summary>span{display:grid;gap:3px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#f8fafc}.fiscal-party-print-summary small{color:var(--muted);font-size:.875rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.fiscal-party-print-summary strong{color:var(--navy);font-size:16px}.fiscal-party-due-table-wrap{border-radius:0 0 13px 13px;box-shadow:none}.fiscal-party-due-table{min-width:1040px}.fiscal-party-due-table .fiscal-party-select-col{width:34px;text-align:center}.fiscal-party-due-closed{background:#f7fbf8}.fiscal-party-due-closed td{color:#536b5d}.fiscal-party-due-overdue{background:#fff9f9}.fiscal-movement-table td:nth-child(2){white-space:nowrap}
.fiscal-import-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin:0 0 17px}.fiscal-import-card{display:grid;grid-template-columns:52px 1fr auto;gap:14px;align-items:center;padding:18px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 5px 16px rgba(20,47,75,.04)}.fiscal-import-card.primary-card{border-color:#b9d5e9;background:linear-gradient(120deg,#f5faff,#fff)}.fiscal-import-card.brand.fastweb{border-left:5px solid #ff8a32}.fiscal-import-card.brand.windtre{border-left:5px solid #5d4bb3}.fiscal-import-icon{width:52px;height:52px;display:grid;place-items:center;border-radius:14px;background:#eaf3fb;color:var(--blue);font-weight:950}.fiscal-import-card.brand.fastweb .fiscal-import-icon{background:#fff0e5;color:#bd5e18}.fiscal-import-card.brand.windtre .fiscal-import-icon{background:#efebfc;color:#5d4bb3}.fiscal-import-card h3{margin:0 0 4px;color:var(--navy)}.fiscal-import-card p{margin:0;color:var(--muted);font-size:.875rem;line-height:1.4}.fiscal-import-card label{display:flex;align-items:center;gap:7px;margin-top:9px;color:var(--muted);font-size:.875rem;font-weight:800}.fiscal-import-card select{padding:6px 8px;font-size:.875rem}.fiscal-profile-panel{margin:0 0 17px}.fiscal-profile-list{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;padding:15px}.fiscal-profile-item{display:grid;grid-template-columns:43px 1fr auto auto;gap:12px;align-items:center;padding:13px;border:1px solid var(--line);border-radius:13px;background:#fbfcfd}.fiscal-profile-item.enabled{border-left:4px solid #3d9a66}.fiscal-profile-item.disabled{border-left:4px solid #a9b4bd;opacity:.78}.fiscal-profile-badge{width:41px;height:41px;display:grid;place-items:center;border-radius:12px;background:var(--navy);color:#fff;font-weight:950}.fiscal-profile-item>div:nth-child(2){display:grid;gap:2px}.fiscal-profile-item span,.fiscal-profile-item small{font-size:.875rem;color:var(--muted)}.fiscal-profile-state{padding:4px 8px;border-radius:999px;background:#e8f6ef!important;color:#26724a!important;font-weight:900}.fiscal-profile-item.disabled .fiscal-profile-state{background:#edf1f4!important;color:#657583!important}
.fiscal-import-card.aruba-pdf{border-left:5px solid #cf2634;background:linear-gradient(120deg,#fff7f7,#fff)}.fiscal-import-card.aruba-pdf .fiscal-import-icon{background:#fde9eb;color:#a81e2a;font-size:.875rem}
.fiscal-import-card.courtesy-mail{border-left:5px solid #2f8e67;background:linear-gradient(120deg,#f5fbf7,#fff)}.fiscal-import-card.courtesy-mail .fiscal-import-icon{background:#e5f6ec;color:#26724a;font-size:22px}.fiscal-import-card-actions{display:grid;gap:8px}.fiscal-import-card-actions button{width:100%}.fiscal-courtesy-mail-status{display:grid;gap:7px;margin-top:10px}.fiscal-courtesy-state{display:grid;gap:2px;padding:8px 10px;border:1px solid #dbe6ed;border-radius:10px;background:#fff}.fiscal-courtesy-state strong{font-size:.875rem;color:var(--navy)}.fiscal-courtesy-state span,.fiscal-courtesy-recent small{font-size:.875rem;color:var(--muted);line-height:1.35}.fiscal-courtesy-state.success{border-color:#b9e2cb;background:#f3fcf6}.fiscal-courtesy-state.warning{border-color:#f1d69a;background:#fffaf0}.fiscal-courtesy-mail-status details{font-size:.875rem;color:#506c81}.fiscal-courtesy-mail-status summary{cursor:pointer;font-weight:800}.fiscal-courtesy-recent{display:grid;gap:6px;margin-top:7px}.fiscal-courtesy-recent>span{display:grid;grid-template-columns:auto 1fr;gap:4px 7px;align-items:center;padding:7px 8px;border-radius:9px;background:#f7fafc}.fiscal-courtesy-recent small{grid-column:1/-1}
.fiscal-dialog{width:min(760px,94vw)}.fiscal-dialog.wide-dialog{width:min(1180px,96vw);max-width:1180px;max-height:90vh;overflow:auto}.fiscal-dialog>form,.fiscal-dialog:not(:has(form)){padding:27px;position:relative}.fiscal-dialog h2{margin:4px 42px 5px;color:var(--navy)}.fiscal-preview-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin:14px 0}.fiscal-preview-summary>div{display:grid;gap:2px;padding:13px;border:1px solid var(--line);border-radius:11px;background:#f8fafc}.fiscal-preview-summary strong{font-size:20px;color:var(--navy)}.fiscal-preview-summary span{font-size:.875rem;text-transform:uppercase;color:var(--muted);font-weight:850}.fiscal-preview-errors{display:grid;gap:5px;margin:10px 0;padding:12px;border:1px solid #ecc8ca;border-radius:11px;background:#fff6f6}.fiscal-preview-errors strong{color:var(--red)}.fiscal-preview-errors span{font-size:.875rem;color:#735456}.fiscal-dialog-divider{display:grid;gap:3px;margin:18px 0 10px;padding-top:15px;border-top:1px solid var(--line)}.fiscal-dialog-divider strong{color:var(--navy)}.fiscal-dialog-divider span{color:var(--muted);font-size:.875rem}.fiscal-mapping-grid{grid-template-columns:repeat(2,1fr)}.fiscal-status-values{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:14px;padding:11px 13px;border:1px solid #bcdcc9;border-radius:11px;background:#f1faf5;color:#246847}.fiscal-status-values strong{font-size:.875rem}.fiscal-status-values span{font-size:.875rem;text-align:right}.fiscal-status-values b{color:var(--navy)}.fiscal-status-values.warning{border-color:#e6c77f;background:#fff9ea;color:#7b5800}.fiscal-auto-close{margin-top:14px;padding:12px;border:1px solid #cce2d6;border-radius:11px;background:#f2faf5}.fiscal-safety-note{display:grid;gap:3px;margin-top:15px;padding:12px;border:1px solid #cfe1ef;border-radius:11px;background:#f4f9fd}.fiscal-safety-note strong{font-size:.875rem;color:var(--navy)}.fiscal-safety-note span{font-size:.875rem;color:var(--muted)}.fiscal-attachment-options{display:flex;gap:20px;margin:0;padding:12px 14px;border:1px solid var(--line);border-radius:11px}.fiscal-attachment-options legend{padding:0 5px;color:var(--muted);font-size:.875rem;font-weight:850}.fiscal-email-preview{display:flex;justify-content:space-between;gap:12px;margin-top:14px;padding:12px 14px;border-radius:11px;background:#edf5fc;color:#315b7c}.fiscal-email-preview span{font-size:.875rem}
@media(max-width:1200px){.fiscal-filterbar{grid-template-columns:repeat(4,minmax(150px,1fr))}.fiscal-filterbar input:first-child{grid-column:span 2}.fiscal-priority-grid{grid-template-columns:repeat(3,1fr)}.fiscal-import-card{grid-template-columns:48px 1fr}.fiscal-import-card>button,.fiscal-import-card>.fiscal-import-card-actions{grid-column:1/-1}.fiscal-import-card>.fiscal-import-card-actions{display:flex;flex-wrap:wrap}.fiscal-import-card>.fiscal-import-card-actions button{width:auto;flex:1}.fiscal-profile-item{grid-template-columns:40px 1fr auto}.fiscal-profile-item>button{grid-column:2/-1;justify-self:start}}
@media(max-width:820px){.fiscal-page-head,.fiscal-party-header,.fiscal-party-top{align-items:flex-start;flex-direction:column}.fiscal-page-head .section-actions,.fiscal-party-header .section-actions{width:100%;justify-content:flex-start}.fiscal-filterbar{display:grid;grid-template-columns:1fr 1fr}.fiscal-filterbar input:first-child{grid-column:1/-1}.fiscal-priority-grid{grid-template-columns:1fr 1fr}.fiscal-import-grid,.fiscal-profile-list{grid-template-columns:1fr}.fiscal-party-switch,.fiscal-party-switch select{width:100%}.fiscal-party-header{padding:19px}.fiscal-party-header .section-actions button{flex:1}.fiscal-priority-stack{padding:10px}.fiscal-party-due{grid-template-columns:90px 1fr}.fiscal-party-due>b,.fiscal-party-due>button{grid-column:2}.fiscal-profile-data{grid-template-columns:1fr}.fiscal-preview-summary{grid-template-columns:1fr 1fr}.fiscal-status-values{align-items:flex-start;flex-direction:column;gap:6px}.fiscal-status-values span{text-align:left}}
@media(max-width:820px){.fiscal-party-due-toolbar{align-items:stretch;flex-direction:column}.fiscal-party-due-actions{justify-content:flex-start}.fiscal-party-print-summary{grid-template-columns:1fr 1fr}}
@media(max-width:540px){.fiscal-filterbar,.fiscal-priority-grid{grid-template-columns:1fr}.fiscal-filterbar input:first-child{grid-column:auto}.fiscal-import-card{grid-template-columns:42px 1fr;padding:14px}.fiscal-import-icon{width:42px;height:42px}.fiscal-preview-summary,.fiscal-mapping-grid{grid-template-columns:1fr}.fiscal-selection-bar{align-items:flex-start;flex-direction:column}.fiscal-email-preview{flex-direction:column}.fiscal-tabs button{padding:8px 10px}}
@media(max-width:540px){.fiscal-reminder-days{grid-template-columns:1fr}}
@media(max-width:620px){
  .is-staging .offline-banner:not(.hidden){top:62px}
}

/* r65 · Archivio Brand a elenco/fisarmonica e separato dalla contabilità */
.brand-archive-view{--archive-blue:#236b9d;--archive-soft:#f3f8fc;--archive-warn:#9a5b00;--archive-danger:#a13d43}
.brand-archive-boundary{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 14px;padding:12px 15px;border:1px solid #bdd8ea;border-left:5px solid var(--archive-blue);border-radius:13px;background:#f4faff;color:#315a78}.brand-archive-boundary strong{color:var(--navy)}.brand-archive-boundary span{max-width:680px;font-size:.875rem;line-height:1.45}
.brand-archive-filters{margin-bottom:16px;padding:10px;background:#f7f9fb;border:1px solid var(--line);border-radius:12px}.brand-archive-filters input{min-width:260px;flex:1}.brand-archive-workspace{display:grid;gap:18px}.archive-company-section{display:grid;gap:10px}.archive-company-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;padding:0 3px}.archive-company-heading h3{margin:2px 0;color:var(--navy);font-size:18px}.archive-company-heading>span{color:var(--muted);font-size:.875rem;font-weight:800}.archive-company-content{display:grid;gap:11px}.brand-archive-direct{padding:0;overflow:hidden}.archive-profile-body{min-width:0}.brand-archive-direct>.archive-profile-body{padding:18px}.archive-profile-body.inside-accordion{padding:15px 17px 18px;border-top:1px solid var(--line);background:#fbfcfd}.archive-profile-info{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:13px}.archive-profile-info h3{margin:2px 0;color:var(--navy);font-size:20px}.archive-profile-info span{color:var(--muted);font-size:.875rem}.archive-company{display:block;color:var(--archive-blue);font-size:.875rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.archive-profile-actions{justify-content:flex-end}.archive-tabs{display:flex;gap:5px;overflow-x:auto;padding:4px 0 0;border-bottom:1px solid var(--line);scrollbar-width:thin}.archive-tab{display:flex;align-items:center;gap:7px;min-height:39px;padding:8px 12px;border:0;border-bottom:3px solid transparent;border-radius:9px 9px 0 0;background:transparent;color:#587083;font-size:.875rem;font-weight:850;white-space:nowrap;cursor:pointer}.archive-tab:hover{background:#f1f6f9;color:var(--navy)}.archive-tab.active{border-bottom-color:var(--archive-blue);background:#edf6fc;color:var(--archive-blue)}.archive-tab b{display:grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:#fff;color:inherit;font-size:.875rem}.archive-tab-content{padding-top:14px}.archive-tab-help{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:10px;padding:10px 12px;border:1px solid #d3e4ef;border-radius:10px;background:#f5faff}.archive-tab-help strong{color:var(--navy);font-size:.875rem}.archive-tab-help span{color:var(--muted);font-size:.875rem}.brand-archive-accordion{padding:0;overflow:hidden}.brand-archive-accordion>summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 17px;cursor:pointer;list-style:none}.brand-archive-accordion>summary::-webkit-details-marker{display:none}.brand-archive-accordion>summary h3{margin:3px 0;color:var(--navy);font-size:16px}.brand-archive-accordion>summary small{color:var(--muted);font-size:.875rem}.brand-archive-accordion[open]>summary{background:#f3f9fd}.archive-accordion-counts{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.archive-accordion-counts span{padding:5px 8px;border-radius:999px;background:#edf3f7;color:#526b7f;font-size:.875rem;font-weight:850}.archive-accordion-counts b{min-width:48px;color:var(--archive-blue);font-size:.875rem}.brand-archive-accordion[open] .archive-accordion-counts b{font-size:0}.brand-archive-accordion[open] .archive-accordion-counts b::after{content:'Chiudi';font-size:.875rem}
.brand-archive-record-list{display:grid;gap:12px}.brand-archive-record{border:1px solid var(--line);border-left:5px solid #78a8c8;border-radius:14px;background:#fff;overflow:hidden}.brand-archive-record.state-expiring{border-left-color:#d99621}.brand-archive-record.state-expired{border-left-color:#b34a50}.brand-archive-record.state-draft{border-left-color:#8998a5}.brand-archive-record.state-archived{border-left-color:#b8c0c7;opacity:.78}.archive-record-head{display:flex;justify-content:space-between;gap:20px;padding:16px 17px 8px}.archive-record-head h4{margin:7px 0 3px;color:var(--navy);font-size:16px}.archive-record-head p,.archive-record-notes{margin:0;color:var(--muted);font-size:.875rem;line-height:1.45}.archive-record-notes{padding:0 17px 11px}.archive-record-tags{display:flex;gap:5px;align-items:center;flex-wrap:wrap}.archive-record-tags>span:not(.archive-pill){padding:3px 7px;border-radius:999px;background:#eef3f7;color:#51697c;font-size:.875rem;font-weight:850;text-transform:uppercase}.archive-pill{display:inline-grid;place-items:center;padding:4px 8px;border-radius:999px;background:#e8f5ed;color:#167044;font-size:.875rem;font-weight:900;text-transform:uppercase}.archive-pill.expiring,.archive-pill.due_soon{background:#fff1d2;color:#8a5900}.archive-pill.expired,.archive-pill.overdue{background:#fde7e8;color:#9d3038}.archive-pill.draft,.archive-pill.archived,.archive-pill.cancelled{background:#edf0f2;color:#657481}.archive-pill.completed{background:#e8f5ed;color:#167044}.archive-record-validity{display:grid;gap:3px;min-width:210px;text-align:right}.archive-record-validity small{color:var(--muted);font-size:.875rem;text-transform:uppercase}.archive-record-validity strong{color:var(--navy);font-size:.875rem}.archive-record-validity span{color:var(--archive-blue);font-size:.875rem;font-weight:850}.archive-record-actions{display:flex;gap:7px;flex-wrap:wrap;padding:0 17px 14px}.archive-record-details{border-top:1px solid var(--line);background:#f8fafc}.archive-record-details>summary{display:flex;justify-content:space-between;gap:10px;padding:11px 16px;color:var(--navy);cursor:pointer;font-size:.875rem;font-weight:850}.archive-record-details>summary span{color:var(--muted)}.archive-record-detail-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:16px;padding:0 16px 16px}.archive-record-detail-grid h5{margin:7px 0;color:var(--navy)}
.archive-version-list,.archive-link-list{display:grid;gap:7px}.archive-version-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:9px;align-items:center;padding:9px 10px;border:1px solid #dae3e9;border-radius:10px;background:#fff}.archive-version-row.current{border-color:#91bdd9;background:#f4faff}.archive-version-row>div{display:grid;min-width:0}.archive-version-row strong{font-size:.875rem;overflow-wrap:anywhere}.archive-version-row small,.archive-version-row>span:not(.archive-version-number){color:var(--muted);font-size:.875rem}.archive-version-number{display:grid;place-items:center;width:31px;height:31px;border-radius:50%;background:#e2eff8;color:var(--archive-blue);font-size:.875rem;font-weight:900}.archive-link-row{display:grid;grid-template-columns:auto 1fr;gap:4px 8px;padding:9px 10px;border:1px solid #dae3e9;border-radius:10px;background:#fff}.archive-link-row span{color:var(--archive-blue);font-size:.875rem;font-weight:900;text-transform:uppercase}.archive-link-row strong{font-size:.875rem}.archive-link-row small{grid-column:1/-1;color:var(--muted);font-size:.875rem}
.brand-archive-deadline-list,.brand-archive-referent-list{display:grid;gap:9px}.archive-deadline{display:grid;grid-template-columns:100px minmax(0,1fr) auto auto;gap:11px;align-items:center;padding:11px 13px;border:1px solid var(--line);border-radius:11px;background:#fff}.archive-deadline.overdue{border-color:#e3a7aa;background:#fff8f8}.archive-deadline.due_soon{border-color:#e7c67f;background:#fffdf7}.archive-deadline time{color:var(--navy);font-size:.875rem;font-weight:900}.archive-deadline>div:not(.mini-actions){display:grid;min-width:0}.archive-deadline strong{font-size:.875rem}.archive-deadline small{color:var(--muted);font-size:.875rem;overflow-wrap:anywhere}.archive-deadline .mini-actions{justify-content:flex-end}.archive-referent{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 11px;border:1px solid var(--line);border-radius:11px;background:#fff}.archive-avatar{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:#e6f2fa;color:var(--archive-blue);font-size:.875rem;font-weight:900}.archive-referent>div:nth-child(2){display:grid;min-width:0}.archive-referent strong{font-size:.875rem}.archive-referent span{color:var(--archive-blue);font-size:.875rem;font-weight:800}.archive-referent small{color:var(--muted);font-size:.875rem;overflow-wrap:anywhere}.brand-archive-history-list{display:grid;gap:0}.archive-history-row{display:grid;grid-template-columns:10px 1fr auto;gap:10px;align-items:center;padding:10px 0;border-top:1px solid var(--line)}.archive-history-row:first-child{border-top:0}.archive-history-row i{width:8px;height:8px;border-radius:50%;background:#7fb0d0}.archive-history-row>div{display:grid}.archive-history-row strong{font-size:.875rem}.archive-history-row small,.archive-history-row time{color:var(--muted);font-size:.875rem}.brand-archive-archived{margin-top:18px;padding:0;overflow:hidden}.brand-archive-archived>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 16px;cursor:pointer}.brand-archive-archived>summary span{color:var(--muted);font-size:.875rem}.brand-archive-archived-list{display:grid;gap:8px;padding:0 16px 15px}.brand-archive-archived-list article{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#f8fafb}.brand-archive-archived-list article>div{display:grid;gap:2px}.brand-archive-archived-list strong{font-size:.875rem}.brand-archive-archived-list span{color:var(--muted);font-size:.875rem}.brand-archive-dialog{width:min(820px,calc(100vw - 28px));max-height:90vh;overflow:auto}.brand-archive-dialog form{min-width:0;padding:27px;position:relative}.brand-archive-file-field{padding:12px;border:1px dashed #9fc4df;border-radius:11px;background:#f6fbfe}.brand-archive-file-field small{color:var(--muted);font-size:.875rem}
@media(max-width:900px){.archive-profile-info{display:grid}.archive-profile-actions{justify-content:flex-start}.brand-archive-accordion>summary{align-items:flex-start}.archive-accordion-counts{max-width:55%}.archive-deadline{grid-template-columns:90px minmax(0,1fr) auto}.archive-deadline .mini-actions{grid-column:2/-1}}
@media(max-width:760px){.brand-archive-boundary,.archive-company-heading,.archive-tab-help{display:grid}.brand-archive-filters{display:grid;grid-template-columns:1fr 1fr}.brand-archive-filters input{grid-column:1/-1;min-width:0}.brand-archive-filters>*{width:100%;min-width:0}.archive-record-detail-grid{grid-template-columns:1fr}.archive-record-head{display:grid}.archive-record-validity{text-align:left}.archive-version-row{grid-template-columns:auto 1fr}.archive-version-row>span:not(.archive-version-number),.archive-version-row>a{grid-column:2}.archive-deadline{grid-template-columns:1fr}.archive-deadline .mini-actions{grid-column:1;justify-content:flex-start}.archive-referent{grid-template-columns:38px 1fr}.archive-referent>button{grid-column:2;justify-self:start}.brand-archive-accordion>summary{display:grid}.archive-accordion-counts{max-width:none;justify-content:flex-start}.brand-archive-archived-list article{align-items:flex-start;flex-direction:column}}
@media(max-width:520px){.brand-archive-filters{grid-template-columns:1fr}.brand-archive-filters input{grid-column:auto}.brand-archive-direct>.archive-profile-body,.archive-profile-body.inside-accordion{padding:14px}.archive-profile-actions{display:grid;grid-template-columns:1fr;width:100%}.archive-profile-actions>*{width:100%;justify-content:center}.archive-tab{padding:8px 9px}.brand-archive-dialog{width:100vw;height:100dvh;max-height:none;margin:0;border-radius:0}.brand-archive-dialog form{padding:24px 15px calc(24px + env(safe-area-inset-bottom))}.archive-record-actions{display:grid;grid-template-columns:1fr}.archive-record-actions button{width:100%}}

/* r136 · Archivio Brand visuale, loghi e documenti divisi per categoria. */
.brand-archive-direct,.brand-archive-accordion{position:relative;border-color:#d8e5ee;box-shadow:0 9px 24px rgba(24,61,91,.06)}.brand-archive-direct::before,.brand-archive-accordion::before{content:"";position:absolute;z-index:2;inset:0 auto 0 0;width:4px;border-radius:14px 0 0 14px;background:linear-gradient(#1779bf,#43afd3)}.archive-profile-identity{display:flex;align-items:center;gap:13px;min-width:0}.archive-profile-identity>div{min-width:0}.archive-brand-logo{display:grid;place-items:center;flex:0 0 auto;width:72px;height:58px;padding:7px;border:1px solid #d9e6ee;border-radius:13px;background:linear-gradient(145deg,#fff,#f1f7fb);color:#1a6eaa;font-size:16px;font-weight:950;letter-spacing:.04em;box-shadow:0 5px 14px rgba(19,72,111,.08)}.archive-brand-logo.compact{width:55px;height:45px;border-radius:11px;font-size:.875rem}.archive-brand-logo img{display:block;max-width:100%;max-height:100%;object-fit:contain}.archive-category-list{display:grid;gap:14px}.archive-category-group{overflow:hidden;border:1px solid #dbe7ef;border-radius:14px;background:#f9fbfd}.archive-category-group>header{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:10px;align-items:center;padding:11px 13px;border-bottom:1px solid #dbe7ef;background:linear-gradient(90deg,#eef7fd,#f9fcfe)}.archive-category-group>header>span{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:#fff;color:#1676b8;font-size:17px;box-shadow:0 3px 9px rgba(22,87,132,.09)}.archive-category-group>header strong,.archive-category-group>header small{display:block}.archive-category-group>header strong{color:var(--navy);font-size:.875rem}.archive-category-group>header small{margin-top:3px;color:var(--muted);font-size:.875rem}.archive-category-group>header>b{display:grid;place-items:center;min-width:27px;height:27px;padding:0 8px;border-radius:999px;background:#fff;color:#1676b8;font-size:.875rem}.archive-category-group>.brand-archive-record-list{padding:11px}.archive-category-group .brand-archive-record{border-left-width:4px;box-shadow:0 4px 11px rgba(23,56,80,.035)}.archive-logo-editor{display:grid;grid-template-columns:100px minmax(0,1fr);gap:14px;align-items:center;padding:13px;border:1px solid #d6e5ee;border-radius:13px;background:#f6fafc}.archive-logo-editor>label{margin:0!important}.archive-logo-preview{display:grid;place-items:center;width:96px;height:74px;padding:9px;border:1px dashed #a9c8dc;border-radius:12px;background:#fff;color:#1b73ad;font-size:14px;font-weight:950}.archive-logo-preview img{max-width:100%;max-height:100%;object-fit:contain}
@media(max-width:700px){.archive-profile-identity{align-items:flex-start}.archive-brand-logo{width:58px;height:48px}.archive-category-group>.brand-archive-record-list{padding:8px}.archive-category-group .archive-record-head{display:grid;gap:9px}.archive-category-group .archive-record-validity{text-align:left;min-width:0}.archive-logo-editor{grid-template-columns:74px minmax(0,1fr)}.archive-logo-preview{width:70px;height:58px}}

/* Vendite cumulative · documenti raggruppati con prodotti espandibili */
.sale-document-row td:first-child{display:table-cell;white-space:nowrap}
.sale-document-date{display:inline-flex;align-items:center;gap:9px}
.sale-document-row.is-expanded{background:#eef6fc}
.sale-document-row.is-expanded td{border-bottom-color:#cbddea}
.sale-expand{width:26px;height:26px;display:inline-grid;place-items:center;flex:0 0 26px;border:1px solid #b9cede;border-radius:7px;background:#fff;color:var(--blue);font-size:21px;line-height:1;cursor:pointer}
.sale-document-row.is-expanded .sale-expand{background:var(--blue);border-color:var(--blue);color:#fff}
.sale-line-count{display:inline-grid;place-items:center;min-width:28px;height:25px;padding:0 7px;border-radius:13px;background:#edf3f7;color:var(--navy);font-weight:850}
.sale-products-row>td{padding:0 14px 14px;background:#f4f8fb;border-bottom:2px solid #cbddea}
.sale-products-row:hover{background:transparent}
.sale-products-panel{border:1px solid #cbddea;border-top:0;border-radius:0 0 12px 12px;background:#fff;overflow:hidden;box-shadow:0 6px 14px rgba(20,47,75,.06)}
.sale-products-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 13px;background:#eaf2f8;border-bottom:1px solid #cbddea}
.sale-products-head>div{display:grid;gap:2px}
.sale-products-head strong{font-size:.875rem;color:var(--navy)}
.sale-products-head small{font-size:.875rem;color:var(--muted)}
.sale-products-scroll{overflow:auto}
.sale-products-table{font-size:.875rem}
.sale-products-table th{padding:8px 11px;background:#f8fafc}
.sale-products-table td{padding:8px 11px;vertical-align:top}
.sale-products-table td:nth-child(1){width:150px}
.sale-products-table td:nth-child(2){min-width:280px}
.sale-products-table td:nth-child(3){min-width:230px}
.sale-products-table td:nth-child(4){width:65px;text-align:center}
.sale-products-table small{display:block;margin-top:3px;color:var(--muted);line-height:1.35}
.sale-serials{font-size:.875rem;line-height:1.45;color:#536a7f;overflow-wrap:anywhere}
.sale-lines-loading,.sale-lines-empty{padding:18px;text-align:center;color:var(--muted);font-size:.875rem}
.agenda-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.agenda-actions .secondary{padding:7px 9px;font-size:.875rem}.agenda-actions .agenda-range.active{background:var(--navy);color:#fff;border-color:var(--navy)}.agenda-actions .primary{padding:8px 10px;font-size:.875rem}.activity-link{width:100%;border:0;background:transparent;text-align:left;cursor:pointer;border-radius:10px}.activity-link:hover{background:#f3f7fa}
@media(max-width:820px){
  .sale-products-head{align-items:flex-start;flex-direction:column}
  .sale-products-head .mini-btn{width:100%}
  .sale-expand{margin-right:7px;vertical-align:middle}
}

/* Revisione cumulativa r11: release, finestre, magazzino e comunicazioni. */
.release-card{margin:10px 12px 0;padding:11px 12px;border:1px solid rgba(255,255,255,.18);border-radius:11px;background:rgba(255,255,255,.07);color:#fff;display:grid;gap:6px}
.release-card strong{font-size:.875rem;line-height:1.35}
.environment-badge{justify-self:start;padding:3px 7px;border-radius:999px;background:#b42318;color:#fff;font-size:.875rem;font-weight:900;letter-spacing:.08em}
.release-label{display:block;text-align:center;color:var(--muted);font-size:.875rem;font-weight:750}
.push-notifications.is-active{border-color:#a6d8ba;background:#edf8f2;color:#18734b}
.login-overlay{overflow:auto;padding-top:max(24px,env(safe-area-inset-top));padding-bottom:max(24px,env(safe-area-inset-bottom))}
.login-card{margin:auto}

.expense-review-dialog{width:min(700px,calc(100vw - 32px));max-height:min(88vh,780px);overflow:auto}
#expenseReviewForm{min-width:0;padding:27px;position:relative}
.expense-review-fields{display:grid;gap:16px}
.expense-review-fields label{display:grid;gap:7px;font-size:.875rem;font-weight:800}
.expense-review-fields textarea{width:100%;min-height:130px;resize:vertical}

.warehouse-group-row.is-expanded{background:#eef6fc}
.warehouse-group-row td:first-child{font-weight:700}
.warehouse-quantity{display:inline-grid;place-items:center;min-width:34px;height:28px;padding:0 9px;border-radius:999px;background:#edf3f7;color:var(--navy);font-weight:900}
.warehouse-serials-row>td{padding:0 14px 14px;background:#f4f8fb;border-bottom:2px solid #cbddea}
.warehouse-serials-panel{border:1px solid #cbddea;border-top:0;border-radius:0 0 12px 12px;background:#fff;overflow:hidden}
.warehouse-serials-head{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:10px 13px;background:#eaf2f8;border-bottom:1px solid #cbddea}
.warehouse-serials-scroll{overflow:auto}
.warehouse-serials-table{min-width:760px;font-size:.875rem}
.warehouse-serials-table th,.warehouse-serials-table td{padding:8px 11px}
.warehouse-match{background:#fff4cf}

.communication-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;border:0;margin-bottom:14px}
.communication-tabs button{display:grid;grid-template-columns:1fr auto;align-items:center;gap:5px 10px;min-height:82px;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:#fff;text-align:left;box-shadow:0 5px 16px rgba(20,47,75,.04)}
.communication-tabs button small{grid-column:1/-1;color:var(--muted);font-size:.875rem;font-weight:700}
.communication-tabs button.active{border:2px solid var(--blue);background:#f2f8fd;color:var(--navy)}
.communication-tabs button span{grid-column:2;grid-row:2;margin:0}
.communication-dialog{overscroll-behavior:contain}
.communication-dialog .dialog-x{z-index:3}
#communicationReplySubmit:disabled{opacity:.5;cursor:not-allowed}

.message-dialog{width:min(560px,calc(100vw - 32px));max-height:min(84vh,700px);overflow:auto}
#messageDialogForm{min-width:0;padding:26px;position:relative;display:grid;grid-template-columns:44px 1fr;gap:14px}
.message-dialog-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:#eaf2f8;color:var(--blue);font-size:21px;font-weight:900}
.message-dialog-copy{min-width:0}
.message-dialog-copy h2{margin:2px 32px 9px 0}
#messageDialogBody{white-space:pre-wrap;overflow-wrap:anywhere;color:#455b70;line-height:1.55}
#messageDialogInputWrap{display:grid;gap:6px;margin-top:15px;font-size:.875rem;font-weight:800}
#messageDialogInputWrap.hidden{display:none}
#messageDialogForm>.dialog-actions{grid-column:1/-1;margin-top:8px}
#toast{max-width:min(460px,calc(100vw - 32px));white-space:normal;line-height:1.4}

@media(max-width:820px){
  .communication-tabs{grid-template-columns:1fr}
  .communication-tabs button{min-height:68px}
  .top-actions #pushNotificationBtn{display:inline-flex;padding:9px 11px;font-size:.875rem}
  .top-actions #pushNotificationBtn.hidden{display:none}
}
@media(max-width:620px){
  .login-overlay{place-items:start center;padding-left:14px;padding-right:14px}
  .login-card{padding:20px;gap:11px}
  .login-card h1{font-size:24px}
  .login-brand{padding-bottom:11px}
  #expenseReviewForm{padding:22px 18px}
  .expense-review-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 24px)}
  .expense-review-dialog .dialog-actions{display:grid;grid-template-columns:1fr}
  .expense-review-dialog .dialog-actions button{width:100%}
  .communication-dialog{box-sizing:border-box;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;border-radius:0;padding:calc(20px + env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) calc(20px + env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));overflow:auto}
  .communication-dialog .dialog-x{position:fixed;top:calc(9px + env(safe-area-inset-top));right:max(10px,env(safe-area-inset-right));width:38px;height:38px;border-radius:50%;background:#fff;box-shadow:0 3px 12px rgba(20,47,75,.18)}
  .communication-dialog h2{padding-right:42px;font-size:22px}
  .communication-dialog .ticket-action-guide{margin:12px 0;padding:11px}
  .communication-reply-form{padding:12px;margin:11px 0}
  .communication-reply-label textarea{min-height:100px}
  .communication-history h3{margin-top:14px}
  .message-thread{max-height:none}
  #messageDialogForm{padding:22px 17px;grid-template-columns:38px 1fr;gap:10px}
  .message-dialog-icon{width:36px;height:36px}
  #messageDialogForm>.dialog-actions{display:grid;grid-template-columns:1fr}
  #messageDialogForm>.dialog-actions button{width:100%}
  #toast{left:16px;right:16px;bottom:calc(16px + env(safe-area-inset-bottom))}
}

/* r12 final overrides: queste regole restano ultime per prevalere sui temi storici. */
.communication-list{gap:7px}
.communication-card{min-height:0;padding:10px 13px;gap:12px;margin-bottom:0;border-radius:11px;border-left-width:4px;box-shadow:0 3px 10px rgba(20,47,75,.045)}
.communication-main h3{margin:5px 0 3px;font-size:14px}
.communication-open-area>p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;margin:4px 0;font-size:.875rem;line-height:1.35}
.communication-card .ticket-lifecycle,.communication-card .ticket-reopened-summary{margin-top:6px;padding:6px 8px;font-size:.875rem}
.communication-actions{min-width:120px;flex-direction:row;align-items:center;justify-content:flex-end;flex-wrap:wrap}
.communication-actions .mini-btn,.communication-actions .primary{padding:6px 9px;font-size:.875rem}
.welcome-mark img.round-logo{width:380%;height:100%;max-width:none;object-fit:contain;object-position:left center}
.is-staging .staging-banner{height:calc(var(--staging-content-height) + var(--safe-top));padding-top:var(--safe-top)}
.is-staging .sidebar{top:calc(var(--staging-content-height) + var(--safe-top));height:calc(100vh - var(--staging-content-height) - var(--safe-top));padding-top:0}
.is-staging .app-shell{padding-top:calc(var(--staging-content-height) + var(--safe-top))}
.is-staging .topbar{top:calc(var(--staging-content-height) + var(--safe-top));height:86px;padding-top:0}
.is-staging .login-overlay,.is-staging .company-chooser{top:calc(var(--staging-content-height) + var(--safe-top));padding-top:24px}
@media(max-width:820px){
  .communication-card{flex-direction:row}
  .communication-actions{align-items:center;min-width:96px}
}
@media(max-width:620px){
  :root{--staging-content-height:62px}
  .is-staging .staging-banner{height:calc(var(--staging-content-height) + var(--safe-top));padding:calc(7px + var(--safe-top)) 12px 7px}
  .is-staging .login-overlay,.is-staging .company-chooser{top:calc(var(--staging-content-height) + var(--safe-top));padding-top:14px}
  .communication-card{padding:9px 10px}
  .communication-actions{align-items:flex-end;flex-direction:column}
  .communication-open-area>p{-webkit-line-clamp:1}
}

/* r12-hf3 · Home approvata e identità visiva definitiva */
.dashboard-home{color:#102a43}
.dashboard-greeting{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 20px;padding:0 4px}
.dashboard-greeting h2{margin:0 0 5px;font-size:25px;letter-spacing:-.02em;color:#102a43}
.dashboard-greeting p{margin:0;color:#6c7f93;font-size:.875rem}
.dashboard-company-badge{display:flex;align-items:center;gap:10px;min-width:220px;padding:8px 12px;border:1px solid #dbe5ee;border-radius:12px;background:#fff}
.dashboard-company-badge img{width:40px;height:40px;object-fit:contain}
.dashboard-company-badge span,.dashboard-company-badge small,.dashboard-company-badge strong{display:block}
.dashboard-company-badge small{font-size:.875rem;text-transform:uppercase;letter-spacing:.08em;color:#7e8fa1}
.dashboard-company-badge strong{margin-top:3px;font-size:.875rem;color:#18344f}
.dashboard-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-bottom:20px}
.dashboard-kpi{appearance:none;width:100%;min-height:140px;display:flex;align-items:flex-start;gap:16px;padding:23px;border:1px solid #dbe4ec;border-radius:15px;background:#fff;text-align:left;color:#102a43;box-shadow:0 5px 17px rgba(18,48,75,.045)}
button.dashboard-kpi{cursor:pointer;transition:border-color .18s,box-shadow .18s,transform .18s}
button.dashboard-kpi:hover{transform:translateY(-2px);border-color:#a9c7df;box-shadow:0 10px 24px rgba(18,48,75,.09)}
.dashboard-kpi-icon{width:50px;height:50px;flex:0 0 50px;display:grid;place-items:center;border-radius:50%;background:#eaf3fb;color:#1565b1}
.dashboard-kpi-icon svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.dashboard-kpi-copy{display:grid;min-width:0}
.dashboard-kpi-copy small{font-size:.875rem;color:#667b90}
.dashboard-kpi-copy strong{margin-top:4px;font-size:34px;line-height:1;font-weight:850;letter-spacing:-.03em;color:#0d2b4b}
.dashboard-kpi-copy em{margin-top:9px;font-size:.875rem;font-style:normal;color:#667b90}
.dashboard-kpi.tone-orange .dashboard-kpi-icon{background:#fff1e5;color:#ed6d13}
.dashboard-kpi.tone-orange .dashboard-kpi-copy em{color:#e06412}
.dashboard-kpi.tone-green .dashboard-kpi-icon{background:#eaf7ef;color:#149958}
.dashboard-kpi.tone-red .dashboard-kpi-icon{background:#fdeced;color:#df2735}
.dashboard-kpi.tone-red .dashboard-kpi-copy em{color:#d92532}
.dashboard-main-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(360px,.85fr);gap:20px;margin-bottom:20px}
.dashboard-lower-grid{display:grid;grid-template-columns:minmax(300px,.85fr) minmax(360px,1fr) minmax(300px,.85fr);gap:20px}
.dashboard-card{min-width:0;overflow:hidden;border:1px solid #dbe4ec;border-radius:15px;background:#fff;box-shadow:0 5px 17px rgba(18,48,75,.045)}
.dashboard-card-head{min-height:69px;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:18px 20px;border-bottom:1px solid #e8eef3}
.dashboard-card-head h3{margin:0;font-size:16px;color:#102a43}
.dashboard-card-head p{margin:4px 0 0;font-size:.875rem;color:#76899c}
.dashboard-period{padding:7px 10px;border:1px solid #dbe4ec;border-radius:8px;color:#526b82;font-size:.875rem;text-transform:capitalize}
.dashboard-see-all{border:0;background:transparent;color:#0768cb;font-weight:750;font-size:.875rem;white-space:nowrap}
.dashboard-chart{min-height:280px;padding:18px 20px 15px}
.dashboard-chart-legend{display:flex;gap:20px;margin-bottom:10px;color:#64798e;font-size:.875rem}
.dashboard-chart-legend span{display:flex;align-items:center;gap:6px}
.dashboard-chart-legend i{width:9px;height:9px;border-radius:2px;background:#2a72bc}
.dashboard-chart-legend i.line{width:18px;height:0;border-top:2px dashed #173b60;background:transparent}
.dashboard-chart-plot{height:195px;position:relative;border-bottom:1px solid #dfe7ee;background:repeating-linear-gradient(to bottom,transparent 0,transparent 44px,#edf2f6 45px)}
.dashboard-bars{position:absolute;inset:0 5px 0;display:flex;align-items:flex-end;gap:3px}
.dashboard-bars i{min-width:2px;flex:1;border-radius:2px 2px 0 0;background:linear-gradient(180deg,#b8d3ee,#dce9f6)}
.dashboard-chart-plot svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.dashboard-chart-plot polyline{fill:none;stroke:#1d69b4;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.dashboard-chart-labels{display:flex;justify-content:space-between;margin-top:8px;color:#8292a3;font-size:.875rem}
.dashboard-chart-empty{min-height:235px;display:grid;place-content:center;text-align:center;color:#7a8b9c}
.dashboard-chart-empty strong,.dashboard-chart-empty span{display:block}.dashboard-chart-empty span{max-width:330px;margin-top:6px;font-size:.875rem}
.dashboard-priority-list{display:grid;padding:0 17px}
.dashboard-priority{width:100%;min-width:0;display:grid;grid-template-columns:40px minmax(0,1fr) auto 12px;align-items:center;gap:11px;padding:12px 0;border:0;border-bottom:1px solid #e8eef3;background:#fff;text-align:left;color:#102a43}
.dashboard-priority:last-child{border-bottom:0}
.dashboard-priority:hover{background:#f9fbfd}
.dashboard-priority-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:10px;background:#eaf3fb;color:#1268b7}
.dashboard-priority-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.dashboard-priority-copy{min-width:0}
.dashboard-priority-copy strong,.dashboard-priority-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dashboard-priority-copy strong{font-size:.875rem}.dashboard-priority-copy small{margin-top:4px;color:#71859a;font-size:.875rem}
.dashboard-priority em{font-style:normal;font-size:.875rem;color:#0969ca;white-space:nowrap}.dashboard-priority b{font-size:22px;font-weight:400;color:#18344f}
.dashboard-priority.level-warning .dashboard-priority-icon{background:#fff1e5;color:#ed6d13}.dashboard-priority.level-warning em{color:#e06412}
.dashboard-priority.level-urgent .dashboard-priority-icon{background:#fdeced;color:#df2735}.dashboard-priority.level-urgent em{color:#dc2533}
.dashboard-clear{min-height:150px;display:grid;place-content:center;text-align:center;padding:25px;color:#708397}
.dashboard-clear strong{color:#189958;font-size:.875rem}.dashboard-clear span{margin-top:5px;font-size:.875rem}
.dashboard-presence{min-height:195px;display:flex;align-items:center;gap:27px;padding:21px}
.dashboard-donut{width:118px;height:118px;flex:0 0 118px;display:grid;place-items:center;border-radius:50%;position:relative}
.dashboard-donut::after{content:"";position:absolute;inset:18px;border-radius:50%;background:#fff}
.dashboard-donut span{position:relative;z-index:1;font-size:20px;font-weight:850;color:#163a5c}
.dashboard-presence-legend{display:grid;gap:12px;min-width:0}
.dashboard-presence-legend div{display:grid;grid-template-columns:10px 32px 1fr;align-items:center;gap:7px}
.dashboard-presence-legend i{width:9px;height:9px;border-radius:50%}.dashboard-presence-legend i.present{background:#18a65b}.dashboard-presence-legend i.permission{background:#f39a32}.dashboard-presence-legend i.missing{background:#e3323f}
.dashboard-presence-legend strong{font-size:17px}.dashboard-presence-legend span{font-size:.875rem;color:#71859a;white-space:nowrap}
.dashboard-presence-empty{padding:48px 24px;text-align:center;color:#74889b;font-size:.875rem}
.dashboard-communication-list{display:grid;padding:0 17px}
.dashboard-communication{width:100%;min-width:0;display:grid;grid-template-columns:7px 40px minmax(0,1fr) 12px;align-items:center;gap:10px;padding:12px 0;border:0;border-bottom:1px solid #e8eef3;background:#fff;text-align:left;color:#102a43}
.dashboard-communication:last-child{border-bottom:0}.dashboard-communication>i{width:6px;height:6px;border-radius:50%;background:transparent}.dashboard-communication.unread>i{background:#1476e5}
.dashboard-communication-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:10px;background:#eef3f8;color:#46647f}
.dashboard-communication-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.dashboard-communication strong,.dashboard-communication small,.dashboard-communication em{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dashboard-communication strong{font-size:.875rem}.dashboard-communication small{margin-top:3px;color:#6f8498;font-size:.875rem}.dashboard-communication em{margin-top:5px;color:#8293a3;font-size:.875rem;font-style:normal}
.dashboard-communication>b{font-size:22px;font-weight:400}
.dashboard-quick-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:18px}
.dashboard-quick-actions button{min-height:84px;display:flex;align-items:center;gap:11px;padding:14px;border:1px solid #dbe4ec;border-radius:12px;background:#fff;color:#0869c7;text-align:left}
.dashboard-quick-actions button:hover{border-color:#9fc1de;background:#f8fbfe}
.dashboard-quick-actions button span{width:30px;height:30px;display:grid;place-items:center;flex:0 0 30px}
.dashboard-quick-actions svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.dashboard-quick-actions strong{font-size:.875rem;line-height:1.25}
.mobile-app-nav{display:none}
.brand-logo-full{width:260px;height:52px}.brand-logo-sidebar{width:122px;height:50px;background:transparent;padding:0}.logo-row{padding:15px 20px}

@media(max-width:1180px){
  .dashboard-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dashboard-lower-grid{grid-template-columns:1fr 1fr}.dashboard-quick-card{grid-column:1/-1}
  .dashboard-quick-actions{grid-template-columns:repeat(4,1fr)}
}
@media(max-width:820px){
  .dashboard-greeting{align-items:flex-start}.dashboard-company-badge{min-width:0}
  .dashboard-main-grid,.dashboard-lower-grid{grid-template-columns:1fr}
  .dashboard-quick-card{grid-column:auto}
  .dashboard-sales-card,.dashboard-quick-card{display:none}
  .topbar .top-actions>*:not(.notification-bell):not(.user-chip):not(.device-security-button){display:none!important}
  .topbar .top-actions{margin-left:auto}.topbar .user-chip{min-width:0;border:0;padding:0}.topbar .user-chip small{display:none}.topbar .user-chip strong{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:#176bb8;color:#fff;font-size:0}.topbar .user-chip strong::first-letter{font-size:.875rem}
  main{padding-bottom:calc(100px + env(safe-area-inset-bottom))}
  .mobile-app-nav{position:fixed;left:12px;right:12px;bottom:max(10px,env(safe-area-inset-bottom));z-index:18;display:grid;grid-template-columns:repeat(4,1fr);min-height:70px;padding:7px;border:1px solid #d8e2ea;border-radius:18px;background:rgba(255,255,255,.96);box-shadow:0 10px 30px rgba(13,42,68,.16);backdrop-filter:blur(14px)}
  .mobile-app-nav button{display:grid;place-items:center;gap:2px;border:0;background:transparent;color:#526a81;font-size:.875rem}.mobile-app-nav button span{font-size:22px;line-height:1}.mobile-app-nav button.active{color:#0869c7;font-weight:800}
}
@media(max-width:620px){
  .dashboard-greeting{margin-bottom:15px}.dashboard-greeting h2{font-size:21px}.dashboard-greeting p{font-size:.875rem;text-transform:capitalize}
  .dashboard-company-badge{padding:5px 8px}.dashboard-company-badge img{width:31px;height:31px}.dashboard-company-badge small{display:none}.dashboard-company-badge strong{max-width:100px;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.875rem}
  .dashboard-kpi-grid{grid-template-columns:1fr 1fr;gap:11px;margin-bottom:15px}
  .dashboard-kpi{min-height:120px;gap:10px;padding:16px 13px}.dashboard-kpi-icon{width:40px;height:40px;flex-basis:40px}.dashboard-kpi-icon svg{width:23px;height:23px}
  .dashboard-kpi-copy small{font-size:.875rem}.dashboard-kpi-copy strong{font-size:29px}.dashboard-kpi-copy em{margin-top:7px;font-size:.875rem}
  .dashboard-main-grid,.dashboard-lower-grid{gap:14px;margin-bottom:14px}
  .dashboard-card-head{min-height:60px;padding:14px 15px}.dashboard-card-head h3{font-size:15px}.dashboard-card-head p{display:none}
  .dashboard-priority-list,.dashboard-communication-list{padding:0 12px}
  .dashboard-priority{grid-template-columns:38px minmax(0,1fr) auto 10px;gap:8px}.dashboard-priority em{max-width:74px;overflow:hidden;text-overflow:ellipsis}
  .dashboard-presence{min-height:170px;padding:18px 15px;gap:20px}.dashboard-donut{width:100px;height:100px;flex-basis:100px}.dashboard-donut::after{inset:15px}.dashboard-presence-legend div{grid-template-columns:9px 25px 1fr;gap:5px}.dashboard-presence-legend strong{font-size:15px}.dashboard-presence-legend span{font-size:.875rem}
  .dashboard-communications-card{margin-bottom:5px}
  .brand-logo-full{width:220px;height:46px}
}

/* r12-hf4 · correzioni responsive, passkey mobile e grafico interattivo */
.logo-row{justify-content:center;min-height:98px;padding:14px 18px}
.logo-row>div:last-child{display:none}
.brand-logo-sidebar,.brand-logo-sidebar.round-logo{box-sizing:border-box;width:100%;max-width:210px;height:64px;padding:8px 11px;border-radius:12px;background:#fff;object-fit:contain;box-shadow:0 4px 14px rgba(0,0,0,.16)}
.dashboard-greeting>div:first-child{min-width:0;flex:1}
.dashboard-company-badge{box-sizing:border-box;min-width:0;max-width:280px;flex:0 1 280px;overflow:hidden}
.dashboard-company-badge>span{min-width:0}
.dashboard-company-badge strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dashboard-passkey-prompt{display:none}
.dashboard-period-controls{display:flex;align-items:center;gap:4px}
.dashboard-period-controls>button{min-width:30px;height:32px;padding:0 8px;border:1px solid #dbe4ec;border-radius:8px;background:#fff;color:#31516d;font:inherit;font-weight:800}
.dashboard-period-controls>button:hover,.dashboard-period-controls>button:focus-visible{border-color:#78a9d1;outline:2px solid rgba(34,112,180,.15);outline-offset:1px}
.dashboard-period-controls .dashboard-period{min-width:126px;height:32px;font-size:.875rem;font-weight:700;text-transform:capitalize}
.dashboard-chart-legend{align-items:center;flex-wrap:wrap}
.dashboard-chart-legend small{margin-left:auto;color:#7c8fa0;font-size:.875rem}
.dashboard-chart-plot svg{pointer-events:none}
.dashboard-bars{align-items:flex-end}
.dashboard-bar{position:relative;min-width:2px;flex:1;padding:0;border:0;border-radius:2px 2px 0 0;background:linear-gradient(180deg,#9fc4e7,#dce9f6);cursor:pointer}
.dashboard-bar:hover,.dashboard-bar:focus-visible{background:linear-gradient(180deg,#2c83d2,#8fc0e9);outline:0}
.dashboard-bar span{display:none;position:absolute;z-index:4;left:50%;bottom:calc(100% + 7px);transform:translateX(-50%);white-space:nowrap;padding:5px 7px;border-radius:6px;background:#102f4c;color:#fff;font-size:.875rem;box-shadow:0 4px 12px rgba(9,35,58,.2)}

/* v0.12.2-rc3 · navigazione mobile personale e planning compatto */
.mobile-quick-edit{display:none}
.mobile-nav-dialog{width:min(680px,94vw)}
#mobileNavForm{padding:27px;position:relative;min-width:0}
.mobile-nav-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.mobile-nav-choices label{display:grid;grid-template-columns:auto 34px 1fr;gap:9px;align-items:center;padding:11px 12px;border:1px solid var(--line);border-radius:11px;background:#fff;cursor:pointer}
.mobile-nav-choices label:has(input:checked){border-color:#84b8e3;background:#f2f8fd;color:var(--navy)}
.mobile-nav-choices input{width:auto}
.mobile-nav-choices span{font-size:22px;text-align:center}
.mobile-nav-choices strong{font-size:.875rem}
.mobile-nav-count{margin-top:12px;padding:10px 12px;border-radius:10px;background:#eef4f8;color:var(--muted);text-align:center}
.mobile-nav-count strong{color:var(--navy)}
@media(max-width:820px){
  .mobile-app-nav{grid-template-columns:repeat(5,1fr)}
  .mobile-app-nav button{min-width:0;padding:3px 1px}
  .mobile-app-nav button span{font-size:20px}
  .mobile-quick-edit{display:block}
}
@media(max-width:620px){
  #view-shifts>.section-head{display:grid;gap:9px;margin:0 0 10px;align-items:start}
  #view-shifts>.section-head h2{margin:2px 0;font-size:22px}
  #view-shifts>.section-head>div:first-child>p:last-child{display:none}
  #view-shifts>.section-head .section-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;width:100%}
  #view-shifts>.section-head .section-actions button{min-width:0;width:100%;padding:8px 5px;font-size:.875rem;line-height:1.2}
  #shiftDuplicateWeekBtn,#shiftMonthlyReportBtn{grid-column:span 1}
  #shiftPublicationState{grid-column:1/-1;justify-content:center;min-height:31px}
  #shiftPublishWeekBtn{grid-column:span 2}
  #shiftNewBtn{grid-column:span 1}
  #view-shifts .planner-toolbar{gap:8px;margin:8px 0;padding:10px 12px;border-radius:12px}
  #view-shifts .planner-toolbar strong{font-size:14px}
  #view-shifts .planner-filter-panel summary{padding:8px 10px;font-size:.875rem}
  #view-shifts .kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:10px 0}
  #view-shifts .kpi{padding:11px}
  #view-shifts .kpi .value{font-size:20px}
  #view-shifts .planning-legend{gap:5px;margin:8px 0}
  #view-shifts .planning-legend span{padding:4px 7px;font-size:.875rem}
  .mobile-nav-choices{grid-template-columns:1fr}
  #mobileNavForm{padding:22px 18px}
}
.dashboard-bar:hover span,.dashboard-bar:focus-visible span{display:block}
.dashboard-period-dialog{width:min(560px,94vw)}
#dashboardPeriodForm{padding:28px;position:relative}
#dashboardPeriodForm>label,#dashboardPeriodForm .form-grid label{display:grid;gap:6px;font-size:.875rem;font-weight:750}
.dashboard-period-separator{display:flex;align-items:center;gap:12px;margin:16px 0;color:#8291a0;font-size:.875rem;text-transform:uppercase;letter-spacing:.08em}
.dashboard-period-separator::before,.dashboard-period-separator::after{content:"";height:1px;flex:1;background:#e0e7ed}
#salesKpis{box-sizing:border-box;width:100%;min-width:0}
#salesKpis>.kpi{box-sizing:border-box;min-width:0;overflow:hidden}
#salesKpis .value{overflow-wrap:anywhere;word-break:normal}
#view-sales .table-card{box-sizing:border-box;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}

@media(max-width:820px){
  .dashboard-greeting{gap:10px}
  .dashboard-company-badge{width:min(148px,43vw);max-width:43vw;flex-basis:43vw}
  .dashboard-company-badge img{flex:0 0 auto}
  .dashboard-passkey-prompt{box-sizing:border-box;display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:10px;margin:-2px 0 15px;padding:11px 12px;border:1px solid #b9d5ed;border-radius:13px;background:#f3f9fe;color:#123b5d}
  .dashboard-passkey-prompt.hidden{display:none}
  .dashboard-passkey-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:10px;background:#dceefa;color:#0b69bd;font-size:25px;font-weight:900}
  .dashboard-passkey-prompt strong,.dashboard-passkey-prompt small{display:block}
  .dashboard-passkey-prompt strong{font-size:.875rem}.dashboard-passkey-prompt small{margin-top:3px;color:#667f94;font-size:.875rem;line-height:1.3}
  .dashboard-passkey-prompt button{padding:8px 11px;font-size:.875rem}
  #salesKpis.kpi-grid.mini{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  #salesKpis>.kpi{width:100%;padding:14px 12px}
  #salesKpis .label{font-size:.875rem}
  #salesKpis .value{font-size:21px}
  #salesKpis .hint{font-size:.875rem}
}
@media(max-width:620px){
  .dashboard-company-badge{width:min(132px,42vw);max-width:42vw;flex-basis:42vw}
  .dashboard-company-badge strong{max-width:78px}
  .dashboard-passkey-prompt{grid-template-columns:34px minmax(0,1fr) auto;padding:10px;gap:8px}
  .dashboard-passkey-icon{width:32px;height:32px}
  #dashboardPeriodForm{padding:24px 18px}
  #dashboardPeriodForm .dialog-actions{display:grid;grid-template-columns:1fr}
  #dashboardPeriodForm .dialog-actions button{width:100%}
}

/* v0.12.2-rc5 · schede comunicazioni e planning mobile a elenco */
.planning-mobile{display:none}
@media(max-width:620px){
  #view-communications .communication-card{
    box-sizing:border-box;
    display:grid;
    grid-template-columns:minmax(0,1fr);
    gap:10px;
    width:100%;
    padding:12px;
  }
  #view-communications .communication-main,
  #view-communications .communication-open-area{
    box-sizing:border-box;
    width:100%;
    min-width:0;
  }
  #view-communications .communication-main>p{
    display:block;
    margin:6px 0;
    overflow:visible;
    -webkit-line-clamp:unset;
  }
  #view-communications .communication-meta{
    display:flex;
    align-items:flex-start;
    gap:6px;
    width:100%;
  }
  #view-communications .communication-meta>span{
    max-width:100%;
    white-space:nowrap;
    word-break:normal;
    overflow-wrap:normal;
  }
  #view-communications .communication-open-area>small{
    display:block;
    margin-top:7px;
    font-size:.875rem;
    line-height:1.45;
  }
  #view-communications .communication-actions{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    align-items:stretch;
    gap:7px;
    width:100%;
    min-width:0;
  }
  #view-communications .communication-actions button{
    box-sizing:border-box;
    width:100%;
    min-width:0;
    min-height:38px;
    padding:8px 7px;
    white-space:normal;
    line-height:1.2;
  }
  #view-communications .communication-actions .sub{
    grid-column:1/-1;
  }

  #view-shifts .planning-wrap{display:none}
  #view-shifts .planning-legend{display:none}
  #view-shifts #shiftsKpis{display:none}
  #view-shifts .planner-foot{margin-top:10px}
  .planning-mobile{display:grid;gap:10px}
  .planning-mobile-modes{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:5px;
    padding:4px;
    border:1px solid #dce6ee;
    border-radius:12px;
    background:#eef3f7;
  }
  .planning-mobile-modes button{
    min-width:0;
    padding:9px 4px;
    border:0;
    border-radius:9px;
    background:transparent;
    color:#60778c;
    font:inherit;
    font-size:.875rem;
    font-weight:800;
  }
  .planning-mobile-modes button.active{
    background:#fff;
    color:#0869c7;
    box-shadow:0 2px 8px rgba(14,48,75,.11);
  }
  .planning-mobile-days{
    display:grid;
    grid-template-columns:repeat(7,minmax(0,1fr));
    gap:4px;
  }
  .planning-mobile-days button{
    display:grid;
    place-items:center;
    gap:2px;
    min-width:0;
    padding:7px 2px;
    border:1px solid #dce6ee;
    border-radius:9px;
    background:#fff;
    color:#587086;
    font:inherit;
  }
  .planning-mobile-days button span{
    font-size:.875rem;
    font-weight:800;
    text-transform:uppercase;
  }
  .planning-mobile-days button strong{font-size:.875rem}
  .planning-mobile-days button.today{border-color:#88bce5}
  .planning-mobile-days button.active{border-color:#176fba;background:#176fba;color:#fff}
  .planning-mobile-content{display:grid;gap:7px}
  .planning-mobile-row{
    display:grid;
    grid-template-columns:minmax(0,1fr);
    gap:8px;
    padding:11px 12px;
    border:1px solid #dce5ed;
    border-radius:12px;
    background:#fff;
    box-shadow:0 3px 10px rgba(20,47,75,.04);
  }
  .planning-mobile-person{display:flex;align-items:baseline;justify-content:space-between;gap:8px;min-width:0}
  .planning-mobile-person strong{min-width:0;color:#173954;font-size:.875rem}
  .planning-mobile-person small{
    max-width:46%;
    overflow:hidden;
    color:#71869a;
    font-size:.875rem;
    text-align:right;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .planning-mobile-assignments{display:grid;gap:6px}
  .planning-mobile-assignment{
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    align-items:center;
    gap:7px;
    width:100%;
    min-width:0;
    padding:8px 9px;
    border:1px solid #cddde9;
    border-left:4px solid #5599cf;
    border-radius:9px;
    background:#f7fbfe;
    color:#173954;
    text-align:left;
  }
  .planning-mobile-assignment.rest{border-left-color:#7f93a5;background:#f4f6f8}
  .planning-mobile-assignment.holiday{border-left-color:#2f9b65;background:#f0faf5}
  .planning-mobile-assignment.permission{border-left-color:#d99a32;background:#fff9ed}
  .planning-mobile-assignment.sick{border-left-color:#d35e62;background:#fff4f4}
  .planning-mobile-assignment.training,.planning-mobile-assignment.transfer{border-left-color:#8069bd;background:#f7f4fc}
  .planning-mobile-assignment .planning-mobile-type{
    padding:3px 5px;
    border-radius:5px;
    background:rgba(255,255,255,.85);
    font-size:.875rem;
    font-weight:900;
    text-transform:uppercase;
  }
  .planning-mobile-assignment strong{min-width:0;font-size:.875rem}
  .planning-mobile-assignment small{
    max-width:86px;
    overflow:hidden;
    font-size:.875rem;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .planning-mobile-assignment em{
    grid-column:1/-1;
    color:#8a5b00;
    font-size:.875rem;
    font-style:normal;
    font-weight:800;
  }
  .planning-mobile-empty{padding:7px 9px;border-radius:8px;background:#f5f7f9;color:#8a9aaa;font-size:.875rem}
  .planning-mobile-add{
    padding:7px 9px;
    border:1px dashed #98bad5;
    border-radius:8px;
    background:#f6fbff;
    color:#1769ad;
    font:inherit;
    font-size:.875rem;
    font-weight:800;
    text-align:left;
  }
  .planning-mobile-group{
    display:grid;
    gap:6px;
    padding:10px;
    border:1px solid #dce5ed;
    border-radius:13px;
    background:#f5f8fa;
  }
  .planning-mobile-group>h3{margin:0 2px 2px;color:#163d5d;font-size:.875rem}
  .planning-mobile-group .planning-mobile-row{box-shadow:none}
  .planning-mobile-employee{
    overflow:hidden;
    border:1px solid #dce5ed;
    border-radius:12px;
    background:#fff;
  }
  .planning-mobile-employee>summary{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    padding:12px;
    cursor:pointer;
    list-style:none;
  }
  .planning-mobile-employee>summary::-webkit-details-marker{display:none}
  .planning-mobile-employee>summary span{display:grid;gap:3px;min-width:0}
  .planning-mobile-employee>summary strong{color:#173954;font-size:.875rem}
  .planning-mobile-employee>summary small{overflow:hidden;color:#71869a;font-size:.875rem;text-overflow:ellipsis;white-space:nowrap}
  .planning-mobile-employee>summary em{color:#1769ad;font-size:.875rem;font-style:normal;font-weight:800;white-space:nowrap}
  .planning-mobile-employee>div{display:grid;border-top:1px solid #e3eaf0}
  .planning-mobile-employee-day{
    display:grid;
    grid-template-columns:55px minmax(0,1fr);
    gap:7px;
    padding:8px 10px;
    border-bottom:1px solid #edf1f4;
  }
  .planning-mobile-employee-day:last-child{border-bottom:0}
  .planning-mobile-employee-day>span{padding-top:7px;color:#71869a;font-size:.875rem;font-weight:800;text-transform:capitalize}
  .planning-mobile-employee-day>div{display:grid;gap:5px}
}
@media(max-width:420px){
  #view-communications .communication-actions{grid-template-columns:1fr}
  #view-communications .communication-actions .sub{grid-column:auto}
  .planning-mobile-person{display:grid}
  .planning-mobile-person small{max-width:100%;text-align:left}
  .planning-mobile-assignment{grid-template-columns:auto minmax(0,1fr)}
  .planning-mobile-assignment small{grid-column:1/-1;max-width:100%}
}

/* v0.12.2-rc6 · sicurezza, notifiche e passkey per dispositivo */
.device-security-button{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.device-security-button>span:first-child{font-size:15px}
.device-security-dialog{width:min(980px,calc(100vw - 32px));max-height:min(92vh,900px);overflow:auto;padding:27px;position:relative}
.device-security-head h2{margin:5px 0 7px}.device-security-head>p:last-child{margin:0;color:var(--muted);font-size:.875rem;line-height:1.5}
.device-security-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin:20px 0}
.device-security-card{padding:16px;border:1px solid var(--line);border-radius:15px;background:#f8fafc}
.device-security-card[data-state="active"],.device-security-card[data-state="available"]{border-color:#b9dfc9;background:#f1faf5}
.device-security-card[data-state="ready"],.device-security-card[data-state="install_required"]{border-color:#c7ddec;background:#f4f9fd}
.device-security-card[data-state="blocked"],.device-security-card[data-state="error"],.device-security-card[data-state="unavailable"]{border-color:#ead09b;background:#fff9ed}
.device-security-card[data-state="unsupported"]{border-color:#d7dde3;background:#f5f6f7}
.device-security-card-head{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:10px;align-items:center}
.device-security-card-head small,.device-security-card-head strong{display:block}.device-security-card-head small{color:var(--muted);font-size:.875rem;text-transform:uppercase;letter-spacing:.7px}.device-security-card-head strong{margin-top:3px;color:var(--navy);font-size:.875rem}
.device-security-icon{width:38px;height:38px;display:grid;place-items:center;border:1px solid rgba(30,77,112,.1);border-radius:11px;background:#fff;font-size:18px}
.device-status-badge{padding:4px 7px;border-radius:999px;background:#e8eef3;color:#526b80;font-size:.875rem;font-weight:850;white-space:nowrap}
.device-security-card[data-state="active"] .device-status-badge,.device-security-card[data-state="available"] .device-status-badge{background:#dcefe4;color:#176944}
.device-security-card[data-state="blocked"] .device-status-badge,.device-security-card[data-state="error"] .device-status-badge,.device-security-card[data-state="unavailable"] .device-status-badge{background:#f7e9c6;color:#855b00}
.device-security-card>p{min-height:39px;margin:13px 0 0;color:#536b80;font-size:.875rem;line-height:1.5}
.device-security-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:13px}.device-security-actions button{padding:8px 11px;font-size:.875rem}
.device-registry-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}
.device-registry-grid>section{overflow:hidden;border:1px solid var(--line);border-radius:15px;background:#fff}
.device-registry-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 15px;border-bottom:1px solid var(--line);background:#f8fafc}
.device-registry-head small,.device-registry-head h3{margin:0}.device-registry-head small{color:var(--muted);font-size:.875rem;text-transform:uppercase}.device-registry-head h3{margin-top:3px;font-size:.875rem}.device-registry-head>span{color:var(--muted);font-size:.875rem;font-weight:800;white-space:nowrap}
.device-registry-list{max-height:245px;overflow:auto}.device-registry-list .list-empty{padding:22px 14px;font-size:.875rem}
.device-registry-row{display:grid;grid-template-columns:24px minmax(0,1fr) auto;gap:8px;align-items:center;padding:11px 13px;border-bottom:1px solid #edf1f4}.device-registry-row:last-child{border-bottom:0}.device-registry-row.inactive{opacity:.6}
.device-registry-row>div{min-width:0}.device-registry-row strong,.device-registry-row small{display:block;min-width:0}.device-registry-row strong{overflow:hidden;color:var(--navy);font-size:.875rem;text-overflow:ellipsis;white-space:nowrap}.device-registry-row small{margin-top:3px;color:var(--muted);font-size:.875rem;line-height:1.35}
.device-registry-mark{width:22px;height:22px;display:grid;place-items:center;border-radius:7px;background:var(--bluebg);color:var(--blue);font-size:.875rem;font-weight:900}
.device-registry-row .mini-btn{padding:5px 7px;font-size:.875rem}.device-registry-row .pill{padding:4px 6px;font-size:.875rem}
.device-security-note{display:grid;grid-template-columns:auto 1fr;gap:10px;margin-top:15px;padding:11px 13px;border-radius:11px;background:#eef5fa;color:#48657c;font-size:.875rem;line-height:1.45}
@media(max-width:820px){
  .topbar .top-actions>.device-security-button{display:grid!important;width:38px;height:38px;padding:0;place-items:center;border-radius:12px}
  .device-security-button .device-security-label{display:none}
  .device-security-button>span:first-child{font-size:16px}
  .device-security-dialog{width:calc(100vw - 20px);max-height:calc(100vh - 20px);padding:20px}
  .device-security-grid,.device-registry-grid{grid-template-columns:1fr}
}
@media(max-width:620px){
  .device-security-dialog{width:100vw;max-width:100vw;max-height:calc(100vh - env(safe-area-inset-top,0px));margin:env(safe-area-inset-top,0px) 0 0;border-radius:18px 18px 0 0;padding:20px 14px calc(20px + env(safe-area-inset-bottom,0px))}
  .device-security-card-head{grid-template-columns:36px minmax(0,1fr);align-items:start}.device-security-card-head .device-status-badge{grid-column:2;justify-self:start}
  .device-security-card>p{min-height:0}.device-security-actions{display:grid;grid-template-columns:1fr}.device-security-actions button{width:100%}
  .device-security-note{grid-template-columns:1fr;gap:4px}
}

/* v0.12.3-rc5 · riepilogo consuntivo e modale turno sotto la safe area */
.planning-table .hours-col,.weekly-hours{width:184px;min-width:184px}
.planning-table{min-width:1590px}
.weekly-hours{padding:9px 10px;text-align:left}
.weekly-attendance-summary{display:grid;gap:4px}
.weekly-attendance-summary>strong{font-size:.875rem;color:var(--navy)}
.weekly-attendance-summary>span{display:block;color:#546a7d;font-size:.875rem;line-height:1.3}
.weekly-attendance-summary>span b{color:var(--ink);font-weight:900}
.weekly-attendance-summary>span small{display:inline;color:#7a8c9c;font-size:.875rem}
.weekly-attendance-summary .weekly-attendance-balance{margin-top:2px;padding-top:4px;border-top:1px solid #dfe7ed}
.weekly-attendance-summary .weekly-attendance-balance.regular b{color:var(--green)}
.weekly-attendance-summary .weekly-attendance-balance.changed b{color:#9a5600}
.weekly-attendance-empty{font-style:italic}
.weekly-absence-summary{display:block;margin-top:7px;padding-top:6px;border-top:1px dashed #d7e0e7;line-height:1.35}

@media(max-width:620px){
  #formDialog{
    box-sizing:border-box;
    width:100vw;
    max-width:100vw;
    height:calc(100dvh - var(--safe-top));
    max-height:calc(100dvh - var(--safe-top));
    margin:var(--safe-top) 0 0;
    border-radius:18px 18px 0 0;
    overflow:hidden;
  }
  #dynamicForm{
    box-sizing:border-box;
    width:100%;
    min-width:0;
    height:100%;
    max-height:100%;
    padding:58px max(16px,env(safe-area-inset-right,0px)) calc(20px + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));
    overflow:auto;
    overscroll-behavior:contain;
  }
  #formDialog .dialog-x{
    position:fixed;
    top:calc(var(--safe-top) + 10px);
    right:max(10px,env(safe-area-inset-right,0px));
    z-index:3;
    width:38px;
    height:38px;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:#fff;
    box-shadow:0 3px 12px rgba(20,47,75,.18);
  }
  #formDialog .form-title{padding-right:42px}
  #formDialog .dialog-actions{display:grid;grid-template-columns:1fr}
  #formDialog .dialog-actions button{width:100%}
  .planning-mobile-employee>summary em{max-width:48%;text-align:right;white-space:normal}
}

/* v0.13.0-rc4 · sviluppo economico e dettaglio attivazioni WINDTRE */
.brand-production-view{--brand-accent:#5b36c7;--brand-soft:#f3efff}
.brand-production-view .section-head{align-items:flex-end}
.brand-period-field{min-width:190px;color:var(--muted);font-size:.875rem;font-weight:800;text-transform:uppercase;letter-spacing:.6px}
.brand-period-field input{display:block;width:100%;margin-top:6px;color:var(--navy);font-size:.875rem;text-transform:none}
.brand-switch{display:flex;gap:7px;margin:0 0 14px;padding:5px;border:1px solid var(--line);border-radius:14px;background:#f5f8fa}
.brand-switch button{flex:1;min-height:44px;border:0;border-radius:10px;background:transparent;color:#60778b;font-weight:850}
.brand-switch button.active{background:#fff;color:var(--navy);box-shadow:0 3px 12px rgba(28,55,78,.11)}
.brand-switch button span{font-size:.875rem;font-weight:700}
.brand-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:12px}
.brand-summary-card{display:grid;gap:4px;min-height:92px;padding:15px;border:1px solid var(--line);border-radius:15px;background:#fff;box-shadow:var(--shadow)}
.brand-summary-card.warning{border-color:#ebcf96;background:#fffaf0}
.brand-summary-card.success{border-color:#b9dfc7;background:#f4fbf6}
.brand-summary-card.featured{border-color:#69acd7;background:linear-gradient(145deg,#eef8ff,#fff);box-shadow:0 7px 20px rgba(24,112,171,.14)}.brand-summary-card.featured strong{color:#0868aa}
.brand-summary-card span{color:var(--muted);font-size:.875rem;font-weight:850;text-transform:uppercase;letter-spacing:.55px}
.brand-summary-card strong{color:var(--navy);font-size:18px;line-height:1.15}
.brand-summary-card small{align-self:end;color:#718598;font-size:.875rem;line-height:1.35}
.gmava-review-reasons{display:block;margin:-5px 0 11px;padding:8px 10px;border-radius:9px;background:#fff4d9;color:#735300;font-size:.875rem;line-height:1.4}.gmava-review-reasons strong{color:inherit}
.gmava-store-employees{display:grid;gap:7px;padding:9px;border:1px solid #dce8ef;border-radius:10px;background:rgba(245,249,252,.9)}.gmava-store-employees-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.gmava-store-employees-head span{color:#61798b;font-size:.875rem;font-weight:900;letter-spacing:.35px;text-transform:uppercase}.gmava-store-employees-head strong{display:grid;place-items:center;min-width:20px;height:20px;border-radius:999px;background:#dceef8;color:#216f9d;font-size:.875rem}.gmava-store-employees-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.gmava-store-employee{display:flex;align-items:center;min-width:0;gap:6px;padding:6px;border:1px solid #d7e5ec;border-radius:8px;background:#fff}.gmava-store-employee>i{display:grid;flex:0 0 24px;place-items:center;width:24px;height:24px;border-radius:8px;background:#dceef8;color:#216f9d;font-size:.875rem;font-style:normal;font-weight:900}.gmava-store-employee>span{min-width:0}.gmava-store-employee strong,.gmava-store-employee small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gmava-store-employee strong{color:#24465e;font-size:.875rem}.gmava-store-employee small{margin-top:2px;color:#698092;font-size:.875rem}.gmava-store-employee.review{border-color:#ead394;background:#fff9e9}.gmava-store-employee.review>i{background:#ffedbd;color:#805e12}.gmava-store-employee.review strong{color:#745510}.nav-label-system{margin-top:11px;border-top:1px solid rgba(255,255,255,.12);padding-top:18px}
.contest-employee-configuration-dialog{width:min(980px,calc(100vw - 64px));max-width:980px;max-height:calc(100vh - 64px);padding:0;overflow:hidden}.contest-employee-configuration-dialog::backdrop{background:rgba(9,24,38,.6)}#contestEmployeeConfigurationForm{display:flex;flex-direction:column;width:100%;min-width:0;max-height:calc(100vh - 64px);padding:30px 34px 26px}#contestEmployeeConfigurationForm>.dialog-x{top:18px;right:20px}#contestEmployeeConfigurationForm>.eyebrow{margin:0 48px 8px 0}#contestEmployeeConfigurationForm>h2{margin:0 48px 10px 0}#contestEmployeeConfigurationForm>.form-subtitle{max-width:840px;margin:0 48px 24px 0;line-height:1.55}.contest-employee-config-head,.contest-employee-config-row{display:grid;grid-template-columns:minmax(300px,1fr) minmax(220px,240px) minmax(150px,170px);gap:26px;align-items:center}.contest-employee-config-head{padding:0 18px 10px;color:var(--muted);font-size:.875rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.contest-employee-config-body{display:grid;gap:10px;max-height:min(54vh,590px);margin:0;padding:2px 0 14px;overflow:auto;scrollbar-gutter:stable}.contest-employee-config-row{min-height:78px;padding:15px 18px;border:1px solid var(--line);border-radius:14px;background:#fff}.contest-employee-config-row>div,.contest-employee-config-row>span{display:grid;gap:4px}.contest-employee-config-row strong{color:var(--ink)}.contest-employee-config-row small{color:var(--muted);line-height:1.4}.contest-employee-config-row label{display:grid;grid-template-columns:minmax(0,1fr) 82px;gap:12px;align-items:center;margin:0;font-size:.875rem;line-height:1.25}.contest-employee-config-row input{width:82px;margin:0}.contest-employee-config-row>span b{color:var(--primary);font-size:15px}#contestEmployeeConfigurationForm>.info-banner{margin:14px 0 0;padding:14px 16px;line-height:1.45}#contestEmployeeConfigurationForm>.dialog-actions{margin:20px 0 0;padding-top:18px;border-top:1px solid var(--line)}
@media(max-width:720px){.contest-employee-configuration-dialog{width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}#contestEmployeeConfigurationForm{max-height:calc(100dvh - 24px);padding:22px 18px 18px}#contestEmployeeConfigurationForm>.dialog-x{top:13px;right:13px}#contestEmployeeConfigurationForm>.form-subtitle{margin:0 34px 18px 0}.contest-employee-config-head{display:none}.contest-employee-config-body{max-height:54vh;margin:0;padding:2px 0 10px}.contest-employee-config-row{grid-template-columns:1fr;gap:12px;min-height:0;padding:14px}.contest-employee-config-row label{grid-template-columns:minmax(0,1fr) 88px}.contest-employee-config-row input{width:88px}#contestEmployeeConfigurationForm>.info-banner{margin-top:10px;padding:12px}#contestEmployeeConfigurationForm>.dialog-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px;padding-top:14px}#contestEmployeeConfigurationForm>.dialog-actions button{width:100%}}
.manager-fastweb-kpi{width:100%;font-family:inherit;text-align:left;cursor:pointer;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.manager-fastweb-kpi:hover{transform:translateY(-1px);border-color:#83b7dc;box-shadow:0 7px 18px rgba(22,72,108,.12)}.manager-fastweb-kpi.active{border-color:#267ab5;outline:3px solid rgba(38,122,181,.14)}.manager-fastweb-kpi:focus-visible{outline:3px solid rgba(38,122,181,.25)}
.manager-finance-panel{margin-top:15px;overflow:hidden}.manager-finance-head{align-items:flex-start}.manager-finance-head p{max-width:860px;margin:5px 0 0;color:var(--muted);font-size:.875rem;line-height:1.45}.manager-finance-tabs{display:flex;gap:5px;overflow:auto;padding:8px 12px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#eef4f8}.manager-finance-tabs button{padding:8px 11px;border:1px solid transparent;border-radius:9px;background:transparent;color:#4e687c;font-size:.875rem;font-weight:900;white-space:nowrap}.manager-finance-tabs button.active{border-color:#b7d2e5;background:#fff;color:var(--navy);box-shadow:0 2px 7px rgba(20,47,75,.1)}.manager-finance-kpis{padding:12px}.manager-finance-kpis .brand-summary-card{min-height:76px;box-shadow:none}.manager-finance-filters{display:grid;grid-template-columns:minmax(280px,1fr) 190px 190px auto;margin:0 12px 10px}.manager-finance-table-wrap{max-height:540px;border-radius:0}.manager-finance-table{min-width:1260px}.manager-finance-table td{vertical-align:top}.manager-finance-table .sub{max-width:280px}.manager-finance-imports{border-top:1px solid var(--line)}.manager-finance-imports>summary{padding:11px 14px;color:#365b75;cursor:pointer;font-size:.875rem;font-weight:900}.manager-finance-imports .manager-history-list{padding:0 14px 14px}.manager-row-manual{background:#f5fbf7}.native-file-action{position:relative;display:inline-flex;align-items:center;justify-content:center;min-height:40px;overflow:hidden;cursor:pointer;user-select:none}.native-file-action input[type=file]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.native-file-action.is-uploading{opacity:.64;pointer-events:none}
@media(max-width:820px){.manager-finance-head{align-items:stretch;flex-direction:column}.manager-finance-head .section-actions{display:grid;width:100%}.manager-finance-filters{grid-template-columns:1fr}.manager-finance-kpis{grid-template-columns:1fr 1fr}}
.workflow-strip{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px;margin:0 0 13px}
.workflow-step{display:grid;grid-template-columns:24px minmax(0,1fr);gap:7px;align-items:center;min-height:61px;padding:9px;border:1px solid var(--line);border-radius:12px;background:#f8fafb;color:#718598;text-align:left}
.workflow-step:not(:disabled){cursor:pointer}.workflow-step:disabled{opacity:.7}
.workflow-step i{width:22px;height:22px;display:grid;place-items:center;border-radius:50%;background:#e7edf2;color:#7a8d9e;font-size:.875rem;font-style:normal;font-weight:900}
.workflow-step strong,.workflow-step small{display:block}.workflow-step strong{color:#536b7f;font-size:.875rem}.workflow-step small{margin-top:3px;font-size:.875rem;line-height:1.25}
.workflow-step.done{border-color:#b8ddc7;background:#f4faf6}.workflow-step.done i{background:#d7efdf;color:#197249}.workflow-step.done strong{color:#246846}
.workflow-step.current{outline:2px solid rgba(35,105,159,.15);border-color:#94bedb;background:#f2f8fc}.workflow-step.current i{background:#d9eaf6;color:#17669e}
.brand-production-main{align-items:start;margin-bottom:13px}
.brand-source-upload{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-bottom:11px}
.brand-source-upload select{min-width:0}
.source-checklist,.brand-anomaly-list{display:grid;gap:7px;max-height:405px;overflow:auto}
.source-check,.brand-anomaly,.history-row{display:grid;grid-template-columns:25px minmax(0,1fr) auto;gap:8px;align-items:center;padding:9px 10px;border:1px solid #e5ebf0;border-radius:10px;background:#fafcfd}
.source-check>i,.anomaly-icon{width:23px;height:23px;display:grid;place-items:center;border-radius:7px;background:#edf1f4;color:#8294a3;font-size:.875rem;font-style:normal;font-weight:900}
.source-check.ready{border-color:#c5e1d0;background:#f6fbf8}.source-check.ready>i{background:#dcefe3;color:#1d714a}
.source-check strong,.source-check small,.brand-anomaly strong,.brand-anomaly small,.brand-anomaly em,.history-row strong,.history-row small{display:block;min-width:0}
.source-check strong,.brand-anomaly strong,.history-row strong{color:var(--navy);font-size:.875rem}
.source-check small,.brand-anomaly small,.history-row small{margin-top:3px;color:var(--muted);font-size:.875rem;line-height:1.35}
.brand-anomaly.warning{border-color:#ead4a8;background:#fffaf0}.brand-anomaly.critical{border-color:#edb8b2;background:#fff5f4}.brand-anomaly.resolved{opacity:.68}
.brand-anomaly.warning .anomaly-icon{background:#f8e8c4;color:#8d6200}.brand-anomaly.critical .anomaly-icon{background:#f8d8d5;color:#a8352c}.brand-anomaly.resolved .anomaly-icon{background:#dcefe3;color:#1d714a}
.brand-anomaly em{margin-top:4px;color:#37664f;font-size:.875rem;font-style:normal}
.compact{padding:6px 8px!important;font-size:.875rem!important;white-space:nowrap}
.source-note{color:var(--muted);font-size:.875rem;font-weight:750;text-align:right}
.control-kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.control-kpi{display:grid;gap:4px;min-height:75px;padding:11px;border:1px solid #e4eaf0;border-radius:11px;background:#f8fafb}
.control-kpi span{color:var(--muted);font-size:.875rem;font-weight:850;text-transform:uppercase}.control-kpi strong{color:var(--navy);font-size:16px}.control-kpi small{align-self:end;color:#718598;font-size:.875rem}
.control-kpi.success{border-color:#bee0cb;background:#f4faf6}.control-kpi.warning{border-color:#ead4a8;background:#fffaf0}.control-kpi.danger{border-color:#edb8b2;background:#fff5f4}
.warning-row{background:#fffaf0}.danger-text{color:#a43b32!important;font-weight:850}

/* r63 · allineamento atomico Giacenze Totali + Giacenze IMEI */
.inventory-alignment-panel{overflow:hidden;margin:0 0 16px;border:1px solid #b8d4e7;border-radius:18px;background:linear-gradient(145deg,#f7fbfe 0%,#fff 68%);box-shadow:0 10px 28px rgba(20,61,91,.08)}
.inventory-alignment-head{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;padding:22px 24px 18px;border-bottom:1px solid #dce9f1}.inventory-alignment-head h3{margin:7px 0 6px;color:var(--navy);font-size:20px}.inventory-alignment-head p{max-width:830px;margin:0;color:var(--muted);font-size:.875rem;line-height:1.5}.inventory-alignment-badge{display:inline-flex;padding:5px 9px;border-radius:999px;background:#dff1ff;color:#176190;font-size:.875rem;font-weight:900;text-transform:uppercase;letter-spacing:.7px}.inventory-alignment-atomic{white-space:nowrap;padding:8px 11px;border:1px solid #b9dfca;border-radius:999px;background:#edfaf2;color:#287149;font-size:.875rem}
.inventory-alignment-steps{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:20px 24px}.inventory-alignment-step{position:relative;display:grid;grid-template-columns:42px 1fr;gap:13px;align-items:center;min-height:112px;padding:16px;border:1px dashed #abc7da;border-radius:14px;background:#fff;cursor:pointer;transition:.16s}.inventory-alignment-step:hover{border-color:#4d91bf;transform:translateY(-1px)}.inventory-alignment-step.ready{border-style:solid;border-color:#65a780;background:#f5fcf8}.inventory-alignment-step input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.inventory-step-number{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#e5f1f9;color:#17577e;font-size:16px;font-weight:900}.inventory-alignment-step.ready .inventory-step-number{background:#dcefe4;color:#287149}.inventory-alignment-step strong,.inventory-alignment-step small,.inventory-alignment-step b{display:block}.inventory-alignment-step strong{color:var(--navy);font-size:14px}.inventory-alignment-step small{margin-top:4px;color:var(--muted);font-size:.875rem;line-height:1.4}.inventory-alignment-step b{overflow:hidden;margin-top:9px;color:#24668f;font-size:.875rem;text-overflow:ellipsis;white-space:nowrap}.inventory-alignment-step.ready b{color:#287149}
.inventory-alignment-actions{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:16px 24px;border-top:1px solid #e0eaf0;background:#f8fbfd}.inventory-alignment-actions strong,.inventory-alignment-actions small{display:block}.inventory-alignment-actions strong{color:var(--navy);font-size:.875rem}.inventory-alignment-actions small{margin-top:3px;color:var(--muted);font-size:.875rem}.inventory-alignment-actions button{min-width:235px}.inventory-alignment-result{margin:0 24px 20px;padding:14px 16px;border:1px solid #b9dfca;border-radius:12px;background:#edfaf2;color:#286d48;font-size:.875rem;line-height:1.55}.inventory-alignment-result.warning{border-color:#e4c57c;background:#fff9eb;color:#805b11}.inventory-alignment-result.error{border-color:#e1aaaa;background:#fff3f3;color:#933c3c}.inventory-alignment-result strong{display:block;margin-bottom:3px;font-size:.875rem}.section-subhead{display:flex;justify-content:space-between;align-items:end;margin:25px 0 10px}.section-subhead h3{margin:0;color:var(--navy);font-size:16px}.section-subhead p{margin:4px 0 0;color:var(--muted);font-size:.875rem}
@media(max-width:820px){.inventory-alignment-head{display:grid;padding:18px}.inventory-alignment-atomic{justify-self:start}.inventory-alignment-steps{grid-template-columns:1fr;padding:16px 18px}.inventory-alignment-actions{display:grid;padding:15px 18px}.inventory-alignment-actions button{width:100%;min-width:0}.inventory-alignment-result{margin:0 18px 18px}}

/* r68 · guide permanenti, copertura importazioni e permessi verificabili */
.import-howto{margin:0 0 16px;padding:18px 20px;border:1px solid #c9ddea;border-radius:16px;background:linear-gradient(135deg,#f6fbff,#fff)}
.import-howto-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:13px}.import-howto-head h3{margin:3px 0 0;color:var(--navy);font-size:17px}.import-howto-head>span{padding:6px 9px;border-radius:999px;background:#e8f3fb;color:#28648c;font-size:.875rem;font-weight:850}
.import-howto-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:0;padding:0;list-style:none}.import-howto-steps li{display:grid;grid-template-columns:31px 1fr;gap:10px;align-items:flex-start;padding:11px 12px;border:1px solid #e0e9ef;border-radius:11px;background:#fff}.import-howto-steps li>b{width:28px;height:28px;display:grid;place-items:center;border-radius:9px;background:#e6f1f8;color:#1d638e}.import-howto-steps strong,.import-howto-steps span{display:block}.import-howto-steps strong{color:var(--navy);font-size:.875rem}.import-howto-steps span{margin-top:4px;color:var(--muted);font-size:.875rem;line-height:1.45}
.import-freshness-panel{margin:0 0 16px;border:1px solid var(--line);border-radius:16px;background:#fff;overflow:hidden}.import-freshness-panel .panel-head{padding:16px 18px 8px}.import-freshness-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:8px 18px 17px}.import-freshness-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:12px 13px;border:1px solid #e1e8ed;border-radius:11px;background:#f9fbfc}.import-freshness-item strong,.import-freshness-item span,.import-freshness-item small{display:block}.import-freshness-item strong{color:var(--navy);font-size:.875rem}.import-freshness-item span{margin-top:3px;color:#23678e;font-size:.875rem;font-weight:800}.import-freshness-item small{margin-top:4px;color:var(--muted);font-size:.875rem}.import-freshness-kind{align-self:start;padding:4px 7px;border-radius:999px;background:#e9f3fa;color:#2b678b;font-size:.875rem;font-weight:900;text-transform:uppercase}.import-freshness-empty{grid-column:1/-1;padding:13px;border:1px dashed #cbd7df;border-radius:11px;color:var(--muted);font-size:.875rem;text-align:center}
.fiscal-date-filter{display:flex!important;align-items:center;gap:6px;padding:0 8px;border:1px solid var(--line);border-radius:8px;background:#fff}.fiscal-date-filter span{color:var(--muted);font-size:.875rem;font-weight:850;text-transform:uppercase}.fiscal-date-filter input{min-width:128px;padding-left:0;border:0;background:transparent}.fiscal-date-filter input:focus{box-shadow:none}
.fiscal-import-coverage{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 0 13px}.fiscal-import-coverage>div{padding:10px 11px;border:1px solid #dbe6ed;border-radius:10px;background:#f7fafc}.fiscal-import-coverage strong,.fiscal-import-coverage span{display:block}.fiscal-import-coverage strong{color:var(--navy);font-size:.875rem}.fiscal-import-coverage span{margin-top:3px;color:var(--muted);font-size:.875rem;line-height:1.4}.fiscal-import-coverage .warning{border-color:#e6c77f;background:#fff9ea}.fiscal-import-coverage .success{border-color:#bcdcc9;background:#f1faf5}
.fiscal-document-number{white-space:nowrap;font-variant-numeric:tabular-nums}.fiscal-document-type{display:inline-flex;padding:4px 7px;border-radius:7px;background:#eef3f7;color:#415e73;font-size:.875rem;font-weight:900;white-space:nowrap}.fiscal-status.received{background:#e9f4fb;color:#23658d}.fiscal-status.issued{background:#e9f7ef;color:#28724b}
.module-permission-fieldset{margin:0;padding:13px;border:1px solid var(--line);border-radius:12px}.module-permission-fieldset legend{padding:0 6px;color:var(--navy);font-size:.875rem;font-weight:800}.module-permission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.module-permission-option{display:flex!important;align-items:flex-start;gap:8px;padding:9px 10px;border:1px solid #e2e8ed;border-radius:9px;background:#fafcfd;color:var(--navy);font-size:.875rem;font-weight:750}.module-permission-option input{width:auto;margin-top:1px}.module-permission-option:has(input:checked){border-color:#9fc5dc;background:#f0f8fd}.module-permission-fieldset .field-help{display:block;margin-top:9px}.module-permission-fieldset.super-admin{opacity:.72}.module-permission-fieldset.super-admin .field-help{color:#925f00}
@media(max-width:820px){.import-howto-head{display:grid}.import-howto-head>span{justify-self:start}.import-howto-steps,.import-freshness-grid,.module-permission-grid{grid-template-columns:1fr}.fiscal-import-coverage{grid-template-columns:1fr}.fiscal-date-filter input{min-width:0;width:100%}}
.wind-economic-panel{margin-top:13px}
.wind-economic-store-tabs{display:flex;gap:7px;margin-bottom:12px;overflow:auto;padding:2px 1px 5px}
.wind-economic-store-tabs button{display:grid;gap:2px;min-width:155px;padding:10px 12px;border:1px solid var(--line);border-radius:11px;background:#f8fafb;color:#60778b;text-align:left}
.wind-economic-store-tabs button span{font-size:.875rem;font-weight:850;text-transform:uppercase;letter-spacing:.45px}.wind-economic-store-tabs button strong{color:var(--navy);font-size:14px}
.wind-economic-store-tabs button.active{border-color:#8f74d7;background:var(--brand-soft);box-shadow:0 0 0 2px rgba(91,54,199,.09)}
.wind-economic-store-tabs button.warning{border-color:#ead4a8}.wind-economic-store-tabs button.warning.active{background:#fff7e8}
.wind-economic-summary{margin-bottom:10px}.wind-economic-summary .brand-summary-card{min-height:82px;box-shadow:none}
.wind-economic-notice{margin:0 0 11px;padding:10px 12px;border:1px solid #d8e5ef;border-radius:10px;background:#f4f8fb;color:#60778b;font-size:.875rem;line-height:1.45}
.wind-economic-notice strong{color:var(--navy)}
.wind-economic-table table{min-width:1420px}.wind-economic-table td{vertical-align:top}
.economic-section{display:block;margin-bottom:4px;color:var(--brand-accent);font-size:.875rem;font-weight:850;text-transform:uppercase;letter-spacing:.45px}
.economic-status{display:inline-flex;margin-top:5px;padding:3px 6px;border-radius:999px;background:#edf1f4;color:#65798b;font-size:.875rem;font-weight:850;text-transform:uppercase;white-space:nowrap}
.economic-status.calculated{background:var(--greenbg);color:var(--green)}.economic-status.partial{background:var(--amberbg);color:var(--amber)}.economic-status.pending{background:#eee9fb;color:#5b36c7}.economic-status.not_reached{background:#edf1f4;color:#6b7f90}
.economic-row.partial{background:#fffdf7}.economic-row.pending{background:#fbf9ff}.economic-row.not_reached{color:#728596}
.economic-pista-link{display:grid;gap:1px;width:100%;min-width:115px;padding:4px 7px;border:0;border-radius:8px;background:transparent;color:inherit;text-align:left}
.economic-pista-link:hover,.economic-pista-link:focus-visible{outline:0;background:#e8e1fb;box-shadow:0 0 0 2px rgba(91,54,199,.16)}
.economic-pista-link strong{color:var(--navy);font-size:.875rem}.economic-pista-link small{margin-top:3px;color:var(--brand-accent);font-size:.875rem;font-weight:850}
.economic-section-total{cursor:pointer;background:#edf3f8}.economic-section-total:hover{background:#e7eff6}.economic-section-total.is-expanded{background:#e9f1f7}
.economic-section-total td{padding-top:9px;padding-bottom:9px;border-top:2px solid #d7e2eb;border-bottom-color:#d7e2eb}.economic-section-total strong{display:block}
.economic-section-toggle{display:grid;grid-template-columns:28px minmax(0,1fr);gap:8px;align-items:center;width:100%;padding:0;border:0;background:transparent;color:inherit;text-align:left}
.economic-section-toggle i{display:grid;width:25px;height:25px;place-items:center;border:1px solid #c9d7e2;border-radius:8px;background:#fff;color:var(--brand-accent);font-size:17px;font-style:normal;font-weight:900;transition:transform .16s ease}
.economic-section-toggle>span>span{display:block;color:var(--brand-accent);font-size:.875rem;font-weight:900;text-transform:uppercase;letter-spacing:.55px}.economic-section-toggle strong{margin-top:3px;color:var(--navy);font-size:.875rem}.economic-section-toggle small{display:block;margin-top:3px;color:#6b8092;font-size:.875rem;font-weight:800}
.economic-section-toggle:focus-visible{outline:2px solid rgba(91,54,199,.32);outline-offset:4px;border-radius:6px}.economic-section-total.is-expanded .economic-section-toggle i{background:#e3daf9}
.economic-section-visibility{display:block;margin-top:5px;color:var(--brand-accent);font-size:.875rem;font-weight:900}.economic-row-collapsed{display:none}
.economic-formula{min-width:320px;max-width:470px}.economic-formula strong{font-size:.875rem;line-height:1.45}.economic-formula .sub{line-height:1.4}
.economic-pending-value{color:#5b36c7;font-size:.875rem;white-space:nowrap}
.wind-economic-detail-dialog{width:min(1540px,97vw);max-width:1540px}
.wind-economic-detail-head h2{margin:3px 36px 6px 0}.wind-economic-detail-head>p:last-child{margin:0 0 16px;color:var(--muted);font-size:.875rem;line-height:1.5}
.wind-economic-detail-kpis{margin-bottom:12px}.wind-economic-detail-kpis .brand-summary-card{min-height:78px;box-shadow:none}
.wind-economic-detail-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.wind-economic-detail-toolbar input{width:min(680px,100%)}.wind-economic-detail-toolbar span{color:var(--muted);font-size:.875rem;font-weight:800;white-space:nowrap}
.wind-economic-detail-table{max-height:55vh;overflow:auto}.wind-economic-detail-table table{min-width:1450px}
.wind-economic-detail-table thead{position:sticky;top:0;z-index:2}.wind-economic-detail-table th{background:#edf3f8}
.wind-economic-detail-table td{vertical-align:top}.wind-economic-detail-table th:nth-child(4),.wind-economic-detail-table td:nth-child(4){min-width:210px}.wind-economic-detail-table td:nth-child(5){min-width:280px}.wind-economic-detail-table td:nth-child(8){min-width:150px}
.wind-detail-reference{white-space:nowrap}.wind-detail-practice{display:block;color:var(--navy);font-size:.875rem}
.wind-detail-sale{display:flex;align-items:center;gap:5px;margin-top:5px;color:var(--navy)}
.wind-detail-sale span{color:#526b80;font-size:.875rem;font-weight:900;text-transform:uppercase;letter-spacing:.4px}.wind-detail-sale strong{font-size:.875rem}
.wind-detail-sale small,.wind-detail-phone{color:#647b8f;font-size:.875rem;font-weight:700}.wind-detail-sale small:before{content:"·";margin-right:5px;color:#9aaab8}
.wind-detail-missing{color:var(--muted)}
.empty-inline{padding:17px;color:var(--muted);font-size:.875rem;text-align:center}
.brand-history-panel{margin-top:13px}
.brand-history-panel>summary{cursor:pointer;color:var(--navy);font-size:.875rem;font-weight:850}
.brand-history-panel[open]>summary{margin-bottom:15px}
.brand-history-panel .history-row{grid-template-columns:12px minmax(0,1fr);margin-bottom:6px}
.brand-history-panel .status-dot{width:8px;height:8px}

/* v0.13.0-rc5 · fonti comprimibili, controllo pratiche e regole manuali */
.brand-sources-panel>summary,.brand-practice-control>summary{cursor:pointer;list-style:none;margin:0}
.brand-sources-panel>summary::-webkit-details-marker,.brand-practice-control>summary::-webkit-details-marker{display:none}
.brand-sources-panel:not([open])>summary,.brand-practice-control:not([open])>summary{margin-bottom:0}
.brand-source-panel-body,.brand-practice-body{padding-top:13px;border-top:1px solid var(--line)}
.brand-source-summary{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:.875rem;font-weight:800;white-space:nowrap}
.brand-source-summary::after{content:'▾';font-size:.875rem}.brand-sources-panel[open] .brand-source-summary::after,.brand-practice-control[open] .brand-source-summary::after{content:'▴'}

.multibrand-privacy{margin-bottom:14px}
.multibrand-category-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:9px;margin:12px 0 14px}
.multibrand-category{display:grid;gap:4px;padding:12px 13px;border:1px solid var(--line);border-radius:12px;background:linear-gradient(145deg,#fff,#f6f8fb)}
.multibrand-category span{font-size:.875rem;font-weight:850;letter-spacing:.35px;color:var(--muted)}
.multibrand-category strong{font-size:20px;color:var(--navy)}
.multibrand-category small{font-size:.875rem;color:var(--muted)}
.multibrand-results-panel{margin-bottom:14px}
.multibrand-results-panel table{min-width:1260px}
.multibrand-results-panel td small,.multibrand-detail-panel td small,.tim-economic-table td small{display:block;margin-top:3px;color:var(--muted)}
.multibrand-detail-panel>summary{cursor:pointer;list-style:none;margin:0}
.multibrand-detail-panel>summary::-webkit-details-marker{display:none}
.multibrand-detail-panel:not([open])>summary{margin-bottom:0}
.multibrand-detail-panel[open] .table-card{padding-top:12px;border-top:1px solid var(--line)}
.multibrand-fixed-categories{display:grid;gap:6px;padding:12px;border:1px solid var(--line);border-radius:10px;background:#f5f8fb;color:var(--muted);font-size:.875rem}
.multibrand-fixed-categories strong{color:var(--navy)}
/* rc67 · statistiche alimentate e associazioni MIRA risolvibili */
.app-loading{position:fixed;top:50%;left:50%;z-index:2147483647;width:min(560px,calc(100vw - 32px));display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:4px 12px;align-items:center;padding:12px 15px 10px;border:1px solid rgba(255,255,255,.2);border-radius:15px;background:rgba(15,38,61,.96);color:#fff;box-shadow:0 16px 40px rgba(7,25,40,.28);transform:translate(-50%,-50%);backdrop-filter:blur(10px)}
.app-loading-spinner{grid-row:1;width:28px;height:28px;border:3px solid rgba(255,255,255,.28);border-top-color:#fff;border-radius:50%;animation:app-loading-spin .75s linear infinite}.app-loading-copy{min-width:0}.app-loading-copy strong,.app-loading-copy span{display:block}.app-loading-copy strong{font-size:.875rem}.app-loading-copy span{margin-top:2px;color:#c5d5e3;font-size:.875rem}.app-loading-percent{grid-column:3;min-width:49px;padding:5px 7px;border-radius:999px;background:rgba(98,181,245,.2);color:#fff;font-size:.875rem;text-align:center;font-variant-numeric:tabular-nums}.app-loading-track{grid-column:1/-1;height:4px;margin-top:5px;overflow:hidden;border-radius:99px;background:rgba(255,255,255,.16)}.app-loading-track span{display:block;width:38%;height:100%;border-radius:inherit;background:linear-gradient(90deg,#62b5f5,#fff,#62b5f5);animation:app-loading-progress 1.15s ease-in-out infinite}.app-loading.determinate .app-loading-track span{width:var(--app-loading-progress,0%);transform:none;animation:none;background:linear-gradient(90deg,#3fa8ef,#91d3ff)}.app-loading.determinate .app-loading-spinner{border-color:rgba(255,255,255,.28);border-top-color:#91d3ff}@keyframes app-loading-spin{to{transform:rotate(360deg)}}@keyframes app-loading-progress{0%{transform:translateX(-110%)}100%{transform:translateX(290%)}}
.statistics-tabs{display:inline-flex;gap:4px;margin:0 0 14px;padding:5px;border:1px solid #d5e1ea;border-radius:13px;background:#eaf0f5}.statistics-tabs button{border:0;border-radius:9px;padding:10px 15px;background:transparent;color:#587087;font-size:.875rem;font-weight:850}.statistics-tabs button.active{background:#fff;color:var(--navy);box-shadow:0 4px 12px rgba(20,47,75,.1)}
.statistics-tab-pane{animation:statistics-pane-in .18s ease-out}@keyframes statistics-pane-in{from{opacity:.35;transform:translateY(4px)}to{opacity:1;transform:none}}
.employee-statistics-filters{display:grid;grid-template-columns:minmax(160px,.8fr) minmax(160px,.8fr) minmax(150px,.7fr) minmax(260px,1.4fr) auto;align-items:end}.employee-statistics-filters label{min-width:0}.employee-statistics-filters input,.employee-statistics-filters select{width:100%;min-width:0}.statistics-search-field{min-width:240px!important}
.statistics-insight-grid{display:grid;grid-template-columns:minmax(420px,1.45fr) minmax(390px,1fr);gap:14px;margin:0 0 14px}.statistics-trend-panel,.statistics-category-panel{min-height:255px}.statistics-category-panel .multibrand-category-grid{grid-template-columns:repeat(4,minmax(0,1fr));padding:0 16px}.multibrand-category.selected{border-color:#5b9bd5;background:#edf6fd;box-shadow:inset 0 0 0 1px #5b9bd5}
.employee-production-trend{height:172px;display:flex;align-items:flex-end;gap:7px;padding:16px 18px 13px;overflow-x:auto}.production-trend-item{height:100%;min-width:31px;display:grid;grid-template-rows:18px minmax(70px,1fr) 18px;gap:4px;align-items:end;text-align:center}.production-trend-item strong{font-size:.875rem;color:var(--navy)}.production-trend-column{height:100%;display:flex;align-items:flex-end;justify-content:center;border-bottom:1px solid #dce5ec}.production-trend-column span{display:block;width:18px;min-height:4px;border-radius:6px 6px 2px 2px;background:linear-gradient(180deg,#4c91cb,#286aa5);box-shadow:0 4px 8px rgba(47,117,181,.15)}.production-trend-item small{font-size:.875rem;color:var(--muted);white-space:nowrap}.statistics-empty{align-self:center;width:100%;padding:42px 20px;color:var(--muted);font-size:.875rem;text-align:center}
.contest-rank{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:#eaf3fb;color:#24699e;font-weight:900}.multibrand-results-panel .contest-rank-column{width:55px}.employee-statistics-view .multibrand-detail-panel{margin-bottom:14px}.employee-statistics-view .multibrand-detail-panel table{min-width:1260px}
.statistics-association-panel{margin:0 0 14px;border-color:#efc675;background:#fffdf7}.statistics-association-panel>summary{cursor:pointer;list-style:none}.statistics-association-panel>summary::-webkit-details-marker{display:none}.statistics-association-panel>summary:after{content:'Apri';margin-left:auto;padding:6px 9px;border-radius:8px;background:#fff1cf;color:#7a5200;font-size:.875rem;font-weight:850}.statistics-association-panel[open]>summary:after{content:'Chiudi'}.statistics-association-panel .statistics-association-help{margin:0 16px 12px;background:#fff7e5;border-color:#f2d391;color:#73500b}.statistics-association-table{min-width:1050px}.statistics-association-table td:nth-child(1){min-width:210px}.statistics-association-table td:nth-child(2){min-width:260px}.statistics-association-table td:nth-child(4){min-width:290px}.statistics-association-table select{width:100%;min-width:250px}.statistics-association-table small{display:block;margin-top:4px;color:var(--muted);font-size:.875rem}.statistics-association-table .statistics-suggestion{color:#2875ad;font-weight:750}.statistics-association-table button{white-space:nowrap}
/* rc70 · cruscotto operativo completo delle statistiche dipendenti */
.employee-statistics-filters{grid-template-columns:repeat(6,minmax(110px,1fr)) minmax(250px,1.6fr) auto;gap:9px;padding:13px;border:1px solid #d7e3ec;border-radius:14px;background:#fff;box-shadow:0 5px 16px rgba(20,47,75,.04)}
.employee-statistics-filters label{display:grid;gap:5px;color:#587087;font-size:.875rem;font-weight:850;text-transform:uppercase;letter-spacing:.35px}.employee-statistics-filters input,.employee-statistics-filters select{height:42px;color:#17364f;font-size:.875rem;font-weight:750}.employee-statistics-filters>button{height:42px;white-space:nowrap}.statistics-search-field{min-width:0!important;grid-column:span 2}
.statistics-active-filters{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:-2px 0 12px;padding:10px 12px;border:1px solid #cfe0ec;border-radius:11px;background:#f5f9fc}.statistics-active-filters>strong{margin-right:3px;color:#31536e;font-size:.875rem;text-transform:uppercase;letter-spacing:.45px}.statistics-active-filters button{display:inline-flex;align-items:center;gap:7px;padding:6px 9px;border:1px solid #b9d5e8;border-radius:999px;background:#fff;color:#245c84;font-size:.875rem;font-weight:800}.statistics-active-filters button:hover{border-color:#6ea7d1;background:#edf7fd}.statistics-active-filters button span{font-size:15px;line-height:.7}
.statistics-panel-copy{max-width:620px;margin:5px 0 0;color:#6a7f91;font-size:.875rem;line-height:1.4}.statistics-visual-grid{grid-template-columns:minmax(560px,1.65fr) minmax(410px,.9fr)}.statistics-trend-panel,.statistics-category-panel{min-height:370px}.statistics-trend-panel .panel-head,.statistics-category-panel .panel-head,.statistics-ranking-panel .panel-head,.statistics-store-panel .panel-head{align-items:flex-start}
.statistics-chart-legend{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:12px 17px 0}.statistics-legend-item{display:inline-flex;align-items:center;gap:5px;padding:5px 7px;border:1px solid transparent;border-radius:999px;background:#f4f7fa;color:#496277;font-size:.875rem;font-weight:850}.statistics-legend-item i{width:8px;height:8px;border-radius:50%}.statistics-legend-item:hover,.statistics-legend-item.active{border-color:#a9cae1;background:#edf7fd;color:#174b70}.statistics-legend-empty{color:var(--muted);font-size:.875rem}
.employee-production-trend{height:268px;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(34px,1fr);align-items:stretch;gap:7px;padding:12px 18px 15px;overflow-x:auto}.statistics-stacked-day{height:100%;min-width:34px;display:grid;grid-template-rows:24px minmax(150px,1fr) 22px;gap:4px;align-items:end;padding:0 2px;border:0;border-radius:8px;background:transparent;color:inherit;text-align:center}.statistics-stacked-day:hover{background:#f2f7fb}.statistics-stacked-day:focus-visible{outline:2px solid #2f75b5;outline-offset:1px}.statistics-stacked-day>strong{align-self:end;color:#153750;font-size:.875rem;font-variant-numeric:tabular-nums}.statistics-stacked-day>small{align-self:start;color:#62778a;font-size:.875rem;white-space:nowrap}.statistics-stacked-column{height:100%;display:flex;flex-direction:column-reverse;justify-content:flex-start;overflow:hidden;border-bottom:2px solid #d9e4ec;border-radius:7px 7px 2px 2px;background:linear-gradient(90deg,#f4f7f9,#fafcfd,#f4f7f9)}.statistics-stacked-column i{display:block;min-height:2px;opacity:.94;transition:filter .15s}.statistics-stacked-day:hover .statistics-stacked-column i{filter:saturate(1.22) brightness(.96)}
.statistics-category-visual{min-height:286px;display:grid;grid-template-columns:175px minmax(210px,1fr);gap:18px;align-items:center;padding:18px}.statistics-donut{width:175px;height:175px;display:grid;place-items:center;border-radius:50%;box-shadow:inset 0 0 0 1px rgba(20,47,75,.06),0 10px 26px rgba(20,47,75,.1);transition:background .2s}.statistics-donut>div{width:108px;height:108px;display:grid;place-content:center;border-radius:50%;background:#fff;box-shadow:0 3px 13px rgba(20,47,75,.12);text-align:center}.statistics-donut strong,.statistics-donut span{display:block}.statistics-donut strong{color:#12334d;font-size:24px;line-height:1}.statistics-donut span{margin-top:5px;color:#6b7f91;font-size:.875rem;font-weight:800;text-transform:uppercase}.statistics-category-list{display:grid;gap:5px}.statistics-category-row{width:100%;display:grid;grid-template-columns:9px minmax(0,1fr) auto;gap:8px;align-items:center;padding:6px 8px;border:1px solid transparent;border-radius:9px;background:transparent;color:inherit;text-align:left}.statistics-category-row>i{width:9px;height:9px;border-radius:50%}.statistics-category-row span{min-width:0}.statistics-category-row strong,.statistics-category-row small{display:block}.statistics-category-row strong{color:#17364f;font-size:.875rem}.statistics-category-row small{margin-top:1px;color:#738596;font-size:.875rem}.statistics-category-row>b{color:#17364f;font-size:.875rem;font-variant-numeric:tabular-nums}.statistics-category-row:hover,.statistics-category-row.active{border-color:#bfd8e9;background:#f1f8fc}.statistics-category-row.active{box-shadow:inset 3px 0 #2f75b5}
.statistics-comparison-grid{display:grid;grid-template-columns:minmax(480px,1fr) minmax(420px,1fr);gap:14px;margin:0 0 14px}.statistics-ranking-panel,.statistics-store-panel{min-height:390px}.statistics-horizontal-chart{display:grid;gap:4px;max-height:430px;padding:12px 16px 16px;overflow:auto}.statistics-horizontal-chart.compact{max-height:430px}.statistics-horizontal-row{width:100%;display:grid;grid-template-columns:minmax(175px,.8fr) minmax(150px,1.2fr) 54px;gap:12px;align-items:center;padding:8px 9px;border:1px solid transparent;border-radius:10px;background:transparent;color:inherit;text-align:left}.statistics-horizontal-row:hover,.statistics-horizontal-row.active{border-color:#c5ddeb;background:#f4f9fc}.statistics-horizontal-label{min-width:0}.statistics-horizontal-label strong,.statistics-horizontal-label small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.statistics-horizontal-label strong{color:#17364f;font-size:.875rem}.statistics-horizontal-label small{margin-top:2px;color:#6d8192;font-size:.875rem}.statistics-horizontal-track{height:10px;overflow:hidden;border-radius:999px;background:#e8eef3}.statistics-horizontal-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#247ab5,#4fa7d4);box-shadow:0 2px 7px rgba(36,122,181,.2)}.statistics-store-panel .statistics-horizontal-track i{background:linear-gradient(90deg,#159b79,#52bea0)}.statistics-horizontal-row>b{color:#12334d;font-size:.875rem;text-align:right;font-variant-numeric:tabular-nums}.statistics-empty.compact{padding:25px 12px}
.statistics-employee-table table{min-width:1420px}.statistics-employee-table td:not(:first-child):not(:nth-child(2)):not(:last-child),.statistics-employee-table th:not(:first-child):not(:nth-child(2)):not(:last-child){text-align:center}.statistics-employee-row{cursor:pointer}.statistics-employee-row:hover>td{background:#edf7fd}.statistics-employee-row td:first-child{box-shadow:inset 0 0 #2f75b5;transition:box-shadow .15s}.statistics-employee-row:hover td:first-child{box-shadow:inset 4px 0 #2f75b5}.statistics-employee-row td:first-child small{display:block;margin-top:3px;color:#698093;font-size:.875rem}.statistics-detail-button{min-width:96px}
.statistics-operation-panel{margin-bottom:14px}.statistics-operation-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 16px;border-bottom:1px solid var(--line);background:#f8fafc}.statistics-operation-actions>span{color:#526b7f;font-size:.875rem;font-weight:800}.statistics-operation-actions>div{display:flex;gap:7px;flex-wrap:wrap}.statistics-operation-table{max-height:560px;overflow:auto}.statistics-operation-table table{min-width:1660px}.statistics-operation-table thead{position:sticky;top:0;z-index:3}.statistics-operation-table th{background:#edf4f8}.statistics-operation-table td{vertical-align:top}.statistics-operation-table td:nth-child(6),.statistics-operation-table td:nth-child(7),.statistics-operation-table td:nth-child(8){min-width:210px}.statistics-operation-table td:nth-last-child(-n+2),.statistics-operation-table th:nth-last-child(-n+2){text-align:right}.statistics-operation-table tfoot,.statistics-dialog-operation-table tfoot{position:sticky;bottom:0;z-index:3}.statistics-operation-table tfoot th,.statistics-dialog-operation-table tfoot th{border-top:2px solid #bdd4e2;background:#e7f2f8;color:#153b58;font-size:.875rem;text-align:right}.statistics-category-badge{display:inline-flex;align-items:center;gap:6px;color:#17364f;font-weight:850;white-space:nowrap}.statistics-category-badge i{width:8px;height:8px;border-radius:50%;background:var(--statistics-category-color)}.statistics-source-pill{display:inline-flex;padding:5px 8px;border-radius:999px;background:#e9f3fb;color:#235f88;font-size:.875rem;font-weight:850;white-space:nowrap}.statistics-source-pill.sales{background:#e8f6ef;color:#216c4c}.statistics-source-pill.target{background:#f0ecfb;color:#5b3a8f}
.statistics-employee-dialog{width:min(1480px,97vw);max-width:1480px;max-height:94vh;padding:27px}.statistics-employee-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin:0 42px 16px 0}.statistics-employee-dialog-head h2{margin:4px 0;color:#12334d;font-size:25px}.statistics-employee-dialog-head p:last-child{margin:4px 0 0;color:#62798b;font-size:.875rem}.statistics-employee-dialog .brand-summary-grid{margin:0 0 14px}.statistics-employee-dialog-charts{display:grid;grid-template-columns:1.25fr 1fr;gap:12px;margin-bottom:14px}.statistics-dialog-chart{min-height:220px;padding:16px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(145deg,#fff,#f7fafc)}.statistics-dialog-chart h3{margin:0 0 13px;color:#17364f;font-size:14px}.statistics-mini-trend{height:160px;display:flex;align-items:stretch;gap:6px;overflow-x:auto}.statistics-mini-trend>div{min-width:31px;display:grid;grid-template-rows:20px minmax(95px,1fr) 20px;gap:3px;text-align:center}.statistics-mini-trend strong{align-self:end;color:#17364f;font-size:.875rem}.statistics-mini-trend>div>span{height:100%;display:flex;align-items:flex-end;justify-content:center;border-bottom:1px solid #d7e3eb}.statistics-mini-trend>div>span i{width:17px;min-height:4px;border-radius:5px 5px 1px 1px;background:linear-gradient(180deg,#4da4d0,#2476ad)}.statistics-mini-trend small{color:#6a7f91;font-size:.875rem}.statistics-dialog-categories{display:grid;gap:8px}.statistics-dialog-categories>div{display:grid;grid-template-columns:95px minmax(120px,1fr) 45px;gap:10px;align-items:center}.statistics-dialog-categories>div>span{display:flex;align-items:center;gap:6px;color:#294a63;font-size:.875rem;font-weight:850}.statistics-dialog-categories>div>span i{width:8px;height:8px;border-radius:50%}.statistics-dialog-categories>div>b{height:8px;overflow:hidden;border-radius:999px;background:#e7edf2}.statistics-dialog-categories>div>b i{display:block;height:100%;border-radius:inherit}.statistics-dialog-categories>div>strong{color:#17364f;font-size:.875rem;text-align:right}.statistics-dialog-operation-head{display:flex;align-items:end;justify-content:space-between;gap:14px;margin:17px 0 8px}.statistics-dialog-operation-head h3{margin:3px 0 0;color:#17364f;font-size:16px}.statistics-dialog-operation-head>div:last-child{display:flex;align-items:center;gap:9px;color:#536b7e;font-size:.875rem;font-weight:800}.statistics-dialog-operation-table{max-height:45vh;overflow:auto}.statistics-dialog-operation-table table{min-width:1480px}.statistics-dialog-operation-table thead{position:sticky;top:0;z-index:2}.statistics-dialog-operation-table th{background:#edf4f8}.statistics-dialog-operation-table td:nth-child(5),.statistics-dialog-operation-table td:nth-child(6),.statistics-dialog-operation-table td:nth-child(7){min-width:210px}.statistics-dialog-operation-table td:nth-last-child(-n+2),.statistics-dialog-operation-table th:nth-last-child(-n+2){text-align:right}
.statistics-results-toggle{white-space:nowrap}.statistics-grouped-results{padding:14px;background:linear-gradient(180deg,#f7fafc,#eef5f8)}.statistics-grouped-results>div{display:grid;gap:12px}.statistics-employee-group{overflow:hidden;border:1px solid #d3e1ea;border-radius:15px;background:#fff;box-shadow:0 7px 20px rgba(26,63,92,.06)}.statistics-employee-group>header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;background:linear-gradient(115deg,#f8fbfd,#eef7fb)}.statistics-employee-group>header>div:first-child{display:flex;align-items:center;gap:11px;min-width:0}.statistics-employee-avatar{display:grid;place-items:center;flex:0 0 38px;height:38px;border-radius:12px;background:linear-gradient(135deg,#247ab5,#4fa7d4);color:#fff;font-size:.875rem;font-weight:900;box-shadow:0 5px 12px rgba(36,122,181,.22)}.statistics-employee-group header strong,.statistics-employee-group header small{display:block}.statistics-employee-group header strong{color:#143750;font-size:.875rem}.statistics-employee-group header small{margin-top:3px;color:#657c8e;font-size:.875rem}.statistics-employee-group-totals{display:flex;align-items:center;gap:10px}.statistics-employee-group-totals>span{min-width:70px;padding:6px 10px;border:1px solid #d9e5ec;border-radius:10px;background:#fff;text-align:right}.statistics-employee-group-totals>span small{margin:0;color:#6a8090;font-size:.875rem;font-weight:850;text-transform:uppercase}.statistics-employee-group-totals>span strong{font-size:.875rem}.statistics-grouped-grid{overflow:auto}.statistics-grouped-heading,.statistics-grouped-row{display:grid;grid-template-columns:130px minmax(190px,1fr) minmax(240px,1.35fr) 70px 85px;gap:10px;align-items:center;min-width:880px;padding:9px 16px}.statistics-grouped-heading{background:#e9f2f7;color:#5c7385;font-size:.875rem;font-weight:900;text-transform:uppercase;letter-spacing:.35px}.statistics-grouped-row{border-top:1px solid #e4ebf0;color:#2d4a60;font-size:.875rem}.statistics-grouped-row>span:first-child{display:flex;align-items:center;gap:7px;font-weight:850}.statistics-grouped-row>span:first-child i{width:8px;height:8px;border-radius:50%}.statistics-grouped-row>strong{text-align:right;color:#143750;font-variant-numeric:tabular-nums}
.statistics-stacked-day,.statistics-category-row,.statistics-horizontal-row,.statistics-legend-item{transition:background .15s,border-color .15s,transform .15s}.statistics-horizontal-row:active,.statistics-category-row:active,.statistics-stacked-day:active{transform:scale(.995)}
.statistics-stacked-day:focus-visible,.statistics-category-row:focus-visible,.statistics-horizontal-row:focus-visible,.statistics-legend-item:focus-visible{outline:2px solid #2f75b5;outline-offset:2px}
@media(max-width:1350px){.employee-statistics-filters{grid-template-columns:repeat(4,minmax(135px,1fr))}.statistics-search-field{grid-column:span 3}.employee-statistics-filters>button{grid-column:auto}.statistics-visual-grid{grid-template-columns:minmax(480px,1.25fr) minmax(380px,1fr)}}
@media(max-width:1000px){.statistics-visual-grid,.statistics-comparison-grid{grid-template-columns:1fr}.statistics-trend-panel,.statistics-category-panel{min-height:auto}.statistics-horizontal-chart{max-height:390px}.statistics-category-visual{grid-template-columns:180px 1fr}}
@media(max-width:820px){.employee-statistics-filters{grid-template-columns:1fr 1fr}.statistics-search-field{grid-column:1/-1}.employee-statistics-filters>button{grid-column:1/-1}.statistics-category-visual{grid-template-columns:150px 1fr}.statistics-donut{width:150px;height:150px}.statistics-donut>div{width:92px;height:92px}.statistics-horizontal-row{grid-template-columns:minmax(145px,.9fr) minmax(110px,1fr) 48px}.statistics-operation-actions,.statistics-employee-dialog-head,.statistics-dialog-operation-head{align-items:stretch;flex-direction:column}.statistics-employee-dialog-charts{grid-template-columns:1fr}.statistics-employee-dialog{width:calc(100vw - 12px);max-width:none;max-height:calc(100dvh - 12px);padding:20px 14px}.statistics-employee-dialog-head{margin-right:36px}.statistics-employee-group>header{align-items:stretch;flex-direction:column}.statistics-employee-group-totals{justify-content:space-between}.statistics-results-toggle{width:100%}}
@media(max-width:560px){.employee-statistics-filters{grid-template-columns:1fr}.statistics-search-field,.employee-statistics-filters>button{grid-column:auto}.statistics-category-visual{grid-template-columns:1fr;justify-items:center}.statistics-category-list{width:100%;grid-template-columns:1fr 1fr}.statistics-category-row{grid-template-columns:8px minmax(0,1fr) auto}.employee-production-trend{grid-auto-columns:36px;padding-inline:10px}.statistics-horizontal-row{grid-template-columns:minmax(0,1fr) 48px}.statistics-horizontal-track{grid-column:1/-1;grid-row:2}.statistics-horizontal-row>b{grid-column:2;grid-row:1}.statistics-operation-actions>div,.statistics-dialog-operation-head>div:last-child{align-items:stretch;flex-direction:column}.statistics-operation-actions button,.statistics-dialog-operation-head button{width:100%}.statistics-category-list{grid-template-columns:1fr}.statistics-employee-dialog .brand-summary-grid{grid-template-columns:1fr 1fr}.statistics-dialog-categories>div{grid-template-columns:82px minmax(90px,1fr) 40px}.statistics-employee-group-totals{display:grid;grid-template-columns:1fr 1fr}.statistics-employee-group-totals button{grid-column:1/-1}.statistics-employee-group-totals>span{text-align:left}}
.tim-economic-panel{margin-bottom:14px}
.tim-economic-table table{min-width:1320px}
.tim-economic-table td{vertical-align:top}
.tim-economic-table td:nth-child(1){min-width:230px}.tim-economic-table td:nth-child(4){min-width:260px}.tim-economic-table td:nth-child(7){min-width:250px}
.panel-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}
.economic-status.manual{background:#e8f1ff;color:#245f9d}.economic-row.manual{background:#f8fbff}
.economic-manual-action{display:block;margin-top:6px;padding:3px 0;border:0;background:transparent;color:var(--brand-accent);font-size:.875rem;font-weight:900;text-decoration:underline;text-underline-offset:2px}
.manual-multiplier-list{display:grid;gap:6px;margin:0 0 11px}
.manual-multiplier-heading{display:flex;align-items:center;justify-content:space-between;color:var(--navy);font-size:.875rem}.manual-multiplier-heading span{display:grid;place-items:center;min-width:22px;height:22px;border-radius:999px;background:#e8f1ff;color:#245f9d;font-size:.875rem;font-weight:900}
.manual-multiplier-chip{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 11px;border:1px solid #bdd4ef;border-radius:10px;background:#f5f9ff}
.manual-multiplier-chip span{min-width:0}.manual-multiplier-chip strong,.manual-multiplier-chip small{display:block}.manual-multiplier-chip strong{color:#214f7c;font-size:.875rem}.manual-multiplier-chip small{margin-top:3px;color:#647c92;font-size:.875rem;line-height:1.35}
.brand-practice-control{margin-top:13px}.brand-practice-intro{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px;padding:11px 13px;border:1px solid #d8e5ef;border-radius:11px;background:#f5f9fc}.brand-practice-intro p{margin:0;color:#587087;font-size:.875rem;line-height:1.5}
.brand-practice-summary .brand-summary-card{min-height:77px;box-shadow:none}.brand-practice-toolbar{display:grid;grid-template-columns:minmax(270px,1fr) 180px 190px auto;gap:8px;margin:0 0 8px}.brand-practice-toolbar input,.brand-practice-toolbar select{min-width:0}
.brand-practice-table{max-height:62vh;overflow:auto}.brand-production-view .brand-practice-table table{min-width:2400px}.brand-practice-table thead{position:sticky;top:0;z-index:2}.brand-practice-table th{background:#edf3f8}.brand-practice-table td{vertical-align:top}.practice-date-store{min-width:190px}.practice-operator{min-width:165px}.practice-reference{min-width:190px}.practice-tax-code{min-width:185px}.practice-phone{min-width:165px}.practice-product{min-width:280px}.practice-tracks{min-width:260px}.brand-practice-table th:nth-child(10),.brand-practice-table td:nth-child(10){min-width:205px}.brand-practice-table th:nth-child(11),.brand-practice-table td:nth-child(11){min-width:210px}
.practice-row.target_only{background:#fffdf7}.practice-row.sales_only{background:#f8fbff}.practice-row.blocking{box-shadow:inset 4px 0 #d68a16}
.practice-date-store-content,.practice-operator-content,.practice-reference-content,.practice-reference-list,.practice-sale-ref{display:grid;gap:5px}.practice-date-store-content>strong,.practice-operator-content>strong,.practice-reference-list strong{color:var(--navy);font-size:.875rem}.practice-store-list{display:grid;gap:4px;margin-top:2px}.practice-store-list span{color:var(--muted);font-size:.875rem;line-height:1.3}.practice-sale-ref{margin-top:7px;color:#4f677d;font-size:.875rem}.practice-sale-ref span{font-size:.875rem;font-weight:900;text-transform:uppercase;letter-spacing:.4px}.practice-sale-ref strong{color:var(--navy);font-size:.875rem}.practice-link,.practice-managed-status{display:inline-flex;padding:4px 7px;border-radius:999px;font-size:.875rem;font-weight:900;white-space:nowrap}.practice-link.matched{background:#e2f3e8;color:#1f7148}.practice-link.target_only{background:#fff0ce;color:#8a5b00}.practice-link.sales_only{background:#e7f1fb;color:#276596}
.practice-managed-status{background:#edf1f4;color:#546b7f}.practice-managed-status.active{background:#e2f3e8;color:#1f7148}.practice-managed-status.pending{background:#fff0ce;color:#8a5b00}.practice-managed-status.ko,.practice-managed-status.reversed{background:#fde8e6;color:#a43b32}.practice-managed-status.excluded{background:#eceff2;color:#606f7c}
.practice-row td small,.practice-row td em{display:block;margin-top:5px;color:var(--muted);font-size:.875rem;line-height:1.35}.practice-row td em{color:#536a7e;font-style:normal}.source-status-list{display:flex;gap:4px;flex-wrap:wrap}.source-status-list span{padding:3px 5px;border-radius:6px;background:#f1f3f5;color:#586c7d;font-size:.875rem;font-weight:800}.source-status-list .muted,.muted{color:var(--muted)}
.practice-tax-code-content,.practice-tax-codes,.practice-phone-content,.practice-phone-numbers,.practice-product-content,.practice-offer-list,.practice-tracks-content,.practice-track-list{display:grid;gap:5px}.practice-tax-codes strong,.practice-phone-numbers strong{color:var(--navy);font-size:.875rem;letter-spacing:.2px;white-space:nowrap}.practice-product-content>strong{color:var(--navy);font-size:.875rem;line-height:1.35}.practice-offer-list span,.practice-track-list span{display:block;padding:4px 6px;border-radius:7px;background:#f1f5f8;color:#536d82;font-size:.875rem;font-weight:800;line-height:1.3}.practice-offer-list span{background:#eee9fb;color:#5b36c7}.practice-offer-list small,.practice-track-list small{margin-top:0!important}
.practice-effects{display:flex;gap:4px;flex-wrap:wrap}.practice-effect{padding:3px 5px;border-radius:6px;background:#e7f1fb;color:#276596;font-size:.875rem;font-weight:900}.practice-effect.pending,.practice-effect.generates_anomaly,.practice-effect.blocks_closure{background:#fff0ce;color:#8a5b00}.practice-effect.excluded,.practice-effect.storno{background:#fde8e6;color:#a43b32}.practice-effect.neutral{background:#edf1f4;color:#667988}
.practice-status-dialog{width:min(560px,94vw)}.practice-status-dialog form,.manual-multiplier-dialog form{padding:27px;position:relative}.practice-status-dialog label{display:grid;gap:6px;margin-top:13px;color:var(--navy);font-size:.875rem;font-weight:800}.practice-status-reference{display:grid;gap:4px;margin:11px 0;padding:12px;border:1px solid var(--line);border-radius:11px;background:#f7fafc}.practice-status-reference strong{color:var(--navy);font-size:15px}.practice-status-reference span,.practice-status-reference small{color:var(--muted);font-size:.875rem}.practice-status-preview,.manual-multiplier-preview{margin-top:13px;padding:12px;border:1px solid #d6e3ee;border-radius:11px;background:#f5f9fc}.practice-status-preview>strong{display:block;margin-bottom:7px;color:var(--navy);font-size:.875rem}.practice-status-preview p,.manual-multiplier-preview p{margin:8px 0 0;color:#8a5b00;font-size:.875rem;line-height:1.45}
.status-rules-dialog{width:min(1320px,96vw)}.status-rules-table{max-height:65vh;overflow:auto}.status-rules-table table{min-width:1150px}.status-rules-table thead{position:sticky;top:0;z-index:2}.status-rules-table th{background:#edf3f8}.status-rules-table td{text-align:center;vertical-align:middle}.status-rules-table td:first-child{text-align:left}.status-rules-table input[data-rule-label]{min-width:170px}.status-rules-table input[type=checkbox]{width:18px;height:18px;accent-color:var(--brand-accent)}
.manual-multiplier-dialog{width:min(760px,95vw)}.manual-multiplier-preview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.manual-multiplier-preview>div{display:grid;gap:3px}.manual-multiplier-preview span{color:var(--muted);font-size:.875rem;font-weight:850;text-transform:uppercase}.manual-multiplier-preview strong{color:var(--navy);font-size:.875rem}.manual-multiplier-preview p{grid-column:1/-1}

@media(max-width:1050px){
  .brand-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .workflow-strip{grid-template-columns:repeat(3,minmax(0,1fr))}
  .brand-practice-toolbar{grid-template-columns:1fr 1fr}
}
@media(max-width:760px){
  .brand-production-view .section-head{align-items:stretch}.brand-period-field{width:100%}
  .brand-summary-grid,.brand-production-main,.brand-history-panel .grid-2{grid-template-columns:1fr}
  .workflow-strip{display:flex;overflow:auto;padding-bottom:4px}.workflow-step{min-width:180px}
  .source-note{display:none}
  .brand-production-view .table-card{overflow:auto}.brand-production-view table{min-width:850px}
  .wind-economic-store-tabs button{min-width:145px}.wind-economic-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
  .wind-economic-detail-dialog{width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;border-radius:0;padding:calc(20px + env(safe-area-inset-top)) 14px calc(20px + env(safe-area-inset-bottom))}
  .wind-economic-detail-table{max-height:58vh}.wind-economic-detail-toolbar{align-items:stretch;flex-direction:column}.wind-economic-detail-toolbar span{white-space:normal}
  .brand-practice-intro{align-items:stretch;flex-direction:column}.brand-practice-toolbar{grid-template-columns:1fr}.panel-head-actions{align-items:flex-end;flex-direction:column}.panel-head-actions .source-note{display:block}.manual-multiplier-preview{grid-template-columns:1fr 1fr}
}
@media(max-width:480px){
  .brand-summary-grid{grid-template-columns:1fr 1fr}.brand-summary-card{min-height:82px;padding:11px}.brand-summary-card strong{font-size:14px}
  .brand-switch button{padding:8px 5px;font-size:.875rem}.brand-switch button span{display:block;margin-top:2px}
  .brand-source-upload,.control-kpis{grid-template-columns:1fr}.brand-source-upload button{width:100%}
  .multibrand-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .source-check,.brand-anomaly{grid-template-columns:23px minmax(0,1fr)}.source-check button,.brand-anomaly button{grid-column:2;justify-self:start}
  .brand-source-summary>span:last-of-type{display:none}.manual-multiplier-preview{grid-template-columns:1fr}.manual-multiplier-chip{align-items:flex-start;flex-direction:column}
}

/* v0.13.0-rc6 · popup logout leggibile e adattivo */
.idle-dialog{
  box-sizing:border-box;
  width:min(620px,calc(100vw - 32px));
  max-width:620px;
  max-height:calc(100dvh - 32px);
  overflow:auto;
}
.idle-dialog-content{
  min-width:0;
  padding:28px 30px 26px;
}
.idle-dialog h2{
  margin:7px 0 14px;
  color:var(--navy);
  font-size:28px;
  line-height:1.2;
  overflow-wrap:anywhere;
}
.idle-dialog-message{
  margin:0;
  color:var(--ink);
  font-size:16px;
  line-height:1.55;
  overflow-wrap:anywhere;
}
.idle-dialog .dialog-actions{
  align-items:stretch;
  flex-wrap:wrap;
  gap:10px;
  margin-top:24px;
}
.idle-dialog .dialog-actions button{
  min-width:165px;
  min-height:48px;
  padding:11px 16px;
  white-space:normal;
  line-height:1.25;
}

@media(max-width:620px){
  .idle-dialog{
    width:calc(100vw - 20px);
    max-height:calc(100dvh - 20px);
  }
  .idle-dialog-content{
    padding:22px max(18px,env(safe-area-inset-right,0px)) calc(18px + env(safe-area-inset-bottom,0px)) max(18px,env(safe-area-inset-left,0px));
  }
  .idle-dialog h2{
    margin-top:6px;
    font-size:23px;
  }
  .idle-dialog-message{
    font-size:15px;
  }
  .idle-dialog .dialog-actions{
    display:grid;
    grid-template-columns:1fr;
    margin-top:20px;
  }
.idle-dialog .dialog-actions button{
    width:100%;
    min-width:0;
  }
}

/* r33 · Controllo pratiche autonomo, selezione massiva e rilavorazioni. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.practice-control-head{align-items:center}.practice-control-view .brand-switch{margin-bottom:16px}.practice-control-view .brand-practice-table table{min-width:3000px}.practice-select{width:52px;min-width:52px;text-align:center}.practice-select input{width:18px;height:18px;accent-color:var(--blue)}
.practice-bulk-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 12px;padding:11px 13px;border:1px solid #d8e5f0;border-radius:12px;background:#f7fbff}.practice-bulk-bar span{margin-right:auto;color:var(--navy);font-size:.875rem;font-weight:850}.practice-bulk-bar button:disabled{opacity:.48;cursor:not-allowed}
.practice-managed-status{background:color-mix(in srgb,var(--status-color,#315bb7) 14%,white);color:var(--status-color,#315bb7);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--status-color,#315bb7) 28%,white)}.practice-rework-cell{display:grid;gap:4px;min-width:185px}.practice-rework-badge{display:inline-flex;width:max-content;padding:4px 7px;border-radius:999px;background:#fff0ce;color:#805900;font-size:.875rem;font-weight:900}.practice-rework-badge.closed{background:#e5f5ea;color:#17713d}
.status-rules-dialog{width:min(1500px,calc(100vw - 32px))}.status-rules-table table{min-width:1420px}.status-rules-table input[type="text"],.status-rules-table input:not([type]),.status-rules-table select{min-width:132px}.status-rules-table input[type="number"]{width:70px;min-width:70px}.status-rules-table input[type="color"]{width:52px;min-width:52px;padding:3px}.status-rules-table .rule-inactive{opacity:.62;background:#f4f5f6}.inline-rule-form{display:flex;gap:9px;align-items:end;flex-wrap:wrap;margin:12px 0}.inline-rule-form input{min-width:260px;flex:1}.inline-rule-form select{min-width:130px}.rule-config-grid{margin-top:22px}.rule-card-list{display:grid;gap:8px}.rule-card{display:grid;grid-template-columns:minmax(180px,1fr) 86px 82px auto auto;align-items:center;gap:8px;padding:10px;border:1px solid var(--line);border-radius:11px;background:#fff}.rule-card.inactive{opacity:.62;background:#f4f5f6}.rule-card>label{display:grid;gap:3px;font-size:.875rem;color:var(--muted)}.rule-card input[type="number"]{width:75px}.rule-card input[type="color"]{width:58px;padding:3px}.rule-card .checkbox{display:flex;align-items:center;white-space:nowrap}.practice-status-history{max-height:220px;overflow:auto;margin-top:12px;border-top:1px solid var(--line);padding-top:10px}.practice-status-history h3{margin:0 0 8px;font-size:.875rem}
.brand-rework-panel{margin-top:18px;padding-bottom:24px;overflow:hidden}.brand-rework-summary{gap:16px;margin:16px 24px}.brand-rework-toolbar{flex-wrap:wrap;margin:0 24px 16px}.brand-rework-panel #brandReworkCount{margin:0 24px 9px}.brand-rework-table{width:auto;margin:0 24px}.brand-rework-toolbar input{min-width:320px;flex:1}.compact-check{display:flex;align-items:center;gap:6px;padding:0 9px;border:1px solid var(--line);border-radius:9px;background:#fff;font-size:.875rem;font-weight:750}.brand-rework-table table{min-width:1450px}.brand-rework-table td{vertical-align:top}.brand-rework-table td strong,.brand-rework-table td small,.brand-rework-table td em,.brand-rework-table td a{display:block}.brand-rework-table td small{margin-top:4px;color:var(--muted);font-size:.875rem}.brand-rework-table td em{margin-top:6px;color:#546b7f;font-size:.875rem}.brand-rework-table td a{margin:3px 0;color:var(--blue);font-size:.875rem}.rework-overdue{background:#fff8ed}.assign-rework-dialog,.rework-detail-dialog{width:min(980px,calc(100vw - 32px))}.assign-rework-dialog form,.rework-detail-dialog form{padding:28px}.rework-detail-grid{margin-top:18px}.rework-detail-grid section{min-width:0}.rework-detail-grid h3{margin:0 0 9px}.rework-detail-grid .history-row{align-items:flex-start}.pill.urgent{background:var(--redbg);color:var(--red)}.pill.high{background:var(--amberbg);color:var(--amber)}.pill.normal{background:var(--bluebg);color:var(--blue)}
.dashboard-chart-plot.empty-period .dashboard-bar{min-height:4px;background:#dce7f0}.dashboard-chart-plot.empty-period svg{opacity:.25}

/* rc13-hf2 · tutti i giorni del periodo sono visibili e apribili. */
.dashboard-chart-scroll{
  width:100%;
  overflow-x:auto;
  overflow-y:hidden;
  padding:0 0 4px;
  scrollbar-width:thin;
  scrollbar-color:#b7c9d8 transparent;
}
.dashboard-chart-canvas{
  min-width:max(100%,var(--dashboard-chart-width));
}
.dashboard-bars{
  display:grid;
  grid-template-columns:repeat(var(--dashboard-day-count),minmax(0,1fr));
  align-items:stretch;
  gap:2px;
}
.dashboard-bar,
.dashboard-chart-plot.empty-period .dashboard-bar{
  box-sizing:border-box;
  width:100%;
  height:100%;
  min-width:0;
  min-height:0;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
}
.dashboard-bar::before{
  content:"";
  width:max(3px,72%);
  height:max(5px,var(--dashboard-bar-height));
  border-radius:3px 3px 0 0;
  background:linear-gradient(180deg,#9fc4e7,#dce9f6);
  transition:background .15s,filter .15s;
}
.dashboard-bar.is-zero::before{background:#dce7f0}
.dashboard-bar.is-future::before{background:#edf1f4}
.dashboard-bar.is-today{background:rgba(31,118,196,.055)}
.dashboard-bar:hover::before,
.dashboard-bar:focus-visible::before{background:linear-gradient(180deg,#2c83d2,#8fc0e9);filter:saturate(1.1)}
.dashboard-bar:focus-visible{outline:2px solid #2c83d2;outline-offset:-2px}
.dashboard-bar .dashboard-bar-value{
  bottom:calc(var(--dashboard-bar-height) + 7px);
}
.dashboard-chart-labels{
  display:grid;
  grid-template-columns:repeat(var(--dashboard-day-count),minmax(0,1fr));
  justify-content:normal;
  gap:2px;
  margin-top:7px;
}
.dashboard-day-label{
  min-width:0;
  min-height:24px;
  display:grid;
  place-items:center;
  padding:2px 0;
  border:0;
  border-radius:6px;
  background:transparent;
  color:#64798e;
  font:inherit;
  font-size:.875rem;
  font-weight:750;
  line-height:1;
  cursor:pointer;
}
.dashboard-day-label:hover,
.dashboard-day-label:focus-visible{background:#e7f2fb;color:#1268b7;outline:0}
.dashboard-day-label.is-today{background:#1268b7;color:#fff}
.dashboard-day-label.is-future{color:#aab4bd}
.dashboard-day-label.is-today.is-future{color:#fff}
.dashboard-chart-plot.empty-period .dashboard-bar::before{background:#dce7f0}
.dashboard-chart-plot.empty-period .dashboard-bar.is-future::before{background:#edf1f4}

@media(max-width:820px){
  .practice-control-head{align-items:flex-start}.practice-control-head .brand-period-field{width:100%}.practice-bulk-bar{align-items:stretch}.practice-bulk-bar button{width:100%}.practice-bulk-bar span{margin:0;text-align:center}.brand-rework-summary{margin:16px}.brand-rework-toolbar{margin:0 16px 16px}.brand-rework-panel #brandReworkCount{margin:0 16px 9px}.brand-rework-table{margin:0 16px}.brand-rework-toolbar input,.brand-rework-toolbar select,.compact-check{width:100%;min-width:0}.rule-config-grid{grid-template-columns:1fr}.rule-card{grid-template-columns:1fr 80px}.rule-card>button{grid-column:1/-1}.inline-rule-form>*{width:100%;min-width:0}.assign-rework-dialog form,.rework-detail-dialog form{padding:22px 16px}.rework-detail-grid{grid-template-columns:1fr}
}

/* v0.13.0-rc10 · una riga gestionale per ciascuna pratica */
.practice-derived-reference{
  color:#245f9d;
  font-size:.875rem;
  line-height:1.35;
}

/* v0.13.0-rc8 · Produzione brand completa e sezioni WINDTRE compatte */
.practice-status-dialog{
  box-sizing:border-box;
  width:min(820px,calc(100vw - 32px));
  max-width:820px;
  max-height:calc(100dvh - 32px);
  overflow:auto;
}
.practice-status-dialog form{
  box-sizing:border-box;
  width:100%;
  min-width:0;
  padding:30px 32px;
}
.practice-status-dialog .practice-status-reference,
.practice-status-dialog .practice-status-preview{
  overflow-wrap:anywhere;
}
.practice-status-dialog .dialog-actions{
  flex-wrap:wrap;
}
.dashboard-period-dialog{
  box-sizing:border-box;
  width:min(760px,calc(100vw - 32px));
  max-width:760px;
  max-height:calc(100dvh - 32px);
  overflow:auto;
}
#dashboardPeriodForm{
  box-sizing:border-box;
  width:100%;
  min-width:0;
  padding:30px 32px;
}
#dashboardPeriodForm .form-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
#dashboardPeriodForm input{
  box-sizing:border-box;
  width:100%;
  min-width:0;
}
.economic-scope{
  justify-self:start;
  margin-top:3px;
  padding:2px 5px;
  border-radius:999px;
  background:#e8f1ff;
  color:#245f9d;
  font-size:.875rem;
  font-style:normal;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.35px;
}
.wind-economic-detail-table table{min-width:2050px}
.wind-economic-detail-table th:nth-child(4),
.wind-economic-detail-table td:nth-child(4){min-width:210px}
.wind-economic-detail-table th:nth-child(5),
.wind-economic-detail-table td:nth-child(5){min-width:190px}
.wind-economic-detail-table th:nth-child(6),
.wind-economic-detail-table td:nth-child(6){min-width:250px}
.wind-economic-detail-table th:nth-child(7),
.wind-economic-detail-table td:nth-child(7){min-width:260px}
.wind-economic-detail-table th:nth-child(8),
.wind-economic-detail-table td:nth-child(8){min-width:240px}
.wind-economic-detail-table th:nth-child(11),
.wind-economic-detail-table td:nth-child(11){min-width:150px}
.wind-detail-tax-code strong{
  color:var(--navy);
  font-size:.875rem;
  letter-spacing:.2px;
  white-space:nowrap;
}
.wind-detail-source span,
.wind-detail-source strong{display:block}
.wind-detail-source span{
  margin-bottom:4px;
  color:var(--muted);
  font-size:.875rem;
}

@media(max-width:620px){
  .practice-status-dialog,
  .dashboard-period-dialog{
    width:calc(100vw - 20px);
    max-height:calc(100dvh - 20px);
  }
  .practice-status-dialog form,
  #dashboardPeriodForm{
    padding:24px 18px calc(20px + env(safe-area-inset-bottom,0px));
  }
  .practice-status-dialog .dialog-actions,
  #dashboardPeriodForm .dialog-actions{
    display:grid;
    grid-template-columns:1fr;
  }
  .practice-status-dialog .dialog-actions button,
  #dashboardPeriodForm .dialog-actions button{
    width:100%;
    min-width:0;
  }
  #dashboardPeriodForm .form-grid{
    grid-template-columns:1fr;
  }
}

/* v0.13.0-rc9 · colonne Target allineate e spazi laterali più leggibili */
.brand-practice-body{
  padding:16px 18px 18px;
}
.brand-practice-table th,
.brand-practice-table td{
  box-sizing:border-box;
  padding:14px 19px;
}
.brand-practice-table th+th,
.brand-practice-table td+td{
  border-left:1px solid #edf2f6;
}
.brand-practice-table td.practice-date-store,
.brand-practice-table td.practice-operator,
.brand-practice-table td.practice-reference,
.brand-practice-table td.practice-tax-code,
.brand-practice-table td.practice-phone,
.brand-practice-table td.practice-product,
.brand-practice-table td.practice-tracks{
  display:table-cell;
}
.brand-production-view .brand-practice-table table{min-width:2700px}
.practice-date-store{min-width:215px}
.practice-operator{min-width:190px}
.practice-reference{min-width:225px}
.practice-tax-code{min-width:205px}
.practice-phone{min-width:175px}
.practice-product{min-width:330px}
.practice-tracks{min-width:300px}

@media(max-width:820px){
  .brand-practice-body{
    padding:12px 10px 14px;
  }
  .brand-practice-table th,
  .brand-practice-table td{
    padding:12px 16px;
  }
}

/* r34 · Conto economico Vodafone / Fastweb, fasi M-M+1-M+6 e gare extra. */
.vodafone-economic-panel{border-top:4px solid #e60000;background:linear-gradient(180deg,#fff 0,#fff 72%,#fffafa 100%)}
.vodafone-phase-actions{flex-wrap:wrap;justify-content:flex-end}.vodafone-economic-summary{grid-template-columns:repeat(6,minmax(145px,1fr))}.vodafone-threshold-table table{min-width:1320px}.vodafone-threshold-table td{vertical-align:top}.vodafone-economic-table{overflow:auto}.vodafone-economic-table table{min-width:1480px}.vodafone-economic-table td{vertical-align:top}.vodafone-economic-table .forecast-row{background:#f6f8fb;color:#647789}.vodafone-economic-table .forecast-row strong{color:#53687b}.vodafone-lines-panel{margin-top:18px}.pill.success{background:#e5f5ea;color:#17713d}.success-text{color:#17713d}.forecast-row .pill{background:#edf1f5;color:#556b7e}
.vodafone-projection-calendar{margin-top:14px;border-top:1px solid #eadfe0;padding-top:12px}.vodafone-projection-calendar summary{display:flex;align-items:center;justify-content:space-between;gap:14px;cursor:pointer;color:var(--navy);font-size:.875rem;font-weight:900}.vodafone-projection-calendar[open] summary{margin-bottom:10px}.vodafone-projection-calendar table{min-width:880px}#vodafoneProjectionPanel{border-top:4px solid #2b8a57;background:linear-gradient(180deg,#fff 0,#fff 76%,#f5fbf7 100%)}
.vodafone-contest-panel{margin-top:18px}.vodafone-contest-list{display:grid;gap:10px;margin-top:14px}.vodafone-contest-card{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 17px;border:1px solid #dfe8ef;border-left:4px solid #e60000;border-radius:14px;background:#fff}.vodafone-contest-card.inactive{opacity:.62;border-left-color:#aeb9c2;background:#f7f8f9}.vodafone-contest-card h4{margin:7px 0 4px;color:var(--navy);font-size:15px}.vodafone-contest-card p{margin:0 0 4px;color:#53687b;font-size:.875rem}.vodafone-contest-card small{color:var(--muted);font-size:.875rem}.vodafone-contest-progress{display:flex;align-items:center;gap:10px;margin-top:9px}.vodafone-contest-progress strong{color:var(--navy);font-size:.875rem}.vodafone-contest-progress span{padding:4px 7px;border-radius:999px;background:#eef4fa;color:#345772;font-size:.875rem;font-weight:800}.vodafone-contest-card .contest-actions{display:flex;gap:7px;align-items:center;flex-shrink:0}.vodafone-contest-dialog{width:min(980px,calc(100vw - 32px))}.vodafone-contest-dialog form{padding:28px}.vodafone-contest-dialog .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}

@media(max-width:1180px){
  .vodafone-economic-summary{grid-template-columns:repeat(3,minmax(150px,1fr))}
}
@media(max-width:820px){
  .vodafone-phase-actions{width:100%;justify-content:flex-start}.vodafone-phase-actions .source-note{width:100%}.vodafone-economic-summary{grid-template-columns:1fr 1fr}.vodafone-contest-card{align-items:flex-start;flex-direction:column}.vodafone-contest-card .contest-actions{width:100%}.vodafone-contest-card .contest-actions button{flex:1}.vodafone-contest-dialog form{padding:22px 16px}.vodafone-contest-dialog .form-grid{grid-template-columns:1fr}
}
@media(max-width:540px){
  .vodafone-economic-summary{grid-template-columns:1fr}.vodafone-phase-actions button{flex:1}.vodafone-contest-progress{align-items:flex-start;flex-direction:column}
}

/* r35 · spazio desktop, filtri pratiche e dettaglio/mappatura Vodafone. */
.sidebar,.app-shell{transition:transform .2s ease,margin-left .2s ease}
.menu-btn{display:grid;place-items:center;width:38px;height:38px;flex:0 0 38px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--navy)}
@media(min-width:821px){
  body.sidebar-collapsed .sidebar{transform:translateX(-100%)}
  body.sidebar-collapsed .app-shell{margin-left:0}
}
.brand-practice-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(180px,1fr));gap:9px;margin:0 0 9px}
.brand-practice-filter-grid label{display:grid;gap:5px;color:#526a7e;font-size:.875rem;font-weight:850;text-transform:uppercase;letter-spacing:.45px}
.brand-practice-filter-grid input,.brand-practice-filter-grid select{min-width:0;width:100%;font-size:.875rem;text-transform:none;letter-spacing:0}
.brand-practice-filter-actions{display:flex;align-items:center;gap:9px;margin:0 0 10px}
.filter-chips{display:flex;align-items:center;gap:6px;min-width:0;flex:1;flex-wrap:wrap}
.filter-chip{display:inline-flex;align-items:center;gap:7px;max-width:320px;padding:5px 8px;border:1px solid #c7d9e8;border-radius:999px;background:#edf6fd;color:#2c5d83;font-size:.875rem;font-weight:800}
.filter-chip span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.filter-chip b{font-size:.875rem;line-height:1}.filter-chip.focus{border-color:#d9c36d;background:#fff7d9;color:#735600}.filter-chips-empty{color:var(--muted);font-size:.875rem}
.practice-filter-link,.practice-track-list button{display:block;width:100%;padding:4px 6px;border:0;border-radius:7px;background:#f1f5f8;color:#536d82;text-align:left;font-size:.875rem;font-weight:800;line-height:1.35}
.practice-filter-link{padding:0;background:transparent;color:var(--navy);font-size:.875rem}.practice-filter-link:hover,.practice-track-list button:hover{text-decoration:underline}
.vodafone-detail-link,.vodafone-count-link,.anomaly-title-link{padding:0;border:0;background:transparent;color:inherit;text-align:left}.vodafone-detail-link strong,.vodafone-detail-link span{display:block}.vodafone-detail-link span{margin-top:3px;color:var(--muted);font-size:.875rem}.vodafone-detail-link:hover strong,.anomaly-title-link:hover{text-decoration:underline}.vodafone-count-link{color:var(--blue);font-weight:900;text-decoration:underline;text-underline-offset:3px}.anomaly-title-link{color:var(--navy);font-size:.875rem;font-weight:850}
.vodafone-practice-detail-dialog,.vodafone-mapping-dialog,.vodafone-mappings-dialog{box-sizing:border-box;width:min(1320px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:28px;overflow:auto;position:relative}
.vodafone-practice-detail-list{display:grid;gap:12px;margin-top:15px}.vodafone-practice-card{padding:15px;border:1px solid #dbe5ed;border-radius:14px;background:#fff}.vodafone-practice-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.vodafone-practice-card-head>div:last-child{display:grid;justify-items:end;gap:8px}.vodafone-practice-card-head span,.vodafone-practice-card-head p{color:var(--muted);font-size:.875rem}.vodafone-practice-card-head h3{margin:4px 0;color:var(--navy);font-size:16px}.vodafone-practice-card-head p{margin:0}.vodafone-practice-card-head>div:last-child>strong{color:var(--navy);font-size:17px}.vodafone-practice-identifiers{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:12px 0}.vodafone-practice-identifiers>span{display:grid;gap:3px;padding:9px;border-radius:9px;background:#f5f8fa}.vodafone-practice-identifiers small{color:var(--muted);font-size:.875rem;text-transform:uppercase}.vodafone-practice-identifiers strong{overflow-wrap:anywhere;color:var(--navy);font-size:.875rem}.vodafone-practice-card details{border-top:1px solid var(--line);padding-top:10px}.vodafone-practice-card summary{cursor:pointer;color:#496276;font-size:.875rem;font-weight:800}.vodafone-practice-card .table-card{margin-top:9px;box-shadow:none}.vodafone-practice-card .table-card table{min-width:940px}.vodafone-practice-card-actions{display:flex;justify-content:flex-end;margin-top:10px}
.vodafone-practice-services{display:grid;gap:6px;margin:0 0 10px}.vodafone-practice-services>small{color:var(--muted);font-size:.875rem;font-weight:800;text-transform:uppercase}.vodafone-practice-services>div{display:flex;gap:6px;flex-wrap:wrap}.vodafone-practice-services span{padding:5px 8px;border:1px solid #d5e2eb;border-radius:999px;background:#f2f7fa;color:var(--navy);font-size:.875rem;font-weight:800}
.vodafone-mapping-dialog form{min-width:0}.mapping-source-card{display:grid;gap:4px;margin:0 0 16px;padding:12px 14px;border-left:4px solid #e60000;border-radius:10px;background:#fff5f5}.mapping-source-card span{color:#866465;font-size:.875rem}.mapping-source-card strong{color:#721c1c;font-size:15px}.vodafone-mapping-dialog .info-banner{min-height:46px}.vodafone-mappings-list{display:grid;gap:9px}.vodafone-mapping-row{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:13px 15px;border:1px solid var(--line);border-radius:12px}.vodafone-mapping-row span,.vodafone-mapping-row small{color:var(--muted);font-size:.875rem}.vodafone-mapping-row h3{margin:4px 0;color:var(--navy);font-size:.875rem}.vodafone-mapping-row p{margin:0 0 3px;color:#50687b;font-size:.875rem}
@media(max-width:1100px){.brand-practice-filter-grid{grid-template-columns:repeat(2,minmax(180px,1fr))}}
@media(max-width:820px){
  .brand-practice-filter-grid{grid-template-columns:1fr}.brand-practice-filter-actions{align-items:stretch;flex-wrap:wrap}.brand-practice-filter-actions .filter-chips{flex-basis:100%}.brand-practice-filter-actions>button{flex:1}
  .vodafone-practice-detail-dialog,.vodafone-mapping-dialog,.vodafone-mappings-dialog{width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;border-radius:0;padding:calc(24px + env(safe-area-inset-top)) 14px calc(20px + env(safe-area-inset-bottom))}.vodafone-practice-identifiers{grid-template-columns:1fr 1fr}.vodafone-practice-card-head{flex-direction:column}.vodafone-practice-card-head>div:last-child{justify-items:start}.vodafone-mapping-dialog .form-grid{grid-template-columns:1fr}.vodafone-mapping-dialog .form-grid .wide{grid-column:auto}.vodafone-mapping-row{align-items:flex-start;flex-direction:column}
}

/* r37 · ritmo verticale e margine inferiore dei box Produzione Vodafone. */
#vodafoneProductionPanel{
  display:grid;
  gap:18px;
}
#vodafoneProductionPanel>.vodafone-lines-panel,
#vodafoneProductionPanel>.vodafone-contest-panel{
  margin-top:0;
}
.vodafone-contest-body,
.vodafone-panel-body{
  padding:12px 14px 14px;
}
.vodafone-contest-body>.source-note{
  display:block;
  margin:0;
}
.vodafone-contest-body>.vodafone-contest-list{
  margin-top:12px;
}
.vodafone-panel-body{
  display:grid;
  align-content:start;
  gap:8px;
}
.vodafone-panel-body>.brand-anomaly,
.vodafone-panel-body>.history-row{
  margin:0;
}
.vodafone-panel-body>.empty-inline{
  padding:16px 12px;
}
@media(max-width:820px){
  #vodafoneProductionPanel{gap:14px}
  .vodafone-contest-body,.vodafone-panel-body{padding:10px 10px 12px}
}

/* r38 · annullamento turni, duplicazione dipendenti e riepilogo incassi. */
.planning-card-state.cancelled{background:#f6dfe1;color:#982f37}.planning-mobile-assignment.cancelled{opacity:.62;text-decoration:line-through}.planner-shift.cancelled{opacity:.62;text-decoration:none;background:#f5e7e8;color:#8f343b}.planner-shift.cancelled strong{text-decoration:none}.duplicate-source-summary{display:grid;gap:5px;margin:0 0 18px;padding:14px 16px;border:1px solid #c9dceb;border-radius:12px;background:#f3f9fd}.duplicate-source-summary strong{color:var(--navy)}.duplicate-source-summary span{font-weight:750}.duplicate-source-summary small{color:var(--muted)}
.daily-receipts-panel{margin-bottom:24px}.daily-receipts-panel .panel-head{align-items:flex-start}.daily-report-state{display:inline-flex;align-items:center;padding:7px 11px;border-radius:999px;background:#e8f3fb;color:#285e84;font-size:.875rem;font-weight:850;white-space:nowrap}.daily-report-state.loading{background:#fff2d7;color:#845b00}.daily-receipts-toolbar{align-items:flex-end;flex-wrap:wrap;margin:16px 0}.daily-receipts-toolbar label{display:grid;gap:5px;color:var(--muted);font-size:.875rem;font-weight:850;text-transform:uppercase}.daily-receipts-toolbar input,.daily-receipts-toolbar select{min-width:180px}.daily-receipts-content{display:grid;gap:18px}.daily-company-report{min-width:0}.daily-company-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 8px}.daily-company-head h4{margin:0;color:var(--navy);font-size:16px}.daily-company-head span{color:var(--muted);font-size:.875rem;font-weight:750}.daily-receipts-table{min-width:1500px;font-variant-numeric:tabular-nums}.daily-receipts-table th{white-space:normal;line-height:1.2}.daily-total-row{background:#eaf2f8}.daily-total-row td{border-top:2px solid #9fb8cc}.daily-report-archive{margin-top:18px;border-top:1px solid var(--line);padding-top:14px}.daily-report-archive>summary{cursor:pointer;color:var(--navy);font-weight:850}.daily-report-archive-list{display:grid;gap:8px;margin-top:12px}.daily-report-archive-list article,.notification-rule-list article{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:11px 13px;border:1px solid var(--line);border-radius:11px;background:#fff}.daily-report-archive-list article>div:first-child,.notification-rule-list article>div{display:grid;gap:3px}.daily-report-archive-list small,.notification-rule-list small{color:var(--muted)}
.notification-rules-panel{margin-top:22px}.notification-rule-form{min-width:0;display:grid;grid-template-columns:repeat(3,minmax(180px,1fr)) auto;gap:12px;align-items:end}.notification-rule-form label{display:grid;gap:6px;font-size:.875rem;font-weight:800;color:var(--muted)}.notification-rule-list{display:grid;gap:8px;margin-top:14px}.notification-rule-list article.inactive{opacity:.65}.mini-btn.danger{border-color:#efc7ca;color:#a1343c}.mini-btn.success{border-color:#b9dfc8;color:#187144}.mini-actions{flex-wrap:wrap}

@media(max-width:820px){.daily-receipts-panel{padding:15px}.daily-receipts-toolbar{display:grid;grid-template-columns:1fr 1fr}.daily-receipts-toolbar label,.daily-receipts-toolbar input,.daily-receipts-toolbar select,.daily-receipts-toolbar button{width:100%;min-width:0}.daily-receipts-toolbar button{min-height:42px}.notification-rule-form{grid-template-columns:1fr}.daily-report-archive-list article,.notification-rule-list article{align-items:flex-start;flex-direction:column}.daily-report-archive-list .mini-actions{width:100%}.daily-report-archive-list .mini-actions button{flex:1}.duplicate-source-summary{margin-right:0}.planning-mobile-assignment.cancelled{background:#f5e7e8;color:#8f343b}}

@media print{body *{visibility:hidden}#dailyReceiptsPanel,#dailyReceiptsPanel *{visibility:visible}#dailyReceiptsPanel{position:absolute;inset:0;width:100%;margin:0;padding:0;box-shadow:none;border:0}.daily-receipts-toolbar,.daily-report-archive,.daily-report-state{display:none!important}.daily-receipts-table{min-width:0;font-size:7pt}.daily-receipts-table th,.daily-receipts-table td{padding:4px}.daily-company-report{break-after:page}.daily-company-report:last-child{break-after:auto}@page{size:A4 landscape;margin:8mm}}

/* r39 · spazio desktop e quadratura della consegna contanti al CEO. */
@media(min-width:1200px){main{max-width:1940px}}
.daily-receipts-panel>.daily-receipts-toolbar{margin:20px 24px 16px}.daily-receipts-panel>#dailyReceiptsKpis,.daily-receipts-panel>.daily-receipts-content,.daily-receipts-panel>.daily-report-archive{margin-left:24px;margin-right:24px}.daily-receipts-panel>.daily-report-archive{margin-bottom:22px}.daily-receipts-panel .panel-head{padding:21px 24px}.daily-receipts-table{min-width:1660px}.daily-receipts-table th,.daily-receipts-table td{padding:12px 16px}.daily-receipts-table th:nth-child(1),.daily-receipts-table td:nth-child(1){position:sticky;left:0;z-index:2;min-width:112px;background:#fff}.daily-receipts-table th:nth-child(2),.daily-receipts-table td:nth-child(2){position:sticky;left:112px;z-index:2;min-width:250px;background:#fff;box-shadow:5px 0 8px rgba(20,47,75,.05)}.daily-receipts-table thead th:nth-child(1),.daily-receipts-table thead th:nth-child(2){z-index:4;background:#f9fbfc}.daily-receipts-table .daily-total-row td:nth-child(1),.daily-receipts-table .daily-total-row td:nth-child(2){background:#eaf2f8}
.daily-mobile-scroll-hint{display:none}
.daily-handover{margin:26px 24px 0;padding:22px;border:1px solid #cddce8;border-radius:16px;background:linear-gradient(180deg,#f8fbfd 0,#f3f7fa 100%)}.daily-handover-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.daily-handover-head h3{margin:4px 0 5px;color:var(--navy);font-size:20px}.daily-handover-head p:last-child{margin:0;color:var(--muted);font-size:.875rem}.daily-handover-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.daily-handover-kpis{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));gap:10px;margin:18px 0}.daily-handover-kpi{display:grid;gap:4px;padding:14px 15px;border:1px solid #dce6ed;border-radius:12px;background:#fff}.daily-handover-kpi small{color:var(--muted);font-size:.875rem;font-weight:800;text-transform:uppercase}.daily-handover-kpi strong{color:var(--navy);font-size:22px;font-variant-numeric:tabular-nums}.daily-handover-kpi span{color:var(--muted);font-size:.875rem}.daily-handover-kpi.warning{border-color:#ead6a3;background:#fffaf0}.daily-handover-kpi.warning strong{color:#865e00}.daily-handover-kpi.positive{border-color:#bfdfcc;background:#f2faf5}.daily-handover-kpi.positive strong{color:var(--green)}.daily-handover-kpi.total{border-color:#9fc4df;background:#eaf4fb}.daily-handover-kpi.total strong{color:#174d76}.daily-handover-content{display:grid;gap:14px}.daily-handover-company{padding:16px;border:1px solid #d9e3ea;border-radius:13px;background:#fff}.daily-handover-company-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.daily-handover-company-head h4{margin:0 0 4px;color:var(--navy);font-size:16px}.daily-handover-company-head small{color:var(--muted)}.daily-handover-company-total{color:#174d76;font-size:24px;font-variant-numeric:tabular-nums}.daily-handover-formula{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:13px 0;padding:10px 12px;border-radius:10px;background:#f4f7f9;color:#526a7c;font-size:.875rem;font-variant-numeric:tabular-nums}.daily-handover-formula i{color:#8798a6;font-style:normal;font-weight:900}.daily-handover-formula b{color:var(--navy);font-size:15px}.daily-handover-entry-list{display:grid;gap:7px}.daily-handover-entry{display:grid;grid-template-columns:145px minmax(240px,1fr) 115px auto;gap:12px;align-items:center;padding:10px 12px;border:1px solid #e1e8ed;border-radius:10px;background:#fff}.daily-handover-entry-kind{color:#526a7c;font-size:.875rem;font-weight:850;text-transform:uppercase}.daily-handover-entry>div:nth-child(2){min-width:0}.daily-handover-entry strong,.daily-handover-entry small{display:block}.daily-handover-entry strong{color:var(--navy);font-size:.875rem}.daily-handover-entry small{margin-top:3px;overflow-wrap:anywhere;color:var(--muted);font-size:.875rem}.daily-handover-entry>b{text-align:right;font-size:.875rem;font-variant-numeric:tabular-nums}.daily-handover-entry>b.minus{color:#9b3d42}.daily-handover-entry>b.plus{color:var(--green)}.daily-handover-entry.unreceived{border-left:4px solid #d9a234}.daily-handover-entry.expense{border-left:4px solid #b45c61}.daily-handover-entry.arrears{border-left:4px solid #4d9a6e}.daily-handover-empty{padding:13px;border:1px dashed #cfdbe4;border-radius:10px;color:var(--muted);font-size:.875rem;text-align:center}.daily-pending-prior{display:grid;grid-template-columns:minmax(210px,.45fr) 1.55fr;gap:18px;margin-top:16px;padding:17px;border:1px solid #ead39e;border-radius:13px;background:#fffaf0}.daily-pending-prior h4{margin:4px 0 5px;color:#745400}.daily-pending-prior p:last-child{margin:0;color:#786a4b;font-size:.875rem;line-height:1.4}.cash-handover-dialog{width:min(780px,calc(100vw - 28px))}.cash-handover-dialog form{min-width:0;padding:28px;position:relative}.cash-handover-dialog label{display:grid;gap:6px;font-size:.875rem;font-weight:750}.cash-handover-dialog label small{color:var(--muted);font-size:.875rem;font-weight:600}.cash-handover-formula-note{margin-top:14px;padding:10px 12px;border-radius:9px;background:#eef6fb;color:#315d7e;font-size:.875rem}.cash-handover-settle-summary{display:grid;gap:4px;margin:14px 0;padding:14px;border:1px solid #d8e4ec;border-radius:11px;background:#f6f9fb}.cash-handover-settle-summary strong{color:var(--navy);font-size:16px}.cash-handover-settle-summary span{color:var(--muted);font-size:.875rem}.cash-handover-dialog>form>label{margin:14px 0}
@media(max-width:1280px){.daily-handover-kpis{grid-template-columns:repeat(3,minmax(150px,1fr))}.daily-handover-entry{grid-template-columns:125px minmax(220px,1fr) 105px auto}.daily-pending-prior{grid-template-columns:1fr}}
@media(max-width:820px){.daily-receipts-panel{padding:0}.daily-receipts-panel>.daily-receipts-toolbar{margin:16px 14px}.daily-receipts-panel>#dailyReceiptsKpis,.daily-receipts-panel>.daily-receipts-content,.daily-receipts-panel>.daily-report-archive{margin-left:14px;margin-right:14px}.daily-receipts-panel .panel-head{padding:17px 15px}.daily-mobile-scroll-hint{display:block;margin:0 0 7px;padding:7px 9px;border-radius:8px;background:#eef6fb;color:#315d7e;font-size:.875rem;font-weight:800}.daily-receipts-scroll{overflow-x:auto;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}.daily-receipts-table th:nth-child(1),.daily-receipts-table td:nth-child(1),.daily-receipts-table th:nth-child(2),.daily-receipts-table td:nth-child(2){position:static;left:auto;z-index:auto}.daily-receipts-table th:nth-child(2),.daily-receipts-table td:nth-child(2){box-shadow:none}.daily-handover{margin:20px 14px 0;padding:15px}.daily-handover-head{flex-direction:column}.daily-handover-actions{width:100%;justify-content:flex-start}.daily-handover-actions button{flex:1}.daily-handover-kpis{grid-template-columns:1fr 1fr}.daily-handover-kpi.total{grid-column:1/-1}.daily-handover-entry{grid-template-columns:1fr auto}.daily-handover-entry-kind{grid-column:1/-1}.daily-handover-entry>.mini-actions{grid-column:1/-1}.daily-handover-entry>.mini-actions button{flex:1}.cash-handover-dialog form{padding:23px 16px}.cash-handover-dialog .form-grid{grid-template-columns:1fr}.cash-handover-dialog .form-grid .wide{grid-column:auto}}
@media(max-width:500px){.daily-handover-kpis{grid-template-columns:1fr}.daily-handover-kpi.total{grid-column:auto}.daily-handover-company-head{align-items:flex-start;flex-direction:column}.daily-handover-company-total{font-size:21px}.daily-handover-formula{gap:6px}.daily-handover-entry{grid-template-columns:1fr}.daily-handover-entry>b{text-align:left}}
@media print{.daily-handover-actions,.daily-handover-entry .mini-actions{display:none!important}.daily-receipts-table th:nth-child(1),.daily-receipts-table td:nth-child(1),.daily-receipts-table th:nth-child(2),.daily-receipts-table td:nth-child(2){position:static}.daily-handover{margin:8mm 0 0;padding:4mm;break-before:page}.daily-handover-kpis{grid-template-columns:repeat(5,1fr)}.daily-handover-entry{grid-template-columns:28mm 1fr 25mm}}

/* r40 · chiusure multi-giorno, consegne CEO e versamenti bancari. */
.daily-receipts-toolbar .cash-close-period{background:#1e6d49;border-color:#1e6d49}.daily-receipts-toolbar .cash-close-period:disabled{opacity:.45}.daily-closed-dates{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 24px 16px;padding:12px 14px;border:1px solid #e8cf91;border-radius:11px;background:#fff8e8;color:#775400}.daily-closed-dates strong{font-size:.875rem}.daily-closed-dates span{font-size:.875rem;text-align:right}.cash-closure-archive{border-top:0;padding-top:0}.cash-closure-list-item>div:first-child>span{display:block;margin-top:4px;color:#315d7e;font-size:.875rem;font-weight:750}.cash-closure-list-item.reopened{border-color:#dfc7c9;background:#fcf5f5}.cash-closure-list-item.revalidation{border-color:#e4c36f;background:#fffaf0}.cash-closure-revalidation-state{display:block;width:max-content;max-width:100%;margin-top:7px;padding:4px 8px;border-radius:8px;background:#fff0ca;color:#765300;font-size:.875rem;font-style:normal;font-weight:850}.cash-closure-dialog{width:min(1180px,calc(100vw - 30px))}.cash-closure-dialog form{position:relative;padding:30px}.cash-closure-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:16px 0;padding:14px 16px;border:1px solid #c9dceb;border-radius:12px;background:#f3f9fd}.cash-closure-head strong{color:var(--navy);font-size:17px}.cash-closure-head span{color:var(--muted);font-size:.875rem}.cash-closure-date-section,.cash-closure-allocations{margin-top:18px;padding:16px;border:1px solid #d9e3ea;border-radius:13px;background:#f8fafc}.cash-closure-section-title{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}.cash-closure-section-title>div{display:grid;gap:3px}.cash-closure-section-title strong{color:var(--navy);font-size:14px}.cash-closure-section-title small{color:var(--muted);font-size:.875rem}.cash-closure-section-title>span{color:#315d7e;font-size:.875rem;font-weight:850}.cash-closure-date-choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:9px}.cash-closure-date-choices label{display:flex;align-items:center;gap:10px;padding:11px 12px;border:1px solid #d9e3ea;border-radius:10px;background:#fff;cursor:pointer}.cash-closure-date-choices label:has(input:checked){border-color:#8db9d7;background:#eef7fd}.cash-closure-date-choices input{width:17px;height:17px}.cash-closure-date-choices span{display:grid;gap:2px}.cash-closure-date-choices strong{color:var(--navy);font-size:.875rem}.cash-closure-date-choices small{color:var(--muted);font-size:.875rem}.cash-closure-totals{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:10px;margin:14px 0}.cash-closure-totals>div{display:grid;gap:4px;padding:13px 14px;border:1px solid #dce6ed;border-radius:11px;background:#fff}.cash-closure-totals small{color:var(--muted);font-size:.875rem;font-weight:850;text-transform:uppercase}.cash-closure-totals strong{color:var(--navy);font-size:17px;font-variant-numeric:tabular-nums}.cash-closure-allocation-rows{display:grid;gap:12px}.cash-closure-allocation-row{position:relative;padding:14px;border:1px solid #d9e3ea;border-radius:12px;background:#fff}.cash-allocation-grid{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:10px}.cash-allocation-grid label{display:grid;gap:5px;color:var(--muted);font-size:.875rem;font-weight:800}.cash-allocation-grid .wide{grid-column:span 2}.cash-allocation-remove{position:absolute;right:14px;bottom:14px}.cash-closure-balance{display:flex;align-items:center;justify-content:flex-end;gap:18px;margin-top:14px;padding:13px 15px;border-radius:11px;background:#edf4f8;color:#315d7e;font-size:.875rem}.cash-closure-balance strong{margin-left:5px;color:var(--navy);font-size:15px;font-variant-numeric:tabular-nums}.cash-closure-balance .warning strong{color:#8b6100}.cash-closure-balance .negative strong{color:#a1353d}.cash-closure-detail-dialog{width:min(1040px,calc(100vw - 30px));padding:30px}.cash-closure-detail-dialog>#cashClosureDetailHead h2{margin:4px 0;color:var(--navy)}.cash-closure-detail-dialog>#cashClosureDetailHead>p:last-child{color:var(--muted)}.cash-closure-detail-allocations{display:grid;gap:10px;margin:18px 0}.cash-closure-detail-allocation{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px 14px;border:1px solid #d9e3ea;border-left:4px solid #d9a234;border-radius:11px;background:#fff}.cash-closure-detail-allocation.completed{border-left-color:#4d9a6e}.cash-closure-detail-allocation>div:first-child{display:grid;gap:4px;min-width:0}.cash-closure-detail-allocation strong{color:var(--navy);font-size:.875rem}.cash-closure-detail-allocation small,.cash-closure-detail-allocation p{margin:0;color:var(--muted);font-size:.875rem;overflow-wrap:anywhere}.cash-closure-history{margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}.cash-closure-history h3{color:var(--navy);font-size:14px}.cash-closure-history>div{display:grid;gap:7px}.cash-closure-history article{display:grid;grid-template-columns:1fr auto;gap:3px 15px;padding:9px 11px;border-radius:9px;background:#f5f8fa}.cash-closure-history article strong{color:var(--navy);font-size:.875rem}.cash-closure-history article small{color:var(--muted);font-size:.875rem}.cash-closure-history article span{grid-column:1/-1;color:#526a7c;font-size:.875rem}.info-banner.warning{border-color:#e8cf91;background:#fff8e8;color:#775400}.info-banner.warning span{display:block;margin-top:3px}.pill.completed{background:#dff2e6;color:#17613b}.pill.pending{background:#fff0ca;color:#765300}
@media(max-width:1080px){.cash-allocation-grid{grid-template-columns:repeat(2,minmax(150px,1fr))}.cash-closure-totals{grid-template-columns:repeat(2,minmax(140px,1fr))}}
@media(max-width:820px){.daily-closed-dates{align-items:flex-start;flex-direction:column;margin:0 14px 14px}.daily-closed-dates span{text-align:left}.cash-closure-dialog form,.cash-closure-detail-dialog{padding:23px 16px}.cash-closure-head,.cash-closure-section-title{align-items:flex-start;flex-direction:column}.cash-closure-date-choices,.cash-allocation-grid,.cash-closure-totals{grid-template-columns:1fr}.cash-allocation-grid .wide{grid-column:auto}.cash-allocation-remove{position:static;margin-top:10px;width:100%}.cash-closure-balance{align-items:flex-start;flex-direction:column;gap:8px}.cash-closure-detail-allocation{align-items:flex-start;flex-direction:column}.cash-closure-detail-allocation .mini-actions{width:100%}.cash-closure-detail-allocation .mini-actions button{flex:1}}

/* r41 · chiusure granulari per giornata e punto vendita. */
.cash-closure-date-choices{grid-template-columns:1fr;gap:13px}.cash-closure-day-card{overflow:hidden;border:1px solid #cadbe7;border-radius:13px;background:#fff}.cash-closure-day-card>header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;background:#edf5fa;border-bottom:1px solid #d8e5ed}.cash-closure-day-card>header>label{display:flex;align-items:center;gap:10px;padding:0;border:0;background:transparent;cursor:pointer}.cash-closure-day-card>header>label:has(input:checked){border:0;background:transparent}.cash-closure-day-card>header span{display:grid;gap:2px}.cash-closure-day-card>header strong{font-size:.875rem}.cash-closure-day-card>header small{font-size:.875rem}.cash-closure-day-card>header b{color:#174d76;font-size:14px;font-variant-numeric:tabular-nums}.cash-closure-store-list{display:grid}.cash-closure-store-row{display:grid;grid-template-columns:28px minmax(260px,1fr) 125px minmax(170px,210px);gap:13px;align-items:center;padding:12px 14px;border-bottom:1px solid #e4ebf0;background:#fff}.cash-closure-store-row:last-child{border-bottom:0}.cash-closure-store-row:has(.cash-closure-unit-check:checked){background:#fbfdff}.cash-closure-store-row.locked{background:#f7f8f9;opacity:.72}.cash-closure-store-row label,.cash-closure-store-row label:has(input:checked){padding:0;border:0;border-radius:0;background:transparent}.cash-closure-unit-selector{display:flex!important;justify-content:center;cursor:pointer}.cash-closure-store-identity{display:grid;gap:3px;min-width:0}.cash-closure-store-identity strong{color:var(--navy);font-size:.875rem}.cash-closure-store-identity small{color:var(--muted);font-size:.875rem;line-height:1.35;overflow-wrap:anywhere}.cash-closure-store-amount{display:grid;gap:3px;text-align:right}.cash-closure-store-amount small,.cash-closure-store-status{color:var(--muted);font-size:.875rem;font-weight:800}.cash-closure-store-amount strong{color:var(--navy);font-size:15px;font-variant-numeric:tabular-nums}.cash-closure-store-status{display:grid!important;gap:4px;cursor:default!important}.cash-closure-store-status select{min-width:0;width:100%;font-size:.875rem}.cash-closure-detail-units{margin:18px 0}.cash-closure-detail-units h3{margin:0 0 9px;color:var(--navy);font-size:14px}.cash-closure-detail-units>div{display:grid;gap:7px}.cash-closure-detail-unit{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:11px 13px;border:1px solid #dce6ed;border-left:4px solid #4d9a6e;border-radius:10px;background:#fff}.cash-closure-detail-unit.unreceived{border-left-color:#d9a234;background:#fffaf0}.cash-closure-detail-unit>div{display:grid;gap:3px}.cash-closure-detail-unit>div:last-child{justify-items:end}.cash-closure-detail-unit strong{color:var(--navy);font-size:.875rem}.cash-closure-detail-unit small{color:var(--muted);font-size:.875rem}.cash-closure-detail-unit b{color:var(--navy);font-size:.875rem;font-variant-numeric:tabular-nums}
@media(max-width:900px){.cash-closure-store-row{grid-template-columns:28px minmax(210px,1fr) 110px}.cash-closure-store-status,.cash-closure-store-row>.pill{grid-column:2/-1}}
@media(max-width:620px){.cash-closure-day-card>header{align-items:flex-start}.cash-closure-store-row{grid-template-columns:28px 1fr;gap:9px 11px}.cash-closure-store-amount{grid-column:2;text-align:left}.cash-closure-store-status,.cash-closure-store-row>.pill{grid-column:2}.cash-closure-detail-unit{align-items:flex-start;flex-direction:column}.cash-closure-detail-unit>div:last-child{justify-items:start}}

/* r43 · archivio locale e replica Google Drive delle chiusure incassi. */

/* r44 · metadati documento UTF-8 codificati in modo sicuro per il trasporto HTTP. */
.cash-closure-archive-state{display:block;width:max-content;max-width:100%;margin-top:7px;padding:4px 8px;border-radius:999px;font-size:.875rem;font-style:normal;font-weight:800}.cash-closure-archive-state.success{background:#dff2e6;color:#17613b}.cash-closure-archive-state.warning{background:#fff0ca;color:#765300}.cash-closure-archive-state.info{background:#e6f1f8;color:#315b7c}.cash-closure-archive-banner{display:grid;grid-template-columns:1fr auto;gap:3px 14px;align-items:center}.cash-closure-archive-banner strong{font-size:.875rem}.cash-closure-archive-banner span{font-size:.875rem}.cash-closure-archive-banner .mini-btn{grid-column:2;grid-row:1/3}.info-banner.success{border-color:#b9ddc7;background:#edf8f1;color:#17613b}.info-banner.info{border-color:#d6e7f5;background:#edf5fc;color:#315b7c}
@media(max-width:620px){.cash-closure-archive-state{width:100%;border-radius:8px}.cash-closure-archive-banner{grid-template-columns:1fr}.cash-closure-archive-banner .mini-btn{grid-column:1;grid-row:auto;margin-top:7px;width:100%}}

/* r45 · acquisizione, anteprima e quadratura Mooney per Round 5G. */
.mooney-period-label{display:grid;gap:5px;color:var(--muted);font-size:.875rem;font-weight:800;text-transform:uppercase}.mooney-period-label input{min-width:150px}.mooney-identity{display:grid;grid-template-columns:repeat(3,minmax(150px,220px)) 1fr;gap:10px;align-items:stretch;margin-bottom:18px}.mooney-identity>div,.mooney-identity>span{display:grid;gap:4px;padding:12px 14px;border:1px solid #dbe5ec;border-radius:11px;background:#fff}.mooney-identity small{color:var(--muted);font-size:.875rem;font-weight:850;text-transform:uppercase}.mooney-identity strong{color:var(--navy);font-size:.875rem}.mooney-identity>span{align-content:center;border-color:#c8ddeb;background:#edf6fc;color:#315d7e;font-size:.875rem;font-weight:750}.mooney-bordero-panel,.mooney-daily-panel{margin-top:22px;overflow:hidden}.mooney-bordero-list{display:grid;gap:12px;padding:0 22px 22px}.mooney-bordero-card{overflow:hidden;border:1px solid #d6e2e9;border-left:5px solid #d2a43b;border-radius:13px;background:#fff}.mooney-bordero-card.balanced{border-left-color:#3c9868}.mooney-bordero-card.incomplete{border-left-color:#d2a43b}.mooney-bordero-card.attention{border-left-color:#b9575e}.mooney-bordero-card>summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px 17px;cursor:pointer;list-style:none}.mooney-bordero-card>summary::-webkit-details-marker{display:none}.mooney-bordero-card>summary>span{display:flex;align-items:center;gap:12px}.mooney-bordero-card>summary>span:first-child{display:grid;gap:4px}.mooney-bordero-card>summary small{color:var(--muted);font-size:.875rem;font-weight:800;text-transform:uppercase}.mooney-bordero-card>summary strong{color:var(--navy);font-size:15px}.mooney-bordero-card>summary b{min-width:110px;color:var(--navy);font-size:17px;text-align:right;font-variant-numeric:tabular-nums}.mooney-bordero-body{display:grid;gap:14px;padding:16px 17px;border-top:1px solid #e1e9ee;background:#f9fbfc}.mooney-reconciliation-grid{display:grid;grid-template-columns:repeat(4,minmax(165px,1fr));gap:9px}.mooney-reconciliation-grid>div{display:grid;gap:4px;padding:12px 13px;border:1px solid #dde7ed;border-radius:10px;background:#fff}.mooney-reconciliation-grid small{color:var(--muted);font-size:.875rem;font-weight:850;text-transform:uppercase}.mooney-reconciliation-grid strong{color:var(--navy);font-size:18px;font-variant-numeric:tabular-nums}.mooney-reconciliation-grid span{color:#607585;font-size:.875rem}.mooney-day-strip{display:flex;gap:6px;overflow-x:auto;padding-bottom:3px}.mooney-day-strip>span{display:grid;flex:0 0 72px;gap:2px;padding:8px;border:1px solid #d7e3ea;border-radius:9px;background:#fff;text-align:center}.mooney-day-strip b{color:var(--navy);font-size:.875rem}.mooney-day-strip small{color:var(--muted);font-size:.875rem}.mooney-day-strip .registered,.mooney-day-strip .closed{border-color:#b9ddc7;background:#eef8f2}.mooney-day-strip .sunday{border-color:#d6e4ee;background:#f1f6f9}.mooney-day-strip .missing{border-color:#ead29a;background:#fff8e8}.mooney-bordero-actions{display:flex;align-items:center;justify-content:space-between;gap:15px;color:var(--muted);font-size:.875rem}.mooney-daily-panel>.table-card{border:0;border-radius:0}.mooney-daily-table{min-width:1040px}.mooney-daily-table .sub.attention{color:#a13b43}.pill.balanced,.pill.registered{background:#dff2e6;color:#17613b}.pill.incomplete{background:#fff0ca;color:#765300}.pill.attention{background:#f6dfe1;color:#8e333a}.pill.closed,.pill.sunday{background:#e6f0f6;color:#315b7c}.mooney-history{margin-top:18px;border:1px solid #dbe5eb;border-radius:12px;background:#fff}.mooney-history>summary{padding:13px 15px;color:var(--navy);font-size:.875rem;font-weight:800;cursor:pointer}.mooney-history>div{display:grid;gap:1px;padding:0 14px 14px}.mooney-history article{display:grid;grid-template-columns:150px 1fr auto;gap:12px;padding:9px 10px;border-top:1px solid #e6ecef;font-size:.875rem}.mooney-history article span,.mooney-history article small{color:var(--muted)}.mooney-history article strong{color:var(--navy)}.mooney-preview-dialog{width:min(1320px,calc(100vw - 28px));max-height:94vh}.mooney-preview-dialog form,.mooney-closed-dialog form{position:relative;padding:28px}.mooney-preview-layout{display:grid;grid-template-columns:minmax(400px,1.05fr) minmax(440px,.95fr);gap:20px;margin-top:18px}.mooney-preview-document{overflow:hidden;min-height:640px;border:1px solid #cad9e4;border-radius:12px;background:#edf2f5}.mooney-preview-document iframe{display:block;width:100%;height:72vh;min-height:640px;border:0}.mooney-closed-preview{display:grid;place-content:center;gap:7px;height:100%;min-height:400px;padding:30px;color:#315d7e;text-align:center}.mooney-closed-preview strong{font-size:20px}.mooney-closed-preview span{color:var(--muted);font-size:.875rem}.mooney-preview-fields{max-height:62vh;overflow:auto;padding:2px 5px 2px 0}.mooney-preview-fields .form-grid{grid-template-columns:repeat(2,minmax(160px,1fr))}.mooney-preview-fields label{display:grid;gap:5px;color:var(--muted);font-size:.875rem;font-weight:800}.mooney-preview-fields .wide{grid-column:1/-1}.mooney-preview-warnings{display:grid;gap:6px;margin-bottom:13px}.mooney-preview-warnings div{padding:9px 11px;border:1px solid #e7ca89;border-radius:9px;background:#fff7e5;color:#785400;font-size:.875rem}.mooney-check{display:flex!important;grid-template-columns:auto 1fr;align-items:center;flex-direction:row!important;padding:11px;border:1px solid #d8e4ec;border-radius:9px;background:#f7fafc}.mooney-check input{width:17px;height:17px}.mooney-revision-check{display:flex;align-items:flex-start;gap:10px;margin-top:14px;padding:12px;border:1px solid #e5c778;border-radius:10px;background:#fff8e7;color:#745200;cursor:pointer}.mooney-revision-check input{width:18px;height:18px;margin-top:1px}.mooney-revision-check span{display:grid;gap:3px}.mooney-revision-check strong{font-size:.875rem}.mooney-revision-check small{font-size:.875rem}.mooney-closed-dialog{width:min(680px,calc(100vw - 28px))}
@media(max-width:1080px){.mooney-identity{grid-template-columns:repeat(3,1fr)}.mooney-identity>span{grid-column:1/-1}.mooney-reconciliation-grid{grid-template-columns:repeat(2,1fr)}.mooney-preview-layout{grid-template-columns:1fr}.mooney-preview-document,.mooney-preview-document iframe{min-height:480px;height:58vh}.mooney-preview-fields{max-height:none}}
@media(max-width:700px){#view-mooney .section-actions{display:grid;width:100%}#view-mooney .section-actions>*{width:100%}.mooney-identity,.mooney-reconciliation-grid{grid-template-columns:1fr}.mooney-identity>span{grid-column:auto}.mooney-bordero-list{padding:0 13px 14px}.mooney-bordero-card>summary,.mooney-bordero-card>summary>span{align-items:flex-start;flex-direction:column}.mooney-bordero-card>summary>span:last-child{width:100%;flex-direction:row}.mooney-bordero-card>summary b{margin-left:auto}.mooney-bordero-actions{align-items:flex-start;flex-direction:column}.mooney-bordero-actions .mini-btn{width:100%;text-align:center}.mooney-history article{grid-template-columns:1fr}.mooney-preview-dialog form,.mooney-closed-dialog form{padding:22px 15px}.mooney-preview-layout{display:block}.mooney-preview-document{margin-bottom:16px;min-height:360px}.mooney-preview-document iframe{height:48vh;min-height:360px}.mooney-preview-fields .form-grid{grid-template-columns:1fr}.mooney-preview-fields .wide{grid-column:auto}}

/* r118 · riepilogo giornaliero Mooney e stampa per categoria */
.mooney-daily-head{align-items:center}.mooney-daily-head>.secondary{flex:0 0 auto}.mooney-daily-category-kpis{margin:0;padding:0 22px 20px}.mooney-daily-category-kpis .kpi-card{min-height:92px}.mooney-daily-table{min-width:1480px}.mooney-daily-table th:nth-child(n+2):nth-child(-n+8),.mooney-daily-table td:nth-child(n+2):nth-child(-n+8){text-align:right}.mooney-daily-table td{vertical-align:top}.mooney-daily-table td strong{color:var(--navy)}
@media(max-width:700px){.mooney-daily-head{align-items:stretch;flex-direction:column}.mooney-daily-head>.secondary{width:100%}.mooney-daily-category-kpis{grid-template-columns:1fr 1fr;padding:0 13px 14px}.mooney-daily-category-kpis .kpi-card{min-height:84px}}

/* r46 · numeri ricarica, scarichi/consegne e anteprima PDF integrata. */
.mooney-tabs{display:flex;gap:7px;margin:0 0 18px;padding:5px;border:1px solid #d7e3eb;border-radius:12px;background:#eef3f6;width:max-content;max-width:100%}.mooney-tabs button{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border:0;border-radius:9px;background:transparent;color:#536b7d;font-size:.875rem;font-weight:850;cursor:pointer}.mooney-tabs button.active{background:#fff;color:var(--navy);box-shadow:0 2px 8px rgba(23,58,86,.1)}.mooney-tabs button span{min-width:22px;padding:2px 6px;border-radius:999px;background:#dbe8f1;color:#315d7e;font-size:.875rem;text-align:center}.mooney-numbers-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin:4px 0 16px}.mooney-numbers-head h3{margin:3px 0 5px;color:var(--navy);font-size:21px}.mooney-numbers-head .section-actions{display:flex;flex-wrap:wrap;justify-content:flex-end}.mooney-recharge-filters{margin:18px 0}.mooney-recharge-filters input{min-width:300px;flex:1}.mooney-recharge-panel{margin-top:20px;overflow:hidden}.mooney-recharge-panel>.table-card{border:0;border-radius:0}.mooney-recharge-table{min-width:1160px}.mooney-recharge-table.operations{min-width:1230px}.mooney-recharge-table td{vertical-align:middle}.mooney-msisdn strong{display:block;color:var(--navy);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.875rem;letter-spacing:.02em}.mooney-msisdn small{display:block;margin-top:3px;color:var(--muted);font-size:.875rem}.pill.verified{background:#dff2e6;color:#17613b}.pill.receipted{background:#e3eef9;color:#285d86}.mooney-recharge-dialog{width:min(820px,calc(100vw - 28px))}.mooney-recharge-dialog form{position:relative;padding:28px}.mooney-recharge-dialog .form-grid{margin-top:17px}.mooney-recharge-dialog label{display:grid;gap:5px;color:var(--muted);font-size:.875rem;font-weight:800}.mooney-document-dialog{width:min(1180px,calc(100vw - 24px));max-height:96vh;padding:0}.mooney-document-shell{position:relative;padding:22px;background:#fff}.mooney-document-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 42px 15px 0}.mooney-document-head h2{margin:3px 0 0;color:var(--navy);font-size:19px}.mooney-document-shell iframe{display:block;width:100%;height:78vh;min-height:560px;border:1px solid #cbd9e3;border-radius:11px;background:#eef3f6}.mooney-document-head .secondary{text-decoration:none}.mooney-document-dialog::backdrop{background:rgba(12,31,47,.68)}#mooneyRechargeImportResult{margin:0 0 16px}#mooneyRechargeImportResult .sub{margin-top:5px;color:inherit}
@media(max-width:900px){.mooney-numbers-head{flex-direction:column}.mooney-numbers-head .section-actions{width:100%;justify-content:flex-start}.mooney-document-shell iframe{height:68vh;min-height:460px}}
@media(max-width:700px){.mooney-tabs{display:grid;grid-template-columns:1fr 1fr;width:100%}.mooney-tabs button{justify-content:center;padding:10px 8px}.mooney-numbers-head .section-actions{display:grid}.mooney-recharge-filters{display:grid}.mooney-recharge-filters input,.mooney-recharge-filters select,.mooney-recharge-filters button{width:100%;min-width:0}.mooney-recharge-dialog form{padding:22px 15px}.mooney-recharge-dialog .form-grid{grid-template-columns:1fr}.mooney-recharge-dialog .wide{grid-column:auto}.mooney-document-shell{padding:18px 10px 10px}.mooney-document-head{align-items:flex-start;flex-direction:column;margin-right:38px}.mooney-document-head .secondary{width:100%;text-align:center}.mooney-document-shell iframe{height:64vh;min-height:380px}}

/* r48 · margini interni e ritmo verticale delle notifiche spese per persona. */
.notification-rules-panel>.panel-head{padding:21px 24px}
.notification-rules-panel>.notification-rule-form{margin:20px 24px 0}
.notification-rules-panel>.notification-rule-list{margin:14px 24px 22px}
@media(max-width:820px){
  .notification-rules-panel>.panel-head{padding:17px 15px}
  .notification-rules-panel>.notification-rule-form{margin:16px 14px 0}
  .notification-rules-panel>.notification-rule-list{margin:12px 14px 16px}
  .notification-rule-form button{width:100%;min-height:42px}
  .notification-rule-list article .mini-btn{width:100%}
}

/* r49 · incassi extra, tagli contanti e consegna CEO congiunta. */
.daily-receipts-toolbar .cash-ceo-combined{background:#315d7e;border-color:#315d7e}
.cash-closure-extras,.cash-denomination-section{margin-top:18px;padding:16px;border:1px solid #d9e3ea;border-radius:13px;background:#f8fafc}
.cash-closure-difference{display:grid;grid-template-columns:minmax(240px,1fr) minmax(260px,1fr);align-items:center;gap:12px 18px;margin-top:12px;padding:14px 16px;border:1px solid #e2bd67;border-radius:12px;background:#fff8e8;color:#775400}.cash-closure-difference.hidden{display:none}.cash-closure-difference>div{display:grid;gap:4px}.cash-closure-difference strong{font-size:.875rem}.cash-closure-difference p{margin:0;font-size:.875rem;line-height:1.45}.cash-closure-difference>label:not(.checkbox){display:grid;gap:5px;font-size:.875rem;font-weight:800}.cash-closure-difference .checkbox{grid-column:1/-1;margin:0;color:#775400}
.cash-closure-authorization{gap:9px;cursor:pointer;user-select:none}.cash-closure-authorization input[type="checkbox"]{-webkit-appearance:checkbox;appearance:auto;flex:0 0 20px;width:20px;height:20px;margin:0;padding:0;border:initial;border-radius:4px;background:initial;accent-color:#176faa;cursor:pointer}.cash-closure-authorization span{line-height:1.3}.cash-closure-authorization:has(input:checked){color:#17613b}
.cash-denomination-section.compact{padding:14px}
.cash-closure-extra-rows{display:grid;gap:10px}
.cash-closure-extra-row{display:grid;grid-template-columns:minmax(140px,.6fr) minmax(260px,1.7fr) minmax(130px,.55fr) auto;gap:10px;align-items:end;padding:12px;border:1px solid #dce5eb;border-radius:11px;background:#fff}
#cashCeoExtraRows .cash-closure-extra-row{grid-template-columns:minmax(170px,.8fr) minmax(140px,.6fr) minmax(240px,1.5fr) minmax(130px,.55fr) auto}
.cash-closure-extra-row label{display:grid;gap:5px;color:var(--muted);font-size:.875rem;font-weight:800}.cash-closure-extra-row input,.cash-closure-extra-row select{width:100%;min-width:0}.cash-extra-remove{min-height:40px}
.cash-denomination-grid{display:grid;grid-template-columns:repeat(8,minmax(90px,1fr));gap:8px}.cash-denomination-grid label{display:grid;grid-template-columns:1fr;gap:4px;padding:10px;border:1px solid #d9e3ea;border-radius:10px;background:#fff;color:var(--muted);font-size:.875rem;font-weight:850;text-align:center}.cash-denomination-grid label span{color:var(--navy);font-size:.875rem}.cash-denomination-grid label input{width:100%;min-width:0;text-align:center;font-variant-numeric:tabular-nums}.cash-denomination-grid label small{font-size:.875rem;font-weight:650}.cash-denomination-grid .cash-denomination-other{border-color:#c8dceb;background:#f3f9fd}
.cash-closure-section-title>span.success,.cash-allocation-breakdown-state.success{color:#17613b}.cash-closure-section-title>span.warning,.cash-allocation-breakdown-state.warning{color:#9a6400}
@media(max-width:820px){.cash-closure-difference{grid-template-columns:1fr}}
.cash-allocation-breakdown{display:grid;gap:8px;margin:12px 88px 0 0;padding-top:12px;border-top:1px solid #e1e8ed}.cash-allocation-breakdown>strong{color:var(--navy);font-size:.875rem}.cash-allocation-breakdown>small{color:var(--muted);font-size:.875rem}.cash-allocation-breakdown-state{font-size:.875rem;font-weight:850;text-align:right}
.cash-breakdown-summary{display:grid;grid-template-columns:auto 1fr auto;gap:8px 14px;align-items:center;padding:12px 14px;border:1px solid #c8dceb;border-left:4px solid #315d7e;border-radius:10px;background:#f3f9fd}.cash-breakdown-summary strong,.cash-breakdown-summary b{color:var(--navy);font-size:.875rem}.cash-breakdown-summary span{color:#526a7c;font-size:.875rem;overflow-wrap:anywhere}.cash-closure-detail-unit.extra{border-left-color:#315d7e;background:#f4f9fc}
.cash-ceo-delivery-list{display:grid;gap:8px;margin:12px 0 16px;padding:14px;border:1px solid #bdd3e2;border-radius:13px;background:#f3f8fb}.cash-ceo-list-head{display:grid;gap:3px;margin-bottom:2px}.cash-ceo-list-head strong{color:var(--navy);font-size:.875rem}.cash-ceo-list-head span{color:var(--muted);font-size:.875rem}.cash-ceo-delivery-card{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px 13px;border:1px solid #d7e3ea;border-radius:10px;background:#fff}.cash-ceo-delivery-card>div:first-child{display:grid;gap:4px}.cash-ceo-delivery-card strong{color:var(--navy);font-size:.875rem}.cash-ceo-delivery-card small{color:var(--muted);font-size:.875rem}
.cash-ceo-list-head.draft{margin-top:8px;padding-top:10px;border-top:1px dashed #d3b46c}.cash-ceo-list-head.draft strong{color:#765300}.cash-ceo-delivery-card.draft{border-color:#e5c778;background:#fff9e9}.cash-ceo-delivery-card.draft strong{color:#6f5108}
.cash-ceo-candidate-list{display:grid;gap:8px}.cash-ceo-candidate{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:12px 14px;border:1px solid #d8e3ea;border-radius:10px;background:#fff;cursor:pointer}.cash-ceo-candidate:has(input:checked){border-color:#8db9d7;background:#eef7fd}.cash-ceo-candidate input{width:18px;height:18px}.cash-ceo-candidate span{display:grid;gap:3px}.cash-ceo-candidate strong{color:var(--navy);font-size:.875rem}.cash-ceo-candidate small{color:var(--muted);font-size:.875rem}.cash-ceo-candidate b{color:var(--navy);font-size:14px;font-variant-numeric:tabular-nums}
.cash-ceo-delivery-totals{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:9px;margin-top:16px}.cash-ceo-delivery-totals>div{display:grid;gap:4px;padding:12px 14px;border:1px solid #d9e3ea;border-radius:11px;background:#fff}.cash-ceo-delivery-totals small{color:var(--muted);font-size:.875rem;font-weight:850;text-transform:uppercase}.cash-ceo-delivery-totals strong{color:var(--navy);font-size:18px}.cash-ceo-delivery-totals span{color:var(--muted);font-size:.875rem}.cash-ceo-delivery-totals .grand-total{border-color:#a9d0b9;background:#eef8f2}.cash-denomination-readonly{display:grid;gap:5px}.cash-denomination-readonly strong{color:var(--navy);font-size:20px}.cash-denomination-readonly span{color:#526a7c;font-size:.875rem;line-height:1.45}.cash-ceo-delivery-dialog{width:min(1240px,calc(100vw - 30px))}
@media(max-width:1080px){.cash-denomination-grid{grid-template-columns:repeat(4,minmax(90px,1fr))}.cash-closure-extra-row,#cashCeoExtraRows .cash-closure-extra-row{grid-template-columns:repeat(2,minmax(160px,1fr))}.cash-extra-description{grid-column:1/-1}.cash-extra-remove{width:100%}}
@media(max-width:820px){.cash-denomination-grid{grid-template-columns:repeat(2,minmax(100px,1fr))}.cash-closure-extra-row,#cashCeoExtraRows .cash-closure-extra-row{grid-template-columns:1fr}.cash-extra-description{grid-column:auto}.cash-allocation-breakdown{margin-right:0}.cash-breakdown-summary{grid-template-columns:1fr}.cash-ceo-delivery-card{align-items:flex-start;flex-direction:column}.cash-ceo-delivery-card .mini-actions{width:100%}.cash-ceo-delivery-card .mini-actions button{flex:1}.cash-ceo-candidate{grid-template-columns:auto 1fr}.cash-ceo-candidate b{grid-column:2}.cash-ceo-delivery-dialog form{padding:23px 16px}}
/* r50 · scansioni Mooney RICOH, OCR di supporto e quadrature controllate. */

/* r52 · margini e ritmo visivo del fascicolo Produzione TIM. */
#brandProductionWorkspace{
  padding:0 6px 10px;
}
.brand-production-main{
  gap:22px;
  margin-bottom:22px;
}
.brand-production-main>.panel>.panel-head{
  padding:20px 22px;
}
.brand-source-panel-body{
  padding:16px 18px 18px;
}
.brand-source-upload{
  gap:10px;
  margin-bottom:14px;
}
.brand-production-main>.panel>.brand-anomaly-list{
  margin:16px 18px 18px;
}
.source-checklist,
.brand-production-main>.panel>.brand-anomaly-list{
  gap:9px;
}
#timProductionPanel{
  display:grid;
  gap:22px;
}
.tim-control-grid{
  gap:22px;
}
.tim-control-grid>.panel>.panel-head{
  padding:20px 22px;
}
.tim-control-grid>.panel>.control-kpis{
  gap:10px;
  padding:16px 18px 18px;
}
.tim-control-grid .control-kpi{
  min-height:82px;
  padding:13px 14px;
}
.brand-history-panel{
  margin-top:20px;
}
.brand-history-panel>summary{
  padding:14px 18px;
}
.brand-history-panel[open]>summary{
  margin-bottom:0;
}
.brand-history-panel>.grid-2{
  gap:20px;
  padding:0 18px 18px;
}
@media(max-width:820px){
  #brandProductionWorkspace{padding:0 0 6px}
  .brand-production-main{gap:14px;margin-bottom:14px}
  .brand-production-main>.panel>.panel-head,
  .tim-control-grid>.panel>.panel-head{padding:17px 15px}
  .brand-source-panel-body{padding:12px 12px 14px}
  .brand-production-main>.panel>.brand-anomaly-list{margin:12px 12px 14px}
  #timProductionPanel,.tim-control-grid{gap:14px}
  .tim-control-grid>.panel>.control-kpis{padding:12px 12px 14px}
  .tim-control-grid .control-kpi{min-height:76px;padding:11px 12px}
  .brand-history-panel{margin-top:14px}
  .brand-history-panel>summary{padding:13px 14px}
  .brand-history-panel>.grid-2{gap:14px;padding:0 14px 14px}
}

/* r53 · WINDTRE agosto, dettaglio anomalie TIM e margini sviluppo TIM. */
.tim-economic-panel>.panel-head{padding:21px 22px}
.tim-economic-panel>#timEconomicStoreTabs{margin:18px 22px 12px;padding:2px 1px 5px}
.tim-economic-panel>#timEconomicSummary{margin:0 22px 12px}
.tim-economic-panel>#timEconomicNotice{margin:0 22px 16px}
.tim-economic-panel>.tim-economic-table{margin:0 22px 22px;border:1px solid var(--line);border-radius:12px}
.wind-economic-assumptions{color:#315d7e;font-weight:850}
.brand-anomaly.verified{border-color:#a9cde4;background:#f3f9fd;opacity:1}
.brand-anomaly.verified .anomaly-icon{background:#dcecf7;color:#26658f}
.brand-anomaly-dialog{width:min(1120px,calc(100vw - 30px));max-width:1120px}
.brand-anomaly-dialog h2{margin:4px 42px 6px 0;color:var(--navy)}
.brand-anomaly-summary{margin:16px 0}
.brand-anomaly-summary .brand-summary-card{min-height:78px;box-shadow:none}
.anomaly-comparison-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:18px 0 9px}
.anomaly-comparison-head>div{display:grid;gap:3px}.anomaly-comparison-head span{color:var(--muted);font-size:.875rem;font-weight:850;text-transform:uppercase}.anomaly-comparison-head strong{color:var(--navy);font-size:15px}
.anomaly-comparison-table{max-height:45vh;overflow:auto}.anomaly-comparison-table table{min-width:820px}.anomaly-comparison-table thead{position:sticky;top:0;z-index:2}.anomaly-comparison-table th{background:#edf3f8}.anomaly-comparison-table td{vertical-align:top}.anomaly-comparison-table td:first-child{min-width:180px}.anomaly-comparison-table td:nth-child(2),.anomaly-comparison-table td:nth-child(3){min-width:230px;overflow-wrap:anywhere}
.anomaly-field-different td{background:#fff9eb}.anomaly-field-different td:first-child{box-shadow:inset 4px 0 #d9a234}
.brand-anomaly-notes{display:grid;gap:6px;margin-top:16px;color:var(--navy);font-size:.875rem;font-weight:850}.brand-anomaly-notes textarea{min-height:92px;resize:vertical}
.brand-anomaly-actions{flex-wrap:wrap}
/* r56 · esiti non confrontabili, Vendite MIRA e anomalie operative. */
.anomaly-field-not_comparable td,.anomaly-field-unavailable td{background:#f8fafc;color:#53687a}.anomaly-field-not_comparable td:first-child,.anomaly-field-unavailable td:first-child{box-shadow:inset 4px 0 #b9c7d2}
.anomaly-field-missing_source td,.anomaly-field-missing_target td{background:#fff9eb}.anomaly-field-missing_source td:first-child,.anomaly-field-missing_target td:first-child{box-shadow:inset 4px 0 #d9a234}
.comparison-explanation{display:block;margin-top:5px;color:var(--muted);font-size:.875rem;line-height:1.35}
.brand-anomaly.superseded{border-color:#d6e0e7;background:#f7f9fb;opacity:.76}.brand-anomaly.superseded .anomaly-icon{background:#e7edf1;color:#617789}
.brand-anomaly-history{margin-top:3px;border-top:1px solid var(--line)}
.brand-anomaly-history>summary{padding:10px 3px 7px;color:#60778b;cursor:pointer;font-size:.875rem;font-weight:850;list-style-position:inside}
.brand-anomaly-history>div{display:grid;gap:7px;padding-top:2px}
.pill.open{background:#fff0ca;color:#765300}.pill.verified{background:#dcecf7;color:#26658f}.pill.resolved,.pill.success{background:#dff2e6;color:#17613b}.pill.warning{background:#fff0ca;color:#765300}.pill.superseded,.pill.neutral{background:#e8eef2;color:#53687a}

@media(max-width:820px){
  .tim-economic-panel>.panel-head{padding:17px 15px}
  .tim-economic-panel>#timEconomicStoreTabs{margin:14px 12px 10px}
  .tim-economic-panel>#timEconomicSummary{margin:0 12px 10px}
  .tim-economic-panel>#timEconomicNotice{margin:0 12px 13px}
  .tim-economic-panel>.tim-economic-table{margin:0 12px 14px}
  .brand-anomaly-dialog{width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;border-radius:0;padding:calc(20px + env(safe-area-inset-top)) 14px calc(20px + env(safe-area-inset-bottom))}
  .brand-anomaly-summary{grid-template-columns:1fr 1fr}
  .anomaly-comparison-head{align-items:flex-start;flex-direction:column}
  .brand-anomaly-actions{display:grid;grid-template-columns:1fr}
  .brand-anomaly-actions button{width:100%}
}

/* r76 · riepilogo chiusure compatto, sconti e note Mira nelle Vendite. */
.daily-closed-dates{display:block;padding:0;border-color:#bdddc9;background:#f3faf6;color:#245d3d;overflow:hidden}
.daily-closed-summary>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 13px;cursor:pointer;list-style:none}
.daily-closed-summary>summary::-webkit-details-marker{display:none}
.daily-closed-summary>summary strong{font-size:.875rem}
.daily-closed-toggle{display:inline-flex!important;align-items:center;justify-content:center;min-width:112px;padding:6px 9px;border:1px solid #b8d6c3;border-radius:8px;background:#fff;color:#246743;font-size:.875rem!important;font-weight:850;text-align:center!important}
.daily-closed-toggle i,.daily-closed-toggle b{font-style:normal}
.daily-closed-toggle b{display:none}
.daily-closed-summary[open] .daily-closed-toggle i{display:none}
.daily-closed-summary[open] .daily-closed-toggle b{display:inline}
.daily-closed-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:7px;padding:10px 13px 13px;border-top:1px solid #d4e8db;background:#fff}
.daily-closed-list>span{display:grid;gap:2px;padding:8px 10px;border:1px solid #dce9e1;border-radius:8px;background:#f8fbf9;text-align:left!important}
.daily-closed-list strong{color:var(--navy);font-size:.875rem}
.daily-closed-list small{color:var(--muted);font-size:.875rem;overflow-wrap:anywhere}

.sale-document-row.has-discount td{background:#edf6fc}
.sale-document-row.has-discount:hover td{background:#e4f1fa}
.sale-document-row.has-note td:nth-child(4){box-shadow:inset 4px 0 #e39a24}
.sale-discount-badge{display:inline-grid;justify-items:end;gap:1px;color:#1d6798}
.sale-discount-badge strong{font-size:.875rem}
.sale-discount-badge small{color:#5d7990;font-size:.875rem;white-space:nowrap}
.sale-document-note,.sale-note-indicator{display:inline-flex;align-items:center;margin-left:7px;padding:3px 6px;border-radius:999px;background:#fff0d2;color:#985800;font-size:.875rem;font-weight:900;white-space:nowrap;vertical-align:middle}
.sale-product-discounted td{background:#e8f3fb}
.sale-product-discounted:hover td{background:#deedf8}
.sale-product-noted .sale-note-cell{background:#fff0d2!important;box-shadow:inset 4px 0 #e39a24}
.sale-note-cell .sale-note-indicator{display:flex;width:max-content;margin:5px 0 0}
.sale-discount-value{color:#1d6798;font-weight:900;white-space:nowrap}
.sale-product-note-row td{padding:0 11px 9px!important;background:#fff8e9!important}
.sale-product-note-row:hover{background:transparent}
.sale-product-note-row div{display:flex;align-items:flex-start;gap:9px;padding:8px 10px;border-left:4px solid #e39a24;border-radius:7px;background:#fff3da;color:#744c10}
.sale-product-note-row strong{font-size:.875rem;white-space:nowrap}
.sale-product-note-row span{font-size:.875rem;line-height:1.4;overflow-wrap:anywhere}
.sale-line-card.has-discount{border-color:#a9cde4;background:#f7fbfe}
.sale-line-card.has-note{box-shadow:inset 4px 0 #e39a24}
.sale-line-head span{display:flex;align-items:center;gap:7px}
.sale-detail-note{display:grid;gap:4px;margin:12px 16px 0;padding:10px 12px;border-left:4px solid #e39a24;border-radius:8px;background:#fff3da;color:#744c10}
.sale-detail-note strong{font-size:.875rem;text-transform:uppercase;letter-spacing:.05em}
.sale-detail-note span{font-size:.875rem;line-height:1.45;overflow-wrap:anywhere}

@media(max-width:820px){
  .daily-closed-dates{margin:0 14px 14px}
  .daily-closed-summary>summary{align-items:flex-start;flex-direction:column}
  .daily-closed-toggle{width:100%}
  .daily-closed-list{grid-template-columns:1fr}
  .sale-line-head span{align-items:flex-start;flex-wrap:wrap;white-space:normal}
}

/* r76 · vendita a blocco unico e Controllo pratiche compatto in stile Mira. */
.sales-detail-dialog{box-sizing:border-box;width:min(1540px,calc(100vw - 30px));max-width:1540px;max-height:calc(100dvh - 30px);padding:26px 28px;overflow:auto}
.sales-detail-dialog h2{margin:3px 44px 3px 0;color:var(--navy);font-size:22px}.sales-detail-dialog>.form-subtitle{margin:0 0 16px}
.sale-detail-document-strip{display:grid;grid-template-columns:1.05fr 1.25fr 1.15fr 1fr .7fr;gap:0;margin:0 0 16px;border:1px solid #dce5ec;border-radius:14px;background:#fff;box-shadow:0 4px 14px rgba(21,49,74,.04);overflow:hidden}
.sale-detail-document-strip>div{display:grid;align-content:center;gap:5px;min-width:0;padding:15px 18px;border-right:1px solid #e5ebf0}.sale-detail-document-strip>div:last-child{border-right:0}.sale-detail-document-strip small{color:var(--muted);font-size:.875rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.sale-detail-document-strip strong{overflow-wrap:anywhere;color:var(--navy);font-size:.875rem}.sale-detail-document-strip .sale-detail-total strong{font-size:21px;font-variant-numeric:tabular-nums}
.sale-detail-lines-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px;border:1px solid #dce5ec;border-bottom:0;border-radius:14px 14px 0 0;background:#fbfcfd}.sale-detail-lines-head>div{display:grid;gap:3px}.sale-detail-lines-head strong{color:var(--navy);font-size:14px}.sale-detail-lines-head small{color:var(--muted);font-size:.875rem}
.sale-detail-table-wrap{max-width:100%;overflow:auto;border:1px solid #dce5ec;border-radius:0 0 14px 14px}.sale-detail-table{width:100%;min-width:1260px;border-collapse:collapse}.sale-detail-table th{padding:10px 12px;background:#edf3f8;color:#425c71;font-size:.875rem;letter-spacing:.04em;text-transform:uppercase}.sale-detail-table td{padding:13px 12px;vertical-align:middle;font-size:.875rem}.sale-detail-table td:nth-child(1){min-width:150px}.sale-detail-table td:nth-child(2){min-width:260px}.sale-detail-table td:nth-child(3){min-width:220px}.sale-detail-table td:nth-child(4){min-width:230px}.sale-detail-table td>strong{color:var(--navy);font-size:.875rem}.sale-detail-table td>small,.sale-detail-client small{display:block;margin-top:3px;color:#536b7e;font-size:.875rem;line-height:1.35}.sale-detail-main-row.sale-product-discounted td{background:#ebf5fc}.sale-detail-main-row.sale-product-noted .sale-detail-note-cell{background:#fff0d2;box-shadow:inset 4px 0 #e39a24}.sale-detail-expand{display:inline-grid;place-items:center;width:24px;height:24px;margin-right:8px;padding:0;border:1px solid #c8d8e4;border-radius:7px;background:#fff;color:#23628e;font-size:17px;line-height:1;vertical-align:middle}.sale-detail-tech-row td{padding:0!important;background:#f7fafc!important}.sale-detail-tech-row.hidden{display:none}.sale-detail-tech-grid{display:grid;grid-template-columns:repeat(7,minmax(130px,1fr));gap:1px;margin:0;background:#dce5ec;border-top:1px solid #dce5ec}.sale-detail-tech-grid>div{display:grid;gap:4px;min-width:0;padding:11px 13px;background:#f8fbfd}.sale-detail-tech-grid small{color:var(--muted);font-size:.875rem;font-weight:850;text-transform:uppercase}.sale-detail-tech-grid strong{overflow-wrap:anywhere;color:var(--navy);font-size:.875rem}.sale-detail-tech-row .sale-detail-note{margin:10px 12px}
.sale-detail-legend{display:flex;align-items:center;gap:26px;padding:13px 16px;color:#536a7d;font-size:.875rem}.sale-detail-legend span{display:inline-flex;align-items:center;gap:7px}.sale-detail-legend i{width:13px;height:13px;border-radius:2px;background:#e8f3fb}.sale-detail-legend i.note{background:#f3a329}.sales-detail-actions{position:sticky;bottom:-26px;margin:4px -28px -26px;padding:14px 28px;background:rgba(255,255,255,.96);border-top:1px solid #e0e7ed;backdrop-filter:blur(7px)}
.sale-detail-main-row.sale-product-recharge>td{background:#fff8cf!important}.sale-detail-main-row.sale-product-recharge>td:first-child{box-shadow:inset 6px 0 #d9ad00}.sale-detail-main-row.sale-product-accessory>td{background:#fff0df!important}.sale-detail-main-row.sale-product-accessory>td:first-child{box-shadow:inset 6px 0 #e97b19}.sale-detail-main-row.sale-product-smartphone>td{background:#e8f3ff!important}.sale-detail-main-row.sale-product-smartphone>td:first-child{box-shadow:inset 6px 0 #1877c8}.sale-kind-label{display:block;width:max-content;margin:6px 0 0 32px;padding:3px 7px;border-radius:999px;background:#fff;color:#24435d;font-size:.875rem;font-weight:900;text-transform:uppercase}.sale-detail-legend i.recharge{background:#f4ce2e}.sale-detail-legend i.accessory{background:#eb862c}.sale-detail-legend i.smartphone{background:#2684d6}

.practice-control-view .brand-practice-control{overflow:visible}.practice-control-view .brand-practice-body{padding:14px 16px 18px}.practice-control-view .brand-practice-summary{grid-template-columns:repeat(4,minmax(150px,1fr));gap:8px;margin:0 0 14px}.practice-control-view .brand-practice-summary .brand-summary-card{min-height:62px;padding:11px 14px;border-radius:12px}.practice-control-view .brand-practice-summary .brand-summary-card>span{font-size:.875rem}.practice-control-view .brand-practice-summary .brand-summary-card>strong{font-size:21px}.practice-control-view .brand-practice-summary .brand-summary-card>small{font-size:.875rem}
.practice-compact-toolbar{display:grid;grid-template-columns:minmax(310px,2fr) minmax(145px,.8fr) minmax(160px,.9fr) minmax(150px,.8fr) auto auto;align-items:end;gap:8px;margin:0 0 8px;padding:11px;border:1px solid #dce5ec;border-radius:12px;background:#f9fbfc}.practice-compact-toolbar>label,.practice-advanced-filters label{display:grid;gap:5px;min-width:0;color:#526a7e;font-size:.875rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.practice-compact-toolbar input,.practice-compact-toolbar select,.practice-advanced-filters input,.practice-advanced-filters select{width:100%;min-width:0;font-size:.875rem;letter-spacing:0;text-transform:none}.practice-unified-search input{min-width:0}.practice-advanced-filters{position:relative}.practice-advanced-filters>summary{display:flex;align-items:center;min-height:38px;padding:0 12px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--navy);cursor:pointer;font-size:.875rem;font-weight:850;list-style:none;white-space:nowrap}.practice-advanced-filters>summary::-webkit-details-marker{display:none}.practice-advanced-filters>summary::after{content:'▾';margin-left:8px}.practice-advanced-filters[open]>summary::after{content:'▴'}.practice-advanced-filters>div{position:absolute;right:0;z-index:12;display:grid;grid-template-columns:repeat(3,minmax(190px,1fr));gap:9px;width:min(680px,calc(100vw - 70px));margin-top:6px;padding:13px;border:1px solid #cbd9e4;border-radius:12px;background:#fff;box-shadow:0 16px 36px rgba(17,43,66,.18)}
.practice-control-view .brand-practice-filter-actions{min-height:28px;margin:0 0 8px}.practice-control-view .filter-chip{padding:4px 7px;font-size:.875rem}.practice-control-view .filter-chips-empty{font-size:.875rem}
.practice-bulk-panel{margin:0 0 9px;border:1px solid #d9e4ec;border-radius:10px;background:#f7fbff}.practice-bulk-panel>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 11px;color:#315d7e;cursor:pointer;font-size:.875rem;font-weight:850;list-style:none}.practice-bulk-panel>summary::-webkit-details-marker{display:none}.practice-bulk-panel>summary::before{content:'＋';margin-right:6px}.practice-bulk-panel[open]>summary::before{content:'−'}.practice-bulk-panel>summary span{margin-left:auto;color:var(--muted);font-weight:750}.practice-bulk-panel .practice-bulk-bar{justify-content:flex-end;margin:0;padding:9px 11px;border:0;border-top:1px solid #d9e4ec;border-radius:0;background:#fff}.practice-bulk-panel .practice-bulk-bar button:first-child{margin-right:auto}
.practice-control-view .brand-practice-table{max-height:none;overflow:auto;border-radius:11px}.practice-control-view .brand-practice-table table,.practice-control-view .brand-production-view .brand-practice-table table{width:100%;min-width:1190px}.practice-control-view .brand-practice-table th,.practice-control-view .brand-practice-table td{padding:10px 11px;border-left:0;font-size:.875rem}.practice-control-view .brand-practice-table th{white-space:nowrap}.practice-control-view .brand-practice-table td{vertical-align:middle}.practice-control-view .brand-practice-table td>strong,.practice-control-view .brand-practice-table td>small{display:block}.practice-control-view .brand-practice-table td>strong{color:var(--navy);font-size:.875rem}.practice-control-view .brand-practice-table td>small{margin-top:4px;color:var(--muted);font-size:.875rem;line-height:1.35}.practice-control-view .brand-practice-table th:nth-child(1){width:74px}.practice-control-view .brand-practice-table th:nth-child(2){width:100px}.practice-control-view .brand-practice-table th:nth-child(3){width:150px}.practice-control-view .brand-practice-table th:nth-child(4){width:160px}.practice-control-view .brand-practice-table th:nth-child(5){width:190px}.practice-control-view .brand-practice-table th:nth-child(6){width:210px}.practice-control-view .brand-practice-table th:nth-child(7){width:270px}.practice-control-view .brand-practice-table th:nth-child(8){width:150px}.practice-control-view .brand-practice-table th:nth-child(9){width:80px}
.practice-row.compact{background:#fff}.practice-row.compact:hover td{background:#f7fbfe}.practice-row.compact.expanded td{background:#edf6fc;border-bottom-color:#c9ddeb}.practice-row.compact.blocking td:first-child{box-shadow:inset 4px 0 #d68a16}.practice-row.compact .practice-link{display:block;width:max-content;margin:0 0 5px;padding:3px 6px;font-size:.875rem}.practice-row.compact .practice-managed-status{font-size:.875rem}.practice-rework-compact{display:block;width:max-content;margin-top:5px!important;padding:3px 6px;border-radius:999px;background:#fff0ce;color:#805900!important;font-weight:850}.practice-select{display:flex;align-items:center;gap:7px;width:auto;min-width:68px}.practice-select input{width:15px;height:15px}.practice-expand{display:grid;place-items:center;width:25px;height:25px;padding:0;border:1px solid #c8d8e4;border-radius:7px;background:#fff;color:#23628e;font-size:17px;line-height:1}
.practice-expanded-row>td{padding:0!important;background:#f5f9fc!important}.practice-inline-detail{margin:0 10px 10px;border:1px solid #cbdce8;border-radius:11px;background:#fff;box-shadow:0 7px 18px rgba(18,49,74,.07);overflow:hidden}.practice-inline-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 14px;border-bottom:1px solid #dce5ec;background:#fbfdfe}.practice-inline-head>div{display:grid;gap:7px}.practice-inline-head>div>strong{color:var(--navy);font-size:.875rem}.practice-inline-head>div>span{display:flex;gap:6px}.practice-inline-head i{font-style:normal}.practice-inline-head>small{color:#536b7e;font-size:.875rem;text-align:right}.practice-detail-table-wrap{overflow:auto}.practice-detail-table{width:100%;min-width:1080px}.practice-detail-table th{padding:8px 10px;background:#edf3f8;font-size:.875rem}.practice-detail-table td{padding:9px 10px!important;font-size:.875rem!important}.practice-detail-table td:nth-child(3){min-width:310px}.practice-detail-table td strong{display:block;color:var(--navy);font-size:.875rem}.practice-detail-table td small{display:block;margin-top:3px;color:var(--muted);font-size:.875rem}.practice-detail-line.sales td{background:#fbfdff}.practice-detail-line.target td{background:#fff}.practice-detail-line.sale-product-discounted td{background:#eaf5fc}.practice-detail-type,.practice-line-status{display:inline-flex;padding:3px 6px;border-radius:999px;background:#e8eef3;color:#526a7d;font-size:.875rem;font-weight:900;text-transform:uppercase}.practice-detail-type.sales{background:#e6f1fb;color:#286590}.practice-detail-type.target{background:#e8f5ec;color:#26704a}.practice-line-status.success{background:#e5f5ea;color:#17713d}.practice-detail-note-cell{background:#fff0d2!important;box-shadow:inset 4px 0 #e39a24}.practice-inline-actions{display:flex;align-items:center;gap:7px;padding:10px 13px;border-top:1px solid #dce5ec;background:#fbfcfd}.practice-inline-actions>span{margin-left:auto}.practice-inline-actions .practice-effects{justify-content:flex-end}
.practice-pagination{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:14px;margin-top:11px;color:#526a7d;font-size:.875rem}.practice-pagination>label{justify-self:end;display:flex;align-items:center;gap:8px;font-weight:800}.practice-pagination select{min-width:70px;padding:6px 8px}.practice-page-controls{display:flex;align-items:center;justify-content:center;gap:4px}.practice-page-controls button{display:grid;place-items:center;min-width:30px;height:30px;padding:0 7px;border:1px solid #d2dee7;border-radius:7px;background:#fff;color:#315d7e;font-size:.875rem;font-weight:850}.practice-page-controls button.active{border-color:#236c9e;background:#236c9e;color:#fff}.practice-page-controls button:disabled{opacity:.4}.practice-page-gap{padding:0 3px}.practice-page-summary{font-weight:800}

@media(max-width:1180px){.practice-compact-toolbar{grid-template-columns:2fr 1fr 1fr 1fr}.practice-advanced-filters,.practice-compact-toolbar>#brandPracticeResetBtn{grid-row:2}.sale-detail-document-strip{grid-template-columns:repeat(3,1fr)}.sale-detail-document-strip>div:nth-child(3){border-right:0}.sale-detail-document-strip>div:nth-child(n+4){border-top:1px solid #e5ebf0}.sale-detail-tech-grid{grid-template-columns:repeat(4,minmax(130px,1fr))}}
@media(max-width:820px){
  .sales-detail-dialog{width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:calc(22px + env(safe-area-inset-top)) 12px calc(18px + env(safe-area-inset-bottom));border-radius:0}.sale-detail-document-strip{grid-template-columns:1fr 1fr}.sale-detail-document-strip>div{padding:12px}.sale-detail-document-strip>div:nth-child(odd){border-right:1px solid #e5ebf0}.sale-detail-document-strip>div:nth-child(even){border-right:0}.sale-detail-document-strip>div:nth-child(n+3){border-top:1px solid #e5ebf0}.sale-detail-lines-head{align-items:stretch;flex-direction:column}.sale-detail-lines-head button{width:100%}.sale-detail-tech-grid{grid-template-columns:1fr 1fr}.sale-detail-legend{align-items:flex-start;flex-direction:column;gap:8px}.sales-detail-actions{bottom:calc(-18px - env(safe-area-inset-bottom));display:grid;grid-template-columns:1fr;margin:4px -12px calc(-18px - env(safe-area-inset-bottom));padding:12px}.sales-detail-actions button{width:100%}
  .practice-control-view .brand-practice-body{padding:10px}.practice-control-view .brand-practice-summary{grid-template-columns:1fr 1fr}.practice-compact-toolbar{grid-template-columns:1fr}.practice-advanced-filters,.practice-compact-toolbar>#brandPracticeResetBtn{grid-row:auto}.practice-advanced-filters>div{position:static;grid-template-columns:1fr;width:auto;box-shadow:none}.practice-control-view .brand-practice-filter-actions{align-items:stretch;flex-direction:column}.practice-control-view .brand-practice-filter-actions>button{width:100%}.practice-bulk-panel .practice-bulk-bar{display:grid}.practice-bulk-panel .practice-bulk-bar button{width:100%}.practice-inline-head{align-items:flex-start;flex-direction:column}.practice-inline-head>small{text-align:left}.practice-inline-actions{align-items:stretch;flex-direction:column}.practice-inline-actions button{width:100%}.practice-inline-actions>span{margin-left:0}.practice-pagination{grid-template-columns:1fr;justify-items:center}.practice-pagination>label{justify-self:center}.practice-page-summary{order:3}.practice-page-controls{max-width:100%;overflow:auto}.practice-control-view .brand-practice-table table{min-width:1080px}
}
@media(max-width:480px){.sale-detail-document-strip{grid-template-columns:1fr}.sale-detail-document-strip>div{border-right:0!important;border-top:1px solid #e5ebf0}.sale-detail-document-strip>div:first-child{border-top:0}.sale-detail-tech-grid{grid-template-columns:1fr}.practice-control-view .brand-practice-summary{grid-template-columns:1fr 1fr}.practice-control-view .brand-practice-summary .brand-summary-card>small{display:none}}

/* r77 · finestre adattive, vendite multipratica e pagamenti tabellari. */
.status-rules-dialog,.wide-dialog{max-height:calc(100dvh - 28px);overflow:auto;overscroll-behavior:contain}.status-rules-dialog .dialog-x{position:sticky;top:0;z-index:6;float:right}.status-rules-table{max-height:48vh;overflow:auto}.status-rules-table thead{position:sticky;top:0;z-index:3}.practice-head-filters{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.practice-head-filters label{display:grid;gap:5px;color:var(--muted);font-size:.875rem;font-weight:850}.practice-row.compact.expanded,.practice-row.compact.expanded>td,.practice-row.compact.expanded>td:first-child{background:#edf6fc!important}.practice-sale-group-detail{display:grid;gap:12px;padding:14px;background:#f8fbfe}.practice-child-card{overflow:hidden;border:1px solid var(--line);border-radius:12px;background:#fff}.practice-child-card>header{display:grid;grid-template-columns:auto minmax(180px,1fr) auto auto;align-items:center;gap:12px;padding:11px 13px;background:#eef5fb}.practice-child-card>header>div{display:grid}.practice-child-card>header span{font-size:.875rem;color:var(--muted)}.practice-child-select{display:flex!important;align-items:center;gap:7px;color:#526a7e;font-size:.875rem;font-weight:850;white-space:nowrap}.practice-child-select input{width:16px;height:16px}.practice-child-actions{display:flex;align-items:center;gap:6px}.practice-child-card>footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 13px;border-top:1px solid #dce5ec;background:#fbfcfd}.practice-child-card>footer small{color:var(--muted)}.practice-company-badges{display:inline-flex!important;align-items:center;gap:4px;flex-wrap:wrap}.practice-company-badge{display:inline-flex;padding:3px 6px;border:1px solid #cfe0ec;border-radius:999px;background:#f3f8fc;color:#315f7e;font-size:.875rem;font-weight:900;letter-spacing:.03em;text-transform:uppercase}
.deep-link-focus,.deep-link-focus>td{animation:gmava-deep-link-focus 2.6s ease both}@keyframes gmava-deep-link-focus{0%,100%{background:inherit}18%,70%{background:#fff1aa;box-shadow:inset 4px 0 #df9813}}
.fiscal-payment-dialog{width:min(1120px,96vw)}.fiscal-payment-picker{display:grid;gap:9px;margin:14px 0}.fiscal-payment-picker .toolbar{display:flex;gap:8px}.fiscal-payment-picker .toolbar input{flex:1}.fiscal-payment-picker .table-card{max-height:330px;overflow:auto}.fiscal-payment-picker thead{position:sticky;top:0;z-index:2}.payment-allocation-input{min-width:125px}.fiscal-payment-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:12px}.fiscal-payment-summary>div{display:grid;gap:3px;padding:11px;border:1px solid var(--line);border-radius:10px;background:#f7fafc}.fiscal-payment-summary span{font-size:.875rem;text-transform:uppercase;color:var(--muted);font-weight:850}.fiscal-payment-summary strong{color:var(--navy)}.fiscal-payment-summary .warning{border-color:#e6bd78;background:#fff8e8}.payment-method-list{display:grid;gap:8px;margin:14px 0}.payment-method-row{display:grid;grid-template-columns:minmax(180px,1fr) auto auto 80px;align-items:center;gap:10px;padding:10px;border:1px solid var(--line);border-radius:10px;background:#f8fafc}
.payment-row-incompatible{opacity:.5}.fiscal-email-preview{display:grid!important;gap:8px!important;padding:14px!important;background:#eef3f7!important;color:#20344a!important}.fiscal-email-preview-label{color:#526778;font-size:.875rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.fiscal-email-preview-sheet{overflow:hidden;border-radius:13px;background:#fff;box-shadow:0 7px 20px rgba(11,43,73,.12)}.fiscal-email-preview-sheet>header{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:4px solid #2879bf;background:#0b2b49;color:#fff}.fiscal-email-preview-mark{display:grid;place-items:center;width:34px;height:34px;border:2px solid #fff;border-radius:50%;font-size:.875rem;font-weight:950;letter-spacing:.05em}.fiscal-email-preview-sheet>header>div:last-child{display:grid;gap:2px}.fiscal-email-preview-sheet>header strong{font-size:.875rem}.fiscal-email-preview-sheet>header span{color:#c9d8e5;font-size:.875rem;text-transform:uppercase}.fiscal-email-preview-sheet>main{padding:16px}.fiscal-email-preview-sheet main>small{color:#2879bf;font-size:.875rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.fiscal-email-preview-sheet h3{margin:4px 0 6px;color:#0b2b49;font-size:18px}.fiscal-email-preview-sheet p{margin:0 0 12px;color:#526778;font-size:.875rem;line-height:1.5}.fiscal-email-preview-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-bottom:10px}.fiscal-email-preview-kpis>span{display:grid;gap:3px;padding:9px;border-left:3px solid #2879bf;border-radius:8px;background:#eef6fc}.fiscal-email-preview-kpis>span:nth-child(2){border-color:#0b2b49;background:#f7f9fb}.fiscal-email-preview-kpis>span.danger{border-color:#e34b50;background:#fff3f3}.fiscal-email-preview-kpis small{color:#6d7e8f;font-size:.875rem;font-weight:850;text-transform:uppercase}.fiscal-email-preview-kpis b{color:#0b2b49;font-size:.875rem}.fiscal-email-preview-row{display:grid;grid-template-columns:76px 1fr auto;gap:9px;padding:7px;border-top:1px solid #e7edf2;font-size:.875rem}.fiscal-email-preview-row strong{color:#20344a}.fiscal-email-preview-row b{color:#0b2b49}.fiscal-email-preview-empty{padding:12px;text-align:center;color:#6d7e8f;font-size:.875rem}
@media(max-width:900px){.fiscal-payment-summary{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.status-rules-dialog,.wide-dialog{width:calc(100vw - 12px);max-height:calc(100dvh - 12px)}.practice-head-filters,.fiscal-payment-picker .toolbar{align-items:stretch;flex-direction:column}.payment-method-row,.practice-child-card>header{grid-template-columns:1fr}.fiscal-payment-summary{grid-template-columns:1fr}}
.payment-row-credit{background:#faf7ff}.payment-row-credit strong,.payment-row-credit .credit-note-amount{color:#6743a5}.payment-row-credit td{border-color:#e8ddf5}
@media print{
  body.printing-fiscal-party #fiscalPartyDetail,body.printing-fiscal-party #fiscalPartyDetail *{visibility:visible!important}
  body.printing-fiscal-party #fiscalPartyDetail{position:absolute;inset:0;width:100%;padding:0;margin:0;background:#fff}
  body.printing-fiscal-party #fiscalPartyHeader .section-actions,body.printing-fiscal-party #fiscalPartySwitch,body.printing-fiscal-party #fiscalPartyBack,body.printing-fiscal-party #fiscalPartyKpis,body.printing-fiscal-party .fiscal-tabs,body.printing-fiscal-party .fiscal-party-due-toolbar{display:none!important}
  body.printing-fiscal-party #fiscalPartyHeader{padding:5mm 6mm;border-radius:0;box-shadow:none;background:#153550!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  body.printing-fiscal-party #fiscalPartyHeader h2{font-size:17pt}body.printing-fiscal-party #fiscalPartyHeader p{font-size:8pt}
  body.printing-fiscal-party #fiscalPartyPanel{margin-top:4mm;border:0;box-shadow:none;break-inside:auto}
  body.printing-fiscal-party .fiscal-party-schedule-head{padding:3mm 0;break-after:avoid}
  body.printing-fiscal-party .fiscal-party-print-summary{grid-template-columns:repeat(4,1fr);padding:0 0 3mm;break-inside:avoid}
  body.printing-fiscal-party .fiscal-party-print-summary>span{padding:2.5mm;border-radius:0}
  body.printing-fiscal-party .table-card{overflow:visible!important;box-shadow:none}
  body.printing-fiscal-party .fiscal-table{width:100%;min-width:0;font-size:7.2pt}body.printing-fiscal-party .fiscal-table thead{display:table-header-group}body.printing-fiscal-party .fiscal-table tr{break-inside:avoid}body.printing-fiscal-party .fiscal-table th,body.printing-fiscal-party .fiscal-table td{padding:2mm 1.5mm}
  body.printing-fiscal-party .fiscal-party-select-col,body.printing-fiscal-party .fiscal-party-due-table th:last-child,body.printing-fiscal-party .fiscal-party-due-table td:last-child{display:none!important}
  body.printing-fiscal-party .fiscal-party-due-closed,body.printing-fiscal-party .fiscal-party-due-overdue{-webkit-print-color-adjust:exact;print-color-adjust:exact}
  @page{size:A4 landscape;margin:10mm}
}

/* r77 · vendita padre con pratiche figlie e modali operative adattive */
.practice-row.compact.expanded>td,.practice-row.compact.expanded>td:first-child{background:#edf6fc!important;background-clip:border-box}
.practice-row.compact.expanded:hover>td,.practice-row.compact.expanded:hover>td:first-child{background:#e7f2fa!important}
.practice-company-badges{display:flex!important;flex-wrap:wrap;gap:4px;margin-top:5px!important}
.practice-company-badge{display:inline-flex;align-items:center;width:max-content;padding:3px 7px;border:1px solid #b9d4e7;border-radius:999px;background:#e8f3fb;color:#205d87;font-size:.875rem;font-weight:900;letter-spacing:.03em;text-transform:uppercase}
.practice-child-card>header{grid-template-columns:auto minmax(220px,1fr) auto auto}
.practice-child-card>header>div{min-width:0}.practice-child-card>header>div small{display:block;margin-top:3px;color:var(--muted);font-size:.875rem}
.practice-child-select{display:flex;align-items:center;gap:7px;color:#315d7e;font-size:.875rem;font-weight:850;white-space:nowrap}.practice-child-select input{width:16px;height:16px}
.practice-child-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:0;border:0;background:transparent}
.practice-sale-group-detail>.practice-inline-head{align-items:center;padding:2px 2px 0}.practice-sale-group-detail>.practice-inline-head>div{display:grid;gap:3px}.practice-sale-group-detail>.practice-inline-head small{color:var(--muted);font-size:.875rem}
.status-rules-dialog{box-sizing:border-box;width:min(1480px,calc(100vw - 28px));max-width:1480px}.status-rules-dialog .dialog-actions{position:sticky;bottom:-1px;z-index:4;background:#fff}
@media(max-width:760px){.practice-child-card>header{grid-template-columns:1fr}.practice-child-select{padding-bottom:7px;border-bottom:1px solid #d6e2eb}.practice-child-actions{align-items:stretch;flex-direction:column}.practice-child-actions>button{width:100%}.status-rules-dialog{width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;border-radius:0;padding:calc(18px + env(safe-area-inset-top)) 12px calc(14px + env(safe-area-inset-bottom));overflow:auto}.status-rules-dialog .inline-rule-form{grid-template-columns:1fr}.status-rules-dialog .inline-rule-form>*{width:100%}}

/* r78 · Target selezionabili, leggibilità rinforzata e Sostituzioni evidenti. */
#view-sales .table-card th{color:#2f465a;font-size:.875rem;font-weight:900}
#view-sales .table-card td{color:#243a4d;font-size:.875rem;line-height:1.4}
#view-sales .table-card td strong{color:#102f4b;font-size:.875rem}
#view-sales .table-card td small{display:block;margin-top:5px;color:#35566e;font-size:.875rem;font-weight:800}
#view-sales .mini-btn{font-size:.875rem;font-weight:850}
.sales-detail-dialog>.form-subtitle,.sale-detail-lines-head small{color:#405a70;font-size:.875rem}
.sale-detail-document-strip small{color:#405a70;font-size:.875rem}.sale-detail-document-strip strong{font-size:.875rem}
.sale-detail-table th{color:#2c465b;font-size:.875rem}.sale-detail-table td{color:#243a4d;font-size:.875rem}
.sale-detail-table td>strong{color:#102f4b;font-size:.875rem}.sale-detail-table td>small,.sale-detail-client small{color:#3f5b70;font-size:.875rem}
.sale-detail-tech-grid small{color:#3f5b70;font-size:.875rem}.sale-detail-tech-grid strong{font-size:.875rem}
.sale-detail-legend{color:#3c586d;font-size:.875rem}
.sale-has-substitution>td:first-child{box-shadow:inset 6px 0 #159447}
.sale-has-substitution>td{background:#f7fff9}
.sale-substitution-label,.practice-substitution-label{display:inline-flex!important;width:max-content;padding:4px 8px;border-radius:999px;background:#dff6e8!important;color:#126b38!important;font-size:.875rem!important;font-weight:950!important;letter-spacing:.02em;text-transform:uppercase}

.practice-control-view .brand-practice-table th{color:#2e485e;font-size:.875rem;font-weight:900}
.practice-control-view .brand-practice-table td{color:#223a4e;font-size:.875rem}
.practice-control-view .brand-practice-table td>strong{color:#0d2f4c;font-size:.875rem}
.practice-control-view .brand-practice-table td>small{color:#3f5b70;font-size:.875rem;line-height:1.45}
.practice-row.compact .practice-link,.practice-row.compact .practice-managed-status{font-size:.875rem}
.practice-inline-head>div>strong{font-size:15px}.practice-inline-head>small,.practice-sale-group-detail>.practice-inline-head small{color:#3e596e;font-size:.875rem}
.practice-child-card>header span,.practice-child-card>header>div small{color:#3d596e;font-size:.875rem}
.practice-child-card>header>div>strong{color:#0d2f4c;font-size:.875rem}
.practice-child-index{color:#234f70!important;font-size:.875rem!important;font-weight:900;white-space:nowrap}
.practice-detail-table th{color:#2d475c;font-size:.875rem;font-weight:900}
.practice-detail-table td{color:#223a4e;font-size:.875rem!important;line-height:1.45}
.practice-detail-table td strong{color:#0d2f4c;font-size:.875rem}
.practice-detail-table td small{color:#3e5a70;font-size:.875rem}
.practice-detail-type,.practice-line-status,.practice-detail-table .practice-managed-status{font-size:.875rem}
.practice-target-select{display:flex;align-items:center;gap:8px;cursor:pointer;white-space:nowrap}
.practice-target-select input{width:19px;height:19px;margin:0;accent-color:#1b6fa5}
.practice-target-status{display:flex;align-items:center;gap:7px;flex-wrap:wrap;min-width:175px}
.practice-target-status small{flex-basis:100%}
.practice-target-status button{padding:5px 8px;font-size:.875rem}
.practice-row.has-substitution>td:first-child{box-shadow:inset 6px 0 #159447!important}
.practice-row.has-substitution>td{background:#f7fff9}
.practice-sale-group-detail.has-substitution{border-left:6px solid #159447;border-radius:9px}
.practice-child-card.has-substitution{border-left:5px solid #159447}
.practice-detail-line.has-substitution>td:first-child{box-shadow:inset 5px 0 #159447}
.practice-detail-line.has-substitution td{background:#f5fff8}
.practice-child-card>footer small{color:#3f5b70;font-size:.875rem}
.practice-inline-actions>span{color:#354f64;font-size:.875rem;font-weight:750}
.practice-managed-status.mixed{--status-color:#52697d}

/* r79 · una sola tabella per vendita, piste Target e seriale SIM/ICCID. */
.practice-sale-group-detail.unified{display:grid;gap:0;padding:0;overflow:hidden;border:1px solid #c8d9e5;border-radius:12px;background:#fff;box-shadow:0 7px 18px rgba(18,49,74,.07)}
.practice-sale-group-detail.unified.has-substitution{border-left:6px solid #159447}
.practice-sale-group-detail.unified>.practice-inline-head{padding:14px 16px;border-bottom:1px solid #cfdde7;background:#eef5fa}
.practice-sale-group-detail.unified>.practice-inline-head>div>span{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.practice-detail-table.unified{width:100%;min-width:1710px;border-collapse:collapse}
.practice-detail-table.unified th{position:sticky;top:0;z-index:2;padding:10px 11px;background:#e8f0f6;white-space:nowrap}
.practice-detail-table.unified td{padding:12px 11px!important;vertical-align:middle}
.practice-detail-table.unified td:nth-child(1),.practice-detail-table.unified th:nth-child(1){min-width:135px}
.practice-detail-table.unified td:nth-child(2),.practice-detail-table.unified th:nth-child(2){min-width:120px}
.practice-detail-table.unified td:nth-child(3),.practice-detail-table.unified th:nth-child(3){min-width:330px}
.practice-detail-table.unified td:nth-child(4),.practice-detail-table.unified th:nth-child(4){min-width:230px}
.practice-detail-table.unified td:nth-child(5),.practice-detail-table.unified th:nth-child(5){min-width:230px}
.practice-detail-table.unified td:nth-child(6),.practice-detail-table.unified th:nth-child(6){min-width:65px}
.practice-detail-table.unified td:nth-child(7),.practice-detail-table.unified th:nth-child(7),.practice-detail-table.unified td:nth-child(8),.practice-detail-table.unified th:nth-child(8){min-width:90px}
.practice-detail-table.unified td:nth-child(9),.practice-detail-table.unified th:nth-child(9){min-width:100px}
.practice-detail-table.unified td:nth-child(10),.practice-detail-table.unified th:nth-child(10){min-width:240px}
.practice-detail-table.unified td:nth-child(11),.practice-detail-table.unified th:nth-child(11){min-width:80px}
.practice-detail-line.practice-group-start td{border-top:4px solid #d3e0e9}
.practice-detail-line.target td{background:#fff}.practice-detail-line.sales td{background:#f7fafc}
.practice-detail-line.target:hover td{background:#f7fbfe}.practice-detail-line.sales:hover td{background:#eef5fa}
.practice-customer-cell strong{overflow-wrap:anywhere}.practice-customer-cell small{font-weight:800}
.practice-sim-cell{font-variant-numeric:tabular-nums}.practice-sim-serial{display:inline-block;padding:5px 7px;border:1px solid #bad3e4;border-radius:7px;background:#eef6fb;color:#123f60;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.875rem;font-weight:850;letter-spacing:.02em;white-space:nowrap}.practice-sim-multiple{display:inline-block;color:#48677e;font-size:.875rem;font-weight:800;line-height:1.35}
.practice-target-status{display:grid;align-items:start;gap:6px;min-width:215px}.practice-target-status-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.practice-target-status>small{margin:0!important}.practice-line-effects{display:flex;gap:4px;flex-wrap:wrap}.practice-line-effects .practice-effect{padding:3px 6px;font-size:.875rem}
.practice-sale-group-detail.unified>.practice-inline-actions{padding:11px 15px}
@media(max-width:820px){.practice-sale-group-detail.unified>.practice-inline-head{padding:12px}.practice-detail-table.unified{min-width:1620px}.practice-sim-serial{font-size:.875rem}.practice-sale-group-detail.unified>.practice-inline-actions{padding:11px}}

/* r80 · filtri ordinabili, colonne coerenti e scala tipografica leggibile. */
.sales-column-head{display:flex;align-items:center;gap:5px;white-space:nowrap}
.sales-column-head>[data-sales-sort]{display:inline-flex;align-items:center;gap:5px;padding:0;border:0;background:transparent;color:inherit;font:inherit;font-weight:900;cursor:pointer}
.sales-column-head>[data-sales-sort]:hover,.sales-column-head>[data-sales-sort].active{color:#0d5f97}
.sales-column-head>[data-sales-sort-indicator]{min-width:10px;color:#0d6da8;font-size:.875rem}
.sales-column-filter{display:grid;place-items:center;width:27px;height:27px;padding:0;border:1px solid #bfd1df;border-radius:7px;background:#fff;color:#456579;font-size:15px;cursor:pointer}
.sales-column-filter:hover,.sales-column-filter.active{border-color:#2381bd;background:#e3f2fb;color:#0b669e}
.sales-active-filters{display:flex;align-items:center;gap:7px;flex-wrap:wrap;min-height:0;margin:2px 0 12px}
.sales-active-filters.hidden{display:none}
.sales-active-filters .filter-chip{font-size:14px}
.sales-column-filter-dialog{box-sizing:border-box;width:min(920px,calc(100vw - 48px));max-width:920px;max-height:calc(100dvh - 48px);overflow:hidden}
.sales-column-filter-dialog form{position:relative;width:100%;min-width:0;max-width:none;padding:30px}
.sales-column-filter-fields{width:100%;min-width:0;margin:18px 0;max-height:min(520px,55vh);overflow:auto}
.sales-filter-choice-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:8px}
.sales-filter-choice{display:flex;align-items:center;gap:10px;min-width:0;padding:11px 12px;border:1px solid #d4e1ea;border-radius:10px;background:#f9fbfd;cursor:pointer}
.sales-filter-choice:has(input:checked){border-color:#77afd3;background:#edf7fd}
.sales-filter-choice input{width:19px;height:19px;accent-color:#176faa}
.sales-filter-choice span{display:grid;gap:2px;min-width:0}.sales-filter-choice strong{color:#163b57;overflow-wrap:anywhere}.sales-filter-choice small{color:#49677d;overflow-wrap:anywhere}.sales-column-filter-dialog .dialog-actions{flex-wrap:wrap}
.sale-document-row.has-discount>td,.sale-document-row.is-expanded>td{background:#e2f1fb!important}
.sale-document-row.has-discount:hover>td,.sale-document-row.is-expanded:hover>td{background:#d8ebf8!important}
.sale-document-row.sale-has-substitution>td{background:#f0fbf4!important}
.sale-product-substitution>td{background:#f0fbf4!important}
.sale-product-substitution>td:first-child{box-shadow:inset 6px 0 #159447}
.sale-product-substitution .sale-substitution-label{margin:6px 0 0 7px}
.warehouse-group-row .warehouse-margin{color:#176d42;font-weight:900}
#view-warehouse .table-card table{min-width:1740px}
#view-warehouse .table-card th:nth-child(5),#view-warehouse .table-card td:nth-child(5),#view-warehouse .table-card th:nth-child(6),#view-warehouse .table-card td:nth-child(6){min-width:180px;text-align:left}
#view-warehouse .table-card th:nth-child(7),#view-warehouse .table-card td:nth-child(7),#view-warehouse .table-card th:nth-child(9),#view-warehouse .table-card td:nth-child(9),#view-warehouse .table-card th:nth-child(10),#view-warehouse .table-card td:nth-child(10),#view-warehouse .table-card th:nth-child(11),#view-warehouse .table-card td:nth-child(11){text-align:right}
#view-warehouse .table-card th:nth-child(8),#view-warehouse .table-card td:nth-child(8){min-width:220px;text-align:left}

/* r81 · la cella Data resta una vera table-cell e riceve lo sfondo dell'intera riga. */
.sale-document-row.has-discount>td:first-child,.sale-document-row.is-expanded>td:first-child{background:#e2f1fb!important;background-clip:border-box}
.sale-document-row.has-discount:hover>td:first-child,.sale-document-row.is-expanded:hover>td:first-child{background:#d8ebf8!important}

body{color:#1b3347;font-size:16px}
.sidebar nav button{font-size:15px}
main .section-head h2,.view .section-head h2{font-size:22px}
main .section-head p,.view .section-head p,.form-subtitle{color:#3b566b;font-size:15px;line-height:1.5}
main .eyebrow,.view .eyebrow{font-size:14px;font-weight:900}
main .toolbar input,main .toolbar select,main .toolbar button,main dialog input,main dialog select,main dialog textarea,main dialog button{font-size:15px}
main .result-count,.view .result-count{color:#334f64;font-size:15px;font-weight:750}
.view .table-card th{color:#263f53;font-size:15px;font-weight:900;line-height:1.3}
.view .table-card td{color:#1f384c;font-size:16px;line-height:1.5}
.view .table-card td strong{color:#0d2d47;font-size:16px}
.view .table-card td small,.view .table-card td .sub{color:#39566d;font-size:14px;line-height:1.4}
.view .mini-btn,.view button.compact{font-size:14px;font-weight:850}
.view .pill,.view .practice-link,.view .practice-managed-status{font-size:.875rem}
.kpi-card small,.dashboard-kpi small{font-size:14px}.kpi-card span,.dashboard-kpi em{font-size:14px}
.dashboard-chart-legend,.dashboard-chart-legend small,.dashboard-day-label,.dashboard-bar-value{font-size:.875rem}
.sale-substitution-label,.practice-substitution-label{font-size:.875rem!important}
#view-sales .table-card th{font-size:15px}#view-sales .table-card td{font-size:16px}#view-sales .table-card td strong{font-size:16px}#view-sales .table-card td small{font-size:14px}
.practice-control-view .brand-practice-table th,.practice-detail-table th{font-size:15px}
.practice-control-view .brand-practice-table td,.practice-detail-table td{font-size:16px!important}
.practice-control-view .brand-practice-table td>strong,.practice-detail-table td strong{font-size:16px}
.practice-control-view .brand-practice-table td>small,.practice-detail-table td small{font-size:14px}
.practice-detail-type,.practice-line-status,.practice-detail-table .practice-managed-status{font-size:.875rem}
.practice-sim-serial{font-size:15px}
@media(max-width:820px){.sales-filter-choice-list{grid-template-columns:1fr}.sales-column-filter-dialog{width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;border-radius:0}.sales-column-filter-dialog form{display:flex;flex-direction:column;width:100%;min-width:0;height:100%;padding:calc(22px + env(safe-area-inset-top)) 14px calc(18px + env(safe-area-inset-bottom))}.sales-column-filter-fields{max-height:none;flex:1}.sales-column-filter-dialog .dialog-actions{margin-top:auto}.view .table-card th{font-size:14px}.view .table-card td{font-size:15px}}
@media(max-width:520px){.sales-column-filter-dialog .dialog-actions{display:grid;grid-template-columns:1fr;width:100%}.sales-column-filter-dialog .dialog-actions button{width:100%;min-width:0}}
.fiscal-attachment-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.fiscal-file-button{min-width:58px;text-align:center;text-decoration:none}
.fiscal-file-button.pdf{border-color:#e0a5a8;background:#fff3f3;color:#9d292f}
.fiscal-file-button.xml{border-color:#9bc6a9;background:#f0faf3;color:#1c7040}
.fiscal-file-download{border-color:#c9d7e1;background:#f7fafc;color:#31536e;text-decoration:none}
.fiscal-file-add{border-color:#8eb8d4;background:#eef7fd;color:#1d5f8d}
.fiscal-pdf-dialog{width:min(1280px,calc(100vw - 28px));max-height:96vh;padding:0;border:0;border-radius:15px;overflow:hidden}
.fiscal-pdf-dialog::backdrop{background:rgba(12,31,47,.68)}
.fiscal-pdf-shell{position:relative;padding:22px;background:#fff}
.fiscal-pdf-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 42px 15px 0}
.fiscal-pdf-head h2{margin:3px 0 0;color:var(--navy);font-size:20px}
.fiscal-pdf-head .secondary{text-decoration:none}
.fiscal-pdf-viewer{position:relative;display:block;width:100%;height:72vh;min-height:520px;padding:18px;overflow:auto;border:1px solid #cbd9e3;border-radius:11px;background:#e7edf1}
.fiscal-pdf-viewer img{display:block;max-width:100%;height:auto;margin:0 auto;background:#fff;box-shadow:0 5px 24px rgba(12,38,58,.18)}
.fiscal-pdf-viewer img.loading{visibility:hidden}
.fiscal-pdf-viewer-status{position:absolute;inset:0;display:grid;place-items:center;padding:24px;color:#31536e;font-size:15px;font-weight:800;text-align:center}
.fiscal-pdf-viewer-status.hidden{display:none}
.fiscal-pdf-navigation{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:10px}.fiscal-pdf-navigation strong{min-width:120px;color:var(--navy);font-size:14px;text-align:center}
.fiscal-pdf-upload-summary{display:grid;gap:4px;margin:15px 0;padding:14px;border:1px solid #cfe1ef;border-radius:11px;background:#f4f9fd}.fiscal-pdf-upload-summary strong{color:var(--navy);font-size:17px}.fiscal-pdf-upload-summary span{color:#39566d;font-size:14px}.fiscal-pdf-upload-confirm{margin-top:14px;padding:12px;border:1px solid #c9d7e1;border-radius:10px;background:#f8fafc}.fiscal-pdf-upload-confirm span{line-height:1.4}
.fiscal-unlinked-files{display:grid;grid-template-columns:minmax(260px,1fr) repeat(2,minmax(180px,.6fr));gap:9px;align-items:center;margin-top:14px;padding:14px;border:1px solid #e4bd70;border-radius:12px;background:#fff9ec}
.fiscal-unlinked-files>div{display:grid;gap:3px}.fiscal-unlinked-files>div strong{color:#775000;font-size:16px}.fiscal-unlinked-files>div span{color:#6d624c;font-size:14px}
.fiscal-unlinked-file{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:8px;background:#fff;color:#5d4a25;font-size:14px;overflow-wrap:anywhere}
.fiscal-unlinked-file b{flex:0 0 auto;padding:3px 7px;border-radius:999px;background:#ffe6ad;color:#7c5100;font-size:.875rem;text-transform:uppercase}
@media(max-width:820px){.employee-statistics-view .section-head{align-items:flex-start;flex-direction:column;gap:12px}.employee-statistics-view .section-actions{width:100%;justify-content:space-between}.statistics-tabs{display:grid;grid-template-columns:1fr 1fr;width:100%}.statistics-tabs button{padding:10px 8px}.employee-statistics-filters{grid-template-columns:1fr 1fr}.statistics-search-field{grid-column:1/-1}.employee-statistics-filters>button{grid-column:1/-1}.statistics-insight-grid{grid-template-columns:1fr}.statistics-category-panel .multibrand-category-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:820px){.statistics-association-panel>summary{align-items:flex-start;display:grid}.statistics-association-panel>summary:after{margin-left:0}.statistics-association-panel .statistics-association-help{margin-inline:12px}.statistics-association-table select{min-width:230px}}
@media(max-width:480px){.multibrand-category-grid,.statistics-category-panel .multibrand-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.employee-statistics-filters{grid-template-columns:1fr}.statistics-search-field,.employee-statistics-filters>button{grid-column:auto}.app-loading{grid-template-columns:30px minmax(0,1fr);padding:10px 12px}.app-loading-spinner{width:24px;height:24px}}
@media(max-width:900px){.fiscal-unlinked-files{grid-template-columns:1fr}.fiscal-pdf-viewer{height:66vh;min-height:440px}}
@media(max-width:700px){.fiscal-pdf-dialog{width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;border-radius:0}.fiscal-pdf-shell{height:100%;padding:18px 10px 10px}.fiscal-pdf-head{align-items:flex-start;flex-direction:column;margin-right:38px}.fiscal-pdf-head .secondary{width:100%;text-align:center}.fiscal-pdf-viewer{height:calc(100dvh - 205px);min-height:330px;padding:8px}.fiscal-pdf-navigation{gap:7px}.fiscal-pdf-navigation button{font-size:.875rem}.fiscal-pdf-navigation strong{min-width:92px;font-size:.875rem}}

/* r93 · filtri statistici ordinati e tracciabilita con intestazione filtrante fissa */
.employee-statistics-filters{grid-template-columns:repeat(12,minmax(0,1fr));gap:10px;align-items:end;padding:15px;background:linear-gradient(145deg,#fff,#f8fbfd)}
.employee-statistics-filters .statistics-filter-span-2{grid-column:span 2}
.employee-statistics-filters .statistics-filter-span-4{grid-column:span 4}
.employee-statistics-filters>button{align-self:end;width:100%}
.statistics-operation-table{position:relative;max-height:min(68dvh,720px);overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
.statistics-operation-table table{min-width:1940px;border-collapse:separate;border-spacing:0}
.statistics-operation-table thead{position:static}
.statistics-operation-table thead th{position:sticky;top:0;z-index:6;padding:10px 8px 9px;border-bottom:2px solid #bdd3e1;background:linear-gradient(180deg,#edf5fa,#e5eff5);box-shadow:0 4px 10px rgba(20,47,75,.08);vertical-align:top;text-align:left}
.statistics-operation-filter-head th>span{display:block;margin:0 0 7px;color:#28485f;font-size:.875rem;font-weight:900;letter-spacing:.3px;text-transform:uppercase;white-space:nowrap}
.statistics-operation-filter-head input,.statistics-operation-filter-head select{display:block;width:100%;min-width:0;height:34px;padding:5px 27px 5px 8px;border:1px solid #c4d6e2;border-radius:8px;background-color:#fff;color:#17364f;font-size:.875rem;font-weight:750;text-align:left;box-shadow:0 1px 3px rgba(20,47,75,.04)}
.statistics-operation-filter-head input:focus,.statistics-operation-filter-head select:focus{border-color:#4f94c4;outline:2px solid rgba(47,117,181,.16);outline-offset:0}
.statistics-operation-filter-head th:nth-child(1){min-width:145px}.statistics-operation-filter-head th:nth-child(2){min-width:155px}.statistics-operation-filter-head th:nth-child(3){min-width:145px}.statistics-operation-filter-head th:nth-child(4){min-width:205px}.statistics-operation-filter-head th:nth-child(5){min-width:200px}.statistics-operation-filter-head th:nth-child(6){min-width:220px}.statistics-operation-filter-head th:nth-child(7){min-width:235px}.statistics-operation-filter-head th:nth-child(8){min-width:260px}.statistics-operation-filter-head th:nth-child(9){min-width:135px}.statistics-operation-filter-head th:nth-child(10){min-width:135px}
.statistics-operation-row.excluded-pieces>td{background:#fffaf0}
.statistics-operation-row.excluded-pieces:hover>td{background:#fff4db}
.statistics-piece-cell small{display:block;margin-top:4px;color:#687d8d;font-size:.875rem;line-height:1.25;text-align:right}
.statistics-piece-cell .statistics-count-excluded{display:inline-flex;align-items:center;padding:3px 6px;border-radius:999px;background:#fff0c7;color:#805700;font-weight:850;white-space:nowrap}
.statistics-piece-cell .statistics-count-source{color:#7a6742}

@media(max-width:1400px){.employee-statistics-filters{grid-template-columns:repeat(6,minmax(0,1fr))}.employee-statistics-filters .statistics-filter-span-2{grid-column:span 2}.employee-statistics-filters .statistics-filter-span-4{grid-column:span 4}}
@media(max-width:820px){.employee-statistics-filters{grid-template-columns:1fr 1fr}.employee-statistics-filters .statistics-filter-span-2,.employee-statistics-filters .statistics-filter-span-4{grid-column:1/-1}.statistics-operation-table{max-height:70dvh}.statistics-operation-filter-head input,.statistics-operation-filter-head select{font-size:16px}}
@media(max-width:520px){.employee-statistics-filters{grid-template-columns:1fr}.employee-statistics-filters .statistics-filter-span-2,.employee-statistics-filters .statistics-filter-span-4{grid-column:auto}}

/* r145 · Gara Multibrand addetti Round 5G, settembre 2026 */
.round5g-contest-hero{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(340px,.8fr);gap:18px;align-items:center;margin:0 0 14px;padding:20px 22px;border:1px solid #b9d6e9;border-radius:17px;background:radial-gradient(circle at 92% 12%,rgba(76,170,215,.2),transparent 34%),linear-gradient(125deg,#f6fbff,#eaf6fc);box-shadow:0 8px 24px rgba(30,89,127,.08)}
.round5g-contest-hero h3{margin:3px 0 5px;color:#123b59;font-size:22px}.round5g-contest-hero p{max-width:760px;margin:0;color:#547086;font-size:.875rem;line-height:1.55}.round5g-letter-link{display:inline-flex;margin-top:9px;padding:6px 9px;border:1px solid #a8cce2;border-radius:8px;background:#fff;color:#216b98;font-size:.875rem;font-weight:900;text-decoration:none}.round5g-letter-link:hover{background:#edf8fd}.round5g-rule-chips{display:flex;justify-content:flex-end;gap:7px;flex-wrap:wrap}.round5g-rule-chips span{padding:8px 10px;border:1px solid #b7d7e9;border-radius:999px;background:#fff;color:#23658f;font-size:.875rem;font-weight:850;box-shadow:0 3px 9px rgba(35,101,143,.07)}
.round5g-track-summary{border-top:3px solid #2e86bd}.round5g-track-summary strong{font-size:18px}.round5g-target-section{margin:0 0 14px;padding:2px 0}.round5g-target-section>.panel-head{padding:0 3px 10px}.round5g-target-section>.panel-head h3{margin:2px 0 3px;color:#173a55}.round5g-target-section>.panel-head p{margin:0;color:#667e90;font-size:.875rem}
.round5g-target-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.round5g-target-grid.compact{grid-template-columns:repeat(3,minmax(210px,1fr))}.round5g-target-card{display:grid;gap:9px;min-width:0;padding:14px;border:1px solid #d8e4eb;border-radius:14px;background:#fff;box-shadow:0 5px 15px rgba(23,58,85,.05)}.round5g-target-card.success{border-color:#9cd8c0;background:linear-gradient(145deg,#fff,#effaf5)}.round5g-target-card.waiting{border-color:#ead49b;background:linear-gradient(145deg,#fff,#fff9e9)}.round5g-target-card.missing{border-color:#e5c0c0;background:linear-gradient(145deg,#fff,#fff3f3)}.round5g-target-head{display:flex;align-items:flex-start;justify-content:space-between;gap:9px}.round5g-target-head>div span,.round5g-target-head>div strong{display:block}.round5g-target-head>div span{color:#6b8293;font-size:.875rem;font-weight:900;text-transform:uppercase;letter-spacing:.45px}.round5g-target-head>div strong{margin-top:3px;color:#183b56;font-size:.875rem}.round5g-status{padding:5px 7px;border-radius:999px;background:#edf3f7;color:#536d80;font-size:.875rem;font-weight:900;text-transform:uppercase;white-space:nowrap}.round5g-status.success{background:#dff5e9;color:#23704e}.round5g-status.waiting{background:#fff0c8;color:#8c6816}.round5g-status.missing{background:#fde2e2;color:#a13b3b}.round5g-status.progress{background:#e1f1fb;color:#246f9d}.round5g-target-value strong,.round5g-target-value small{display:block}.round5g-target-value strong{color:#153b58;font-size:19px}.round5g-target-value small{margin-top:2px;color:#748796;font-size:.875rem}.round5g-target-card>p{min-height:28px;margin:0;color:#5e7689;font-size:.875rem;line-height:1.45}.round5g-target-bonus{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 10px;padding-top:8px;border-top:1px solid #dde7ed}.round5g-target-bonus span{color:#627b8e;font-size:.875rem;font-weight:850}.round5g-target-bonus strong{color:#183b56;font-size:.875rem;text-align:right}.round5g-target-bonus small{grid-column:1/-1;color:#758896;font-size:.875rem}.round5g-target-bonus.matured strong,.round5g-target-bonus.matured small{color:#1f7953}
.round5g-participants{display:grid;gap:13px;margin-bottom:14px}.round5g-employee-card{overflow:hidden;border:1px solid #cfdee8;border-radius:17px;background:#fff;box-shadow:0 8px 23px rgba(24,61,88,.07)}.round5g-employee-card>summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 17px;cursor:pointer;list-style:none;background:linear-gradient(115deg,#f9fbfd,#eff7fb)}.round5g-employee-card>summary::-webkit-details-marker{display:none}.round5g-employee-card[open]>summary{border-bottom:1px solid #dce7ed}.round5g-employee-card.bronze>summary{box-shadow:inset 5px 0 #b77745}.round5g-employee-card.silver>summary{box-shadow:inset 5px 0 #8fa5b6}.round5g-employee-card.gold>summary{box-shadow:inset 5px 0 #d5a327}.round5g-employee-card.platinum>summary{box-shadow:inset 5px 0 #557993}.round5g-employee-card.excellent>summary{box-shadow:inset 5px 0 #4a65b5}.round5g-employee-identity{display:flex;align-items:center;gap:10px;min-width:0}.round5g-rank{display:grid;place-items:center;flex:0 0 28px;height:28px;border-radius:50%;background:#e2eff7;color:#246d9a;font-size:.875rem;font-weight:900}.round5g-avatar{display:grid;place-items:center;flex:0 0 40px;height:40px;border-radius:13px;background:linear-gradient(135deg,#267caf,#4fa9cf);color:#fff;font-size:.875rem;font-weight:900;box-shadow:0 5px 12px rgba(38,124,175,.21)}.round5g-employee-identity>span:last-child{min-width:0}.round5g-employee-identity strong,.round5g-employee-identity small{display:block}.round5g-employee-identity strong{overflow:hidden;color:#153a55;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.round5g-employee-identity small{margin-top:3px;color:#667d8f;font-size:.875rem}.round5g-employee-result{display:flex;align-items:center;gap:9px}.round5g-employee-result>span:not(.round5g-level){min-width:86px;padding:6px 9px;border:1px solid #d8e4eb;border-radius:10px;background:#fff;text-align:right}.round5g-employee-result>span strong,.round5g-employee-result>span small{display:block}.round5g-employee-result>span strong{color:#183b56;font-size:.875rem}.round5g-employee-result>span small{margin-top:2px;color:#758897;font-size:.875rem;text-transform:uppercase}.round5g-employee-result>b{color:#608099;font-size:15px;transition:transform .16s}.round5g-employee-card[open] .round5g-employee-result>b{transform:rotate(180deg)}.round5g-level{padding:6px 9px;border-radius:999px;background:#edf1f4;color:#536b7d;font-size:.875rem;font-weight:900;text-transform:uppercase}.round5g-level.bronze{background:#f1dfd0;color:#8b542b}.round5g-level.silver{background:#e2e9ee;color:#526b7d}.round5g-level.gold{background:#fff0be;color:#8a6712}.round5g-level.platinum{background:#dce9f1;color:#315b78}.round5g-level.excellent{background:#e1e6fb;color:#3b52a2}
.round5g-employee-body{padding:14px;background:#f5f9fb}.round5g-reward-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:11px}.round5g-reward-strip>div{padding:10px 12px;border:1px solid #d9e5ec;border-radius:12px;background:#fff}.round5g-reward-strip span,.round5g-reward-strip strong,.round5g-reward-strip small{display:block}.round5g-reward-strip span{color:#697f90;font-size:.875rem;font-weight:900;text-transform:uppercase}.round5g-reward-strip strong{margin-top:4px;color:#173c58;font-size:17px}.round5g-reward-strip small{margin-top:3px;color:#728795;font-size:.875rem}.round5g-reward-strip>div.warning{border-color:#ebcf8f;background:#fff9e9}.round5g-track-grid{display:grid;grid-template-columns:repeat(5,minmax(220px,1fr));gap:9px;overflow-x:auto}.round5g-track-card{min-width:220px;padding:12px;border:1px solid #d5e3eb;border-radius:13px;background:#fff}.round5g-track-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.round5g-track-card>header>div:first-child span,.round5g-track-card>header>div:first-child strong{display:block}.round5g-track-card>header>div:first-child span{color:#62798c;font-size:.875rem;font-weight:850}.round5g-track-card>header>div:first-child strong{margin-top:4px;color:#153a55;font-size:16px}.round5g-token-count{text-align:right}.round5g-token-count strong,.round5g-token-count span{display:block}.round5g-token-count strong{color:#2477a9;font-size:.875rem}.round5g-token-count span{color:#748695;font-size:.875rem;text-transform:uppercase}.round5g-track-progress{height:7px;margin:10px 0 8px;overflow:hidden;border-radius:999px;background:#e8eef2}.round5g-track-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#2378ad,#4fa8cf)}.round5g-thresholds{display:grid;grid-template-columns:repeat(6,minmax(29px,1fr));gap:3px}.round5g-thresholds>span{display:grid;place-items:center;min-height:32px;padding:3px 1px;border:1px solid #dce5eb;border-radius:7px;background:#f5f7f9;color:#7b8b97;font-size:.875rem;font-weight:900}.round5g-thresholds>span small{display:block;margin-top:1px;font-size:.875rem;font-weight:750}.round5g-thresholds>span.reached{border-color:#8dc9b2;background:#e2f5ed;color:#216c4e}.round5g-track-card>p{min-height:24px;margin:7px 0 0;color:#687e8f;font-size:.875rem;line-height:1.45}.round5g-cash-progress{display:grid;gap:5px;margin-top:8px;padding-top:7px;border-top:1px solid #e1e9ee}.round5g-cash-row{display:flex;justify-content:space-between;gap:8px;padding:6px;border-radius:7px;background:#f3f8fb}.round5g-cash-row>div:last-child{text-align:right}.round5g-cash-row strong,.round5g-cash-row small{display:block}.round5g-cash-row strong{color:#244b67;font-size:.875rem}.round5g-cash-row small{margin-top:2px;color:#718493;font-size:.875rem}.round5g-track-details{margin-top:8px;border-top:1px solid #e2e9ee}.round5g-track-details>summary{display:flex;align-items:center;justify-content:space-between;padding:8px 1px 1px;cursor:pointer;list-style:none;color:#2775a4;font-size:.875rem;font-weight:850}.round5g-track-details>summary::-webkit-details-marker{display:none}.round5g-track-details>summary span{display:grid;place-items:center;min-width:18px;height:18px;border-radius:999px;background:#e6f2f9}.round5g-empty-track{padding:12px 2px 4px;color:#7a8c99;font-size:.875rem;line-height:1.4}.round5g-operation-list{display:grid;gap:4px;max-height:260px;margin-top:7px;overflow:auto}.round5g-operation{display:grid;grid-template-columns:minmax(90px,1fr) minmax(100px,1fr) auto;gap:6px;padding:7px;border:1px solid #e0e8ed;border-radius:8px;background:#fafcfd}.round5g-operation.review{border-color:#ead399;background:#fff9e9}.round5g-operation strong,.round5g-operation span,.round5g-operation small{display:block}.round5g-operation>div:first-child strong{color:#24475f;font-size:.875rem}.round5g-operation span{color:#456379;font-size:.875rem;font-weight:800}.round5g-operation small{margin-top:2px;color:#788b98;font-size:.875rem}.round5g-operation>strong{color:#1e6f9e;font-size:.875rem;text-align:right;white-space:nowrap}.round5g-employee-targets{margin-top:11px;padding:12px;border:1px solid #d5e3eb;border-radius:13px;background:#edf5f9}.round5g-employee-targets>header{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin-bottom:9px}.round5g-employee-targets>header span,.round5g-employee-targets>header strong{display:block}.round5g-employee-targets>header span{color:#647d90;font-size:.875rem;text-transform:uppercase}.round5g-employee-targets>header strong{margin-top:3px;color:#173b56;font-size:.875rem}.round5g-employee-targets>header>small{color:#6f8290;font-size:.875rem;text-align:right}.round5g-target-grid.compact .round5g-target-card{box-shadow:none}
@media(max-width:1400px){.round5g-track-grid{grid-template-columns:repeat(3,minmax(230px,1fr));overflow:visible}.round5g-target-grid.compact{overflow-x:auto}.round5g-target-grid.compact .round5g-target-card{min-width:230px}}
@media(max-width:960px){.round5g-contest-hero{grid-template-columns:1fr}.round5g-rule-chips{justify-content:flex-start}.round5g-target-grid{grid-template-columns:1fr}.round5g-reward-strip{grid-template-columns:1fr 1fr}.round5g-track-grid{grid-template-columns:1fr 1fr}.round5g-employee-card>summary{align-items:stretch;flex-direction:column}.round5g-employee-result{justify-content:flex-end}.round5g-target-grid.compact{grid-template-columns:1fr;overflow:visible}.round5g-target-grid.compact .round5g-target-card{min-width:0}}
@media(max-width:640px){.gmava-store-employees-grid{grid-template-columns:1fr}.gmava-store-employee strong,.gmava-store-employee small{white-space:normal}}
@media(max-width:620px){.round5g-contest-hero{padding:16px}.round5g-contest-hero h3{font-size:19px}.round5g-rule-chips{display:grid}.round5g-rule-chips span{text-align:center}.round5g-reward-strip,.round5g-track-grid{grid-template-columns:1fr}.round5g-track-card{min-width:0}.round5g-employee-result{display:grid;grid-template-columns:1fr 1fr}.round5g-level{grid-column:1/-1;text-align:center}.round5g-employee-result>b{display:none}.round5g-employee-result>span:not(.round5g-level){min-width:0}.round5g-employee-targets>header{align-items:flex-start;flex-direction:column}.round5g-employee-targets>header>small{text-align:left}}

/* r155 · Gara Vodafone/Fastweb addetti Gruppo Mava, soglie settembre versionate */
.gmava-contest-card .round5g-avatar{background:linear-gradient(135deg,#7b49bd,#aa68cb)}
.gmava-track-grid{grid-template-columns:repeat(4,minmax(235px,1fr))}
.gmava-unconfigured{border-color:#e5c7a0;background:#fffaf2}.gmava-unconfigured .round5g-track-progress i{width:0!important}.gmava-unconfigured .round5g-token-count strong{color:#9a6b29}
.gmava-business-pool{display:grid;grid-template-columns:auto auto minmax(180px,1fr);align-items:center;gap:8px 15px;margin-bottom:10px;padding:10px 13px;border:1px solid #cfc2e2;border-radius:12px;background:linear-gradient(120deg,#fbf8ff,#f1ebfa)}.gmava-business-pool span{color:#77599c;font-size:.875rem;font-weight:900;text-transform:uppercase}.gmava-business-pool strong{color:#4e3472;font-size:.875rem}.gmava-business-pool small{color:#756889;font-size:.875rem;text-align:right}
.gmava-extra-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.gmava-extra-grid>div{padding:10px;border:1px solid #d6e3ea;border-radius:10px;background:#fff}.gmava-extra-grid span,.gmava-extra-grid strong,.gmava-extra-grid small{display:block}.gmava-extra-grid span{color:#6b8191;font-size:.875rem;font-weight:900;text-transform:uppercase}.gmava-extra-grid strong{margin-top:4px;color:#173b56;font-size:14px}.gmava-extra-grid small{margin-top:3px;color:#718594;font-size:.875rem}
@media(max-width:1400px){.gmava-track-grid{grid-template-columns:repeat(3,minmax(230px,1fr))}}
@media(max-width:960px){.gmava-track-grid{grid-template-columns:1fr 1fr}.gmava-business-pool{grid-template-columns:1fr}.gmava-business-pool small{text-align:left}}
@media(max-width:620px){.gmava-track-grid,.gmava-extra-grid{grid-template-columns:1fr}}

/* r94 · visuali incassi, filtri scheda addetto e contenimento mobile */
html,body{max-width:100%;overflow-x:hidden}
.app-shell,main,.view,.panel,.table-card{min-width:0;max-width:100%}
.table-card{overflow:auto;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}
.daily-receipts-toolbar{position:sticky;top:92px;z-index:8;display:grid;gap:10px;margin:20px 24px 16px;padding:12px;border:1px solid #cfdee8;border-radius:14px;background:rgba(255,255,255,.97);box-shadow:0 7px 20px rgba(20,47,75,.1);backdrop-filter:blur(10px)}
.is-staging .daily-receipts-toolbar{top:calc(92px + var(--staging-content-height,52px))}
.daily-receipts-filter-row{display:grid;grid-template-columns:minmax(210px,1.2fr) repeat(2,minmax(160px,.75fr)) minmax(220px,1.1fr) auto;gap:10px;align-items:end}
.daily-receipts-filter-row label{display:grid;gap:5px;min-width:0;color:var(--muted);font-size:.875rem;font-weight:850;text-transform:uppercase}
.daily-receipts-filter-row input,.daily-receipts-filter-row select{width:100%;min-width:0;height:44px}
.daily-receipts-filter-row button,.daily-receipts-action-row button{min-height:44px;white-space:nowrap}
.daily-receipts-action-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:10px;border-top:1px solid #e1e9ef}
.daily-receipts-operation-actions,.daily-receipts-output-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.daily-receipts-output-actions{justify-content:flex-end}
.daily-receipts-toolbar .daily-save-view{border-color:#9dbbd0;background:#eef6fb;color:#245b80}
.daily-saved-view-state{align-items:center;justify-content:space-between;gap:14px;margin:0 24px 16px}
.daily-saved-view-state:not(.hidden){display:flex}
.daily-saved-view-state span{display:grid;gap:3px}.daily-saved-view-state small{color:#526b7f}
.statistics-employee-local-filters{position:sticky;top:-27px;z-index:8;display:grid;grid-template-columns:repeat(5,minmax(145px,1fr));gap:9px;margin:0 0 11px;padding:12px;border:1px solid #c9dce9;border-radius:13px;background:rgba(248,251,253,.98);box-shadow:0 5px 16px rgba(20,47,75,.09);backdrop-filter:blur(10px)}
.statistics-employee-local-filters label{display:grid;gap:4px;min-width:0;color:#587087;font-size:.875rem;font-weight:850;letter-spacing:.3px;text-transform:uppercase}
.statistics-employee-local-filters input,.statistics-employee-local-filters select{width:100%;min-width:0;height:39px;padding:7px 9px;color:#17364f;font-size:.875rem;font-weight:750}
.statistics-employee-local-filters .statistics-detail-search{grid-column:span 2}
.statistics-employee-local-filters>button{align-self:end;min-height:39px}
.statistics-dialog-operation-table{position:relative;max-height:min(52dvh,620px);scrollbar-gutter:stable}
.statistics-dialog-operation-table thead{position:static}
.statistics-dialog-operation-table thead th{position:sticky;top:0;z-index:5;background:#edf4f8;box-shadow:0 3px 8px rgba(20,47,75,.08)}
.statistics-dialog-operation-table tfoot th{position:sticky;bottom:0;z-index:5}

@media(max-width:1100px){
  .daily-receipts-filter-row{grid-template-columns:repeat(2,minmax(0,1fr))}.daily-receipts-filter-row button{width:100%}
  .daily-receipts-action-row{align-items:stretch;flex-direction:column}.daily-receipts-output-actions{justify-content:flex-start}
  .statistics-employee-local-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.statistics-employee-local-filters .statistics-detail-search{grid-column:span 2}
}
@media(max-width:820px){
  html,body,.app-shell{width:100%;min-width:0}.app-shell{overflow:clip}main{box-sizing:border-box;width:100%;min-width:0;overflow:clip}.view,.panel{box-sizing:border-box;width:100%}
  input,select,textarea{font-size:16px!important}
  .daily-receipts-toolbar{top:calc(68px + env(safe-area-inset-top));margin:14px;padding:10px}.is-staging .daily-receipts-toolbar{top:calc(68px + var(--staging-content-height,62px) + env(safe-area-inset-top))}
  .daily-receipts-filter-row{grid-template-columns:1fr 1fr}.daily-receipts-filter-row label,.daily-receipts-filter-row input,.daily-receipts-filter-row select,.daily-receipts-filter-row button{width:100%;min-width:0}
  .daily-receipts-operation-actions,.daily-receipts-output-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}.daily-receipts-operation-actions button,.daily-receipts-output-actions button{width:100%;min-width:0;white-space:normal}
  .daily-saved-view-state{align-items:stretch;flex-direction:column;margin-inline:14px}.daily-saved-view-state button{width:100%}
  .statistics-employee-local-filters{top:0;grid-template-columns:1fr 1fr;margin-inline:-3px;padding:10px}.statistics-employee-local-filters .statistics-detail-search{grid-column:1/-1}.statistics-employee-local-filters>button{grid-column:1/-1}
  dialog[open]{box-sizing:border-box;width:100vw!important;max-width:none!important;height:100dvh;max-height:none!important;margin:0!important;padding:calc(18px + env(safe-area-inset-top)) 12px calc(18px + env(safe-area-inset-bottom))!important;border-radius:0!important;overflow:auto}
  dialog>form{box-sizing:border-box;width:100%!important;min-width:0!important;max-width:none!important;margin:0!important}
  .statistics-employee-dialog{padding:calc(18px + env(safe-area-inset-top)) 11px calc(18px + env(safe-area-inset-bottom))!important}.statistics-employee-dialog-head{margin-right:38px}
  .mobile-app-nav{padding-bottom:max(8px,env(safe-area-inset-bottom))}
}
@media(max-width:520px){
  .daily-receipts-filter-row{grid-template-columns:1fr}.daily-receipts-operation-actions,.daily-receipts-output-actions{grid-template-columns:1fr}
  .statistics-employee-local-filters{grid-template-columns:1fr}.statistics-employee-local-filters .statistics-detail-search,.statistics-employee-local-filters>button{grid-column:auto}
}

/* r95 · segni e rielaborazione controllata dei borderò Mooney */
.mooney-charge-breakdown{display:grid;gap:9px;padding:12px 13px;border:1px solid #d7e4ec;border-radius:11px;background:#fff}
.mooney-charge-heading span{display:grid;gap:3px}.mooney-charge-heading strong{color:var(--navy);font-size:.875rem}.mooney-charge-heading small{color:#5d7384;font-size:.875rem}
.mooney-charge-breakdown>div:last-child{display:grid;gap:6px}.mooney-charge-breakdown>div:last-child>span{display:grid;grid-template-columns:78px minmax(0,1fr) auto;align-items:center;gap:9px;padding:7px 9px;border-radius:8px;background:#f5f8fa}
.mooney-charge-breakdown span>b{font-size:.875rem;text-transform:uppercase}.mooney-charge-breakdown span>em{overflow-wrap:anywhere;color:#405b70;font-size:.875rem;font-style:normal}.mooney-charge-breakdown span>strong{font-size:.875rem;font-variant-numeric:tabular-nums}.mooney-charge-breakdown .debit>b,.mooney-charge-breakdown .debit>strong{color:#875d15}.mooney-charge-breakdown .credit>b,.mooney-charge-breakdown .credit>strong{color:#17704a}
.mooney-bordero-actions>div{display:flex;gap:7px;flex-wrap:wrap}
.mooney-preview-fields>.mooney-charge-breakdown{margin:2px 5px 13px 0}
@media(max-width:700px){.mooney-bordero-actions>div{display:grid;grid-template-columns:1fr;width:100%}.mooney-charge-breakdown>div:last-child>span{grid-template-columns:70px minmax(0,1fr);gap:5px}.mooney-charge-breakdown span>strong{grid-column:2;text-align:left}}

/* r96 · Salvadanai gestori e avanzamento misurabile */
.manager-controls-view{--manager-accent:#287bad}.manager-controls-head{align-items:flex-end}.manager-control-switch{display:flex;gap:7px;margin:18px 24px 14px;padding:5px;border:1px solid #d4e1e9;border-radius:13px;background:#edf4f8;width:max-content;max-width:calc(100% - 48px)}.manager-control-switch button{display:grid;gap:2px;min-width:180px;padding:10px 16px;border:0;border-radius:9px;background:transparent;color:#526b7d;font-size:.875rem;font-weight:900;text-align:left;cursor:pointer}.manager-control-switch button small{font-size:.875rem;font-weight:750}.manager-control-switch button.active{background:#fff;color:var(--navy);box-shadow:0 3px 10px rgba(20,47,75,.11)}
.manager-control-panel{display:grid;gap:14px;margin:0 24px}.manager-control-intro{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;padding:18px;border:1px solid #cfdee8;border-radius:15px;background:linear-gradient(135deg,#fff,#f2f8fb)}.manager-control-intro h3{margin:3px 0 5px;color:var(--navy);font-size:21px}.manager-control-intro p:last-child{max-width:780px;margin:0;color:#5b7284;font-size:.875rem;line-height:1.5}.manager-control-intro .section-actions{justify-content:flex-end}.manager-source-grid,.manager-history-grid{gap:14px}.manager-control-table{min-width:900px}.manager-control-table.fastweb{min-width:1320px}.manager-control-table td{vertical-align:middle}.manager-control-table td strong,.manager-control-table td small{display:block}.manager-control-table td small{margin-top:3px;color:var(--muted);font-size:.875rem}.manager-control-table .money{text-align:right;font-variant-numeric:tabular-nums}
.manager-match-panel{padding:16px 18px}.manager-match-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:9px}.manager-match-head>div{display:flex;align-items:baseline;gap:10px}.manager-match-head span{color:#5c7385;font-size:.875rem;font-weight:900;text-transform:uppercase}.manager-match-head strong{color:var(--navy);font-size:21px}.manager-match-head small{color:#60798b;font-size:.875rem}.manager-match-track{height:12px;overflow:hidden;border-radius:999px;background:#e3ebf0}.manager-match-track span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#2686bd,#55b6d8);transition:width .25s ease}.manager-control-filters{display:grid;grid-template-columns:minmax(320px,1fr) 240px auto;gap:9px;margin:0}.manager-control-filters input,.manager-control-filters select{min-width:0}.manager-fastweb-table-panel{overflow:hidden}.manager-fastweb-table-panel>.table-card{max-height:62dvh;border:0;border-radius:0}.manager-fastweb-table-panel thead{position:sticky;top:0;z-index:3}.manager-fastweb-table-panel th{background:#edf4f8}.manager-recharge-status{display:inline-flex;padding:5px 8px;border-radius:999px;background:#eef1f4;color:#526b7d;font-size:.875rem;font-weight:900;white-space:nowrap}.manager-recharge-status.matched,.manager-recharge-status.matched_manual{background:#e1f3e8;color:#1c7046}.manager-recharge-status.amount_mismatch,.manager-recharge-status.ambiguous{background:#fff0cb;color:#845a00}.manager-recharge-status.missing_sale{background:#fde7e5;color:#a13c35}.manager-recharge-status.closed_manual{background:#e8edf2;color:#435b6d}.manager-row-warning{background:#fffdf6}.manager-row-danger{background:#fff9f8}.manager-history-list{display:grid;gap:7px;padding:14px}.manager-history-list .history-row{margin:0}.manager-history-panel>summary,.manager-history-grid summary{cursor:pointer}.manager-future-panel{margin:14px 24px 0}.manager-future-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;padding:0 16px 16px}.manager-future-card{display:grid;gap:5px;padding:12px;border:1px dashed #cbd9e3;border-radius:11px;background:#f8fafc}.manager-future-card strong{color:#294b64;font-size:.875rem}.manager-future-card span{color:#687e8f;font-size:.875rem}.manager-fastweb-actions{display:flex;gap:6px;flex-wrap:wrap}.manager-fastweb-actions button{white-space:nowrap}
@media(max-width:1050px){.manager-future-grid{grid-template-columns:1fr 1fr}.manager-control-intro{align-items:stretch;flex-direction:column}.manager-control-intro .section-actions{justify-content:flex-start}}
@media(max-width:820px){.manager-controls-head{align-items:stretch;flex-direction:column}.manager-control-switch{display:grid;grid-template-columns:1fr 1fr;width:auto;max-width:none;margin:14px}.manager-control-switch button{min-width:0}.manager-control-panel{margin-inline:14px}.manager-control-filters{grid-template-columns:1fr}.manager-control-filters button{width:100%}.manager-match-head{align-items:flex-start;flex-direction:column}.manager-future-panel{margin-inline:14px}.manager-future-grid{grid-template-columns:1fr}.manager-control-intro .section-actions{display:grid;grid-template-columns:1fr}.manager-control-intro .section-actions button{width:100%}.app-loading{grid-template-columns:30px minmax(0,1fr) auto}.app-loading-percent{min-width:43px;padding-inline:5px}.app-loading-spinner{width:24px;height:24px}}
@media(max-width:480px){.manager-control-switch{grid-template-columns:1fr}.manager-fastweb-actions{display:grid}.manager-fastweb-actions button{width:100%}.app-loading{grid-template-columns:26px minmax(0,1fr) auto;gap:4px 8px}.app-loading-copy strong{font-size:.875rem}.app-loading-percent{font-size:.875rem}}

/* r97 · ricariche da Vendite, SOSTBUZ rosso e Incassi separati */
.sale-document-row.sale-has-sostbuz>td,.sale-has-sostbuz>td{background:#fff1f1!important}
.sale-document-row.sale-has-sostbuz>td:first-child,.sale-has-sostbuz>td:first-child{box-shadow:inset 6px 0 #d5232f!important}
.sale-product-sostbuz>td{background:#fff0f0!important}
.sale-product-sostbuz>td:first-child{box-shadow:inset 6px 0 #d5232f!important}
.sale-sostbuz-label{display:inline-flex!important;width:max-content;margin:5px 0 0 7px;padding:4px 8px;border-radius:999px;background:#d5232f!important;color:#fff!important;font-size:.875rem!important;font-weight:950!important;letter-spacing:.03em;text-transform:uppercase}
.manager-recharge-status.pending_statement{background:#ffe8c2;color:#815000}
.manager-row-pending{background:#fffaf0}
.manager-row-pending>td:first-child{box-shadow:inset 5px 0 #e49a26}
.manager-sale-cell,.manager-statement-cell{min-width:190px}.manager-sale-link{display:block;margin-top:6px}
#view-receipts>.section-head{margin-bottom:0}

/* r98 · filtri operativi e chiusure FASTWEB a cavallo mese */
.manager-control-filters{grid-template-columns:minmax(135px,.55fr) minmax(135px,.55fr) minmax(175px,.75fr) minmax(260px,1.35fr) minmax(175px,.75fr) auto;align-items:end}
.manager-control-filter-field{display:grid;gap:5px;min-width:0;color:#5d7486;font-size:.875rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.manager-control-filter-field input,.manager-control-filter-field select{width:100%;font-size:.875rem;text-transform:none;letter-spacing:normal}
.manager-status-picker{position:relative;min-width:0;text-transform:none;letter-spacing:normal}.manager-status-picker>summary{display:flex;align-items:center;justify-content:space-between;box-sizing:border-box;width:100%;min-height:38px;padding:8px 11px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--navy);cursor:pointer;font-size:.875rem;font-weight:750;list-style:none}.manager-status-picker>summary::-webkit-details-marker{display:none}.manager-status-picker>summary::after{content:'▾';margin-left:9px;color:#637a8c}.manager-status-picker[open]>summary{border-color:#77acd0;box-shadow:0 0 0 2px rgba(40,123,173,.12)}.manager-status-picker[open]>summary::after{content:'▴'}.manager-status-picker-menu{position:absolute;right:0;z-index:25;display:grid;gap:8px;width:max(235px,100%);margin-top:6px;padding:10px;border:1px solid #cbd9e4;border-radius:11px;background:#fff;box-shadow:0 14px 34px rgba(20,47,75,.18)}.manager-status-picker-options{display:grid;gap:4px;max-height:280px;overflow:auto}.manager-status-picker-options label{display:flex;align-items:center;gap:8px;padding:7px 8px;border-radius:8px;color:#405a6e;cursor:pointer;font-size:.875rem;font-weight:750;text-transform:none}.manager-status-picker-options label:hover{background:#f0f6fa}.manager-status-picker-options input{flex:0 0 auto;width:16px;height:16px;margin:0}.manager-status-picker-menu .mini-btn{width:100%}
.manager-control-filters>button{align-self:end;white-space:nowrap}
.quick-date-bar{display:flex;align-items:center;gap:6px;min-width:0;overflow-x:auto;padding:2px 1px 4px;scrollbar-width:thin}.quick-date-bar>span{flex:0 0 auto;margin-right:3px;color:#5d7486;font-size:.875rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.quick-date-bar>button{flex:0 0 auto;min-height:31px;padding:6px 10px;border:1px solid #d1dde6;border-radius:999px;background:#fff;color:#496479;cursor:pointer;font-size:.875rem;font-weight:850;white-space:nowrap}.quick-date-bar>button:hover{border-color:#8bb8d4;background:#f2f8fc}.quick-date-bar>button.active{border-color:#2f83b8;background:#2f83b8;color:#fff;box-shadow:0 3px 9px rgba(47,131,184,.2)}.section-quick-dates{margin:0 0 9px}.manager-quick-dates{margin-bottom:-4px}
.manager-control-table.fastweb{min-width:1460px}
.manager-sale-amount-cell{min-width:118px;font-weight:900;color:var(--navy)}
@media(max-width:1300px){.manager-control-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.manager-control-filters>button{width:100%}}
@media(max-width:820px){.manager-control-filters{grid-template-columns:1fr}.manager-control-filters>button{width:100%}.manager-status-picker-menu{position:static;width:auto;box-shadow:none}}

/* r191: le checkbox non ereditano dimensioni e flex dei campi di ricerca. */
.manager-control-filters .manager-status-picker-menu{box-sizing:border-box;width:max(300px,100%);max-width:calc(100vw - 40px)}
.manager-control-filters .manager-status-picker-options label{display:grid;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:10px;min-height:42px;box-sizing:border-box;padding:8px;text-align:left;font-size:.875rem;line-height:1.35}
.manager-control-filters .manager-status-picker-options input[type="checkbox"]{flex:none;width:18px;min-width:18px;max-width:18px;height:18px;min-height:18px;margin:0;padding:0;accent-color:#2f83b8;cursor:pointer}
.manager-control-filters .manager-status-picker-options label>span{min-width:0;text-align:left;white-space:normal;overflow-wrap:break-word}
.manager-control-filters .manager-status-picker-options label:focus-within{background:#eef6fc;outline:2px solid #77acd0;outline-offset:-2px}
@media(max-width:820px){.manager-control-filters .manager-status-picker-menu{width:100%;max-width:100%}.manager-control-filters .manager-status-picker-options{max-height:320px}.manager-control-filters .manager-status-picker-options label{min-height:44px}}

/* r99 · totali giornalieri, vendite Foria e consuntivi tardivi */
.manager-filter-summary{display:grid;grid-template-columns:repeat(6,minmax(115px,1fr));overflow:hidden;border:1px solid #d6e2e9;border-radius:13px;background:#fff}
.manager-filter-summary-head{display:flex;grid-column:1/-1;align-items:center;justify-content:space-between;gap:12px;padding:9px 12px;border-bottom:1px solid #e2eaf0;background:#f4f8fb}.manager-filter-summary-head span{color:var(--navy);font-size:.875rem;font-weight:950}.manager-filter-summary-head small{color:#657b8c;font-size:.875rem;font-weight:750}
.manager-filter-total{display:grid;gap:4px;padding:11px 12px;border-right:1px solid #e7edf1}.manager-filter-total:last-child{border-right:0}.manager-filter-total span{color:#657b8c;font-size:.875rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.manager-filter-total strong{color:var(--navy);font-size:16px;font-variant-numeric:tabular-nums}
.manager-recharge-status.statement_after_manual{background:#f0e8ff;color:#67429a;white-space:normal}.manager-row-warning .manager-recharge-status.statement_after_manual{box-shadow:inset 0 0 0 1px #d7c5ee}
@media(max-width:1100px){.manager-filter-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.manager-filter-total:nth-child(4){border-right:0}.manager-filter-total:nth-child(n+5){border-top:1px solid #e7edf1}}
@media(max-width:620px){.manager-filter-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.manager-filter-summary-head{align-items:flex-start;flex-direction:column}.manager-filter-total:nth-child(n){border-top:1px solid #e7edf1;border-right:1px solid #e7edf1}.manager-filter-total:nth-child(2),.manager-filter-total:nth-child(3){border-top:0}.manager-filter-total:nth-child(odd){border-right:0}}

/* r100 · fatture JIT Vodafone e controllo del costo realmente pagato */
.manager-jit-panel{overflow:hidden;border-color:#c9dce8}.manager-jit-head{align-items:flex-start;background:linear-gradient(135deg,#f8fcff,#eef7fb)}.manager-jit-head>div:first-child{max-width:820px}.manager-jit-head h3{margin:2px 0 5px}.manager-jit-head p:last-child{margin:0;color:#5c7485;font-size:.875rem;line-height:1.5}.button-link{display:inline-flex;box-sizing:border-box;align-items:center;justify-content:center;min-height:38px;padding:9px 13px;border:1px solid #ccd8e1;border-radius:9px;background:#fff;color:var(--navy);font-size:.875rem;font-weight:850;text-decoration:none;white-space:nowrap}
.manager-jit-flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:10px;margin:0 16px;padding:12px;border:1px solid #d7e4ec;border-radius:12px;background:#f8fafc}.manager-jit-flow span{display:grid;gap:2px;text-align:center;color:var(--navy);font-size:.875rem;font-weight:950}.manager-jit-flow span small{color:#647c8d;font-size:.875rem;font-weight:750;text-transform:uppercase}.manager-jit-flow i{color:#2f86b6;font-size:18px;font-style:normal;font-weight:900}.manager-jit-empty{margin:0 16px 16px}.manager-jit-workspace{display:grid;gap:13px;padding:0 16px 16px}.manager-jit-toolbar{display:grid;grid-template-columns:minmax(280px,1fr) auto;align-items:end;gap:10px;margin:0;padding:0;border:0;background:transparent}.manager-jit-toolbar select{width:100%}.manager-jit-kpis{margin:0}.manager-jit-document{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:hidden;border:1px solid #d8e3ea;border-radius:12px;background:#fff}.manager-jit-document>div{display:grid;gap:3px;padding:11px 13px;border-right:1px solid #e4ebf0}.manager-jit-document>div:last-child{border-right:0}.manager-jit-document span{color:#687e8e;font-size:.875rem;font-weight:900;text-transform:uppercase}.manager-jit-document strong{overflow-wrap:anywhere;color:var(--navy);font-size:.875rem}.manager-jit-document small{overflow-wrap:anywhere;color:#627a8b;font-size:.875rem}.manager-jit-table{max-height:62dvh;overflow:auto;border-radius:12px}.manager-control-table.jit{min-width:1600px}.manager-control-table.jit thead{position:sticky;top:0;z-index:3}.manager-control-table.jit th{background:#edf5f9}.manager-jit-status{display:inline-flex;margin-bottom:6px;padding:5px 8px;border-radius:999px;background:#eef1f4;color:#526b7d;font-size:.875rem;font-weight:900;white-space:nowrap}.manager-jit-status.matched{background:#e1f3e8;color:#1c7046}.manager-jit-status.resolved_manual{background:#e6eefb;color:#345f9b}.manager-jit-status.quantity_mismatch,.manager-jit-status.amount_mismatch{background:#fff0cb;color:#845a00}.manager-jit-status.invoice_only,.manager-jit-status.statement_only{background:#fde7e5;color:#a13c35}.manager-jit-history{border-top:1px solid #e1e9ee}.manager-jit-history>summary{padding:12px 2px;color:#42637a;font-size:.875rem;font-weight:900;cursor:pointer}
@media(max-width:900px){.manager-jit-document{grid-template-columns:1fr}.manager-jit-document>div{border-right:0;border-bottom:1px solid #e4ebf0}.manager-jit-document>div:last-child{border-bottom:0}.manager-jit-toolbar{grid-template-columns:1fr}.manager-jit-toolbar .button-link{width:100%}}
@media(max-width:620px){.manager-jit-flow{grid-template-columns:1fr}.manager-jit-flow i{transform:rotate(90deg);text-align:center}.manager-jit-head .section-actions,.manager-jit-head .section-actions button{width:100%}}

/* r101 · registro economico JIT, anteprime visibili e revisione mobile completa */
.mooney-preview-document object,.mooney-preview-document object>iframe{display:block;width:100%;height:72vh;min-height:640px;border:0;background:#edf2f5}
.mooney-preview-fallback{display:grid;place-content:center;gap:8px;min-height:420px;padding:24px;color:#315d7e;text-align:center}.mooney-preview-fallback span{color:var(--muted);font-size:.875rem}.mooney-preview-fallback a{justify-self:center;text-decoration:none}
.manager-jit-flow{grid-template-columns:1fr auto 1fr auto 1fr auto 1fr}
.manager-jit-toolbar{grid-template-columns:minmax(280px,1fr) auto auto auto}
.manager-jit-economic-state{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px;border:1px solid #d8e3ea;border-left:5px solid #d5a13b;border-radius:12px;background:#fffaf0}.manager-jit-economic-state>div:first-child{display:grid;gap:5px}.manager-jit-economic-state>div:first-child>strong{color:#294b64;font-size:.875rem;line-height:1.45}.manager-jit-economic-state>div:first-child>small{color:#687e8f;font-size:.875rem}.manager-jit-economic-state>div:last-child{display:grid;gap:3px;min-width:145px;text-align:right}.manager-jit-economic-state>div:last-child small{color:#687e8f;font-size:.875rem;font-weight:900;text-transform:uppercase}.manager-jit-economic-state>div:last-child b{color:var(--navy);font-size:22px;font-variant-numeric:tabular-nums}
.manager-jit-economic-state.balanced,.manager-jit-economic-state.recovered,.manager-jit-economic-state.recovery_applied{border-left-color:#3f9668;background:#f2faf5}.manager-jit-economic-state.justified{border-left-color:#58738a;background:#f4f7f9}.manager-jit-economic-state.credit_available,.manager-jit-economic-state.credit_partly_used{border-left-color:#397eb1;background:#f1f8fd}
.manager-jit-status.waiting_statement,.manager-jit-status.to_recover,.manager-jit-status.partly_recovered{background:#fff0cb;color:#845a00}.manager-jit-status.balanced,.manager-jit-status.recovered,.manager-jit-status.recovery_applied{background:#e1f3e8;color:#1c7046}.manager-jit-status.credit_available,.manager-jit-status.credit_partly_used{background:#e3f0fa;color:#28638b}.manager-jit-status.justified{background:#e8edf2;color:#435b6d}
.manager-jit-ledger{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.manager-jit-ledger>section{min-width:0;padding:14px;border:1px solid #d9e4eb;border-radius:12px;background:#f8fafc}.manager-jit-ledger h4{margin:0;color:var(--navy);font-size:.875rem}.manager-jit-ledger>section>p{min-height:28px;margin:4px 0 10px;color:#647b8c;font-size:.875rem;line-height:1.45}.manager-jit-ledger .empty-inline{padding:18px 8px;font-size:.875rem}
.manager-jit-recovery-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:10px 0;border-top:1px solid #e1e9ee}.manager-jit-recovery-card:first-of-type{border-top:0}.manager-jit-recovery-card>div{display:grid;align-content:start;gap:3px;min-width:0}.manager-jit-recovery-card>div:last-child{justify-items:end}.manager-jit-recovery-card strong{overflow-wrap:anywhere;color:#294b64;font-size:.875rem}.manager-jit-recovery-card small{overflow-wrap:anywhere;color:#687e8f;font-size:.875rem;line-height:1.35}.manager-jit-recovery-card b{color:var(--navy);font-size:.875rem;white-space:nowrap}.manager-jit-recovery-card.available{padding:10px;border:1px solid #e3cc8f;border-radius:9px;background:#fffaf0}.manager-jit-recovery-card.available+.manager-jit-recovery-card.available{margin-top:7px}.manager-jit-recovery-card .mini-btn{margin-top:5px}
.daily-receipts-action-label{flex:1 0 100%;color:#60788a;font-size:.875rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase}

/* r103 · quadratura JIT complessiva e vista di tutte le fatture */
.manager-jit-period-overview{display:grid;gap:12px;padding:15px;border:1px solid #cbdfea;border-radius:14px;background:linear-gradient(145deg,#f7fbfe,#eef7fb)}
.manager-jit-period-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.manager-jit-period-head h4,.manager-jit-detail-title h4{margin:2px 0 4px;color:var(--navy);font-size:15px}.manager-jit-period-head p:last-child{max-width:760px;margin:0;color:#60798a;font-size:.875rem;line-height:1.5}.manager-jit-period-head button{flex:none}
.manager-jit-period-kpis{margin:0}.manager-jit-period-coverage{display:flex;align-items:center;gap:11px;padding:10px 12px;border:1px solid #d7e4ec;border-radius:11px;background:#fff}.manager-jit-period-coverage .manager-jit-status{flex:none;margin:0}.manager-jit-period-coverage>div{display:grid;gap:3px;min-width:0}.manager-jit-period-coverage strong{overflow-wrap:anywhere;color:#294b64;font-size:.875rem}.manager-jit-period-coverage small{overflow-wrap:anywhere;color:#687e8f;font-size:.875rem}
.manager-jit-period-table{max-height:52dvh;overflow:auto;border-radius:11px;background:#fff}.manager-control-table.jit-period{min-width:1450px}.manager-control-table.jit-period thead{position:sticky;top:0;z-index:3}.manager-control-table.jit-period th{background:#eaf4f9}.manager-control-table.jit-period tr.selected td{background:#eef8fd}.manager-control-table.jit-period tr.selected td:first-child{box-shadow:inset 4px 0 #2f86b6}.manager-control-table.jit-period .manager-jit-status{margin:0;white-space:normal}
.manager-jit-detail-title{padding-top:3px;border-top:1px solid #dbe6ec}.manager-jit-detail-title p{margin-top:12px}

@media(max-width:1080px){.manager-jit-ledger{grid-template-columns:1fr}.manager-jit-ledger>section>p{min-height:0}.manager-jit-toolbar{grid-template-columns:1fr 1fr}.manager-jit-toolbar label{grid-column:1/-1}.mooney-preview-document object,.mooney-preview-document object>iframe{height:58vh;min-height:480px}}

@media(max-width:820px){
  :root{--staging-content-height:42px}
  html,body{width:100%;max-width:100%;overflow-x:hidden}
  .is-staging .staging-banner{height:calc(var(--staging-content-height) + var(--safe-top));flex-direction:row;gap:7px;padding:var(--safe-top) 8px 0;line-height:1;white-space:nowrap}.is-staging .staging-banner strong{flex:none;font-size:.875rem;letter-spacing:.04em}.is-staging .staging-banner span{max-width:54vw;overflow:hidden;font-size:.875rem;text-overflow:ellipsis;white-space:nowrap}
  .topbar,.is-staging .topbar{height:64px;min-height:64px;padding:0 12px}.topbar h1{overflow:hidden;font-size:18px;text-overflow:ellipsis;white-space:nowrap}.topbar p{font-size:.875rem}
  main{padding-bottom:calc(112px + env(safe-area-inset-bottom))}.view{padding-bottom:8px}
  .mobile-app-nav{min-height:62px;padding:5px 5px max(5px,env(safe-area-inset-bottom));border-radius:16px}.mobile-app-nav button{gap:1px;font-size:.875rem}.mobile-app-nav button span,.mobile-app-nav button span svg{width:19px;height:19px}
  #view-receipts>.section-head{align-items:flex-start;margin:0 0 10px}#view-receipts>.section-head h2{font-size:21px;line-height:1.18}#view-receipts>.section-head p:last-child{font-size:.875rem;line-height:1.4}
  .daily-receipts-panel>.panel-head{align-items:flex-start;flex-direction:column;gap:10px;padding:15px}.daily-receipts-panel>.panel-head h3{font-size:20px}.daily-receipts-panel>.panel-head .form-subtitle{margin-bottom:0;font-size:.875rem;line-height:1.45}.daily-report-state{align-self:flex-start}
  .daily-receipts-toolbar,.is-staging .daily-receipts-toolbar{position:static;top:auto;margin:10px;padding:10px;box-shadow:0 4px 13px rgba(20,47,75,.08)}
  .daily-receipts-filter-row{grid-template-columns:1fr}.daily-receipts-filter-row label,.daily-receipts-filter-row input,.daily-receipts-filter-row select,.daily-receipts-filter-row button{width:100%;min-width:0;max-width:100%}.daily-receipts-filter-row select{overflow:visible;text-overflow:clip}.daily-receipts-filter-row #dailyReceiptsPreviewBtn{min-height:48px;font-size:16px}
  .daily-receipts-action-row{align-items:stretch;flex-direction:column;gap:12px}.daily-receipts-operation-actions{display:grid;grid-template-columns:1fr;width:100%}.daily-receipts-output-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}.daily-receipts-operation-actions button,.daily-receipts-output-actions button{width:100%;min-width:0;white-space:normal}.daily-receipts-action-label{grid-column:1/-1}
  #view-receipts .kpi-grid.mini{grid-template-columns:1fr 1fr;gap:8px;margin-inline:10px}#view-receipts .kpi{padding:12px}#view-receipts .kpi .value{font-size:21px}
  .manager-jit-period-head{flex-direction:column}.manager-jit-period-head button{width:100%}.manager-jit-period-coverage{align-items:flex-start;flex-direction:column}.manager-jit-period-table{max-height:58dvh}.manager-jit-toolbar{grid-template-columns:1fr}.manager-jit-toolbar label{grid-column:auto}.manager-jit-toolbar>*{width:100%}.manager-jit-economic-state{align-items:flex-start;flex-direction:column}.manager-jit-economic-state>div:last-child{min-width:0;text-align:left}.manager-jit-recovery-card{grid-template-columns:1fr}.manager-jit-recovery-card>div:last-child{justify-items:start}
  dialog[open]{box-sizing:border-box;width:100vw!important;max-width:100vw!important;height:100dvh!important;max-height:100dvh!important;margin:0!important;padding:calc(62px + env(safe-area-inset-top)) max(10px,env(safe-area-inset-right)) calc(26px + env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left))!important;border-radius:0!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior:contain;scroll-padding:calc(62px + env(safe-area-inset-top)) 0 calc(26px + env(safe-area-inset-bottom))}
  dialog[open]>form,dialog[open]>.mooney-document-shell,dialog[open]>*{box-sizing:border-box;min-width:0!important;max-width:100%!important}
  dialog[open] .dialog-x,dialog[open] .dialog-close{position:fixed!important;top:calc(8px + env(safe-area-inset-top))!important;right:calc(8px + env(safe-area-inset-right))!important;z-index:2147483647!important;display:grid!important;place-items:center;width:46px!important;height:46px!important;margin:0!important;padding:0!important;border:2px solid #8abde9!important;border-radius:10px!important;background:rgba(255,255,255,.98)!important;color:#607386!important;font-size:31px!important;line-height:1!important;box-shadow:0 5px 16px rgba(17,47,72,.18)!important}
  dialog[open] .dialog-actions{flex-wrap:wrap;padding-bottom:max(4px,env(safe-area-inset-bottom))}dialog[open] .dialog-actions button{min-width:min(100%,120px)}
  .cash-closure-dialog form,.cash-closure-detail-dialog,.mooney-preview-dialog form,.mooney-closed-dialog form,.mooney-recharge-dialog form{padding:0!important}.cash-closure-detail-dialog>#cashClosureDetailHead{padding-right:0}
  .mooney-preview-document object,.mooney-preview-document object>iframe{height:50dvh;min-height:330px}.mooney-preview-layout{margin-top:10px}.mooney-document-shell{padding:0!important}.mooney-document-head{margin-right:0}.mooney-document-shell iframe{height:62dvh;min-height:330px}
}

@media(max-width:440px){.daily-receipts-output-actions{grid-template-columns:1fr 1fr}.daily-receipts-output-actions button{padding-inline:8px;font-size:.875rem}#view-receipts .kpi-grid.mini{grid-template-columns:1fr 1fr}.manager-jit-flow{grid-template-columns:1fr}.manager-jit-flow i{transform:rotate(90deg);text-align:center}}
@media(max-width:360px){.daily-receipts-output-actions,#view-receipts .kpi-grid.mini{grid-template-columns:1fr}}
@media(max-width:920px) and (orientation:landscape){dialog[open]{padding-top:calc(54px + env(safe-area-inset-top))!important}.mobile-app-nav{min-height:54px}.mooney-preview-document object,.mooney-preview-document object>iframe{height:62dvh;min-height:260px}}

/* r136 · Incassi smartphone: filtri in una sola colonna e azioni sempre visibili */
@media(max-width:820px){
  #view-receipts{width:100%;max-width:100%;min-width:0;overflow-x:hidden;padding-bottom:calc(122px + env(safe-area-inset-bottom))}
  #view-receipts .daily-receipts-panel{width:100%;max-width:100%;min-width:0;overflow:hidden}
  #view-receipts .daily-receipts-toolbar,#view-receipts .is-staging .daily-receipts-toolbar{display:grid!important;grid-template-columns:minmax(0,1fr)!important;width:auto;max-width:100%;min-width:0;margin:10px!important;padding:10px!important;overflow:hidden}
  #view-receipts .daily-receipts-toolbar>*{grid-column:1/-1!important;min-width:0;max-width:100%}
  #view-receipts .daily-receipts-filter-row{display:grid!important;grid-template-columns:minmax(0,1fr)!important;width:100%;min-width:0;gap:10px}
  #view-receipts .daily-receipts-filter-row>*{grid-column:1!important;width:100%!important;min-width:0!important;max-width:100%!important}
  #view-receipts .daily-receipts-filter-row input,#view-receipts .daily-receipts-filter-row select,#view-receipts .daily-receipts-filter-row button{width:100%!important;min-width:0!important;max-width:100%!important;box-sizing:border-box}
  #view-receipts .quick-date-bar{display:flex!important;width:100%;max-width:100%;overflow-x:auto;gap:7px;padding-bottom:4px;-webkit-overflow-scrolling:touch}
  #view-receipts .quick-date-bar button{flex:0 0 auto;width:auto!important;min-width:max-content!important}
  #view-receipts .daily-receipts-action-row,#view-receipts .daily-receipts-operation-actions,#view-receipts .daily-receipts-output-actions{display:grid!important;grid-template-columns:minmax(0,1fr)!important;width:100%;min-width:0;gap:8px}
  #view-receipts .daily-receipts-action-row button,#view-receipts .daily-receipts-operation-actions button,#view-receipts .daily-receipts-output-actions button{width:100%;min-width:0;min-height:48px}
  #view-receipts .daily-closed-dates{align-items:flex-start;flex-direction:column;margin:0 10px 12px}#view-receipts .daily-closed-dates span{text-align:left}
}

/* r104 · identità visiva inequivocabile Produzione / Collaudo */
:root{--environment-accent:#1f7752;--environment-soft:#e8f5ee;--environment-deep:#15543a}
.environment-brand-frame{position:relative;display:inline-flex;align-items:center;justify-content:center;min-width:0;max-width:100%}
.environment-logo-tag{position:absolute;right:4px;bottom:-7px;z-index:2;padding:4px 8px;border:2px solid #fff;border-radius:999px;background:var(--environment-accent);color:#fff;font-size:.875rem;font-weight:950;letter-spacing:.08em;line-height:1;text-transform:uppercase;box-shadow:0 4px 10px rgba(15,52,40,.22)}
.login-brand .environment-brand-frame{flex:0 1 260px}
.sidebar-environment-brand{width:100%;max-width:210px}
.topbar-title-row{display:flex;align-items:center;gap:9px;min-width:0}
.topbar-environment-badge{display:inline-flex;align-items:center;gap:5px;flex:none;padding:4px 8px;border:1px solid #b9dfcd;border-radius:999px;background:var(--environment-soft);color:var(--environment-deep);font-size:.875rem;font-weight:950;letter-spacing:.08em;line-height:1;text-transform:uppercase}
.topbar-environment-badge::before{width:6px;height:6px;border-radius:50%;background:var(--environment-accent);content:""}
.environment-badge{background:var(--environment-accent);color:#fff}
.is-production .staging-banner{display:none}
.is-staging{--environment-accent:#b42318;--environment-soft:#fff0ee;--environment-deep:#861a12}
.is-staging .login-overlay{background:linear-gradient(145deg,#51120f 0,#8f2119 42%,#152f49 100%)}
.is-staging .login-card{border:2px solid #d95b50;box-shadow:0 35px 100px rgba(72,13,10,.48)}
.is-staging .logo-row{background:linear-gradient(180deg,rgba(180,35,24,.18),rgba(180,35,24,.03))}
.is-staging .sidebar{box-shadow:inset -4px 0 #b42318,8px 0 28px rgba(90,22,18,.18)}
.is-staging .sidebar nav button.active{color:#8d1c15;box-shadow:0 6px 18px rgba(94,24,18,.18)}
.is-staging .topbar{border-bottom-color:#e6ada8;box-shadow:0 3px 12px rgba(123,29,22,.06)}
.is-staging .current-company{background:rgba(180,35,24,.15)}
.is-staging .environment-logo-tag{box-shadow:0 4px 11px rgba(111,22,16,.3)}
@media(max-width:820px){.topbar-title-row{gap:6px}.topbar-environment-badge{padding:3px 6px;font-size:.875rem}.is-production .topbar-environment-badge{display:none}.login-brand .environment-brand-frame{flex-basis:220px}.environment-logo-tag{right:2px}}
@media(max-width:440px){.is-staging .staging-banner span{max-width:48vw}.login-brand{align-items:flex-start;flex-direction:column}.login-brand .environment-brand-frame{flex-basis:auto;width:100%}.environment-logo-tag{bottom:-5px}}

/* r105 · iPhone/PWA: area sicura e comandi superiori sempre raggiungibili. */
@media(max-width:820px){
  html.is-production .topbar{top:0;height:calc(64px + var(--safe-top));min-height:calc(64px + var(--safe-top));padding:var(--safe-top) max(12px,env(safe-area-inset-right,0px)) 0 max(12px,env(safe-area-inset-left,0px))}
  html.is-staging .topbar{height:64px;min-height:64px;padding:0 max(12px,env(safe-area-inset-right,0px)) 0 max(12px,env(safe-area-inset-left,0px))}
  .topbar>div:nth-child(2){min-width:0}
  .topbar .menu-btn,.topbar .notification-bell,.topbar .top-actions>.device-security-button,.topbar .user-chip strong{width:44px;min-width:44px;height:44px;min-height:44px}
  .topbar .menu-btn{flex-basis:44px;touch-action:manipulation}
  .topbar .top-actions{min-width:0;gap:6px}
  .topbar button{touch-action:manipulation}
}

/* r113 · anteprima Mooney rasterizzata, indipendente dal lettore PDF del browser. */
.mooney-pdf-viewer{position:relative;overflow:auto;overscroll-behavior:contain;border:1px solid #cbd9e3;border-radius:11px;background:#e7edf1;scrollbar-gutter:stable}
.mooney-pdf-viewer img{display:block;width:min(100%,1100px);height:auto;margin:18px auto;background:#fff;box-shadow:0 5px 22px rgba(18,46,67,.16);transition:opacity .15s ease}
.mooney-pdf-viewer img:not([src]){display:none}
.mooney-pdf-viewer img.loading{opacity:.28}
.mooney-pdf-viewer-status{position:absolute;inset:0;z-index:2;display:grid;place-content:center;padding:24px;color:#315d7e;font-size:.875rem;font-weight:800;text-align:center;pointer-events:none}
.mooney-pdf-viewer-status.hidden{display:none}
.mooney-pdf-navigation{display:flex;align-items:center;justify-content:center;gap:12px;padding:11px 12px;border:1px solid #d5e0e7;border-top:0;border-radius:0 0 11px 11px;background:#fff}
.mooney-pdf-navigation strong{min-width:110px;color:var(--navy);font-size:.875rem;text-align:center}
.mooney-pdf-navigation .secondary.compact{min-height:36px;padding:8px 12px}
.mooney-pdf-navigation .mooney-pdf-download{margin-left:auto;text-decoration:none}
.mooney-preview-document{display:grid;grid-template-rows:minmax(0,1fr) auto}
.mooney-preview-document>.mooney-pdf-viewer{height:calc(72vh - 52px);min-height:586px;border:0;border-radius:0}
.mooney-preview-document>.mooney-pdf-navigation{border-right:0;border-bottom:0;border-left:0;border-radius:0}
.mooney-document-shell>.mooney-pdf-viewer{height:calc(78vh - 54px);min-height:506px;border-radius:11px 11px 0 0}
@media(max-width:1080px){.mooney-preview-document>.mooney-pdf-viewer{height:calc(58vh - 52px);min-height:426px}}
@media(max-width:900px){.mooney-document-shell>.mooney-pdf-viewer{height:calc(68vh - 54px);min-height:406px}}
@media(max-width:700px){
  .mooney-pdf-viewer img{width:100%;margin:0 auto;box-shadow:none}
  .mooney-pdf-navigation{display:grid;grid-template-columns:1fr auto 1fr;gap:7px;padding:8px}
  .mooney-pdf-navigation .secondary.compact{min-width:0;padding:8px 6px;font-size:.875rem}
  .mooney-pdf-navigation strong{min-width:0;font-size:.875rem}
  .mooney-pdf-navigation .mooney-pdf-download{grid-column:1/-1;width:100%;margin:0;text-align:center}
  .mooney-preview-document>.mooney-pdf-viewer{height:calc(48dvh - 44px);min-height:316px}
  .mooney-document-shell>.mooney-pdf-viewer{height:calc(64dvh - 48px);min-height:332px}
}
@media(max-width:920px) and (orientation:landscape){.mooney-preview-document>.mooney-pdf-viewer{height:calc(62dvh - 46px);min-height:214px}}

/* r119 · archivio Incassi separato e presa visione amministrativa. */
.cash-closure-split{display:grid;gap:18px;margin-top:14px}
.cash-closure-split>section{min-width:0}
.cash-closure-ack-state{display:block;margin-top:5px;font-style:normal;font-size:.875rem;font-weight:700}
.cash-closure-ack-state.success{color:#16834b}
.cash-closure-ack-state.warning{color:#9a6500}
@media(max-width:760px){.cash-closure-split{gap:14px}.cash-closure-detail-dialog .cash-closure-totals{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* r121-r123 · colori e indicatori Vendite dalle fonti operative. */
.sale-has-recharge:not(.sale-has-substitution):not(.sale-has-sostbuz)>td{background:#fff9d8!important}
.sale-has-recharge:not(.sale-has-substitution):not(.sale-has-sostbuz)>td:first-child{box-shadow:inset 6px 0 #e1b90b!important}
.sale-has-accessory:not(.sale-has-substitution):not(.sale-has-sostbuz)>td{background:#fff0e0!important}
.sale-has-accessory:not(.sale-has-substitution):not(.sale-has-sostbuz)>td:first-child{box-shadow:inset 6px 0 #e87a1a!important}
.sale-has-smartphone:not(.sale-has-substitution):not(.sale-has-sostbuz)>td{background:#e9f4ff!important}
.sale-has-smartphone:not(.sale-has-substitution):not(.sale-has-sostbuz)>td:first-child{box-shadow:inset 6px 0 #237fc9!important}
.sale-kind-badges{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}
.sale-kind-badge{display:inline-flex;align-items:center;width:max-content;padding:3px 7px;border-radius:999px;font-size:.875rem;font-weight:950;letter-spacing:.02em;text-transform:uppercase}
.sale-kind-badge.recharge,.sale-kind-label.recharge{background:#fff0a6;color:#755300}
.sale-kind-badge.accessory,.sale-kind-label.accessory{background:#ffe0bf;color:#944400}
.sale-kind-badge.smartphone,.sale-kind-label.smartphone{background:#dceeff;color:#15568d}
.sale-document-row.sale-has-kinds>td:first-child{position:relative;padding-left:20px!important}
.sale-document-row.sale-has-kinds:is(.sale-has-substitution,.sale-has-sostbuz)>td:first-child{padding-left:26px!important}
.sale-kind-bars{position:absolute;z-index:2;left:0;top:0;bottom:0;display:flex;align-items:stretch;pointer-events:none}
.sale-document-row:is(.sale-has-substitution,.sale-has-sostbuz) .sale-kind-bars{left:6px}
.sale-kind-bar{display:block;width:5px;height:100%}
.sale-kind-bar.recharge{background:#e1b90b}
.sale-kind-bar.accessory{background:#e87a1a}
.sale-kind-bar.smartphone{background:#237fc9}
.sale-detail-main-row.sale-product-recharge:not(.sale-product-substitution):not(.sale-product-sostbuz)>td{background:#fff8cf!important}
.sale-detail-main-row.sale-product-recharge:not(.sale-product-substitution):not(.sale-product-sostbuz)>td:first-child{box-shadow:inset 6px 0 #d9ad00!important}
.sale-detail-main-row.sale-product-accessory:not(.sale-product-substitution):not(.sale-product-sostbuz)>td{background:#fff0df!important}
.sale-detail-main-row.sale-product-accessory:not(.sale-product-substitution):not(.sale-product-sostbuz)>td:first-child{box-shadow:inset 6px 0 #e97b19!important}
.sale-detail-main-row.sale-product-smartphone:not(.sale-product-substitution):not(.sale-product-sostbuz)>td{background:#e8f3ff!important}
.sale-detail-main-row.sale-product-smartphone:not(.sale-product-substitution):not(.sale-product-sostbuz)>td:first-child{box-shadow:inset 6px 0 #1877c8!important}
.sale-detail-main-row.sale-product-multiple:not(.sale-product-substitution):not(.sale-product-sostbuz)>td{background:#f7fafc!important}
.sale-detail-main-row.sale-product-multiple:not(.sale-product-substitution):not(.sale-product-sostbuz)>td:first-child{box-shadow:inset 6px 0 #60788f!important}
.sale-kind-labels{display:flex;flex-wrap:wrap;gap:4px;margin:6px 0 0 32px}
.sale-kind-labels .sale-kind-label{display:inline-flex;width:max-content;margin:0}
/* r125 · controlli economici separati e confronto unificato */
#managerFinanceControlPanel .manager-finance-panel{margin-top:0}
.manager-finance-view-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:12px 12px 10px}
.manager-finance-view-tabs button{border:1px solid var(--border);background:#fff;color:var(--text);border-radius:999px;padding:8px 14px;font-weight:800;cursor:pointer}
.manager-finance-view-tabs button.active{background:var(--blue,#1976d2);border-color:var(--blue,#1976d2);color:#fff}
.manager-finance-unified{min-width:0;margin:0 12px 12px;border:1px solid var(--border);border-radius:16px;background:#fff;overflow:hidden}
.manager-finance-unified>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:13px 16px;background:#f6f9fc;border-bottom:1px solid var(--border)}
.manager-finance-unified>header div{display:grid;gap:3px}.manager-finance-unified>header strong{font-size:15px}.manager-finance-unified>header span{font-size:.875rem;color:var(--muted)}
.manager-finance-unified .table-card{border:0;border-radius:0;max-height:620px;overflow:auto}
.manager-finance-unified-table{min-width:1180px}.manager-finance-unified-table td{vertical-align:top}.manager-finance-unified-table th:nth-child(4),.manager-finance-unified-table th:nth-child(5){min-width:145px}.manager-finance-unified-table th:last-child{min-width:215px}
.manager-finance-source-cell strong{font-size:14px;font-variant-numeric:tabular-nums}.manager-finance-source-cell.manager-finance-missing{color:var(--muted);background:#fafbfc}
.manager-finance-row-details{margin-top:8px;color:#536b7f;font-size:.875rem}.manager-finance-row-details>summary{width:max-content;cursor:pointer;color:#286f9f;font-weight:850}.manager-finance-row-details>div{max-width:330px;margin-top:4px;overflow-wrap:anywhere;line-height:1.35}
.manager-finance-kpis .brand-summary-card{appearance:none;text-align:left;cursor:pointer;font:inherit}
.manager-finance-kpis .brand-summary-card.active{box-shadow:0 0 0 2px var(--blue,#1976d2) inset}
@media(max-width:1100px){.manager-finance-unified .table-card{max-height:520px}}
@media(max-width:820px){.manager-finance-view-tabs,.manager-finance-unified{margin-inline:10px}.manager-finance-unified>header{padding-inline:12px}}

/* r124 · validazione CEO delle chiusure societarie separate. */
.cash-validation-queue{margin:0 0 18px;padding:14px;border:1px solid #cbddeb;border-radius:14px;background:#f7fbfe}
.cash-validation-card{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;margin-top:8px;border:1px solid #dbe5ed;border-radius:12px;background:#fff}
.cash-validation-card>div:first-child{display:grid;gap:4px}.cash-validation-card small,.cash-validation-card em{display:block;color:#64788b;font-style:normal}
.cash-validation-card.returned{border-color:#e8c16c;background:#fffaf0}.cash-validation-card.approved{border-color:#b9dfc9;background:#f5fcf7}
.cash-closure-validation-state{display:inline-flex;margin:6px 7px 0 0;padding:4px 8px;border-radius:999px;font-style:normal;font-size:.875rem;font-weight:800}
.cash-closure-validation-state.success{color:#176b3a;background:#e2f4e8}.cash-closure-validation-state.warning{color:#8a5b00;background:#fff1c8}
.cash-ceo-history{margin:0 0 16px;border:1px solid #dbe5ed;border-radius:12px;background:#f8fafc}
.cash-ceo-history>summary{cursor:pointer;padding:12px 14px;font-weight:800}.cash-ceo-history>.cash-ceo-delivery-card{margin:0 10px 10px}
@media(max-width:760px){.cash-validation-card{align-items:flex-start;flex-direction:column}.cash-validation-card .mini-actions{width:100%;flex-wrap:wrap}}

/* r124 · estratti operatori e documenti manuali nel partitario fiscale. */
.fiscal-operator-panel{margin-top:18px}.fiscal-operator-tabs{display:flex;gap:7px;flex-wrap:wrap;margin:12px 0 14px}
.fiscal-operator-upload-label{display:inline-flex;align-items:center;justify-content:center;cursor:pointer;white-space:nowrap;user-select:none}.fiscal-operator-upload-label:focus-visible{outline:3px solid rgba(31,120,184,.25);outline-offset:2px}
.cash-allocation-fixed-status{display:flex;align-items:center;min-height:38px;padding:9px 12px;border:1px solid #b9dfc9;border-radius:9px;background:#f5fcf7;color:#176b3a;font-size:.875rem;font-weight:850}
.fiscal-operator-tabs button{padding:7px 12px;border:1px solid #d6e1e9;border-radius:999px;background:#fff;color:#27445c;font-weight:800;cursor:pointer}.fiscal-operator-tabs button.active{background:#1f78b8;border-color:#1f78b8;color:#fff}
.fiscal-operator-import-list{display:grid;gap:9px}.fiscal-operator-import-card{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;border:1px solid #dde7ee;border-radius:12px;background:#fff}.fiscal-operator-import-card>div:first-child{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:3px 8px}.fiscal-operator-import-card small{grid-column:1/-1;color:#687d8f}
.fiscal-operator-dialog .table-card{max-height:52vh;overflow:auto}.fiscal-operator-dialog thead{position:sticky;top:0;z-index:2;background:#f5f8fb}.fiscal-operator-dialog td small{display:block;margin-top:3px;color:#728497}.fiscal-operator-review{background:#fffaf0}.fiscal-operator-closed{background:#f3fbf5}
@media(max-width:760px){.fiscal-operator-import-card{align-items:flex-start;flex-direction:column}.fiscal-operator-import-card .mini-actions{width:100%;flex-wrap:wrap}.fiscal-operator-panel .panel-head-actions{width:100%;display:grid;grid-template-columns:1fr}}

/* r124 · conto economico Vodafone più compatto e consultabile. */
.vodafone-accordion{overflow:hidden}
.vodafone-accordion>summary{cursor:pointer;list-style:none;user-select:none}
.vodafone-accordion>summary::-webkit-details-marker{display:none}
.vodafone-accordion>summary>span:last-child::before{content:'▾';display:inline-block;margin-right:7px;transition:transform .16s ease}
.vodafone-accordion:not([open])>summary>span:last-child::before{transform:rotate(-90deg)}
.vodafone-inline-filter{display:grid;grid-template-columns:minmax(230px,2fr) repeat(5,minmax(135px,1fr));gap:8px;padding:10px 14px 8px;border-top:1px solid var(--border);background:#f8fafc;position:sticky;top:0;z-index:5}
.vodafone-inline-filter input,.vodafone-inline-filter select{width:100%;min-width:0}
.vodafone-filter-check{display:flex;align-items:center;gap:7px;white-space:nowrap;font-size:.875rem;font-weight:750}.vodafone-filter-check input{width:auto}
.vodafone-economic-table{max-height:610px;overflow:auto}
.vodafone-economic-table thead{position:sticky;top:0;z-index:3;background:#f4f7fa;box-shadow:0 1px 0 var(--border)}
.vodafone-track-summary td{padding:0!important;background:#eaf2f8!important;border-top:1px solid #cddde9!important}.vodafone-track-summary button{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;padding:10px 14px;border:0;background:transparent;color:#173b55;cursor:pointer;text-align:left}.vodafone-track-summary button>span:last-child{font-size:.875rem;color:#60778a;white-space:nowrap}
.vodafone-distribution-tabs{display:flex;gap:7px;flex-wrap:wrap}
.vodafone-distribution-tabs button.active{background:var(--blue,#1976d2);border-color:var(--blue,#1976d2);color:#fff}
.vodafone-distribution-filter{display:grid;grid-template-columns:minmax(220px,1fr) minmax(150px,auto) minmax(110px,auto) auto minmax(210px,auto);gap:8px;align-items:center;padding:10px 14px;background:#f8fafc;border-top:1px solid var(--border)}
.vodafone-distribution-filter strong{text-align:right;color:#244b67;font-size:.875rem}.vodafone-distribution-panel tfoot{position:sticky;bottom:0;z-index:2;background:#eaf2f8;box-shadow:0 -1px 0 #cbdce8}.vodafone-distribution-panel tfoot th{white-space:nowrap}
.vodafone-distribution-panel>[data-vodafone-breakdown-panel]{max-height:620px;overflow:auto}
.vodafone-distribution-panel thead{position:sticky;top:0;z-index:2;background:#f4f7fa}
.vodafone-token-total td{background:#edf6fc!important;border-top:2px solid #9bc6e3;font-weight:800}
@media(max-width:1250px){.vodafone-inline-filter{grid-template-columns:repeat(3,minmax(160px,1fr))}.vodafone-distribution-filter{grid-template-columns:1fr 1fr 1fr}.vodafone-distribution-filter strong{grid-column:1/-1;text-align:left}}
@media(max-width:760px){.vodafone-accordion>summary{align-items:flex-start}.vodafone-inline-filter{grid-template-columns:1fr 1fr;padding:8px;position:static}.vodafone-inline-filter>input:first-child{grid-column:1/-1}.vodafone-economic-table{max-height:72vh}.vodafone-track-summary button{align-items:flex-start;flex-direction:column;gap:3px}.vodafone-track-summary button>span:last-child{white-space:normal}.vodafone-distribution-tabs{width:100%}.vodafone-distribution-tabs button{flex:1}.vodafone-distribution-filter{grid-template-columns:1fr 1fr}.vodafone-distribution-filter input{grid-column:1/-1}.vodafone-distribution-filter strong{grid-column:1/-1}.vodafone-distribution-panel>[data-vodafone-breakdown-panel]{max-height:none}.vodafone-distribution-panel table,.vodafone-distribution-panel thead,.vodafone-distribution-panel tbody,.vodafone-distribution-panel tfoot,.vodafone-distribution-panel tr,.vodafone-distribution-panel th,.vodafone-distribution-panel td{display:block}.vodafone-distribution-panel thead{display:none}.vodafone-distribution-panel tbody tr{margin:8px;border:1px solid var(--border);border-radius:12px;padding:9px;background:#fff}.vodafone-distribution-panel tbody td{display:flex;justify-content:space-between;gap:12px;padding:6px 8px!important;border:0!important}.vodafone-distribution-panel tfoot{position:static;margin:8px}.vodafone-distribution-panel tfoot th{display:none}.vodafone-distribution-panel tfoot th:first-child{display:block;padding:10px;white-space:normal}}

/* r132 · data effettiva delle fonti operative sempre visibile. */
.data-freshness-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:10px;margin:-4px 0 16px}
.data-freshness-card{display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:12px;min-width:0;padding:13px 14px;border:1px solid #bddac9;border-left:5px solid #3b9664;border-radius:13px;background:linear-gradient(135deg,#f8fdfa,#eef9f3);box-shadow:0 4px 13px rgba(25,78,51,.055)}
.data-freshness-card.warning{border-color:#ead19b;border-left-color:#d39a1d;background:linear-gradient(135deg,#fffdf8,#fff7e7);box-shadow:0 4px 13px rgba(122,87,11,.055)}
.data-freshness-card.missing{border-color:#e9c3c6;border-left-color:#b94d53;background:linear-gradient(135deg,#fffafa,#fdf0f1);box-shadow:0 4px 13px rgba(118,37,42,.05)}
.data-freshness-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:#dff2e7;color:#217047;font-size:18px;font-weight:950}
.data-freshness-card.warning .data-freshness-icon{background:#ffefc7;color:#906200}.data-freshness-card.missing .data-freshness-icon{background:#f8dde0;color:#a23f44}
.data-freshness-copy{display:grid;gap:3px;min-width:0}.data-freshness-copy small{overflow:hidden;color:#587184;font-size:.875rem;font-weight:950;letter-spacing:.08em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.data-freshness-copy strong{color:#143b56;font-size:15px;line-height:1.2}.data-freshness-copy>span{overflow-wrap:anywhere;color:#647b8d;font-size:.875rem;line-height:1.4}
.data-freshness-badge{align-self:start;padding:5px 8px;border-radius:999px;background:#dff2e7;color:#217047;font-size:.875rem;font-weight:950;letter-spacing:.04em;white-space:nowrap}.data-freshness-card.warning .data-freshness-badge{background:#ffedbd;color:#875b00}.data-freshness-card.missing .data-freshness-badge{background:#f7dfe1;color:#9d343b}
.production-freshness{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:0}
@media(max-width:900px){.data-freshness-strip,.production-freshness{grid-template-columns:1fr}}
@media(max-width:620px){.data-freshness-card{grid-template-columns:36px minmax(0,1fr);align-items:start;padding:12px}.data-freshness-icon{width:34px;height:34px}.data-freshness-badge{grid-column:2;justify-self:start}.data-freshness-copy strong{font-size:14px}}

/* r142 · dock mobile globale fuori dal contenitore scorrevole e spazio utile in ogni sezione. */
@media(max-width:820px){
  :root{--mobile-nav-clearance:calc(100px + env(safe-area-inset-bottom))}
  body>.mobile-app-nav{position:fixed!important;left:max(12px,env(safe-area-inset-left))!important;right:max(12px,env(safe-area-inset-right))!important;bottom:max(10px,env(safe-area-inset-bottom))!important;z-index:2147483000;display:grid;transform:translateZ(0);isolation:isolate;box-sizing:border-box}
  main{padding-bottom:var(--mobile-nav-clearance)!important}
  main>.view{max-width:100%;min-width:0;box-sizing:border-box}
  body.sidebar-mobile-open>.mobile-app-nav{visibility:hidden;pointer-events:none}
}

/* r143 · Salvadanaio Compass: filtri data, totali filtrati e chiusura multipla. */
.manager-finance-filters{grid-template-columns:minmax(240px,1fr) 140px 140px 180px 180px auto;align-items:end}
.manager-finance-date-filter{display:grid;gap:4px;min-width:0}.manager-finance-date-filter>span{padding-left:2px;color:#60778a;font-size:.875rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.manager-finance-date-filter input{width:100%;min-width:0}
.manager-finance-filtered-totals{grid-template-columns:repeat(5,minmax(0,1fr));padding:0 12px 10px}.manager-finance-filtered-totals .brand-summary-card{min-height:70px;box-shadow:none}.manager-finance-filtered-totals .brand-summary-card strong{font-variant-numeric:tabular-nums}
.manager-finance-select-cell{width:42px;min-width:42px;text-align:center!important}.manager-finance-select-cell input{width:18px;height:18px;margin:0;accent-color:var(--blue,#1976d2);cursor:pointer}
.manager-finance-unified>header #managerFinanceBulkClose{align-self:center;white-space:nowrap}
@media(max-width:1320px){.manager-finance-filters{grid-template-columns:minmax(240px,1fr) 150px 150px}.manager-finance-filters #managerFinanceSearch{grid-column:1/-1}.manager-finance-filters #managerFinanceClear{grid-column:auto}.manager-finance-filtered-totals{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:820px){.manager-finance-filters{grid-template-columns:1fr 1fr}.manager-finance-filters #managerFinanceSearch{grid-column:1/-1}.manager-finance-filters #managerFinanceClear{grid-column:1/-1}.manager-finance-filtered-totals{grid-template-columns:1fr 1fr;padding-inline:10px}.manager-finance-filtered-totals .brand-summary-card:last-child{grid-column:1/-1}.manager-finance-unified>header{align-items:stretch;flex-direction:column}.manager-finance-unified>header #managerFinanceBulkClose{width:100%}}

/* r144 · Progetto SKY Round 5G: avanzamenti SKY BRONZE da Vendite MIRA. */
#skyProductionPanel{display:grid;gap:16px}
#skyProductionPanel.hidden{display:none}
.sky-economic-panel{overflow:hidden;border-color:#ded1ee;background:linear-gradient(155deg,#fff 0%,#fff 70%,#faf4ff 100%)}
.sky-economic-panel>.panel-head{border-bottom:1px solid #eee4f4;background:linear-gradient(90deg,rgba(242,33,138,.055),rgba(73,77,244,.045))}
.sky-economic-summary{margin:16px 18px 12px}
.sky-economic-summary .brand-summary-card{min-height:88px;box-shadow:none}
#skyEconomicNotice{margin:0 18px 14px}
#skyEconomicNotice ul{display:grid;gap:4px;margin:7px 0 0;padding-left:18px}
.sky-progress-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin:0 18px 18px}
.sky-progress-card{display:grid;gap:9px;padding:14px 15px;border:1px solid #e1d8ea;border-radius:13px;background:#fff;box-shadow:0 5px 16px rgba(35,34,81,.045)}
.sky-progress-card>div:first-child{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.sky-progress-card span{color:#64778a;font-size:.875rem;font-weight:900;text-transform:uppercase;letter-spacing:.45px}
.sky-progress-card strong{color:var(--navy);font-size:15px;white-space:nowrap}
.sky-progress-card small{color:#65798b;font-size:.875rem;line-height:1.35}
.sky-progress-track{height:9px;overflow:hidden;border-radius:999px;background:#ece8f1}
.sky-progress-track i{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#f1278f,#7359ef);transition:width .28s ease}
.sky-breakdown-grid{align-items:start;gap:16px}
.sky-breakdown-table{min-width:650px}
.sky-breakdown-table td>small,.sky-product-table td>small,.sky-recent-table td>small,.sky-unclassified-table td>small{display:block;margin-top:4px;color:var(--muted);font-size:.875rem;line-height:1.35}
.sky-detail-panel>summary{cursor:pointer;list-style:none}
.sky-detail-panel>summary::-webkit-details-marker{display:none}
.sky-detail-panel>summary>span:last-child{color:var(--muted);font-size:.875rem;font-weight:850}
.sky-product-table table{min-width:1050px}
.sky-product-table td{vertical-align:top}
.sky-product-table .pill{display:flex;width:max-content;max-width:270px;margin:0 0 4px;white-space:normal;line-height:1.25}
.sky-recent-table table{min-width:1050px}
.sky-unclassified-table table{min-width:980px}
.sky-panel-help{margin:0 18px 12px;padding:10px 12px;border:1px solid #ead6a8;border-radius:10px;background:#fff9ea;color:#775e25}
.sky-unclassified-panel.has-items{border-color:#e3c478;background:#fffdf7}
.sky-unclassified-panel.has-items>summary .pill{background:var(--amberbg);color:var(--amber)}
@media(max-width:1050px){.sky-progress-grid{grid-template-columns:1fr}.sky-breakdown-grid{grid-template-columns:1fr}}
@media(max-width:820px){
  #skyProductionPanel{gap:13px}
  .sky-economic-panel>.panel-head{align-items:flex-start;flex-direction:column}
  .sky-economic-panel>.panel-head .panel-head-actions{align-items:flex-start;flex-direction:column}
  .sky-economic-summary{margin:13px 12px 10px}
  #skyEconomicNotice{margin:0 12px 11px}
  .sky-progress-grid{gap:9px;margin:0 12px 13px}
  .sky-progress-card{padding:12px}
  .sky-progress-card>div:first-child{align-items:flex-start;flex-direction:column;gap:4px}
  .sky-detail-panel>.panel-head{padding:15px 13px}
  .sky-panel-help{margin:0 12px 10px}
}

/* r148 · inventario backup resiliente e leggibile */
.backup-retention-kpis{grid-template-columns:repeat(6,minmax(0,1fr))}.backup-retention-alerts{display:grid;gap:8px;padding:0 19px}.backup-retention-alert{margin-top:10px;padding:10px 12px;border:1px solid #ead28f;border-radius:10px;background:#fff8df;color:#73540c;font-size:.875rem;font-weight:700}.backup-retention-alert.danger{border-color:#e1a7a7;background:#fff0f0;color:#8f2525}.backup-item-warning{color:#8a5a00!important;font-weight:750}.backup-retention-row .pill.warning{background:#fff0ca;color:#765300}.backup-retention-row .pill.neutral{background:#eef2f5;color:#526475}@media(max-width:1200px){.backup-retention-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:820px){.backup-retention-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.backup-retention-row{grid-template-columns:1fr}.backup-retention-row .pill{justify-self:start}.backup-retention-alerts{padding:0 14px}}@media(max-width:430px){.backup-retention-kpis{grid-template-columns:1fr 1fr}}

/* r148 · backup retention: gruppi, anteprima selettiva e conferma sicura */
.backup-retention-actions{flex-wrap:wrap}.backup-retention-group{border-top:1px solid #e3e8ed}.backup-retention-group:first-child{border-top:0}.backup-retention-group>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 19px;cursor:pointer;font-weight:800;color:#21394d;list-style:none}.backup-retention-group>summary::-webkit-details-marker{display:none}.backup-retention-group>summary::before{content:'›';font-size:21px;line-height:1;transition:transform .16s ease}.backup-retention-group[open]>summary::before{transform:rotate(90deg)}.backup-retention-group>summary span{margin-right:auto}.backup-retention-group>summary strong{min-width:38px;padding:4px 9px;border-radius:999px;background:#eef3f7;text-align:center}.backup-retention-group-note{padding:0 19px 12px;color:#647789;font-size:.875rem}.backup-retention-group-body{border-top:1px solid #edf1f4}.backup-retention-row .pill.info{background:#eaf2fb;color:#245a86}.backup-cleanup-dialog{width:min(940px,calc(100vw - 32px));max-height:min(86vh,900px);padding:0;overflow:hidden}.backup-cleanup-dialog::backdrop{background:rgba(16,35,50,.42)}.backup-cleanup-head{display:flex;justify-content:space-between;gap:24px;padding:25px 28px 18px;border-bottom:1px solid #e2e8ed}.backup-cleanup-head h2{margin:2px 0 7px}.backup-cleanup-head p{max-width:680px;margin:0;color:#5d7183}.backup-cleanup-head>strong{white-space:nowrap;align-self:center}.backup-cleanup-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 28px;background:#f7f9fb;border-bottom:1px solid #e5eaee}.backup-cleanup-select-all{display:flex;align-items:center;gap:9px;font-weight:750}.backup-cleanup-selection-summary{display:flex;gap:12px;align-items:center;color:#53697b;font-size:.875rem}.backup-cleanup-selection-summary strong{color:#20394d}.backup-cleanup-candidates{max-height:50vh;overflow:auto}.backup-cleanup-row{grid-template-columns:auto minmax(0,1fr);align-items:start}.backup-cleanup-check{display:flex;padding-top:3px}.backup-cleanup-check input{width:18px;height:18px}.backup-cleanup-actions{margin:0;padding:15px 28px;border-top:1px solid #e2e8ed;background:#fff}.backup-delete-action{background:#a92a2a;border-color:#a92a2a}.backup-delete-action:disabled{opacity:.48;cursor:not-allowed}@media(max-width:820px){.backup-retention-actions{width:100%}.backup-retention-actions button{flex:1 1 auto}.backup-cleanup-dialog{width:calc(100vw - 18px)}.backup-cleanup-head,.backup-cleanup-toolbar{padding-left:16px;padding-right:16px}.backup-cleanup-head{display:block}.backup-cleanup-head>strong{display:block;margin-top:10px}.backup-cleanup-toolbar{display:grid}.backup-cleanup-selection-summary{justify-content:space-between}.backup-cleanup-actions{padding:12px 16px}.backup-cleanup-row{grid-template-columns:auto minmax(0,1fr)}}

/* r151 courtesy diagnostics */
.fiscal-source-count{display:inline-flex;flex-direction:column;gap:1px;min-width:62px}.fiscal-source-count b{font-size:14px}.fiscal-source-count small{font-size:.875rem;white-space:nowrap;color:var(--muted)}.fiscal-source-count.has-courtesy small{color:#18794e;font-weight:800}.fiscal-courtesy-metrics{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin:10px 0}.fiscal-courtesy-metrics span{display:flex;flex-direction:column;padding:10px 12px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.fiscal-courtesy-metrics b{font-size:20px}.fiscal-courtesy-metrics small{color:var(--muted);font-size:.875rem;text-transform:uppercase;letter-spacing:.04em}.fiscal-courtesy-metrics .ok b{color:#18794e}.fiscal-courtesy-metrics .warn b{color:#a15c00}.fiscal-courtesy-metrics .danger b{color:#b42318}.fiscal-courtesy-diagnostics{margin:10px 0;border:1px solid #efd59a;border-radius:12px;background:#fffaf0}.fiscal-courtesy-diagnostics>summary{padding:12px 14px;font-weight:800;cursor:pointer}.fiscal-courtesy-diagnostics>div{display:grid;gap:8px;padding:0 14px 12px}.fiscal-courtesy-diagnostics>div>span{display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:8px}.fiscal-courtesy-diagnostics section{border-top:1px solid #efd59a;padding:12px 14px;display:grid;gap:8px}.fiscal-courtesy-diagnostics article{display:grid;grid-template-columns:minmax(180px,1fr) auto;gap:2px 12px}.fiscal-courtesy-diagnostics article em{grid-column:1/-1;font-style:normal;color:#8a4b00;font-size:.875rem}@media(max-width:900px){.fiscal-courtesy-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.fiscal-courtesy-diagnostics>div>span{grid-template-columns:auto 1fr}.fiscal-courtesy-diagnostics>div>span small{grid-column:1/-1}}

/* r162 · navigazione a fisarmonica, ricerca e preferiti personali. */
@media(min-width:821px){.sidebar{width:286px}.app-shell{margin-left:286px}}
.sidebar{overflow:hidden}
.sidebar .logo-row{flex:0 0 auto;padding-inline:18px}
.sidebar-navigation-tools{flex:0 0 auto;padding:12px 13px 8px;border-bottom:1px solid rgba(255,255,255,.08)}
.nav-function-search{display:grid;grid-template-columns:20px minmax(0,1fr) 24px;align-items:center;gap:6px;min-height:42px;padding:0 8px;border:1px solid rgba(255,255,255,.18);border-radius:11px;background:rgba(255,255,255,.08);color:#cfe0ee;transition:border-color .15s ease,background .15s ease}
.nav-function-search:focus-within{border-color:rgba(255,255,255,.48);background:rgba(255,255,255,.13);box-shadow:0 0 0 3px rgba(255,255,255,.07)}
.nav-function-search>span{font-size:19px;text-align:center}
.nav-function-search input{width:100%;min-width:0;border:0;outline:0;padding:9px 0;background:transparent;color:#fff;font-size:.875rem;font-weight:700;box-shadow:none}
.nav-function-search input::placeholder{color:#aebfd0;opacity:1}
.nav-function-search input::-webkit-search-cancel-button{display:none}
.nav-function-search button{visibility:hidden;display:grid;place-items:center;width:24px;height:24px;padding:0;border:0;border-radius:7px;background:transparent;color:#d9e6ef;font-size:18px;line-height:1;opacity:0;transition:opacity .15s ease}
.nav-function-search button.visible{visibility:visible;opacity:1}.nav-function-search button:hover{background:rgba(255,255,255,.12)}
.nav-favorites{margin-top:11px}.nav-favorites-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 2px 7px}.nav-favorites-head strong{color:#aebfd0;font-size:.875rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.nav-favorites-head button{padding:2px 0;border:0;background:transparent;color:#d7e7f3;font-size:.875rem;font-weight:850}.nav-favorites-head button:hover{color:#fff;text-decoration:underline}
.nav-favorites-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.nav-favorites-list>button{display:grid;grid-template-columns:17px minmax(0,1fr);align-items:center;gap:6px;min-height:34px;padding:6px 8px;border:1px solid rgba(255,255,255,.1);border-radius:9px;background:rgba(255,255,255,.055);color:#dce8f1;text-align:left}.nav-favorites-list>button:hover{border-color:rgba(255,255,255,.26);background:rgba(255,255,255,.11)}.nav-favorites-list>button.active{border-color:rgba(255,255,255,.7);background:#fff;color:var(--navy);box-shadow:0 4px 12px rgba(0,0,0,.12)}.nav-favorites-list>button>span{display:grid;place-items:center;width:17px;height:17px}.nav-favorites-list svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.nav-favorites-list strong{overflow:hidden;font-size:.875rem;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.nav-favorites-list .nav-favorites-empty{grid-column:1/-1;justify-content:center;grid-template-columns:auto auto;color:#bed0df}.nav-favorites-list .nav-favorites-empty>span{font-size:17px}
.sidebar nav#nav{flex:1 1 auto;min-height:0;padding:5px 10px 10px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
.nav-section{border-bottom:1px solid rgba(255,255,255,.075);padding:3px 0}.nav-section:last-child{border-bottom:0}.nav-section[hidden]{display:none!important}
.sidebar nav .nav-section-toggle{justify-content:space-between;gap:9px;min-height:38px;margin:0;padding:8px 9px;border-radius:8px;color:#9fb4c5;font-size:.875rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.sidebar nav .nav-section-toggle:hover{background:rgba(255,255,255,.055);color:#dbe7f0}.sidebar nav .nav-section-toggle>span:first-child{display:block;width:auto;height:auto;min-width:0;flex:1;text-align:left}.sidebar nav .nav-section-toggle>i{display:grid;place-items:center;width:20px;height:20px;flex:0 0 20px;font-size:16px;font-style:normal;transition:transform .18s ease}.nav-section.open>.nav-section-toggle>i{transform:rotate(180deg)}
.nav-section-items{display:none;padding:1px 0 4px}.nav-section.open>.nav-section-items{display:block}.sidebar nav .nav-section-items>button{position:relative;min-height:40px;margin:2px 0;padding:9px 10px 9px 13px;border:1px solid transparent;border-radius:9px;color:#dce6ef;font-size:.875rem;line-height:1.25}.sidebar nav .nav-section-items>button:hover{border-color:rgba(255,255,255,.08);background:rgba(255,255,255,.075)}.sidebar nav .nav-section-items>button.active{border-color:rgba(255,255,255,.68);border-left:4px solid var(--environment-accent);padding-left:10px;background:#fff;color:var(--navy);box-shadow:0 6px 17px rgba(0,0,0,.15)}.sidebar nav .nav-section-items>button.active::after{position:absolute;right:8px;width:6px;height:6px;border-radius:50%;background:var(--environment-accent);content:""}.sidebar nav .nav-section-items>button>span:first-child{width:19px;height:19px;flex-basis:19px}.sidebar nav .nav-section-items>button>span:first-child svg{width:17px;height:17px}.nav-section-system{margin-top:4px;border-top:1px solid rgba(255,255,255,.14)}
.sidebar-fixed-footer{position:relative;z-index:2;flex:0 0 auto;border-top:1px solid rgba(255,255,255,.1);background:linear-gradient(180deg,rgba(13,43,65,.96),var(--navy));box-shadow:0 -9px 20px rgba(4,23,38,.18)}.sidebar-fixed-footer .sidebar-foot{border-top:0;padding:11px 18px 7px}.sidebar-fixed-footer .release-card{margin:4px 12px 8px;padding:8px 10px}.sidebar-fixed-footer .sidebar-actions{padding:8px 12px 10px}
.nav-search-results{display:grid;gap:5px;min-height:0;margin-top:10px;overflow:auto}.nav-search-results-head{padding:3px 3px 5px;color:#aebfd0;font-size:.875rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.nav-search-results>button{display:grid;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:9px;width:100%;padding:9px 10px;border:1px solid rgba(255,255,255,.1);border-radius:9px;background:rgba(255,255,255,.055);color:#e5edf4;text-align:left}.nav-search-results>button:hover{border-color:rgba(255,255,255,.3);background:rgba(255,255,255,.11)}.nav-search-results>button>span:first-child{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:rgba(255,255,255,.09)}.nav-search-results svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.nav-search-results>button>span:last-child{display:grid;gap:2px;min-width:0}.nav-search-results strong{overflow:hidden;font-size:.875rem;text-overflow:ellipsis;white-space:nowrap}.nav-search-results small{color:#9fb4c5;font-size:.875rem}.nav-search-empty{display:grid;gap:4px;padding:17px 11px;border:1px dashed rgba(255,255,255,.18);border-radius:10px;color:#d8e5ee;text-align:center}.nav-search-empty strong{font-size:.875rem}.nav-search-empty span{color:#9eb2c3;font-size:.875rem}.sidebar.navigation-searching .sidebar-navigation-tools{display:flex;flex:1 1 auto;min-height:0;flex-direction:column}.sidebar.navigation-searching .nav-search-results{flex:1 1 auto}.sidebar.navigation-searching #nav,.sidebar.navigation-searching .nav-favorites{display:none}
.nav-favorites-dialog{width:min(820px,calc(100vw - 32px));max-height:min(88dvh,880px);padding:0;overflow:hidden;border-radius:18px}.nav-favorites-dialog::backdrop{background:rgba(9,28,43,.55);backdrop-filter:blur(2px)}.nav-favorites-dialog>form{display:grid;grid-template-rows:auto auto auto minmax(0,1fr) auto;max-height:min(88dvh,880px);padding:27px 30px 0}.nav-favorites-dialog h2{margin:3px 0 7px}.nav-favorites-dialog .form-subtitle{margin:0 38px 18px 0}.nav-favorites-options{display:grid;gap:13px;min-height:0;padding:0 4px 20px 0;overflow:auto}.nav-favorites-options fieldset{min-width:0;margin:0;padding:13px 14px 14px;border:1px solid var(--line);border-radius:12px}.nav-favorites-options legend{padding:0 7px;color:#31536d;font-size:.875rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.nav-favorites-options fieldset>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.nav-favorites-options label{display:grid;grid-template-columns:20px 22px minmax(0,1fr);align-items:center;gap:8px;min-height:43px;padding:8px 10px;border:1px solid #dce6ed;border-radius:9px;background:#f8fafc;color:#24445c;font-size:.875rem;font-weight:800;cursor:pointer}.nav-favorites-options label:has(input:checked){border-color:#75acd2;background:#edf7fd;color:#145782}.nav-favorites-options input{width:18px;height:18px;margin:0;accent-color:var(--blue)}.nav-favorite-option-icon{display:grid;place-items:center;width:22px;height:22px}.nav-favorite-option-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.nav-favorites-dialog-foot{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 -30px;padding:15px 30px;border-top:1px solid var(--line);background:#fff}.nav-favorites-dialog-foot>span{color:#49657a;font-size:.875rem;font-weight:850}.nav-favorites-dialog-foot .dialog-actions{margin:0;padding:0;border:0}
@media(max-width:820px){.sidebar{width:min(306px,calc(100vw - 34px));max-width:none}.sidebar .logo-row{min-height:76px}.sidebar-navigation-tools{padding-top:10px}.sidebar nav#nav{padding-bottom:12px}.sidebar-fixed-footer .sidebar-foot{padding-top:9px}.nav-favorites-dialog{width:calc(100vw - 18px);max-height:calc(100dvh - 18px)}.nav-favorites-dialog>form{max-height:calc(100dvh - 18px);padding:22px 16px 0}.nav-favorites-dialog .form-subtitle{margin-right:26px}.nav-favorites-options fieldset>div{grid-template-columns:1fr}.nav-favorites-dialog-foot{align-items:stretch;flex-direction:column;margin-inline:-16px;padding:12px 16px}.nav-favorites-dialog-foot .dialog-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}.nav-favorites-dialog-foot .dialog-actions button{width:100%}}
@media(max-height:760px) and (min-width:821px){.sidebar .logo-row{min-height:72px}.sidebar-navigation-tools{padding-top:8px}.nav-favorites{margin-top:7px}.nav-favorites-list{grid-template-columns:repeat(3,minmax(0,1fr))}.nav-favorites-list strong{display:none}.nav-favorites-list>button{grid-template-columns:1fr;justify-items:center;min-height:31px}.sidebar-fixed-footer .sidebar-foot{padding-block:8px 4px}.sidebar-fixed-footer .release-card{margin-block:3px 6px}.sidebar-fixed-footer .sidebar-actions{padding-block:6px 8px}}

/* r163 · gare WINDTRE Franchising e configurazione partecipanti Round 5G. */
.windtre-franchising-contest{display:grid;gap:15px;margin:24px 0 16px;padding-top:22px;border-top:2px solid #d8e8f2}.windtre-franchising-hero{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(340px,.8fr);gap:24px;align-items:center;padding:24px 26px;border:1px solid #b8d8c9;border-radius:18px;background:radial-gradient(circle at 92% 12%,rgba(64,165,113,.16),transparent 35%),linear-gradient(125deg,#f8fffb,#edf9f3);box-shadow:0 8px 24px rgba(24,98,62,.07)}.windtre-franchising-hero h3{margin:4px 0 7px;color:#174b36;font-size:22px}.windtre-franchising-hero p{max-width:760px;margin:0;color:#5b7869;font-size:.875rem;line-height:1.55}.windtre-letter-links{display:flex;gap:8px;flex-wrap:wrap;margin-top:11px}.windtre-letter-links a{padding:7px 10px;border:1px solid #a9d1bd;border-radius:8px;background:#fff;color:#1d7450;font-size:.875rem;font-weight:900;text-decoration:none}.windtre-threshold-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.windtre-threshold-card{display:grid;gap:10px;padding:14px;border:1px solid #e3d4a7;border-radius:13px;background:#fffaf0}.windtre-threshold-card.success{border-color:#9bd4ba;background:#f1fbf6}.windtre-threshold-card.progress{border-color:#9dcde7;background:#f2f9fd}.windtre-threshold-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:9px}.windtre-threshold-card header span{color:#506b7d;font-size:.875rem;font-weight:850}.windtre-threshold-card header strong{color:#153c56;font-size:.875rem;text-align:right}.windtre-threshold-levels{display:grid;grid-template-columns:1fr 1fr;gap:6px}.windtre-threshold-levels span{display:flex;align-items:center;justify-content:space-between;padding:6px 8px;border-radius:8px;background:#f0f3f5;color:#758592;font-size:.875rem;font-weight:850}.windtre-threshold-levels span.reached{background:#dff5e9;color:#206d4d}.windtre-threshold-card>small{color:#728594;font-size:.875rem;line-height:1.4}.windtre-director-card{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 20px;border:1px solid #c9b5e7;border-radius:15px;background:linear-gradient(125deg,#fcfaff,#f3eefb)}.windtre-director-card>div{display:grid;gap:4px}.windtre-director-card>div:last-child{text-align:right}.windtre-director-card span,.windtre-director-card small{color:#705d89;font-size:.875rem}.windtre-director-card strong{color:#422b64;font-size:15px}.windtre-employee-card.review{border-color:#e5c87e}.windtre-personal-requirements{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:10px 0}.windtre-requirement{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 11px;border:1px solid #e2d3a5;border-radius:10px;background:#fff9e9;color:#80651f;font-size:.875rem}.windtre-requirement.reached{border-color:#9ed6be;background:#eaf8f1;color:#216c4e}.windtre-malus-row{display:flex;gap:8px;flex-wrap:wrap;margin:9px 0}.windtre-malus-row>span{padding:7px 10px;border-radius:8px;background:#eef3f6;color:#526c7e;font-size:.875rem}.windtre-smartphone-lines{margin-top:10px;border:1px solid #d7e4eb;border-radius:11px;background:#fff}.windtre-smartphone-lines>summary{display:flex;justify-content:space-between;padding:10px 12px;color:#286f99;font-size:.875rem;font-weight:850;cursor:pointer}.windtre-smartphone-lines>div{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:9px 12px;border-top:1px solid #e7edf1;color:#36576d;font-size:.875rem}.windtre-smartphone-lines>div span{display:grid;gap:2px}.windtre-smartphone-lines>div small{color:#758897}.windtre-smartphone-lines>p{margin:0;padding:12px;color:#758897;font-size:.875rem}
.round5g-contest-configuration-dialog{width:min(1120px,calc(100vw - 64px));max-width:1120px;max-height:calc(100dvh - 64px);padding:0;overflow:hidden}.round5g-contest-configuration-dialog::backdrop{background:rgba(9,24,38,.6)}#round5gContestConfigurationForm{display:flex;flex-direction:column;max-height:calc(100dvh - 64px);padding:30px 36px 26px}#round5gContestConfigurationForm>.dialog-x{top:18px;right:20px}#round5gContestConfigurationForm>h2{margin:3px 48px 8px 0}#round5gContestConfigurationForm>.form-subtitle{max-width:900px;margin:0 48px 20px 0;line-height:1.55}.round5g-director-field{display:grid;grid-template-columns:190px minmax(240px,380px) minmax(0,1fr);align-items:center;gap:16px;margin:0 0 20px;padding:14px 16px;border:1px solid #cbdde8;border-radius:13px;background:#f4f9fc}.round5g-director-field select{margin:0}.round5g-director-field small{color:#607789;line-height:1.4}.round5g-config-legend,.round5g-config-row{display:grid;grid-template-columns:minmax(230px,1.4fr) 105px 105px minmax(180px,1fr) 95px;gap:12px;align-items:center}.round5g-config-legend{padding:0 15px 9px;color:#6a7e8d;font-size:.875rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.round5g-config-body{display:grid;gap:8px;max-height:min(50vh,560px);padding:2px 2px 14px 0;overflow:auto;scrollbar-gutter:stable}.round5g-config-row{min-height:66px;padding:11px 14px;border:1px solid #dce5eb;border-radius:12px;background:#fff}.round5g-config-row>div{display:grid;gap:3px;min-width:0}.round5g-config-row>div strong{overflow:hidden;color:#173c57;font-size:.875rem;text-overflow:ellipsis;white-space:nowrap}.round5g-config-row>div small{color:#718493;font-size:.875rem}.round5g-config-row label{margin:0}.round5g-config-row select,.round5g-config-row input[type=number]{width:100%;margin:0;padding:8px;font-size:.875rem}.round5g-config-check{display:flex;align-items:center;gap:7px!important;font-size:.875rem;font-weight:800}.round5g-config-check input{width:17px;height:17px;margin:0;accent-color:var(--blue)}#round5gContestConfigurationForm>.info-banner{margin:12px 0 0;padding:13px 15px}#round5gContestConfigurationForm>.dialog-actions{margin-top:18px;padding-top:17px;border-top:1px solid var(--line)}
@media(max-width:980px){.windtre-franchising-hero{grid-template-columns:1fr}.windtre-threshold-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.windtre-personal-requirements{grid-template-columns:1fr 1fr}.round5g-config-legend{display:none}.round5g-config-row{grid-template-columns:1fr 1fr;gap:10px}.round5g-config-row>div{grid-column:1/-1}.round5g-director-field{grid-template-columns:1fr}.round5g-contest-configuration-dialog{width:calc(100vw - 24px)}#round5gContestConfigurationForm{padding:24px 20px 20px}}
@media(max-width:620px){.windtre-threshold-grid,.windtre-personal-requirements{grid-template-columns:1fr}.windtre-director-card{align-items:flex-start;flex-direction:column}.windtre-director-card>div:last-child{text-align:left}.round5g-config-row{grid-template-columns:1fr}.round5g-config-row>div{grid-column:auto}.windtre-smartphone-lines>div{align-items:flex-start;flex-direction:column}}

/* r171: scelta leggibile anche sullo smartphone. */
.login-card .login-device-choice{display:flex;align-items:flex-start;gap:10px;font-size:.88rem;line-height:1.4;font-weight:500}
.login-card .login-device-choice input{flex:0 0 auto;width:18px;height:18px;margin:2px 0 0;accent-color:var(--primary,#17678d)}
.login-card .login-device-help{display:block;font-size:.875rem;line-height:1.45;margin-top:-4px}

/* r192: dettaglio gara leggibile anche sopra la navigazione mobile. */
button.gmava-detail-trigger{font:inherit;text-align:left;color:inherit;cursor:pointer;width:100%;min-width:0;white-space:normal}
.gmava-detail-trigger:hover{border-color:#2586b7;box-shadow:0 4px 14px #163d5814}
.gmava-detail-trigger:focus-visible{outline:3px solid #176d9c;outline-offset:3px}
.gmava-detail-trigger .gmava-detail-hint{display:block;color:#24749b;font-size:.875rem;font-weight:700;letter-spacing:0;text-transform:none;margin-top:8px}
dialog.gmava-contest-detail-dialog{box-sizing:border-box;width:min(980px,calc(100vw - 24px));max-width:calc(100vw - 24px);max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px);padding:0;border:1px solid #d8e3eb;border-radius:20px;color:#19374c;background:#f5f8fb;overflow:hidden}
.gmava-contest-detail-dialog[open]{display:flex;flex-direction:column}
.gmava-contest-detail-dialog::backdrop{background:rgb(10 30 45 / .6)}
.gmava-detail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:20px 24px;background:#fff;border-bottom:1px solid #d8e3eb;flex-shrink:0}
.gmava-detail-header>div{min-width:0}.gmava-detail-header h2{font-size:21px;margin:0;overflow-wrap:anywhere}.gmava-detail-header p{margin:6px 0 0;font-size:.875rem;color:#627c8f}.gmava-detail-header button{flex:0 0 auto;min-height:44px}
.gmava-detail-body{padding:20px 24px;overflow-y:auto;overscroll-behavior:contain;min-height:0}
.gmava-detail-person{min-width:0;margin-bottom:24px}.gmava-detail-person:last-child{margin-bottom:0}.gmava-detail-person>h3{margin:0;font-size:16px}.gmava-detail-person>p{margin:5px 0 14px;color:#587185;overflow-wrap:anywhere}
.gmava-detail-body .round5g-operation-list{max-height:none;overflow:visible}.gmava-detail-body .round5g-track-card{min-width:0}
.gmava-operation>div{min-width:0}.gmava-operation strong,.gmava-operation small,.gmava-operation span{white-space:normal;overflow-wrap:anywhere}
.gmava-operation .gmava-upselling-status{margin-top:7px;font-weight:600}.gmava-upselling-status.matched{color:#247553}.gmava-upselling-status.review{color:#92651b}
.gmava-upselling-candidates{padding-left:18px;margin:8px 0;font-size:.875rem;color:#52677a}.gmava-upselling-candidates li{margin-bottom:6px}
.gmava-detail-values{margin:0;display:grid;gap:0;border:1px solid #d8e3eb;border-radius:12px;background:#fff;overflow:hidden}.gmava-detail-values>div{display:grid;grid-template-columns:minmax(120px,1fr) minmax(0,1.3fr);gap:12px;padding:12px;border-bottom:1px solid #e5edf2}.gmava-detail-values>div:last-child{border:0}.gmava-detail-values dt{font-size:.875rem}.gmava-detail-values dd{margin:0;text-align:right;font-weight:700;font-size:.875rem;overflow-wrap:anywhere}
@supports(height:100dvh){dialog.gmava-contest-detail-dialog{max-height:calc(100dvh - 24px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px))}}
@media(max-width:620px){.gmava-detail-header{padding:16px;gap:10px}.gmava-detail-header h2{font-size:18px}.gmava-detail-body{padding:14px}.gmava-operation{grid-template-columns:minmax(0,1fr) auto;gap:8px}.gmava-operation>div:first-child{grid-column:1/-1}.gmava-operation>strong{align-self:end}.gmava-operation small{font-size:.875rem}.gmava-detail-values>div{grid-template-columns:1fr;gap:5px}.gmava-detail-values dd{text-align:left}}

/* r193 · La gara VF/FW usa lo spazio per la lettura, con dettaglio fuori dalla griglia. */
.company-quick-switch{display:flex;align-items:center;gap:4px;padding:4px;border:1px solid #cadce8;border-radius:12px;background:#edf4f8;flex:0 1 auto}
.company-quick-switch button{min-height:44px;padding:8px 13px;border:1px solid transparent;border-radius:9px;background:transparent;color:#34556e;font-size:14px;font-weight:750;white-space:nowrap}
.company-quick-switch button.active{background:#176c9e;border-color:#176c9e;color:#fff;box-shadow:0 2px 6px #173e581c}
.company-quick-switch button:hover:not(.active){background:#fff;color:#123b59}
.company-quick-switch button:focus-visible{outline:3px solid #176d9c;outline-offset:2px}
.company-switch-status{position:fixed;top:calc(var(--staging-content-height,52px) + 100px);left:50%;transform:translateX(-50%);max-width:calc(100vw - 24px);z-index:200;padding:12px 18px;border:1px solid #b8d3e4;border-radius:12px;background:#fff;color:#183b56;box-shadow:0 8px 24px #142f4b26;font-size:15px;font-weight:700;text-align:center}
.company-switch-status[hidden]{display:none}
.company-switch-pending main{opacity:.45;pointer-events:none}
@media(min-width:1201px){#companyFilter.company-has-quick-switch{display:none}}
@media(max-width:1200px){.company-quick-switch{display:none}}
.gmava-readable{font-size:1rem;line-height:1.5;--gmava-secondary:#4d6578}
.gmava-readable strong{font-variant-numeric:tabular-nums}
.gmava-readable .eyebrow{font-size:.875rem;letter-spacing:.06em}
.gmava-readable.round5g-contest-hero h3{font-size:1.625rem}
.gmava-readable.round5g-contest-hero p{font-size:.9375rem;color:var(--gmava-secondary)}
.gmava-readable .round5g-letter-link{font-size:.875rem;min-height:44px;align-items:center}
.gmava-readable .round5g-rule-chips span{font-size:.875rem}
.brand-summary-grid.gmava-readable{grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));gap:16px}
.multibrand-category-grid.gmava-readable{grid-template-columns:repeat(auto-fit,minmax(min(100%,28rem),1fr));gap:16px}
.gmava-readable .gmava-detail-trigger{padding:18px 20px;min-height:0}
.gmava-readable .gmava-detail-trigger>span:first-child{font-size:.9375rem;line-height:1.4;color:var(--gmava-secondary);letter-spacing:.015em;text-transform:none}
.gmava-readable .gmava-detail-trigger>strong{font-size:1.75rem;line-height:1.3;margin:8px 0}
.gmava-readable .gmava-detail-trigger>small{font-size:.875rem;line-height:1.5;color:var(--gmava-secondary);overflow-wrap:anywhere}
.gmava-readable .gmava-detail-trigger .gmava-detail-hint{font-size:.875rem;margin-top:12px}
.gmava-readable.round5g-target-section>.panel-head{padding:12px 2px}
.gmava-readable.round5g-target-section>.panel-head h3{font-size:1.375rem}
.gmava-readable.round5g-target-section>.panel-head p{font-size:.9375rem;color:var(--gmava-secondary)}
.round5g-target-grid.gmava-readable{grid-template-columns:repeat(auto-fit,minmax(min(100%,32rem),1fr));align-items:start;gap:16px}
.gmava-readable .round5g-target-card{padding:20px;gap:14px}
.gmava-readable .round5g-target-head{flex-wrap:wrap;gap:10px}
.gmava-readable .round5g-target-head>div span{font-size:.875rem;color:var(--gmava-secondary)}
.gmava-readable .round5g-target-head>div strong{font-size:1.125rem;overflow-wrap:anywhere}
.gmava-readable .round5g-status{font-size:.875rem;white-space:normal}
.gmava-readable .round5g-target-value strong{font-size:1.625rem}
.gmava-readable .round5g-target-value small,.gmava-readable .round5g-target-card>p{font-size:.875rem;color:var(--gmava-secondary);min-height:0}
.gmava-readable .round5g-target-bonus{gap:6px 12px;padding-top:14px}
.gmava-readable .round5g-target-bonus span{font-size:.875rem;color:var(--gmava-secondary)}
.gmava-readable .round5g-target-bonus strong{font-size:1.0625rem}
.gmava-readable .round5g-target-bonus small,.gmava-readable .gmava-review-reasons{font-size:.875rem;line-height:1.5}
.gmava-readable .gmava-store-employees{padding:12px;gap:10px}
.gmava-readable .gmava-store-employees-head span{font-size:.875rem;color:var(--gmava-secondary)}
.gmava-readable .gmava-store-employees-head strong{font-size:.875rem;min-width:28px;height:28px}
.gmava-readable .gmava-store-employees-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr));gap:8px}
.gmava-readable .gmava-store-employee{padding:10px;gap:10px;align-items:flex-start}
.gmava-readable .gmava-store-employee>i{flex-basis:34px;width:34px;height:34px;font-size:.875rem}
.gmava-readable .gmava-store-employee strong{font-size:.875rem;white-space:normal;overflow-wrap:anywhere}
.gmava-readable .gmava-store-employee small{font-size:.875rem;color:var(--gmava-secondary);white-space:normal;overflow-wrap:anywhere}
.round5g-participants.gmava-readable,.gmava-readable .gmava-detail-body{container:gmava-contest / inline-size}
.gmava-readable .gmava-contest-card>summary{padding:20px;flex-wrap:wrap;gap:16px}
.gmava-readable .round5g-employee-identity{gap:12px}
.gmava-readable .round5g-employee-identity strong{font-size:1.125rem;white-space:normal;overflow-wrap:anywhere}
.gmava-readable .round5g-employee-identity small{font-size:.875rem;color:var(--gmava-secondary);line-height:1.5}
.gmava-readable .round5g-rank{font-size:.875rem;flex-basis:32px;height:32px}
.gmava-readable .round5g-avatar{font-size:.9375rem;flex-basis:44px;height:44px}
.gmava-readable .round5g-employee-result{flex-wrap:wrap}
.gmava-readable .round5g-employee-result>span strong{font-size:1.0625rem}
.gmava-readable .round5g-employee-result>span small,.gmava-readable .round5g-level{font-size:.875rem;white-space:normal}
.gmava-readable .round5g-employee-result>span small{color:var(--gmava-secondary)}
.gmava-readable .round5g-employee-body{padding:20px}
.gmava-readable .round5g-reward-strip{grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));gap:12px;margin-bottom:16px;align-items:start}
.gmava-readable .round5g-reward-strip>div{padding:16px}
.gmava-readable .round5g-reward-strip span{font-size:.875rem;color:var(--gmava-secondary)}
.gmava-readable .round5g-reward-strip strong{font-size:1.5rem}
.gmava-readable .round5g-reward-strip small{font-size:.875rem;color:var(--gmava-secondary);line-height:1.5}
.gmava-readable .gmava-business-pool{grid-template-columns:auto minmax(0,1fr);gap:8px 16px;padding:16px;margin-bottom:16px}
.gmava-readable .gmava-business-pool span{font-size:.875rem}
.gmava-readable .gmava-business-pool strong{font-size:1.0625rem}
.gmava-readable .gmava-business-pool small{grid-column:1/-1;font-size:.875rem;text-align:left;color:#5b476f}
.gmava-readable .gmava-track-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;overflow:visible;align-items:start}
.gmava-readable .round5g-track-card{padding:20px;min-width:0}
.gmava-readable .round5g-track-card>header{gap:16px}
.gmava-readable .round5g-track-card>header>div:first-child{min-width:0}
.gmava-readable .round5g-track-card>header>div:first-child span{font-size:1rem;line-height:1.4;color:var(--gmava-secondary);overflow-wrap:anywhere}
.gmava-readable .round5g-track-card>header>div:first-child strong{font-size:1.625rem;line-height:1.3;margin-top:8px}
.gmava-readable .round5g-token-count{flex:0 0 auto}
.gmava-readable .round5g-token-count strong{font-size:1.125rem}
.gmava-readable .round5g-token-count span{font-size:.875rem;color:var(--gmava-secondary)}
.gmava-readable .round5g-track-progress{height:9px;margin:18px 0 12px}
.gmava-readable .round5g-thresholds{grid-template-columns:repeat(var(--gmava-threshold-columns,3),minmax(0,1fr));gap:8px}
.gmava-readable .round5g-thresholds>span{font-size:.9375rem;padding:8px 4px;min-height:56px;color:#4d6578}
.gmava-readable .round5g-thresholds>span small{font-size:.875rem;margin-top:2px}
.gmava-readable .round5g-thresholds>span.reached{color:#216c4e}
.gmava-readable .round5g-track-card>p{font-size:.875rem;line-height:1.5;min-height:0;margin:12px 0;color:var(--gmava-secondary)}
.gmava-track-open{display:flex;align-items:center;gap:10px;width:100%;min-height:48px;margin-top:16px;padding:10px 12px;border:1px solid #c3dbe9;border-radius:9px;background:#f0f7fb;color:#176a98;text-align:left;font-size:.9375rem;font-weight:700}
.gmava-track-open span{margin-left:auto;min-width:28px;text-align:center;border-radius:20px;background:#dceef8;padding:2px 6px}
.gmava-track-open:hover{background:#e1f0f9;border-color:#2586b7}
.gmava-track-open:focus-visible,.gmava-readable summary:focus-visible{outline:3px solid #176d9c;outline-offset:3px}
.gmava-readable .round5g-employee-targets{margin-top:16px;padding:18px}
.gmava-readable .round5g-employee-targets>header{align-items:flex-start;flex-wrap:wrap;gap:10px;margin-bottom:14px}
.gmava-readable .round5g-employee-targets>header span,.gmava-readable .round5g-employee-targets>header>small{font-size:.875rem;color:var(--gmava-secondary)}
.gmava-readable .round5g-employee-targets>header strong{font-size:1.125rem}
.gmava-readable .gmava-extra-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));gap:12px}
.gmava-readable .gmava-extra-grid>div{padding:14px}
.gmava-readable .gmava-extra-grid span{font-size:.875rem;color:var(--gmava-secondary)}
.gmava-readable .gmava-extra-grid strong{font-size:1.25rem}
.gmava-readable .gmava-extra-grid small{font-size:.875rem;color:var(--gmava-secondary);line-height:1.5}
dialog.gmava-readable.gmava-contest-detail-dialog{width:min(1120px,calc(100vw - 24px))}
.gmava-readable .gmava-detail-header{padding:20px 24px;gap:16px}
.gmava-readable .gmava-detail-header h2{font-size:1.5rem;line-height:1.3}
.gmava-readable .gmava-detail-header p{font-size:.9375rem;color:var(--gmava-secondary)}
.gmava-readable .gmava-detail-header button{padding:10px 16px;border:1px solid #c9dae5;border-radius:10px;background:#fff;font-size:.9375rem;color:#19374c}
.gmava-readable .gmava-detail-person>h3{font-size:1.1875rem}
.gmava-readable .gmava-detail-person>p{font-size:.9375rem;color:var(--gmava-secondary)}
.gmava-readable .round5g-track-details{margin-top:18px}
.gmava-readable .round5g-track-details>summary{min-height:48px;padding:12px 0;font-size:.9375rem}
.gmava-readable .round5g-track-details>summary span{font-size:.875rem;min-width:28px;height:28px}
.gmava-readable .round5g-empty-track{font-size:.9375rem;color:var(--gmava-secondary);padding:16px 0}
.gmava-readable .round5g-operation-list{gap:12px;margin-top:12px;max-height:none;overflow:visible}
.gmava-readable .gmava-operation{grid-template-columns:minmax(0,1fr) auto;gap:10px 20px;padding:18px;background:#fff;border-radius:12px;align-items:start}
.gmava-readable .gmava-operation>div:first-child{grid-column:auto}
.gmava-readable .gmava-operation>div:first-child strong{font-size:1rem;line-height:1.5}
.gmava-readable .gmava-operation>strong{font-size:1.25rem;align-self:start}
.gmava-readable .gmava-operation small{font-size:.875rem;line-height:1.5;color:var(--gmava-secondary);margin-top:6px}
.gmava-readable .gmava-operation span{font-size:.875rem}
.gmava-readable .gmava-operation .gmava-upselling-status.review{color:#805700}
.gmava-readable .gmava-operation .gmava-upselling-status.matched{color:#216c4e}
.gmava-readable .gmava-upselling-candidates{font-size:.9375rem;color:var(--gmava-secondary)}
.gmava-operation-provenance{grid-column:1/-1;min-width:0;border-top:1px solid #e3ebf0}
.gmava-operation-provenance>summary{font-size:.875rem;color:#176a98;cursor:pointer;min-height:44px;padding:10px 0}
.gmava-operation-provenance>div{padding-bottom:4px}
.gmava-readable .gmava-detail-values dt,.gmava-readable .gmava-detail-values dd{font-size:.9375rem}
@container gmava-contest (max-width:850px){.gmava-readable .gmava-track-grid{grid-template-columns:1fr}}
@media(max-width:900px){.gmava-readable .gmava-track-grid{grid-template-columns:1fr}}
@media(max-width:620px){
  .gmava-readable .gmava-contest-card>summary,.gmava-readable .round5g-employee-body{padding:14px}
  .gmava-readable .round5g-track-card{padding:16px}
  .gmava-readable .round5g-employee-result{display:grid;grid-template-columns:1fr 1fr}
  .gmava-readable .gmava-business-pool{grid-template-columns:1fr}
  .gmava-readable .gmava-detail-header{padding:16px;gap:12px}
  .gmava-readable .gmava-detail-header h2{font-size:1.25rem}
  .gmava-readable .gmava-detail-body{padding:12px}
  .gmava-readable .gmava-operation{grid-template-columns:1fr;padding:14px;gap:8px}
  .gmava-readable .gmava-operation>strong{text-align:left}
  .gmava-readable .round5g-token-count span{max-width:90px}
  .gmava-readable .round5g-employee-targets>header>small{text-align:left}
}
/* r196: ricevuta Target ed esportazioni individuali */
.target-sync-status{display:flex;flex-direction:column;gap:5px;font-size:14px;line-height:1.5;color:#446174;margin:8px 0 16px;overflow-wrap:anywhere}.target-sync-status:empty{display:none}.gmava-reporting-toolbar{padding:20px;display:grid;gap:16px}.gmava-reporting-toolbar p{margin:4px 0;color:#526b7c;font-size:14px}.gmava-report-controls,.gmava-personal-export{display:flex;flex-wrap:wrap;gap:10px;align-items:end}.gmava-report-controls label{display:grid;gap:6px;min-width:260px;flex:1}.gmava-report-controls select{width:100%;min-height:44px}.gmava-personal-export{align-items:center;padding:16px 0 0;border-top:1px solid #dbe5ed}.gmava-personal-export span{flex:1;font-size:14px}.gmava-report-controls button{min-height:44px}@media(max-width:600px){.gmava-report-controls label{flex-basis:100%;min-width:0}.gmava-report-controls button,.gmava-personal-export button{flex:1}.gmava-personal-export span{flex-basis:100%}}
.quick-presets-dialog{width:min(920px,calc(100vw - 32px));max-height:90dvh;padding:0;border:1px solid #dbe5ed;border-radius:18px;color:#17354b}.quick-presets-dialog[open]{display:flex;flex-direction:column}.quick-presets-dialog header,.quick-presets-dialog footer{padding:20px 24px;flex-shrink:0}.quick-presets-dialog header h2{font-size:24px;margin:0 0 8px}.quick-presets-dialog header p{font-size:15px;margin:0;color:#526b7c}.quick-presets-body{overflow:auto;padding:0 24px 20px}.quick-presets-body section{padding:16px;margin-bottom:12px;border:1px solid #dbe5ed;border-radius:12px}.quick-presets-row-head{display:flex;gap:10px;align-items:end;flex-wrap:wrap}.quick-presets-row-head label{flex:1;min-width:160px}.quick-presets-dialog label{display:grid;gap:6px;font-size:14px}.quick-presets-dialog input,.quick-presets-dialog select{min-height:42px;width:100%;box-sizing:border-box}.quick-presets-bands{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:16px}.quick-presets-bands>div{display:grid;grid-template-columns:1fr 1fr;gap:8px}.quick-presets-bands strong{grid-column:1/-1;font-size:.875rem}.quick-presets-dialog footer{display:flex;gap:10px;border-top:1px solid #dbe5ed;flex-wrap:wrap}.quick-presets-dialog footer span{flex:1}.quick-presets-error{color:#b02323}@media(max-width:620px){.quick-presets-bands{grid-template-columns:1fr}.quick-presets-dialog{width:100%;max-height:100dvh;height:100dvh;border-radius:0}.quick-presets-dialog header,.quick-presets-dialog footer,.quick-presets-body{padding:16px}}

.release-update-notice{position:fixed;bottom:1.25rem;left:50%;transform:translateX(-50%);z-index:11000;width:min(720px,calc(100vw - 32px));box-sizing:border-box;display:flex;align-items:center;gap:16px;padding:16px 20px;background:#fff;color:#153b56;border:2px solid #2080ae;border-radius:14px;box-shadow:0 8px 30px #14394f38;font-size:16px;line-height:1.45}.release-update-notice span{flex:1}.release-update-notice button{flex-shrink:0}@media(max-width:600px){.release-update-notice{bottom:100px;flex-direction:column;align-items:stretch}}
