:root{
  --font:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  --sidebar:278px;
  --content-max:1640px;
  --bg:#080909;
  --bg2:#0d0f10;
  --sidebar-bg:#181923;
  --surface:#101214;
  --surface2:#15181b;
  --surface3:#1c2025;
  --ink:#f2f4f7;
  --muted:#a3abb5;
  --soft:#737d88;
  --line:#252a31;
  --line2:#343a43;
  --blue:#2496ff;
  --blue2:#0f6fd3;
  --green:#35c982;
  --red:#ff5c6f;
  --amber:#f5c451;
  --violet:#7c6dff;
  --radius:12px;
  --shadow:none;
}
:root[data-theme="light"]{
  --bg:#f0f2f5; --bg2:#f7f9fb; --sidebar-bg:#161720; --surface:#ffffff; --surface2:#f5f7fa; --surface3:#eef2f6;
  --ink:#151923; --muted:#5b6572; --soft:#7d8793; --line:#dde4ed; --line2:#c9d3df;
}
*{box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none}html::-webkit-scrollbar,body::-webkit-scrollbar,*::-webkit-scrollbar{width:0!important;height:0!important;display:none!important}body{margin:0;min-height:100vh;overflow-x:hidden;font-family:var(--font);font-size:14px;line-height:1.42;color:var(--ink);background:linear-gradient(180deg,#080909,#0b0c0d);letter-spacing:-.01em}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.app-shell{display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr);min-height:100vh;background:var(--bg);transition:grid-template-columns .18s ease}.content{width:100%;max-width:var(--content-max);margin:0 auto;padding:18px 22px 34px;min-width:0;overflow-x:hidden}.sidebar{position:sticky;top:0;height:100vh;background:var(--sidebar-bg);border-right:1px solid #292a36;color:#e9edf5;display:flex;flex-direction:column;overflow:hidden}.sidebar-head{height:106px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 18px 16px;border-bottom:1px solid rgba(255,255,255,.055)}.brand{display:flex;align-items:center;gap:13px;min-width:0}.brand-logo{width:54px;height:54px;border-radius:10px;background:#fff;object-fit:contain;padding:6px;flex:none}.brand-copy{min-width:0}.brand-title{font-size:18px;font-weight:780;letter-spacing:-.03em;color:#fff;white-space:nowrap}.brand-subtitle{margin-top:2px;font-size:12px;color:#a2a8b8;white-space:nowrap}.sidebar-toggle{width:40px;height:40px;border-radius:10px;border:1px solid rgba(255,255,255,.12);background:#222331;color:#e9edf5;display:grid;place-items:center;gap:4px;cursor:pointer;flex:none}.sidebar-toggle span{display:block;width:17px;height:2px;border-radius:2px;background:#e9edf5}.main-nav{padding:10px 0;display:grid;gap:1px;flex:1 1 auto;min-height:0}.main-nav a{height:42px;display:flex;align-items:center;gap:12px;padding:0 18px;border-left:3px solid transparent;color:#aeb5c8;font-weight:650;letter-spacing:-.01em;transition:.13s ease}.main-nav a:hover{background:#1d1e29;color:#fff}.main-nav a.active{background:#202236;border-left-color:var(--blue);color:#fff}.nav-icon{width:28px;height:28px;display:grid;place-items:center;flex:none;color:#8b94b2}.nav-icon svg{width:19px;height:19px;stroke:currentColor;stroke-width:1.85;fill:none;stroke-linecap:round;stroke-linejoin:round}.main-nav a.active .nav-icon{color:var(--blue)}.sidebar-footer{flex:0 0 auto;padding:10px 14px 14px;border-top:1px solid rgba(255,255,255,.055);display:grid;gap:8px}.theme-toggle,.logout{height:42px;border-radius:10px;border:1px solid rgba(255,255,255,.11);background:#1d1e29;color:#d9e0ee;display:flex;align-items:center;gap:12px;padding:0 12px;font-weight:720;cursor:pointer}.logout{justify-content:center;color:#bfe1ff}.theme-switch{position:relative;width:50px;height:25px;border-radius:999px;background:#0f1116;border:1px solid #394050;display:inline-flex;align-items:center;padding:3px;flex:none}.theme-knob{width:18px;height:18px;border-radius:50%;background:var(--blue);display:grid;place-items:center;transition:.16s ease}.theme-icon svg{width:12px;height:12px;stroke:white}.theme-icon.sun{display:none}:root[data-theme="light"] .theme-knob{transform:translateX(25px)}:root[data-theme="light"] .theme-icon.moon{display:none}:root[data-theme="light"] .theme-icon.sun{display:block}.sidebar-collapsed{--sidebar:76px}.sidebar-collapsed .brand-copy,.sidebar-collapsed .nav-text,.sidebar-collapsed .theme-label,.sidebar-collapsed .logout .nav-text{display:none}.sidebar-collapsed .sidebar-head{justify-content:center;padding:12px 10px}.sidebar-collapsed .brand-logo{display:none}.sidebar-collapsed .sidebar-toggle{width:42px}.sidebar-collapsed .main-nav a{justify-content:center;padding:0}.sidebar-collapsed .sidebar-footer{padding-left:10px;padding-right:10px}.sidebar-collapsed .theme-toggle{justify-content:center}.sidebar-collapsed .theme-switch{width:38px}:root[data-theme="light"] .sidebar-collapsed .theme-knob{transform:translateX(13px)}
.topbar-card,.page-header,.panel{background:var(--surface);border:1px solid var(--line);border-radius:12px}.topbar-card,.page-header{padding:18px 22px;margin-bottom:14px;display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.topbar-card h1,.page-header h1{margin:0;font-size:26px;line-height:1.1;font-weight:760;letter-spacing:-.035em}.muted{color:var(--muted);margin:6px 0 0}.eyebrow{margin:0 0 8px;color:#6dc3ff;font-size:11px;font-weight:850;letter-spacing:.20em;text-transform:uppercase}.panel{padding:16px;margin-bottom:14px;overflow:hidden}.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px}.panel-head.compact{margin-bottom:12px}.panel h2,.panel-head h2{margin:0;font-size:20px;line-height:1.18;font-weight:740;letter-spacing:-.025em}.panel h3{margin:0 0 12px;font-size:16px;font-weight:740}.subtle-pill,.mini-link{height:30px;border-radius:999px;padding:0 12px;border:1px solid var(--line2);background:var(--surface2);color:var(--muted);display:inline-flex;align-items:center;font-weight:720}.mini-link{color:#95d4ff}label,.field-label{display:grid;gap:7px;font-weight:650;color:var(--ink)}label span,.field-label span{font-size:10px;letter-spacing:.11em;text-transform:uppercase;color:var(--muted)}input,select,textarea{min-height:40px;border-radius:8px;border:1px solid var(--line2);background:var(--surface2);color:var(--ink);padding:0 12px;outline:none;min-width:0}select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 18px) 54%,calc(100% - 13px) 54%;background-size:5px 5px;background-repeat:no-repeat;padding-right:34px}input:focus,select:focus,textarea:focus{border-color:#2a8de8;box-shadow:0 0 0 2px rgba(36,150,255,.16)}button,.primary,.secondary,.success,.danger{min-height:40px;border-radius:8px;border:1px solid transparent;padding:0 14px;display:inline-flex;align-items:center;justify-content:center;font-weight:740;cursor:pointer;color:#fff;background:#1d7df2;white-space:nowrap}.secondary{background:var(--surface2);border-color:var(--line2);color:var(--ink)}.success{background:#1f9f69}.danger{background:#b84250}.positive{color:var(--green)}.negative{color:var(--red)}.month-filter,.filters-row,.header-actions,.form-actions{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}.month-selectors{display:flex;gap:8px}.toolbar-panel{padding:14px 16px}.compact-filters{align-items:end}.flash-stack{position:sticky;top:10px;z-index:30;display:grid;gap:8px;margin-bottom:12px}.flash{border:1px solid var(--line2);background:var(--surface2);border-radius:8px;padding:10px 12px}.flash.success{border-color:rgba(53,201,130,.5)}.flash.error{border-color:rgba(255,92,111,.55)}
.dashboard-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.kpi-card{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:16px;min-height:128px;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;overflow:hidden}.kpi-copy span,.kpi-card>span{display:block;color:#d5d9df;font-size:11px;font-weight:820;letter-spacing:.13em;text-transform:uppercase}.kpi-copy strong,.kpi-card>strong{display:block;margin-top:16px;font-size:31px;line-height:1;font-weight:760;letter-spacing:-.04em;color:#fff}.kpi-copy small,.kpi-card small{display:block;margin-top:8px;color:var(--muted);max-width:260px}.mini-donut{--value:0;width:76px;height:76px;border-radius:50%;background:conic-gradient(var(--blue) calc(var(--value)*1%),#1e2228 0);display:grid;place-items:center;position:relative;flex:0 0 auto}.mini-donut:before{content:"";position:absolute;inset:14px;border-radius:50%;background:var(--surface)}.mini-donut b{position:relative;color:#9ad8ff;font-size:14px}.dash-grid-main{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,.7fr) minmax(320px,.8fr);gap:14px;margin-bottom:14px}.dash-grid-secondary{display:grid;grid-template-columns:1.15fr 1fr .95fr;gap:14px}.axis-chart{display:grid;grid-template-columns:46px minmax(0,1fr);gap:10px;min-height:302px}.y-axis{display:flex;flex-direction:column;justify-content:space-between;text-align:right;color:#7f8791;font-size:12px;padding:8px 0 32px}.plot-area{height:296px;border-left:1px solid var(--line);border-bottom:1px solid var(--line);background:repeating-linear-gradient(to top,transparent 0 70px,rgba(255,255,255,.045) 71px);display:flex;align-items:flex-end;gap:7px;padding:8px 8px 0;overflow:hidden}.bar-item{height:100%;display:flex;flex:1;min-width:10px;flex-direction:column;justify-content:flex-end;align-items:center;gap:7px;color:#848c95;font-size:12px}.bar-item i{display:block;width:100%;max-width:24px;min-height:3px;border-radius:5px 5px 0 0;background:linear-gradient(180deg,#2496ff,#0e63c4)}.chart-note{margin:10px 0 0;color:var(--muted);font-size:12px}.metric-list{display:grid;gap:15px}.metric-line>div:first-child{display:flex;justify-content:space-between;gap:12px;margin-bottom:8px}.metric-line strong{font-weight:720}.metric-line span{font-weight:780}.metric-line small{display:block;margin-top:6px;color:var(--soft)}.bar{height:8px;border-radius:999px;background:#242930;overflow:hidden}.bar i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#1469c8,#2b9cff)}.metric-line.ana .bar i{background:linear-gradient(90deg,#178f63,#35c982)}.metric-line.calc .bar i{background:linear-gradient(90deg,#6e55d9,#2496ff)}.ranking-mini{display:grid;gap:8px}.rank-card{display:grid;grid-template-columns:26px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:9px;background:var(--surface2)}.rank-no{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#1e2630;color:#91d1ff;font-weight:780}.rank-card small{display:block;color:var(--muted);margin-top:1px}.rank-card b{text-align:right}.history-chart{height:238px;display:flex;align-items:flex-end;gap:16px;padding:8px 8px 0;border-bottom:1px solid var(--line)}.history-col{height:100%;flex:1;display:grid;align-items:end;text-align:center;color:var(--soft);font-size:11px}.history-bars{height:190px;display:flex;align-items:flex-end;justify-content:center;gap:6px}.history-bars i{width:18px;min-height:3px;border-radius:4px 4px 0 0}.history-bars .weighted{background:linear-gradient(180deg,#2496ff,#0e63c4)}.history-bars .unweighted{background:linear-gradient(180deg,#35c982,#14845c)}.legend-inline{display:flex;gap:12px;color:var(--muted);font-size:12px}.dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:5px}.weighted-dot{background:var(--blue)}.unweighted-dot{background:var(--green)}.dept-list{display:grid;gap:11px}.dept-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 14px;align-items:center}.dept-row span{font-weight:700}.dept-row small{color:var(--muted)}.dept-row .bar{grid-column:1/-1}.recent-list{display:grid}.recent-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:11px 0;border-bottom:1px solid var(--line)}.recent-item b{font-size:15px}.recent-item span{display:block;color:var(--muted);margin-top:2px}.recent-item strong{font-size:15px;color:#dcefff}.empty{color:var(--muted);margin:0}.tight{margin:8px 0}.dept-switcher{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.dept-chip,.quick-op{height:34px;border:1px solid var(--line2);border-radius:999px;background:var(--surface2);color:var(--muted);padding:0 12px;display:inline-flex;align-items:center;font-weight:720}.dept-chip.active,.quick-op.active{background:#1d7df2;color:white;border-color:#1d7df2}.quick-operators{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.operator-cards-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.operator-tile{display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px;border-radius:12px;background:var(--surface2);border:1px solid var(--line);transition:.14s ease}.operator-tile:hover{border-color:#2a8de8;transform:translateY(-1px)}.avatar{width:52px;height:52px;border-radius:12px;background:#1d7df2;color:white;display:grid;place-items:center;font-weight:820;letter-spacing:.02em}.avatar.small{width:38px;height:38px;border-radius:10px}.operator-copy strong,.operator-tile strong{display:block;font-size:17px;letter-spacing:-.02em}.operator-copy small,.operator-tile small{display:block;color:var(--muted);margin-top:3px}.operator-tile em{font-style:normal;color:#8dd0ff;font-weight:770}.calendar-card{scroll-margin-top:16px}.calendar-legend{display:flex;gap:12px;align-items:center;color:var(--muted);font-weight:650;flex-wrap:wrap}.legend-dot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:6px}.dot-open{background:#7d8898}.dot-closed{background:var(--green)}.dot-absent{background:var(--red)}.week-grid,.calendar-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin-bottom:8px}.week-day-label{text-align:center;color:var(--soft);font-size:10px;letter-spacing:.12em;text-transform:uppercase;font-weight:820}.calendar-empty{min-height:72px}.day-button{min-height:74px;border-radius:10px;border:1px solid var(--line2);background:var(--surface2);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;position:relative;transition:.15s ease}.day-button:hover{border-color:#2a8de8}.day-button strong{font-size:21px;line-height:1;font-weight:800}.day-button span{font-size:11px;color:var(--muted);text-transform:uppercase;font-weight:780}.day-button.selected{background:#1d7df2;color:white;border-color:#1d7df2}.day-button.selected span{color:#dcefff}.day-button.closed{box-shadow:inset 0 0 0 2px rgba(53,201,130,.52)}.day-button.absent{box-shadow:inset 0 0 0 2px rgba(255,92,111,.58)}.day-button.closed:after,.day-button.absent:after{content:"";position:absolute;right:8px;top:8px;width:8px;height:8px;border-radius:50%;background:var(--green)}.day-button.absent:after{background:var(--red)}.day-button.weekend:not(.selected){background:#181b21}.day-button em{position:absolute;right:8px;bottom:8px;min-width:20px;height:20px;border-radius:999px;background:#303641;color:#e8edf5;display:grid;place-items:center;font-size:11px;font-weight:780;font-style:normal}.selected-day-panel{scroll-margin-top:18px}.selected-day-shell{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:14px}.editor-card,.summary-card{background:var(--surface2);border:1px solid var(--line);border-radius:12px;padding:14px}.day-add-form{display:grid;grid-template-columns:minmax(260px,1.4fr) repeat(3,minmax(105px,.55fr)) 150px;gap:10px;align-items:end}.day-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:14px}.state-badge{height:31px;border-radius:999px;padding:0 12px;background:var(--surface2);border:1px solid var(--line2);display:inline-flex;align-items:center;font-weight:740}.state-badge.closed{color:var(--green)}.state-badge.absent{color:var(--red)}.entry-pill{display:grid;grid-template-columns:minmax(0,1fr) 70px 30px;gap:10px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:10px;margin-bottom:8px}.entry-pill small{display:block;color:var(--muted);margin-top:2px}.entry-pill b{text-align:right}.delete-mini{width:28px;height:28px;min-height:28px;border-radius:8px;padding:0;background:#332026;color:#ff9aaa}.table-wrap{overflow:hidden;border:1px solid var(--line);border-radius:10px}table{width:100%;border-collapse:collapse}th,td{padding:10px 11px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}th{font-size:10px;letter-spacing:.11em;text-transform:uppercase;color:var(--muted);font-weight:780;background:#15181c}td.num,th.num{text-align:right}.compact th,.compact td{padding:8px 9px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.form-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.wide{grid-column:1/-1}.assignment-list{display:grid;gap:10px}.assignment-row{display:grid;grid-template-columns:minmax(260px,1fr) minmax(240px,1fr) auto;gap:10px;align-items:center;background:var(--surface2);border:1px solid var(--line);border-radius:10px;padding:10px}.operator-mini{display:flex;align-items:center;gap:10px}.operator-mini small{display:block;color:var(--muted)}.login-page{min-height:100vh;display:grid;place-items:center;padding:24px}.login-card{width:min(420px,100%);background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:24px}.brand-mark{width:80px;height:80px;border-radius:12px;background:#fff;object-fit:contain;padding:7px}.form-stack{display:grid;gap:12px;margin-top:18px}.full{width:100%}.report-cover{display:flex;align-items:center;gap:15px;border-radius:12px;padding:16px;margin-bottom:14px;background:var(--surface);border:1px solid var(--line)}.report-logo{width:62px;height:62px;border-radius:12px;background:#fff;object-fit:contain;padding:7px}.report-cover h1{margin:0;font-size:28px}.report-dept-card{border-radius:12px;padding:16px;margin-bottom:16px;background:var(--surface);border:1px solid var(--line)}.report-dept-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:13px}.report-dept-head h2{margin:0;font-size:22px}.report-badges{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.report-badges span{border-radius:999px;background:var(--surface2);border:1px solid var(--line2);padding:6px 10px;color:var(--muted);font-weight:700}.report-metrics-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.report-metric-card{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--surface2);min-width:0}.report-card-title{display:flex;align-items:center;justify-content:space-between;padding:10px 11px;border-bottom:1px solid var(--line)}.report-card-title h3{margin:0;font-size:13px}.report-card-title span{font-weight:780;color:#83cfff}.report-mini-table{border:0;border-radius:0}.report-mini-table th,.report-mini-table td{padding:7px 8px;font-size:11px}.pie-area{display:grid;grid-template-columns:88px minmax(0,1fr);gap:10px;align-items:center;padding:10px;border-top:1px solid var(--line)}.pie-chart{width:84px;height:84px;border-radius:50%;display:grid;place-items:center;position:relative}.pie-chart:before{content:"";position:absolute;inset:22px;border-radius:50%;background:var(--surface2);box-shadow:0 0 0 1px var(--line)}.pie-chart span{position:relative;font-weight:780;font-size:12px}.pie-legend{display:grid;gap:4px;max-height:88px;overflow:hidden}.legend-row{display:grid;grid-template-columns:8px minmax(0,1fr) auto;gap:6px;align-items:center;font-size:10px}.legend-row i{width:8px;height:8px;border-radius:50%}.legend-row span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--muted)}.report-total-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:11px;margin-top:11px}.total-chart-card{border:1px solid var(--line);border-radius:10px;background:var(--surface2);padding:13px;display:grid;justify-items:center;gap:10px}.donut-chart.total{width:148px;height:148px;border-radius:50%;display:grid;place-items:center;position:relative}.donut-chart.total:before{content:"";position:absolute;inset:36px;border-radius:50%;background:var(--surface2);box-shadow:0 0 0 1px var(--line)}.donut-chart span{position:relative;text-align:center;font-size:16px;font-weight:820}.donut-chart small{display:block;color:var(--muted);font-size:10px}.summary-row td{background:rgba(245,196,81,.08)}.mean-row td{background:rgba(53,201,130,.08)}.cv-row td{background:rgba(36,150,255,.08)}
@media(max-width:1380px){.dashboard-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.dash-grid-main,.dash-grid-secondary,.selected-day-shell{grid-template-columns:1fr}.operator-cards-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.day-add-form{grid-template-columns:1fr 1fr 1fr 1fr}.day-add-form label:first-child{grid-column:1/-1}.day-add-form .primary{grid-column:1/-1}.content{max-width:100%}.report-metrics-grid{grid-template-columns:repeat(3,minmax(260px,1fr))}.assignment-row{grid-template-columns:1fr 1fr auto}}
@media(max-width:900px){.app-shell{grid-template-columns:1fr}.sidebar{position:relative;height:auto}.topbar-card,.page-header,.report-dept-head{flex-direction:column}.dashboard-kpis,.operator-cards-grid,.form-grid,.form-grid.four{grid-template-columns:1fr}.filters-row,.month-filter{display:grid;grid-template-columns:1fr;width:100%}.month-selectors{display:grid;grid-template-columns:1fr 1fr}.week-grid,.calendar-week{gap:6px}.day-button{min-height:62px}.day-add-form{grid-template-columns:1fr}.report-metrics-grid,.report-total-grid{grid-template-columns:1fr}.assignment-row{grid-template-columns:1fr}.sidebar-collapsed{--sidebar:1fr}}
@media print{body{background:#fff;color:#111}.sidebar,.no-print,.flash-stack{display:none!important}.app-shell{display:block}.content{max-width:none;padding:0}.panel,.report-cover,.report-dept-card{background:#fff!important;border:1px solid #d8dde8;break-inside:avoid}.report-metrics-grid{grid-template-columns:repeat(3,1fr)}.report-total-grid{grid-template-columns:1fr 300px}}

/* v0.12 refinements */
html[data-theme="light"] body{background:#f3f5f8;color:var(--ink)}
html[data-theme="light"] .content{background:#f3f5f8}
html[data-theme="light"] .sidebar{background:#1a1b24;color:#eef3fb}
html[data-theme="light"] .brand-title{color:#fff}
html[data-theme="light"] .brand-subtitle{color:#aeb7ca}
html[data-theme="light"] .main-nav a{color:#aeb7ca}
html[data-theme="light"] .main-nav a:hover{background:#232532;color:#fff}
html[data-theme="light"] .main-nav a.active{background:#25283a;color:#fff}
html[data-theme="light"] .nav-icon{color:#99a5c0}
html[data-theme="light"] .topbar-card,
html[data-theme="light"] .page-header,
html[data-theme="light"] .panel,
html[data-theme="light"] .kpi-card,
html[data-theme="light"] .stat-square,
html[data-theme="light"] .report-cover,
html[data-theme="light"] .report-dept-card,
html[data-theme="light"] .login-card{background:#ffffff;border-color:#dce3ec;color:#151923}
html[data-theme="light"] .operator-tile,
html[data-theme="light"] .editor-card,
html[data-theme="light"] .summary-card,
html[data-theme="light"] .day-button,
html[data-theme="light"] input,
html[data-theme="light"] select,
html[data-theme="light"] textarea,
html[data-theme="light"] .table-wrap,
html[data-theme="light"] .assignment-row,
html[data-theme="light"] .report-metric-card,
html[data-theme="light"] .total-chart-card,
html[data-theme="light"] .entry-pill,
html[data-theme="light"] .dept-chip,
html[data-theme="light"] .quick-op,
html[data-theme="light"] .subtle-pill,
html[data-theme="light"] .state-badge{background:#f7f9fc;border-color:#d8e0ea;color:#151923}
html[data-theme="light"] .operator-tile small,
html[data-theme="light"] .muted,
html[data-theme="light"] .kpi-card small,
html[data-theme="light"] .stat-square small,
html[data-theme="light"] .entry-pill small,
html[data-theme="light"] .operator-mini small,
html[data-theme="light"] .metric-line small,
html[data-theme="light"] .chart-note{color:#5f6b7a}
html[data-theme="light"] .kpi-copy span,
html[data-theme="light"] .kpi-card>span,
html[data-theme="light"] .stat-square span,
html[data-theme="light"] th{color:#536071}
html[data-theme="light"] .kpi-copy strong,
html[data-theme="light"] .kpi-card>strong,
html[data-theme="light"] .stat-square strong,
html[data-theme="light"] .panel h2,
html[data-theme="light"] .page-header h1,
html[data-theme="light"] .topbar-card h1{color:#111827}
html[data-theme="light"] table th{background:#eef3f9}
html[data-theme="light"] .mini-donut:before,
html[data-theme="light"] .pie-chart:before,
html[data-theme="light"] .donut-chart.total:before{background:#ffffff}
html[data-theme="light"] .bar{background:#dce4ef}
html[data-theme="light"] .plot-area{background:repeating-linear-gradient(to top,transparent 0 70px,rgba(20,30,45,.055) 71px)}
html[data-theme="light"] .logout,
html[data-theme="light"] .theme-toggle{background:#232532;color:#eef3fb;border-color:#34384a}
html[data-theme="light"] .theme-switch{background:#f7f9fc;border-color:#6d7a8c}

.sidebar-toggle.arrow-only{width:28px;height:28px;border:0;background:transparent;border-radius:0;color:#9aa6bd;padding:0;display:grid;place-items:center;box-shadow:none;transition:color .15s ease, transform .15s ease}
.sidebar-toggle.arrow-only:hover{color:#fff;background:transparent;transform:translateX(-1px)}
.toggle-arrow{display:block!important;width:auto!important;height:auto!important;background:transparent!important;font-size:30px;line-height:1;font-weight:300;transform:none;transition:transform .18s ease,color .18s ease}
.sidebar-collapsed .toggle-arrow{transform:rotate(180deg)}
.sidebar-collapsed .sidebar-toggle.arrow-only{width:40px;height:36px}
.sidebar-collapsed .sidebar-toggle.arrow-only:hover{transform:none}

.operator-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}
.stat-square{min-height:154px;aspect-ratio:1.45/1;border:1px solid var(--line);border-radius:12px;background:var(--surface);padding:16px;display:grid;align-content:space-between;overflow:hidden}
.stat-square span{display:block;color:#d5d9df;font-size:11px;font-weight:820;letter-spacing:.13em;text-transform:uppercase}
.stat-square strong{font-size:34px;line-height:1;letter-spacing:-.04em;color:#fff;font-weight:760}
.stat-square small{font-size:13px;color:var(--muted)}

.day-add-form label span{display:block;margin-bottom:7px;font-size:10px;letter-spacing:.11em;text-transform:uppercase;color:var(--muted);font-weight:760}
.day-add-form label{display:block}
.day-add-form input,.day-add-form select{width:100%}

.operator-open{display:grid;grid-template-columns:52px minmax(0,1fr);gap:14px;align-items:center;min-width:0;color:inherit}
.operator-tile.admin-tile{grid-template-columns:minmax(0,1fr) auto;gap:12px}
.operator-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.ghost-danger{background:transparent;color:#ff9aaa;border-color:rgba(255,92,111,.32);min-height:34px;padding:0 11px}
.ghost-danger:hover{background:rgba(255,92,111,.12)}

.parameters-actions .danger,.operators-actions .danger{min-height:34px}
.assignment-list{gap:8px}.assignment-row{grid-template-columns:minmax(280px,1fr) minmax(260px,1fr) 110px}.assignment-row button{width:100%}

@media(max-width:1200px){.operator-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.operator-admin-grid{grid-template-columns:1fr}.selected-day-shell{grid-template-columns:1fr}.day-add-form{grid-template-columns:1fr 1fr 1fr 1fr}.day-add-form label:first-of-type{grid-column:1/-1}.day-add-form button{grid-column:1/-1}}
@media(max-width:760px){.operator-stat-grid{grid-template-columns:1fr}.day-add-form{grid-template-columns:1fr}.assignment-row{grid-template-columns:1fr}.stat-square{aspect-ratio:auto}}

/* v0.15 surgical fixes: keep approved style, restore only requested parts */
.sidebar-toggle.arrow-only{width:28px!important;height:28px!important;border:0!important;background:transparent!important;border-radius:0!important;color:#9aa6bd!important;padding:0!important;display:grid!important;place-items:center!important;box-shadow:none!important;transition:color .15s ease, transform .15s ease!important}
.sidebar-toggle.arrow-only:hover{color:#fff!important;background:transparent!important;transform:translateX(-1px)!important}
.toggle-arrow{display:block!important;width:auto!important;height:auto!important;background:transparent!important;font-size:30px!important;line-height:1!important;font-weight:300!important;transform:none;transition:transform .18s ease,color .18s ease}
.sidebar-collapsed .toggle-arrow{transform:rotate(180deg)}
.sidebar-collapsed .sidebar-toggle.arrow-only{width:40px!important;height:36px!important}
.sidebar-collapsed .sidebar-toggle.arrow-only:hover{transform:none!important}
.login-page{place-items:start center;padding-top:42px;padding-bottom:32px}
.refined-login{text-align:left}
.login-logo{width:112px;height:112px;border-radius:18px;background:#fff;object-fit:contain;padding:10px;display:block;margin:0 auto 22px;box-shadow:0 12px 26px rgba(0,0,0,.22)}
.centered{text-align:center}
.login-subtitle{margin-top:10px;margin-bottom:18px}
.operator-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}
.stat-square{min-height:154px;aspect-ratio:1.45/1;border:1px solid var(--line);border-radius:12px;background:var(--surface);padding:16px;display:grid;align-content:space-between;overflow:hidden}
.stat-square span{display:block;color:#d5d9df;font-size:11px;font-weight:820;letter-spacing:.13em;text-transform:uppercase}
.stat-square strong{font-size:34px;line-height:1;letter-spacing:-.04em;color:#fff;font-weight:760}
.stat-square small{font-size:13px;color:var(--muted)}
html[data-theme="light"] .stat-square span{color:#516077}
html[data-theme="light"] .stat-square strong{color:#111827}
html[data-theme="light"] .stat-square small{color:#64748b}
.operators-actions{display:flex;align-items:center;gap:10px;justify-content:flex-end;flex-wrap:wrap}.parameters-actions .danger,.operators-actions .danger{min-height:34px}.ghost-danger{background:transparent;color:#ff9aaa;border-color:rgba(255,92,111,.32);min-height:34px;padding:0 11px}.ghost-danger:hover{background:rgba(255,92,111,.12)}
.danger-soft{color:#ff9aaa;border-color:rgba(255,92,111,.32)}
.day-add-form label span{display:block;margin-bottom:7px;font-size:10px;letter-spacing:.11em;text-transform:uppercase;color:var(--muted);font-weight:760}
.day-add-form label{display:block}.day-add-form input,.day-add-form select{width:100%}
@media(max-width:1200px){.operator-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.operator-stat-grid{grid-template-columns:1fr}.stat-square{aspect-ratio:auto}}

/* v0.16 FINAL FIXES - restore approved style and required functions only */
.sidebar-toggle.arrow-only{
  width:32px!important;height:32px!important;border:0!important;background:transparent!important;border-radius:0!important;box-shadow:none!important;padding:0!important;color:#8f9ab3!important;display:grid!important;place-items:center!important;cursor:pointer!important;
}
.sidebar-toggle.arrow-only:hover{color:#ffffff!important;background:transparent!important;transform:none!important}
.sidebar-toggle.arrow-only span{display:none!important}
.chevron-icon{width:22px;height:22px;stroke:currentColor;stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round;transition:transform .18s ease,color .18s ease}
.sidebar-collapsed .chevron-icon{transform:rotate(180deg)}
.sidebar-collapsed .sidebar-toggle.arrow-only{width:42px!important;height:42px!important}

.login-page{min-height:100vh;display:grid;place-items:start center;padding:34px 20px 32px;background:linear-gradient(180deg,#080909,#0b0c0d)}
.login-card.refined-login{width:min(630px,calc(100vw - 32px));padding:34px 36px 36px}
.login-logo-wrap{display:flex;justify-content:center;align-items:center;margin:0 auto 30px;width:132px;height:132px;border-radius:20px;background:#fff;overflow:hidden;box-shadow:0 18px 42px rgba(0,0,0,.30)}
.login-logo{display:block;width:112px!important;height:112px!important;object-fit:contain!important;padding:0!important;margin:0!important;background:transparent!important;border-radius:0!important;box-shadow:none!important}
.login-card .eyebrow.centered{margin-top:0;margin-bottom:28px;text-align:center}
.login-card h1{margin-top:0}

.operator-stat-grid,
.operator-stat-grid.operator-stat-grid-final{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important;margin-bottom:16px!important}
.operator-stat-grid .stat-square{min-height:154px!important;aspect-ratio:auto!important;border:1px solid var(--line)!important;border-radius:12px!important;background:var(--surface)!important;padding:18px!important;display:grid!important;grid-template-rows:auto 1fr auto!important;align-items:center!important;overflow:hidden!important}
.operator-stat-grid .stat-square span{align-self:start!important}
.operator-stat-grid .stat-square strong{justify-self:end!important;align-self:center!important;font-size:34px!important;line-height:1!important}
.operator-stat-grid .stat-square small{justify-self:end!important;text-align:right!important;align-self:end!important}

.calendar-weeks{display:grid;gap:12px;width:100%}
.calendar-week{display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;gap:10px!important;width:100%}
.day-button{position:relative;min-height:86px;border:1px solid var(--line);border-radius:12px;background:var(--surface2);display:grid;place-items:center;align-content:center;gap:6px;color:var(--ink);transition:.14s ease;padding:10px;text-align:center}
.day-button:hover{border-color:#2c97ff;transform:translateY(-1px)}
.day-button strong{font-size:24px;line-height:1;font-weight:760}.day-button span{font-size:12px;color:var(--muted);font-weight:760;text-transform:uppercase}.day-button em{position:absolute;top:10px;right:10px;min-width:22px;height:22px;border-radius:50%;background:#4b5563;color:#fff;font-style:normal;font-size:12px;display:grid;place-items:center}.day-button.selected{background:#1d7df2;border-color:#39a6ff;color:white}.day-button.selected span{color:#dff1ff}.day-button.closed{box-shadow:inset 0 -4px 0 #35c982}.day-button.absent{box-shadow:inset 0 -4px 0 #ff5c6f}.day-button.weekend:not(.selected){background:linear-gradient(180deg,var(--surface2),rgba(40,43,52,.68))}
.calendar-legend{display:flex;align-items:center;gap:16px;color:var(--muted);font-weight:700}.calendar-legend span{display:inline-flex;align-items:center;gap:7px}.dot{width:11px;height:11px;border-radius:50%;display:inline-block}.dot.open{background:#8b95a7}.dot.closed{background:#35c982}.dot.absent{background:#ff5c6f}
.selected-day-shell{display:grid!important;grid-template-columns:minmax(360px,.95fr) minmax(420px,1.05fr)!important;gap:14px!important;align-items:start!important}
.editor-card,.summary-card{border:1px solid var(--line);border-radius:12px;background:var(--surface2);padding:16px;min-width:0}
.day-status-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.day-status-actions form{margin:0}.final-entry-form{display:grid!important;grid-template-columns:minmax(260px,1.4fr) repeat(3,minmax(120px,.45fr)) auto!important;gap:10px!important;align-items:end!important}.final-entry-form label:first-of-type{grid-column:auto!important}.final-entry-form button{height:40px}.selected-list{display:grid;gap:8px}.entry-pill{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px}
.assignment-list{display:grid;gap:10px}.assignment-row{display:grid!important;grid-template-columns:minmax(260px,1fr) minmax(320px,1fr) 120px!important;gap:10px!important;align-items:center;border:1px solid var(--line);background:var(--surface2);border-radius:12px;padding:12px}.assignment-row small{display:block;color:var(--muted);margin-top:2px}.assignment-row button{width:100%}
.ghost-danger{background:transparent!important;color:#ff9aaa!important;border:1px solid rgba(255,92,111,.34)!important;border-radius:8px!important;min-height:34px!important;padding:0 11px!important}.ghost-danger:hover{background:rgba(255,92,111,.12)!important}
.parameters-actions,.operators-actions{display:flex;gap:8px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.operator-tile.admin-tile{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:12px!important}.operator-open{display:grid!important;grid-template-columns:52px minmax(0,1fr)!important;gap:14px!important;align-items:center!important;min-width:0!important}
html[data-theme="light"] .login-page{background:#f3f5f8}html[data-theme="light"] .day-button,html[data-theme="light"] .editor-card,html[data-theme="light"] .summary-card{background:#f7f9fc;color:#151923;border-color:#d8e0ea}html[data-theme="light"] .day-button.selected{background:#1d7df2;color:white}html[data-theme="light"] .day-button strong{color:inherit}html[data-theme="light"] .operator-stat-grid .stat-square{background:#ffffff!important;border-color:#dce3ec!important;color:#151923!important}html[data-theme="light"] .operator-stat-grid .stat-square strong{color:#111827!important}
@media(max-width:1250px){.operator-stat-grid,.operator-stat-grid.operator-stat-grid-final{grid-template-columns:repeat(2,minmax(0,1fr))!important}.selected-day-shell{grid-template-columns:1fr!important}.final-entry-form{grid-template-columns:1fr 1fr 1fr 1fr!important}.final-entry-form label:first-of-type{grid-column:1/-1!important}.final-entry-form button{grid-column:1/-1}.assignment-row{grid-template-columns:1fr!important}}
@media(max-width:760px){.operator-stat-grid,.operator-stat-grid.operator-stat-grid-final{grid-template-columns:1fr!important}.calendar-week{gap:6px!important}.day-button{min-height:64px}.day-button strong{font-size:18px}.final-entry-form{grid-template-columns:1fr!important}}

/* v0.17 FINAL MICRO-FIXES - only requested corrections */
/* Parametri: keep the remove button away from the right border */
.parameters-table-panel{padding-right:18px!important;}
.parameters-table-wrap{padding-right:14px!important;overflow-x:auto!important;}
.parameters-table-wrap table{width:calc(100% - 10px)!important;}
.parameters-table-wrap th:last-child,
.parameters-table-wrap td:last-child{min-width:126px!important;padding-right:24px!important;text-align:right!important;}
.parameters-table-wrap td:last-child form{display:flex!important;justify-content:flex-end!important;margin:0!important;}
.parameters-table-wrap .ghost-danger{margin-right:4px!important;}

/* Compila mese > Operatore: prevent form/card overlap in block 2 */
.selected-day-shell{display:grid!important;grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr)!important;gap:18px!important;align-items:start!important;width:100%!important;overflow:hidden!important;}
.editor-card,.summary-card{min-width:0!important;overflow:hidden!important;}
.final-entry-form{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr)) minmax(170px,.7fr)!important;gap:12px!important;align-items:end!important;width:100%!important;max-width:100%!important;overflow:hidden!important;}
.final-entry-form label:first-of-type{grid-column:1 / -1!important;min-width:0!important;}
.final-entry-form label{min-width:0!important;}
.final-entry-form input,.final-entry-form select{width:100%!important;min-width:0!important;}
.final-entry-form button{width:100%!important;min-width:0!important;height:42px!important;}
.selected-day-panel .panel-head{gap:18px!important;}
.selected-day-panel .panel-head > div:first-child{min-width:0!important;}
.day-status-actions{flex:0 0 auto!important;}
.summary-card .empty.tight{margin:0!important;}
.entry-pill{min-width:0!important;}
.entry-pill > div{min-width:0!important;}
.entry-pill strong,.entry-pill small{overflow:hidden!important;text-overflow:ellipsis!important;}

@media(max-width:1350px){
  .selected-day-shell{grid-template-columns:1fr!important;}
  .final-entry-form{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
  .final-entry-form button{grid-column:1 / -1!important;}
}
@media(max-width:760px){
  .final-entry-form{grid-template-columns:1fr!important;}
}


/* v0.18 - correzione chirurgica pagina Parametri: pulsante Rimuovi non tagliato */
.parameters-table-panel{
  padding-right:28px!important;
  overflow:visible!important;
}
.parameters-table-wrap{
  overflow:visible!important;
  padding-right:18px!important;
  border-radius:10px!important;
}
.parameters-table-wrap .param-table{
  width:100%!important;
  max-width:100%!important;
  table-layout:fixed!important;
  border-collapse:collapse!important;
}
.param-table .col-area{width:12%;}
.param-table .col-parametro{width:22%;}
.param-table .col-matrice{width:20%;}
.param-table .col-small{width:8.5%;}
.param-table .col-note{width:13%;}
.param-table .col-action{width:128px;}
.param-table th,
.param-table td{
  overflow-wrap:anywhere!important;
  word-break:normal!important;
}
.param-table th.action-head,
.param-table td.action-cell{
  width:128px!important;
  min-width:128px!important;
  max-width:128px!important;
  padding-left:14px!important;
  padding-right:18px!important;
  text-align:right!important;
  overflow:visible!important;
}
.param-table td.action-cell form{
  display:flex!important;
  justify-content:flex-end!important;
  margin:0!important;
  width:100%!important;
}
.param-table .param-remove,
.parameters-table-wrap .ghost-danger{
  width:94px!important;
  min-width:94px!important;
  max-width:94px!important;
  margin-right:0!important;
  padding:0 10px!important;
  white-space:nowrap!important;
}

/* v0.18-1 - Account e PDF export */
.account-shell{display:grid;grid-template-columns:240px minmax(0,1fr);gap:14px;align-items:start}.account-subnav{position:sticky;top:18px;padding:10px;display:grid;gap:8px}.account-subnav a{min-height:42px;border-radius:8px;padding:0 13px;display:flex;align-items:center;color:var(--muted);font-weight:740;border:1px solid transparent}.account-subnav a:hover{background:var(--surface2);color:var(--ink)}.account-subnav a.active{background:#202236;border-color:#2d5f94;color:#fff}.account-content{display:grid;gap:14px;min-width:0}.account-card{padding:20px}.account-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.account-form .account-security-note,.account-form .form-actions{grid-column:1/-1}.account-security-note{border:1px solid rgba(36,150,255,.26);background:rgba(36,150,255,.07);border-radius:10px;padding:14px}.account-security-note strong{display:block;margin-bottom:4px}.account-security-note p{margin:0;color:var(--muted)}.account-create-grid{display:grid;grid-template-columns:1fr 1fr 220px 150px;gap:12px;align-items:end}.account-list{display:grid;gap:10px}.account-row{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(0,1.8fr) auto;gap:12px;align-items:center;border:1px solid var(--line);border-radius:10px;background:var(--surface2);padding:12px}.account-row-main strong{display:block;font-size:15px}.account-row-main small{display:block;margin-top:3px;color:var(--muted)}.account-inline-form{display:grid;grid-template-columns:minmax(130px,.8fr) 170px minmax(180px,1fr) 112px;gap:9px;align-items:center}.account-inline-form input,.account-inline-form select{min-height:36px}.account-row form{margin:0}.main-nav a[href*="account"] .nav-icon svg{stroke-width:1.75}
.report-export-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
@media(max-width:1180px){.account-shell{grid-template-columns:1fr}.account-subnav{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}.account-create-grid,.account-row,.account-inline-form{grid-template-columns:1fr}.account-form{grid-template-columns:1fr}}
html[data-theme="light"] .account-subnav a.active{color:#0f172a;background:#e8f3ff;border-color:#b9dcff}html[data-theme="light"] .account-security-note{background:#eef7ff;border-color:#b8dcff}

/* v0.18-2 - micro-fix: Account nel footer del menu + pagina account senza sovrapposizioni */
.sidebar-utility{
  height:42px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,.11);
  background:#1d1e29;
  color:#d9e0ee;
  display:flex;
  align-items:center;
  gap:12px;
  padding:0 12px;
  font-weight:720;
  cursor:pointer;
}
.sidebar-utility:hover{background:#222432;color:#ffffff;}
.sidebar-utility.active{border-color:rgba(36,150,255,.45);background:#202236;color:#ffffff;}
.sidebar-utility.active .nav-icon{color:var(--blue);}
.sidebar-utility .nav-icon{color:#8b94b2;}
.sidebar-collapsed .sidebar-utility{justify-content:center;padding:0;}
.sidebar-collapsed .sidebar-utility .nav-text{display:none;}
html[data-theme="light"] .sidebar-utility{background:#1d1e29;color:#d9e0ee;border-color:rgba(255,255,255,.11);}
html[data-theme="light"] .sidebar-utility.active{background:#202236;color:#ffffff;border-color:rgba(36,150,255,.45);}

.account-row{
  grid-template-columns:minmax(190px,240px) minmax(0,1fr)!important;
  gap:16px!important;
  align-items:start!important;
  padding:14px 16px!important;
  overflow:hidden!important;
}
.account-row-main{min-width:0!important;}
.account-row-main strong,.account-row-main small{overflow:hidden!important;text-overflow:ellipsis!important;}
.account-owner-note{display:flex!important;align-items:center!important;justify-content:flex-start!important;min-width:0!important;}
.account-owner-note .subtle-pill{width:100%;justify-content:center;}
.account-actions-wrap{
  min-width:0!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 104px!important;
  gap:10px!important;
  align-items:end!important;
}
.account-inline-form{
  min-width:0!important;
  display:grid!important;
  grid-template-columns:minmax(130px,1fr) minmax(160px,.95fr) minmax(150px,1fr) 104px!important;
  gap:9px!important;
  align-items:end!important;
}
.account-inline-form label{min-width:0!important;gap:5px!important;}
.account-inline-form input,.account-inline-form select{width:100%!important;min-width:0!important;min-height:38px!important;}
.account-inline-form button{width:100%!important;min-width:0!important;min-height:38px!important;}
.account-delete-form{margin:0!important;align-self:end!important;}
.account-delete-form button{width:100%!important;min-width:0!important;min-height:38px!important;}
@media(max-width:1320px){
  .account-row{grid-template-columns:1fr!important;}
  .account-actions-wrap{grid-template-columns:1fr!important;}
  .account-inline-form{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .account-inline-form button{grid-column:1 / -1!important;}
  .account-delete-form{justify-self:start!important;width:160px!important;}
}
@media(max-width:760px){
  .account-inline-form{grid-template-columns:1fr!important;}
  .account-delete-form{width:100%!important;}
}

/* v0.18-3 - sicurezza ruoli, backup/ripristino, export aggiuntivi */
.main-nav{padding:6px 0!important;gap:0!important;}
.main-nav a{height:39px!important;}
.sidebar-footer{gap:7px!important;padding-top:8px!important;}
.sidebar-utility{min-height:42px!important;}
.account-subnav{gap:7px!important;}
.account-subnav a{font-size:13px;}
.backup-restore-form{display:grid;grid-template-columns:minmax(320px,1fr) 190px;gap:12px;align-items:end;}
.backup-list{display:grid;gap:10px;}
.backup-row{display:grid;grid-template-columns:minmax(0,1fr) 120px;gap:12px;align-items:center;border:1px solid var(--line);background:var(--surface2);border-radius:10px;padding:12px 14px;}
.backup-row strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.backup-row small{display:block;margin-top:3px;color:var(--muted);}
.audit-table-wrap table{table-layout:fixed;width:100%;}
.audit-table-wrap th:nth-child(1),.audit-table-wrap td:nth-child(1){width:155px;}
.audit-table-wrap th:nth-child(2),.audit-table-wrap td:nth-child(2){width:120px;}
.audit-table-wrap th:nth-child(3),.audit-table-wrap td:nth-child(3){width:155px;}
.audit-table-wrap th:nth-child(4),.audit-table-wrap td:nth-child(4){width:150px;}
.audit-table-wrap td{vertical-align:top;overflow-wrap:anywhere;}
.report-export-actions{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap;justify-content:flex-end;}
.report-export-actions .month-filter{margin:0;}
@media(max-width:1180px){.backup-restore-form,.backup-row{grid-template-columns:1fr}.report-export-actions{justify-content:flex-start}.audit-table-wrap{overflow-x:auto!important}.audit-table-wrap table{min-width:900px;}}

/* v0.18-4 - Compila mese: campi note, minuti e accettazioni */
.final-entry-form .wide-field{grid-column:1 / -1!important;}
.final-entry-form textarea{width:100%!important;min-width:0!important;min-height:74px!important;padding:10px 12px!important;resize:vertical!important;}
.final-entry-form button[type="submit"]{grid-column:1 / -1!important;}

/* v0.18-5 - Compila giornata separata: campioni e attivita giornaliere */
.day-editors-stack{display:grid!important;gap:14px!important;min-width:0!important;}
.final-entry-form .sample-pair{grid-column:1 / -1!important;display:grid!important;grid-template-columns:minmax(135px,.36fr) minmax(0,1fr)!important;gap:12px!important;align-items:end!important;min-width:0!important;}
.final-entry-form .sample-pair label{min-width:0!important;}
.final-entry-form .sample-pair input,.final-entry-form .sample-pair textarea{width:100%!important;min-width:0!important;}
.card-title-row{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:12px!important;margin-bottom:12px!important;}
.card-title-row .eyebrow{margin-bottom:0!important;}
.edit-mini{width:34px!important;height:34px!important;min-height:34px!important;border-radius:8px!important;padding:0!important;background:var(--surface)!important;border:1px solid var(--line2)!important;color:var(--ink)!important;display:grid!important;place-items:center!important;flex:0 0 auto!important;}
.edit-mini svg{width:17px!important;height:17px!important;stroke:currentColor!important;stroke-width:1.9!important;fill:none!important;stroke-linecap:round!important;stroke-linejoin:round!important;}
.daily-activities-form{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr)) 120px!important;gap:12px!important;align-items:end!important;}
.daily-activities-form .activity-field{display:grid!important;gap:8px!important;min-width:0!important;align-self:start!important;}
.daily-activities-form input{width:100%!important;min-width:0!important;}
.activity-topic-field{display:none!important;}
.activity-topic-field.is-visible{display:grid!important;}
.daily-activities-form button{width:100%!important;min-width:0!important;height:42px!important;}
.daily-activities-form.is-collapsed{display:none!important;}
.daily-activities-card.is-editing .daily-activities-summary{display:none!important;}
.daily-activities-card.is-editing .daily-activities-form.is-collapsed{display:grid!important;}
.daily-activities-summary{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;}
.daily-activities-summary div{border:1px solid var(--line)!important;border-radius:10px!important;background:var(--surface)!important;padding:12px!important;min-width:0!important;}
.daily-activities-summary span{display:block!important;font-size:10px!important;letter-spacing:.11em!important;text-transform:uppercase!important;color:var(--muted)!important;font-weight:760!important;}
.daily-activities-summary strong{display:block!important;margin-top:8px!important;font-size:20px!important;line-height:1!important;}
.daily-activities-summary small{display:block!important;margin-top:7px!important;color:var(--muted)!important;overflow-wrap:anywhere!important;}
.operator-day-review{scroll-margin-top:18px!important;}
.operator-review-calendar{margin-bottom:16px!important;}
.operator-day-detail-grid{display:grid!important;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr)!important;gap:14px!important;align-items:start!important;}
.entry-pill.detail-entry{grid-template-columns:minmax(0,1fr) auto!important;}
.day-state-line{margin:12px 0 0!important;color:var(--muted)!important;}
@media(max-width:1350px){.daily-activities-form{grid-template-columns:repeat(3,minmax(0,1fr))!important}.daily-activities-form button{grid-column:1 / -1!important;}.daily-activities-summary{grid-template-columns:repeat(3,minmax(0,1fr))!important;}}
@media(max-width:1180px){.operator-day-detail-grid{grid-template-columns:1fr!important;}}
@media(max-width:760px){.final-entry-form .sample-pair,.daily-activities-form,.daily-activities-summary{grid-template-columns:1fr!important;}}

/* v0.18-3 Mod 6 - Area personale operatore */
.operator-welcome-card h1{letter-spacing:-.035em}.operator-kpi-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px}.operator-kpi-card{min-height:132px}.operator-delta{align-self:flex-start;border-radius:999px;padding:7px 10px;font-weight:820;font-size:13px;border:1px solid var(--line);background:var(--surface2)}.operator-delta.positive{color:#54d28a;border-color:rgba(84,210,138,.35);background:rgba(84,210,138,.08)}.operator-delta.negative{color:#ff7f8f;border-color:rgba(255,127,143,.35);background:rgba(255,127,143,.08)}.operator-chart-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:14px}.operator-line-card{min-height:330px}.operator-line-chart{height:220px;display:grid;grid-template-columns:42px minmax(0,1fr);gap:10px;align-items:stretch;margin-top:4px}.operator-y-axis{display:flex;flex-direction:column;justify-content:space-between;text-align:right;color:var(--soft);font-size:11px;padding:8px 0 10px}.operator-line-chart svg{width:100%;height:220px;border-left:1px solid var(--line);border-bottom:1px solid var(--line);overflow:visible;background:linear-gradient(180deg,rgba(255,255,255,.035),transparent)}.operator-line-chart svg line{stroke:rgba(255,255,255,.055);stroke-width:.45}.operator-line-chart svg polyline{fill:none;stroke:#2496ff;stroke-width:2.2;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round}.operator-line-chart svg circle{fill:#9bd9ff;stroke:#0a1118;stroke-width:.9;vector-effect:non-scaling-stroke}.operator-line-card.analyzed .operator-line-chart svg polyline{stroke:#35c982}.operator-line-card.analyzed .operator-line-chart svg circle{fill:#84e6b4}.operator-line-card.calculated .operator-line-chart svg polyline{stroke:#8b7bff}.operator-line-card.calculated .operator-line-chart svg circle{fill:#c3bbff}.operator-x-axis{display:flex;justify-content:space-between;margin-left:52px;color:var(--soft);font-size:10px;padding-top:6px;min-height:20px}.operator-dashboard-bottom{grid-template-columns:1fr 1fr}.operator-link-note{color:#8dd0ff!important}.operator-account-grid{grid-template-columns:minmax(150px,1fr) minmax(150px,1fr) 170px minmax(240px,1.2fr) 140px!important}.operator-account-row{grid-template-columns:minmax(180px,.62fr) minmax(0,2fr)!important}.operator-inline-form{grid-template-columns:minmax(120px,.8fr) 150px minmax(180px,1fr) minmax(160px,1fr) 105px!important}.operator-inline-form label{min-width:0}.operator-inline-form select{width:100%}@media(max-width:1380px){.operator-chart-grid{grid-template-columns:1fr}.operator-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.operator-dashboard-bottom{grid-template-columns:1fr}.operator-account-grid,.operator-inline-form{grid-template-columns:1fr!important}.operator-account-row{grid-template-columns:1fr!important}}@media(max-width:900px){.operator-kpi-grid{grid-template-columns:1fr}.operator-line-card{min-height:auto}.operator-line-chart{height:190px}.operator-line-chart svg{height:190px}}
html[data-theme="light"] .operator-line-chart svg line{stroke:rgba(15,23,42,.08)}

/* v0.18.3 Mod 7 - operator status, notifications, assistance */
.warning{background:#f59e0b;color:#1a1200;border:1px solid rgba(245,158,11,.55);min-height:38px;border-radius:9px;padding:0 13px;font-weight:780;cursor:pointer}.warning:hover{filter:brightness(1.05)}
.status-pill{display:inline-flex;align-items:center;justify-content:center;min-height:28px;border-radius:999px;padding:0 10px;font-size:12px;font-weight:820;border:1px solid var(--line);white-space:nowrap}.status-pill.ok{color:#54d28a;border-color:rgba(84,210,138,.35);background:rgba(84,210,138,.09)}.status-pill.warn{color:#ffc56b;border-color:rgba(245,158,11,.42);background:rgba(245,158,11,.10)}.status-pill.neutral{color:#bfe1ff;border-color:rgba(36,150,255,.30);background:rgba(36,150,255,.08)}
.operator-lock-notice{margin:-2px 0 14px;border:1px solid rgba(245,158,11,.34);background:rgba(245,158,11,.08);border-radius:12px;padding:13px 15px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}.operator-lock-notice strong{color:#ffd18a}.operator-lock-notice span{color:var(--muted)}.operator-lock-notice.blocked{border-color:rgba(255,92,111,.34);background:rgba(255,92,111,.08)}.operator-lock-notice.blocked strong{color:#ff9aaa}
.notification-list{display:grid;gap:10px}.notification-list.compact{gap:8px}.notification-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;border:1px solid var(--line);background:var(--surface2);border-radius:12px;padding:13px 14px}.notification-row strong{display:block;font-size:15px}.notification-row small{display:block;color:var(--muted);margin-top:3px}.notification-row p{margin:7px 0 0;color:var(--muted)}.notification-row.reopen_request{border-color:rgba(245,158,11,.34)}.notification-row.operator_blocked{border-color:rgba(255,92,111,.34)}.notification-row.handled{opacity:.72}.notification-row form{margin:0}.assistance-form{display:grid;gap:12px}.assistance-form label span{display:block;margin-bottom:7px;font-size:10px;letter-spacing:.11em;text-transform:uppercase;color:var(--muted);font-weight:760}.assistance-form textarea{width:100%;resize:vertical;min-height:118px}.operator-status-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.operator-status-card{border:1px solid var(--line);background:var(--surface2);border-radius:12px;padding:14px;display:grid;gap:10px}.operator-status-card.blocked{border-color:rgba(245,158,11,.35)}.operator-status-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.operator-status-head strong{display:block;font-size:15px}.operator-status-head small{display:block;color:var(--muted);margin-top:3px}.status-bar{height:9px;border-radius:999px;background:rgba(255,255,255,.07);overflow:hidden}.status-bar i{display:block;height:100%;width:100%;border-radius:inherit;background:#35c982}.operator-status-card.blocked .status-bar i{background:#f59e0b}.warning-text{margin:0;color:#ffc56b;font-size:13px}.admin-operator-chart-grid{margin:0 0 16px}.admin-operator-chart-grid .operator-line-card{min-height:300px}.admin-operator-chart-grid .operator-line-chart{height:190px}.admin-operator-chart-grid .operator-line-chart svg{height:190px}
@media(max-width:1180px){.operator-status-grid{grid-template-columns:1fr}.notification-row{grid-template-columns:1fr}.notification-row form button{width:100%}}
html[data-theme="light"] .notification-row,html[data-theme="light"] .operator-status-card{background:#f7f9fc;border-color:#dce3ec}html[data-theme="light"] .status-bar{background:#e8edf5}

/* v0.18.3 Mod 8 - toggle blocco inattivita, badge notifiche, dashboard admin alert */
.nav-badge{margin-left:auto;min-width:21px;height:21px;border-radius:999px;background:#ff5c6f;color:#fff;display:inline-grid;place-items:center;font-size:11px;font-weight:850;line-height:1;padding:0 6px;border:1px solid rgba(255,255,255,.22);box-shadow:0 8px 18px rgba(255,92,111,.18)}
.main-nav a .nav-badge{flex:0 0 auto}.sidebar-utility .nav-badge{margin-left:auto}.sidebar-collapsed .nav-badge{position:absolute;right:7px;top:5px;min-width:17px;height:17px;font-size:9px;padding:0 4px}.sidebar-collapsed .sidebar-utility{position:relative}.account-subnav a{position:relative;justify-content:space-between;gap:8px}.account-subnav .subnav-badge{margin-left:8px;flex:0 0 auto;min-width:20px;height:20px;font-size:10px}.main-nav a{position:relative}
.admin-alert-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:-2px 0 14px}.admin-alert-card{border:1px solid var(--line);border-radius:12px;padding:14px 16px;min-height:104px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 14px;align-items:center;background:var(--surface);box-shadow:0 14px 40px rgba(0,0,0,.10)}.admin-alert-card span{font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:#d5d9df;font-weight:840}.admin-alert-card strong{font-size:36px;line-height:1;color:#fff;text-align:right}.admin-alert-card small{grid-column:1/-1;color:rgba(226,232,240,.82)}.admin-alert-card.notifications{background:linear-gradient(135deg,rgba(36,150,255,.18),rgba(20,24,32,.95));border-color:rgba(36,150,255,.30)}.admin-alert-card.assistance{background:linear-gradient(135deg,rgba(139,123,255,.20),rgba(20,24,32,.95));border-color:rgba(139,123,255,.32)}.admin-alert-card.blocked{background:linear-gradient(135deg,rgba(245,158,11,.20),rgba(20,24,32,.95));border-color:rgba(245,158,11,.34)}.admin-alert-card:hover{transform:translateY(-1px);filter:brightness(1.04)}
.operator-lock-toggle-head{align-items:center!important}.lock-toggle-form{margin:0;flex:0 0 auto}.toggle-switch{height:42px;min-width:126px;border-radius:999px;border:1px solid var(--line);background:var(--surface2);display:inline-flex;align-items:center;gap:10px;padding:0 12px;cursor:pointer;color:var(--ink);font-weight:840}.toggle-switch .toggle-knob{width:24px;height:24px;border-radius:50%;background:#7f8791;box-shadow:0 4px 10px rgba(0,0,0,.25);transition:.15s ease}.toggle-switch.on{border-color:rgba(53,201,130,.42);background:rgba(53,201,130,.10)}.toggle-switch.on .toggle-knob{background:#35c982}.toggle-switch.off{border-color:rgba(245,158,11,.38);background:rgba(245,158,11,.09)}.toggle-switch.off .toggle-knob{background:#f59e0b}.lock-toggle-note{margin:12px 0 2px;border-radius:12px;border:1px solid var(--line);background:var(--surface2);padding:13px 15px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}.lock-toggle-note strong{font-weight:850}.lock-toggle-note span{color:var(--muted)}.lock-toggle-note.active{border-color:rgba(53,201,130,.28);background:rgba(53,201,130,.08)}.lock-toggle-note.active strong{color:#54d28a}.lock-toggle-note.inactive{border-color:rgba(245,158,11,.28);background:rgba(245,158,11,.08)}.lock-toggle-note.inactive strong{color:#ffc56b}
.operator-line-chart svg circle{display:none!important}
@media(max-width:1180px){.admin-alert-grid{grid-template-columns:1fr}.operator-lock-toggle-head{align-items:flex-start!important}.lock-toggle-form{width:100%}.toggle-switch{width:100%;justify-content:center}}
html[data-theme="light"] .admin-alert-card{background:#ffffff;color:#111827;border-color:#dce3ec}html[data-theme="light"] .admin-alert-card span{color:#475569}html[data-theme="light"] .admin-alert-card strong{color:#0f172a}html[data-theme="light"] .admin-alert-card small{color:#64748b}html[data-theme="light"] .lock-toggle-note,html[data-theme="light"] .toggle-switch{background:#f7f9fc;border-color:#dce3ec}

/* v0.18-3 Codex Mod 10 - capi reparto + strumenti */
.head-badge{display:inline-flex;align-items:center;margin-top:10px;padding:8px 12px;border-radius:999px;background:rgba(36,150,255,.12);border:1px solid rgba(36,150,255,.34);color:#9bd9ff;font-weight:800;font-size:12px;letter-spacing:.02em}.department-pie-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:14px}.department-pie-card{min-height:260px}.large-pie{grid-template-columns:112px minmax(0,1fr)}.large-pie .pie-chart{width:108px;height:108px}.large-pie .pie-chart:before{inset:28px}.head-operator-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.head-operator-card{display:grid;gap:12px;background:var(--surface2);border:1px solid var(--line);border-radius:12px;padding:14px}.head-download-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end}.head-download-form label span,.technical-form label span{display:block;margin-bottom:6px;font-size:10px;letter-spacing:.11em;text-transform:uppercase;color:var(--muted);font-weight:760}.instrument-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}.instrument-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;background:var(--surface2);border:1px solid var(--line);border-radius:12px;padding:12px}.instrument-card strong{display:block}.instrument-card small{display:block;margin-top:3px;color:var(--muted)}.form-grid.three{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto}.analysis-pair{grid-template-columns:repeat(3,minmax(0,1fr))!important}.analysis-pair select{width:100%}@media(max-width:1200px){.department-pie-grid,.head-operator-grid,.instrument-grid{grid-template-columns:1fr}.head-download-form,.form-grid.three{grid-template-columns:1fr}}

/* Mod 11 - inserimento multiplo accettazioni stesso parametro/matrice */
.multi-acceptance-form{display:grid!important;grid-template-columns:1fr!important;gap:14px!important;align-items:stretch!important;}
.multi-acceptance-form .parameter-master-field{grid-column:1 / -1!important;}
.multi-acceptance-form .locked-parameter-note{display:none;margin-top:6px;color:var(--warning)!important;font-weight:700;}
.multi-acceptance-form.has-extra-acceptances .locked-parameter-note{display:block;}
.multi-acceptance-toolbar{grid-column:1 / -1;display:flex;gap:10px;align-items:center;flex-wrap:wrap;}
.multi-acceptance-toolbar button{width:auto!important;min-width:220px!important;height:38px!important;}
.multi-acceptance-form .reset-acceptance-blocks{display:none;}
.multi-acceptance-form.has-extra-acceptances .reset-acceptance-blocks{display:inline-flex;}
.phase-multi-row{grid-column:1 / -1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:stretch;}
.phase-group{border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.018);padding:12px;display:grid;gap:10px;min-width:0;align-content:start;}
.phase-group.phase-main{background:rgba(36,150,255,.045);border-color:rgba(36,150,255,.32);}
.phase-group p{margin:0;color:#8dd0ff;font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:850;}
.phase-group label{display:grid;gap:6px;min-width:0;}
.phase-group span{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--soft);font-weight:780;}
.extra-acceptance-slot{display:none;}
.multi-acceptance-form.has-extra-acceptances .extra-acceptance-slot{display:grid;}
.multi-acceptance-form.has-extra-acceptances .parameter-master-select{opacity:.72;cursor:not-allowed;}
html[data-theme="light"] .phase-group{background:#f6f8fb;border-color:#d8e0ea;}
html[data-theme="light"] .phase-group.phase-main{background:#edf5ff;border-color:#aacdf4;}
@media(max-width:1150px){.phase-multi-row{grid-template-columns:1fr!important;}.multi-acceptance-toolbar button{width:100%!important;}}

/* Mod 12 - Graduatorie e confronti */
.rank-metric-pills,
.compare-kpis {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  align-items: center;
}
.rank-metric-pill,
.compare-kpis span {
  min-width: 118px;
  border: 1px solid var(--border);
  border-radius: 999px;
  background: linear-gradient(180deg, rgba(37,99,235,.14), rgba(15,23,42,.42));
  padding: 10px 16px;
  display: inline-flex;
  gap: 8px;
  align-items: baseline;
  justify-content: center;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04);
}
.rank-metric-pill small,
.compare-kpis small { color: var(--muted); font-weight: 700; letter-spacing: .04em; text-transform: uppercase; font-size: .72rem; }
.rank-metric-pill strong,
.compare-kpis strong { color: var(--text); font-size: 1.08rem; }
.ranking-section-title { align-items: flex-start; gap: 16px; }
.ranking-pie-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; margin-top: 18px; }
.ranking-pie-card { border: 1px solid var(--border); border-radius: 18px; background: rgba(15,23,42,.45); padding: 14px; display: flex; align-items: center; gap: 13px; }
.ranking-pie-card strong { display:block; color: var(--text); }
.ranking-pie-card small { color: var(--muted); }
.mini-donut { width: 58px; height: 58px; border-radius: 999px; position: relative; flex: 0 0 auto; display:flex; align-items:center; justify-content:center; }
.mini-donut::after { content:""; position:absolute; inset:12px; border-radius:999px; background: var(--surface); }
.mini-donut span { position:relative; z-index:1; font-weight:800; color: var(--text); font-size:.78rem; }
.compare-panel { margin-top: 28px; }
.compare-form { display: grid; gap: 18px; }
.compare-two-columns,
.compare-results-grid,
.operator-comparison-cards { display:grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.compare-selector-card,
.compare-result-card,
.operator-compare-card {
  border: 1px solid var(--border);
  border-radius: 20px;
  background: rgba(15,23,42,.48);
  padding: 18px;
  display: grid;
  gap: 12px;
}
.compare-selector-card label { display: grid; gap: 7px; }
.compare-selector-card label span { color: var(--muted); text-transform: uppercase; letter-spacing: .08em; font-size: .72rem; font-weight: 700; }
.compare-date-pair { display:grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.compare-results-grid { margin-top: 24px; }
.compare-result-card h3,
.operator-compare-card h3 { margin: 0; color: var(--text); }
.table-wrap.mini table th,
.table-wrap.mini table td { font-size: .78rem; padding: 8px 9px; }
.compare-delta-card {
  margin: 16px 0 22px;
  border: 1px solid var(--border);
  border-radius: 18px;
  padding: 14px 18px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 12px;
  background: rgba(15,23,42,.48);
}
.compare-delta-card span { color: var(--muted); font-weight: 800; text-transform: uppercase; letter-spacing: .08em; font-size: .75rem; }
.compare-delta-card strong { color: var(--text); font-size: 1.55rem; }
.compare-delta-card em { font-style: normal; font-weight: 800; }
.compare-delta-card.positive-card { border-color: rgba(34,197,94,.45); background: rgba(34,197,94,.08); }
.compare-delta-card.positive-card em { color: var(--success); }
.compare-delta-card.negative-card { border-color: rgba(239,68,68,.45); background: rgba(239,68,68,.08); }
.compare-delta-card.negative-card em { color: var(--danger); }
.operator-compare-card > small { color: var(--muted); }
@media (max-width: 1100px) {
  .ranking-pie-grid,
  .compare-two-columns,
  .compare-results-grid,
  .operator-comparison-cards { grid-template-columns: 1fr; }
}

/* Mod 13 - UX graduatorie e confronti */
.rankings-hero { align-items: flex-start; }
.rankings-hero-actions { display:flex; align-items:center; justify-content:flex-end; gap:14px; flex-wrap:wrap; }
.anchor-button { text-decoration:none!important; display:inline-flex; align-items:center; justify-content:center; min-height:38px; white-space:nowrap; }
.ranking-section-title { display:block!important; margin-bottom:14px; }
.ranking-heading-left { display:grid; justify-items:start; gap:8px; }
.ranking-heading-left h2 { margin-bottom: 0; }
.rank-metric-pills-left { justify-content:flex-start; align-items:center; margin-top:2px; }
.rank-metric-pill { min-width: 168px; justify-content:center; padding: 14px 22px; }
.rank-metric-pill small { font-size:.78rem; letter-spacing:.06em; }
.rank-metric-pill strong { font-size:1.38rem; }
.compare-panel-head,
.compare-block-head { align-items:flex-start; gap:18px; }
.compare-shortcuts { display:flex; gap:10px; flex-wrap:wrap; justify-content:flex-end; }
.compare-choice-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin-top:18px; }
.compare-choice-card { border:1px solid var(--border); border-radius:22px; padding:18px; background:linear-gradient(180deg, rgba(37,99,235,.12), rgba(15,23,42,.46)); text-decoration:none; display:grid; gap:8px; min-height:130px; box-shadow: inset 0 1px 0 rgba(255,255,255,.04); }
.compare-choice-card span { width:34px; height:34px; border-radius:12px; display:inline-flex; align-items:center; justify-content:center; color:#8dd0ff; background:rgba(37,99,235,.18); border:1px solid rgba(80,160,255,.28); font-weight:900; }
.compare-choice-card strong { color:var(--text); font-size:1.1rem; }
.compare-choice-card small { color:var(--muted); line-height:1.45; }
.compare-block { scroll-margin-top: 18px; }
.compare-mode-badge { border:1px solid rgba(80,160,255,.35); border-radius:999px; padding:10px 14px; color:#8dd0ff; background:rgba(37,99,235,.11); font-size:.72rem; font-weight:850; letter-spacing:.09em; text-transform:uppercase; white-space:nowrap; }
.dedicated-compare-form { margin-top: 16px; }
.compare-card-title { display:flex; align-items:center; gap:12px; }
.compare-card-title > span { width:38px; height:38px; border-radius:14px; display:inline-flex; align-items:center; justify-content:center; background:rgba(80,160,255,.14); border:1px solid rgba(80,160,255,.32); color:#8dd0ff; font-weight:900; }
.compare-card-title h3 { margin:0; color:var(--text); }
.period-field { display:none!important; }
.period-field.is-visible { display:grid!important; }
.compare-date-pair.period-field.is-visible { display:grid!important; }
.compare-actions { justify-content:flex-end; margin-top:0; }
.department-results-grid,
.operator-results-grid { margin-top:22px; }
.compare-result-card,
.operator-compare-card { box-shadow: inset 0 1px 0 rgba(255,255,255,.035); }
.compare-kpis { align-items:stretch; }
.compare-kpis span { border-radius:18px; min-width:120px; padding:12px 14px; flex-direction:column; align-items:flex-start; gap:2px; }
.compare-kpis strong { font-size:1.25rem; }
@media (max-width: 1200px) { .rankings-hero-actions { justify-content:flex-start; } }
@media (max-width: 900px) { .compare-choice-grid { grid-template-columns:1fr; } .rank-metric-pill { min-width: 138px; } }
html { scroll-behavior: smooth; }

/* Mod 14 - Micro-riquadro graduatorie + light mode ad alto contrasto */
:root{
  --text:var(--ink);
  --border:var(--line);
  --success:var(--green);
  --danger:var(--red);
}

/* Riquadri Totale/Media/CV piu compatti */
.rank-metric-pills-left{
  gap:10px!important;
  margin-top:0!important;
}
.rank-metric-pill{
  min-width:112px!important;
  max-width:132px!important;
  min-height:42px!important;
  padding:8px 14px!important;
  border-radius:999px!important;
  gap:7px!important;
  box-shadow:none!important;
}
.rank-metric-pill small{
  font-size:.68rem!important;
  letter-spacing:.055em!important;
  line-height:1!important;
}
.rank-metric-pill strong{
  font-size:1.06rem!important;
  line-height:1!important;
}
.ranking-heading-left{
  gap:7px!important;
}
.ranking-section-title{
  margin-bottom:12px!important;
}

/* Modalita chiara: maggiore contrasto cromatico senza alterare la dark mode */
html[data-theme="light"]{
  --bg:#e8edf5;
  --bg2:#f8fafc;
  --surface:#ffffff;
  --surface2:#f0f4f8;
  --surface3:#e2eaf4;
  --ink:#0f172a;
  --muted:#334155;
  --soft:#475569;
  --line:#b6c3d3;
  --line2:#8fa0b4;
  --blue:#005fcf;
  --blue2:#004ba8;
  --green:#047857;
  --red:#dc2626;
  --amber:#b45309;
  --violet:#5b21b6;
  --text:var(--ink);
  --border:var(--line);
  --success:var(--green);
  --danger:var(--red);
}
html[data-theme="light"] body,
html[data-theme="light"] .content,
html[data-theme="light"] .app-shell{
  background:#e8edf5!important;
  color:#0f172a!important;
}
html[data-theme="light"] .topbar-card,
html[data-theme="light"] .page-header,
html[data-theme="light"] .panel,
html[data-theme="light"] .kpi-card,
html[data-theme="light"] .stat-square,
html[data-theme="light"] .report-cover,
html[data-theme="light"] .report-dept-card,
html[data-theme="light"] .login-card,
html[data-theme="light"] .operator-tile,
html[data-theme="light"] .editor-card,
html[data-theme="light"] .summary-card,
html[data-theme="light"] .compare-selector-card,
html[data-theme="light"] .compare-result-card,
html[data-theme="light"] .operator-compare-card,
html[data-theme="light"] .ranking-pie-card,
html[data-theme="light"] .notification-row,
html[data-theme="light"] .operator-status-card,
html[data-theme="light"] .admin-alert-card{
  background:#ffffff!important;
  border-color:#b6c3d3!important;
  color:#0f172a!important;
  box-shadow:0 1px 2px rgba(15,23,42,.06)!important;
}
html[data-theme="light"] .rank-card,
html[data-theme="light"] .day-button,
html[data-theme="light"] input,
html[data-theme="light"] select,
html[data-theme="light"] textarea,
html[data-theme="light"] .table-wrap,
html[data-theme="light"] .assignment-row,
html[data-theme="light"] .report-metric-card,
html[data-theme="light"] .total-chart-card,
html[data-theme="light"] .entry-pill,
html[data-theme="light"] .dept-chip,
html[data-theme="light"] .quick-op,
html[data-theme="light"] .subtle-pill,
html[data-theme="light"] .state-badge,
html[data-theme="light"] .phase-group,
html[data-theme="light"] .daily-activities-summary div{
  background:#f1f5f9!important;
  border-color:#a8b6c8!important;
  color:#0f172a!important;
}
html[data-theme="light"] input,
html[data-theme="light"] select,
html[data-theme="light"] textarea{
  background:#ffffff!important;
  border-color:#7f8ea3!important;
  color:#0f172a!important;
}
html[data-theme="light"] input::placeholder,
html[data-theme="light"] textarea::placeholder{
  color:#64748b!important;
  opacity:1!important;
}
html[data-theme="light"] th,
html[data-theme="light"] table th{
  background:#dbe6f3!important;
  color:#1e293b!important;
  border-color:#a8b6c8!important;
}
html[data-theme="light"] td,
html[data-theme="light"] table td{
  color:#0f172a!important;
  border-color:#c8d3e0!important;
}
html[data-theme="light"] .muted,
html[data-theme="light"] .empty,
html[data-theme="light"] .chart-note,
html[data-theme="light"] .operator-tile small,
html[data-theme="light"] .entry-pill small,
html[data-theme="light"] .metric-line small,
html[data-theme="light"] .ranking-pie-card small,
html[data-theme="light"] .compare-choice-card small,
html[data-theme="light"] .operator-compare-card > small,
html[data-theme="light"] label span,
html[data-theme="light"] .field-label span,
html[data-theme="light"] .compare-selector-card label span,
html[data-theme="light"] .daily-activities-summary span{
  color:#334155!important;
}
html[data-theme="light"] .eyebrow{
  color:#005fcf!important;
}
html[data-theme="light"] h1,
html[data-theme="light"] h2,
html[data-theme="light"] h3,
html[data-theme="light"] strong,
html[data-theme="light"] .kpi-copy strong,
html[data-theme="light"] .kpi-card>strong,
html[data-theme="light"] .stat-square strong,
html[data-theme="light"] .compare-kpis strong,
html[data-theme="light"] .rank-metric-pill strong,
html[data-theme="light"] .ranking-pie-card strong,
html[data-theme="light"] .compare-choice-card strong,
html[data-theme="light"] .compare-card-title h3{
  color:#0f172a!important;
}
html[data-theme="light"] .rank-metric-pill,
html[data-theme="light"] .compare-kpis span{
  background:linear-gradient(180deg,#dceaff,#cbdcf3)!important;
  border-color:#8aa7cc!important;
  color:#0f172a!important;
}
html[data-theme="light"] .rank-metric-pill small,
html[data-theme="light"] .compare-kpis small{
  color:#334155!important;
}
html[data-theme="light"] .compare-choice-card,
html[data-theme="light"] .compare-mode-badge,
html[data-theme="light"] .compare-card-title > span{
  background:#e5efff!important;
  border-color:#8bb6e8!important;
  color:#004ba8!important;
}
html[data-theme="light"] .compare-delta-card{
  background:#ffffff!important;
  border-color:#a8b6c8!important;
  color:#0f172a!important;
}
html[data-theme="light"] .compare-delta-card.positive-card{
  background:#e6f7ef!important;
  border-color:#65b98f!important;
}
html[data-theme="light"] .compare-delta-card.negative-card{
  background:#fff0f1!important;
  border-color:#f09098!important;
}
html[data-theme="light"] .positive,
html[data-theme="light"] .positive-card em{color:#047857!important;}
html[data-theme="light"] .negative,
html[data-theme="light"] .negative-card em{color:#dc2626!important;}
html[data-theme="light"] .summary-row td{background:#fff3c4!important;}
html[data-theme="light"] .mean-row td{background:#dff7ea!important;}
html[data-theme="light"] .cv-row td{background:#dceaff!important;}
html[data-theme="light"] .bar{background:#cbd5e1!important;}
html[data-theme="light"] .plot-area{background:repeating-linear-gradient(to top,transparent 0 70px,rgba(15,23,42,.08) 71px)!important;}
html[data-theme="light"] .mini-donut::after,
html[data-theme="light"] .mini-donut:before,
html[data-theme="light"] .pie-chart:before,
html[data-theme="light"] .donut-chart.total:before{background:#ffffff!important;}
html[data-theme="light"] .mini-donut span{color:#0f172a!important;}
html[data-theme="light"] .primary{background:#005fcf!important;color:#fff!important;border-color:#005fcf!important;}
html[data-theme="light"] .secondary{background:#e2e8f0!important;color:#0f172a!important;border-color:#94a3b8!important;}
html[data-theme="light"] .success{background:#047857!important;color:#fff!important;}
html[data-theme="light"] .danger{background:#dc2626!important;color:#fff!important;}

@media(max-width:900px){
  .rank-metric-pill{min-width:102px!important;max-width:none!important;padding:8px 12px!important;}
}

/* === MOD 15 - Menu sezioni + gestione laboratorio === */
.nav-section-pill{margin:8px 12px 6px;height:34px;border:1px solid rgba(99,179,255,.18);border-radius:999px;background:linear-gradient(135deg,rgba(30,41,59,.72),rgba(10,16,28,.82));box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 10px 24px rgba(0,0,0,.18);display:flex;align-items:center;gap:10px;padding:0 12px;color:#dbeafe;font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.22em;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.nav-section-pill .nav-icon{width:22px;height:22px;color:var(--blue)}
.nav-section-pill .nav-icon svg{width:16px;height:16px}.lab-menu-wrap{position:relative;margin-top:8px}.lab-pill{width:calc(100% - 24px);border:1px solid rgba(99,179,255,.2);cursor:pointer;text-align:left}.lab-pill.active,.lab-menu-wrap:hover .lab-pill,.lab-menu-wrap.open .lab-pill{background:linear-gradient(135deg,rgba(37,99,235,.24),rgba(15,23,42,.82));color:#fff}.flyout-arrow{margin-left:auto;display:grid;place-items:center;color:#9fb7d7;transition:transform .18s ease}.flyout-arrow svg{width:16px;height:16px;stroke:currentColor;stroke-width:2;fill:none}.lab-menu-wrap:hover .flyout-arrow,.lab-menu-wrap.open .flyout-arrow{transform:translateX(2px)}.lab-flyout{position:absolute;left:calc(100% - 6px);top:-18px;width:330px;z-index:40;opacity:0;pointer-events:none;transform:translateX(-10px) scale(.985);transition:opacity .18s ease,transform .18s ease;background:linear-gradient(180deg,rgba(17,24,39,.98),rgba(10,15,26,.98));border:1px solid rgba(148,163,184,.20);border-radius:24px;padding:14px;box-shadow:0 28px 70px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.06);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.lab-menu-wrap:hover .lab-flyout,.lab-menu-wrap.open .lab-flyout{opacity:1;pointer-events:auto;transform:translateX(0) scale(1)}.flyout-user-card{border:1px solid rgba(148,163,184,.18);border-radius:18px;background:rgba(15,23,42,.72);padding:13px 14px;margin-bottom:10px;display:grid;gap:2px}.flyout-user-card span{font-size:11px;color:#8fbbe8;text-transform:uppercase;letter-spacing:.18em;font-weight:800}.flyout-user-card strong{font-size:18px;color:#fff;letter-spacing:-.03em}.flyout-user-card small{color:#a8b4c5;font-weight:650}.flyout-card{display:flex!important;align-items:center!important;gap:12px!important;min-height:72px!important;height:auto!important;border:1px solid rgba(148,163,184,.16)!important;border-left:1px solid rgba(148,163,184,.16)!important;border-radius:18px!important;background:rgba(255,255,255,.035)!important;padding:12px!important;margin-top:8px!important;color:#dbeafe!important}.flyout-card:hover,.flyout-card.active{background:rgba(37,99,235,.14)!important;border-color:rgba(59,130,246,.35)!important;color:#fff!important}.flyout-card .nav-icon{width:38px;height:38px;border-radius:14px;background:rgba(59,130,246,.12);color:#60a5fa}.flyout-card strong{display:block;font-size:14px;color:inherit}.flyout-card small{display:block;margin-top:3px;font-size:12px;color:#9eabbf;line-height:1.25}.muted-card{opacity:.72;cursor:default!important}.sidebar-collapsed .nav-section-pill{justify-content:center;margin-left:8px;margin-right:8px;padding:0}.sidebar-collapsed .nav-section-pill .nav-text,.sidebar-collapsed .flyout-arrow{display:none}.sidebar-collapsed .lab-flyout{left:66px;top:-14px}.sidebar-collapsed .productivity-pill{height:36px}

/* === MOD 15 - Calendario relazioni === */
.lab-page-header{align-items:center}.relation-day-panel{margin-bottom:18px}.relation-selected-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:14px}.relation-selected-head span,.calendar-month-card header span,.relation-form-card>span{color:var(--blue);font-weight:850;letter-spacing:.22em;font-size:11px;text-transform:uppercase}.relation-selected-head h2{margin:3px 0 0;font-size:24px}.relation-list{display:grid;gap:10px;margin-bottom:14px}.relation-detail-card{border:1px solid var(--line);border-radius:18px;background:var(--surface2);padding:14px;display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.relation-detail-card h3{margin:8px 0 5px;font-size:17px;color:var(--ink)}.relation-detail-card p{margin:0;color:var(--muted)}.relation-detail-card small{display:block;margin-top:6px;color:var(--muted)}.relation-detail-card.pending{border-color:rgba(245,158,11,.40);box-shadow:inset 4px 0 0 rgba(245,158,11,.8)}.relation-detail-card.due_soon{border-color:rgba(249,115,22,.50);box-shadow:inset 4px 0 0 rgba(249,115,22,.88)}.relation-detail-card.completed{border-color:rgba(34,197,94,.45);box-shadow:inset 4px 0 0 rgba(34,197,94,.88)}.relation-status-chip{display:inline-flex;border-radius:999px;padding:5px 10px;font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.12em}.relation-status-chip.pending{background:rgba(245,158,11,.13);color:#fbbf24}.relation-status-chip.due_soon{background:rgba(249,115,22,.14);color:#fb923c}.relation-status-chip.completed{background:rgba(34,197,94,.13);color:#34d399}.relation-actions{display:flex;gap:8px;align-items:center}.relation-insert-box{border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.02);padding:0;overflow:hidden}.relation-insert-box summary{list-style:none;cursor:pointer;padding:14px 16px;font-weight:850;color:#dbeafe;border-bottom:1px solid var(--line)}.relation-insert-box summary::-webkit-details-marker{display:none}.relation-form-grid{padding:14px;display:grid;grid-template-columns:1.25fr .85fr .85fr;gap:12px}.relation-form-card{margin:0}.relation-form-card.wide{grid-column:auto}.relation-form-card label{display:block;margin:8px 0 6px;color:#afbdd4;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.12em}.relation-form-actions{grid-column:1/-1;display:flex;justify-content:flex-end}.relation-legend{display:flex;gap:10px;flex-wrap:wrap;margin:8px 0 18px}.relation-legend span{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:999px;background:var(--surface);padding:8px 12px;color:var(--muted);font-weight:750}.legend-dot{width:10px;height:10px;border-radius:50%;display:inline-block}.legend-dot.pending{background:#fbbf24}.legend-dot.due_soon{background:#fb923c}.legend-dot.completed{background:#34d399}.annual-calendar{display:grid;gap:18px}.calendar-month-card{background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:16px;box-shadow:var(--shadow);overflow:hidden}.calendar-month-card header{display:flex;align-items:flex-end;gap:12px;margin-bottom:13px}.calendar-month-card header h2{font-size:25px;margin:0;color:var(--ink)}.calendar-weekdays,.calendar-days-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.calendar-weekdays span{text-align:center;color:#9fb1cc;font-weight:850;font-size:11px;letter-spacing:.16em;text-transform:uppercase;padding:0 0 3px}.calendar-day-cell{min-height:102px;border:1px solid var(--line);border-radius:16px;background:var(--surface2);padding:9px;display:flex;flex-direction:column;gap:6px;transition:transform .12s ease,border-color .12s ease,background .12s ease}.calendar-day-cell:hover{transform:translateY(-1px);border-color:rgba(59,130,246,.45);background:rgba(59,130,246,.08)}.calendar-day-cell.empty{background:transparent;border-color:transparent;pointer-events:none}.calendar-day-cell.selected{outline:2px solid rgba(96,165,250,.55);outline-offset:1px}.day-number{font-size:14px;font-weight:900;color:var(--ink)}.day-relations{display:grid;gap:5px}.mini-relation{display:block;border-radius:10px;padding:5px 7px;font-size:11px;line-height:1.18;font-weight:750;white-space:normal;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.mini-relation.pending{background:rgba(245,158,11,.16);color:#fbbf24}.mini-relation.due_soon{background:rgba(249,115,22,.18);color:#fb923c}.mini-relation.completed{background:rgba(34,197,94,.16);color:#34d399}.mini-more{font-size:11px;color:var(--muted);font-weight:800}.empty-state.compact{padding:12px;border:1px dashed var(--line);border-radius:16px;color:var(--muted);background:var(--surface2)}
html[data-theme="light"] .nav-section-pill{background:linear-gradient(135deg,rgba(239,246,255,.92),rgba(255,255,255,.95));border-color:#cbdced;color:#23425f;box-shadow:0 10px 24px rgba(30,41,59,.08)}html[data-theme="light"] .lab-flyout{background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(240,244,249,.98));border-color:#cbd5e1;box-shadow:0 28px 70px rgba(15,23,42,.20)}html[data-theme="light"] .flyout-user-card,html[data-theme="light"] .flyout-card{background:#f8fafc!important;border-color:#d6e0eb!important;color:#172033!important}html[data-theme="light"] .flyout-user-card strong,html[data-theme="light"] .flyout-card strong{color:#111827}html[data-theme="light"] .flyout-card small{color:#526173}html[data-theme="light"] .relation-detail-card,html[data-theme="light"] .calendar-month-card,html[data-theme="light"] .calendar-day-cell,html[data-theme="light"] .relation-insert-box,html[data-theme="light"] .relation-legend span{background:#ffffff;border-color:#d4dde9;color:#111827}html[data-theme="light"] .calendar-day-cell:hover{background:#eef6ff;border-color:#7cb4f5}html[data-theme="light"] .calendar-day-cell.empty{background:transparent;border-color:transparent}html[data-theme="light"] .relation-insert-box summary{color:#1f4f82;border-bottom-color:#d4dde9}html[data-theme="light"] .relation-form-card label{color:#506073}html[data-theme="light"] .calendar-weekdays span{color:#526173}
@media(max-width:1100px){.relation-form-grid{grid-template-columns:1fr}.calendar-day-cell{min-height:86px}.lab-flyout{width:300px}}

/* === MOD 16 - Menu ordinato + flyout gestione laboratorio corretto === */
.sidebar{
  overflow:visible !important;
  z-index:60 !important;
}
.main-nav{
  padding:12px 0 8px !important;
  display:flex !important;
  flex-direction:column !important;
  gap:3px !important;
  flex:1 1 auto !important;
  min-height:0 !important;
  overflow-y:auto !important;
  overflow-x:visible !important;
  scrollbar-width:thin;
  scrollbar-color:rgba(148,163,184,.22) transparent;
}
.main-nav::-webkit-scrollbar{width:6px;}
.main-nav::-webkit-scrollbar-thumb{background:rgba(148,163,184,.22);border-radius:999px;}
.main-nav a{
  height:40px !important;
  min-height:40px !important;
  font-size:14px !important;
  padding:0 18px !important;
}
.nav-section-pill{
  height:31px !important;
  min-height:31px !important;
  margin:6px 14px 8px !important;
  padding:0 12px !important;
  font-size:10px !important;
  letter-spacing:.20em !important;
  border-radius:999px !important;
}
.nav-section-pill .nav-icon{width:21px!important;height:21px!important;}
.nav-section-pill .nav-icon svg{width:15px!important;height:15px!important;}
.lab-nav-zone{
  flex:0 0 auto;
  position:relative;
  padding:10px 14px 8px;
  border-top:1px solid rgba(255,255,255,.055);
  background:linear-gradient(180deg,rgba(20,22,32,.98),rgba(18,20,30,.98));
  z-index:70;
}
.lab-menu-wrap{
  position:relative !important;
  margin:0 !important;
  z-index:80;
}
.lab-pill{
  width:100% !important;
  height:44px !important;
  min-height:44px !important;
  margin:0 !important;
  padding:0 14px !important;
  border-radius:18px !important;
  border:1px solid rgba(99,179,255,.26) !important;
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  color:#dbeafe !important;
  background:linear-gradient(135deg,rgba(30,41,59,.82),rgba(10,16,28,.92)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 10px 24px rgba(0,0,0,.16) !important;
}
.lab-pill .nav-text{
  font-size:10px !important;
  letter-spacing:.22em !important;
  font-weight:850 !important;
  text-transform:uppercase !important;
  white-space:nowrap;
}
.lab-pill:hover,.lab-pill.active,.lab-menu-wrap.open .lab-pill,.lab-menu-wrap:hover .lab-pill{
  background:linear-gradient(135deg,rgba(37,99,235,.26),rgba(15,23,42,.92)) !important;
  border-color:rgba(96,165,250,.48) !important;
  color:#ffffff !important;
}
.flyout-arrow{margin-left:auto!important;display:grid!important;place-items:center!important;}
.lab-flyout{
  position:absolute !important;
  left:calc(100% + 12px) !important;
  top:-6px !important;
  width:340px !important;
  max-width:calc(100vw - var(--sidebar) - 36px) !important;
  z-index:120 !important;
  opacity:0 !important;
  pointer-events:none !important;
  transform:translateX(-12px) scale(.985) !important;
  transition:opacity .18s ease,transform .18s ease !important;
  background:linear-gradient(180deg,rgba(17,24,39,.98),rgba(10,15,26,.985)) !important;
  border:1px solid rgba(148,163,184,.22) !important;
  border-radius:24px !important;
  padding:14px !important;
  box-shadow:0 28px 70px rgba(0,0,0,.48),inset 0 1px 0 rgba(255,255,255,.06) !important;
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}
.lab-menu-wrap:hover .lab-flyout,.lab-menu-wrap.open .lab-flyout{
  opacity:1 !important;
  pointer-events:auto !important;
  transform:translateX(0) scale(1) !important;
}
.flyout-user-card{
  border:1px solid rgba(148,163,184,.18) !important;
  border-radius:18px !important;
  background:rgba(15,23,42,.76) !important;
  padding:13px 14px !important;
  margin-bottom:10px !important;
  display:grid !important;
  gap:2px !important;
}
.flyout-card{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  min-height:68px!important;
  height:auto!important;
  border:1px solid rgba(148,163,184,.16)!important;
  border-left:1px solid rgba(148,163,184,.16)!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.035)!important;
  padding:12px!important;
  margin-top:8px!important;
  color:#dbeafe!important;
  text-decoration:none!important;
}
.flyout-card:hover,.flyout-card.active{
  background:rgba(37,99,235,.14)!important;
  border-color:rgba(59,130,246,.38)!important;
  color:#fff!important;
}
.sidebar-footer{
  flex:0 0 auto !important;
  position:relative !important;
  z-index:75 !important;
  background:linear-gradient(180deg,rgba(18,20,30,.98),rgba(18,20,30,1)) !important;
  padding:10px 14px 14px !important;
  border-top:1px solid rgba(255,255,255,.055) !important;
}
.sidebar-collapsed .main-nav a{justify-content:center!important;padding:0!important;}
.sidebar-collapsed .nav-section-pill{justify-content:center!important;margin-left:10px!important;margin-right:10px!important;padding:0!important;}
.sidebar-collapsed .lab-nav-zone{padding:10px 10px 8px!important;}
.sidebar-collapsed .lab-pill{height:42px!important;min-height:42px!important;justify-content:center!important;padding:0!important;}
.sidebar-collapsed .lab-pill .nav-text,.sidebar-collapsed .lab-pill .flyout-arrow{display:none!important;}
.sidebar-collapsed .lab-flyout{left:66px!important;top:-4px!important;max-width:340px!important;}
html[data-theme="light"] .lab-nav-zone{
  background:linear-gradient(180deg,#f7f9fc,#eef3f8);
  border-top-color:#d6dee8;
}
html[data-theme="light"] .lab-pill{
  background:linear-gradient(135deg,#f7fbff,#e9f2fb)!important;
  color:#193a5c!important;
  border-color:#bfd0e4!important;
  box-shadow:0 10px 22px rgba(15,23,42,.08)!important;
}
html[data-theme="light"] .lab-pill:hover,html[data-theme="light"] .lab-pill.active,html[data-theme="light"] .lab-menu-wrap.open .lab-pill,html[data-theme="light"] .lab-menu-wrap:hover .lab-pill{
  background:linear-gradient(135deg,#e8f2ff,#dbeafe)!important;
  border-color:#6aa2dd!important;
  color:#102a43!important;
}
html[data-theme="light"] .sidebar-footer{background:linear-gradient(180deg,#eef3f8,#e7edf5)!important;border-top-color:#d6dee8!important;}
html[data-theme="light"] .lab-flyout{background:linear-gradient(180deg,rgba(255,255,255,.99),rgba(241,245,249,.99))!important;border-color:#cbd5e1!important;box-shadow:0 28px 70px rgba(15,23,42,.20)!important;}
html[data-theme="light"] .flyout-user-card,html[data-theme="light"] .flyout-card{background:#f8fafc!important;border-color:#d6e0eb!important;color:#172033!important;}
@media(max-height:760px){
  .main-nav a{height:37px!important;min-height:37px!important;font-size:13.5px!important;}
  .nav-section-pill{height:29px!important;min-height:29px!important;margin-top:5px!important;margin-bottom:6px!important;}
  .sidebar-head{height:96px!important;}
  .brand-logo{width:48px!important;height:48px!important;}
  .theme-toggle,.logout,.sidebar-utility{height:40px!important;min-height:40px!important;}
  .lab-pill{height:41px!important;min-height:41px!important;}
}

/* === MOD 17 - Calendario relazioni rifinito + menu laboratorio full flyout === */
/* Sezioni menu: capsule stessa dimensione */
.nav-section-pill.productivity-pill,
.lab-nav-zone .lab-pill{
  width:calc(100% - 28px) !important;
  height:42px !important;
  min-height:42px !important;
  margin:8px 14px 10px !important;
  padding:0 14px !important;
  border-radius:18px !important;
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  box-sizing:border-box !important;
}
.lab-nav-zone{padding:10px 0 12px!important;}
.lab-menu-wrap{position:static!important;margin:0!important;}
.lab-pill{position:relative!important;}

/* Pannello gestione laboratorio: estensione piena del menu, non piccolo popup */
.lab-flyout{
  position:fixed!important;
  left:var(--sidebar)!important;
  top:16px!important;
  width:390px!important;
  max-width:min(390px,calc(100vw - var(--sidebar) - 28px))!important;
  height:calc(100vh - 32px)!important;
  overflow:auto!important;
  border-radius:28px!important;
  padding:18px!important;
  transform:translateX(-18px) scale(.985)!important;
  z-index:140!important;
  background:linear-gradient(180deg,rgba(16,23,36,.985),rgba(8,13,22,.99))!important;
  border:1px solid rgba(148,163,184,.24)!important;
  box-shadow:0 34px 90px rgba(0,0,0,.55), inset 0 1px 0 rgba(255,255,255,.065)!important;
}
.lab-menu-wrap:hover .lab-flyout,.lab-menu-wrap.open .lab-flyout{
  opacity:1!important;
  pointer-events:auto!important;
  transform:translateX(0) scale(1)!important;
}
.flyout-user-card{
  min-height:92px!important;
  padding:18px 20px!important;
  border-radius:22px!important;
  margin-bottom:18px!important;
  background:linear-gradient(135deg,rgba(21,35,58,.88),rgba(13,19,31,.90))!important;
}
.flyout-user-card span{font-size:12px!important;}
.flyout-user-card strong{font-size:25px!important;}
.flyout-user-card small{font-size:14px!important;}
.flyout-card{
  min-height:92px!important;
  border-radius:22px!important;
  padding:18px!important;
  margin-top:14px!important;
}
.flyout-card .nav-icon{width:48px!important;height:48px!important;border-radius:18px!important;}
.flyout-card strong{font-size:18px!important;}
.flyout-card small{font-size:14px!important;margin-top:6px!important;line-height:1.35!important;}
.sidebar-collapsed .lab-flyout{left:82px!important;width:380px!important;max-width:calc(100vw - 102px)!important;}

/* Form relazione: campi puliti, stessi ingombri, niente sovrapposizioni */
.relation-form-grid{
  grid-template-columns:minmax(320px,1.05fr) minmax(260px,.8fr) minmax(260px,.8fr)!important;
  gap:18px!important;
  padding:22px!important;
  align-items:stretch!important;
}
.relation-form-card{
  padding:22px 24px!important;
  border-radius:20px!important;
  min-width:0!important;
  box-sizing:border-box!important;
}
.relation-field-stack{display:grid;gap:14px;}
.relation-field-stack input,
.relation-form-card textarea{
  width:100%!important;
  box-sizing:border-box!important;
  min-height:58px!important;
  padding:14px 18px!important;
  border-radius:14px!important;
  line-height:1.35!important;
  font-size:15px!important;
}
.relation-form-card textarea{min-height:122px!important;resize:vertical!important;}
.relation-form-card label{margin:0 0 8px!important;}
.relation-form-card>span{display:block;margin-bottom:18px!important;}
.relation-form-actions{padding-top:0!important;}
.relation-form-actions .btn{min-height:52px!important;padding:0 22px!important;}

/* Mesi richiudibili: pagina più chiara e compatta */
.month-accordion-list{display:grid;gap:14px!important;}
.month-accordion{padding:0!important;overflow:hidden!important;}
.month-accordion summary{list-style:none;cursor:pointer;}
.month-accordion summary::-webkit-details-marker{display:none;}
.month-accordion-head{
  min-height:82px;
  display:grid;
  grid-template-columns:minmax(220px,1fr) minmax(260px,auto) 42px;
  align-items:center;
  gap:16px;
  padding:18px 20px;
}
.month-title-block{display:flex;align-items:center;gap:14px;}
.month-title-block span{color:var(--blue);font-weight:900;letter-spacing:.22em;font-size:12px;text-transform:uppercase;}
.month-title-block h2{margin:0!important;font-size:24px!important;color:var(--ink);}
.month-status-chips{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;}
.month-chip{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.035);padding:7px 10px;font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);white-space:nowrap;}
.month-chip.pending{border-color:rgba(245,158,11,.32);color:#fbbf24;background:rgba(245,158,11,.10);}
.month-chip.due_soon{border-color:rgba(249,115,22,.38);color:#fb923c;background:rgba(249,115,22,.12);}
.month-chip.completed{border-color:rgba(34,197,94,.32);color:#34d399;background:rgba(34,197,94,.10);}
.month-toggle{width:38px;height:38px;border-radius:14px;border:1px solid rgba(148,163,184,.18);display:grid;place-items:center;color:#9fb1cc;background:rgba(255,255,255,.035);font-size:22px;transition:transform .18s ease, background .18s ease;}
.month-accordion[open] .month-toggle{transform:rotate(180deg);background:rgba(59,130,246,.12);color:#dbeafe;}
.month-calendar-body{border-top:1px solid var(--line);padding:16px;}
.month-accordion:not([open]):hover{border-color:rgba(96,165,250,.38)!important;background:linear-gradient(135deg,rgba(59,130,246,.055),var(--surface));}

/* Light mode: menu espanso e calendario più contrastati */
html[data-theme="light"] .lab-flyout{background:linear-gradient(180deg,#ffffff,#eef4fb)!important;border-color:#b9c7d8!important;box-shadow:0 34px 90px rgba(15,23,42,.24)!important;}
html[data-theme="light"] .flyout-user-card{background:linear-gradient(135deg,#f8fbff,#e7f0fb)!important;border-color:#c8d7e8!important;}
html[data-theme="light"] .month-chip{background:#f7fafc;border-color:#cbd5e1;color:#334155;}
html[data-theme="light"] .month-toggle{background:#f8fafc;border-color:#cbd5e1;color:#334155;}
html[data-theme="light"] .month-calendar-body{background:#ffffff;}
html[data-theme="light"] .relation-field-stack input,html[data-theme="light"] .relation-form-card textarea{background:#ffffff;color:#111827;border-color:#cbd5e1;}

@media(max-width:1250px){
  .relation-form-grid{grid-template-columns:1fr!important;}
  .month-accordion-head{grid-template-columns:1fr 42px;}
  .month-status-chips{grid-column:1/-1;justify-content:flex-start;}
}
@media(max-width:760px){
  .lab-flyout{left:12px!important;right:12px!important;top:12px!important;width:auto!important;max-width:none!important;height:calc(100vh - 24px)!important;}
  .month-accordion-head{grid-template-columns:1fr;gap:10px;}
  .month-toggle{justify-self:start;}
}


/* MOD18 - Calendario relazioni: celle giorno piu alte e dettagli completi */
.calendar-days-grid{align-items:stretch!important;}
.calendar-day-cell{
  min-height:190px!important;
  padding:12px!important;
  gap:9px!important;
}
.calendar-day-cell.has-relations{min-height:220px!important;}
.day-number{
  font-size:16px!important;
  line-height:1!important;
  margin-bottom:2px!important;
}
.day-relations{
  display:grid!important;
  gap:8px!important;
  width:100%!important;
}
.mini-relation{
  display:grid!important;
  gap:4px!important;
  border-radius:12px!important;
  padding:8px 10px!important;
  font-size:11.5px!important;
  line-height:1.22!important;
  font-weight:700!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  -webkit-line-clamp:unset!important;
  -webkit-box-orient:unset!important;
  word-break:break-word!important;
}
.mini-rel-row{display:block!important;color:inherit!important;opacity:.96!important;}
.mini-rel-row strong{font-weight:900!important;color:inherit!important;opacity:1!important;}
.mini-rel-title{font-size:12px!important;line-height:1.25!important;}
.mini-rel-notes{opacity:.88!important;text-decoration:underline;text-underline-offset:2px;}
.mini-relation.pending{background:rgba(245,158,11,.20)!important;border:1px solid rgba(245,158,11,.26)!important;color:#ffd166!important;}
.mini-relation.due_soon{background:rgba(249,115,22,.22)!important;border:1px solid rgba(249,115,22,.28)!important;color:#ffb076!important;}
.mini-relation.completed{background:rgba(34,197,94,.20)!important;border:1px solid rgba(34,197,94,.28)!important;color:#71e6a3!important;}
html[data-theme="light"] .mini-relation.pending{background:#fff5d6!important;border-color:#f0cf79!important;color:#815000!important;}
html[data-theme="light"] .mini-relation.due_soon{background:#fff0e4!important;border-color:#efbd91!important;color:#8c3c00!important;}
html[data-theme="light"] .mini-relation.completed{background:#e9f9ef!important;border-color:#9eddb6!important;color:#176334!important;}
@media(max-width:1100px){
  .calendar-day-cell{min-height:160px!important;}
  .calendar-day-cell.has-relations{min-height:185px!important;}
  .mini-relation{font-size:11px!important;padding:7px 8px!important;}
}

/* === MOD19 - Menu operativo espandibile + ricerca globale === */
:root{--expanded-menu:332px;}
.main-nav{
  gap:2px!important;
  padding:8px 0 6px!important;
  overflow:hidden!important;
  scrollbar-width:none!important;
}
.main-nav a{
  height:34px!important;
  min-height:34px!important;
  padding:0 16px!important;
  font-size:12.8px!important;
  gap:10px!important;
}
.nav-icon{width:25px!important;height:25px!important;}
.nav-icon svg{width:17px!important;height:17px!important;}
.nav-section-pill.productivity-pill,
.lab-nav-zone .lab-pill{
  width:calc(100% - 28px)!important;
  height:38px!important;
  min-height:38px!important;
  margin:6px 14px 8px!important;
  padding:0 13px!important;
  border-radius:19px!important;
  font-size:9.8px!important;
  letter-spacing:.22em!important;
  box-sizing:border-box!important;
}
.nav-section-pill.productivity-pill .nav-text,
.lab-pill .nav-text{white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
.sidebar-head{height:96px!important;padding:14px 16px 14px!important;}
.brand-logo{width:48px!important;height:48px!important;}
.brand-title{font-size:17px!important;}
.brand-subtitle{font-size:11px!important;}
.lab-nav-zone{
  padding:8px 0 8px!important;
  border-top:1px solid rgba(255,255,255,.05)!important;
  background:transparent!important;
}
.lab-pill{
  position:relative!important;
  width:calc(100% - 28px)!important;
  margin:0 14px!important;
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
}
.sidebar-footer{
  padding:8px 12px 12px!important;
  gap:7px!important;
}
.theme-toggle,.logout,.sidebar-utility{
  height:39px!important;
  min-height:39px!important;
  border-radius:10px!important;
  font-size:12.8px!important;
}
.side-expand-handle{
  position:fixed;
  left:calc(var(--sidebar) - 23px);
  top:50%;
  transform:translateY(-50%);
  width:46px;
  height:58px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.18);
  background:#050608;
  color:#ff8d8d;
  z-index:180;
  display:grid;
  place-items:center;
  cursor:pointer;
  box-shadow:0 18px 45px rgba(0,0,0,.42);
  transition:left .18s ease, transform .18s ease, border-color .18s ease, background .18s ease;
}
.side-expand-handle span{font-size:34px;line-height:1;font-weight:800;letter-spacing:-.18em;margin-left:-3px;}
.side-expand-handle:hover{border-color:rgba(96,165,250,.55);background:#090b10;color:#ffd0d0;}
.menu-panel-open .side-expand-handle{left:calc(var(--sidebar) + var(--expanded-menu) - 23px);}
.menu-panel-open .side-expand-handle span{transform:rotate(180deg);margin-left:4px;}
.sidebar-collapsed .side-expand-handle{left:calc(var(--sidebar) - 20px);}
.sidebar-collapsed.menu-panel-open .side-expand-handle{left:calc(var(--sidebar) + var(--expanded-menu) - 20px);}
.expanded-menu-panel{
  position:fixed;
  left:var(--sidebar);
  top:0;
  width:var(--expanded-menu);
  height:100vh;
  z-index:145;
  padding:26px 18px 22px;
  background:linear-gradient(180deg,rgba(20,22,32,.985),rgba(15,17,26,.995));
  border-right:1px solid rgba(148,163,184,.18);
  box-shadow:28px 0 80px rgba(0,0,0,.42),inset 1px 0 0 rgba(255,255,255,.04);
  transform:translateX(-102%);
  opacity:.02;
  pointer-events:none;
  transition:transform .22s ease,opacity .18s ease;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  gap:14px;
}
.menu-panel-open .expanded-menu-panel{
  transform:translateX(0);
  opacity:1;
  pointer-events:auto;
}
.expanded-user-card{
  border:1px solid rgba(96,165,250,.18);
  border-radius:22px;
  background:linear-gradient(135deg,rgba(21,35,58,.88),rgba(13,19,31,.94));
  padding:16px 18px;
  min-height:88px;
  display:grid;
  align-content:center;
  gap:2px;
}
.expanded-user-card span{font-size:11px;font-weight:850;letter-spacing:.18em;text-transform:uppercase;color:#8cc7ff;}
.expanded-user-card strong{font-size:23px;line-height:1.08;color:#fff;letter-spacing:-.03em;}
.expanded-user-card small{font-size:13px;color:#a8b3c5;font-weight:750;}
.global-search-box{display:grid;gap:10px;min-height:0;}
.global-search-input-wrap{position:relative;}
.global-search-input-wrap input{
  width:100%;
  height:42px;
  border-radius:999px;
  padding:0 16px 0 40px;
  border:1px solid rgba(148,163,184,.22);
  background:rgba(255,255,255,.94);
  color:#111827;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.65);
}
.search-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);font-size:22px;color:#111827;z-index:1;line-height:1;}
.global-search-results{
  min-height:150px;
  max-height:206px;
  overflow:auto;
  border-radius:22px;
  border:1px solid rgba(148,163,184,.16);
  background:rgba(0,0,0,.72);
  padding:10px;
  display:grid;
  gap:8px;
  align-content:start;
}
.search-empty-state{color:#8d99aa;font-size:13px;line-height:1.35;padding:14px;}
.search-result-item{
  display:grid;
  gap:3px;
  padding:10px 12px;
  border:1px solid rgba(148,163,184,.13);
  border-radius:15px;
  background:rgba(255,255,255,.04);
  color:#dbeafe;
  text-decoration:none;
}
.search-result-item:hover{background:rgba(37,99,235,.16);border-color:rgba(96,165,250,.38);color:#fff;}
.search-result-type{font-size:9px;font-weight:900;letter-spacing:.18em;text-transform:uppercase;color:#60a5fa;}
.search-result-item strong{font-size:14px;line-height:1.15;}
.search-result-item small{font-size:12px;color:#aab5c6;line-height:1.3;}
.expanded-menu-section{display:grid;gap:10px;margin-top:2px;}
.expanded-section-title{font-size:11px;font-weight:900;letter-spacing:.2em;text-transform:uppercase;color:#8cc7ff;padding-left:2px;}
.expanded-card{
  display:flex;
  align-items:center;
  gap:13px;
  min-height:84px;
  border-radius:21px;
  border:1px solid rgba(148,163,184,.15);
  background:linear-gradient(135deg,rgba(20,33,54,.84),rgba(9,14,24,.92));
  padding:15px;
  color:#dbeafe;
  text-decoration:none;
}
.expanded-card:hover,.expanded-card.active{border-color:rgba(96,165,250,.42);background:linear-gradient(135deg,rgba(37,99,235,.24),rgba(9,14,24,.92));color:#fff;}
.expanded-card .nav-icon{width:44px!important;height:44px!important;border-radius:16px!important;background:rgba(37,99,235,.15);color:#7cc7ff;}
.expanded-card strong{display:block;font-size:16px;line-height:1.15;color:#fff;}
.expanded-card small{display:block;margin-top:5px;font-size:12.5px;line-height:1.25;color:#aeb9ca;}
.muted-card{opacity:.68;}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;}
.sidebar-collapsed .nav-section-pill.productivity-pill,.sidebar-collapsed .lab-pill{width:42px!important;height:42px!important;min-height:42px!important;margin-left:17px!important;margin-right:17px!important;padding:0!important;justify-content:center!important;}
.sidebar-collapsed .lab-nav-zone{padding:8px 0!important;}
.sidebar-collapsed .lab-pill .nav-text,.sidebar-collapsed .lab-pill .flyout-arrow{display:none!important;}
html[data-theme="light"] .expanded-menu-panel{background:linear-gradient(180deg,#f7f9fc,#e9eef6);border-right-color:#cbd5e1;box-shadow:26px 0 70px rgba(15,23,42,.17);}
html[data-theme="light"] .expanded-user-card{background:linear-gradient(135deg,#ffffff,#eaf3ff);border-color:#c8d7e8;}
html[data-theme="light"] .expanded-user-card strong{color:#111827;}html[data-theme="light"] .expanded-user-card small{color:#526173;}
html[data-theme="light"] .global-search-results{background:#ffffff;border-color:#cbd5e1;}
html[data-theme="light"] .search-empty-state{color:#64748b;}
html[data-theme="light"] .search-result-item{background:#f8fafc;border-color:#d6e0eb;color:#172033;}html[data-theme="light"] .search-result-item:hover{background:#eaf3ff;border-color:#8db9e9;color:#0f172a;}
html[data-theme="light"] .search-result-item small{color:#526173;}
html[data-theme="light"] .expanded-card{background:linear-gradient(135deg,#ffffff,#eef5ff);border-color:#d6e0eb;color:#172033;}html[data-theme="light"] .expanded-card strong{color:#111827;}html[data-theme="light"] .expanded-card small{color:#526173;}
html[data-theme="light"] .side-expand-handle{background:#050608;color:#ff8d8d;border-color:rgba(15,23,42,.22);}
@media(max-height:760px){
  .main-nav a{height:31px!important;min-height:31px!important;font-size:12.2px!important;}
  .nav-section-pill.productivity-pill,.lab-nav-zone .lab-pill{height:34px!important;min-height:34px!important;margin-top:4px!important;margin-bottom:6px!important;}
  .sidebar-head{height:84px!important;}
  .brand-logo{width:42px!important;height:42px!important;}
  .sidebar-footer{gap:6px!important;padding-top:7px!important;}
  .theme-toggle,.logout,.sidebar-utility{height:36px!important;min-height:36px!important;}
}
@media(max-width:900px){
  .side-expand-handle,.expanded-menu-panel{display:none!important;}
}


/* === MOD20 - Rifinitura professionale menu espanso e ricerca === */
:root{--expanded-menu:324px;--menu-gap:12px;}
.sidebar{
  background:#181923!important;
  border-right:1px solid rgba(255,255,255,.08)!important;
  overflow:hidden!important;
}
.sidebar-head{
  height:92px!important;
  min-height:92px!important;
  padding:14px 16px!important;
}
.brand-logo{width:48px!important;height:48px!important;border-radius:12px!important;}
.brand-title{font-size:17px!important;line-height:1.05!important;}
.brand-subtitle{font-size:11px!important;margin-top:4px!important;}
.main-nav{
  flex:0 0 auto!important;
  display:grid!important;
  gap:3px!important;
  padding:10px 0 7px!important;
  min-height:0!important;
  overflow:visible!important;
}
.main-nav a{
  height:36px!important;
  min-height:36px!important;
  padding:0 17px!important;
  gap:12px!important;
  font-size:13.2px!important;
  line-height:1!important;
  letter-spacing:-.015em!important;
  white-space:nowrap!important;
  overflow:visible!important;
}
.main-nav a .nav-text{
  display:block!important;
  min-width:0!important;
  max-width:190px!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.nav-icon{width:26px!important;height:26px!important;}
.nav-icon svg{width:17px!important;height:17px!important;}
.nav-section-pill.productivity-pill,
.lab-nav-zone .lab-pill{
  width:calc(100% - 28px)!important;
  height:40px!important;
  min-height:40px!important;
  margin:7px 14px 8px!important;
  padding:0 14px!important;
  border-radius:20px!important;
  font-size:10px!important;
  letter-spacing:.24em!important;
  background:linear-gradient(135deg,#172234,#0f1522)!important;
  border:1px solid rgba(83,155,230,.28)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 10px 24px rgba(0,0,0,.18)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
.nav-section-pill.productivity-pill .nav-text,
.lab-pill .nav-text{
  max-width:220px!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.lab-nav-zone{
  flex:0 0 auto!important;
  padding:8px 0 8px!important;
  border-top:1px solid rgba(255,255,255,.045)!important;
  background:#181923!important;
}
.lab-pill{margin:0 14px!important;cursor:pointer!important;}
.lab-pill:hover,.lab-pill.active{background:linear-gradient(135deg,#1a2d4b,#101827)!important;border-color:rgba(96,165,250,.45)!important;color:#fff!important;}
.flyout-arrow{color:#a8bdd8!important;}
.sidebar-footer{
  margin-top:auto!important;
  flex:0 0 auto!important;
  padding:10px 12px 13px!important;
  gap:8px!important;
  background:#181923!important;
  border-top:1px solid rgba(255,255,255,.055)!important;
}
.theme-toggle,.logout,.sidebar-utility{
  height:39px!important;
  min-height:39px!important;
  border-radius:11px!important;
  font-size:13px!important;
  background:#20212c!important;
  border-color:rgba(255,255,255,.10)!important;
}
.sidebar-utility .nav-text,.theme-toggle .nav-text,.logout .nav-text{white-space:nowrap!important;}
.side-expand-handle{
  position:fixed!important;
  left:calc(var(--sidebar) - 19px)!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  width:38px!important;
  height:52px!important;
  border-radius:999px!important;
  border:1px solid rgba(96,165,250,.25)!important;
  background:linear-gradient(180deg,#121826,#0a0f19)!important;
  color:#8cc7ff!important;
  z-index:220!important;
  display:grid!important;
  place-items:center!important;
  cursor:pointer!important;
  box-shadow:0 16px 36px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.05)!important;
  transition:left .22s ease, background .18s ease, border-color .18s ease, color .18s ease!important;
}
.side-expand-handle span{
  font-size:24px!important;
  line-height:1!important;
  font-weight:800!important;
  letter-spacing:-.18em!important;
  margin-left:-4px!important;
  color:inherit!important;
}
.side-expand-handle:hover{
  background:linear-gradient(180deg,#172234,#0d1420)!important;
  border-color:rgba(96,165,250,.55)!important;
  color:#dbeafe!important;
}
.menu-panel-open .side-expand-handle{left:calc(var(--sidebar) + var(--expanded-menu) - 19px)!important;}
.menu-panel-open .side-expand-handle span{transform:rotate(180deg)!important;margin-left:4px!important;}
.sidebar-collapsed .side-expand-handle{left:calc(var(--sidebar) - 18px)!important;}
.sidebar-collapsed.menu-panel-open .side-expand-handle{left:calc(var(--sidebar) + var(--expanded-menu) - 18px)!important;}
.expanded-menu-panel{
  position:fixed!important;
  left:var(--sidebar)!important;
  top:0!important;
  width:var(--expanded-menu)!important;
  height:100vh!important;
  z-index:190!important;
  padding:24px 18px 20px!important;
  background:#151722!important;
  border-left:1px solid rgba(255,255,255,.035)!important;
  border-right:1px solid rgba(96,165,250,.14)!important;
  box-shadow:26px 0 68px rgba(0,0,0,.30)!important;
  transform:translateX(-100%)!important;
  opacity:1!important;
  pointer-events:none!important;
  transition:transform .24s cubic-bezier(.2,.8,.2,1)!important;
  overflow:hidden!important;
  display:flex!important;
  flex-direction:column!important;
  gap:14px!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
.menu-panel-open .expanded-menu-panel{transform:translateX(0)!important;pointer-events:auto!important;}
.expanded-user-card{
  border:1px solid rgba(96,165,250,.18)!important;
  border-radius:20px!important;
  background:#111a2a!important;
  padding:15px 16px!important;
  min-height:82px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035)!important;
}
.expanded-user-card span{font-size:10px!important;color:#8cc7ff!important;letter-spacing:.19em!important;font-weight:850!important;}
.expanded-user-card strong{font-size:22px!important;color:#f7fbff!important;line-height:1.1!important;}
.expanded-user-card small{font-size:12.5px!important;color:#a8b4c5!important;font-weight:750!important;}
.global-search-box{display:grid!important;gap:10px!important;min-height:0!important;}
.global-search-input-wrap{position:relative!important;}
.global-search-input-wrap input{
  width:100%!important;
  height:42px!important;
  border-radius:16px!important;
  padding:0 15px 0 39px!important;
  border:1px solid rgba(96,165,250,.18)!important;
  background:#101620!important;
  color:#eaf2ff!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035)!important;
  outline:none!important;
}
.global-search-input-wrap input::placeholder{color:#7f8aa0!important;}
.global-search-input-wrap input:focus{border-color:rgba(96,165,250,.58)!important;box-shadow:0 0 0 3px rgba(37,99,235,.13)!important;}
.search-icon{left:14px!important;font-size:18px!important;color:#8cc7ff!important;}
.global-search-results{
  min-height:154px!important;
  max-height:210px!important;
  overflow:auto!important;
  border-radius:18px!important;
  border:1px solid rgba(148,163,184,.14)!important;
  background:#10131b!important;
  padding:10px!important;
  display:grid!important;
  gap:8px!important;
  align-content:start!important;
}
.search-empty-state{color:#9aa6b9!important;font-size:12.5px!important;line-height:1.38!important;padding:12px!important;}
.search-result-item{
  display:grid!important;
  gap:3px!important;
  padding:10px 11px!important;
  border:1px solid rgba(148,163,184,.13)!important;
  border-radius:14px!important;
  background:#151b26!important;
  color:#dbeafe!important;
}
.search-result-item:hover{background:#172640!important;border-color:rgba(96,165,250,.42)!important;color:#fff!important;}
.search-result-type{font-size:9px!important;font-weight:900!important;letter-spacing:.17em!important;text-transform:uppercase!important;color:#60a5fa!important;}
.search-result-item strong{font-size:13.5px!important;line-height:1.18!important;}
.search-result-item small{font-size:11.8px!important;color:#a7b2c4!important;line-height:1.28!important;}
.expanded-menu-section{display:grid!important;gap:10px!important;margin-top:1px!important;}
.expanded-section-title{font-size:10px!important;font-weight:900!important;letter-spacing:.20em!important;text-transform:uppercase!important;color:#8cc7ff!important;padding-left:2px!important;}
.expanded-card{
  min-height:74px!important;
  border-radius:18px!important;
  border:1px solid rgba(148,163,184,.14)!important;
  background:#111a2a!important;
  padding:13px!important;
  color:#dbeafe!important;
  gap:12px!important;
}
.expanded-card:hover,.expanded-card.active{border-color:rgba(96,165,250,.42)!important;background:#16243c!important;color:#fff!important;}
.expanded-card .nav-icon{width:40px!important;height:40px!important;border-radius:14px!important;background:rgba(37,99,235,.16)!important;color:#7cc7ff!important;}
.expanded-card strong{font-size:15px!important;line-height:1.15!important;color:#fff!important;}
.expanded-card small{font-size:12px!important;line-height:1.25!important;color:#aeb9ca!important;margin-top:4px!important;}
.muted-card{opacity:.72!important;}
.sidebar-collapsed .main-nav a .nav-text{display:none!important;}
.sidebar-collapsed .nav-section-pill.productivity-pill,.sidebar-collapsed .lab-pill{width:42px!important;height:42px!important;min-height:42px!important;margin-left:17px!important;margin-right:17px!important;padding:0!important;justify-content:center!important;}
.sidebar-collapsed .lab-nav-zone{padding:8px 0!important;}
.sidebar-collapsed .lab-pill .nav-text,.sidebar-collapsed .lab-pill .flyout-arrow,.sidebar-collapsed .productivity-pill .nav-text{display:none!important;}
html[data-theme="light"] .sidebar,
html[data-theme="light"] .lab-nav-zone,
html[data-theme="light"] .sidebar-footer{background:#161922!important;color:#eef3fb!important;}
html[data-theme="light"] .expanded-menu-panel{background:#f1f5f9!important;border-left-color:#d6dee8!important;border-right-color:#c6d3e1!important;box-shadow:26px 0 68px rgba(15,23,42,.16)!important;}
html[data-theme="light"] .expanded-user-card{background:#ffffff!important;border-color:#c9d8e9!important;}
html[data-theme="light"] .expanded-user-card strong{color:#111827!important;}html[data-theme="light"] .expanded-user-card small{color:#526173!important;}
html[data-theme="light"] .global-search-input-wrap input{background:#ffffff!important;border-color:#b8c7d8!important;color:#111827!important;}
html[data-theme="light"] .global-search-input-wrap input::placeholder{color:#6b7280!important;}
html[data-theme="light"] .global-search-results{background:#ffffff!important;border-color:#cbd5e1!important;}
html[data-theme="light"] .search-empty-state{color:#64748b!important;}
html[data-theme="light"] .search-result-item{background:#f8fafc!important;border-color:#d6e0eb!important;color:#172033!important;}
html[data-theme="light"] .search-result-item:hover{background:#eaf3ff!important;border-color:#8db9e9!important;color:#0f172a!important;}
html[data-theme="light"] .search-result-item small{color:#526173!important;}
html[data-theme="light"] .expanded-card{background:#ffffff!important;border-color:#d6e0eb!important;color:#172033!important;}
html[data-theme="light"] .expanded-card:hover,html[data-theme="light"] .expanded-card.active{background:#eaf3ff!important;border-color:#8db9e9!important;}
html[data-theme="light"] .expanded-card strong{color:#111827!important;}html[data-theme="light"] .expanded-card small{color:#526173!important;}
html[data-theme="light"] .side-expand-handle{background:linear-gradient(180deg,#f8fafc,#e8eef6)!important;color:#1d5fa7!important;border-color:#b9c9da!important;box-shadow:0 14px 34px rgba(15,23,42,.18)!important;}
html[data-theme="light"] .nav-section-pill.productivity-pill,html[data-theme="light"] .lab-nav-zone .lab-pill{background:linear-gradient(135deg,#eef6ff,#ffffff)!important;border-color:#cbdced!important;color:#23425f!important;}
@media(max-height:760px){
  .sidebar-head{height:82px!important;min-height:82px!important;padding:10px 14px!important;}
  .brand-logo{width:42px!important;height:42px!important;}
  .brand-title{font-size:16px!important;}.brand-subtitle{font-size:10.5px!important;}
  .main-nav{padding-top:8px!important;gap:2px!important;}
  .main-nav a{height:32px!important;min-height:32px!important;font-size:12.3px!important;}
  .nav-section-pill.productivity-pill,.lab-nav-zone .lab-pill{height:36px!important;min-height:36px!important;margin-top:5px!important;margin-bottom:6px!important;}
  .theme-toggle,.logout,.sidebar-utility{height:36px!important;min-height:36px!important;font-size:12.2px!important;}
  .sidebar-footer{gap:6px!important;padding-top:8px!important;padding-bottom:10px!important;}
}
@media(max-width:900px){.side-expand-handle,.expanded-menu-panel{display:none!important;}}


/* === MOD21 - Correzione definitiva menu laterale: stato chiuso pulito, pannello coerente === */
:root{--sidebar:300px;--expanded-menu:334px;}
.app-shell{grid-template-columns:var(--sidebar) minmax(0,1fr)!important;}
.sidebar{z-index:210!important;background:#181923!important;overflow:hidden!important;}
.sidebar-head{height:88px!important;min-height:88px!important;padding:13px 16px!important;}
.brand-logo{width:46px!important;height:46px!important;border-radius:12px!important;}
.brand-title{font-size:17px!important;line-height:1.08!important;}
.brand-subtitle{font-size:11px!important;}
.main-nav{flex:1 1 auto!important;min-height:0!important;overflow:hidden!important;padding:8px 0 6px!important;gap:2px!important;}
.main-nav a{height:34px!important;min-height:34px!important;padding:0 16px!important;font-size:12.9px!important;gap:11px!important;}
.main-nav a .nav-text{max-width:220px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;}
.nav-icon{width:25px!important;height:25px!important;}
.nav-icon svg{width:17px!important;height:17px!important;}
.nav-section-pill.productivity-pill,.lab-nav-zone .lab-pill{
  width:calc(100% - 28px)!important;height:38px!important;min-height:38px!important;margin:6px 14px 7px!important;padding:0 14px!important;border-radius:19px!important;
  font-size:9.9px!important;letter-spacing:.22em!important;box-sizing:border-box!important;
}
.nav-section-pill.productivity-pill .nav-text,.lab-pill .nav-text{max-width:none!important;overflow:visible!important;text-overflow:clip!important;white-space:nowrap!important;}
.lab-nav-zone{flex:0 0 auto!important;padding:7px 0 7px!important;background:#181923!important;border-top:1px solid rgba(255,255,255,.045)!important;}
.lab-pill{margin:0 14px!important;}
.sidebar-footer{flex:0 0 auto!important;margin-top:0!important;padding:9px 12px 12px!important;gap:7px!important;background:#181923!important;border-top:1px solid rgba(255,255,255,.055)!important;}
.theme-toggle,.logout,.sidebar-utility{height:38px!important;min-height:38px!important;border-radius:11px!important;font-size:12.7px!important;background:#20212c!important;border-color:rgba(255,255,255,.10)!important;}

/* Il pannello esteso deve essere invisibile quando chiuso, non dietro al menu. */
.expanded-menu-panel{
  position:fixed!important;left:var(--sidebar)!important;top:0!important;width:var(--expanded-menu)!important;height:100vh!important;z-index:190!important;
  padding:22px 18px 20px!important;background:#151722!important;border-left:1px solid rgba(255,255,255,.035)!important;border-right:1px solid rgba(96,165,250,.14)!important;
  box-shadow:26px 0 68px rgba(0,0,0,.30)!important;transform:translateX(-14px)!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;
  transition:transform .22s cubic-bezier(.2,.8,.2,1), opacity .16s ease, visibility 0s linear .22s!important;overflow:hidden!important;display:flex!important;flex-direction:column!important;gap:13px!important;
  backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
}
.menu-panel-open .expanded-menu-panel{transform:translateX(0)!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important;transition:transform .22s cubic-bezier(.2,.8,.2,1), opacity .16s ease, visibility 0s!important;}

/* Pulsante centrale sobrio e coerente con il tema. */
.side-expand-handle{
  position:fixed!important;left:calc(var(--sidebar) - 17px)!important;top:50%!important;transform:translateY(-50%)!important;width:34px!important;height:50px!important;border-radius:999px!important;
  border:1px solid rgba(96,165,250,.32)!important;background:linear-gradient(180deg,#111827,#0b111d)!important;color:#8cc7ff!important;z-index:230!important;display:grid!important;place-items:center!important;
  box-shadow:0 14px 34px rgba(0,0,0,.32), inset 0 1px 0 rgba(255,255,255,.05)!important;cursor:pointer!important;transition:left .22s ease,background .18s ease,border-color .18s ease,color .18s ease!important;
}
.side-expand-handle span{font-size:22px!important;line-height:1!important;font-weight:800!important;letter-spacing:-.17em!important;margin-left:-3px!important;color:inherit!important;}
.side-expand-handle:hover{background:linear-gradient(180deg,#16243a,#0d1624)!important;border-color:rgba(96,165,250,.58)!important;color:#dbeafe!important;}
.menu-panel-open .side-expand-handle{left:calc(var(--sidebar) + var(--expanded-menu) - 17px)!important;}
.menu-panel-open .side-expand-handle span{transform:rotate(180deg)!important;margin-left:3px!important;}
.sidebar-collapsed{--sidebar:76px!important;}
.sidebar-collapsed .side-expand-handle{left:calc(var(--sidebar) - 16px)!important;}
.sidebar-collapsed.menu-panel-open .side-expand-handle{left:calc(var(--sidebar) + var(--expanded-menu) - 16px)!important;}
.sidebar-collapsed .nav-section-pill.productivity-pill,.sidebar-collapsed .lab-pill{width:42px!important;height:42px!important;min-height:42px!important;margin-left:17px!important;margin-right:17px!important;padding:0!important;justify-content:center!important;}
.sidebar-collapsed .nav-section-pill.productivity-pill .nav-text,.sidebar-collapsed .lab-pill .nav-text,.sidebar-collapsed .lab-pill .flyout-arrow{display:none!important;}

/* Ricerca coerente in entrambe le modalità. */
.expanded-user-card{border-radius:18px!important;min-height:78px!important;padding:14px 16px!important;}
.global-search-input-wrap input{background:#101620!important;border:1px solid rgba(96,165,250,.22)!important;color:#eaf2ff!important;border-radius:15px!important;}
.global-search-input-wrap input::placeholder{color:#8794a8!important;}
.global-search-results{background:#10131b!important;border:1px solid rgba(148,163,184,.16)!important;border-radius:17px!important;min-height:150px!important;max-height:205px!important;}
.expanded-card{min-height:72px!important;border-radius:17px!important;}

html[data-theme="light"] .expanded-menu-panel{background:#f1f5f9!important;border-left-color:#d6dee8!important;border-right-color:#c6d3e1!important;box-shadow:26px 0 68px rgba(15,23,42,.16)!important;}
html[data-theme="light"] .global-search-input-wrap input{background:#ffffff!important;color:#111827!important;border-color:#b8c7d8!important;}
html[data-theme="light"] .global-search-results{background:#ffffff!important;border-color:#cbd5e1!important;}
html[data-theme="light"] .side-expand-handle{background:linear-gradient(180deg,#f8fafc,#e8eef6)!important;color:#1d5fa7!important;border-color:#b9c9da!important;box-shadow:0 14px 34px rgba(15,23,42,.18)!important;}
html[data-theme="light"] .sidebar,html[data-theme="light"] .lab-nav-zone,html[data-theme="light"] .sidebar-footer{background:#161922!important;}
html[data-theme="light"] .nav-section-pill.productivity-pill,html[data-theme="light"] .lab-nav-zone .lab-pill{background:linear-gradient(135deg,#eef6ff,#ffffff)!important;border-color:#cbdced!important;color:#23425f!important;}

@media(max-height:760px){
  .sidebar-head{height:78px!important;min-height:78px!important;padding:9px 14px!important;}
  .brand-logo{width:40px!important;height:40px!important;}.brand-title{font-size:15.5px!important;}.brand-subtitle{font-size:10.2px!important;}
  .main-nav{padding-top:6px!important;gap:1px!important;}.main-nav a{height:30px!important;min-height:30px!important;font-size:12px!important;}
  .nav-section-pill.productivity-pill,.lab-nav-zone .lab-pill{height:34px!important;min-height:34px!important;margin-top:4px!important;margin-bottom:5px!important;}
  .theme-toggle,.logout,.sidebar-utility{height:35px!important;min-height:35px!important;font-size:12px!important;}.sidebar-footer{gap:5px!important;padding-top:7px!important;padding-bottom:9px!important;}
}
@media(max-width:900px){.side-expand-handle,.expanded-menu-panel{display:none!important;}}

/* MOD22 - UX, ruoli personalizzati, notifiche e calendario */
.admin-alert-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));}
.admin-alert-card.lab-due{border-color:rgba(245,158,11,.38);background:linear-gradient(135deg,rgba(245,158,11,.15),rgba(15,23,42,.92));}
.admin-alert-card.lab-expired{border-color:rgba(239,68,68,.42);background:linear-gradient(135deg,rgba(239,68,68,.16),rgba(15,23,42,.94));}
[data-theme="light"] .admin-alert-card.lab-due{background:linear-gradient(135deg,#fff7ed,#ffffff);border-color:#fdba74;}
[data-theme="light"] .admin-alert-card.lab-expired{background:linear-gradient(135deg,#fef2f2,#ffffff);border-color:#fca5a5;}

.search-result-group{display:flex;flex-direction:column;gap:8px;margin-bottom:12px;}
.search-group-title{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);font-weight:900;margin:2px 0 0 2px;}
.search-result-group + .search-result-group{padding-top:10px;border-top:1px solid var(--border);}

.role-matrix-wrap{overflow:auto;}
.role-matrix td,.role-matrix th{white-space:normal;}
.custom-role-form,.custom-role-card form{display:flex;flex-direction:column;gap:18px;}
.role-form-top{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
.permission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
.permission-grid.compact{gap:12px;}
.permission-box{background:var(--surface2);border:1px solid var(--border);border-radius:18px;padding:16px;}
.permission-box h3{margin:0 0 12px;color:var(--text);font-size:15px;}
.permission-check{display:flex!important;align-items:center;gap:10px;margin:10px 0;color:var(--text);font-size:13.5px;}
.permission-check input{width:16px;height:16px;accent-color:var(--accent);}
.custom-role-list{display:grid;gap:16px;}
.custom-role-card{background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:18px;}
.role-delete-form{margin-top:10px;}

.notification-row{position:relative;overflow:hidden;}
.notification-row:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:rgba(59,130,246,.7);}
.notification-row.priority-warning:before{background:#f59e0b;}
.notification-row.priority-danger:before{background:#ef4444;}
.notification-row.priority-success:before{background:#22c55e;}
.notification-kind-chip{display:inline-flex;align-items:center;width:max-content;padding:4px 9px;border-radius:999px;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;margin-bottom:8px;background:rgba(59,130,246,.16);color:#93c5fd;border:1px solid rgba(59,130,246,.28);}
.notification-kind-chip.priority-warning{background:rgba(245,158,11,.16);color:#fbbf24;border-color:rgba(245,158,11,.32);}
.notification-kind-chip.priority-danger{background:rgba(239,68,68,.16);color:#fca5a5;border-color:rgba(239,68,68,.34);}
.notification-kind-chip.priority-success{background:rgba(34,197,94,.16);color:#86efac;border-color:rgba(34,197,94,.32);}
[data-theme="light"] .notification-kind-chip{color:#1d4ed8;background:#dbeafe;border-color:#93c5fd;}
[data-theme="light"] .notification-kind-chip.priority-warning{color:#92400e;background:#fef3c7;border-color:#fcd34d;}
[data-theme="light"] .notification-kind-chip.priority-danger{color:#991b1b;background:#fee2e2;border-color:#fca5a5;}
[data-theme="light"] .notification-kind-chip.priority-success{color:#166534;background:#dcfce7;border-color:#86efac;}

.relation-detail-card.expired,.mini-relation.expired{border-color:rgba(239,68,68,.6)!important;background:rgba(239,68,68,.13)!important;}
.relation-status-chip.expired,.month-chip.expired,.legend-dot.expired{background:#ef4444!important;color:white!important;}
.inline-edit-details{width:100%;}
.inline-edit-details summary{cursor:pointer;list-style:none;}
.inline-edit-details summary::-webkit-details-marker{display:none;}
.relation-edit-form{margin-top:12px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:14px;border-radius:16px;border:1px solid var(--border);background:var(--surface2);}
.relation-edit-form label{display:flex;flex-direction:column;gap:6px;}
.relation-edit-form label span{font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);}
.relation-edit-form textarea{min-height:70px;padding:12px 14px;}
.relation-edit-form .btn{align-self:end;}
.small-btn{padding:9px 12px!important;font-size:13px!important;}

.phase-group p{font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);}
.phase-group label span{font-weight:800;}

@media (max-width: 980px){.role-form-top,.permission-grid,.relation-edit-form{grid-template-columns:1fr;}}

/* Piano uscite settimanali */
.weekly-plan-header{align-items:center!important;}
.weekly-kpi-strip{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;}
.weekly-toolbar-panel{padding:16px 18px;}
.weekly-year-row{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:16px;}
.weekly-year-row h2{margin:0;font-size:20px;}
.weekly-year-tabs,.weekly-month-tabs{display:flex;gap:8px;flex-wrap:wrap;}
.weekly-year-tab,.weekly-month-tab{border:1px solid var(--line2);background:var(--surface2);color:var(--muted);border-radius:999px;min-height:36px;padding:0 14px;display:inline-flex;align-items:center;justify-content:center;font-weight:850;letter-spacing:.02em;transition:.14s ease;}
.weekly-year-tab:hover,.weekly-month-tab:hover{border-color:rgba(96,165,250,.45);color:#fff;background:rgba(37,99,235,.18);}
.weekly-year-tab.active,.weekly-month-tab.active{background:linear-gradient(135deg,#1d7df2,#11b37b);border-color:transparent;color:#fff;box-shadow:0 8px 22px rgba(17,179,123,.18);}
.weekly-month-tabs{border-top:1px solid var(--line);padding-top:14px;}
.weekly-month-tab{min-height:40px;border-radius:14px;min-width:132px;}
.weekly-sheet{display:grid;gap:16px;}
.weekly-sheet-title{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:18px 20px;display:flex;align-items:flex-end;justify-content:space-between;gap:18px;}
.weekly-sheet-title h2{margin:0;font-size:24px;letter-spacing:-.03em;}
.weekly-day-section{background:var(--surface);border:1px solid var(--line);border-radius:20px;overflow:hidden;box-shadow:var(--shadow);scroll-margin-top:18px;}
.weekly-day-header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 18px;background:linear-gradient(135deg,rgba(8,171,136,.96),rgba(8,139,178,.92));border-bottom:1px solid rgba(255,255,255,.12);color:#fff;}
.weekly-day-header h2{margin:2px 0 0;font-size:22px;line-height:1.05;font-weight:900;letter-spacing:.02em;text-transform:uppercase;}
.weekly-day-tag{display:inline-flex;align-items:center;height:22px;border-radius:999px;padding:0 9px;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.24);font-size:10px;font-weight:900;letter-spacing:.18em;}
.weekly-day-stats{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;}
.weekly-day-stats span{height:30px;border-radius:999px;padding:0 11px;background:rgba(0,0,0,.16);border:1px solid rgba(255,255,255,.20);display:inline-flex;align-items:center;font-weight:850;font-size:12px;}
.weekly-table-shell{padding:0;background:linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,.01));overflow-x:auto;}
.weekly-grid{display:grid;grid-template-columns:minmax(340px,1.4fr) minmax(250px,.9fr) minmax(210px,.72fr) minmax(220px,.65fr) minmax(142px,.42fr);min-width:1180px;}
.weekly-grid-head{position:sticky;top:0;z-index:2;background:#121820;border-bottom:1px solid var(--line2);}
.weekly-grid-head div{min-height:46px;display:flex;align-items:center;padding:0 12px;border-right:1px solid var(--line);font-size:12px;font-weight:900;letter-spacing:.11em;text-transform:uppercase;color:#c8d7ea;}
.weekly-row-grid{border-bottom:1px solid var(--line);background:rgba(255,255,255,.012);}
.weekly-row-grid:nth-of-type(even){background:rgba(255,255,255,.025);}
.weekly-cell{padding:10px;border-right:1px solid var(--line);min-height:128px;display:flex;flex-direction:column;gap:8px;}
.weekly-cell label{gap:6px;}
.weekly-cell input,.weekly-cell textarea,.weekly-add-form input,.weekly-add-form textarea{width:100%;border-radius:10px;background:rgba(0,0,0,.18);border-color:#303742;}
.weekly-cell textarea,.weekly-add-form textarea{min-height:84px;resize:vertical;padding:10px 12px;line-height:1.35;}
.acceptance-cell input{font-weight:820;color:#f8fbff;}
.confirmation-cell{background:rgba(53,201,130,.035);}
.confirmation-list{display:flex;align-items:flex-start;gap:7px;flex-wrap:wrap;}
.confirmation-chip,.confirmation-chip-form button{border:1px solid rgba(53,201,130,.42);background:rgba(53,201,130,.12);color:#bff7d8;border-radius:999px;min-height:30px;padding:0 9px;display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:850;}
.confirmation-chip b,.confirmation-chip-form b{color:#35c982;font-size:14px;}
.confirmation-chip-form{display:inline-flex;margin:0;}
.confirmation-chip-form button{cursor:pointer;}
.confirmation-chip-form button:hover{background:rgba(255,92,111,.14);border-color:rgba(255,92,111,.45);color:#ffd0d6;}
.confirmation-empty{color:var(--muted);font-size:12px;font-weight:700;border:1px dashed var(--line2);border-radius:12px;padding:8px 10px;background:rgba(255,255,255,.02);}
.weekly-actions-cell{align-items:stretch;}
.weekly-actions-cell button{width:100%;}
.weekly-confirm-button{background:#188f62!important;border-color:rgba(53,201,130,.45)!important;color:#fff!important;gap:8px;}
.weekly-confirm-button span{font-size:17px;line-height:1;}
.weekly-confirm-button.confirmed{background:rgba(53,201,130,.12)!important;color:#bff7d8!important;border-color:rgba(53,201,130,.45)!important;}
.ghost-danger{min-height:38px;border-radius:8px;border:1px solid rgba(255,92,111,.42);background:rgba(255,92,111,.10);color:#ff9aa8;display:inline-flex;align-items:center;justify-content:center;font-weight:800;cursor:pointer;padding:0 12px;}
.ghost-danger:hover{background:rgba(255,92,111,.18);color:#ffd2d8;}
.weekly-lock-note{display:block;border:1px dashed var(--line2);border-radius:10px;padding:8px;color:var(--muted);font-size:11px;line-height:1.25;background:rgba(255,255,255,.02);}
.weekly-row-meta{display:block;color:var(--soft);text-align:center;font-size:11px;margin-top:2px;}
.weekly-empty-day{min-width:1180px;border-bottom:1px solid var(--line);padding:18px;color:var(--muted);font-weight:750;background:rgba(255,255,255,.018);}
.weekly-add-row{min-width:1180px;background:rgba(36,150,255,.035);}
.weekly-add-row summary{list-style:none;cursor:pointer;padding:13px 16px;color:#9bd8ff;font-weight:900;border-top:1px solid var(--line);}
.weekly-add-row summary::-webkit-details-marker{display:none;}
.weekly-add-form{display:grid;grid-template-columns:minmax(190px,.75fr) minmax(260px,1.1fr) minmax(220px,.85fr) minmax(190px,.75fr) auto;gap:10px;align-items:end;padding:0 14px 14px;}
.weekly-add-form button{height:40px;align-self:end;}

html[data-theme="light"] .weekly-sheet-title,html[data-theme="light"] .weekly-day-section{background:#ffffff;border-color:#d7e0ea;}
html[data-theme="light"] .weekly-grid-head{background:#eef4fb;border-color:#d0dae6;}
html[data-theme="light"] .weekly-grid-head div{color:#324255;border-right-color:#d8e2ed;}
html[data-theme="light"] .weekly-row-grid{background:#ffffff;border-bottom-color:#e0e7ef;}
html[data-theme="light"] .weekly-row-grid:nth-of-type(even){background:#f8fbff;}
html[data-theme="light"] .weekly-cell{border-right-color:#e0e7ef;}
html[data-theme="light"] .weekly-cell input,html[data-theme="light"] .weekly-cell textarea,html[data-theme="light"] .weekly-add-form input,html[data-theme="light"] .weekly-add-form textarea{background:#ffffff;border-color:#cfd9e6;color:#111827;}
html[data-theme="light"] .confirmation-cell{background:#f3fff8;}
html[data-theme="light"] .confirmation-chip,html[data-theme="light"] .confirmation-chip-form button{background:#e9fbf2;color:#146c48;border-color:#98dfbd;}
html[data-theme="light"] .weekly-empty-day,html[data-theme="light"] .weekly-add-row{background:#f8fbff;}

@media(max-width:1200px){.weekly-year-row,.weekly-sheet-title{display:grid;}.weekly-year-tabs{justify-content:flex-start}.weekly-month-tab{min-width:118px}.weekly-add-form{grid-template-columns:1fr 1fr}.weekly-add-form button{grid-column:1/-1}}
@media(max-width:760px){.weekly-kpi-strip{justify-content:flex-start}.weekly-day-header{display:grid}.weekly-day-stats{justify-content:flex-start}.weekly-month-tab{min-width:100%;}.weekly-year-tab{flex:1 1 80px}.weekly-add-form{grid-template-columns:1fr}}

/* v0.18.6 - Correzioni layout Piano uscite settimanali */
.weekly-day-header{padding:18px 22px;align-items:center;}
.weekly-day-title h2{margin:0;font-size:24px;line-height:1.08;font-weight:950;letter-spacing:.015em;text-transform:uppercase;color:#fff;text-shadow:0 1px 0 rgba(0,0,0,.18);}
.weekly-table-shell{overflow-x:visible;width:100%;}
.weekly-grid{display:grid;grid-template-columns:minmax(250px,32%) minmax(190px,24%) minmax(170px,18%) minmax(180px,16%) minmax(112px,10%);width:100%;min-width:0;}
.weekly-grid-head div{min-width:0;white-space:normal;overflow-wrap:anywhere;line-height:1.15;min-height:50px;padding:0 11px;font-size:11.5px;letter-spacing:.08em;}
.weekly-row-grid{width:100%;}
.weekly-cell{min-width:0;padding:9px;}
.weekly-cell input,.weekly-cell textarea,.weekly-add-form input,.weekly-add-form textarea{min-width:0;box-sizing:border-box;font-size:13px;}
.weekly-cell textarea,.weekly-add-form textarea{min-height:76px;}
.confirmation-cell{overflow:visible;}
.confirmation-list{min-width:0;}
.confirmation-chip,.confirmation-chip-form button{max-width:100%;white-space:normal;line-height:1.15;padding:6px 9px;min-height:30px;text-align:left;}
.weekly-actions-cell{gap:7px;}
.weekly-actions-cell button{min-height:36px;padding-left:8px;padding-right:8px;font-size:12px;}
.weekly-empty-day{min-width:0;width:100%;box-sizing:border-box;}
.weekly-add-row{min-width:0;width:100%;box-sizing:border-box;}
.weekly-add-row summary{padding:14px 18px;}
.weekly-add-form{grid-template-columns:minmax(130px,.85fr) minmax(220px,1.35fr) minmax(180px,1fr) minmax(150px,.85fr) minmax(86px,auto);gap:10px;padding:0 14px 14px;align-items:end;width:100%;box-sizing:border-box;}
.weekly-add-form label{min-width:0;}
.weekly-add-form button{height:40px;min-width:86px;}
@media(max-width:1120px){.weekly-table-shell{overflow-x:auto}.weekly-grid{min-width:980px}.weekly-empty-day,.weekly-add-row{min-width:980px}.weekly-add-form{min-width:0;grid-template-columns:1fr 1fr}.weekly-add-form button{grid-column:1/-1}.weekly-day-title h2{font-size:21px}}
@media(max-width:760px){.weekly-grid{min-width:920px}.weekly-empty-day,.weekly-add-row{min-width:920px}.weekly-add-form{grid-template-columns:1fr}.weekly-add-form button{grid-column:auto}.weekly-day-title h2{font-size:19px}}

/* MOD23 - Piano uscite settimanali: tema chiaro fisso + impaginazione tipo Excel */
body.weekly-plan-light-page,
body.weekly-plan-light-page .content,
body.weekly-plan-light-page .app-shell{
  background:#f3f6fa!important;
  color:#111827!important;
}
body.weekly-plan-light-page .page-header,
body.weekly-plan-light-page .panel,
body.weekly-plan-light-page .weekly-light-card,
body.weekly-plan-light-page .weekly-sheet-title,
body.weekly-plan-light-page .weekly-day-section{
  background:#ffffff!important;
  color:#111827!important;
  border-color:#cbd5e1!important;
  box-shadow:0 14px 38px rgba(15,23,42,.10)!important;
}
body.weekly-plan-light-page .muted{color:#475569!important;}
body.weekly-plan-light-page .eyebrow{color:#0f6e90!important;}
body.weekly-plan-light-page .weekly-plan-light-hero{
  background:linear-gradient(135deg,#ffffff,#edf7ff)!important;
}
body.weekly-plan-light-page .weekly-year-tab,
body.weekly-plan-light-page .weekly-month-tab,
body.weekly-plan-light-page .subtle-pill{
  background:#f8fafc!important;
  border-color:#cbd5e1!important;
  color:#1e293b!important;
}
body.weekly-plan-light-page .weekly-year-tab:hover,
body.weekly-plan-light-page .weekly-month-tab:hover{
  background:#e0f2fe!important;
  border-color:#38bdf8!important;
  color:#0f172a!important;
}
body.weekly-plan-light-page .weekly-year-tab.active,
body.weekly-plan-light-page .weekly-month-tab.active{
  background:linear-gradient(135deg,#0891b2,#10b981)!important;
  color:#ffffff!important;
  border-color:transparent!important;
  box-shadow:0 8px 20px rgba(8,145,178,.24)!important;
}
body.weekly-plan-light-page .weekly-day-light-header{
  background:linear-gradient(135deg,#0d9488,#0284c7)!important;
  border-bottom:1px solid #0369a1!important;
  color:#ffffff!important;
}
body.weekly-plan-light-page .weekly-day-title h2{
  color:#ffffff!important;
  text-shadow:0 1px 1px rgba(0,0,0,.24)!important;
  font-size:25px!important;
  letter-spacing:.02em!important;
}
body.weekly-plan-light-page .weekly-day-stats span{
  background:rgba(15,23,42,.22)!important;
  border-color:rgba(255,255,255,.36)!important;
  color:#ffffff!important;
}
body.weekly-plan-light-page .weekly-excel-table-shell{
  overflow-x:visible!important;
  background:#ffffff!important;
}
body.weekly-plan-light-page .weekly-grid{
  display:grid!important;
  grid-template-columns:minmax(120px,13%) minmax(250px,25%) minmax(220px,21%) minmax(180px,16%) minmax(190px,15%) minmax(120px,10%)!important;
  width:100%!important;
  min-width:0!important;
}
body.weekly-plan-light-page .weekly-excel-grid-head{
  background:#dbeafe!important;
  border-top:1px solid #bfd3ed!important;
  border-bottom:1px solid #94a3b8!important;
}
body.weekly-plan-light-page .weekly-excel-grid-head div{
  color:#0f172a!important;
  border-right:1px solid #b9c7d8!important;
  min-height:44px!important;
  padding:9px 10px!important;
  font-size:12px!important;
  font-weight:950!important;
  letter-spacing:.10em!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
}
body.weekly-plan-light-page .weekly-excel-row{
  background:#ffffff!important;
  border-bottom:1px solid #cbd5e1!important;
}
body.weekly-plan-light-page .weekly-excel-row.weekly-row-alt{
  background:#f1f7ff!important;
}
body.weekly-plan-light-page .weekly-excel-row:hover{
  background:#eaf4ff!important;
}
body.weekly-plan-light-page .weekly-excel-cell{
  min-height:108px!important;
  padding:8px!important;
  border-right:1px solid #cbd5e1!important;
  border-bottom:0!important;
  display:flex!important;
  flex-direction:column!important;
  gap:6px!important;
  min-width:0!important;
  background:transparent!important;
}
body.weekly-plan-light-page .weekly-excel-cell label{
  display:flex!important;
  flex-direction:column!important;
  gap:6px!important;
  margin:0!important;
  min-width:0!important;
}
body.weekly-plan-light-page .weekly-excel-cell label span,
body.weekly-plan-light-page .cell-title-small,
body.weekly-plan-light-page .cell-label-row span{
  color:#334155!important;
  font-size:10.5px!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
}
body.weekly-plan-light-page .weekly-cell input,
body.weekly-plan-light-page .weekly-cell textarea,
body.weekly-plan-light-page .weekly-add-form input,
body.weekly-plan-light-page .weekly-add-form textarea{
  background:#ffffff!important;
  border:1px solid #aebdca!important;
  color:#0f172a!important;
  border-radius:4px!important;
  box-shadow:none!important;
  min-width:0!important;
  width:100%!important;
  font-size:13px!important;
  line-height:1.28!important;
}
body.weekly-plan-light-page .weekly-cell input:focus,
body.weekly-plan-light-page .weekly-cell textarea:focus,
body.weekly-plan-light-page .weekly-add-form input:focus,
body.weekly-plan-light-page .weekly-add-form textarea:focus{
  outline:2px solid #38bdf8!important;
  border-color:#0284c7!important;
}
body.weekly-plan-light-page .weekly-cell textarea,
body.weekly-plan-light-page .weekly-add-form textarea{
  min-height:78px!important;
  resize:vertical!important;
  overflow:auto!important;
  white-space:pre-wrap!important;
  word-break:break-word!important;
}
body.weekly-plan-light-page .client-cell input{min-height:38px!important;}
body.weekly-plan-light-page .cell-label-row{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:8px!important;
}
body.weekly-plan-light-page .cell-highlight-toggle{
  min-height:24px!important;
  padding:0 8px!important;
  border-radius:999px!important;
  border:1px solid #ca8a04!important;
  background:#fef3c7!important;
  color:#7c2d12!important;
  font-size:10px!important;
  font-weight:950!important;
  letter-spacing:.06em!important;
  text-transform:uppercase!important;
  cursor:pointer!important;
}
body.weekly-plan-light-page .cell-highlight-toggle.active{
  background:#ca8a04!important;
  color:#ffffff!important;
  border-color:#92400e!important;
}
body.weekly-plan-light-page .acceptance-cell.acceptance-highlighted{
  background:#fff45c!important;
  box-shadow:inset 0 0 0 2px #eab308!important;
}
body.weekly-plan-light-page .acceptance-cell.acceptance-highlighted textarea{
  background:#fff45c!important;
  border-color:#ca8a04!important;
  color:#111827!important;
}
body.weekly-plan-light-page .confirmation-list{
  align-content:flex-start!important;
  gap:6px!important;
}
body.weekly-plan-light-page .confirmation-chip{
  background:#dcfce7!important;
  border:1px solid #86efac!important;
  color:#14532d!important;
  font-weight:850!important;
}
body.weekly-plan-light-page .confirmation-chip.removable:hover{
  background:#bbf7d0!important;
  color:#052e16!important;
}
body.weekly-plan-light-page .confirmation-empty,
body.weekly-plan-light-page .weekly-lock-note,
body.weekly-plan-light-page .weekly-row-meta{
  color:#64748b!important;
}
body.weekly-plan-light-page .weekly-empty-day{
  background:#f8fafc!important;
  color:#475569!important;
  border-bottom:1px solid #cbd5e1!important;
  min-width:0!important;
}
body.weekly-plan-light-page .weekly-excel-add-row{
  background:#eff6ff!important;
  border-top:1px solid #bfdbfe!important;
  min-width:0!important;
}
body.weekly-plan-light-page .weekly-excel-add-row summary{
  color:#075985!important;
  border-top:1px solid #bfdbfe!important;
  padding:13px 16px!important;
}
body.weekly-plan-light-page .weekly-add-grid{
  background:#eff6ff!important;
  padding:0!important;
  gap:0!important;
  align-items:stretch!important;
}
body.weekly-plan-light-page .weekly-add-grid .weekly-excel-cell{
  background:#f8fbff!important;
  border-top:1px solid #bfdbfe!important;
}
body.weekly-plan-light-page .weekly-actions-cell{
  gap:6px!important;
  align-items:stretch!important;
}
body.weekly-plan-light-page .weekly-actions-cell button{
  width:100%!important;
  min-height:34px!important;
  padding-left:8px!important;
  padding-right:8px!important;
}
body.weekly-plan-light-page .weekly-confirm-button{
  background:#16a34a!important;
  border-color:#15803d!important;
  color:#ffffff!important;
}
body.weekly-plan-light-page .weekly-confirm-button.confirmed{
  background:#dcfce7!important;
  border-color:#22c55e!important;
  color:#14532d!important;
}
body.weekly-plan-light-page .weekly-delete-button{
  background:#fff1f2!important;
  color:#be123c!important;
  border-color:#fecdd3!important;
}
@media(max-width:1220px){
  body.weekly-plan-light-page .weekly-excel-table-shell{overflow-x:auto!important;}
  body.weekly-plan-light-page .weekly-grid{min-width:1120px!important;}
  body.weekly-plan-light-page .weekly-empty-day,
  body.weekly-plan-light-page .weekly-excel-add-row{min-width:1120px!important;}
}
@media(max-width:760px){
  body.weekly-plan-light-page .weekly-day-title h2{font-size:20px!important;}
  body.weekly-plan-light-page .weekly-grid{min-width:1060px!important;}
  body.weekly-plan-light-page .weekly-empty-day,
  body.weekly-plan-light-page .weekly-excel-add-row{min-width:1060px!important;}
}

/* MOD23 - Calendario relazioni: modalità chiara ad alto contrasto */
html[data-theme="light"] body.lab-reports-page .relation-day-panel,
html[data-theme="light"] body.lab-reports-page .calendar-month-card,
html[data-theme="light"] body.lab-reports-page .relation-detail-card,
html[data-theme="light"] body.lab-reports-page .relation-insert-box,
html[data-theme="light"] body.lab-reports-page .relation-legend span,
html[data-theme="light"] body.lab-reports-page .calendar-day-cell{
  background:#ffffff!important;
  color:#0f172a!important;
  border-color:#cbd5e1!important;
}
html[data-theme="light"] body.lab-reports-page .calendar-day-cell:hover{
  background:#eaf4ff!important;
  border-color:#38bdf8!important;
}
html[data-theme="light"] body.lab-reports-page .calendar-day-cell.selected{
  outline:3px solid #0284c7!important;
  background:#e0f2fe!important;
}
html[data-theme="light"] body.lab-reports-page .relation-selected-head span,
html[data-theme="light"] body.lab-reports-page .calendar-month-card header span,
html[data-theme="light"] body.lab-reports-page .relation-form-card>span{
  color:#075985!important;
}
html[data-theme="light"] body.lab-reports-page .relation-detail-card p,
html[data-theme="light"] body.lab-reports-page .relation-detail-card small,
html[data-theme="light"] body.lab-reports-page .relation-legend span,
html[data-theme="light"] body.lab-reports-page .mini-more{
  color:#475569!important;
}
html[data-theme="light"] body.lab-reports-page .relation-status-chip.pending,
html[data-theme="light"] body.lab-reports-page .month-chip.pending{
  background:#f59e0b!important;
  border-color:#b45309!important;
  color:#111827!important;
}
html[data-theme="light"] body.lab-reports-page .relation-status-chip.due_soon,
html[data-theme="light"] body.lab-reports-page .month-chip.due_soon{
  background:#f97316!important;
  border-color:#c2410c!important;
  color:#111827!important;
}
html[data-theme="light"] body.lab-reports-page .relation-status-chip.expired,
html[data-theme="light"] body.lab-reports-page .month-chip.expired{
  background:#dc2626!important;
  border-color:#991b1b!important;
  color:#ffffff!important;
}
html[data-theme="light"] body.lab-reports-page .relation-status-chip.completed,
html[data-theme="light"] body.lab-reports-page .month-chip.completed{
  background:#16a34a!important;
  border-color:#166534!important;
  color:#ffffff!important;
}
html[data-theme="light"] body.lab-reports-page .month-chip.total{
  background:#dbeafe!important;
  border-color:#93c5fd!important;
  color:#1e3a8a!important;
}
html[data-theme="light"] body.lab-reports-page .mini-relation.pending{
  background:#fef3c7!important;
  border-color:#f59e0b!important;
  color:#78350f!important;
}
html[data-theme="light"] body.lab-reports-page .mini-relation.due_soon{
  background:#ffedd5!important;
  border-color:#f97316!important;
  color:#7c2d12!important;
}
html[data-theme="light"] body.lab-reports-page .mini-relation.expired{
  background:#fee2e2!important;
  border-color:#ef4444!important;
  color:#7f1d1d!important;
}
html[data-theme="light"] body.lab-reports-page .mini-relation.completed{
  background:#dcfce7!important;
  border-color:#22c55e!important;
  color:#14532d!important;
}
html[data-theme="light"] body.lab-reports-page .legend-dot.pending{background:#f59e0b!important;}
html[data-theme="light"] body.lab-reports-page .legend-dot.due_soon{background:#f97316!important;}
html[data-theme="light"] body.lab-reports-page .legend-dot.expired{background:#dc2626!important;}
html[data-theme="light"] body.lab-reports-page .legend-dot.completed{background:#16a34a!important;}
html[data-theme="light"] body.lab-reports-page .relation-insert-box summary{
  color:#075985!important;
  background:#eff6ff!important;
  border-bottom-color:#bfdbfe!important;
}
html[data-theme="light"] body.lab-reports-page .relation-form-card label,
html[data-theme="light"] body.lab-reports-page .calendar-weekdays span{
  color:#334155!important;
}

/* v0.18.8 - Piano uscite: layout Excel compatto con menu aperto */
body.weekly-plan-light-page .content{
  max-width:none!important;
  width:100%!important;
  padding-left:14px!important;
  padding-right:14px!important;
  overflow-x:hidden!important;
}
body.weekly-plan-light-page .weekly-sheet,
body.weekly-plan-light-page .weekly-day-section,
body.weekly-plan-light-page .weekly-table-shell{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
}
body.weekly-plan-light-page .weekly-excel-table-shell{
  overflow-x:hidden!important;
  border-top:1px solid #9fb2c7!important;
  border-left:1px solid #9fb2c7!important;
}
body.weekly-plan-light-page .weekly-grid{
  display:grid!important;
  grid-template-columns:96px minmax(245px,1.55fr) minmax(205px,1.28fr) minmax(145px,.88fr) minmax(150px,.88fr) 86px!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
}
body.weekly-plan-light-page .weekly-excel-grid-head{
  background:#cfe3fb!important;
  border-top:0!important;
  border-bottom:2px solid #7f98b5!important;
}
body.weekly-plan-light-page .weekly-excel-grid-head div{
  min-width:0!important;
  min-height:40px!important;
  padding:7px 8px!important;
  border-right:1px solid #9fb2c7!important;
  color:#071426!important;
  font-size:10.5px!important;
  line-height:1.12!important;
  letter-spacing:.065em!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:anywhere!important;
  text-overflow:clip!important;
  overflow:visible!important;
}
body.weekly-plan-light-page .weekly-excel-row{
  position:relative!important;
  background:#ffffff!important;
  border-left:5px solid #64748b!important;
  border-bottom:2px solid #9fb2c7!important;
  box-shadow:inset 0 1px 0 #f8fafc!important;
}
body.weekly-plan-light-page .weekly-excel-row.weekly-row-alt{
  background:#e8f2ff!important;
  border-left-color:#0284c7!important;
}
body.weekly-plan-light-page .weekly-excel-row:hover{
  background:#dff0ff!important;
  outline:2px solid #38bdf8!important;
  outline-offset:-2px!important;
}
body.weekly-plan-light-page .weekly-excel-cell{
  min-height:96px!important;
  padding:6px 7px!important;
  border-right:1px solid #9fb2c7!important;
  border-bottom:0!important;
  background:transparent!important;
  border-radius:0!important;
  overflow:hidden!important;
}
body.weekly-plan-light-page .weekly-excel-row .weekly-excel-cell label,
body.weekly-plan-light-page .weekly-add-grid .weekly-excel-cell{
  min-width:0!important;
}
body.weekly-plan-light-page .weekly-excel-row .weekly-excel-cell label > span,
body.weekly-plan-light-page .weekly-excel-row .cell-title-small,
body.weekly-plan-light-page .weekly-excel-row .cell-label-row > span{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
  clip:rect(0 0 0 0)!important;
  white-space:nowrap!important;
}
body.weekly-plan-light-page .weekly-excel-row .cell-label-row{
  min-height:24px!important;
  display:flex!important;
  justify-content:flex-end!important;
  align-items:center!important;
  margin:0 0 4px!important;
}
body.weekly-plan-light-page .weekly-excel-row .weekly-cell input,
body.weekly-plan-light-page .weekly-excel-row .weekly-cell textarea{
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  padding:4px 5px!important;
  min-height:34px!important;
  color:#061326!important;
  font-size:13px!important;
  line-height:1.22!important;
  font-weight:620!important;
}
body.weekly-plan-light-page .weekly-excel-row .weekly-cell textarea{
  min-height:84px!important;
  resize:vertical!important;
}
body.weekly-plan-light-page .weekly-excel-row .weekly-cell input:focus,
body.weekly-plan-light-page .weekly-excel-row .weekly-cell textarea:focus{
  outline:2px solid #0284c7!important;
  outline-offset:-1px!important;
  background:#ffffff!important;
}
body.weekly-plan-light-page .acceptance-cell.acceptance-highlighted{
  background:#fff15a!important;
  box-shadow:inset 0 0 0 2px #d97706!important;
}
body.weekly-plan-light-page .acceptance-cell.acceptance-highlighted textarea{
  background:transparent!important;
  border:0!important;
}
body.weekly-plan-light-page .cell-highlight-toggle{
  min-height:22px!important;
  padding:0 7px!important;
  font-size:9.5px!important;
  line-height:1!important;
  flex:0 0 auto!important;
  box-shadow:none!important;
}
body.weekly-plan-light-page .confirmation-cell{
  background:rgba(22,163,74,.07)!important;
}
body.weekly-plan-light-page .confirmation-list{
  display:flex!important;
  align-content:flex-start!important;
  align-items:flex-start!important;
  flex-wrap:wrap!important;
  gap:5px!important;
  min-width:0!important;
  width:100%!important;
}
body.weekly-plan-light-page .confirmation-chip,
body.weekly-plan-light-page .confirmation-chip-form button{
  max-width:100%!important;
  min-height:24px!important;
  padding:4px 7px!important;
  font-size:11px!important;
  line-height:1.12!important;
  border-radius:999px!important;
  white-space:normal!important;
  word-break:break-word!important;
}
body.weekly-plan-light-page .confirmation-empty{
  width:100%!important;
  padding:6px 7px!important;
  font-size:11px!important;
  line-height:1.15!important;
  background:#f8fafc!important;
  border-color:#94a3b8!important;
  color:#475569!important;
}
body.weekly-plan-light-page .weekly-actions-cell{
  gap:5px!important;
  padding:6px!important;
  overflow:visible!important;
}
body.weekly-plan-light-page .weekly-actions-cell button{
  min-width:0!important;
  width:100%!important;
  min-height:30px!important;
  padding:0 5px!important;
  font-size:10.5px!important;
  letter-spacing:-.02em!important;
  white-space:normal!important;
  line-height:1.05!important;
}
body.weekly-plan-light-page .weekly-confirm-button span{
  font-size:14px!important;
}
body.weekly-plan-light-page .weekly-lock-note{
  padding:5px!important;
  font-size:10px!important;
  line-height:1.1!important;
}
body.weekly-plan-light-page .weekly-row-meta{
  font-size:9.5px!important;
  line-height:1.1!important;
}
body.weekly-plan-light-page .weekly-excel-add-row{
  min-width:0!important;
  width:100%!important;
  border-left:5px solid #94a3b8!important;
}
body.weekly-plan-light-page .weekly-add-grid{
  display:grid!important;
  grid-template-columns:96px minmax(245px,1.55fr) minmax(205px,1.28fr) minmax(145px,.88fr) minmax(150px,.88fr) 86px!important;
  width:100%!important;
  min-width:0!important;
  gap:0!important;
  padding:0!important;
  align-items:stretch!important;
  background:#f1f7ff!important;
}
body.weekly-plan-light-page .weekly-add-grid .weekly-excel-cell{
  padding:6px 7px!important;
  border-right:1px solid #9fb2c7!important;
  border-top:1px solid #9fb2c7!important;
  min-height:86px!important;
}
body.weekly-plan-light-page .weekly-add-grid .weekly-excel-cell span{
  display:block!important;
  margin-bottom:5px!important;
  color:#334155!important;
  font-size:9.5px!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:.09em!important;
}
body.weekly-plan-light-page .weekly-add-grid input,
body.weekly-plan-light-page .weekly-add-grid textarea{
  border-radius:0!important;
  border:1px solid #9fb2c7!important;
  background:#ffffff!important;
  min-height:32px!important;
  font-size:12.5px!important;
}
body.weekly-plan-light-page .weekly-add-grid textarea{
  min-height:70px!important;
}
body.weekly-plan-light-page .weekly-add-grid .weekly-actions-cell button{
  min-height:34px!important;
  font-size:11px!important;
}
body.weekly-plan-light-page .weekly-empty-day{
  border-left:5px solid #94a3b8!important;
}
@media(max-width:1220px){
  body.weekly-plan-light-page .weekly-excel-table-shell{overflow-x:hidden!important;}
  body.weekly-plan-light-page .weekly-grid,
  body.weekly-plan-light-page .weekly-add-grid{min-width:0!important;}
  body.weekly-plan-light-page .weekly-empty-day,
  body.weekly-plan-light-page .weekly-excel-add-row{min-width:0!important;}
}
@media(max-width:980px){
  body.weekly-plan-light-page .weekly-excel-table-shell{overflow-x:auto!important;}
  body.weekly-plan-light-page .weekly-grid,
  body.weekly-plan-light-page .weekly-add-grid{min-width:920px!important;}
  body.weekly-plan-light-page .weekly-empty-day,
  body.weekly-plan-light-page .weekly-excel-add-row{min-width:920px!important;}
}

/* MOD24 - Piano uscite: allineamento griglia Excel e pulsante giorno corrente */
body.weekly-plan-light-page .weekly-table-shell,
body.weekly-plan-light-page .weekly-table-shell *,
body.weekly-plan-light-page .weekly-sheet-title-with-action,
body.weekly-plan-light-page .weekly-sheet-title-with-action *{
  box-sizing:border-box!important;
}
body.weekly-plan-light-page .weekly-sheet-title-with-action{
  align-items:center!important;
}
body.weekly-plan-light-page .weekly-sheet-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:14px!important;
  flex-wrap:wrap!important;
  text-align:right!important;
}
body.weekly-plan-light-page .weekly-sheet-actions .muted{
  margin:0!important;
}
body.weekly-plan-light-page .weekly-today-button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:40px!important;
  padding:0 16px!important;
  border-radius:999px!important;
  border:1px solid #0284c7!important;
  background:linear-gradient(135deg,#0284c7,#0d9488)!important;
  color:#ffffff!important;
  font-weight:900!important;
  letter-spacing:.02em!important;
  text-decoration:none!important;
  box-shadow:0 10px 22px rgba(2,132,199,.22)!important;
  white-space:nowrap!important;
}
body.weekly-plan-light-page .weekly-today-button:hover{
  transform:translateY(-1px)!important;
  box-shadow:0 13px 28px rgba(2,132,199,.30)!important;
}
body.weekly-plan-light-page .weekly-current-day{
  outline:3px solid #f59e0b!important;
  outline-offset:3px!important;
}
body.weekly-plan-light-page .weekly-current-day .weekly-day-light-header{
  background:linear-gradient(135deg,#0f766e,#0369a1)!important;
}
body.weekly-plan-light-page .weekly-excel-table-shell{
  overflow-x:hidden!important;
  border-left:1px solid #8fa7c1!important;
  border-top:1px solid #8fa7c1!important;
}
body.weekly-plan-light-page .weekly-grid,
body.weekly-plan-light-page .weekly-add-grid{
  display:grid!important;
  grid-template-columns:minmax(110px,10%) minmax(260px,28%) minmax(220px,22%) minmax(160px,16%) minmax(180px,16%) minmax(104px,8%)!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  gap:0!important;
  align-items:stretch!important;
}
body.weekly-plan-light-page .weekly-excel-grid-head{
  box-shadow:inset 5px 0 0 #8fa7c1!important;
}
body.weekly-plan-light-page .weekly-excel-grid-head div{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  min-height:42px!important;
  padding:8px 10px!important;
  border-right:1px solid #8fa7c1!important;
  border-bottom:0!important;
  overflow:visible!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  text-overflow:clip!important;
}
body.weekly-plan-light-page .weekly-excel-row{
  border-left:0!important;
  border-bottom:2px solid #8fa7c1!important;
  box-shadow:inset 5px 0 0 #64748b!important;
  align-items:stretch!important;
}
body.weekly-plan-light-page .weekly-excel-row.weekly-row-alt{
  background:#dcecff!important;
  box-shadow:inset 5px 0 0 #0284c7!important;
}
body.weekly-plan-light-page .weekly-excel-row:not(.weekly-row-alt){
  background:#ffffff!important;
}
body.weekly-plan-light-page .weekly-excel-row:hover{
  background:#cfe7ff!important;
}
body.weekly-plan-light-page .weekly-excel-cell{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  justify-content:flex-start!important;
  min-height:108px!important;
  height:auto!important;
  padding:7px 8px!important;
  border-right:1px solid #8fa7c1!important;
  border-bottom:0!important;
  overflow:hidden!important;
  background:transparent!important;
}
body.weekly-plan-light-page .weekly-excel-row .weekly-excel-cell label{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  justify-content:flex-start!important;
  gap:0!important;
  height:100%!important;
  margin:0!important;
}
body.weekly-plan-light-page .weekly-excel-row .weekly-cell input,
body.weekly-plan-light-page .weekly-excel-row .weekly-cell textarea{
  display:block!important;
  margin:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  padding:5px 6px!important;
  color:#041225!important;
  font-size:13px!important;
  font-weight:650!important;
  line-height:1.24!important;
  text-align:left!important;
  vertical-align:top!important;
}
body.weekly-plan-light-page .weekly-excel-row .weekly-cell input{
  min-height:34px!important;
  height:34px!important;
  align-self:flex-start!important;
}
body.weekly-plan-light-page .weekly-excel-row .weekly-cell textarea{
  min-height:94px!important;
  height:94px!important;
  resize:vertical!important;
}
body.weekly-plan-light-page .weekly-excel-row .weekly-cell input:focus,
body.weekly-plan-light-page .weekly-excel-row .weekly-cell textarea:focus{
  background:#ffffff!important;
  outline:2px solid #0284c7!important;
  outline-offset:-2px!important;
}
body.weekly-plan-light-page .weekly-excel-row .acceptance-cell{
  position:relative!important;
  padding-top:7px!important;
}
body.weekly-plan-light-page .weekly-excel-row .acceptance-cell .cell-label-row{
  position:absolute!important;
  top:7px!important;
  right:7px!important;
  z-index:3!important;
  min-height:0!important;
  height:24px!important;
  margin:0!important;
  justify-content:flex-end!important;
  pointer-events:none!important;
}
body.weekly-plan-light-page .weekly-excel-row .acceptance-cell .cell-highlight-toggle{
  pointer-events:auto!important;
}
body.weekly-plan-light-page .weekly-excel-row .acceptance-cell textarea{
  padding-right:72px!important;
  padding-top:5px!important;
}
body.weekly-plan-light-page .weekly-excel-row .acceptance-cell.acceptance-highlighted,
body.weekly-plan-light-page .weekly-excel-row .acceptance-cell.acceptance-highlighted textarea{
  background:#fff35a!important;
}
body.weekly-plan-light-page .weekly-excel-row .confirmation-cell{
  background:rgba(16,185,129,.10)!important;
}
body.weekly-plan-light-page .weekly-excel-row.weekly-row-alt .confirmation-cell{
  background:rgba(14,165,233,.10)!important;
}
body.weekly-plan-light-page .weekly-actions-cell{
  align-items:stretch!important;
  justify-content:flex-start!important;
  gap:5px!important;
}
body.weekly-plan-light-page .weekly-actions-cell button{
  min-height:30px!important;
  width:100%!important;
}
body.weekly-plan-light-page .weekly-excel-add-row{
  border-left:0!important;
  box-shadow:inset 5px 0 0 #94a3b8!important;
}
body.weekly-plan-light-page .weekly-add-grid .weekly-excel-cell{
  border-right:1px solid #8fa7c1!important;
  border-top:1px solid #8fa7c1!important;
}
body.weekly-plan-light-page .weekly-empty-day{
  border-left:0!important;
  box-shadow:inset 5px 0 0 #94a3b8!important;
}
@media(max-width:1180px){
  body.weekly-plan-light-page .weekly-excel-table-shell{overflow-x:auto!important;}
  body.weekly-plan-light-page .weekly-grid,
  body.weekly-plan-light-page .weekly-add-grid{min-width:1040px!important;}
  body.weekly-plan-light-page .weekly-empty-day,
  body.weekly-plan-light-page .weekly-excel-add-row{min-width:1040px!important;}
  body.weekly-plan-light-page .weekly-sheet-actions{justify-content:flex-start!important;text-align:left!important;}
}

/* MOD25 - Piano uscite: eliminazione tagli colonne con menu gestione aperto */
body.weekly-plan-light-page.menu-panel-open .app-shell{
  grid-template-columns:calc(var(--sidebar) + var(--expanded-menu)) minmax(0,1fr)!important;
}
body.weekly-plan-light-page .content{
  max-width:none!important;
  width:100%!important;
  padding-left:14px!important;
  padding-right:14px!important;
  overflow-x:hidden!important;
}
body.weekly-plan-light-page .weekly-sheet,
body.weekly-plan-light-page .weekly-day-section,
body.weekly-plan-light-page .weekly-table-shell,
body.weekly-plan-light-page .weekly-excel-table-shell{
  width:100%!important;
  max-width:100%!important;
  overflow-x:hidden!important;
}
body.weekly-plan-light-page .weekly-grid,
body.weekly-plan-light-page .weekly-add-grid{
  display:grid!important;
  grid-template-columns:minmax(78px,.75fr) minmax(190px,2fr) minmax(170px,1.65fr) minmax(130px,1.15fr) minmax(150px,1.35fr) minmax(112px,.9fr)!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  gap:0!important;
  align-items:stretch!important;
}
body.weekly-plan-light-page .weekly-empty-day,
body.weekly-plan-light-page .weekly-excel-add-row{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
}
body.weekly-plan-light-page .weekly-excel-grid-head div{
  min-width:0!important;
  padding:8px 8px!important;
  font-size:10.2px!important;
  line-height:1.12!important;
  letter-spacing:.055em!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
}
body.weekly-plan-light-page .weekly-excel-cell{
  min-width:0!important;
  padding:6px 7px!important;
  overflow:hidden!important;
}
body.weekly-plan-light-page .weekly-excel-row .weekly-cell input,
body.weekly-plan-light-page .weekly-excel-row .weekly-cell textarea,
body.weekly-plan-light-page .weekly-add-grid input,
body.weekly-plan-light-page .weekly-add-grid textarea{
  min-width:0!important;
  width:100%!important;
  font-size:12.2px!important;
  line-height:1.22!important;
}
body.weekly-plan-light-page .weekly-actions-cell{
  padding:6px!important;
  gap:4px!important;
  min-width:0!important;
}
body.weekly-plan-light-page .weekly-actions-cell button{
  min-width:0!important;
  width:100%!important;
  min-height:28px!important;
  padding:0 6px!important;
  font-size:10.8px!important;
  line-height:1.1!important;
  white-space:normal!important;
}
body.weekly-plan-light-page .weekly-confirm-button span{
  font-size:13px!important;
}
body.weekly-plan-light-page .weekly-row-meta{
  font-size:9px!important;
  line-height:1.08!important;
  overflow-wrap:anywhere!important;
}
body.weekly-plan-light-page .confirmation-empty,
body.weekly-plan-light-page .confirmation-chip,
body.weekly-plan-light-page .confirmation-chip-form button{
  font-size:10.5px!important;
  line-height:1.12!important;
  min-height:26px!important;
  padding:5px 7px!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
}
body.weekly-plan-light-page .cell-highlight-toggle{
  min-height:22px!important;
  padding:0 8px!important;
  font-size:9.8px!important;
}
body.weekly-plan-light-page .weekly-excel-row .acceptance-cell textarea{
  padding-right:58px!important;
}
body.weekly-plan-light-page .weekly-day-header{
  padding:13px 16px!important;
}
body.weekly-plan-light-page .weekly-day-header h2{
  font-size:26px!important;
}
body.weekly-plan-light-page.menu-panel-open .weekly-day-header h2{
  font-size:24px!important;
}
body.weekly-plan-light-page.menu-panel-open .weekly-day-stats span{
  height:30px!important;
  padding:0 10px!important;
  font-size:11px!important;
}
body.weekly-plan-light-page.menu-panel-open .weekly-grid,
body.weekly-plan-light-page.menu-panel-open .weekly-add-grid{
  grid-template-columns:minmax(72px,.7fr) minmax(170px,1.9fr) minmax(150px,1.55fr) minmax(118px,1.1fr) minmax(135px,1.25fr) minmax(104px,.95fr)!important;
}
body.weekly-plan-light-page.menu-panel-open .weekly-excel-grid-head div{
  font-size:9.8px!important;
  letter-spacing:.045em!important;
  padding:7px 7px!important;
}
body.weekly-plan-light-page.menu-panel-open .weekly-excel-cell{
  padding:5px 6px!important;
}
body.weekly-plan-light-page.menu-panel-open .weekly-excel-row .weekly-cell input,
body.weekly-plan-light-page.menu-panel-open .weekly-excel-row .weekly-cell textarea,
body.weekly-plan-light-page.menu-panel-open .weekly-add-grid input,
body.weekly-plan-light-page.menu-panel-open .weekly-add-grid textarea{
  font-size:11.5px!important;
  padding:4px 5px!important;
}
@media(max-width:1180px){
  body.weekly-plan-light-page .weekly-excel-table-shell{overflow-x:hidden!important;}
  body.weekly-plan-light-page .weekly-grid,
  body.weekly-plan-light-page .weekly-add-grid{min-width:0!important;}
  body.weekly-plan-light-page .weekly-empty-day,
  body.weekly-plan-light-page .weekly-excel-add-row{min-width:0!important;}
}
@media(max-width:980px){
  body.weekly-plan-light-page .weekly-excel-table-shell{overflow-x:hidden!important;}
  body.weekly-plan-light-page .weekly-grid,
  body.weekly-plan-light-page .weekly-add-grid{
    grid-template-columns:minmax(64px,.65fr) minmax(145px,1.7fr) minmax(130px,1.45fr) minmax(105px,1fr) minmax(116px,1.15fr) minmax(88px,.85fr)!important;
    min-width:0!important;
  }
  body.weekly-plan-light-page .weekly-excel-grid-head div{font-size:8.9px!important;padding:6px 5px!important;}
  body.weekly-plan-light-page .weekly-actions-cell button{font-size:9.8px!important;padding:0 4px!important;}
}

/* MOD26 - Piano uscite: bordi contenuti non tagliati */
body.weekly-plan-light-page *,
body.weekly-plan-light-page *::before,
body.weekly-plan-light-page *::after{
  box-sizing:border-box!important;
}
body.weekly-plan-light-page .weekly-sheet{
  padding-left:8px!important;
  padding-right:8px!important;
  overflow:visible!important;
}
body.weekly-plan-light-page .weekly-day-section{
  width:calc(100% - 12px)!important;
  max-width:calc(100% - 12px)!important;
  margin-left:6px!important;
  margin-right:6px!important;
  margin-bottom:18px!important;
  border:1px solid #9eb4ca!important;
  overflow:hidden!important;
  background-clip:padding-box!important;
}
body.weekly-plan-light-page .weekly-current-day{
  outline:none!important;
  outline-offset:0!important;
  border:2px solid #f59e0b!important;
  box-shadow:inset 0 0 0 3px rgba(245,158,11,.82),0 10px 28px rgba(15,23,42,.12)!important;
}
body.weekly-plan-light-page .weekly-current-day .weekly-table-shell,
body.weekly-plan-light-page .weekly-current-day .weekly-excel-table-shell{
  margin-left:0!important;
  margin-right:0!important;
}
body.weekly-plan-light-page .weekly-excel-table-shell{
  border-left:1px solid #8fa7c1!important;
  border-right:1px solid #8fa7c1!important;
  border-top:1px solid #8fa7c1!important;
  border-bottom:1px solid #8fa7c1!important;
  overflow:hidden!important;
}
body.weekly-plan-light-page .weekly-excel-grid-head,
body.weekly-plan-light-page .weekly-excel-row,
body.weekly-plan-light-page .weekly-add-grid{
  width:100%!important;
  max-width:100%!important;
}
body.weekly-plan-light-page .weekly-excel-grid-head div:last-child,
body.weekly-plan-light-page .weekly-excel-row .weekly-excel-cell:last-child,
body.weekly-plan-light-page .weekly-add-grid .weekly-excel-cell:last-child{
  border-right:0!important;
}
body.weekly-plan-light-page .weekly-excel-row{
  margin:0!important;
}
body.weekly-plan-light-page .weekly-empty-day,
body.weekly-plan-light-page .weekly-excel-add-row{
  border-left:1px solid #8fa7c1!important;
  border-right:1px solid #8fa7c1!important;
  box-shadow:none!important;
}
body.weekly-plan-light-page .weekly-excel-add-row summary{
  border-left:0!important;
  border-right:0!important;
}
body.weekly-plan-light-page .cell-highlight-toggle{
  box-shadow:0 0 0 1px rgba(245,158,11,.25) inset!important;
  white-space:nowrap!important;
}
body.weekly-plan-light-page .acceptance-cell.acceptance-highlighted{
  box-shadow:inset 0 0 0 2px #eab308!important;
}
body.weekly-plan-light-page.menu-panel-open .weekly-sheet{
  padding-left:6px!important;
  padding-right:6px!important;
}
body.weekly-plan-light-page.menu-panel-open .weekly-day-section{
  width:calc(100% - 10px)!important;
  max-width:calc(100% - 10px)!important;
  margin-left:5px!important;
  margin-right:5px!important;
}
@media(max-width:980px){
  body.weekly-plan-light-page .weekly-sheet{padding-left:4px!important;padding-right:4px!important;}
  body.weekly-plan-light-page .weekly-day-section{width:calc(100% - 6px)!important;max-width:calc(100% - 6px)!important;margin-left:3px!important;margin-right:3px!important;}
}

/* MOD27 - v0.18.12 - Restyle menu laterale stile dashboard sottile */
:root{
  --sidebar:260px!important;
  --expanded-menu:318px!important;
  --menu-dark:#111318;
  --menu-dark-2:#151820;
  --menu-line:#2b3038;
  --menu-muted:#8f97a7;
  --menu-text:#e9edf7;
  --menu-active:rgba(255,255,255,.085);
  --menu-active-border:rgba(255,255,255,.11);
}
.app-shell{grid-template-columns:var(--sidebar) minmax(0,1fr)!important;}
.sidebar,
html[data-theme="light"] .sidebar{
  background:var(--menu-dark)!important;
  color:var(--menu-text)!important;
  border-right:1px solid var(--menu-line)!important;
  box-shadow:none!important;
}
.sidebar-head{
  height:78px!important;
  min-height:78px!important;
  padding:13px 16px 12px!important;
  border-bottom:1px solid rgba(255,255,255,.06)!important;
  background:var(--menu-dark)!important;
}
.brand{gap:12px!important;}
.brand-logo{
  width:42px!important;
  height:42px!important;
  border-radius:12px!important;
  padding:5px!important;
  box-shadow:none!important;
}
.brand-title{font-size:17px!important;font-weight:780!important;letter-spacing:-.04em!important;color:#fff!important;}
.brand-subtitle{font-size:11px!important;color:#a4abbb!important;}
.sidebar-toggle.arrow-only{
  width:34px!important;
  height:34px!important;
  border:0!important;
  background:rgba(255,255,255,.035)!important;
  color:#aab3c4!important;
  border-radius:10px!important;
}
.sidebar-toggle.arrow-only:hover{background:rgba(255,255,255,.075)!important;color:#fff!important;}
.chevron-icon{width:20px!important;height:20px!important;}
.main-nav{
  padding:12px 10px 8px!important;
  gap:4px!important;
  overflow:hidden auto!important;
  scrollbar-width:none!important;
  background:var(--menu-dark)!important;
}
.main-nav a,
.sidebar-utility,
.theme-toggle,
.logout{
  position:relative!important;
  height:38px!important;
  min-height:38px!important;
  margin:0 2px!important;
  padding:0 11px!important;
  border:1px solid transparent!important;
  border-left:1px solid transparent!important;
  border-radius:12px!important;
  background:transparent!important;
  color:#c6ccd9!important;
  font-size:13px!important;
  font-weight:720!important;
  letter-spacing:-.012em!important;
  box-shadow:none!important;
  transition:background .14s ease,border-color .14s ease,color .14s ease,transform .14s ease!important;
}
.main-nav a:hover,
.sidebar-utility:hover,
.theme-toggle:hover,
.logout:hover{
  background:rgba(255,255,255,.055)!important;
  border-color:rgba(255,255,255,.06)!important;
  color:#ffffff!important;
}
.main-nav a.active,
.sidebar-utility.active{
  background:var(--menu-active)!important;
  border-color:var(--menu-active-border)!important;
  color:#ffffff!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.055)!important;
}
.main-nav a.active::before,
.sidebar-utility.active::before{
  content:"";
  position:absolute;
  left:7px;
  top:9px;
  bottom:9px;
  width:2px;
  border-radius:999px;
  background:#6aa7ff;
  opacity:.85;
}
.main-nav a.active{padding-left:14px!important;}
.nav-icon{width:25px!important;height:25px!important;color:#aab3c4!important;}
.nav-icon svg{width:18px!important;height:18px!important;stroke-width:1.9!important;}
.main-nav a:hover .nav-icon,
.main-nav a.active .nav-icon,
.sidebar-utility:hover .nav-icon,
.sidebar-utility.active .nav-icon{color:#f8fbff!important;}
.nav-text{min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;}
.nav-badge{
  margin-left:auto!important;
  min-width:21px!important;
  height:21px!important;
  border-radius:8px!important;
  background:#635bff!important;
  color:#fff!important;
  display:inline-grid!important;
  place-items:center!important;
  padding:0 6px!important;
  font-size:11px!important;
  font-weight:850!important;
}
.nav-section-pill.productivity-pill{
  height:24px!important;
  min-height:24px!important;
  margin:8px 6px 5px!important;
  padding:0 10px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#747d91!important;
  font-size:10px!important;
  font-weight:850!important;
  letter-spacing:.21em!important;
  text-transform:uppercase!important;
  justify-content:flex-start!important;
}
.nav-section-pill.productivity-pill .nav-icon{display:none!important;}
.nav-group-label{
  height:24px!important;
  display:flex!important;
  align-items:center!important;
  padding:0 12px!important;
  margin:7px 6px 4px!important;
  color:#747d91!important;
  font-size:10px!important;
  font-weight:850!important;
  letter-spacing:.20em!important;
  text-transform:uppercase!important;
}
.lab-nav-zone,
html[data-theme="light"] .lab-nav-zone{
  flex:0 0 auto!important;
  padding:9px 10px 8px!important;
  background:var(--menu-dark)!important;
  border-top:1px solid rgba(255,255,255,.06)!important;
}
.lab-nav-zone .lab-pill,
html[data-theme="light"] .lab-nav-zone .lab-pill{
  width:100%!important;
  height:40px!important;
  min-height:40px!important;
  margin:0!important;
  padding:0 12px!important;
  border:1px solid transparent!important;
  border-radius:13px!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#d4d9e6!important;
  font-size:11px!important;
  font-weight:850!important;
  letter-spacing:.17em!important;
  text-transform:uppercase!important;
}
.lab-nav-zone .lab-pill:hover,
.lab-nav-zone .lab-pill.active,
.menu-panel-open .lab-nav-zone .lab-pill,
html[data-theme="light"] .lab-nav-zone .lab-pill:hover,
html[data-theme="light"] .lab-nav-zone .lab-pill.active,
html[data-theme="light"].menu-panel-open .lab-nav-zone .lab-pill{
  background:var(--menu-active)!important;
  border-color:var(--menu-active-border)!important;
  color:#fff!important;
}
.lab-nav-zone .lab-pill .nav-icon{color:#aab3c4!important;}
.lab-nav-zone .lab-pill.active .nav-icon,
.menu-panel-open .lab-nav-zone .lab-pill .nav-icon{color:#fff!important;}
.flyout-arrow{color:#aab3c4!important;margin-left:auto!important;}
.sidebar-footer,
html[data-theme="light"] .sidebar-footer{
  padding:10px 10px 12px!important;
  gap:6px!important;
  background:var(--menu-dark)!important;
  border-top:1px solid rgba(255,255,255,.06)!important;
}
.sidebar-utility{justify-content:flex-start!important;gap:10px!important;}
.theme-toggle{justify-content:flex-start!important;gap:10px!important;}
.logout{justify-content:flex-start!important;gap:10px!important;color:#d7def0!important;}
.theme-switch{
  width:42px!important;
  height:22px!important;
  background:#222733!important;
  border-color:#363e4d!important;
}
.theme-knob{width:16px!important;height:16px!important;background:#397dea!important;}
:root[data-theme="light"] .theme-knob{transform:translateX(20px)!important;}
.side-expand-handle{
  left:calc(var(--sidebar) - 16px)!important;
  width:32px!important;
  height:54px!important;
  border-radius:999px!important;
  border:1px solid #303640!important;
  background:var(--menu-dark-2)!important;
  color:#9fcbff!important;
  box-shadow:none!important;
}
.side-expand-handle:hover{background:#1a1f2a!important;border-color:#475569!important;color:#fff!important;}
.menu-panel-open .side-expand-handle{left:calc(var(--sidebar) + var(--expanded-menu) - 16px)!important;}
.expanded-menu-panel,
html[data-theme="light"] .expanded-menu-panel{
  left:var(--sidebar)!important;
  width:var(--expanded-menu)!important;
  background:var(--menu-dark)!important;
  border-left:1px solid rgba(255,255,255,.035)!important;
  border-right:1px solid var(--menu-line)!important;
  box-shadow:none!important;
  padding:18px 14px 18px!important;
  gap:12px!important;
}
.expanded-user-card,
html[data-theme="light"] .expanded-user-card{
  border-radius:16px!important;
  border:1px solid rgba(255,255,255,.075)!important;
  background:rgba(255,255,255,.045)!important;
  color:#e7ecf7!important;
}
.expanded-user-card span{color:#8c95a7!important;}
.expanded-user-card strong,
html[data-theme="light"] .expanded-user-card strong{color:#fff!important;}
.expanded-user-card small,
html[data-theme="light"] .expanded-user-card small{color:#a7afbf!important;}
.global-search-input-wrap input,
html[data-theme="light"] .global-search-input-wrap input{
  background:#151922!important;
  border:1px solid rgba(255,255,255,.09)!important;
  color:#eef3ff!important;
  border-radius:13px!important;
}
.global-search-input-wrap input::placeholder{color:#7d8798!important;}
.global-search-results,
html[data-theme="light"] .global-search-results{
  background:#151922!important;
  border-color:rgba(255,255,255,.075)!important;
  border-radius:14px!important;
}
.search-empty-state{color:#8d96a8!important;}
.search-group-title{color:#8d96a8!important;}
.search-result-item,
html[data-theme="light"] .search-result-item{
  background:rgba(255,255,255,.04)!important;
  border:1px solid rgba(255,255,255,.075)!important;
  color:#e8eefb!important;
  border-radius:13px!important;
}
.search-result-item:hover,
html[data-theme="light"] .search-result-item:hover{
  background:rgba(255,255,255,.085)!important;
  border-color:rgba(255,255,255,.14)!important;
  color:#fff!important;
}
.search-result-item small,
html[data-theme="light"] .search-result-item small{color:#a3acbd!important;}
.expanded-menu-section{gap:8px!important;}
.expanded-section-title{
  color:#747d91!important;
  font-size:10px!important;
  letter-spacing:.20em!important;
  text-transform:uppercase!important;
  font-weight:900!important;
  padding:0 4px!important;
}
.expanded-card,
html[data-theme="light"] .expanded-card{
  min-height:64px!important;
  border-radius:15px!important;
  border:1px solid transparent!important;
  background:transparent!important;
  color:#dce3f1!important;
  padding:10px 11px!important;
}
.expanded-card:hover,
.expanded-card.active,
html[data-theme="light"] .expanded-card:hover,
html[data-theme="light"] .expanded-card.active{
  background:var(--menu-active)!important;
  border-color:var(--menu-active-border)!important;
  color:#fff!important;
}
.expanded-card .nav-icon{
  width:34px!important;
  height:34px!important;
  border-radius:12px!important;
  background:rgba(255,255,255,.055)!important;
  color:#dce8ff!important;
}
.expanded-card strong,
html[data-theme="light"] .expanded-card strong{color:inherit!important;}
.expanded-card small,
html[data-theme="light"] .expanded-card small{color:#9da7b9!important;}
.sidebar-collapsed{--sidebar:72px!important;}
.sidebar-collapsed .sidebar-head{padding:12px 8px!important;justify-content:center!important;}
.sidebar-collapsed .brand{display:none!important;}
.sidebar-collapsed .main-nav{padding:12px 8px!important;gap:6px!important;}
.sidebar-collapsed .main-nav a,
.sidebar-collapsed .sidebar-utility,
.sidebar-collapsed .theme-toggle,
.sidebar-collapsed .logout{
  width:44px!important;
  height:44px!important;
  min-height:44px!important;
  margin:0 auto!important;
  padding:0!important;
  justify-content:center!important;
}
.sidebar-collapsed .nav-section-pill.productivity-pill,
.sidebar-collapsed .nav-group-label{display:none!important;}
.sidebar-collapsed .nav-text,
.sidebar-collapsed .theme-label,
.sidebar-collapsed .logout .nav-text,
.sidebar-collapsed .sidebar-utility .nav-text{display:none!important;}
.sidebar-collapsed .main-nav a.active::before,
.sidebar-collapsed .sidebar-utility.active::before{display:none!important;}
.sidebar-collapsed .lab-nav-zone{padding:8px!important;}
.sidebar-collapsed .lab-nav-zone .lab-pill{width:44px!important;height:44px!important;min-height:44px!important;margin:0 auto!important;padding:0!important;justify-content:center!important;}
.sidebar-collapsed .lab-pill .nav-text,.sidebar-collapsed .lab-pill .flyout-arrow{display:none!important;}
.sidebar-collapsed .side-expand-handle{left:calc(var(--sidebar) - 16px)!important;}
.sidebar-collapsed.menu-panel-open .side-expand-handle{left:calc(var(--sidebar) + var(--expanded-menu) - 16px)!important;}
@media(max-height:760px){
  .sidebar-head{height:68px!important;min-height:68px!important;padding:9px 13px!important;}
  .brand-logo{width:36px!important;height:36px!important;}.brand-title{font-size:15px!important;}.brand-subtitle{font-size:10px!important;}
  .main-nav a{height:33px!important;min-height:33px!important;font-size:12.3px!important;}
  .nav-section-pill.productivity-pill,.nav-group-label{height:20px!important;min-height:20px!important;margin-top:5px!important;margin-bottom:3px!important;}
  .lab-nav-zone .lab-pill{height:36px!important;min-height:36px!important;}
  .theme-toggle,.logout,.sidebar-utility{height:35px!important;min-height:35px!important;font-size:12px!important;}
}

/* v0.18.13 - Account admin: elenco piu' compatto e ricercabile */
.account-users-panel {
  overflow: hidden;
}
.account-users-head {
  align-items: flex-start;
  gap: 18px;
}
.account-user-tools {
  display: grid;
  grid-template-columns: minmax(260px, 1fr) auto auto;
  gap: 10px;
  align-items: center;
  margin: 12px 0 16px;
}
.account-search-wrap {
  position: relative;
}
.account-search-wrap input {
  width: 100%;
  padding-left: 42px;
  min-height: 46px;
  border-radius: 16px;
}
.account-search-icon {
  position: absolute;
  left: 15px;
  top: 50%;
  transform: translateY(-50%);
  color: var(--muted);
  font-weight: 900;
  z-index: 1;
}
.account-list-scroll {
  max-height: 68vh;
  overflow-y: auto;
  padding-right: 8px;
  scroll-behavior: smooth;
}
.account-list-scroll::-webkit-scrollbar {
  width: 10px;
}
.account-list-scroll::-webkit-scrollbar-track {
  background: rgba(148, 163, 184, .12);
  border-radius: 999px;
}
.account-list-scroll::-webkit-scrollbar-thumb {
  background: rgba(148, 163, 184, .42);
  border-radius: 999px;
  border: 2px solid transparent;
  background-clip: padding-box;
}
.account-row-compact {
  display: grid;
  grid-template-columns: minmax(260px, 1fr) minmax(320px, 1.4fr);
  gap: 14px;
  align-items: start;
  padding: 14px 16px;
  border: 1px solid rgba(148, 163, 184, .22);
  border-radius: 18px;
  background: rgba(255,255,255,.035);
  transition: border-color .16s ease, background .16s ease, box-shadow .16s ease;
}
.account-row-compact:hover {
  border-color: rgba(96, 165, 250, .35);
  background: rgba(255,255,255,.055);
}
.account-row-found {
  border-color: rgba(34, 211, 238, .75) !important;
  box-shadow: 0 0 0 3px rgba(34, 211, 238, .16);
}
.account-identity-block {
  display: flex;
  gap: 12px;
  align-items: flex-start;
}
.account-avatar-mini {
  width: 44px;
  height: 44px;
  border-radius: 14px;
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  font-weight: 900;
  letter-spacing: .04em;
  color: #eaf2ff;
  background: linear-gradient(135deg, rgba(37,99,235,.95), rgba(20,184,166,.8));
  border: 1px solid rgba(255,255,255,.18);
}
.account-edit-details {
  width: 100%;
}
.account-edit-details > summary {
  list-style: none;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 0 14px;
  border-radius: 14px;
  border: 1px solid rgba(148, 163, 184, .28);
  color: var(--text);
  background: rgba(148, 163, 184, .10);
  font-weight: 800;
}
.account-edit-details > summary::-webkit-details-marker { display:none; }
.account-edit-details[open] > summary {
  margin-bottom: 12px;
  background: rgba(37, 99, 235, .14);
  border-color: rgba(96, 165, 250, .38);
}
.account-inline-form-v2,
.account-create-grid-v2 {
  grid-template-columns: repeat(3, minmax(170px, 1fr));
}
.account-inline-form-v2 button,
.account-create-grid-v2 button {
  min-height: 44px;
}
@media (max-width: 1180px) {
  .account-row-compact { grid-template-columns: 1fr; }
  .account-inline-form-v2,
  .account-create-grid-v2 { grid-template-columns: repeat(2, minmax(170px, 1fr)); }
}
@media (max-width: 760px) {
  .account-user-tools { grid-template-columns: 1fr; }
  .account-inline-form-v2,
  .account-create-grid-v2 { grid-template-columns: 1fr; }
  .account-list-scroll { max-height: none; overflow: visible; padding-right: 0; }
}

/* v0_18_14 - Piano uscite: layout Excel avanzato */
body.weekly-plan-light-page .weekly-plan-light-hero,
body.weekly-plan-light-page .weekly-toolbar-panel,
body.weekly-plan-light-page .weekly-sheet-title,
body.weekly-plan-light-page .weekly-day-section {
  color: #0f172a;
}
body.weekly-plan-light-page .weekly-advanced-sheet-title {
  display: grid;
  grid-template-columns: minmax(220px, .55fr) minmax(520px, 1.45fr);
  gap: 18px;
  align-items: center;
}
body.weekly-plan-light-page .weekly-sheet-actions {
  display: grid;
  grid-template-columns: minmax(360px, 1fr) auto;
  gap: 12px;
  align-items: center;
  justify-content: end;
}
body.weekly-plan-light-page .weekly-plan-search-wrap {
  position: relative;
  min-width: 0;
}
body.weekly-plan-light-page .weekly-plan-search-wrap input {
  width: 100%;
  min-height: 42px;
  border-radius: 14px;
  border: 1px solid #b8c7d9;
  background: #ffffff;
  color: #0f172a;
  padding: 0 14px 0 38px;
  font-weight: 700;
  box-shadow: inset 0 1px 0 rgba(15, 23, 42, .04);
}
body.weekly-plan-light-page .weekly-plan-search-icon {
  position: absolute;
  left: 14px;
  top: 50%;
  transform: translateY(-50%);
  color: #2563eb;
  font-weight: 900;
  z-index: 1;
}
body.weekly-plan-light-page .weekly-day-header {
  padding: 18px 22px;
}
body.weekly-plan-light-page .weekly-day-title h2 {
  font-size: clamp(23px, 2.2vw, 32px) !important;
  letter-spacing: .035em;
  line-height: 1.08;
}
body.weekly-plan-light-page .weekly-table-shell {
  overflow: hidden !important;
  border-top: 1px solid #93a9c2;
}
body.weekly-plan-light-page .weekly-grid,
body.weekly-plan-light-page.menu-panel-open .weekly-grid {
  display: grid !important;
  grid-template-columns: 30px minmax(92px, .78fr) minmax(210px, 2.16fr) minmax(170px, 1.55fr) minmax(130px, 1.08fr) minmax(150px, 1.2fr) minmax(108px, .82fr) !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}
body.weekly-plan-light-page .weekly-grid > div,
body.weekly-plan-light-page .weekly-grid > label {
  min-width: 0 !important;
  box-sizing: border-box !important;
}
body.weekly-plan-light-page .weekly-grid-head {
  background: #d6e7fa !important;
  border-bottom: 2px solid #7893b2 !important;
}
body.weekly-plan-light-page .weekly-grid-head div {
  color: #08111f !important;
  min-height: 42px !important;
  padding: 0 10px !important;
  font-size: 10.5px !important;
  letter-spacing: .075em !important;
  border-right: 1px solid #98adc4 !important;
  white-space: normal !important;
  overflow: hidden !important;
  text-overflow: clip !important;
}
body.weekly-plan-light-page .weekly-row-grid {
  min-height: 98px;
  background: #ffffff !important;
  border-bottom: 1px solid #91abc7 !important;
  outline: 0 !important;
}
body.weekly-plan-light-page .weekly-row-alt {
  background: #e8f4ff !important;
}
body.weekly-plan-light-page .weekly-row-grid:hover {
  background: #fffdf3 !important;
}
body.weekly-plan-light-page .weekly-row-grid.weekly-search-hit {
  box-shadow: inset 0 0 0 3px rgba(245, 158, 11, .45);
  background: #fff7d6 !important;
}
body.weekly-plan-light-page .weekly-row-dragging {
  opacity: .45;
  outline: 3px dashed #2563eb !important;
}
body.weekly-plan-light-page .weekly-cell {
  min-height: 98px !important;
  padding: 10px 10px !important;
  border-right: 1px solid #91abc7 !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  color: #061225 !important;
  overflow: hidden !important;
}
body.weekly-plan-light-page .weekly-cell:last-child,
body.weekly-plan-light-page .weekly-grid-head div:last-child {
  border-right: 0 !important;
}
body.weekly-plan-light-page .weekly-cell input,
body.weekly-plan-light-page .weekly-cell textarea {
  width: 100% !important;
  min-width: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #061225 !important;
  padding: 6px 4px !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-size: 13.5px !important;
  font-weight: 700 !important;
  line-height: 1.32 !important;
  resize: vertical;
}
body.weekly-plan-light-page .weekly-cell input:focus,
body.weekly-plan-light-page .weekly-cell textarea:focus {
  outline: 2px solid #2563eb !important;
  outline-offset: -1px;
  background: rgba(255, 255, 255, .68) !important;
}
body.weekly-plan-light-page .weekly-drag-cell {
  justify-content: center !important;
  align-items: center !important;
  padding: 0 !important;
  background: rgba(148, 163, 184, .08) !important;
}
body.weekly-plan-light-page .weekly-drag-handle {
  border: 0;
  background: transparent;
  color: #64748b;
  cursor: grab;
  font-size: 18px;
  line-height: 1;
  padding: 10px 2px;
  font-weight: 900;
}
body.weekly-plan-light-page .weekly-drag-handle:active { cursor: grabbing; }
body.weekly-plan-light-page .client-cell strong,
body.weekly-plan-light-page .client-cell input {
  font-size: 13.5px !important;
  font-weight: 900 !important;
}
body.weekly-plan-light-page .client-cell-continuation {
  background: rgba(241, 245, 249, .55) !important;
  justify-content: center !important;
}
body.weekly-plan-light-page .same-client-marker {
  color: #64748b;
  font-size: 18px;
  font-weight: 900;
  margin-top: 4px;
}
body.weekly-plan-light-page .acceptance-cell {
  position: relative;
  padding-right: 40px !important;
}
body.weekly-plan-light-page .acceptance-highlighted {
  background: #ffec40 !important;
}
body.weekly-plan-light-page .cell-highlight-toggle.icon-only {
  position: absolute;
  top: 7px;
  right: 7px;
  width: 30px;
  height: 30px;
  border-radius: 10px;
  border: 1px solid #b7791f;
  background: #fff8cf;
  color: #8a4b00;
  display: grid;
  place-items: center;
  padding: 0;
  font-size: 15px;
  font-weight: 900;
  z-index: 2;
}
body.weekly-plan-light-page .cell-highlight-toggle.icon-only.active {
  background: #92400e;
  color: #fff;
  border-color: #78350f;
}
body.weekly-plan-light-page .cell-readonly-text {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  font-weight: 800;
  line-height: 1.34;
  width: 100%;
  padding: 6px 4px;
}
body.weekly-plan-light-page .confirmation-cell {
  background: rgba(220, 252, 231, .45) !important;
}
body.weekly-plan-light-page .confirmation-list {
  align-content: flex-start;
  gap: 6px;
  width: 100%;
}
body.weekly-plan-light-page .confirmation-chip,
body.weekly-plan-light-page .confirmation-empty {
  max-width: 100%;
  overflow-wrap: anywhere;
}
body.weekly-plan-light-page .weekly-actions-cell {
  gap: 7px !important;
  align-items: stretch !important;
}
body.weekly-plan-light-page .weekly-actions-cell button,
body.weekly-plan-light-page .weekly-actions-cell .weekly-inline-add {
  width: 100% !important;
  min-height: 32px !important;
  padding: 5px 8px !important;
  border-radius: 10px !important;
  font-size: 12px !important;
  font-weight: 900 !important;
}
body.weekly-plan-light-page .weekly-inline-add {
  border: 1px solid #2563eb;
  background: #eff6ff;
  color: #1d4ed8;
}
body.weekly-plan-light-page .weekly-row-meta {
  font-size: 10.5px !important;
  line-height: 1.15 !important;
  text-align: center;
}
body.weekly-plan-light-page .weekly-empty-day {
  width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
  padding: 20px 24px !important;
  background: #ffffff;
  border-bottom: 1px solid #bfd0e3;
  color: #334155;
  font-weight: 800;
}
body.weekly-plan-light-page .weekly-add-row {
  width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
  background: #eef6ff !important;
}
body.weekly-plan-light-page .weekly-add-row summary {
  padding: 14px 20px !important;
  font-weight: 900;
  color: #005484;
}
body.weekly-plan-light-page .weekly-add-form .weekly-cell {
  min-height: 82px !important;
  background: #f8fbff !important;
}
@media (max-width: 1250px) {
  body.weekly-plan-light-page .weekly-advanced-sheet-title { grid-template-columns: 1fr; }
  body.weekly-plan-light-page .weekly-sheet-actions { grid-template-columns: 1fr; justify-content: stretch; }
  body.weekly-plan-light-page .weekly-grid,
  body.weekly-plan-light-page.menu-panel-open .weekly-grid {
    grid-template-columns: 24px .72fr 1.8fr 1.35fr 1fr 1.05fr .78fr !important;
  }
  body.weekly-plan-light-page .weekly-cell { padding: 8px 8px !important; }
  body.weekly-plan-light-page .weekly-cell input,
  body.weekly-plan-light-page .weekly-cell textarea { font-size: 12.5px !important; }
  body.weekly-plan-light-page .weekly-actions-cell button { font-size: 11px !important; }
}

/* v0_18_15 - Piano uscite compatto stile Excel/Numbers + menu sempre scuro */
/* Menu: mantiene sempre tema scuro e selezioni liquid glass, anche con data-theme=light e pannello espanso */
html[data-theme="light"] .sidebar,
html[data-theme="light"] .sidebar-head,
html[data-theme="light"] .sidebar-footer,
html[data-theme="light"] .lab-nav-zone,
.sidebar,
.sidebar-head,
.sidebar-footer,
.lab-nav-zone{
  background:#111319!important;
  color:#eef3fb!important;
}
html[data-theme="light"] .sidebar{border-right:1px solid rgba(148,163,184,.22)!important;}
html[data-theme="light"] .main-nav a,
html[data-theme="light"] .sidebar-utility,
html[data-theme="light"] .theme-toggle,
html[data-theme="light"] .logout{
  color:#d9e4f4!important;
  background:transparent!important;
  border-color:transparent!important;
}
html[data-theme="light"] .main-nav a:hover,
html[data-theme="light"] .sidebar-utility:hover,
html[data-theme="light"] .theme-toggle:hover,
html[data-theme="light"] .logout:hover{
  background:rgba(255,255,255,.075)!important;
  color:#fff!important;
}
.nav-section-pill.productivity-pill,
.lab-nav-zone .lab-pill,
html[data-theme="light"] .nav-section-pill.productivity-pill,
html[data-theme="light"] .lab-nav-zone .lab-pill,
.menu-panel-open .nav-section-pill.productivity-pill,
.menu-panel-open .lab-nav-zone .lab-pill,
html[data-theme="light"].menu-panel-open .nav-section-pill.productivity-pill,
html[data-theme="light"].menu-panel-open .lab-nav-zone .lab-pill{
  background:rgba(255,255,255,.075)!important;
  border:1px solid rgba(255,255,255,.12)!important;
  color:#f8fbff!important;
  border-radius:17px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08)!important;
}
.lab-nav-zone .lab-pill.active,
.lab-nav-zone .lab-pill:hover,
.menu-panel-open .lab-nav-zone .lab-pill,
html[data-theme="light"] .lab-nav-zone .lab-pill.active,
html[data-theme="light"] .lab-nav-zone .lab-pill:hover,
html[data-theme="light"].menu-panel-open .lab-nav-zone .lab-pill{
  background:rgba(255,255,255,.12)!important;
  border-color:rgba(255,255,255,.20)!important;
  color:#fff!important;
}
html[data-theme="light"] .main-nav a.active,
.main-nav a.active,
html[data-theme="light"] .sidebar-utility.active,
.sidebar-utility.active{
  background:rgba(255,255,255,.115)!important;
  color:#fff!important;
  border-left-color:transparent!important;
  border-radius:15px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.075)!important;
}
html[data-theme="light"] .nav-group-label,
.nav-group-label{color:#8fa2c4!important;}
html[data-theme="light"] .theme-switch{background:#20242f!important;border-color:rgba(255,255,255,.16)!important;}
html[data-theme="light"] .expanded-menu-panel,
.expanded-menu-panel{
  background:#14171f!important;
  color:#eef3fb!important;
  border-left:1px solid rgba(148,163,184,.20)!important;
  border-right:1px solid rgba(148,163,184,.18)!important;
}
html[data-theme="light"] .expanded-user-card,
.expanded-user-card,
html[data-theme="light"] .global-search-box,
.global-search-box{
  background:rgba(255,255,255,.045)!important;
  color:#eef3fb!important;
  border-color:rgba(255,255,255,.11)!important;
}
html[data-theme="light"] .global-search-input-wrap,
.global-search-input-wrap{background:rgba(8,12,20,.65)!important;border-color:rgba(255,255,255,.12)!important;}
html[data-theme="light"] .global-search-input-wrap input,
.global-search-input-wrap input{color:#eef3fb!important;}
html[data-theme="light"] .expanded-card,
.expanded-card{background:transparent!important;border-color:transparent!important;color:#dfe7f6!important;}
html[data-theme="light"] .expanded-card:hover,
.expanded-card:hover,
html[data-theme="light"] .expanded-card.active,
.expanded-card.active{
  background:rgba(255,255,255,.105)!important;
  border-color:rgba(255,255,255,.14)!important;
  border-radius:16px!important;
  color:#fff!important;
}

/* Piano uscite: griglia compatta stile foglio di calcolo */
body.weekly-plan-light-page{
  background:#f4f6f8!important;
}
body.weekly-plan-light-page .weekly-plan-light-hero{
  background:#ffffff!important;
  border:1px solid #d6dde6!important;
  box-shadow:0 10px 28px rgba(15,23,42,.07)!important;
}
body.weekly-plan-light-page .weekly-toolbar-panel,
body.weekly-plan-light-page .weekly-sheet-title,
body.weekly-plan-light-page .weekly-day-section{
  background:#ffffff!important;
  border:1px solid #d7dfe9!important;
  box-shadow:0 8px 22px rgba(15,23,42,.055)!important;
}
body.weekly-plan-light-page .weekly-sheet-title{padding:14px 16px!important;}
body.weekly-plan-light-page .weekly-advanced-sheet-title{gap:12px!important;}
body.weekly-plan-light-page .weekly-plan-search-wrap input{min-height:36px!important;border-radius:10px!important;font-size:13px!important;background:#fff!important;border-color:#c7d2df!important;}
body.weekly-plan-light-page .weekly-today-button{min-height:36px!important;border-radius:10px!important;padding:0 12px!important;}
body.weekly-plan-light-page .weekly-day-section{
  border-radius:14px!important;
  overflow:hidden!important;
  margin:16px 4px!important;
  max-width:calc(100% - 8px)!important;
}
body.weekly-plan-light-page .weekly-current-day{box-shadow:0 0 0 2px #f59e0b inset, 0 8px 22px rgba(15,23,42,.06)!important;}
body.weekly-plan-light-page .weekly-day-header{
  min-height:48px!important;
  padding:9px 15px!important;
  background:linear-gradient(90deg,#128d87,#0e79ad)!important;
}
body.weekly-plan-light-page .weekly-day-title h2{
  font-size:clamp(17px,1.55vw,22px)!important;
  letter-spacing:.035em!important;
  line-height:1.12!important;
  text-shadow:none!important;
}
body.weekly-plan-light-page .weekly-day-stats{gap:8px!important;}
body.weekly-plan-light-page .weekly-day-stats span{
  min-height:28px!important;
  padding:0 10px!important;
  font-size:12px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.14)!important;
  border-color:rgba(255,255,255,.24)!important;
}
body.weekly-plan-light-page .weekly-table-shell,
body.weekly-plan-light-page .weekly-excel-table-shell{
  border-top:1px solid #b9c6d5!important;
  overflow:hidden!important;
  background:#fff!important;
}
body.weekly-plan-light-page .weekly-grid,
body.weekly-plan-light-page.menu-panel-open .weekly-grid,
body.weekly-plan-light-page .weekly-add-grid,
body.weekly-plan-light-page.menu-panel-open .weekly-add-grid{
  grid-template-columns:24px minmax(84px,.68fr) minmax(185px,2.12fr) minmax(150px,1.42fr) minmax(122px,1.05fr) minmax(132px,1.03fr) minmax(104px,.72fr)!important;
  min-width:0!important;
  max-width:100%!important;
  width:100%!important;
}
body.weekly-plan-light-page .weekly-grid-head{
  background:#edf3fa!important;
  border-bottom:1px solid #9fb1c5!important;
}
body.weekly-plan-light-page .weekly-grid-head div{
  min-height:32px!important;
  padding:0 8px!important;
  font-size:10px!important;
  letter-spacing:.06em!important;
  color:#172033!important;
  border-right:1px solid #c8d2df!important;
  font-weight:800!important;
  text-transform:uppercase!important;
}
body.weekly-plan-light-page .weekly-row-grid,
body.weekly-plan-light-page .weekly-add-grid{
  min-height:38px!important;
  background:#ffffff!important;
  border-bottom:1px solid #cfd8e3!important;
}
body.weekly-plan-light-page .weekly-row-alt{background:#f7fbff!important;}
body.weekly-plan-light-page .weekly-row-grid:hover{background:#fffdf4!important;}
body.weekly-plan-light-page .weekly-cell,
body.weekly-plan-light-page .weekly-add-form .weekly-cell{
  min-height:38px!important;
  padding:3px 7px!important;
  border-right:1px solid #cfd8e3!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  background:transparent!important;
  overflow:visible!important;
}
body.weekly-plan-light-page .weekly-row-alt .weekly-cell{background:rgba(235,246,255,.56)!important;}
body.weekly-plan-light-page .weekly-cell input,
body.weekly-plan-light-page .weekly-cell textarea,
body.weekly-plan-light-page .weekly-add-grid input,
body.weekly-plan-light-page .weekly-add-grid textarea{
  min-height:28px!important;
  height:28px;
  padding:5px 3px!important;
  font-size:12.2px!important;
  line-height:1.18!important;
  font-weight:650!important;
  overflow:auto!important;
  resize:vertical!important;
  background:transparent!important;
}
body.weekly-plan-light-page .weekly-cell input{height:28px!important;}
body.weekly-plan-light-page .weekly-cell textarea:focus,
body.weekly-plan-light-page .weekly-cell input:focus{
  outline:1.5px solid #2563eb!important;
  background:#fff!important;
}
body.weekly-plan-light-page .weekly-drag-cell{
  align-items:center!important;
  justify-content:center!important;
  padding:0!important;
  background:#f1f5f9!important;
}
body.weekly-plan-light-page .weekly-drag-handle{font-size:14px!important;padding:0!important;color:#75859a!important;}
body.weekly-plan-light-page .client-cell{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:3px!important;
  align-content:start!important;
}
body.weekly-plan-light-page .client-cell strong,
body.weekly-plan-light-page .client-cell input{font-size:12.4px!important;font-weight:800!important;}
body.weekly-plan-light-page .weekly-client-add{
  width:max-content!important;
  max-width:100%!important;
  min-height:18px!important;
  padding:1px 6px!important;
  border-radius:6px!important;
  border:1px solid #c3d5ef!important;
  background:#f8fafc!important;
  color:#2563eb!important;
  font-size:10.5px!important;
  font-weight:800!important;
  line-height:1!important;
  cursor:pointer!important;
}
body.weekly-plan-light-page .weekly-client-add.compact{width:20px!important;height:18px!important;padding:0!important;display:grid!important;place-items:center!important;}
body.weekly-plan-light-page .same-client-marker{font-size:14px!important;margin:0!important;color:#74849a!important;}
body.weekly-plan-light-page .acceptance-cell{padding-right:28px!important;position:relative!important;}
body.weekly-plan-light-page .acceptance-highlighted,
body.weekly-plan-light-page .acceptance-highlighted textarea,
body.weekly-plan-light-page .acceptance-highlighted .cell-readonly-text{background:#fff275!important;}
body.weekly-plan-light-page .cell-highlight-toggle.icon-only{
  top:5px!important;right:5px!important;
  width:18px!important;height:18px!important;
  border-radius:4px!important;
  border:1px solid #d2a100!important;
  background:linear-gradient(180deg,#ffe15a 0 50%,#f2c100 50% 100%)!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.38)!important;
  color:#7a4b00!important;
  font-size:12px!important;
  line-height:1!important;
  padding:0!important;
}
body.weekly-plan-light-page .cell-highlight-toggle.icon-only.active{background:#fff275!important;color:#7a4b00!important;}
body.weekly-plan-light-page .cell-highlight-toggle.icon-only:not(.active)::before{content:"";width:10px;height:10px;background:#facc15;border:1px solid #b7791f;border-radius:2px;display:block;}
body.weekly-plan-light-page .cell-readonly-text{font-size:12.2px!important;line-height:1.22!important;padding:4px 2px!important;font-weight:650!important;}
body.weekly-plan-light-page .confirmation-cell{background:#eef8f1!important;}
body.weekly-plan-light-page .weekly-row-alt .confirmation-cell{background:#dff2ff!important;}
body.weekly-plan-light-page .confirmation-list{gap:3px!important;align-content:flex-start!important;}
body.weekly-plan-light-page .confirmation-chip,
body.weekly-plan-light-page .confirmation-empty,
body.weekly-plan-light-page .confirmation-chip-form button{
  min-height:20px!important;
  padding:2px 7px!important;
  border-radius:999px!important;
  font-size:10.8px!important;
  line-height:1.15!important;
  font-weight:750!important;
}
body.weekly-plan-light-page .weekly-actions-cell{
  display:grid!important;
  grid-template-columns:1fr auto!important;
  grid-template-rows:26px 22px!important;
  gap:3px!important;
  align-items:center!important;
  justify-items:stretch!important;
  padding:4px 6px!important;
}
body.weekly-plan-light-page .weekly-actions-cell .weekly-save-compact,
body.weekly-plan-light-page .weekly-add-form .weekly-actions-cell .primary{
  grid-column:1 / -1!important;
  width:100%!important;
  min-height:26px!important;
  height:26px!important;
  padding:0 8px!important;
  border-radius:7px!important;
  font-size:11px!important;
  font-weight:850!important;
}
body.weekly-plan-light-page .weekly-icon-actions{
  grid-column:1 / -1!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
}
body.weekly-plan-light-page .weekly-confirm-icon,
body.weekly-plan-light-page .weekly-delete-icon{
  width:26px!important;height:22px!important;min-height:22px!important;
  padding:0!important;border-radius:7px!important;
  display:grid!important;place-items:center!important;
  font-size:13px!important;font-weight:900!important;line-height:1!important;
}
body.weekly-plan-light-page .weekly-confirm-icon{background:#e7f8ec!important;border:1px solid #22c55e!important;color:#047857!important;}
body.weekly-plan-light-page .weekly-confirm-icon.confirmed{background:#16a34a!important;color:#fff!important;}
body.weekly-plan-light-page .weekly-delete-icon{background:#fff1f2!important;border:1px solid #fda4af!important;color:#be123c!important;font-size:12px!important;}
body.weekly-plan-light-page .weekly-row-meta{display:none!important;}
body.weekly-plan-light-page .weekly-empty-day{padding:12px 16px!important;font-size:13px!important;background:#fff!important;}
body.weekly-plan-light-page .weekly-add-row{background:#f8fafc!important;border-top:1px solid #cfd8e3!important;}
body.weekly-plan-light-page .weekly-add-row summary{padding:9px 14px!important;font-size:13px!important;color:#075985!important;}
body.weekly-plan-light-page .weekly-add-form .weekly-cell{background:#fbfdff!important;}
@media (max-width:1250px){
  body.weekly-plan-light-page .weekly-grid,
  body.weekly-plan-light-page.menu-panel-open .weekly-grid,
  body.weekly-plan-light-page .weekly-add-grid,
  body.weekly-plan-light-page.menu-panel-open .weekly-add-grid{
    grid-template-columns:22px minmax(72px,.62fr) minmax(155px,1.86fr) minmax(126px,1.25fr) minmax(104px,.9fr) minmax(116px,.92fr) minmax(92px,.64fr)!important;
  }
  body.weekly-plan-light-page .weekly-grid-head div{font-size:8.9px!important;padding:0 5px!important;}
  body.weekly-plan-light-page .weekly-cell{padding:3px 5px!important;}
  body.weekly-plan-light-page .weekly-cell input,
  body.weekly-plan-light-page .weekly-cell textarea{font-size:11.4px!important;}
}
@media (max-width:980px){
  body.weekly-plan-light-page .weekly-excel-table-shell{overflow-x:auto!important;}
  body.weekly-plan-light-page .weekly-grid,
  body.weekly-plan-light-page .weekly-add-grid{min-width:900px!important;}
}

/* MOD31 - v0.18.16 - Piano uscite righe ultracompatte, gruppi cliente e menu coerente */
body.weekly-plan-light-page .weekly-day-header{
  min-height:40px!important;
  padding:7px 13px!important;
}
body.weekly-plan-light-page .weekly-day-title h2{
  font-size:clamp(14px,1.15vw,18px)!important;
  letter-spacing:.025em!important;
  line-height:1.05!important;
  font-weight:850!important;
}
body.weekly-plan-light-page .weekly-day-stats span{
  min-height:23px!important;
  padding:0 8px!important;
  font-size:10.8px!important;
}
body.weekly-plan-light-page .weekly-grid,
body.weekly-plan-light-page.menu-panel-open .weekly-grid,
body.weekly-plan-light-page .weekly-add-grid,
body.weekly-plan-light-page.menu-panel-open .weekly-add-grid{
  grid-template-columns:20px minmax(72px,.58fr) minmax(190px,2.15fr) minmax(142px,1.25fr) minmax(105px,.85fr) minmax(126px,.88fr) minmax(116px,.72fr)!important;
}
body.weekly-plan-light-page .weekly-grid-head div{
  min-height:25px!important;
  padding:0 6px!important;
  font-size:9.3px!important;
  letter-spacing:.055em!important;
}
body.weekly-plan-light-page .weekly-row-grid,
body.weekly-plan-light-page .weekly-add-grid{
  min-height:29px!important;
  border-bottom:1px solid #c9d4e1!important;
}
body.weekly-plan-light-page .weekly-row-grid.weekly-new-client-group{
  border-top:3px solid #7d93ad!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.85)!important;
}
body.weekly-plan-light-page .weekly-row-grid.weekly-new-client-group .weekly-cell{
  padding-top:5px!important;
}
body.weekly-plan-light-page .weekly-cell,
body.weekly-plan-light-page .weekly-add-form .weekly-cell{
  min-height:29px!important;
  padding:2px 6px!important;
  align-items:flex-start!important;
}
body.weekly-plan-light-page .weekly-cell input,
body.weekly-plan-light-page .weekly-cell textarea,
body.weekly-plan-light-page .weekly-add-grid input,
body.weekly-plan-light-page .weekly-add-grid textarea{
  min-height:21px!important;
  height:21px!important;
  padding:2px 3px!important;
  font-size:11.2px!important;
  line-height:1.16!important;
  font-weight:650!important;
  resize:vertical!important;
  overflow:auto!important;
}
body.weekly-plan-light-page .client-cell{
  gap:1px!important;
  align-content:start!important;
}
body.weekly-plan-light-page .client-cell strong,
body.weekly-plan-light-page .client-cell input{
  font-size:11.4px!important;
  line-height:1.1!important;
}
body.weekly-plan-light-page .weekly-client-add{
  min-height:16px!important;
  height:16px!important;
  padding:0 5px!important;
  border-radius:5px!important;
  font-size:9.8px!important;
  line-height:1!important;
}
body.weekly-plan-light-page .weekly-client-add.compact{
  width:18px!important;
  height:16px!important;
  min-height:16px!important;
}
body.weekly-plan-light-page .same-client-marker{
  font-size:12px!important;
  line-height:1!important;
}
body.weekly-plan-light-page .weekly-drag-cell{
  min-height:29px!important;
}
body.weekly-plan-light-page .weekly-drag-handle{
  font-size:12px!important;
  line-height:1!important;
}
body.weekly-plan-light-page .acceptance-cell{
  padding-right:25px!important;
}
body.weekly-plan-light-page .cell-highlight-toggle.icon-only{
  top:3px!important;
  right:4px!important;
  width:16px!important;
  height:16px!important;
  border-radius:4px!important;
  background:#f8d447!important;
}
body.weekly-plan-light-page .cell-highlight-toggle.icon-only:not(.active)::before{
  width:8px!important;
  height:8px!important;
  background:#eab308!important;
}
body.weekly-plan-light-page .confirmation-list{
  gap:2px!important;
}
body.weekly-plan-light-page .confirmation-chip,
body.weekly-plan-light-page .confirmation-empty,
body.weekly-plan-light-page .confirmation-chip-form button{
  min-height:17px!important;
  padding:1px 6px!important;
  font-size:9.8px!important;
  line-height:1.05!important;
}
body.weekly-plan-light-page .weekly-actions-cell{
  display:grid!important;
  grid-template-columns:minmax(48px,1fr) 24px 24px!important;
  grid-template-rows:24px!important;
  gap:4px!important;
  align-items:center!important;
  justify-items:stretch!important;
  padding:2px 5px!important;
  min-height:29px!important;
}
body.weekly-plan-light-page .weekly-actions-cell .weekly-save-compact,
body.weekly-plan-light-page .weekly-add-form .weekly-actions-cell .primary{
  grid-column:auto!important;
  width:100%!important;
  min-height:24px!important;
  height:24px!important;
  padding:0 6px!important;
  border-radius:6px!important;
  font-size:10.3px!important;
  line-height:1!important;
}
body.weekly-plan-light-page .weekly-icon-actions{
  grid-column:auto!important;
  display:contents!important;
}
body.weekly-plan-light-page .weekly-confirm-icon,
body.weekly-plan-light-page .weekly-delete-icon{
  width:24px!important;
  height:24px!important;
  min-height:24px!important;
  border-radius:6px!important;
  font-size:12px!important;
}
body.weekly-plan-light-page .weekly-delete-icon{
  font-size:10px!important;
}
body.weekly-plan-light-page .cell-readonly-text{
  font-size:11.2px!important;
  line-height:1.16!important;
  padding:2px!important;
}
body.weekly-plan-light-page .weekly-add-row summary{
  padding:7px 12px!important;
  font-size:12px!important;
}
@media (max-width:1250px){
  body.weekly-plan-light-page .weekly-grid,
  body.weekly-plan-light-page.menu-panel-open .weekly-grid,
  body.weekly-plan-light-page .weekly-add-grid,
  body.weekly-plan-light-page.menu-panel-open .weekly-add-grid{
    grid-template-columns:18px minmax(62px,.48fr) minmax(150px,1.72fr) minmax(112px,1.08fr) minmax(90px,.78fr) minmax(106px,.82fr) minmax(104px,.72fr)!important;
  }
  body.weekly-plan-light-page .weekly-grid-head div{font-size:8.4px!important;padding:0 4px!important;}
  body.weekly-plan-light-page .weekly-cell{padding:2px 4px!important;}
  body.weekly-plan-light-page .weekly-cell input,
  body.weekly-plan-light-page .weekly-cell textarea{font-size:10.4px!important;}
  body.weekly-plan-light-page .weekly-actions-cell{grid-template-columns:minmax(42px,1fr) 22px 22px!important;gap:3px!important;padding:2px 3px!important;}
  body.weekly-plan-light-page .weekly-confirm-icon,
  body.weekly-plan-light-page .weekly-delete-icon{width:22px!important;height:23px!important;min-height:23px!important;}
  body.weekly-plan-light-page .weekly-actions-cell .weekly-save-compact{font-size:9.5px!important;}
}
/* Sidebar: riquadri liquid glass uniformi e sempre scuri anche in tema chiaro */
.nav-section-pill.productivity-pill,
.lab-nav-zone .lab-pill,
html[data-theme="light"] .nav-section-pill.productivity-pill,
html[data-theme="light"] .lab-nav-zone .lab-pill{
  width:100%!important;
  height:40px!important;
  min-height:40px!important;
  margin:0!important;
  padding:0 12px!important;
  border:1px solid rgba(255,255,255,.10)!important;
  border-radius:13px!important;
  background:rgba(255,255,255,.075)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045)!important;
  color:#ffffff!important;
  font-size:11px!important;
  font-weight:850!important;
  letter-spacing:.17em!important;
  text-transform:uppercase!important;
  justify-content:flex-start!important;
  gap:10px!important;
}
.nav-section-pill.productivity-pill{
  margin:0 0 7px 0!important;
}
.lab-nav-zone .lab-pill{
  margin:0!important;
}
.nav-section-pill.productivity-pill .nav-icon,
html[data-theme="light"] .nav-section-pill.productivity-pill .nav-icon,
.lab-nav-zone .lab-pill .nav-icon,
html[data-theme="light"] .lab-nav-zone .lab-pill .nav-icon{
  display:inline-flex!important;
  width:25px!important;
  height:25px!important;
  color:#dbeafe!important;
}
.nav-section-pill.productivity-pill .nav-text,
.lab-nav-zone .lab-pill .nav-text{
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.nav-section-pill.productivity-pill:hover,
.lab-nav-zone .lab-pill:hover,
.lab-nav-zone .lab-pill.active,
.menu-panel-open .lab-nav-zone .lab-pill,
html[data-theme="light"] .nav-section-pill.productivity-pill:hover,
html[data-theme="light"] .lab-nav-zone .lab-pill:hover,
html[data-theme="light"] .lab-nav-zone .lab-pill.active,
html[data-theme="light"].menu-panel-open .lab-nav-zone .lab-pill{
  background:rgba(255,255,255,.105)!important;
  border-color:rgba(255,255,255,.14)!important;
  color:#fff!important;
}
.main-nav .nav-section-pill.productivity-pill{
  flex:0 0 auto!important;
}
.sidebar-collapsed .nav-section-pill.productivity-pill,
.sidebar-collapsed .lab-pill{
  width:44px!important;
  height:44px!important;
  min-height:44px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding:0!important;
  justify-content:center!important;
}
.sidebar-collapsed .nav-section-pill.productivity-pill .nav-text,
.sidebar-collapsed .lab-pill .nav-text,
.sidebar-collapsed .lab-pill .flyout-arrow{
  display:none!important;
}


/* MOD32 - v0.18.17 - Restyle Piano uscite stile Apple Numbers/Excel */
body.weekly-plan-light-page{
  --numbers-green:#118a53;
  --numbers-green-dark:#0b6f45;
  --numbers-grid:#c9d3df;
  --numbers-grid-strong:#90a4bb;
  --numbers-head:#f3f6fa;
  --numbers-row:#ffffff;
  --numbers-row-alt:#f7fbff;
  --numbers-new-client:#7e95ad;
}
body.weekly-plan-light-page .weekly-plan-light-hero,
body.weekly-plan-light-page .weekly-toolbar-panel,
body.weekly-plan-light-page .weekly-sheet-title{
  background:#ffffff!important;
  border-color:#d8e0ea!important;
  box-shadow:0 12px 30px rgba(15,23,42,.06)!important;
}
body.weekly-plan-light-page .weekly-day-section{
  background:#fff!important;
  border:1px solid #d0dae6!important;
  border-radius:16px!important;
  box-shadow:0 10px 26px rgba(15,23,42,.07)!important;
  overflow:hidden!important;
}
body.weekly-plan-light-page .weekly-current-day{
  border-color:#f59e0b!important;
  box-shadow:inset 0 0 0 3px rgba(245,158,11,.72),0 10px 26px rgba(15,23,42,.08)!important;
}
body.weekly-plan-light-page .weekly-day-header,
body.weekly-plan-light-page .weekly-day-light-header{
  min-height:42px!important;
  padding:7px 16px!important;
  background:linear-gradient(90deg,var(--numbers-green-dark),var(--numbers-green))!important;
  border-bottom:1px solid rgba(0,0,0,.18)!important;
}
body.weekly-plan-light-page .weekly-day-title h2{
  font-size:clamp(15px,1.28vw,20px)!important;
  line-height:1.05!important;
  font-weight:800!important;
  letter-spacing:.02em!important;
  text-shadow:0 1px 1px rgba(0,0,0,.18)!important;
}
body.weekly-plan-light-page .weekly-day-stats span{
  min-height:22px!important;
  padding:0 9px!important;
  font-size:10.6px!important;
  border-color:rgba(255,255,255,.26)!important;
  background:rgba(255,255,255,.13)!important;
}
body.weekly-plan-light-page .weekly-excel-table-shell{
  border:1px solid var(--numbers-grid-strong)!important;
  border-top:0!important;
  background:#fff!important;
  overflow:hidden!important;
}
body.weekly-plan-light-page .weekly-grid,
body.weekly-plan-light-page.menu-panel-open .weekly-grid,
body.weekly-plan-light-page .weekly-add-grid,
body.weekly-plan-light-page.menu-panel-open .weekly-add-grid{
  grid-template-columns:22px minmax(80px,.58fr) minmax(210px,2.02fr) minmax(150px,1.22fr) minmax(112px,.88fr) minmax(135px,.86fr) minmax(128px,.72fr)!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
}
body.weekly-plan-light-page .weekly-excel-grid-head,
body.weekly-plan-light-page .weekly-grid-head{
  background:var(--numbers-head)!important;
  border-bottom:1px solid var(--numbers-grid-strong)!important;
}
body.weekly-plan-light-page .weekly-excel-grid-head div,
body.weekly-plan-light-page .weekly-grid-head div{
  min-height:38px!important;
  padding:0 8px!important;
  display:flex!important;
  align-items:center!important;
  color:#111827!important;
  font-size:10px!important;
  font-weight:800!important;
  line-height:1.05!important;
  letter-spacing:.055em!important;
  text-transform:uppercase!important;
  border-right:1px solid var(--numbers-grid)!important;
  background:transparent!important;
}
body.weekly-plan-light-page .weekly-row-grid,
body.weekly-plan-light-page .weekly-add-grid{
  min-height:34px!important;
  border-bottom:1px solid var(--numbers-grid)!important;
  background:var(--numbers-row)!important;
  align-items:stretch!important;
}
body.weekly-plan-light-page .weekly-row-grid.weekly-row-alt{
  background:var(--numbers-row-alt)!important;
}
body.weekly-plan-light-page .weekly-row-grid.weekly-new-client-group{
  border-top:2px solid var(--numbers-new-client)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9)!important;
}
body.weekly-plan-light-page .weekly-row-grid:hover{
  background:#fffdf2!important;
}
body.weekly-plan-light-page .weekly-row-grid.weekly-search-hit{
  background:#fff7d6!important;
  box-shadow:inset 0 0 0 2px rgba(245,158,11,.42)!important;
}
body.weekly-plan-light-page .weekly-cell,
body.weekly-plan-light-page .weekly-add-form .weekly-cell{
  min-height:34px!important;
  height:auto!important;
  padding:3px 7px!important;
  border-right:1px solid var(--numbers-grid)!important;
  display:flex!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  overflow:visible!important;
  background:transparent!important;
  color:#0f172a!important;
}
body.weekly-plan-light-page .weekly-row-alt .weekly-cell{
  background:rgba(239,247,255,.45)!important;
}
body.weekly-plan-light-page .weekly-drag-cell{
  min-height:34px!important;
  padding:0!important;
  align-items:center!important;
  justify-content:center!important;
  background:#f6f8fb!important;
}
body.weekly-plan-light-page .weekly-drag-handle{
  font-size:13px!important;
  color:#64748b!important;
  padding:0!important;
  line-height:1!important;
}
body.weekly-plan-light-page .client-cell{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:2px!important;
  align-content:start!important;
  padding-top:5px!important;
}
body.weekly-plan-light-page .client-cell strong,
body.weekly-plan-light-page .client-cell input{
  font-size:11.8px!important;
  line-height:1.12!important;
  font-weight:780!important;
}
body.weekly-plan-light-page .same-client-marker{
  font-size:12px!important;
  color:#5f738a!important;
  line-height:1!important;
}
body.weekly-plan-light-page .weekly-client-add{
  min-height:15px!important;
  height:15px!important;
  width:max-content!important;
  padding:0 6px!important;
  border-radius:5px!important;
  border:1px solid #b7c9e7!important;
  background:#f8fbff!important;
  color:#2563eb!important;
  font-size:9.3px!important;
  font-weight:760!important;
  line-height:1!important;
}
body.weekly-plan-light-page .weekly-client-add.compact{
  width:18px!important;
  height:15px!important;
  min-height:15px!important;
  padding:0!important;
}
body.weekly-plan-light-page .weekly-cell input,
body.weekly-plan-light-page .weekly-cell textarea,
body.weekly-plan-light-page .weekly-add-grid input,
body.weekly-plan-light-page .weekly-add-grid textarea{
  width:100%!important;
  min-width:0!important;
  min-height:26px!important;
  height:26px!important;
  padding:3px 4px!important;
  margin:0!important;
  border:0!important;
  border-radius:2px!important;
  box-shadow:none!important;
  background:transparent!important;
  color:#0f172a!important;
  font-size:11.5px!important;
  line-height:1.18!important;
  font-weight:650!important;
  overflow:auto!important;
  resize:vertical!important;
}
body.weekly-plan-light-page .weekly-cell textarea:focus,
body.weekly-plan-light-page .weekly-cell input:focus{
  outline:1.5px solid #0a84ff!important;
  outline-offset:-1px!important;
  background:#ffffff!important;
}
body.weekly-plan-light-page .acceptance-cell{
  position:relative!important;
  padding-right:31px!important;
}
body.weekly-plan-light-page .cell-highlight-toggle.icon-only{
  position:absolute!important;
  top:6px!important;
  right:7px!important;
  width:19px!important;
  height:19px!important;
  min-height:19px!important;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  border-radius:5px!important;
  border:1px solid #c99600!important;
  background:linear-gradient(180deg,#ffe062,#f7c316)!important;
  color:#6b4a00!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.72),0 1px 2px rgba(15,23,42,.10)!important;
}
body.weekly-plan-light-page .cell-highlight-toggle.icon-only .highlight-pen-icon{
  width:13px!important;
  height:13px!important;
  display:block!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.9!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
body.weekly-plan-light-page .cell-highlight-toggle.icon-only::before{content:none!important;display:none!important;}
body.weekly-plan-light-page .cell-highlight-toggle.icon-only.active::after{
  content:"×"!important;
  position:absolute!important;
  right:-6px!important;
  top:-7px!important;
  width:12px!important;
  height:12px!important;
  border-radius:999px!important;
  background:#111827!important;
  color:#fff!important;
  font-size:9px!important;
  line-height:11px!important;
  text-align:center!important;
  font-weight:800!important;
}
body.weekly-plan-light-page .acceptance-highlighted,
body.weekly-plan-light-page .acceptance-highlighted textarea,
body.weekly-plan-light-page .acceptance-highlighted .cell-readonly-text{
  background:#fff07a!important;
}
body.weekly-plan-light-page .cell-readonly-text{
  min-height:26px!important;
  padding:4px 3px!important;
  font-size:11.5px!important;
  line-height:1.18!important;
  font-weight:650!important;
}
body.weekly-plan-light-page .confirmation-cell{
  background:#eef9f2!important;
  align-items:center!important;
  padding-top:3px!important;
  padding-bottom:3px!important;
}
body.weekly-plan-light-page .weekly-row-alt .confirmation-cell{
  background:#e7f4fb!important;
}
body.weekly-plan-light-page .confirmation-list{
  width:100%!important;
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  align-content:center!important;
  gap:3px!important;
  min-height:26px!important;
}
body.weekly-plan-light-page .confirmation-chip,
body.weekly-plan-light-page .confirmation-empty,
body.weekly-plan-light-page .confirmation-chip-form button{
  min-height:18px!important;
  padding:2px 7px!important;
  border-radius:999px!important;
  font-size:9.9px!important;
  line-height:1.05!important;
  font-weight:730!important;
}
body.weekly-plan-light-page .weekly-actions-cell{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:center!important;
  gap:5px!important;
  min-height:34px!important;
  padding:4px 6px!important;
  white-space:nowrap!important;
  overflow:visible!important;
}
body.weekly-plan-light-page .weekly-actions-cell .weekly-save-compact,
body.weekly-plan-light-page .weekly-add-form .weekly-actions-cell .primary{
  width:auto!important;
  min-width:50px!important;
  height:24px!important;
  min-height:24px!important;
  padding:0 9px!important;
  border-radius:6px!important;
  font-size:10.4px!important;
  line-height:1!important;
  font-weight:780!important;
  background:#eef2f7!important;
  border:1px solid #9fb1c5!important;
  color:#0f172a!important;
}
body.weekly-plan-light-page .weekly-icon-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:5px!important;
}
body.weekly-plan-light-page .weekly-confirm-icon,
body.weekly-plan-light-page .weekly-delete-icon{
  width:25px!important;
  min-width:25px!important;
  height:24px!important;
  min-height:24px!important;
  padding:0!important;
  border-radius:7px!important;
  display:grid!important;
  place-items:center!important;
  font-size:12px!important;
  font-weight:900!important;
  line-height:1!important;
}
body.weekly-plan-light-page .weekly-confirm-icon{
  background:#e9fbef!important;
  border:1px solid #20b15a!important;
  color:#08783d!important;
}
body.weekly-plan-light-page .weekly-confirm-icon.confirmed{
  background:#20b15a!important;
  border-color:#15803d!important;
  color:#fff!important;
}
body.weekly-plan-light-page .weekly-delete-icon{
  background:#fff1f2!important;
  border:1px solid #fb7185!important;
  color:#be123c!important;
  font-size:10px!important;
}
body.weekly-plan-light-page .weekly-empty-day{
  padding:10px 14px!important;
  font-size:12.2px!important;
  background:#fff!important;
}
body.weekly-plan-light-page .weekly-add-row{
  background:#f8fafc!important;
  border-top:1px solid #cbd5e1!important;
}
body.weekly-plan-light-page .weekly-add-row summary{
  padding:8px 14px!important;
  font-size:12px!important;
  color:#075985!important;
  font-weight:800!important;
}
body.weekly-plan-light-page .weekly-add-form .weekly-cell{
  background:#fbfdff!important;
}
@media (max-width:1250px){
  body.weekly-plan-light-page .weekly-grid,
  body.weekly-plan-light-page.menu-panel-open .weekly-grid,
  body.weekly-plan-light-page .weekly-add-grid,
  body.weekly-plan-light-page.menu-panel-open .weekly-add-grid{
    grid-template-columns:18px minmax(64px,.48fr) minmax(160px,1.65fr) minmax(120px,1.08fr) minmax(92px,.74fr) minmax(112px,.78fr) minmax(112px,.70fr)!important;
  }
  body.weekly-plan-light-page .weekly-excel-grid-head div,
  body.weekly-plan-light-page .weekly-grid-head div{font-size:8.8px!important;padding:0 5px!important;min-height:36px!important;}
  body.weekly-plan-light-page .weekly-cell{padding:3px 5px!important;}
  body.weekly-plan-light-page .weekly-cell input,
  body.weekly-plan-light-page .weekly-cell textarea{font-size:10.7px!important;}
  body.weekly-plan-light-page .weekly-actions-cell{gap:3px!important;padding:3px 4px!important;}
  body.weekly-plan-light-page .weekly-actions-cell .weekly-save-compact{min-width:44px!important;font-size:9.4px!important;padding:0 5px!important;}
  body.weekly-plan-light-page .weekly-confirm-icon,
  body.weekly-plan-light-page .weekly-delete-icon{width:22px!important;min-width:22px!important;height:23px!important;min-height:23px!important;}
}
@media (max-width:980px){
  body.weekly-plan-light-page .weekly-excel-table-shell{overflow-x:auto!important;}
  body.weekly-plan-light-page .weekly-grid,
  body.weekly-plan-light-page .weekly-add-grid{min-width:900px!important;}
}

/* v0.18.18 - Piano uscite: gruppi cliente colorati e riordino chiuso per cliente */
body.weekly-plan-light-page .weekly-row-grid{
  --weekly-group-color:#2563eb;
}
body.weekly-plan-light-page .weekly-row-grid.weekly-new-client-group{
  border-top:2px solid #8fa7bf!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.95)!important;
}
body.weekly-plan-light-page .weekly-row-grid.weekly-new-client-group .weekly-cell{
  border-top:2px solid #8fa7bf!important;
}
body.weekly-plan-light-page .client-cell{
  position:relative!important;
  box-shadow:inset 5px 0 0 var(--weekly-group-color)!important;
  padding-left:13px!important;
  border-left:0!important;
}
body.weekly-plan-light-page .client-cell.client-cell-continuation{
  box-shadow:inset 5px 0 0 var(--weekly-group-color)!important;
  background:linear-gradient(90deg, color-mix(in srgb, var(--weekly-group-color) 7%, transparent), transparent 42%)!important;
}
body.weekly-plan-light-page .weekly-row-grid .weekly-drag-cell{
  border-left:0!important;
  color:var(--weekly-group-color)!important;
}
body.weekly-plan-light-page .weekly-drag-handle{
  color:var(--weekly-group-color)!important;
  opacity:.78!important;
}
body.weekly-plan-light-page .weekly-row-grid.weekly-row-dragging{
  opacity:.72!important;
  box-shadow:0 0 0 2px var(--weekly-group-color),0 10px 20px rgba(15,23,42,.16)!important;
}
body.weekly-plan-light-page .same-client-marker{
  color:var(--weekly-group-color)!important;
  font-weight:900!important;
}
body.weekly-plan-light-page .weekly-client-add{
  border-color:color-mix(in srgb, var(--weekly-group-color) 55%, #ffffff)!important;
  color:var(--weekly-group-color)!important;
  background:color-mix(in srgb, var(--weekly-group-color) 8%, #ffffff)!important;
}
body.weekly-plan-light-page .weekly-client-add:hover{
  background:color-mix(in srgb, var(--weekly-group-color) 14%, #ffffff)!important;
}

/* v0.18.19 - Export Excel Piano uscite */
body.weekly-plan-light-page .weekly-sheet-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:10px!important;
  flex-wrap:wrap!important;
}
body.weekly-plan-light-page .weekly-plan-search-wrap{
  flex:1 1 360px!important;
  max-width:560px!important;
}
body.weekly-plan-light-page .weekly-export-button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:36px!important;
  padding:0 13px!important;
  border-radius:10px!important;
  border:1px solid #16a34a!important;
  background:#f0fdf4!important;
  color:#166534!important;
  font-size:12px!important;
  font-weight:900!important;
  text-decoration:none!important;
  white-space:nowrap!important;
  box-shadow:0 5px 14px rgba(22,163,74,.12)!important;
}
body.weekly-plan-light-page .weekly-export-button:hover{
  background:#dcfce7!important;
  transform:translateY(-1px)!important;
}
body.weekly-plan-light-page .weekly-export-button.primary-export{
  background:linear-gradient(135deg,#0fa95a,#098a49)!important;
  border-color:#08783d!important;
  color:#ffffff!important;
  box-shadow:0 8px 18px rgba(15,169,90,.22)!important;
}
@media (max-width:1250px){
  body.weekly-plan-light-page .weekly-export-button,
  body.weekly-plan-light-page .weekly-today-button{
    min-height:32px!important;
    padding:0 9px!important;
    font-size:11px!important;
  }
  body.weekly-plan-light-page .weekly-plan-search-wrap{flex-basis:260px!important;}
}

/* v0_18_20 - Ricerca relazioni e controllo produttivita mancante */
.relation-search-panel{margin:-2px 0 18px;padding:16px 18px;border-radius:20px;}
.relation-search-wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,520px);gap:16px;align-items:center;}
.relation-search-wrap h2{margin:2px 0 4px;font-size:20px;color:var(--ink);}
.relation-search-control{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;border:1px solid var(--line);border-radius:16px;background:var(--surface2);padding:8px 10px;}
.relation-search-control span{font-weight:900;color:var(--blue);font-size:18px;line-height:1;}
.relation-search-control input{width:100%;border:0!important;outline:0!important;background:transparent!important;color:var(--ink)!important;padding:8px 2px!important;box-shadow:none!important;}
.relation-search-count{margin-top:10px;color:var(--muted);font-size:12px;font-weight:750;}
.relation-search-hidden{display:none!important;}
.relation-search-match{outline:2px solid rgba(59,130,246,.55);outline-offset:2px;}
.calendar-day-cell.relation-search-match-cell{border-color:rgba(37,99,235,.75)!important;box-shadow:0 0 0 2px rgba(37,99,235,.18), inset 0 0 0 1px rgba(37,99,235,.18);}
.calendar-day-cell.relation-search-dim-cell{opacity:.38;filter:grayscale(.25);}
html[data-theme="light"] body.lab-reports-page .relation-search-panel{background:#ffffff;border-color:#d4dde9;color:#111827;}
html[data-theme="light"] body.lab-reports-page .relation-search-control{background:#f8fafc;border-color:#cbd5e1;}
html[data-theme="light"] body.lab-reports-page .relation-search-control input{color:#111827!important;}
@media(max-width:900px){.relation-search-wrap{grid-template-columns:1fr}.relation-search-control{grid-template-columns:auto minmax(0,1fr)}}

.missing-productivity-panel{margin:0 0 16px;padding:16px 18px;border-radius:20px;}
.missing-productivity-head{align-items:flex-start!important;}
.missing-productivity-head h2{margin:2px 0 4px;font-size:21px;}
.missing-productivity-summary{display:inline-flex;align-items:center;gap:8px;margin:8px 0 12px;padding:8px 12px;border-radius:999px;background:rgba(245,158,11,.12);border:1px solid rgba(245,158,11,.28);color:#fbbf24;font-weight:850;}
.missing-productivity-summary strong{font-size:18px;color:#fff;}
.missing-productivity-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px;max-height:360px;overflow:auto;padding-right:4px;}
.missing-operator-card{border:1px solid var(--line);border-radius:16px;background:var(--surface2);padding:12px;display:grid;gap:9px;}
.missing-operator-title{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;}
.missing-operator-title strong{display:block;color:var(--ink);font-size:14px;line-height:1.15;}
.missing-operator-title small{display:block;margin-top:3px;color:var(--muted);font-weight:800;letter-spacing:.12em;text-transform:uppercase;font-size:10px;}
.missing-operator-title b{min-width:34px;height:28px;border-radius:12px;background:rgba(239,68,68,.16);border:1px solid rgba(239,68,68,.28);display:inline-flex;align-items:center;justify-content:center;color:#fecaca;font-size:15px;}
.missing-date-list{display:flex;gap:5px;flex-wrap:wrap;}
.missing-date-list span{font-size:11px;font-weight:800;border-radius:999px;padding:5px 7px;background:rgba(148,163,184,.13);border:1px solid rgba(148,163,184,.22);color:#dbeafe;}
.missing-date-list .more{background:rgba(59,130,246,.14);border-color:rgba(59,130,246,.30);color:#bfdbfe;}
.missing-productivity-ok{border:1px dashed rgba(34,197,94,.35);background:rgba(34,197,94,.10);color:#86efac;border-radius:16px;padding:14px;font-weight:850;}
html[data-theme="light"] .missing-productivity-panel{background:#ffffff;border-color:#d4dde9;color:#111827;}
html[data-theme="light"] .missing-productivity-summary{background:#fff7ed;border-color:#fed7aa;color:#9a3412;}
html[data-theme="light"] .missing-productivity-summary strong{color:#7c2d12;}
html[data-theme="light"] .missing-operator-card{background:#f8fafc;border-color:#d4dde9;}
html[data-theme="light"] .missing-operator-title b{background:#fee2e2;border-color:#fecaca;color:#991b1b;}
html[data-theme="light"] .missing-date-list span{background:#ffffff;border-color:#cbd5e1;color:#334155;}
html[data-theme="light"] .missing-date-list .more{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8;}
html[data-theme="light"] .missing-productivity-ok{background:#ecfdf5;border-color:#bbf7d0;color:#166534;}

/* v0.18.21 - Dashboard: riquadro dati mancanti sotto Classifica globale e selettore mese robusto */
.dashboard-side-stack{display:grid;gap:14px;align-content:start;min-width:0;}
.dashboard-side-stack>.panel{margin-bottom:0;}
.dashboard-side-stack .missing-productivity-panel{margin:0;padding:14px;border-radius:16px;}
.dashboard-side-stack .missing-productivity-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start!important;}
.dashboard-side-stack .missing-productivity-head .muted{font-size:12px;line-height:1.35;}
.dashboard-side-stack .missing-productivity-head .subtle-pill{height:auto;min-height:32px;padding:6px 12px;white-space:nowrap;line-height:1;align-self:start;max-width:none;}
.dashboard-side-stack .missing-productivity-summary{margin:4px 0 10px;font-size:13px;}
.dashboard-side-stack .missing-productivity-summary strong{font-size:17px;}
.dashboard-side-stack .missing-productivity-grid{grid-template-columns:1fr;max-height:320px;overflow:auto;padding-right:6px;scrollbar-width:thin;}
.dashboard-side-stack .missing-productivity-grid::-webkit-scrollbar{width:8px!important;display:block!important;}
.dashboard-side-stack .missing-productivity-grid::-webkit-scrollbar-thumb{background:rgba(148,163,184,.35);border-radius:999px;}
.subtle-pill{white-space:nowrap;}
.topbar-card .month-filter{flex:0 0 auto;justify-content:flex-end;align-items:flex-end;min-width:max-content;}
.topbar-card .month-selectors{flex:0 0 auto;}
.topbar-card .month-selectors label{min-width:122px;}
.topbar-card .month-selectors select{width:100%;min-width:122px;height:40px;line-height:1.15;white-space:nowrap;}
.topbar-card .month-filter .secondary{height:40px;min-height:40px;}
@media(max-width:1380px){.dashboard-side-stack .missing-productivity-head{grid-template-columns:1fr}.dashboard-side-stack .missing-productivity-head .subtle-pill{justify-self:start}.topbar-card .month-filter{min-width:0}}

/* === v0.18.22 - Ultime modifiche pre-definitiva === */
.admin-alert-card.lab-due{
  border-color:rgba(34,197,94,.42)!important;
  background:linear-gradient(135deg,rgba(34,197,94,.18),rgba(15,23,42,.94))!important;
}
.admin-alert-card.owner-greeting{
  border-color:rgba(96,165,250,.46)!important;
  background:linear-gradient(135deg,rgba(37,99,235,.18),rgba(15,23,42,.94))!important;
}
.admin-alert-card.owner-greeting .greeting-inline{display:flex;align-items:center;gap:10px;font-size:22px!important;line-height:1.1;}
.admin-alert-card.owner-greeting svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;color:#8cc7ff;}
[data-theme="light"] .admin-alert-card.lab-due{background:linear-gradient(135deg,#dcfce7,#ffffff)!important;border-color:#86efac!important;color:#064e3b!important;}
[data-theme="light"] .admin-alert-card.owner-greeting{background:linear-gradient(135deg,#dbeafe,#ffffff)!important;border-color:#93c5fd!important;color:#0f172a!important;}

/* Menu: mostra per intero Gestione laboratorio */
.lab-nav-zone .lab-pill{gap:9px!important;padding-left:13px!important;padding-right:10px!important;}
.lab-nav-zone .lab-pill .nav-icon{flex:0 0 25px!important;}
.lab-nav-zone .lab-pill .nav-text{flex:1 1 auto!important;min-width:0!important;max-width:none!important;overflow:visible!important;text-overflow:clip!important;white-space:nowrap!important;font-size:9.1px!important;letter-spacing:.13em!important;}
.lab-nav-zone .lab-pill .flyout-arrow{flex:0 0 18px!important;width:18px!important;}

/* Compila mese: 5 slot totali, accettazione prima dei campioni */
.phase-multi-row{grid-template-columns:repeat(5,minmax(150px,1fr))!important;gap:10px!important;align-items:stretch!important;}
.phase-group{min-width:0!important;padding:12px!important;}
.phase-group label{min-width:0!important;}
.phase-group input,.phase-group select{width:100%!important;min-width:0!important;}
.phase-group p{font-size:11.5px!important;line-height:1.18!important;min-height:28px!important;display:flex;align-items:center;}
@media(max-width:1450px){.phase-multi-row{grid-template-columns:repeat(3,minmax(180px,1fr))!important;}}
@media(max-width:980px){.phase-multi-row{grid-template-columns:1fr!important;}.multi-acceptance-toolbar{grid-template-columns:1fr!important;}.multi-acceptance-toolbar button{width:100%!important;}}

/* Scheda operatore: modifica anagrafica e visibilita parametri */
.operator-management-grid{margin-bottom:22px;align-items:stretch;}
.operator-edit-panel .compact-form{gap:12px;}
.operator-family-form{display:flex;flex-direction:column;gap:13px;}
.visibility-mode-check{display:flex!important;align-items:center;gap:10px;color:var(--text);font-weight:760;}
.visibility-mode-check input{width:16px;height:16px;accent-color:var(--accent);}
.parameter-family-checks{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;}
.family-chip-check{display:flex!important;align-items:center;gap:9px;min-height:42px;border:1px solid var(--border);border-radius:14px;padding:0 12px;background:var(--surface2);font-weight:850;color:var(--text);}
.family-chip-check input{width:16px;height:16px;accent-color:var(--accent);}
@media(max-width:980px){.parameter-family-checks{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:620px){.parameter-family-checks{grid-template-columns:1fr;}}

/* Tabelle editabili anagrafiche */
.editable-table-wrap,.departments-table-wrap{overflow-x:auto!important;}
.editable-param-table{min-width:1320px!important;}
.departments-table-wrap table{min-width:760px!important;}
.editable-param-table input,.editable-param-table select,.departments-table-wrap input,.departments-table-wrap select{height:38px!important;min-height:38px!important;border-radius:10px!important;padding:0 10px!important;font-size:13px!important;}
.editable-param-table .col-small{width:92px!important;}
.editable-param-table .col-note{width:250px!important;}
.inline-actions-cell{display:flex!important;align-items:center!important;gap:8px!important;min-width:170px!important;}
.inline-delete-form{margin:0!important;display:inline-flex!important;}
.small-btn{min-height:36px!important;height:36px!important;padding:0 12px!important;border-radius:10px!important;}
.editable-instrument-grid{align-items:stretch;}
.editable-instrument-card{display:flex!important;flex-direction:column!important;gap:10px!important;}
.instrument-edit-form{display:grid;grid-template-columns:minmax(130px,.7fr) minmax(170px,1fr) auto;gap:10px;align-items:end;}
.instrument-edit-form label{display:flex;flex-direction:column;gap:6px;}
.instrument-edit-form label span{font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);}
@media(max-width:760px){.instrument-edit-form{grid-template-columns:1fr;}}

/* Account > Permessi ruoli: matrice non tagliata */
.account-content{min-width:0!important;overflow:hidden!important;}
.role-matrix-wrap{width:100%!important;max-width:100%!important;overflow-x:auto!important;border-radius:18px!important;}
.role-matrix{min-width:1180px!important;table-layout:fixed!important;}
.role-matrix th:nth-child(1),.role-matrix td:nth-child(1){width:150px!important;}
.role-matrix th:nth-child(2),.role-matrix td:nth-child(2){width:190px!important;}
.role-matrix th:nth-child(3),.role-matrix td:nth-child(3){width:170px!important;}
.role-matrix th:nth-child(4),.role-matrix td:nth-child(4){width:105px!important;}
.role-matrix th:nth-child(5),.role-matrix td:nth-child(5){width:170px!important;}
.role-matrix th:nth-child(6),.role-matrix td:nth-child(6){width:190px!important;}
.role-matrix th:nth-child(7),.role-matrix td:nth-child(7){width:205px!important;}
.role-matrix td,.role-matrix th{white-space:normal!important;word-break:normal!important;overflow-wrap:anywhere!important;vertical-align:middle!important;}

/* Modalita chiara: correzioni contrasto estese */
html[data-theme="light"] .sidebar,
html[data-theme="light"] .sidebar *:not(input):not(select):not(textarea){color:#eaf2ff!important;}
html[data-theme="light"] .main-nav a,
html[data-theme="light"] .sidebar-utility,
html[data-theme="light"] .theme-toggle,
html[data-theme="light"] .logout{background:#20212c!important;border-color:rgba(255,255,255,.12)!important;color:#eaf2ff!important;}
html[data-theme="light"] .main-nav a.active{background:linear-gradient(135deg,rgba(37,99,235,.32),rgba(15,23,42,.94))!important;border-color:rgba(96,165,250,.38)!important;color:#fff!important;}
html[data-theme="light"] .nav-group-label{color:#9db5d3!important;}
html[data-theme="light"] .panel,
html[data-theme="light"] .topbar-card,
html[data-theme="light"] .page-header,
html[data-theme="light"] .kpi-card,
html[data-theme="light"] .stat-square,
html[data-theme="light"] .summary-card,
html[data-theme="light"] .editor-card,
html[data-theme="light"] .operator-tile,
html[data-theme="light"] .account-card,
html[data-theme="light"] .custom-role-card,
html[data-theme="light"] .permission-box,
html[data-theme="light"] .instrument-card,
html[data-theme="light"] .relation-detail-card,
html[data-theme="light"] .calendar-month-card,
html[data-theme="light"] .calendar-day-cell,
html[data-theme="light"] .relation-insert-box,
html[data-theme="light"] .missing-operator-card,
html[data-theme="light"] .missing-productivity-panel{background:#ffffff!important;border-color:#b6c3d3!important;color:#0f172a!important;}
html[data-theme="light"] .muted,
html[data-theme="light"] small,
html[data-theme="light"] .empty,
html[data-theme="light"] .chart-note,
html[data-theme="light"] label span{color:#334155!important;}
html[data-theme="light"] h1,
html[data-theme="light"] h2,
html[data-theme="light"] h3,
html[data-theme="light"] strong,
html[data-theme="light"] b{color:#0f172a!important;}
html[data-theme="light"] .eyebrow{color:#005fcf!important;}
html[data-theme="light"] input,
html[data-theme="light"] select,
html[data-theme="light"] textarea{background:#ffffff!important;color:#0f172a!important;border-color:#94a3b8!important;}
html[data-theme="light"] input::placeholder,
html[data-theme="light"] textarea::placeholder{color:#64748b!important;}
html[data-theme="light"] table th{background:#e2e8f0!important;color:#1e293b!important;border-color:#cbd5e1!important;}
html[data-theme="light"] table td{background:#ffffff!important;color:#0f172a!important;border-color:#d4dce8!important;}
html[data-theme="light"] .entry-pill,
html[data-theme="light"] .rank-card,
html[data-theme="light"] .dept-row,
html[data-theme="light"] .assignment-row,
html[data-theme="light"] .phase-group,
html[data-theme="light"] .family-chip-check{background:#f8fafc!important;border-color:#cbd5e1!important;color:#0f172a!important;}
html[data-theme="light"] .subtle-pill{background:#eef2f7!important;color:#1e293b!important;border-color:#cbd5e1!important;}
html[data-theme="light"] .mini-link{color:#005fcf!important;}
html[data-theme="light"] .bar{background:#dbe3ed!important;}
html[data-theme="light"] .bar i{background:linear-gradient(90deg,#005fcf,#0ea5e9)!important;}

/* v0.18.23 - fix layout pre-definitiva: dashboard, compila mese, parametri/strumenti, export e visibilita parametri */
.owner-quick-row{display:flex;justify-content:flex-start;margin:-4px 0 12px!important;}
.owner-quick-card{display:inline-flex;align-items:center;gap:10px;min-height:46px;padding:9px 13px;border-radius:16px;border:1px solid rgba(59,130,246,.36);background:linear-gradient(135deg,rgba(30,64,175,.26),rgba(15,23,42,.96));box-shadow:0 14px 34px rgba(0,0,0,.18);color:#fff;max-width:280px;}
.owner-quick-card:hover{transform:translateY(-1px);filter:brightness(1.05);}
.owner-quick-icon{width:30px;height:30px;border-radius:12px;display:grid;place-items:center;background:rgba(96,165,250,.16);color:#93c5fd;flex:none;}
.owner-quick-icon svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
.owner-quick-copy{display:grid;gap:0;line-height:1.05;min-width:0;}
.owner-quick-copy small{font-size:10px;text-transform:uppercase;letter-spacing:.16em;font-weight:850;color:#93c5fd;}
.owner-quick-copy strong{font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:150px;}
.owner-quick-card em{font-style:normal;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.13em;color:#cfe8ff;margin-left:4px;}
.admin-alert-grid.dashboard-alerts-core{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:18px!important;margin:10px 0 20px!important;align-items:stretch!important;}
.admin-alert-grid.dashboard-alerts-core .admin-alert-card{min-height:156px!important;border-radius:16px!important;padding:24px 24px!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-content:center!important;}
.admin-alert-card.lab-due{border-color:rgba(34,197,94,.46)!important;background:linear-gradient(135deg,rgba(22,101,52,.42),rgba(6,20,14,.94))!important;}
.admin-alert-card.lab-due span{color:#eafff1!important;}
.admin-alert-card.lab-due small{color:#d5fbe3!important;}
@media(max-width:1380px){.admin-alert-grid.dashboard-alerts-core{gap:12px!important}.admin-alert-grid.dashboard-alerts-core .admin-alert-card{padding:18px 16px!important}}
@media(max-width:1180px){.admin-alert-grid.dashboard-alerts-core{grid-template-columns:repeat(3,minmax(0,1fr))!important;}}
@media(max-width:760px){.admin-alert-grid.dashboard-alerts-core{grid-template-columns:1fr!important;}.owner-quick-card{width:100%;max-width:none;}}

/* Tema chiaro: card dashboard con colori visibili, non sbiaditi */
html[data-theme="light"] .owner-quick-card{background:linear-gradient(135deg,#dbeafe,#eff6ff 48%,#ffffff)!important;border-color:#60a5fa!important;color:#0f172a!important;box-shadow:0 12px 30px rgba(37,99,235,.16)!important;}
html[data-theme="light"] .owner-quick-icon{background:#bfdbfe!important;color:#1d4ed8!important;}
html[data-theme="light"] .owner-quick-copy small,html[data-theme="light"] .owner-quick-card em{color:#1d4ed8!important;}
html[data-theme="light"] .admin-alert-card.notifications{background:linear-gradient(135deg,#dbeafe,#eff6ff 48%,#ffffff)!important;border-color:#60a5fa!important;box-shadow:0 12px 30px rgba(37,99,235,.15)!important;}
html[data-theme="light"] .admin-alert-card.assistance{background:linear-gradient(135deg,#ede9fe,#f5f3ff 48%,#ffffff)!important;border-color:#8b5cf6!important;box-shadow:0 12px 30px rgba(124,58,237,.14)!important;}
html[data-theme="light"] .admin-alert-card.blocked{background:linear-gradient(135deg,#fef3c7,#fffbeb 48%,#ffffff)!important;border-color:#f59e0b!important;box-shadow:0 12px 30px rgba(217,119,6,.16)!important;}
html[data-theme="light"] .admin-alert-card.lab-due{background:linear-gradient(135deg,#bbf7d0,#dcfce7 48%,#ffffff)!important;border-color:#22c55e!important;box-shadow:0 12px 30px rgba(22,163,74,.16)!important;}
html[data-theme="light"] .admin-alert-card.lab-expired{background:linear-gradient(135deg,#fee2e2,#fef2f2 48%,#ffffff)!important;border-color:#ef4444!important;box-shadow:0 12px 30px rgba(220,38,38,.15)!important;}
html[data-theme="light"] .admin-alert-card span{color:#0f172a!important;}
html[data-theme="light"] .admin-alert-card strong{color:#020617!important;}
html[data-theme="light"] .admin-alert-card small{color:#334155!important;}
html[data-theme="light"] .admin-alert-card.lab-due span,html[data-theme="light"] .admin-alert-card.lab-due small{color:#064e3b!important;}
html[data-theme="light"] .dashboard-kpis .kpi-card,html[data-theme="light"] .panel,html[data-theme="light"] .stat-square{background:#ffffff!important;border-color:#cbd5e1!important;color:#0f172a!important;box-shadow:0 12px 34px rgba(15,23,42,.08)!important;}
html[data-theme="light"] .kpi-copy span,html[data-theme="light"] .panel .eyebrow{color:#1d4ed8!important;}
html[data-theme="light"] .muted,html[data-theme="light"] .panel small,html[data-theme="light"] .kpi-copy small{color:#475569!important;}

/* Compila mese: 5 accettazioni sulla stessa riga e divisori tra Preparati/Analizzati/Calcolati */
.final-entry-form .phase-multi-row{grid-column:1/-1!important;display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:8px!important;align-items:stretch!important;width:100%!important;min-width:0!important;}
.final-entry-form .phase-multi-row.analysis-row,.final-entry-form .phase-multi-row.phase-row-calculated{border-top:1px solid rgba(148,163,184,.28)!important;padding-top:14px!important;margin-top:4px!important;}
.final-entry-form .phase-multi-row.analysis-row{box-shadow:0 -1px 0 rgba(96,165,250,.12)!important;}
.final-entry-form .phase-multi-row.phase-row-calculated{box-shadow:0 -1px 0 rgba(52,211,153,.10)!important;}
.final-entry-form .phase-group{padding:9px 10px!important;border-radius:14px!important;gap:7px!important;min-width:0!important;}
.final-entry-form .phase-group p{font-size:10.5px!important;line-height:1.15!important;min-height:24px!important;letter-spacing:.10em!important;margin:0!important;}
.final-entry-form .phase-group label{gap:4px!important;}
.final-entry-form .phase-group label span{font-size:9.5px!important;line-height:1.05!important;letter-spacing:.09em!important;}
.final-entry-form .phase-group input,.final-entry-form .phase-group select{height:40px!important;min-height:40px!important;padding:0 10px!important;font-size:14px!important;width:100%!important;min-width:0!important;}
.final-entry-form .multi-acceptance-toolbar{grid-column:1/-1!important;display:flex!important;gap:10px!important;flex-wrap:wrap!important;align-items:center!important;}
.final-entry-form .multi-acceptance-toolbar .secondary{min-height:42px!important;padding:0 16px!important;}
@media(max-width:1120px){.final-entry-form .phase-multi-row{overflow-x:auto!important;grid-template-columns:repeat(5,minmax(190px,1fr))!important;padding-bottom:4px!important;}}

/* Sidebar: voce Gestione laboratorio leggibile */
.lab-nav-zone .lab-pill{width:calc(100% - 16px)!important;margin:0 8px!important;padding-left:14px!important;padding-right:10px!important;gap:10px!important;}
.lab-nav-zone .lab-pill .nav-text{font-size:13px!important;letter-spacing:.11em!important;white-space:nowrap!important;overflow:visible!important;text-overflow:clip!important;min-width:0!important;}
.lab-nav-zone .lab-pill .nav-icon{width:24px!important;min-width:24px!important;}
.lab-nav-zone .lab-pill .flyout-arrow{margin-left:auto!important;min-width:18px!important;}

/* Account: selezione famiglie parametro compatta e realmente usabile */
.account-parameter-visibility-form{margin-top:12px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.025);padding:12px;display:grid;gap:10px;}
.account-param-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap;}
.account-param-head strong{color:var(--ink);font-size:14px;}
.account-param-head small{color:var(--muted);font-weight:750;}
.account-param-mode{display:flex;gap:10px;flex-wrap:wrap;}
.account-param-mode label{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:999px;padding:8px 10px;background:var(--surface2);font-weight:850;color:var(--ink);}
.account-family-checks{grid-template-columns:repeat(4,minmax(0,1fr))!important;}
.visibility-mode-check{display:flex;align-items:center;gap:9px;border:1px solid var(--line);border-radius:14px;background:var(--surface2);padding:10px 12px;font-weight:850;color:var(--ink);}
html[data-theme="light"] .account-parameter-visibility-form,html[data-theme="light"] .account-param-mode label,html[data-theme="light"] .visibility-mode-check{background:#f8fafc!important;border-color:#cbd5e1!important;color:#0f172a!important;}

/* Parametri e strumenti: margini, tabelle e card senza sovrapposizioni */
.parameters-table-panel{max-width:100%!important;overflow:hidden!important;padding:18px!important;}
.parameters-table-wrap.editable-table-wrap{width:100%!important;max-width:100%!important;overflow-x:auto!important;overflow-y:visible!important;padding:0 0 6px 0!important;border-radius:16px!important;}
.parameters-table-wrap .param-table{width:100%!important;min-width:1180px!important;table-layout:fixed!important;border-collapse:separate!important;border-spacing:0!important;}
.parameters-table-wrap .param-table th,.parameters-table-wrap .param-table td{vertical-align:middle!important;overflow:visible!important;}
.parameters-table-wrap .param-table input,.parameters-table-wrap .param-table select{width:100%!important;min-width:0!important;height:38px!important;padding:0 10px!important;}
.parameters-table-wrap .param-table .col-area{width:140px!important;}.parameters-table-wrap .param-table .col-parametro{width:230px!important;}.parameters-table-wrap .param-table .col-matrice{width:180px!important;}.parameters-table-wrap .param-table .col-small{width:110px!important;}.parameters-table-wrap .param-table .col-note{width:230px!important;}.parameters-table-wrap .param-table .col-action{width:180px!important;}
.parameters-table-wrap .inline-actions-cell{display:flex!important;gap:8px!important;justify-content:flex-end!important;align-items:center!important;min-width:170px!important;padding-right:12px!important;}
.parameters-table-wrap .inline-delete-form{display:inline-flex!important;margin:0!important;}
.parameters-table-wrap .small-btn{white-space:nowrap!important;min-height:36px!important;padding:0 11px!important;}
#strumenti.panel{max-width:100%!important;overflow:hidden!important;}
#strumenti .technical-form{display:grid!important;grid-template-columns:minmax(180px,.8fr) minmax(260px,1.3fr) auto!important;gap:12px!important;align-items:end!important;}
.instrument-grid.editable-instrument-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important;width:100%!important;}
.editable-instrument-card{min-width:0!important;overflow:hidden!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:10px!important;}
.instrument-edit-form{display:grid!important;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr) auto!important;gap:10px!important;align-items:end!important;width:100%!important;}
.instrument-edit-form label{min-width:0!important;display:grid!important;gap:5px!important;}
.instrument-edit-form input,.instrument-edit-form select{width:100%!important;min-width:0!important;}
.editable-instrument-card .inline-delete-form{display:flex!important;justify-content:flex-end!important;margin:0!important;}
html[data-theme="light"] .parameters-table-wrap .param-table th{background:#eaf2fb!important;color:#0f172a!important;border-color:#cbd5e1!important;}
html[data-theme="light"] .parameters-table-wrap .param-table td,html[data-theme="light"] .editable-instrument-card{background:#ffffff!important;color:#0f172a!important;border-color:#d5dee9!important;}
html[data-theme="light"] input,html[data-theme="light"] select,html[data-theme="light"] textarea{background:#ffffff!important;color:#0f172a!important;border-color:#b8c5d6!important;}
html[data-theme="light"] input::placeholder,html[data-theme="light"] textarea::placeholder{color:#64748b!important;opacity:1!important;}
@media(max-width:1280px){.instrument-grid.editable-instrument-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}#strumenti .technical-form{grid-template-columns:1fr 1fr!important;}#strumenti .technical-form .form-actions{grid-column:1/-1!important;}}
@media(max-width:760px){.instrument-grid.editable-instrument-grid,.instrument-edit-form,#strumenti .technical-form,.account-family-checks{grid-template-columns:1fr!important;}.parameters-table-panel{padding:14px!important;}}

/* === v0.18.24 - Provvisoria finale pre-definitiva: layout definitivo e permessi parametri === */
/* Dashboard proprietario: saluto proporzionato e 5 card operative su una sola riga */
.owner-quick-row{
  display:flex!important;
  justify-content:flex-start!important;
  margin:0 0 14px!important;
}
.owner-quick-card{
  width:min(380px,100%)!important;
  max-width:380px!important;
  min-height:78px!important;
  padding:16px 18px!important;
  border-radius:18px!important;
  gap:14px!important;
  align-items:center!important;
}
.owner-quick-icon{width:42px!important;height:42px!important;border-radius:14px!important;}
.owner-quick-icon svg{width:23px!important;height:23px!important;}
.owner-quick-copy small{font-size:11px!important;letter-spacing:.17em!important;}
.owner-quick-copy strong{font-size:22px!important;max-width:220px!important;line-height:1.05!important;}
.owner-quick-card em{margin-left:auto!important;font-size:11px!important;}
.admin-alert-grid.dashboard-alerts-core{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:14px!important;
  align-items:stretch!important;
  width:100%!important;
}
.admin-alert-grid.dashboard-alerts-core .admin-alert-card{
  min-width:0!important;
  min-height:136px!important;
  padding:18px 20px!important;
  border-radius:17px!important;
  overflow:hidden!important;
}
.admin-alert-grid.dashboard-alerts-core .admin-alert-card span{
  font-size:10.5px!important;
  line-height:1.25!important;
  letter-spacing:.13em!important;
  overflow-wrap:anywhere!important;
}
.admin-alert-grid.dashboard-alerts-core .admin-alert-card strong{font-size:36px!important;}
.admin-alert-grid.dashboard-alerts-core .admin-alert-card small{font-size:13px!important;line-height:1.25!important;}
.admin-alert-card.lab-due{
  border-color:rgba(34,197,94,.48)!important;
  background:linear-gradient(135deg,rgba(34,197,94,.24),rgba(20,24,32,.96))!important;
}
@media(max-width:1260px){
  .admin-alert-grid.dashboard-alerts-core{gap:10px!important;}
  .admin-alert-grid.dashboard-alerts-core .admin-alert-card{padding:16px 14px!important;min-height:128px!important;}
  .admin-alert-grid.dashboard-alerts-core .admin-alert-card strong{font-size:31px!important;}
}
@media(max-width:1080px){.admin-alert-grid.dashboard-alerts-core{grid-template-columns:repeat(2,minmax(0,1fr))!important;}}
@media(max-width:700px){.admin-alert-grid.dashboard-alerts-core{grid-template-columns:1fr!important;}.owner-quick-card{max-width:none!important;width:100%!important;}}

/* Dashboard chiara: colori non sbiaditi */
html[data-theme="light"] .admin-alert-card.notifications{background:linear-gradient(135deg,#bfdbfe 0%,#dbeafe 48%,#ffffff 100%)!important;border-color:#2563eb!important;color:#0f172a!important;}
html[data-theme="light"] .admin-alert-card.assistance{background:linear-gradient(135deg,#ddd6fe 0%,#ede9fe 48%,#ffffff 100%)!important;border-color:#7c3aed!important;color:#0f172a!important;}
html[data-theme="light"] .admin-alert-card.blocked{background:linear-gradient(135deg,#fde68a 0%,#fef3c7 48%,#ffffff 100%)!important;border-color:#d97706!important;color:#0f172a!important;}
html[data-theme="light"] .admin-alert-card.lab-due{background:linear-gradient(135deg,#86efac 0%,#bbf7d0 48%,#ffffff 100%)!important;border-color:#16a34a!important;color:#052e16!important;}
html[data-theme="light"] .admin-alert-card.lab-expired{background:linear-gradient(135deg,#fecaca 0%,#fee2e2 48%,#ffffff 100%)!important;border-color:#dc2626!important;color:#450a0a!important;}
html[data-theme="light"] .admin-alert-card span{color:#0f172a!important;}
html[data-theme="light"] .admin-alert-card strong{color:#020617!important;}
html[data-theme="light"] .admin-alert-card small{color:#334155!important;}
html[data-theme="light"] .admin-alert-card.lab-due span,html[data-theme="light"] .admin-alert-card.lab-due small{color:#064e3b!important;}

/* Menu: Gestione laboratorio sempre dentro al riquadro */
.lab-nav-zone .lab-pill{
  width:calc(100% - 18px)!important;
  margin:0 9px!important;
  padding:0 10px 0 12px!important;
  gap:8px!important;
  min-width:0!important;
}
.lab-nav-zone .lab-pill .nav-icon{width:22px!important;min-width:22px!important;}
.lab-nav-zone .lab-pill .nav-text{
  font-size:11.4px!important;
  letter-spacing:.075em!important;
  line-height:1.05!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  min-width:0!important;
  max-width:188px!important;
}
.lab-nav-zone .lab-pill .flyout-arrow{width:16px!important;min-width:16px!important;margin-left:auto!important;}

/* Compila mese: 5 slot sulla stessa riga senza scroll orizzontale */
.final-entry-form .phase-multi-row{
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:7px!important;
  overflow:visible!important;
  padding-bottom:0!important;
}
.final-entry-form .phase-group{padding:8px 8px!important;border-radius:13px!important;min-width:0!important;}
.final-entry-form .phase-group p{font-size:9.8px!important;min-height:22px!important;letter-spacing:.08em!important;}
.final-entry-form .phase-group label span{font-size:9px!important;letter-spacing:.075em!important;}
.final-entry-form .phase-group input,.final-entry-form .phase-group select{height:36px!important;min-height:36px!important;font-size:13px!important;padding:0 8px!important;}
.final-entry-form .analysis-row,.final-entry-form .phase-row-calculated{
  position:relative!important;
  border-top:2px solid rgba(148,163,184,.36)!important;
  padding-top:16px!important;
  margin-top:8px!important;
}
@media(max-width:1180px){
  .final-entry-form .phase-multi-row{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:5px!important;}
  .final-entry-form .phase-group{padding:7px 6px!important;}
  .final-entry-form .phase-group p{font-size:9px!important;}
  .final-entry-form .phase-group input,.final-entry-form .phase-group select{height:34px!important;font-size:12px!important;padding:0 6px!important;}
}

/* Parametri: nessuno scroll orizzontale, colonna note sempre visibile */
.parameters-table-panel{overflow:hidden!important;padding:18px!important;}
.parameters-table-wrap.editable-table-wrap{
  width:100%!important;
  max-width:100%!important;
  overflow-x:hidden!important;
  overflow-y:visible!important;
  padding:0!important;
}
.parameters-table-wrap .param-table{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  table-layout:fixed!important;
  border-collapse:collapse!important;
}
.parameters-table-wrap .param-table .col-area{width:12%!important;}
.parameters-table-wrap .param-table .col-parametro{width:20%!important;}
.parameters-table-wrap .param-table .col-matrice{width:16%!important;}
.parameters-table-wrap .param-table .col-small{width:8%!important;}
.parameters-table-wrap .param-table .col-note{width:18%!important;}
.parameters-table-wrap .param-table .col-action{width:10%!important;}
.parameters-table-wrap .param-table th,
.parameters-table-wrap .param-table td{
  padding:8px 8px!important;
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
}
.parameters-table-wrap .param-table th{font-size:9.5px!important;letter-spacing:.10em!important;}
.parameters-table-wrap .param-table input,
.parameters-table-wrap .param-table select{
  width:100%!important;
  min-width:0!important;
  height:36px!important;
  min-height:36px!important;
  padding:0 8px!important;
  font-size:13px!important;
  border-radius:10px!important;
}
.parameters-table-wrap .inline-actions-cell{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:6px!important;
  align-items:stretch!important;
  justify-content:stretch!important;
  min-width:0!important;
  padding-right:8px!important;
}
.parameters-table-wrap .inline-actions-cell .small-btn,
.parameters-table-wrap .inline-actions-cell button{
  width:100%!important;
  min-height:30px!important;
  padding:0 6px!important;
  font-size:11px!important;
}
.parameters-table-wrap .inline-actions-cell .inline-delete-form{display:block!important;width:100%!important;}
@media(max-width:1180px){
  .parameters-table-wrap .param-table th{font-size:8.7px!important;letter-spacing:.07em!important;}
  .parameters-table-wrap .param-table td{padding:7px 5px!important;}
  .parameters-table-wrap .param-table input,.parameters-table-wrap .param-table select{font-size:12px!important;padding:0 6px!important;}
}

/* Strumenti: inserimento + elenco ordinato con sola eliminazione */
#strumenti.panel{overflow:hidden!important;}
#strumenti .technical-form{grid-template-columns:minmax(160px,.75fr) minmax(260px,1.4fr) auto!important;align-items:end!important;}
.instrument-list-clean{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;margin-top:14px!important;}
.instrument-row-clean{
  display:grid!important;
  grid-template-columns:minmax(90px,.65fr) minmax(0,1fr) auto!important;
  gap:10px!important;
  align-items:center!important;
  min-width:0!important;
  border:1px solid var(--line)!important;
  background:var(--surface2)!important;
  border-radius:14px!important;
  padding:10px 12px!important;
}
.instrument-row-clean strong{font-size:14px!important;line-height:1.15!important;min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;}
.instrument-area-pill{display:inline-flex!important;align-items:center!important;justify-content:center!important;border-radius:999px!important;border:1px solid rgba(59,130,246,.32)!important;background:rgba(59,130,246,.10)!important;color:#bfdbfe!important;font-size:10px!important;font-weight:900!important;letter-spacing:.08em!important;text-transform:uppercase!important;padding:6px 8px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
.instrument-delete-only{margin:0!important;display:flex!important;justify-content:flex-end!important;}
.instrument-delete-only .small-btn{min-height:30px!important;padding:0 9px!important;font-size:11px!important;}
html[data-theme="light"] .instrument-row-clean{background:#ffffff!important;border-color:#cbd5e1!important;color:#0f172a!important;}
html[data-theme="light"] .instrument-area-pill{background:#dbeafe!important;border-color:#93c5fd!important;color:#1e3a8a!important;}
@media(max-width:1280px){.instrument-list-clean{grid-template-columns:repeat(2,minmax(0,1fr))!important;}}
@media(max-width:760px){.instrument-list-clean,#strumenti .technical-form{grid-template-columns:1fr!important;}.instrument-row-clean{grid-template-columns:1fr auto!important;}.instrument-area-pill{justify-self:start!important;}}

/* Tabelle account/permessi: contenuti entro margini, senza tagli brutali */
.account-content .table-wrap{overflow:hidden!important;max-width:100%!important;}
.account-content table{table-layout:fixed!important;width:100%!important;min-width:0!important;}
.account-content th,.account-content td{overflow:hidden!important;overflow-wrap:anywhere!important;}

/* v0.18.25 - Rifinitura finale provvisoria: compila mese, parametri, strumenti, menu */
.final-entry-form .phase-group .phase-title{
  margin:0 0 8px!important;
  min-height:38px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  gap:2px!important;
  line-height:1.05!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  font-weight:900!important;
  color:#ffffff!important;
}
.final-entry-form .phase-group .phase-title span{
  display:block!important;
  max-width:100%!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  font-size:12px!important;
  color:#ffffff!important;
}
.final-entry-form .phase-group .phase-title em{
  display:block!important;
  max-width:100%!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  font-style:normal!important;
  font-size:10.5px!important;
  color:#b9cbe4!important;
  letter-spacing:.10em!important;
}
.final-entry-form .phase-multi-row{
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:8px!important;
}
.final-entry-form .phase-group{
  padding:10px 10px!important;
  min-width:0!important;
  overflow:hidden!important;
}
.final-entry-form .phase-group label span{
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
html[data-theme="light"] .final-entry-form .phase-group .phase-title span{color:#0f172a!important;}
html[data-theme="light"] .final-entry-form .phase-group .phase-title em{color:#334155!important;}

.parameters-table-panel{
  overflow:hidden!important;
  padding:18px 18px 20px!important;
}
.parameters-table-wrap.editable-table-wrap{
  width:100%!important;
  max-width:100%!important;
  overflow:hidden!important;
  padding:0!important;
}
.parameters-table-wrap .param-table{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  table-layout:fixed!important;
  border-collapse:collapse!important;
}
.parameters-table-wrap .param-table .col-area{width:15.5%!important;}
.parameters-table-wrap .param-table .col-parametro{width:18.5%!important;}
.parameters-table-wrap .param-table .col-matrice{width:14.5%!important;}
.parameters-table-wrap .param-table .col-small{width:7.2%!important;}
.parameters-table-wrap .param-table .col-note{width:13.9%!important;}
.parameters-table-wrap .param-table .col-action{width:15.8%!important;}
.parameters-table-wrap .param-table th,
.parameters-table-wrap .param-table td{
  box-sizing:border-box!important;
  padding:8px 7px!important;
  overflow:hidden!important;
  min-width:0!important;
  max-width:100%!important;
  vertical-align:middle!important;
}
.parameters-table-wrap .param-table th{
  font-size:9.3px!important;
  letter-spacing:.08em!important;
  white-space:normal!important;
  line-height:1.12!important;
}
.parameters-table-wrap .param-table input,
.parameters-table-wrap .param-table select{
  width:100%!important;
  min-width:0!important;
  height:38px!important;
  min-height:38px!important;
  padding:0 9px!important;
  font-size:13px!important;
  line-height:1.1!important;
  border-radius:10px!important;
}
.parameters-table-wrap .param-table select[name="area"]{
  padding-left:10px!important;
  padding-right:26px!important;
  font-size:13px!important;
}
.parameters-table-wrap .inline-actions-cell{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:6px!important;
  align-items:center!important;
  justify-content:stretch!important;
  min-width:0!important;
  padding:8px 8px!important;
}
.parameters-table-wrap .inline-actions-cell .inline-delete-form{
  display:block!important;
  width:100%!important;
  margin:0!important;
  min-width:0!important;
}
.parameters-table-wrap .inline-actions-cell .small-btn,
.parameters-table-wrap .inline-actions-cell button{
  width:100%!important;
  min-width:0!important;
  min-height:36px!important;
  height:36px!important;
  padding:0 7px!important;
  font-size:12px!important;
  line-height:1!important;
  border-radius:10px!important;
  white-space:nowrap!important;
}
@media(max-width:1180px){
  .parameters-table-wrap .param-table .col-area{width:16%!important;}
  .parameters-table-wrap .param-table .col-parametro{width:17%!important;}
  .parameters-table-wrap .param-table .col-matrice{width:13.5%!important;}
  .parameters-table-wrap .param-table .col-small{width:7%!important;}
  .parameters-table-wrap .param-table .col-note{width:13.5%!important;}
  .parameters-table-wrap .param-table .col-action{width:18%!important;}
  .parameters-table-wrap .param-table th{font-size:8.5px!important;letter-spacing:.05em!important;}
  .parameters-table-wrap .param-table input,.parameters-table-wrap .param-table select{font-size:12px!important;padding:0 6px!important;}
  .parameters-table-wrap .inline-actions-cell{gap:5px!important;padding:7px 5px!important;}
  .parameters-table-wrap .inline-actions-cell .small-btn,.parameters-table-wrap .inline-actions-cell button{font-size:11px!important;padding:0 5px!important;}
}

#strumenti.panel{overflow:hidden!important;}
#strumenti .technical-form{
  grid-template-columns:minmax(240px,.6fr) minmax(320px,1.4fr) auto!important;
  gap:14px!important;
  align-items:end!important;
}
#strumenti .technical-form select,
#strumenti .technical-form input{
  width:100%!important;
  min-width:0!important;
}
.instrument-list-clean{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;
  margin-top:16px!important;
}
.instrument-row-clean{
  display:grid!important;
  grid-template-columns:minmax(210px,.85fr) minmax(0,1fr) auto!important;
  gap:12px!important;
  align-items:center!important;
  min-width:0!important;
  padding:12px 14px!important;
  overflow:hidden!important;
}
.instrument-area-pill{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  text-align:center!important;
  line-height:1.15!important;
  padding:7px 10px!important;
  font-size:9.8px!important;
  letter-spacing:.055em!important;
}
.instrument-row-clean strong{
  min-width:0!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  line-height:1.18!important;
}
.instrument-delete-only .small-btn{
  min-width:86px!important;
  min-height:34px!important;
  height:34px!important;
  padding:0 12px!important;
  font-size:12px!important;
}
@media(max-width:980px){
  .instrument-list-clean{grid-template-columns:1fr!important;}
  #strumenti .technical-form{grid-template-columns:1fr!important;}
}
@media(max-width:620px){
  .instrument-row-clean{grid-template-columns:1fr!important;}
  .instrument-delete-only{justify-content:flex-start!important;}
}

.lab-nav-zone .lab-pill,
html[data-theme="light"] .lab-nav-zone .lab-pill{
  width:calc(100% - 16px)!important;
  margin:0 8px!important;
  padding:0 8px 0 10px!important;
  gap:7px!important;
  min-width:0!important;
}
.lab-nav-zone .lab-pill .nav-icon{
  width:22px!important;
  min-width:22px!important;
  flex:0 0 22px!important;
}
.lab-nav-zone .lab-pill .nav-text,
html[data-theme="light"] .lab-nav-zone .lab-pill .nav-text{
  display:block!important;
  flex:1 1 auto!important;
  min-width:0!important;
  max-width:none!important;
  overflow:visible!important;
  text-overflow:clip!important;
  white-space:nowrap!important;
  font-size:8.7px!important;
  letter-spacing:.035em!important;
  line-height:1!important;
}
.lab-nav-zone .lab-pill .flyout-arrow{
  width:14px!important;
  min-width:14px!important;
  flex:0 0 14px!important;
  margin-left:auto!important;
}

/* v0.18.26 - Rifiniture Compila mese, Parametri e menu tema chiaro */
/* Compila mese: una sola accettazione = riquadro largo; accettazioni aggiuntive = 5 card affiancate */
.final-entry-form:not(.has-extra-acceptances) .phase-multi-row{
  grid-template-columns:minmax(0,1fr)!important;
  gap:12px!important;
}
.final-entry-form:not(.has-extra-acceptances) .phase-multi-row .phase-main{
  width:100%!important;
  max-width:none!important;
  min-height:154px!important;
  padding:18px 20px!important;
  gap:12px!important;
}
.final-entry-form:not(.has-extra-acceptances) .phase-multi-row .phase-main .phase-title{
  min-height:auto!important;
  margin:0 0 16px!important;
  gap:7px!important;
  padding:0!important;
}
.final-entry-form:not(.has-extra-acceptances) .phase-multi-row .phase-main .phase-title span{
  font-size:16px!important;
  line-height:1.05!important;
  letter-spacing:.10em!important;
}
.final-entry-form:not(.has-extra-acceptances) .phase-multi-row .phase-main .phase-title em{
  font-size:13px!important;
  line-height:1.05!important;
  letter-spacing:.11em!important;
}
.final-entry-form:not(.has-extra-acceptances) .phase-multi-row .phase-main label{
  max-width:520px!important;
  gap:8px!important;
}
.final-entry-form:not(.has-extra-acceptances) .phase-multi-row .phase-main label span{
  font-size:12px!important;
  letter-spacing:.10em!important;
}
.final-entry-form:not(.has-extra-acceptances) .phase-multi-row .phase-main input,
.final-entry-form:not(.has-extra-acceptances) .phase-multi-row .phase-main select{
  height:48px!important;
  min-height:48px!important;
  font-size:16px!important;
  padding:0 14px!important;
  border-radius:12px!important;
}
.final-entry-form.has-extra-acceptances .phase-multi-row{
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:9px!important;
}
.final-entry-form.has-extra-acceptances .phase-group{
  min-height:0!important;
  padding:11px 10px!important;
}
.final-entry-form.has-extra-acceptances .phase-group .phase-title{
  min-height:34px!important;
  margin:0 0 9px!important;
  gap:4px!important;
}
.final-entry-form.has-extra-acceptances .phase-group .phase-title span{
  font-size:11.5px!important;
  letter-spacing:.075em!important;
}
.final-entry-form.has-extra-acceptances .phase-group .phase-title em{
  font-size:10px!important;
  letter-spacing:.075em!important;
}
.final-entry-form.has-extra-acceptances .phase-group input,
.final-entry-form.has-extra-acceptances .phase-group select{
  height:38px!important;
  min-height:38px!important;
}
@media(max-width:1120px){
  .final-entry-form.has-extra-acceptances .phase-multi-row{
    grid-template-columns:repeat(5,minmax(165px,1fr))!important;
    overflow:hidden!important;
  }
}

/* Parametri: colonna Azioni allineata sopra Salva, pulsanti non tagliati, nessuno scroll orizzontale */
.parameters-table-panel{
  overflow:hidden!important;
  padding:18px 16px 20px!important;
}
.parameters-table-wrap.editable-table-wrap{
  overflow:hidden!important;
  width:100%!important;
  max-width:100%!important;
  padding:0!important;
}
.parameters-table-wrap .param-table{
  width:100%!important;
  min-width:0!important;
  table-layout:fixed!important;
  border-collapse:collapse!important;
}
.parameters-table-wrap .param-table .col-area{width:16.5%!important;}
.parameters-table-wrap .param-table .col-parametro{width:17.2%!important;}
.parameters-table-wrap .param-table .col-matrice{width:13.4%!important;}
.parameters-table-wrap .param-table .col-small{width:7%!important;}
.parameters-table-wrap .param-table .col-note{width:12.9%!important;}
.parameters-table-wrap .param-table .col-action{width:19%!important;}
.parameters-table-wrap .param-table th,
.parameters-table-wrap .param-table td{
  box-sizing:border-box!important;
  padding:8px 6px!important;
  overflow:hidden!important;
  vertical-align:middle!important;
  border-bottom:1px solid var(--line)!important;
}
.parameters-table-wrap .param-table th.action-head{
  text-align:left!important;
  padding-left:14px!important;
  padding-right:6px!important;
}
.parameters-table-wrap .param-table input,
.parameters-table-wrap .param-table select{
  height:38px!important;
  min-height:38px!important;
  width:100%!important;
  min-width:0!important;
  padding:0 8px!important;
  font-size:13px!important;
}
.parameters-table-wrap .param-table select[name="area"]{
  padding-left:10px!important;
  padding-right:24px!important;
  font-size:13px!important;
}
.parameters-table-wrap .inline-actions-cell{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:8px!important;
  align-items:center!important;
  justify-content:stretch!important;
  padding:8px 8px!important;
  min-width:0!important;
}
.parameters-table-wrap .inline-actions-cell .inline-delete-form{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
}
.parameters-table-wrap .inline-actions-cell .small-btn,
.parameters-table-wrap .inline-actions-cell button{
  width:100%!important;
  min-width:0!important;
  height:38px!important;
  min-height:38px!important;
  padding:0 8px!important;
  font-size:12.5px!important;
  border-radius:11px!important;
  line-height:1!important;
  white-space:nowrap!important;
}
@media(max-width:1180px){
  .parameters-table-wrap .param-table .col-area{width:17%!important;}
  .parameters-table-wrap .param-table .col-parametro{width:16%!important;}
  .parameters-table-wrap .param-table .col-matrice{width:12.5%!important;}
  .parameters-table-wrap .param-table .col-small{width:6.8%!important;}
  .parameters-table-wrap .param-table .col-note{width:12.5%!important;}
  .parameters-table-wrap .param-table .col-action{width:21%!important;}
  .parameters-table-wrap .param-table th{font-size:8.2px!important;letter-spacing:.045em!important;}
  .parameters-table-wrap .param-table input,.parameters-table-wrap .param-table select{font-size:11.8px!important;padding:0 5px!important;}
  .parameters-table-wrap .inline-actions-cell{gap:5px!important;padding:7px 5px!important;}
  .parameters-table-wrap .inline-actions-cell .small-btn,.parameters-table-wrap .inline-actions-cell button{font-size:10.6px!important;padding:0 4px!important;}
}

/* Strumenti: badge area sempre leggibili e non tagliati */
.instrument-row-clean{
  grid-template-columns:minmax(235px,.9fr) minmax(0,1fr) auto!important;
}
.instrument-area-pill{
  min-width:0!important;
  width:100%!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  word-break:normal!important;
  overflow-wrap:anywhere!important;
  padding:7px 11px!important;
}

/* Menu laterale: Gestione laboratorio interamente visibile */
.lab-nav-zone .lab-pill,
html[data-theme="light"] .lab-nav-zone .lab-pill{
  width:calc(100% - 18px)!important;
  margin:0 9px!important;
  padding:0 8px 0 9px!important;
  gap:6px!important;
  min-width:0!important;
}
.lab-nav-zone .lab-pill .nav-icon{
  width:20px!important;
  min-width:20px!important;
  flex:0 0 20px!important;
}
.lab-nav-zone .lab-pill .nav-text,
html[data-theme="light"] .lab-nav-zone .lab-pill .nav-text{
  display:block!important;
  flex:1 1 auto!important;
  min-width:0!important;
  white-space:nowrap!important;
  overflow:visible!important;
  text-overflow:clip!important;
  font-size:8.3px!important;
  letter-spacing:.02em!important;
  line-height:1!important;
}
.lab-nav-zone .lab-pill .flyout-arrow{
  width:12px!important;
  min-width:12px!important;
  flex:0 0 12px!important;
  margin-left:auto!important;
}

/* Tema chiaro: pulsante laterale menu piu' piccolo, non bianco, freccia visibile */
.side-expand-handle,
html[data-theme="light"] .side-expand-handle{
  width:26px!important;
  height:36px!important;
  border-radius:10px!important;
  left:calc(var(--sidebar) - 13px)!important;
  top:calc(50% + 26px)!important;
  background:linear-gradient(180deg,#1e293b,#0f172a)!important;
  color:#e0f2fe!important;
  border-color:rgba(96,165,250,.55)!important;
  box-shadow:0 10px 24px rgba(15,23,42,.26), inset 0 1px 0 rgba(255,255,255,.08)!important;
}
.side-expand-handle span,
html[data-theme="light"] .side-expand-handle span{
  color:#e0f2fe!important;
  font-size:18px!important;
  letter-spacing:-.12em!important;
  margin-left:-2px!important;
  opacity:1!important;
}
.side-expand-handle:hover,
html[data-theme="light"] .side-expand-handle:hover{
  background:linear-gradient(180deg,#2563eb,#1d4ed8)!important;
  color:#ffffff!important;
  border-color:#93c5fd!important;
}
.menu-panel-open .side-expand-handle,
html[data-theme="light"] .menu-panel-open .side-expand-handle{
  left:calc(var(--sidebar) + var(--expanded-menu) - 13px)!important;
}
.sidebar-collapsed .side-expand-handle,
html[data-theme="light"] .sidebar-collapsed .side-expand-handle{
  left:calc(var(--sidebar) - 13px)!important;
}
.sidebar-collapsed.menu-panel-open .side-expand-handle,
html[data-theme="light"] .sidebar-collapsed.menu-panel-open .side-expand-handle{
  left:calc(var(--sidebar) + var(--expanded-menu) - 13px)!important;
}

/* v0.18.27 - Rifinitura finale menu laterale e pannello ricerca */
/* Stato chiuso: solo icone, nessuna scritta o freccia visibile */
body.sidebar-collapsed .lab-nav-zone,
body.sidebar-collapsed html[data-theme="light"] .lab-nav-zone{
  padding:8px 6px!important;
}
body.sidebar-collapsed .lab-nav-zone .lab-pill,
html[data-theme="light"] body.sidebar-collapsed .lab-nav-zone .lab-pill{
  width:42px!important;
  height:42px!important;
  min-height:42px!important;
  max-width:42px!important;
  margin:0 auto!important;
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:0!important;
  overflow:hidden!important;
}
body.sidebar-collapsed .lab-nav-zone .lab-pill .nav-icon,
html[data-theme="light"] body.sidebar-collapsed .lab-nav-zone .lab-pill .nav-icon{
  width:22px!important;
  height:22px!important;
  min-width:22px!important;
  flex:0 0 22px!important;
  margin:0!important;
}
body.sidebar-collapsed .lab-nav-zone .lab-pill .nav-text,
body.sidebar-collapsed .lab-nav-zone .lab-pill .flyout-arrow,
html[data-theme="light"] body.sidebar-collapsed .lab-nav-zone .lab-pill .nav-text,
html[data-theme="light"] body.sidebar-collapsed .lab-nav-zone .lab-pill .flyout-arrow{
  display:none!important;
  width:0!important;
  min-width:0!important;
  max-width:0!important;
  opacity:0!important;
  visibility:hidden!important;
  overflow:hidden!important;
}

/* Stato aperto: Gestione laboratorio leggibile come Produttivita', senza uscire dal box */
body:not(.sidebar-collapsed) .lab-nav-zone .lab-pill,
html[data-theme="light"] body:not(.sidebar-collapsed) .lab-nav-zone .lab-pill{
  width:calc(100% - 16px)!important;
  height:42px!important;
  min-height:42px!important;
  margin:0 8px!important;
  padding:0 10px!important;
  gap:7px!important;
  overflow:hidden!important;
}
body:not(.sidebar-collapsed) .lab-nav-zone .lab-pill .nav-icon,
html[data-theme="light"] body:not(.sidebar-collapsed) .lab-nav-zone .lab-pill .nav-icon{
  width:22px!important;
  min-width:22px!important;
  flex:0 0 22px!important;
}
body:not(.sidebar-collapsed) .lab-nav-zone .lab-pill .nav-text,
html[data-theme="light"] body:not(.sidebar-collapsed) .lab-nav-zone .lab-pill .nav-text{
  display:block!important;
  flex:1 1 auto!important;
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:clip!important;
  white-space:nowrap!important;
  font-size:10.8px!important;
  line-height:1!important;
  letter-spacing:.045em!important;
  font-weight:900!important;
}
body:not(.sidebar-collapsed) .lab-nav-zone .lab-pill .flyout-arrow,
html[data-theme="light"] body:not(.sidebar-collapsed) .lab-nav-zone .lab-pill .flyout-arrow{
  width:13px!important;
  min-width:13px!important;
  flex:0 0 13px!important;
  margin-left:2px!important;
}

/* Pannello espanso: elimina il rettangolo di fondo della ricerca; restano solo input e risultati */
.expanded-menu-panel,
html[data-theme="light"] .expanded-menu-panel{
  background:#12161e!important;
  border-left:1px solid rgba(148,163,184,.16)!important;
  border-right:1px solid rgba(148,163,184,.18)!important;
  box-shadow:8px 0 26px rgba(0,0,0,.22)!important;
}
.global-search-box,
html[data-theme="light"] .global-search-box{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
  margin:0!important;
  border-radius:0!important;
}
.global-search-input-wrap,
html[data-theme="light"] .global-search-input-wrap{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
  border-radius:0!important;
}
.global-search-input-wrap input,
html[data-theme="light"] .global-search-input-wrap input{
  height:48px!important;
  min-height:48px!important;
  border-radius:17px!important;
  background:#111821!important;
  border:1px solid rgba(96,165,250,.18)!important;
  color:#eef6ff!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035)!important;
}
.global-search-results,
html[data-theme="light"] .global-search-results{
  background:#121923!important;
  border:1px solid rgba(148,163,184,.13)!important;
  border-radius:17px!important;
  box-shadow:none!important;
}

/* Nuovo pulsante espansione menu: tab laterale discreta, non sovrapposta e freccia sempre visibile */
.side-expand-handle,
html[data-theme="light"] .side-expand-handle{
  position:fixed!important;
  left:calc(var(--sidebar) - 1px)!important;
  top:132px!important;
  width:30px!important;
  height:42px!important;
  min-height:42px!important;
  border-radius:0 13px 13px 0!important;
  border:1px solid rgba(96,165,250,.36)!important;
  border-left:0!important;
  background:linear-gradient(180deg,#172234,#0f172a)!important;
  color:#dbeafe!important;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  z-index:75!important;
  box-shadow:0 10px 22px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.06)!important;
  transform:none!important;
}
.side-expand-handle span,
html[data-theme="light"] .side-expand-handle span{
  display:block!important;
  color:#dbeafe!important;
  opacity:1!important;
  visibility:visible!important;
  font-size:28px!important;
  line-height:1!important;
  font-weight:500!important;
  letter-spacing:0!important;
  margin:0!important;
  transform:translateY(-1px)!important;
}
.side-expand-handle:hover,
html[data-theme="light"] .side-expand-handle:hover{
  background:linear-gradient(180deg,#1d4ed8,#1e40af)!important;
  border-color:rgba(147,197,253,.78)!important;
  color:#ffffff!important;
}
.menu-panel-open .side-expand-handle,
html[data-theme="light"] .menu-panel-open .side-expand-handle{
  left:calc(var(--sidebar) + var(--expanded-menu) - 1px)!important;
}
.menu-panel-open .side-expand-handle span,
html[data-theme="light"] .menu-panel-open .side-expand-handle span{
  transform:rotate(180deg) translateY(1px)!important;
}
body.sidebar-collapsed .side-expand-handle,
html[data-theme="light"] body.sidebar-collapsed .side-expand-handle{
  left:calc(var(--sidebar) - 1px)!important;
}
body.sidebar-collapsed.menu-panel-open .side-expand-handle,
html[data-theme="light"] body.sidebar-collapsed.menu-panel-open .side-expand-handle{
  left:calc(var(--sidebar) + var(--expanded-menu) - 1px)!important;
}
@media(max-width:900px){
  .side-expand-handle,
  html[data-theme="light"] .side-expand-handle{display:none!important;}
}

/* v1.0 Aruba - login definitivo e accesso solo computer */
.desktop-only-blocker{display:none;position:fixed;inset:0;z-index:9999;background:linear-gradient(145deg,#06080d,#0e1624 58%,#08111f);align-items:center;justify-content:center;padding:28px;color:#eef6ff;text-align:center}
.desktop-only-card{width:min(520px,100%);border:1px solid rgba(96,165,250,.24);border-radius:28px;padding:34px 32px;background:rgba(15,23,42,.92);box-shadow:0 30px 90px rgba(0,0,0,.48),inset 0 1px 0 rgba(255,255,255,.08)}
.desktop-only-card img{width:82px;height:82px;border-radius:22px;background:#fff;object-fit:contain;padding:10px;margin-bottom:18px}
.desktop-only-card span{display:block;color:#63b3ff;letter-spacing:.22em;text-transform:uppercase;font-weight:900;font-size:12px;margin-bottom:10px}
.desktop-only-card h1{margin:0 0 12px;font-size:30px;line-height:1.05;color:#fff;letter-spacing:-.04em}
.desktop-only-card p{margin:0;color:#b9c7d8;font-size:16px;line-height:1.48}
.production-login-page{min-height:100vh;display:grid;place-items:center;padding:34px;background:
  radial-gradient(circle at 18% 12%,rgba(36,150,255,.16),transparent 34%),
  radial-gradient(circle at 82% 80%,rgba(16,185,129,.12),transparent 34%),
  linear-gradient(145deg,#07090f 0%,#0b0f17 52%,#050607 100%)!important}
.production-login-shell{width:min(1120px,calc(100vw - 56px));display:grid;grid-template-columns:minmax(0,1.05fr) minmax(380px,.72fr);gap:22px;align-items:stretch}
.production-brand-panel,.production-login-card{border:1px solid rgba(148,163,184,.18);border-radius:30px;background:linear-gradient(160deg,rgba(17,24,39,.86),rgba(8,11,18,.94));box-shadow:0 32px 92px rgba(0,0,0,.38),inset 0 1px 0 rgba(255,255,255,.06);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}
.production-brand-panel{padding:44px;display:flex;flex-direction:column;justify-content:center;min-height:540px;overflow:hidden;position:relative}
.production-brand-panel:after{content:"";position:absolute;right:-120px;bottom:-130px;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,rgba(36,150,255,.18),transparent 66%);pointer-events:none}
.production-login-logo{width:116px;height:116px;border-radius:30px;background:#fff;object-fit:contain;padding:12px;margin-bottom:34px;box-shadow:0 18px 42px rgba(0,0,0,.22)}
.production-brand-panel .eyebrow,.production-login-card .eyebrow{margin:0 0 18px;color:#63b3ff;letter-spacing:.24em;text-transform:uppercase;font-size:13px;font-weight:900}
.production-login-card .eyebrow.compact{margin:0 0 4px;font-size:11px;letter-spacing:.18em}
.production-brand-panel h1{margin:0 0 18px;font-size:58px;line-height:.98;letter-spacing:-.065em;color:#fff;max-width:620px}
.production-brand-panel p{margin:0;color:#bfcee2;font-size:22px;line-height:1.36;max-width:700px}
.production-login-note{margin-top:34px;display:inline-grid;gap:4px;align-self:flex-start;border:1px solid rgba(96,165,250,.24);border-radius:18px;background:rgba(37,99,235,.10);padding:14px 16px;color:#dbeafe}
.production-login-note span{font-size:11px;text-transform:uppercase;letter-spacing:.18em;font-weight:900;color:#93c5fd}
.production-login-note strong{font-size:14px;line-height:1.25;color:#eaf4ff}
.production-login-card{padding:34px;display:flex;flex-direction:column;justify-content:center;gap:24px;min-height:540px}
.login-card-head{display:flex;align-items:center;gap:16px;margin-bottom:2px}
.login-lock-icon{width:48px;height:48px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(135deg,#1d7df2,#0756bd);color:#fff;font-size:26px;font-weight:900;box-shadow:0 16px 36px rgba(29,125,242,.24)}
.production-login-card h2{margin:0;color:#fff;font-size:32px;line-height:1.06;letter-spacing:-.045em}
.production-login-form{gap:17px}
.production-login-form label{font-weight:850;color:#eff6ff;display:grid;gap:8px;font-size:15px}
.production-login-form input{height:54px;border-radius:15px;border:1px solid rgba(148,163,184,.24);background:#11161d;color:#f8fbff;padding:0 15px;font-weight:760;outline:none;box-shadow:inset 0 1px 0 rgba(255,255,255,.03)}
.production-login-form input:focus{border-color:#2b9cff;box-shadow:0 0 0 4px rgba(36,150,255,.14)}
.production-login-form .primary{height:58px;border-radius:15px;font-size:18px;font-weight:850;background:linear-gradient(135deg,#248bff,#1670dd);box-shadow:0 16px 34px rgba(36,139,255,.25)}
.production-security-copy{margin:0;padding-top:4px;color:#91a0b5;font-size:13px;line-height:1.4;text-align:center}
.device-denied-shell{grid-template-columns:minmax(0,1fr) minmax(360px,.7fr)}
.device-denied-card{text-align:left}
.device-denied-icon{width:58px;height:58px;border-radius:18px;background:#132238;color:#93c5fd;display:grid;place-items:center;font-size:28px;margin-bottom:12px}
.device-denied-card h2{font-size:30px;margin-bottom:6px}.device-denied-card p{color:#c7d2e3;line-height:1.45}.device-denied-card small{display:block;margin-top:16px;color:#8491a5;line-height:1.4}
@media (max-width: 1023px),(pointer: coarse){
  body{overflow:hidden!important}
  .desktop-only-blocker{display:grid!important}
  .app-shell,.login-page{display:none!important}
}
html.client-desktop-blocked body{overflow:hidden!important}
html.client-desktop-blocked .desktop-only-blocker{display:grid!important}
html.client-desktop-blocked .app-shell,html.client-desktop-blocked .login-page{display:none!important}
html[data-theme="light"] .production-login-page{background:linear-gradient(145deg,#eaf1fb,#f7f9fc)!important}
html[data-theme="light"] .production-brand-panel,html[data-theme="light"] .production-login-card{background:rgba(255,255,255,.88);border-color:#d8e2ef;box-shadow:0 28px 72px rgba(15,23,42,.13)}
html[data-theme="light"] .production-brand-panel h1,html[data-theme="light"] .production-login-card h2{color:#0f172a}
html[data-theme="light"] .production-brand-panel p{color:#334155}
html[data-theme="light"] .production-login-form label{color:#0f172a}
html[data-theme="light"] .production-login-form input{background:#f8fafc;color:#0f172a;border-color:#cbd5e1}
html[data-theme="light"] .production-security-copy{color:#64748b}

/* v1.0 Aruba login definitivo v2 */
.production-brand-subtitle{margin:0!important;color:#cbd5e1!important;font-size:26px!important;font-weight:800!important;letter-spacing:-.02em!important}
.login-account-icon svg{width:27px;height:27px;display:block;fill:currentColor}
.login-account-icon{font-size:0!important}
html[data-theme="light"] .production-brand-subtitle{color:#334155!important}
