:root{--accent:#0f766e;--bg:#f3f6f8;--card:#fff;--ink:#17212b;--muted:#667784;--line:#dce4e8;--danger:#b42318;--success:#067647;--warning:#a15c00;--shadow:0 12px 30px rgba(23,33,43,.08)}
*{box-sizing:border-box}html{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg);scroll-behavior:smooth}body{margin:0;min-height:100vh;font-size:16px;line-height:1.5}a{color:inherit}button,input,select,textarea{font:inherit}button:disabled{opacity:.62;cursor:not-allowed;pointer-events:none}:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 55%,white);outline-offset:3px}.topbar{min-height:74px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 max(20px,calc((100vw - 1440px)/2));position:sticky;top:0;z-index:40}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;min-width:0}.brand-logo{width:46px;height:46px;object-fit:contain;border-radius:10px}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:var(--accent);color:#fff;font-weight:800}.brand strong,.brand small{display:block}.brand small{color:var(--muted);font-size:.78rem}.topbar nav{display:flex;align-items:center;gap:8px}.topbar nav>a,.link-button{border:0;background:none;text-decoration:none;padding:10px 12px;border-radius:9px;color:#42515c;cursor:pointer}.topbar nav>a:hover,.topbar nav>a.active,.link-button:hover{background:color-mix(in srgb,var(--accent) 10%,white);color:var(--accent)}.nav-toggle{display:none;border:1px solid var(--line);background:#fff;border-radius:10px;padding:8px 11px;font-size:1.2rem}.inline{display:inline}.page-shell{width:min(1440px,calc(100% - 32px));margin:28px auto 76px}.hero{background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 72%,black),var(--accent));border-radius:24px;padding:38px;color:#fff;display:flex;justify-content:space-between;align-items:center;box-shadow:var(--shadow);margin-bottom:20px}.hero.compact{padding:30px 34px}.hero h1,.page-title h1,.auth-card h1,.success-card h1,.error-card h1{font-size:clamp(2rem,4vw,3.15rem);line-height:1.08;margin:.25rem 0 .8rem;letter-spacing:-.035em}.hero p{max-width:760px;margin:0;color:#fff;opacity:.9}.hero-status{min-width:210px;border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.1);border-radius:16px;padding:16px}.hero-status strong,.hero-status small{display:block}.hero-status small{opacity:.8;margin-top:3px}.dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:#8ff0c6;margin-right:6px}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.74rem;font-weight:800;color:var(--accent)}.hero .eyebrow{color:#fff;opacity:.82}.card,.notice-card{background:var(--card);border:1px solid var(--line);border-radius:18px;box-shadow:0 3px 12px rgba(23,33,43,.035)}.card{padding:24px;margin-bottom:18px}.notice-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:18px}.notice-card{padding:18px;display:flex;gap:14px}.notice-icon{display:grid;place-items:center;flex:0 0 36px;height:36px;border-radius:10px;background:color-mix(in srgb,var(--accent) 12%,white);color:var(--accent);font-weight:900}.notice-label{display:block;color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;font-weight:800}.notice-card h2{font-size:1rem;margin:.2rem 0}.notice-text{white-space:pre-wrap;margin:.2rem 0}.muted{color:var(--muted)}.progress-nav{position:sticky;top:86px;z-index:25;background:rgba(243,246,248,.94);backdrop-filter:blur(10px);display:grid;grid-template-columns:repeat(5,1fr);gap:8px;padding:9px 0;margin-bottom:8px}.progress-nav a{display:flex;align-items:center;justify-content:center;gap:7px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:9px;text-decoration:none;font-size:.86rem;font-weight:700}.progress-nav b{display:grid;place-items:center;width:24px;height:24px;border-radius:8px;background:color-mix(in srgb,var(--accent) 12%,white);color:var(--accent)}.form-section{scroll-margin-top:150px}.section-heading{display:flex;align-items:flex-start;gap:14px;margin-bottom:20px}.section-heading h2,.card h2{font-size:1.3rem;margin:0}.section-heading p,.page-title p,.card>p{color:var(--muted);margin:.2rem 0 0}.between{justify-content:space-between;align-items:center}.heading-group{display:flex;align-items:flex-start;gap:14px}.step{display:grid;place-items:center;flex:0 0 auto;width:34px;height:34px;border-radius:10px;background:color-mix(in srgb,var(--accent) 12%,white);color:var(--accent);font-weight:800}.grid{display:grid;gap:16px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.span-2{grid-column:span 2}label{display:flex;flex-direction:column;gap:7px;min-width:0;font-size:.9rem;font-weight:700;color:#34434e}label small{font-weight:400;color:var(--muted)}input,select,textarea{width:100%;min-width:0;border:1px solid #cbd7dc;border-radius:11px;background:#fff;padding:12px;color:var(--ink);outline:none;transition:.15s border,.15s box-shadow}textarea{resize:vertical;min-height:92px}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}.ack-row{margin-top:18px;display:flex;flex-direction:row;align-items:center;border:1px solid var(--line);background:#f8fbfb;border-radius:12px;padding:13px}.ack-row input{width:20px;height:20px}.checklist{margin-top:22px}.checklist h3{font-size:1rem}.check-row{display:grid;grid-template-columns:minmax(180px,1fr) auto minmax(220px,1fr);gap:14px;align-items:center;padding:12px 0;border-top:1px solid var(--line)}.segmented{display:flex;border:1px solid var(--line);border-radius:10px;overflow:hidden}.segmented label{display:block}.segmented input{position:absolute;opacity:0;pointer-events:none}.segmented span{display:block;padding:8px 11px;cursor:pointer;font-size:.8rem}.segmented input:checked+span{background:var(--accent);color:#fff}.dynamic-list{display:flex;flex-direction:column;gap:12px}.dynamic-row{background:#f8fafb;border:1px solid var(--line);border-radius:15px;padding:14px}.row-top{display:flex;align-items:center;gap:9px;margin-bottom:12px}.row-number{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#e3eaed;font-weight:800;color:#53636e}.row-top .icon-btn{margin-left:auto}.round-actions{display:flex;align-items:end}.icon-btn{width:36px;height:36px;border:0;border-radius:9px;cursor:pointer;font-size:1.35rem}.icon-btn.danger{background:#feeceb;color:var(--danger)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:10px;padding:10px 16px;font-weight:800;text-decoration:none;cursor:pointer;white-space:nowrap}.btn.primary{background:var(--accent);color:#fff}.btn.primary:hover{filter:brightness(.9)}.btn.secondary{background:color-mix(in srgb,var(--accent) 10%,white);border-color:color-mix(in srgb,var(--accent) 22%,white);color:var(--accent)}.btn.ghost{background:#fff;border-color:var(--line);color:#45545f}.btn.small{padding:8px 10px;font-size:.82rem}.btn.large{min-height:50px;padding:12px 22px}.actions{display:flex;gap:9px;flex-wrap:wrap}.severity-picker{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:14px}.severity-picker label{display:block}.severity-picker input{position:absolute;opacity:0}.severity-picker span{display:block;text-align:center;border:1px solid var(--line);border-radius:10px;padding:9px;cursor:pointer}.severity-picker input:checked+span{outline:2px solid currentColor;font-weight:900}.sev.bassa{color:#27734a}.sev.media{color:#856404}.sev.alta{color:#a54d00}.sev.critica{color:#b42318}.submit-bar{position:sticky;bottom:12px;background:#172a31;color:#fff;border-radius:16px;padding:16px 20px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 18px 45px rgba(23,33,43,.25);z-index:30}.submit-bar span,.submit-bar strong{display:block}.submit-bar span{color:#b9c8cf;font-size:.88rem}.alert{padding:14px 17px;border-radius:12px;margin-bottom:18px;font-weight:700}.alert.danger{background:#feeceb;color:#8f1d18;border:1px solid #f8c9c5}.alert.success{background:#e8f7ef;color:#05603a;border:1px solid #bce8cf}.success-card,.error-card{margin:80px auto;text-align:center}.narrow{max-width:660px}.success-icon{display:grid;place-items:center;width:76px;height:76px;border-radius:50%;background:#dff5e9;color:var(--success);font-size:2.2rem;font-weight:900;margin:0 auto 20px}.protocol{background:#f0f5f7;border:1px dashed #b8c7cd;border-radius:14px;padding:18px;margin:24px 0}.protocol small,.protocol strong{display:block}.protocol strong{font-size:1.6rem}.auth-wrap{min-height:calc(100vh - 230px);display:grid;place-items:center}.auth-card{width:min(480px,100%);padding:32px}.auth-card label{margin-top:15px}.auth-card .btn{width:100%;margin-top:22px}.admin-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:24px}.sidebar{background:#152a31;color:#dce8eb;border-radius:18px;padding:16px;height:max-content;position:sticky;top:96px}.sidebar strong{display:block;color:#fff;padding:10px 12px 14px}.sidebar a{display:block;text-decoration:none;padding:10px 12px;border-radius:9px;margin:2px 0}.sidebar a:hover,.sidebar a.active{background:var(--accent);color:#fff}.admin-content{min-width:0}.page-title{display:flex;justify-content:space-between;align-items:flex-end;margin:4px 0 20px}.page-title h1{font-size:2.25rem;margin:.3rem 0 .4rem}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.stats article{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px}.stats span,.detail-head span,.detail-grid span{display:block;color:var(--muted);font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.stats strong{display:block;font-size:1.9rem;margin-top:6px}.stat-danger{border-color:#f0bbb7!important}.attention-list{display:grid;gap:10px}.attention-item{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:12px;text-decoration:none}.severity-badge{padding:5px 8px;border-radius:999px;font-size:.72rem;font-weight:900}.severity-badge.Critica{background:#feeceb;color:#9a1d18}.severity-badge.Alta{background:#fff0db;color:#8f4700}.severity-badge.Media{background:#fff8cf;color:#715d00}.severity-badge.Bassa{background:#e7f6ee;color:#17663e}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:760px}th,td{text-align:left;padding:12px;border-bottom:1px solid #e7edef;vertical-align:top}th{font-size:.76rem;text-transform:uppercase;letter-spacing:.05em;color:#667784;background:#f8fafb}tbody tr:hover{background:#fafcfc}.table-link,.back{color:var(--accent);font-weight:800;text-decoration:none}.empty{text-align:center;color:var(--muted);padding:30px}.cell-sub{display:block;color:var(--muted)}.status{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:.72rem;font-weight:800;text-transform:capitalize}.status.inviato{background:#fff2cc;color:#765600}.status.preso_in_carico{background:#deefff;color:#175a91}.status.archiviato,.status.risolta{background:#e6f4ea;color:#166534}.status.aperta{background:#feeceb;color:#8f1d18}.filters{display:grid;grid-template-columns:1.5fr repeat(4,minmax(130px,.8fr));gap:12px;align-items:end}.filter-buttons{display:flex;gap:8px;grid-column:1/-1}.quick-filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.chip{background:#fff;border:1px solid var(--line);border-radius:999px;padding:7px 11px;text-decoration:none;font-size:.82rem;font-weight:700}.pagination{display:flex;justify-content:center;align-items:center;gap:8px;margin-top:16px}.detail-head{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.detail-head strong{display:block;margin-top:7px}.detail-head small{color:var(--muted)}.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.detail-grid>div{background:#f7fafb;border:1px solid var(--line);border-radius:12px;padding:15px}.detail-grid p{white-space:pre-wrap;margin:.4rem 0 0}.count{display:inline-grid;place-items:center;min-width:28px;height:28px;border-radius:50%;background:color-mix(in srgb,var(--accent) 12%,white);color:var(--accent);font-size:.85rem}.anomaly-admin{border:1px solid var(--line);border-radius:14px;padding:14px;margin-top:12px}.anomaly-admin-head{display:flex;justify-content:space-between;gap:10px}.photo-grid{display:flex;gap:8px;overflow:auto;margin:10px 0}.photo-grid img{width:120px;height:90px;object-fit:cover;border-radius:10px;border:1px solid var(--line)}.anomaly-form{display:grid;grid-template-columns:160px 1fr 2fr auto;gap:10px;align-items:end;margin-top:12px}.settings-form{display:grid;gap:15px}.settings-divider{border-top:1px solid var(--line);padding-top:14px}.logo-preview{display:flex;align-items:center;gap:16px}.logo-preview img{max-width:180px;max-height:84px;object-fit:contain}.check-label{flex-direction:row;align-items:center}.check-label input{width:auto}.settings-columns{display:grid;grid-template-columns:1fr 1fr;gap:16px}footer{text-align:center;color:var(--muted);padding:20px 16px 36px;font-size:.84rem}
@media(max-width:1050px){.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}.stats{grid-template-columns:repeat(2,1fr)}.filters{grid-template-columns:repeat(2,1fr)}.admin-layout{grid-template-columns:1fr}.sidebar{position:static;display:flex;overflow:auto;gap:4px}.sidebar strong{display:none}.sidebar a{white-space:nowrap}.detail-head{grid-template-columns:repeat(2,1fr)}.anomaly-form{grid-template-columns:1fr 1fr}.anomaly-form .span-wide{grid-column:1/-1}}
@media(max-width:720px){body{font-size:15px}.topbar{min-height:64px;padding:7px 12px}.brand-logo,.brand-mark{width:38px;height:38px}.brand-copy small{display:none}.nav-toggle{display:block}.topbar nav{display:none;position:absolute;top:62px;left:10px;right:10px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:8px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch}.topbar nav.open{display:flex}.topbar nav>a,.link-button{width:100%;text-align:left}.page-shell{width:min(100% - 20px,1440px);margin:16px auto 60px}.hero.compact{padding:22px;border-radius:18px;display:block}.hero h1{font-size:2rem}.hero-status{margin-top:16px;min-width:0}.notice-grid{grid-template-columns:1fr}.progress-nav{top:63px;overflow:auto;grid-template-columns:repeat(5,minmax(74px,1fr));padding:7px 0}.progress-nav span{display:none}.card{padding:17px;border-radius:15px}.grid-2,.grid-4,.detail-grid,.detail-head,.settings-columns{grid-template-columns:1fr}.span-2{grid-column:auto}.section-heading.between,.between{align-items:flex-start;flex-direction:column}.section-heading .actions{width:100%}.section-heading .actions .btn{flex:1}.check-row{grid-template-columns:1fr}.severity-picker{grid-template-columns:repeat(2,1fr)}.submit-bar{bottom:6px;display:block;padding:14px}.submit-bar .btn{width:100%;margin-top:10px}.submit-bar span{display:none}.page-title{display:block}.page-title .actions{margin-top:12px}.stats{grid-template-columns:repeat(2,1fr)}.stats article{padding:14px}.stats strong{font-size:1.55rem}.filters{grid-template-columns:1fr}.filter-buttons{grid-column:auto}.sidebar{margin-bottom:6px}.anomaly-form{grid-template-columns:1fr}.attention-item{grid-template-columns:auto 1fr}.attention-item>small{grid-column:2}.round-actions{display:block}.round-actions .btn{width:100%}.auth-wrap{min-height:0}.auth-card{padding:22px}.logo-preview{align-items:flex-start;flex-direction:column}}
/* V15 operations */
.situation-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.situation-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;min-height:150px}.situation-card>span{display:block;color:var(--muted);font-size:.76rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.situation-card>strong{display:block;font-size:1.3rem;margin:12px 0 5px}.situation-card p{margin:0 0 8px;color:#43525b}.situation-card small{color:var(--muted)}.situation-card>a{display:inline-block;margin-top:10px;color:var(--accent);font-weight:800;text-decoration:none}.situation-card.attention{border-color:#f2cf83;background:#fffaf0}.situation-card.danger{border-color:#efb0aa;background:#fff8f7}.dashboard-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px}.dashboard-columns>.card{margin-top:0}.timeline{display:flex;flex-direction:column}.timeline article{display:grid;grid-template-columns:58px 1fr;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}.timeline article:last-child{border-bottom:0}.timeline time{font-weight:900;color:var(--accent);font-variant-numeric:tabular-nums}.timeline strong{display:block}.timeline p{margin:4px 0;white-space:pre-wrap}.timeline small{color:var(--muted)}.handover-public-list{display:flex;flex-direction:column;gap:8px;margin:12px 0}.handover-public-item{display:grid;grid-template-columns:auto 1fr;gap:10px;border:1px solid var(--line);border-radius:12px;padding:10px;background:#fff}.handover-public-item.urgente{border-color:#efb0aa;background:#fff8f7}.handover-public-item.da_fare{border-color:#f2cf83;background:#fffaf0}.handover-public-item input{width:auto;margin-top:3px}.handover-public-item strong,.handover-public-item small,.handover-public-item em{display:block}.handover-public-item small{color:var(--muted);margin:2px 0 5px}.handover-public-item em{font-style:normal;white-space:pre-wrap}.handover-admin-list{display:flex;flex-direction:column;gap:10px}.handover-admin-item{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center;padding:14px;border:1px solid var(--line);border-left:5px solid #b7c4ca;border-radius:13px;background:#fff}.handover-admin-item.da_fare{border-left-color:#d49a17}.handover-admin-item.urgente{border-left-color:#c8392e}.handover-admin-item strong{display:block;margin:6px 0}.handover-admin-item p{white-space:pre-wrap;margin:4px 0}.handover-admin-item small{display:block;color:var(--muted);margin-top:4px}.handover-admin-list.full .handover-admin-item{grid-template-columns:minmax(0,1.5fr) minmax(280px,.7fr)}.handover-body h2{margin:.5rem 0}.handover-action{display:grid;gap:9px}.priority{display:inline-flex;border-radius:999px;padding:5px 9px;background:#eef3f5;color:#4a5962;font-size:.72rem;font-weight:900;text-transform:uppercase}.urgente .priority{background:#feeceb;color:#9a1d18}.da_fare .priority{background:#fff0d4;color:#855300}.status.completata{background:#e6f4ea;color:#166534}.status.presa_in_carico{background:#deefff;color:#175a91}.event-card{border-left:4px solid color-mix(in srgb,var(--accent) 65%,white)}.handover-card{border-left:4px solid #d49a17}.anomaly-form.evolved{grid-template-columns:repeat(4,minmax(130px,1fr));align-items:end}.anomaly-form.evolved .span-wide{grid-column:span 2}.stats-filter{grid-template-columns:1fr 1fr auto!important}.metric-bars{display:flex;flex-direction:column;gap:12px;margin-top:14px}.metric-bars>div{display:grid;grid-template-columns:minmax(100px,150px) 1fr 45px;gap:12px;align-items:center}.metric-bars>div>span{font-weight:700}.metric-bars>div>strong{text-align:right}.bar{height:10px;background:#edf2f4;border-radius:999px;overflow:hidden}.bar i{display:block;height:100%;background:var(--accent);border-radius:inherit}.progress-nav{grid-template-columns:repeat(7,minmax(80px,1fr))}
@media(max-width:1050px){.situation-grid{grid-template-columns:repeat(2,1fr)}.dashboard-columns{grid-template-columns:1fr}.anomaly-form.evolved{grid-template-columns:repeat(2,1fr)}.handover-admin-list.full .handover-admin-item{grid-template-columns:1fr}.stats-filter{grid-template-columns:1fr 1fr!important}}
@media(max-width:720px){.situation-grid{grid-template-columns:1fr}.dashboard-columns{grid-template-columns:1fr}.progress-nav{grid-template-columns:repeat(7,minmax(58px,1fr))}.handover-admin-item,.handover-admin-list.full .handover-admin-item{grid-template-columns:1fr}.handover-admin-item .btn{width:100%}.anomaly-form.evolved{grid-template-columns:1fr}.anomaly-form.evolved .span-wide{grid-column:auto}.stats-filter{grid-template-columns:1fr!important}.metric-bars>div{grid-template-columns:95px 1fr 38px}.handover-public-item{padding:9px}.event-card textarea,.handover-card textarea{min-height:80px}}
.metric-progress{width:100%;height:10px;border:0;border-radius:999px;overflow:hidden;background:#edf2f4}.metric-progress::-webkit-progress-bar{background:#edf2f4;border-radius:999px}.metric-progress::-webkit-progress-value{background:var(--accent);border-radius:999px}.metric-progress::-moz-progress-bar{background:var(--accent);border-radius:999px}

/* V15 operator cockpit: action-first UI, popup panels and mobile bottom sheets */
.operator-hero{margin-bottom:14px}.operator-alerts{display:grid;gap:10px;margin:0 0 14px}.op-banner{width:100%;border:0;border-radius:18px;padding:14px 16px;display:flex;align-items:center;gap:13px;text-align:left;cursor:pointer;background:#fff;box-shadow:0 10px 28px rgba(20,35,45,.08);color:inherit}.op-banner.urgent{border-left:5px solid #d97706}.op-banner.info{border-left:5px solid var(--accent,#0f766e)}.op-banner-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:rgba(15,118,110,.09);font-weight:900;font-size:20px;flex:0 0 auto}.op-banner>span:nth-child(2){display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}.op-banner small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--muted,#64727b)}.op-banner b{font-size:12px;padding:7px 10px;border-radius:999px;background:rgba(15,118,110,.09);color:var(--accent,#0f766e)}
.operator-cockpit{display:block}.quick-action-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px}.quick-action{border:1px solid #dbe5e8;background:#fff;border-radius:18px;min-height:104px;padding:14px;display:flex;flex-direction:column;align-items:flex-start;gap:4px;text-align:left;cursor:pointer;box-shadow:0 7px 20px rgba(20,35,45,.05);transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.quick-action:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(20,35,45,.09);border-color:#b8ced2}.quick-action>span{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:rgba(15,118,110,.09);font-weight:900;color:var(--accent,#0f766e);font-size:18px}.quick-action strong{font-size:14px}.quick-action small{color:var(--muted,#64727b)}.quick-action.attention>span{background:#fff0e8;color:#c2410c}
.turn-overview{padding:18px}.overview-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.overview-head h2{margin:3px 0 0}.completion{width:88px;height:88px;border-radius:50%;border:7px solid rgba(15,118,110,.13);display:flex;flex-direction:column;align-items:center;justify-content:center;flex:0 0 auto}.completion strong{font-size:20px;color:var(--accent,#0f766e)}.completion span{font-size:10px;color:var(--muted,#64727b)}.operator-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.operator-tile{border:1px solid #dbe5e8;background:#fbfdfd;border-radius:17px;padding:14px;display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:11px;text-align:left;cursor:pointer;min-height:82px;color:inherit}.operator-tile:hover{background:#fff;border-color:#b8ced2}.operator-tile.wide{grid-column:1/-1}.operator-tile.attention{background:#fffaf7}.tile-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:13px;background:#eaf4f3;color:var(--accent,#0f766e);font-weight:900}.operator-tile>span:nth-child(2){display:flex;flex-direction:column;gap:3px;min-width:0}.operator-tile strong{font-size:14px}.operator-tile small{color:var(--muted,#64727b);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.operator-tile em{font-style:normal;font-size:11px;font-weight:800;color:var(--accent,#0f766e);background:#eaf4f3;border-radius:999px;padding:6px 9px}.operator-tile em.done{background:#e7f7ed;color:#18733a}
.operator-submit{position:sticky;bottom:12px;z-index:30;margin:14px 0 8px;background:rgba(25,34,40,.94);color:#fff;border-radius:18px;padding:12px 14px;display:flex;align-items:center;justify-content:space-between;gap:16px;box-shadow:0 16px 40px rgba(0,0,0,.25);backdrop-filter:blur(10px)}.operator-submit>div{display:flex;flex-direction:column;gap:2px}.operator-submit span{font-size:12px;color:#cfd8dc}
.operator-panel{padding:0;border:0;background:transparent;max-width:none;max-height:none;width:100vw;height:100vh}.operator-panel::backdrop{background:rgba(8,18,24,.58);backdrop-filter:blur(3px)}.panel-shell{background:#f4f7f8;width:min(920px,calc(100vw - 36px));height:min(86vh,900px);position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border-radius:24px;overflow:hidden;display:grid;grid-template-rows:auto 1fr auto;box-shadow:0 30px 80px rgba(0,0,0,.3)}.compact-panel .panel-shell{height:auto;max-height:76vh;width:min(720px,calc(100vw - 36px))}.panel-header{display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:10px;padding:14px 16px;background:#fff;border-bottom:1px solid #dce5e8}.panel-header>div span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted,#64727b);font-weight:800}.panel-header h2{margin:1px 0 0;font-size:19px}.panel-back,.panel-done{border:0;background:transparent;cursor:pointer;color:var(--accent,#0f766e);font-weight:800}.panel-back{width:42px;height:42px;border-radius:13px;background:#eef5f5;font-size:20px}.panel-done{padding:9px}.panel-body{overflow:auto;padding:18px;overscroll-behavior:contain}.panel-footer{padding:12px 16px;background:#fff;border-top:1px solid #dce5e8;display:flex;justify-content:flex-end}.panel-footer.split{justify-content:space-between;gap:10px}.panel-intro{margin:0 0 14px;color:var(--muted,#64727b)}.panel-action-banner{background:#eaf4f3;border-radius:17px;padding:13px 14px;margin-bottom:14px;display:flex;align-items:center;justify-content:space-between;gap:14px}.panel-action-banner.alert{background:#fff2ea}.panel-action-banner>div{display:flex;flex-direction:column;gap:2px}.panel-action-banner small{color:var(--muted,#64727b)}.compact-fields{margin-bottom:18px}.message-popup{display:flex;gap:15px;align-items:flex-start;font-size:16px}.message-popup>span{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:#fff1db;color:#a95208;font-weight:900;flex:0 0 auto}.message-popup p{margin:8px 0;white-space:pre-wrap}.close-summary{display:grid;grid-template-columns:2fr repeat(4,1fr);gap:9px;margin-bottom:18px}.close-summary article{background:#fff;border:1px solid #dde6e8;border-radius:15px;padding:12px;display:flex;flex-direction:column;gap:3px;min-width:0}.close-summary article:first-child strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.close-summary b{font-size:22px;color:var(--accent,#0f766e)}.close-summary span{font-size:11px;color:var(--muted,#64727b)}.final-confirm{margin-top:16px;padding:14px;border-radius:15px;background:#eef5f5}.final-confirm p{margin:5px 0 0;color:var(--muted,#64727b)}
.toast-stack{position:fixed;right:18px;bottom:90px;z-index:10000;display:flex;flex-direction:column;gap:8px;pointer-events:none}.toast{background:#17212b;color:#fff;padding:11px 14px;border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.2);opacity:0;transform:translateY(8px);transition:.2s ease;max-width:340px;font-size:13px}.toast.show{opacity:1;transform:translateY(0)}.toast.warn{background:#8a3b12}.toast.neutral{background:#53636e}.panel-open{overflow:hidden}
@media(max-width:760px){.operator-hero{padding:17px}.operator-alerts{gap:8px}.op-banner{border-radius:15px;padding:12px}.quick-action-strip{grid-template-columns:repeat(2,1fr);gap:8px}.quick-action{min-height:88px;border-radius:15px;padding:12px}.turn-overview{padding:13px}.overview-head{margin-bottom:12px}.completion{width:68px;height:68px;border-width:5px}.completion strong{font-size:17px}.operator-grid{grid-template-columns:1fr;gap:8px}.operator-tile.wide{grid-column:auto}.operator-tile{min-height:72px;padding:11px;border-radius:15px}.operator-submit{bottom:7px;border-radius:16px;margin-bottom:7px;padding:10px}.operator-submit>div{display:none}.operator-submit .btn{width:100%}.operator-panel{height:100dvh}.panel-shell,.compact-panel .panel-shell{width:100vw;height:100dvh;max-height:none;left:0;top:0;transform:none;border-radius:0}.panel-header{position:sticky;top:0;z-index:3;padding:10px 12px}.panel-body{padding:13px 12px 90px}.panel-footer{position:sticky;bottom:0;z-index:4;padding:10px 12px}.panel-footer .btn{min-height:46px}.panel-action-banner{align-items:stretch;flex-direction:column}.panel-action-banner .btn{width:100%}.panel-body .grid{grid-template-columns:1fr}.panel-body .grid .span-2,.panel-body .grid .span-wide{grid-column:auto}.check-row{grid-template-columns:1fr}.close-summary{grid-template-columns:repeat(2,1fr)}.close-summary article:first-child{grid-column:1/-1}.toast-stack{left:12px;right:12px;bottom:76px}.toast{max-width:none}.dynamic-row{border-radius:15px}.severity-picker{grid-template-columns:repeat(2,1fr)} }

/* V15: turn guidance, notification center, compact reports and system status */
.round-monitor{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:12px;padding:14px 17px;border-left:5px solid var(--accent,#0f766e)}.round-monitor>div:first-child{display:flex;flex-direction:column;gap:3px}.round-monitor strong{font-size:16px}.round-monitor small{color:var(--muted,#64727b)}.round-monitor.warning{border-left-color:#d97706;background:#fff9ef}.round-progress{display:flex;align-items:flex-end;gap:10px;flex-direction:column}.round-progress strong{font-size:18px;color:var(--accent,#0f766e)}.round-progress span{font-size:11px;color:var(--muted,#64727b)}.notification-center:empty{display:none}.notification-center{margin-bottom:10px}.notification-button{width:100%;display:grid;grid-template-columns:32px auto 1fr;gap:9px;align-items:center;border:1px solid #f0d7ae;background:#fff9ef;color:#6f4100;border-radius:14px;padding:10px 12px;text-align:left;cursor:pointer}.notification-button span{font-size:18px}.notification-button strong{font-size:12px}.notification-button small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#815f25}.close-warnings{margin:0 0 13px}.warning-box,.success-box{border-radius:14px;padding:12px 14px;display:flex;flex-direction:column;gap:5px}.warning-box{background:#fff6e8;border:1px solid #f1d4a2;color:#6f4100}.success-box{background:#ecf8f0;border:1px solid #c6e7d0;color:#216b3b}.warning-box ul{margin:4px 0 2px;padding-left:20px}.warning-box li{margin:3px 0}.warning-box small,.success-box small{opacity:.78}.comparison-card{margin-top:14px}.ok-text{color:#17733a}.system-health-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
@media(max-width:760px){.round-monitor{align-items:flex-start}.round-progress{min-width:78px}.notification-button{grid-template-columns:28px 1fr}.notification-button small{grid-column:2}.system-health-grid{grid-template-columns:1fr 1fr}}
/* V15: timeline operativa, ronde pianificate, UI con emoji */
.round-slots,.turn-timeline{margin-bottom:12px;padding:14px 17px}.round-slot-list{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.round-slot{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:7px 10px;background:#f0f4f5;border:1px solid #dce5e8;font-size:11px;font-weight:750;color:#61717a}.round-slot.done{background:#eaf8ef;border-color:#c4e8d0;color:#1d6d3a}.round-slot.current{background:#fff7e9;border-color:#efd49e;color:#85520a}.round-slot.neutral{font-weight:600}.live-timeline{display:flex;flex-direction:column;margin-top:10px}.live-timeline-item{display:grid;grid-template-columns:46px 32px 1fr;gap:8px;align-items:start;padding:9px 0;border-bottom:1px solid #e5ecee}.live-timeline-item:last-child{border-bottom:0}.live-timeline-item time{font-size:11px;font-weight:800;color:var(--muted,#64727b);padding-top:3px}.live-timeline-item>span{font-size:18px;line-height:1.2}.live-timeline-item>div{display:flex;flex-direction:column;gap:2px}.live-timeline-item strong{font-size:12px}.live-timeline-item small{color:var(--muted,#64727b);white-space:pre-wrap}.tile-icon{font-size:18px}.quick-action>span{font-family:system-ui,-apple-system,"Segoe UI Emoji","Apple Color Emoji",sans-serif}
@media(max-width:760px){.round-slots,.turn-timeline{padding:12px}.round-slot-list{flex-wrap:nowrap;overflow:auto;padding-bottom:3px}.round-slot{white-space:nowrap;flex:0 0 auto}.live-timeline-item{grid-template-columns:40px 28px 1fr}}

/* V20 — console chiara ispirata ai gestionali desktop classici, ottimizzata touch */
body{background:#dfeaf1}.page-shell{background:#eef5f9;border:1px solid #b7cbd7;padding:10px;box-shadow:inset 0 0 0 4px #fff}.v20-desktop-shell-head{margin:-10px -10px 10px}.v20-titlebar{min-height:34px;padding:6px 12px;background:linear-gradient(#168bc3,#0878b2);color:#fff;display:flex;align-items:center;gap:9px;font-size:13px}.v20-titlebar small{margin-left:auto;opacity:.85}.guard-focus{display:grid;grid-template-columns:56px minmax(260px,1.7fr) minmax(130px,.7fr) 26px minmax(130px,.7fr) minmax(150px,.7fr);align-items:end;gap:10px;padding:14px;border-radius:4px;border:2px solid #c4d5df;background:#f7fbfd;box-shadow:inset 0 0 0 3px #e3edf3;margin-bottom:10px}.guard-focus-icon{height:58px;display:grid;place-items:center;font-size:34px;background:#fff;border:1px solid #cbdce5}.guard-focus label{font-size:12px}.guard-focus input{border-radius:2px;border-color:#a9c3d2;background:#fff;padding:10px;font-size:17px;font-weight:800}.guard-name-focus input{border:2px solid #d4dd00;background:#ffffef}.time-arrow{font-size:22px;text-align:center;padding-bottom:8px;color:#4d6573}.guard-state{align-self:center;background:#e7f5fb;border:1px solid #bdd9e6;padding:8px 10px;display:flex;flex-direction:column}.guard-state strong{font-size:12px}.guard-state small{font-size:10px;color:#5e7480}.card{border-radius:4px;border-color:#c4d5df;box-shadow:none;background:#f8fbfd}.operator-cockpit{position:relative;padding-right:128px}.quick-action-strip{position:fixed;right:max(12px,calc((100vw - 1440px)/2 + 12px));top:118px;width:112px;z-index:28;display:flex;flex-direction:column;gap:7px}.quick-action{min-height:54px;border-radius:3px;background:linear-gradient(#18a4ce,#078ab8);border:1px solid #08799e;color:#fff;box-shadow:inset 0 1px rgba(255,255,255,.45);padding:7px 8px}.quick-action:hover{filter:brightness(.96)}.quick-action>span{font-size:18px}.quick-action strong{font-size:11px}.quick-action small{font-size:9px;color:#e8faff}.quick-action.attention{background:linear-gradient(#f0a24d,#db7b1f);border-color:#c76d18}.operator-tile{border-radius:3px;background:#f4f9fc;border-color:#bfd1db}.operator-tile:hover{background:#fff}.operator-submit{border-radius:4px;background:#166f99}.btn{border-radius:3px}.operator-panel .panel-shell{border-radius:5px;border:3px solid #b8ccd8;background:#eef5f9}.panel-header{background:#dceaf2}.panel-back{border-radius:3px}.panel-action-banner{border-radius:4px}.dynamic-row{border-radius:4px}.admin-carousel{position:relative;display:grid;grid-template-columns:38px 1fr 38px;align-items:stretch;background:#fff;border:2px solid #bfd2dd;margin:0 0 10px;min-height:74px;overflow:hidden}.carousel-track{position:relative;min-height:72px}.carousel-slide{display:none;padding:10px 14px 18px;grid-template-columns:28px auto;gap:2px 8px;align-items:center}.carousel-slide.active{display:grid}.carousel-slide>span{grid-row:1/3;font-size:22px}.carousel-slide strong{font-size:12px;color:#087cae}.carousel-slide p{margin:0;white-space:pre-wrap;font-size:12px;color:#405764}.carousel-arrow{border:0;background:#e5f2f8;color:#087cae;font-size:28px;cursor:pointer}.carousel-dots{position:absolute;bottom:5px;left:50%;transform:translateX(-50%);display:flex;gap:5px}.carousel-dots button{width:7px;height:7px;border:0;border-radius:50%;background:#b6c8d2;padding:0}.carousel-dots button.active{background:#078ab8}.op-banner{border-radius:3px}.close-warnings .warning-box:before{content:'ℹ️ Questi sono avvisi, non blocchi. Puoi sempre chiudere il turno.';font-weight:800;display:block;margin-bottom:5px}.final-confirm{border-radius:4px}.final-confirm strong:before{content:'✅ '}
@media(max-width:900px){.operator-cockpit{padding-right:0}.quick-action-strip{position:static;width:auto;display:grid;grid-template-columns:repeat(4,1fr);margin-bottom:10px}.quick-action{min-height:72px}.guard-focus{grid-template-columns:44px 1fr 1fr}.guard-focus-icon{grid-row:1/3}.guard-name-focus{grid-column:2/4}.time-arrow{display:none}.guard-state{grid-column:1/-1}.page-shell{width:calc(100% - 12px);margin-top:6px}}
@media(max-width:600px){body{background:#eef5f9}.topbar{min-height:58px}.brand small{display:none}.page-shell{padding:6px;border:0;box-shadow:none}.v20-titlebar small{display:none}.guard-focus{position:sticky;top:62px;z-index:27;grid-template-columns:1fr 1fr;padding:9px;gap:7px;box-shadow:0 5px 14px rgba(30,72,92,.13)}.guard-focus-icon{display:none}.guard-name-focus{grid-column:1/-1}.guard-focus input{font-size:16px;min-height:45px}.guard-state{display:none}.quick-action-strip{grid-template-columns:repeat(2,1fr);position:sticky;top:213px;z-index:24;background:#eef5f9;padding:4px 0}.quick-action{min-height:62px}.admin-carousel{grid-template-columns:30px 1fr 30px}.carousel-slide{padding:8px 8px 17px}.operator-submit{bottom:5px}.operator-panel .panel-shell{border:0}.round-slots,.round-monitor{display:none}}

/* V20 — rail azioni senza sovrapposizioni: lo spazio del menu è sempre riservato. */
.operator-page-layout{position:relative;padding-right:132px;min-width:0}
.operator-page-layout .operator-cockpit{padding-right:0;min-width:0}
.operator-page-layout .quick-action-strip{right:max(12px,calc((100vw - 1440px)/2 + 18px));width:112px}
.operator-page-layout .card,.operator-page-layout .admin-carousel,.operator-page-layout .op-banner{min-width:0;max-width:100%}
.operator-page-layout .carousel-slide,.operator-page-layout .carousel-slide p{min-width:0;overflow-wrap:anywhere}
@media(max-width:1180px){
  .operator-page-layout{padding-right:0}
  .operator-page-layout .quick-action-strip{position:static;right:auto;top:auto;width:auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:10px}
  .operator-page-layout .quick-action{min-width:0;min-height:68px}
  .operator-page-layout .quick-action strong,.operator-page-layout .quick-action small{overflow-wrap:anywhere}
}
@media(max-width:700px){
  .operator-page-layout .quick-action-strip{grid-template-columns:repeat(2,minmax(0,1fr));position:sticky;top:213px;z-index:24;background:#eef5f9;padding:4px 0}
}

/* V20 — layout professionale: rail azioni in colonna dedicata, mai sovrapposto. */
:root{--v20-navy:#17384d;--v20-blue:#0b7fac;--v20-cyan:#159bc3;--v20-line:#c7d8e2;--v20-surface:#f7fafc;--v20-soft:#eaf3f8;--v20-text:#17313f;--v20-muted:#607785}
body{background:#e8f0f5;color:var(--v20-text)}
.page-shell{max-width:1700px;background:#f4f8fb;border:1px solid #bfd1dc;box-shadow:0 10px 28px rgba(25,58,77,.08),inset 0 0 0 4px #fff}
.v20-titlebar{min-height:40px;padding:8px 14px;background:linear-gradient(180deg,#148dbb,#0876a3);border-bottom:1px solid #075f83;box-shadow:inset 0 1px rgba(255,255,255,.22);letter-spacing:.01em}
.guard-focus{border:1px solid #bfd2dd;border-left:4px solid var(--v20-blue);background:#fbfdfe;box-shadow:0 3px 12px rgba(28,64,83,.06);padding:15px 16px}
.guard-focus-icon{border-radius:6px;background:linear-gradient(180deg,#fff,#f0f6f9)}
.guard-focus input{border-radius:5px;border:1px solid #9fbac9;box-shadow:inset 0 1px 2px rgba(20,55,74,.05)}
.guard-name-focus input{border:2px solid #d3d92b;background:#fffef0}
.guard-state{border-radius:6px;background:#edf8fc;border-color:#bedce8}
.admin-carousel,.card,.op-banner{border-radius:7px}
.card{border:1px solid #c5d7e1;background:#fbfdfe;box-shadow:0 2px 8px rgba(30,67,87,.045)}

/* Il form diventa una vera griglia a due colonne. Il rail vive nel flusso del documento. */
.operator-page-layout .operator-cockpit{display:grid;grid-template-columns:minmax(0,1fr) 136px;column-gap:14px;row-gap:12px;padding-right:0;align-items:start;position:relative}
.operator-page-layout .operator-cockpit>.quick-action-strip{grid-column:2;grid-row:1 / span 8;position:sticky;top:92px;right:auto;width:136px;margin:0;display:flex;flex-direction:column;gap:8px;padding:8px;background:#e5f0f6;border:1px solid #b9ceda;border-radius:7px;box-shadow:0 5px 16px rgba(25,61,81,.09);z-index:12;align-self:start}
.operator-page-layout .operator-cockpit>.round-monitor,
.operator-page-layout .operator-cockpit>.round-slots,
.operator-page-layout .operator-cockpit>.turn-timeline,
.operator-page-layout .operator-cockpit>.turn-overview,
.operator-page-layout .operator-cockpit>.operator-submit{grid-column:1;min-width:0;margin-bottom:0}
.quick-action-heading{padding:4px 5px 6px;border-bottom:1px solid #bdd1dc;display:flex;flex-direction:column;gap:1px}
.quick-action-heading span{font-size:9px;font-weight:900;letter-spacing:.13em;color:#5f7a89}
.quick-action-heading strong{font-size:12px;color:var(--v20-navy)}
.operator-page-layout .quick-action{width:100%;min-width:0;min-height:72px;border-radius:6px;padding:9px 8px;background:linear-gradient(180deg,#18a2c9,#0785b1);border:1px solid #08789d;box-shadow:0 2px 5px rgba(7,94,129,.16),inset 0 1px rgba(255,255,255,.3);justify-content:center}
.operator-page-layout .quick-action>span{width:30px;height:30px;border-radius:7px;background:rgba(255,255,255,.17);color:#fff}
.operator-page-layout .quick-action strong{font-size:11px;line-height:1.15;color:#fff}
.operator-page-layout .quick-action small{font-size:9px;line-height:1.2;color:#e9f9ff}
.operator-page-layout .quick-action.attention{background:linear-gradient(180deg,#f1a34e,#dd7d20);border-color:#c96d16}
.operator-page-layout .quick-action:hover{transform:translateY(-1px);filter:none;box-shadow:0 5px 10px rgba(7,94,129,.2),inset 0 1px rgba(255,255,255,.3)}
.round-monitor,.round-slots,.turn-timeline,.turn-overview{overflow:hidden}
.operator-submit{box-shadow:0 5px 14px rgba(16,85,118,.14);background:linear-gradient(90deg,#176f98,#12648a)}
.operator-submit .btn.primary{background:#13866f;border-color:#0e735f;box-shadow:0 2px 6px rgba(8,91,73,.18)}

@media(max-width:1180px){
 .operator-page-layout .operator-cockpit{display:block}
 .operator-page-layout .operator-cockpit>.quick-action-strip{position:static;width:auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0 0 10px;padding:8px}
 .operator-page-layout .quick-action-heading{grid-column:1/-1;flex-direction:row;align-items:baseline;gap:8px}
 .operator-page-layout .quick-action{min-height:68px}
}
@media(max-width:600px){
 .page-shell{background:#f3f8fb}
 .operator-page-layout .operator-cockpit>.quick-action-strip{position:sticky;top:213px;grid-template-columns:repeat(2,minmax(0,1fr));z-index:24;padding:6px;background:rgba(234,243,248,.97);backdrop-filter:blur(6px)}
 .operator-page-layout .quick-action-heading{display:none}
 .operator-page-layout .quick-action{min-height:60px}
}

/* === V20 MODERN SECURITY CONSOLE — mockup approvato === */
.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}
body.operator-view{background:#f4f7fb;color:#111827}
body.operator-view .topbar.operator-topbar{height:72px;min-height:72px;background:#071426;color:#fff;border:0;padding:0 24px;box-shadow:0 1px 0 rgba(255,255,255,.04);position:sticky;top:0;z-index:60}
body.operator-view .brand{color:#fff;gap:13px}
body.operator-view .brand-mark{width:38px;height:38px;border-radius:10px;background:#fff;color:#0c1b2f;font-size:20px;box-shadow:none}
body.operator-view .brand-logo{width:42px;height:42px;border-radius:9px;background:#fff;padding:4px}
body.operator-view .brand strong{font-size:16px;letter-spacing:.01em;color:#fff}
body.operator-view .brand small{font-size:12px;color:#c6d0df;margin-top:1px}
body.operator-view .operator-clock{position:absolute;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:9px;color:#fff;font-size:13px;white-space:nowrap}
body.operator-view .operator-clock span{color:#d8e1ef;font-size:15px;margin-left:8px}
body.operator-view .operator-clock strong{font-weight:500}
body.operator-view .topbar nav{gap:8px}
body.operator-view .topbar nav>a,body.operator-view .link-button{color:#e2e8f0;border-radius:6px;padding:9px 14px}
body.operator-view .topbar nav>a:hover,body.operator-view .topbar nav>a.active,body.operator-view .link-button:hover{background:#0d5fc2;color:#fff}
body.operator-view .page-shell{width:100%;max-width:none;margin:0;padding:0;background:#f4f7fb;border:0;box-shadow:none}
body.operator-view .alert{margin:14px 24px 0}

.operator-page-layout.operator-modern{padding:0!important;margin:0;min-width:0}
.operator-modern-shell{display:grid;grid-template-columns:minmax(0,1fr) 360px;min-height:calc(100vh - 72px);align-items:stretch}
.operator-modern-main{min-width:0;padding:26px 26px 28px;background:#f5f7fb}
.operator-modern-main>.card,.operator-modern-main .operator-cockpit>.card,.operator-summary-row>.card{border:1px solid #dde4ed;border-radius:8px;background:#fff;box-shadow:0 2px 7px rgba(15,23,42,.045);margin-bottom:0}

.modern-shift-card{display:grid!important;grid-template-columns:72px minmax(260px,1.35fr) 180px 34px 180px 190px;grid-template-rows:auto 1fr;gap:14px 20px;align-items:end;padding:17px 20px!important;margin:0 0 20px!important;border-radius:8px!important}
.shift-card-heading{grid-column:1/-1;display:flex;align-items:baseline;gap:5px;color:#111827;font-size:12px;line-height:1}
.shift-card-heading strong{font-size:12px;letter-spacing:.02em}
.shift-card-heading span{color:#64748b;font-weight:500}
.modern-shift-card .guard-focus-icon{grid-column:1;grid-row:2;width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:#fff;border:1px solid #d8e1eb;font-size:35px;box-shadow:0 2px 6px rgba(15,23,42,.06)}
.modern-shift-card label{gap:7px;font-size:11px;color:#40506a;font-weight:700;letter-spacing:.01em}
.modern-shift-card label>span:first-child{display:block}
.modern-shift-card input{height:54px;border:1px solid #ccd6e3;border-radius:6px;background:#fff;padding:0 14px;font-size:17px;color:#0f172a;box-shadow:none}
.modern-shift-card input:focus{border-color:#2b76d8;box-shadow:0 0 0 3px rgba(43,118,216,.1)}
.guard-name-focus{position:relative;grid-column:2;grid-row:2}
.guard-name-focus input{font-weight:650;padding-right:42px}
.guard-name-focus .field-ok{position:absolute;right:15px;bottom:16px;color:#17a05d;font-size:20px;opacity:0;transition:.15s opacity}
.guard-name-focus:has(input:valid:not(:placeholder-shown)) .field-ok{opacity:1}
.shift-time-field{grid-row:2}
.time-arrow{grid-row:2;align-self:end;height:54px;display:grid;place-items:center;font-size:27px;color:#64748b}
.modern-shift-card .guard-state{grid-column:6;grid-row:2;align-self:end;height:88px;border:1px solid #dce4ed;border-radius:7px;background:#fbfcfe;padding:15px 14px;display:flex;flex-direction:column;justify-content:center;gap:5px;color:#111827}
.modern-shift-card .guard-state strong{font-size:13px;color:#13834e}
.modern-shift-card .guard-state small{font-size:11px;color:#64748b}
.modern-shift-card .dot{background:#16a05d;width:9px;height:9px;margin-right:5px}

.operator-modern-main .admin-carousel{margin:0 0 20px;border:1px solid #dce5f0;border-left:4px solid #1b6ee8;border-radius:8px;background:#fff;min-height:78px;box-shadow:0 2px 7px rgba(15,23,42,.035);display:grid;grid-template-columns:1fr 92px;position:relative;overflow:hidden}
.operator-modern-main .carousel-track{grid-column:1;min-height:76px}
.operator-modern-main .carousel-slide{padding:16px 20px;grid-template-columns:36px 1fr;gap:1px 10px;align-items:center}
.operator-modern-main .carousel-slide>span{font-size:25px;color:#216be1}
.operator-modern-main .carousel-slide strong{font-size:12px;color:#1760d0;text-transform:uppercase;letter-spacing:.015em}
.operator-modern-main .carousel-slide p{font-size:12px;color:#536176;margin-top:3px}
.operator-modern-main .carousel-arrow{position:absolute;right:14px;top:20px;width:36px;height:36px;border:1px solid #dce4ef;border-radius:7px;background:#fff;color:#1967d5;font-size:23px;display:grid;place-items:center;z-index:3}
.operator-modern-main .carousel-arrow[data-carousel-prev]{right:52px}
.operator-modern-main .carousel-dots{position:absolute;right:100px;left:auto;bottom:30px;transform:none;color:#64748b}
.operator-modern-main .carousel-dots:before{content:''}
.operator-modern-main .carousel-dots button{width:5px;height:5px}

.operator-cockpit{display:block!important;padding:0!important;position:static!important}
.operator-summary-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:18px}
.operator-summary-row .round-monitor{padding:20px 22px!important;display:flex;align-items:center;justify-content:space-between;min-height:112px}
.round-monitor .eyebrow,.round-slots .eyebrow,.turn-timeline .eyebrow{color:#1f2937;font-size:11px;letter-spacing:.02em;font-weight:800}
.operator-summary-row .round-monitor strong{font-size:15px;margin-top:10px;display:block;color:#111827}
.operator-summary-row .round-monitor small{font-size:11px;color:#65738a;margin-top:4px;display:block}
.operator-summary-row .round-progress strong{font-size:20px;color:#075dcc;margin:0}
.operator-summary-row .round-progress span{font-size:11px;color:#65738a;text-align:right;display:block;margin-top:6px}
.summary-handover{margin:0!important;min-height:112px;border:1px solid #dde4ed!important;border-left:0!important;border-radius:8px!important;background:#fff!important;box-shadow:0 2px 7px rgba(15,23,42,.045);display:grid!important;grid-template-columns:42px 1fr auto;align-items:center;gap:12px;padding:18px 20px!important;text-align:left;color:#111827;cursor:pointer;width:100%}
.summary-handover .op-banner-icon{width:36px;height:36px;border-radius:50%;background:#fff6e8;color:#ef8a00;display:grid;place-items:center;font-size:19px}
.summary-handover span>strong,.empty-handover>div>strong{display:block;font-size:11px;color:#1f2937;text-transform:uppercase;letter-spacing:.015em}
.summary-handover span>b,.empty-handover>div>b{display:block;font-size:15px;margin-top:8px;color:#111827}
.summary-handover span>small,.empty-handover>div>small{display:block;font-size:11px;color:#65738a;margin-top:3px;font-weight:500}
.summary-handover em{font-style:normal;color:#0d5dcc;font-weight:750;border:1px solid #dce4ed;border-radius:6px;padding:8px 14px;background:#fff}
.empty-handover{grid-template-columns:42px 1fr!important}

.round-slots{padding:18px 20px!important;margin:0 0 18px!important;min-height:120px}
.round-slots .section-heading{margin-bottom:12px}
.round-slots .section-heading>div{display:flex;gap:20px;align-items:center}
.round-slots #roundSlotsTitle{font-size:11px;color:#075dcc;font-weight:650}
.round-slot-list{display:flex!important;gap:12px!important;flex-wrap:nowrap!important;overflow-x:auto;padding-bottom:2px;scrollbar-width:thin}
.round-slot{min-width:144px!important;min-height:58px!important;border:1px solid #dce4ee!important;border-radius:7px!important;background:#f9fbfd!important;color:#263449!important;padding:12px 16px!important;display:flex!important;align-items:center;justify-content:center;font-size:12px!important;font-weight:650!important}
.round-slot.current{background:#0d62cb!important;border-color:#0d62cb!important;color:#fff!important;box-shadow:0 5px 14px rgba(13,98,203,.18)}
.round-slot.done{background:#e9f8f0!important;border-color:#bcebd3!important;color:#08723e!important}

.turn-timeline{padding:18px 20px!important;margin:0 0 18px!important;min-height:205px}
.turn-timeline .section-heading{margin-bottom:12px}
.turn-timeline h2{font-size:15px!important;margin-top:8px!important}
.turn-timeline .empty{min-height:120px;display:grid;place-items:center;text-align:center;color:#66758b;font-size:12px}
.live-timeline-item{border-radius:7px!important;background:#fbfcfe!important}
.optional-tools{display:flex!important;align-items:center;justify-content:space-between;gap:20px;padding:12px 16px!important;margin:0 0 18px!important;min-height:auto!important}
.optional-tools>div:first-child{display:flex;flex-direction:column}
.optional-tools small{color:#64748b;font-size:11px}
.optional-tool-actions{display:flex;gap:8px}
.optional-tools .notification-center{display:none}

.modern-submit{position:sticky!important;bottom:10px;z-index:26;margin:0!important;border:1px solid #dfe6ee!important;border-radius:8px!important;background:#fff!important;color:#111827!important;padding:12px 16px!important;display:grid!important;grid-template-columns:repeat(4,90px) minmax(150px,1fr) 300px;gap:0;align-items:center;box-shadow:0 8px 26px rgba(15,23,42,.12)!important}
.bottom-stat{display:grid;grid-template-columns:28px 1fr;grid-template-rows:auto auto;align-items:center;padding:0 12px;border-right:1px solid #e4e9ef}
.bottom-stat>span{grid-row:1/3;font-size:18px}
.bottom-stat>strong{font-size:16px;line-height:1}
.bottom-stat>small{font-size:10px;color:#69778b;margin-top:3px}
.submit-note{padding:0 18px;min-width:0}
.submit-note strong{display:block;font-size:11px;color:#344258}
.submit-note span{display:block;color:#69778b;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:4px}
.modern-submit .btn.primary{min-height:58px;background:linear-gradient(180deg,#12a65e,#078b4b)!important;border-color:#078147!important;border-radius:7px!important;display:grid!important;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:10px;padding:8px 18px!important;text-align:left;box-shadow:0 4px 12px rgba(7,139,75,.22)!important}
.modern-submit .btn.primary>span{font-size:17px;line-height:1.15}
.modern-submit .btn.primary>small{grid-column:2;font-size:9px;color:#e9fff3;font-weight:500}

.operator-side-rail{position:sticky;top:72px;height:calc(100vh - 72px);overflow:hidden;background:#07182c;color:#fff;align-self:start;isolation:isolate}
.side-rail-photo{position:absolute;inset:0;background-image:url('/static/img/security-operator.png');background-size:cover;background-position:center top;z-index:-3}
.side-rail-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(12,37,67,.72) 0%,rgba(6,21,40,.46) 36%,rgba(5,20,38,.9) 67%,rgba(5,20,38,.98) 100%);z-index:-2}
.side-rail-content{height:100%;display:flex;flex-direction:column;padding:27px 20px 22px;overflow-y:auto}
.side-rail-heading{display:flex;flex-direction:column;gap:3px;margin:0 7px 310px}
.side-rail-heading strong{font-size:15px;letter-spacing:.015em}
.side-rail-heading span{font-size:12px;color:#d7deeb}
.operator-side-rail .quick-action-strip{position:static!important;width:auto!important;display:flex!important;flex-direction:column!important;gap:9px!important;background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;margin:0!important}
.operator-side-rail .quick-action{width:100%!important;min-height:80px!important;border-radius:7px!important;padding:10px 12px!important;display:grid!important;grid-template-columns:56px 1fr 20px!important;align-items:center!important;gap:12px!important;text-align:left!important;background:rgba(12,55,102,.88)!important;border:1px solid rgba(56,126,212,.45)!important;box-shadow:inset 0 1px rgba(255,255,255,.04),0 4px 12px rgba(0,0,0,.12)!important;color:#fff!important}
.operator-side-rail .quick-action>span:first-child{width:56px!important;height:56px!important;display:grid!important;place-items:center!important;border-radius:7px!important;background:rgba(20,91,205,.4)!important;font-size:27px!important}
.operator-side-rail .quick-action .qa-copy{display:flex;flex-direction:column;gap:4px}
.operator-side-rail .quick-action .qa-copy strong{font-size:11px!important;color:#fff!important;line-height:1.1!important}
.operator-side-rail .quick-action .qa-copy small{font-size:10px!important;color:#dfe8f7!important;line-height:1.2!important}
.operator-side-rail .quick-action>b{font-size:27px;font-weight:300;color:#fff;justify-self:end}
.operator-side-rail .quick-action.event{background:rgba(7,72,83,.88)!important;border-color:rgba(20,133,111,.5)!important}
.operator-side-rail .quick-action.event>span:first-child{background:rgba(8,151,89,.34)!important}
.operator-side-rail .quick-action.attention{background:rgba(88,48,28,.9)!important;border-color:rgba(223,125,28,.6)!important}
.operator-side-rail .quick-action.attention>span:first-child{background:rgba(211,113,12,.38)!important}
.operator-side-rail .quick-action.handover{background:rgba(28,41,95,.9)!important;border-color:rgba(92,76,201,.48)!important}
.operator-side-rail .quick-action.handover>span:first-child{background:rgba(87,64,206,.36)!important}
.operator-side-rail .quick-action:hover{transform:translateX(-2px)!important;filter:brightness(1.08)!important}
.side-system-card{margin-top:auto;border:1px solid rgba(104,137,176,.35);background:rgba(17,49,80,.76);border-radius:7px;padding:17px 18px;display:flex;flex-direction:column;gap:5px;backdrop-filter:blur(5px)}
.side-system-card>strong{font-size:11px;letter-spacing:.04em}
.side-system-card p{margin:5px 0 8px;font-size:12px;color:#50dd8e}
.side-system-card small{font-size:10px;color:#d1dae7}
.system-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#28d378;margin-right:5px}

@media(max-width:1300px){
 .operator-modern-shell{grid-template-columns:minmax(0,1fr) 315px}
 .modern-shift-card{grid-template-columns:58px minmax(220px,1.3fr) 145px 24px 145px 165px;gap:12px}
 .operator-modern-main{padding:20px}
 .side-rail-heading{margin-bottom:250px}
 .modern-submit{grid-template-columns:repeat(4,75px) minmax(120px,1fr) 260px}
}
@media(max-width:1080px){
 body.operator-view .operator-clock{display:none}
 .operator-modern-shell{display:block}
 .operator-side-rail{position:static;height:auto;min-height:0;background:#081a2f}
 .side-rail-photo{display:none}.side-rail-overlay{display:none}
 .side-rail-content{padding:14px 18px}
 .side-rail-heading{margin:0 0 10px;flex-direction:row;gap:8px;align-items:baseline}
 .operator-side-rail .quick-action-strip{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important}
 .operator-side-rail .quick-action{min-height:68px!important;grid-template-columns:42px 1fr 14px!important;padding:8px!important}
 .operator-side-rail .quick-action>span:first-child{width:42px!important;height:42px!important;font-size:20px!important}
 .side-system-card{display:none}
 .modern-shift-card{grid-template-columns:60px minmax(220px,1fr) 150px 24px 150px;grid-template-rows:auto 1fr auto}
 .modern-shift-card .guard-state{grid-column:1/-1;grid-row:3;height:auto;flex-direction:row;align-items:center;justify-content:flex-start;padding:9px 12px}
 .modern-shift-card .guard-state small{margin-left:auto}
 .modern-submit{grid-template-columns:repeat(4,65px) 1fr 245px}
}
@media(max-width:760px){
 body.operator-view .topbar.operator-topbar{height:62px;min-height:62px;padding:0 12px}
 body.operator-view .brand small{display:none}
 body.operator-view .brand strong{font-size:14px}
 body.operator-view .topbar nav{display:none}
 body.operator-view .topbar nav.open{display:flex;position:absolute;top:62px;right:8px;background:#0a1b30;padding:8px;border-radius:8px;flex-direction:column;align-items:stretch;box-shadow:0 12px 30px rgba(0,0,0,.25)}
 body.operator-view .nav-toggle{display:block;background:transparent;border-color:#31445d;color:#fff}
 .operator-modern-main{padding:10px}
 .modern-shift-card{position:static!important;grid-template-columns:1fr 1fr!important;grid-template-rows:auto auto auto auto!important;gap:10px!important;padding:14px!important;margin-bottom:12px!important}
 .shift-card-heading{grid-column:1/-1}
 .modern-shift-card .guard-focus-icon{display:none}
 .guard-name-focus{grid-column:1/-1!important;grid-row:2!important}
 .shift-time-field{grid-row:3!important}.shift-time-field:nth-of-type(2){grid-column:1}.shift-time-field:nth-of-type(3){grid-column:2}
 .time-arrow{display:none!important}
 .modern-shift-card .guard-state{grid-column:1/-1!important;grid-row:4!important}
 .operator-modern-main .admin-carousel{grid-template-columns:1fr;min-height:90px;margin-bottom:12px}
 .operator-modern-main .carousel-arrow{top:auto;bottom:9px;width:31px;height:31px}.operator-modern-main .carousel-arrow[data-carousel-prev]{right:48px}.operator-modern-main .carousel-arrow[data-carousel-next]{right:12px}.operator-modern-main .carousel-dots{display:none}
 .operator-summary-row{grid-template-columns:1fr;gap:10px;margin-bottom:12px}
 .operator-summary-row .round-monitor,.summary-handover{min-height:90px}
 .round-slots,.turn-timeline{margin-bottom:12px!important}
 .optional-tools{flex-direction:column;align-items:stretch!important}.optional-tool-actions{display:grid;grid-template-columns:1fr 1fr}
 .modern-submit{position:sticky!important;bottom:4px!important;grid-template-columns:repeat(4,1fr)!important;gap:6px!important;padding:8px!important}
 .bottom-stat{border:0!important;padding:4px!important;grid-template-columns:1fr!important;grid-template-rows:auto auto auto!important;text-align:center}.bottom-stat>span{grid-row:auto!important;font-size:16px}.bottom-stat>strong{font-size:14px}.bottom-stat>small{font-size:9px}
 .submit-note{display:none}
 .modern-submit .btn.primary{grid-column:1/-1;min-height:52px;display:flex!important;justify-content:center!important;text-align:center!important}.modern-submit .btn.primary small{display:none}
 .operator-side-rail{position:sticky;bottom:0;z-index:35}
 .operator-side-rail .side-rail-content{padding:7px 8px}
 .operator-side-rail .side-rail-heading{display:none}
 .operator-side-rail .quick-action-strip{grid-template-columns:repeat(4,1fr)!important;gap:5px!important}
 .operator-side-rail .quick-action{min-height:54px!important;grid-template-columns:1fr!important;display:flex!important;flex-direction:column!important;gap:3px!important;justify-content:center!important;text-align:center!important;padding:5px!important}
 .operator-side-rail .quick-action>span:first-child{width:auto!important;height:auto!important;background:transparent!important;font-size:20px!important}
 .operator-side-rail .quick-action .qa-copy strong{font-size:9px!important}.operator-side-rail .quick-action .qa-copy small,.operator-side-rail .quick-action>b{display:none}
}
@media(max-width:1080px){
 .operator-modern-main{padding-bottom:102px}
 .operator-side-rail{position:fixed!important;left:0;right:0;bottom:0;top:auto!important;height:auto!important;z-index:55;box-shadow:0 -8px 24px rgba(4,19,37,.18)}
}
@media(max-width:760px){.operator-modern-main{padding-bottom:82px}.operator-side-rail{position:fixed!important}}

/* === V20 — SECURITY OPERATIONS UI: rail fotografico leggibile e professionale === */
@media (min-width:1221px){
  .operator-modern-shell{
    grid-template-columns:minmax(0,1fr) clamp(390px,24vw,430px)!important;
  }
  .operator-modern-main{padding:26px 28px 30px!important}
  .operator-side-rail{
    position:sticky!important;
    top:72px!important;
    height:calc(100vh - 72px)!important;
    min-width:390px!important;
    overflow:hidden!important;
    background:#07182c!important;
    border-left:1px solid rgba(255,255,255,.08);
  }
  .side-rail-photo{
    display:block!important;
    position:absolute!important;
    inset:0!important;
    background-color:#07182c!important;
    background-image:url('/static/img/security-operator.png?v=20.0.0')!important;
    background-repeat:no-repeat!important;
    background-size:auto 410px!important;
    background-position:72% 76px!important;
    opacity:1!important;
  }
  .side-rail-overlay{
    display:block!important;
    position:absolute!important;
    inset:0!important;
    background:
      linear-gradient(180deg,rgba(7,24,44,.50) 0,rgba(7,24,44,.14) 120px,rgba(7,24,44,.08) 340px,rgba(7,24,44,.86) 455px,rgba(7,24,44,.98) 100%)!important;
  }
  .side-rail-content{
    height:100%!important;
    box-sizing:border-box!important;
    padding:28px 22px 20px!important;
    overflow-y:auto!important;
  }
  .side-rail-heading{
    margin:0 4px 286px!important;
    gap:5px!important;
    position:relative;
    z-index:2;
  }
  .side-rail-heading:before{
    content:'OPERATIVITÀ · V20';
    color:#50b9ff;
    font-size:11px;
    line-height:1;
    font-weight:800;
    letter-spacing:.06em;
  }
  .side-rail-heading strong{font-size:19px!important;line-height:1.15!important;color:#fff!important}
  .side-rail-heading span{font-size:12px!important;color:#e1e9f4!important}
  .operator-side-rail .quick-action-strip{
    display:flex!important;
    flex-direction:column!important;
    width:100%!important;
    gap:10px!important;
    margin:0!important;
    padding:0!important;
  }
  .operator-side-rail .quick-action{
    box-sizing:border-box!important;
    width:100%!important;
    min-width:0!important;
    min-height:80px!important;
    max-height:none!important;
    padding:10px 14px!important;
    border-radius:9px!important;
    display:grid!important;
    grid-template-columns:60px minmax(0,1fr) 20px!important;
    grid-template-rows:1fr!important;
    gap:13px!important;
    align-items:center!important;
    overflow:hidden!important;
    white-space:normal!important;
  }
  .operator-side-rail .quick-action>span:first-child{
    box-sizing:border-box!important;
    width:60px!important;
    height:60px!important;
    min-width:60px!important;
    border-radius:9px!important;
    font-size:29px!important;
  }
  .operator-side-rail .quick-action .qa-copy{
    width:auto!important;
    height:auto!important;
    min-width:0!important;
    max-width:none!important;
    padding:0!important;
    margin:0!important;
    border-radius:0!important;
    background:transparent!important;
    color:#fff!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    align-items:flex-start!important;
    gap:5px!important;
    overflow:visible!important;
  }
  .operator-side-rail .quick-action .qa-copy strong{
    display:block!important;
    width:100%!important;
    font-size:13px!important;
    line-height:1.15!important;
    font-weight:800!important;
    letter-spacing:.005em!important;
    color:#fff!important;
    white-space:normal!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
  }
  .operator-side-rail .quick-action .qa-copy small{
    display:block!important;
    width:100%!important;
    font-size:11.5px!important;
    line-height:1.25!important;
    color:#e7eef8!important;
    white-space:normal!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
  }
  .operator-side-rail .quick-action>b{
    display:block!important;
    width:20px!important;
    height:auto!important;
    font-size:27px!important;
    line-height:1!important;
    color:#fff!important;
  }
  .side-system-card{
    margin-top:12px!important;
    padding:14px 16px!important;
    min-height:96px!important;
    flex:0 0 auto!important;
    background:rgba(15,44,73,.90)!important;
  }
}

@media (min-width:1221px) and (max-height:820px){
  .side-rail-heading{margin-bottom:210px!important}
  .side-rail-photo{background-size:auto 340px!important;background-position:72% 66px!important}
  .operator-side-rail .quick-action{min-height:70px!important}
  .operator-side-rail .quick-action>span:first-child{width:50px!important;height:50px!important;min-width:50px!important;font-size:24px!important}
  .operator-side-rail .quick-action{grid-template-columns:50px minmax(0,1fr) 18px!important}
  .side-system-card{min-height:82px!important;padding:11px 14px!important}
}

@media (max-width:1220px){
  .operator-modern-shell{display:block!important}
  .operator-side-rail{
    position:fixed!important;
    left:0!important;right:0!important;bottom:0!important;top:auto!important;
    width:100%!important;height:auto!important;min-height:0!important;
    z-index:55!important;background:#07182c!important;
    box-shadow:0 -8px 24px rgba(4,19,37,.20)!important;
  }
  .side-rail-photo,.side-rail-overlay,.side-rail-heading,.side-system-card{display:none!important}
  .side-rail-content{padding:8px 10px!important;overflow:visible!important}
  .operator-side-rail .quick-action-strip{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:7px!important;margin:0!important}
  .operator-side-rail .quick-action{min-height:62px!important;display:grid!important;grid-template-columns:40px minmax(0,1fr)!important;gap:8px!important;padding:7px 9px!important;border-radius:8px!important}
  .operator-side-rail .quick-action>span:first-child{width:40px!important;height:40px!important;font-size:20px!important}
  .operator-side-rail .quick-action .qa-copy{width:auto!important;height:auto!important;min-width:0!important;background:transparent!important;padding:0!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important}
  .operator-side-rail .quick-action .qa-copy strong{font-size:10px!important;line-height:1.1!important;white-space:normal!important}
  .operator-side-rail .quick-action .qa-copy small{font-size:9px!important;line-height:1.1!important;white-space:normal!important}
  .operator-side-rail .quick-action>b{display:none!important}
  .operator-modern-main{padding-bottom:92px!important}
}

@media (max-width:700px){
  .operator-side-rail .quick-action-strip{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .operator-side-rail .quick-action{min-height:54px!important}
  .operator-side-rail .quick-action .qa-copy small{display:none!important}
  .operator-modern-main{padding-bottom:138px!important}
}

/* V21: monitor operativo live */
.live-dashboard-toolbar{display:flex;gap:1rem;align-items:center;justify-content:flex-end;flex-wrap:wrap;margin:0 0 1rem;font-size:.875rem}
.live-dashboard-toolbar label{display:flex;align-items:center;gap:.35rem;cursor:pointer}
#live-status{font-weight:600;color:var(--text-muted,#526174)}
@media(max-width:600px){.live-dashboard-toolbar{justify-content:flex-start}}

/* V22 – Branding centralizzato: override finali */
body:not(.operator-view){background:var(--brand-surface)}
.topbar{background:var(--brand-menu)}
.sidebar{background:var(--brand-menu)}
.btn.primary,.branding-preview-button{background:var(--accent);color:#fff}
.branding-preview{display:flex;align-items:center;gap:16px;flex-wrap:wrap;background:var(--brand-surface);border:1px solid #dce5ef;border-radius:16px;padding:20px;margin:12px 0 22px}
.branding-preview strong{color:var(--brand-menu);font-size:1.2rem}
.branding-preview span:not(.branding-preview-button){color:var(--brand-secondary)}
.branding-preview-button{border-radius:9px;padding:10px 16px;font-weight:700}

/* V23 - chiusura turno intelligente */
.smart-close-box{margin:16px 0;padding:16px;border:1px solid #bfdbfe;border-radius:14px;background:#eff6ff;color:#17365d}.smart-close-box p,.smart-close-box small{display:block;margin:8px 0}.smart-close-box textarea{width:100%;margin-top:6px}.smart-close-box .ack-row{display:flex;align-items:center;gap:10px;margin:12px 0}


/* V24.5 — sistema visuale unico: navigazione, contenuti, form e responsive */
:root{--ui-radius:14px;--ui-gap:18px;--ui-border:#dbe4eb;--ui-bg:#f4f7fa;--ui-navy:#071b30;--ui-ink:#102b40;--ui-muted:#5b6d7e}
html{overflow-x:hidden}body{background:var(--ui-bg);color:var(--ui-ink)}
.topbar,body.operator-view .topbar.operator-topbar{height:auto;min-height:72px;padding:10px clamp(14px,2vw,32px);display:flex;gap:22px;align-items:center;background:var(--brand-menu,#071b30);border-bottom:1px solid rgba(255,255,255,.14);color:#fff;position:sticky;top:0;z-index:70}
.topbar .brand{flex:0 0 auto;max-width:245px;gap:10px;color:#fff;text-decoration:none}.topbar .brand-logo,.topbar .brand-mark{width:42px;height:42px;flex:none}.topbar .brand-copy{min-width:0}.topbar .brand strong,.topbar .brand small{color:#fff;line-height:1.25}.topbar .brand strong{font-size:15px}.topbar .brand small{font-size:11px;opacity:.8;max-width:180px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.topbar #main-navigation.v244-nav{display:flex;flex:1;align-items:center;justify-content:space-between;gap:14px;min-width:0}.v244-main-links,.v244-tools{display:flex;align-items:center;gap:4px;min-width:0}.v244-tools{margin-left:auto}
.topbar #main-navigation a,.topbar #main-navigation button.link-button,.topbar #main-navigation .v244-dropdown>summary{display:flex;align-items:center;justify-content:center;min-height:42px;padding:10px 12px;border:0;border-radius:9px;color:#f8fafc;background:transparent;text-decoration:none;font-size:13px;font-weight:650;line-height:1.25;white-space:nowrap;cursor:pointer}
.topbar #main-navigation a:hover,.topbar #main-navigation button.link-button:hover,.topbar #main-navigation .v244-dropdown>summary:hover{background:rgba(255,255,255,.14);color:#fff}.topbar #main-navigation a.active{background:#eaf4f3;color:#073c40}
.topbar .v244-dropdown{position:relative}.topbar .v244-dropdown>summary{list-style:none;gap:8px}.topbar .v244-dropdown>summary::-webkit-details-marker{display:none}.topbar .v244-dropdown-menu{position:absolute;right:0;top:calc(100% + 7px);min-width:225px;padding:7px;background:#102b45;border:1px solid #37526a;border-radius:12px;box-shadow:0 16px 35px #0005;z-index:110}.topbar .v244-dropdown-menu a{justify-content:flex-start!important;margin:2px 0}.topbar .v244-alert{font-size:20px!important;position:relative}.v244-count{position:absolute;right:0;top:0;border-radius:99px;background:#c52836;color:white;font-size:10px;padding:1px 5px}.topbar .v244-logout{margin:0}.topbar .nav-toggle{display:none;color:#fff;background:rgba(255,255,255,.1);border:1px solid #8a9bad;border-radius:10px;min-width:46px;min-height:46px;cursor:pointer}
.page-shell{width:min(1440px,calc(100% - 36px));margin:24px auto 72px;min-width:0}.card,.notice-card,.stats article{border-radius:var(--ui-radius);border:1px solid var(--ui-border);box-shadow:0 2px 10px rgba(13,42,63,.035)}.card{padding:clamp(16px,2vw,26px)}.admin-layout{grid-template-columns:230px minmax(0,1fr);gap:20px}.sidebar{background:var(--brand-menu,#071b30);border-radius:var(--ui-radius);top:96px}.sidebar a{min-height:43px;display:flex;align-items:center;color:#f4f7fa}.sidebar a:hover,.sidebar a.active{background:var(--accent,#0f766e);color:#fff}.admin-content,.grid>*,.stats>*,.card{min-width:0}.page-title{gap:16px;flex-wrap:wrap}.page-title h1{font-size:clamp(1.6rem,2.6vw,2.3rem)}.stats{grid-template-columns:repeat(4,minmax(0,1fr))}.btn{min-height:42px}.btn.primary{background:var(--accent,#0f766e);color:white}input,select,textarea{max-width:100%;min-width:0;min-height:44px;border-radius:10px}input[type=checkbox],input[type=radio]{min-height:initial;width:auto;flex:none}.remember-login{display:flex;flex-direction:row;align-items:center;gap:10px;margin:14px 0}.remember-login input{width:20px;height:20px;flex:none}.v24-admin-jumps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.v24-admin-jumps>*{min-width:0}table{max-width:100%}.table-wrap{max-width:100%;overflow-x:auto}
@media(max-width:1350px){.topbar .nav-toggle{display:inline-flex;align-items:center;justify-content:center;margin-left:auto}.topbar #main-navigation.v244-nav{display:none;position:absolute;top:100%;left:12px;right:12px;max-height:calc(100dvh - 88px);overflow-y:auto;overscroll-behavior:contain;background:#0b223a;border:1px solid #3a566d;border-radius:12px;padding:12px;box-shadow:0 18px 45px #0005;flex-direction:column;align-items:stretch;gap:6px;z-index:120}.topbar #main-navigation.v244-nav.open{display:flex}.v244-main-links,.v244-tools{width:100%;flex-direction:column;align-items:stretch;gap:4px}.v244-tools{border-top:1px solid #36536b;padding-top:8px;margin:4px 0 0}.topbar #main-navigation a,.topbar #main-navigation button.link-button,.topbar #main-navigation .v244-dropdown>summary{width:100%;min-height:46px;justify-content:flex-start;padding:12px 14px}.topbar .v244-dropdown-menu{position:static;box-shadow:none;min-width:0;margin-top:4px;background:#18364f}.topbar .v244-logout{width:100%}.topbar .operator-clock{display:none}}
@media(max-width:960px){.admin-layout{display:block}.admin-layout>.sidebar{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin-bottom:18px;padding:12px}.admin-layout>.sidebar strong{grid-column:1/-1}.admin-layout>.sidebar a{margin:0}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.v24-admin-jumps{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.topbar,body.operator-view .topbar.operator-topbar{min-height:64px;padding:8px 12px}.topbar .brand small{display:none}.topbar .brand strong{font-size:14px}.topbar .brand{max-width:calc(100% - 65px)}.page-shell{width:calc(100% - 20px);margin:12px auto 56px}.card{padding:15px}.admin-layout>.sidebar{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.admin-layout>.sidebar a{font-size:13px;padding:10px}.grid-2,.grid-4,.notice-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.page-title{align-items:flex-start}.stats{gap:9px}.stats article{padding:13px}.v24-admin-jumps{grid-template-columns:1fr}.actions{gap:8px}.actions .btn{max-width:100%;white-space:normal}.progress-nav{overflow-x:auto;display:flex;top:66px}.progress-nav a{flex:0 0 auto}.submit-bar{flex-wrap:wrap;gap:10px;padding:12px}.check-row{grid-template-columns:1fr}.auth-card{padding:20px}.operator-modern-main{min-width:0}}

/* V35: pulsanti non sovrapposti sui display stretti */
@media(max-width:650px){body{padding-bottom:max(24px,env(safe-area-inset-bottom))} .card form button,.card form .btn{max-width:100%;min-height:48px;white-space:normal;overflow-wrap:anywhere} .v35-home-return{position:static;margin:18px 0 28px} .v35-home-return .btn{display:block;width:100%;box-sizing:border-box;text-align:center} .card{min-width:0} .card form{min-width:0} .card input,.card select,.card textarea{max-width:100%;box-sizing:border-box}}

/* V35.1: dialog ronda sopra qualsiasi barra di navigazione; azioni sempre raggiungibili. */
html.panel-open,html.panel-open body{overflow:hidden!important}
.operator-panel[open]{position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;max-width:none!important;max-height:none!important;margin:0!important;padding:0!important;z-index:2147483000!important}
.operator-panel .panel-shell{min-height:0!important;display:grid!important;grid-template-rows:auto minmax(0,1fr) auto!important}
.operator-panel .panel-body{min-height:0!important;overflow-y:auto!important;overscroll-behavior:contain}
.operator-panel .panel-footer{position:relative!important;bottom:auto!important;z-index:10!important;display:flex!important;flex-wrap:wrap!important;gap:10px!important;padding:12px 14px max(16px,env(safe-area-inset-bottom))!important;background:#fff!important}
.operator-panel .panel-footer .btn{flex:1 1 145px!important;min-width:0!important;white-space:normal!important;overflow-wrap:anywhere!important;min-height:52px!important}
@media(max-width:760px){
 .operator-panel .panel-shell,.operator-panel.compact-panel .panel-shell{height:100dvh!important;max-height:100dvh!important;width:100vw!important;top:0!important;left:0!important;transform:none!important;border-radius:0!important}
 .operator-panel .panel-body{padding:14px 12px 20px!important}
 .operator-panel .panel-footer{padding:10px 12px max(18px,env(safe-area-inset-bottom))!important}
 .operator-panel .panel-footer.split{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}
 .operator-panel .panel-footer.split .btn{width:100%!important;padding:12px 8px!important;font-size:14px!important}
}

/* V36: dialogs moved under body, top layer always over fixed navigation. */
body.v36-panel-visible .v25-bottom,body.v36-panel-visible .quick-action-strip,body.v36-panel-visible .operator-submit{display:none!important}
body.v36-panel-visible{overflow:hidden!important}
dialog.operator-panel[open]{position:fixed!important;inset:0!important;margin:0!important;padding:0!important;width:100%!important;height:100dvh!important;max-width:none!important;max-height:none!important;z-index:2147483000!important;border:0!important;background:#eef5f9!important}
dialog.operator-panel[open]::backdrop{background:rgba(12,28,44,.72)!important}
dialog.operator-panel[open] .panel-shell{position:absolute!important;inset:0!important;transform:none!important;display:grid!important;grid-template-rows:auto minmax(0,1fr) auto!important;width:100%!important;height:100%!important;max-height:100%!important;border-radius:0!important}
dialog.operator-panel[open] .panel-body{min-height:0!important;overflow-y:auto!important;padding-bottom:24px!important}
dialog.operator-panel[open] .panel-footer{position:relative!important;bottom:auto!important;display:flex!important;flex-wrap:wrap!important;gap:8px!important;padding:12px 12px max(20px,env(safe-area-inset-bottom))!important;background:#fff!important;border-top:2px solid #cbd5e1!important;z-index:20!important}
dialog.operator-panel[open] .panel-footer .btn{flex:1 1 130px!important;min-height:50px!important}
dialog.operator-panel[open] .panel-footer .v36-exit{flex-basis:100%!important;background:#e2e8f0!important;color:#172c41!important;font-weight:800!important}
.v36-save-popup[hidden]{display:none!important}
.v36-save-popup{position:fixed!important;inset:0!important;display:grid!important;place-items:center!important;padding:20px!important;background:rgba(9,20,35,.68)!important;z-index:2147483640!important}
.v36-save-popup-card{width:min(420px,100%)!important;padding:30px 22px!important;border-radius:20px!important;background:white!important;text-align:center!important;box-shadow:0 24px 70px #0005!important}
.v36-save-popup-symbol{display:grid;place-items:center;margin:0 auto 12px;width:64px;height:64px;border-radius:50%;background:#dcfce7;color:#166534;font-size:40px;font-weight:bold}
.v36-save-popup-card h2{font-size:23px;margin:0 0 12px;color:#122b40}
.v36-save-popup-card p{margin:0 0 20px;color:#475569;line-height:1.5}
.v36-save-popup-card button{width:100%;min-height:52px}
@media(max-width:760px){dialog.operator-panel[open] .panel-footer.split{display:flex!important;flex-wrap:wrap!important}dialog.operator-panel[open] .panel-footer.split .btn{width:auto!important;flex:1 1 42%!important}dialog.operator-panel[open] .panel-footer.split .v36-exit{flex-basis:100%!important}}

dialog.v36-save-popup[open]{border:0!important;width:100vw!important;height:100dvh!important;max-width:none!important;max-height:none!important;margin:0!important;padding:20px!important;background:transparent!important;place-items:center!important}dialog.v36-save-popup[open]::backdrop{background:rgba(9,20,35,.7)!important}

/* V36.2: Turno mobile: do not let bottom navigation obscure critical actions. */
body:has(#reportForm) .v25-bottom{display:none!important}
body:has(#reportForm){padding-bottom:max(112px,env(safe-area-inset-bottom))!important}
body:has(#reportForm) .operator-submit.modern-submit{
 position:fixed!important;left:10px!important;right:10px!important;
 bottom:max(10px,env(safe-area-inset-bottom))!important;
 width:auto!important;margin:0!important;z-index:1000!important;
 display:flex!important;flex-direction:row!important;gap:10px!important;
 padding:10px!important;border-radius:14px!important;background:#102b46!important;
}
body:has(#reportForm) .operator-submit.modern-submit .bottom-stat,
body:has(#reportForm) .operator-submit.modern-submit .submit-note{display:none!important}
body:has(#reportForm) .operator-submit.modern-submit .v362-home{display:flex!important;align-items:center;justify-content:center;flex:0 0 30%!important;min-width:0!important;min-height:54px!important;color:#fff!important;border:1px solid #b8c7d8!important}
body:has(#reportForm) .operator-submit.modern-submit [data-panel-open="panel-close"]{display:flex!important;align-items:center;justify-content:center;flex:1!important;min-height:54px!important;width:auto!important;padding:10px!important;gap:4px!important}
body:has(#reportForm) .operator-submit.modern-submit [data-panel-open="panel-close"] small{display:none!important}
body:has(#reportForm) .operator-submit.modern-submit [data-panel-open="panel-close"] span{font-size:15px!important;color:inherit!important}
body.v36-panel-visible .operator-submit.modern-submit{display:none!important}
dialog.operator-panel[open]{z-index:2147483000!important}
dialog.operator-panel[open] .panel-footer{position:sticky!important;bottom:0!important;flex-shrink:0!important}
@media(max-width:760px){dialog.operator-panel[open] .panel-shell{height:100dvh!important;display:grid!important;grid-template-rows:auto minmax(0,1fr) auto!important}dialog.operator-panel[open] .panel-body{min-height:0!important;overflow:auto!important}}

/* V36.3: never render the operator navigation on the shift form.
   This fallback also covers old cached HTML. */
body:has(#reportForm) nav.v25-bottom{display:none!important;visibility:hidden!important;pointer-events:none!important}
#panel-rounds[open],#panel-events[open],#panel-anomalies[open]{
 position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;
 max-width:100vw!important;max-height:100dvh!important;margin:0!important;padding:0!important;
 z-index:2147483000!important;overflow:hidden!important
}
#panel-rounds[open] .panel-shell,#panel-events[open] .panel-shell,#panel-anomalies[open] .panel-shell{
 height:100%!important;max-height:100%!important;display:flex!important;flex-direction:column!important
}
#panel-rounds[open] .panel-body,#panel-events[open] .panel-body,#panel-anomalies[open] .panel-body{
 flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important
}
#panel-rounds[open] .panel-footer,#panel-events[open] .panel-footer,#panel-anomalies[open] .panel-footer{
 flex:0 0 auto!important;position:relative!important;display:flex!important;flex-wrap:wrap!important;
 bottom:auto!important;z-index:50!important;background:white!important;
 padding:12px 14px calc(20px + env(safe-area-inset-bottom))!important;
 box-shadow:0 -6px 24px #071a3026!important
}
#panel-rounds[open] .panel-footer .v36-exit,#panel-events[open] .panel-footer .v36-exit{
 display:block!important;flex:1 1 100%!important;min-height:54px!important
}

/* V36.4 iOS Safari: avoid automatic page zoom on focusing form controls.
   Keep viewport user-scalable for accessibility. */
@media (hover:none) and (pointer:coarse) {
 input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),
 select,textarea {
   font-size:16px!important;
 }
}

/* V36.5: desktop controls must participate in document layout, never overlay cards. */
@media (min-width: 761px) {
 body:has(#reportForm){padding-bottom:24px!important}
 body:has(#reportForm) .operator-submit.modern-submit{
   position:relative!important;inset:auto!important;bottom:auto!important;
   left:auto!important;right:auto!important;width:100%!important;max-width:100%!important;
   margin:16px 0 22px!important;box-sizing:border-box!important;
   display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;
   align-items:center!important;justify-content:flex-end!important;gap:12px!important;
   padding:16px!important;z-index:1!important;transform:none!important;
 }
 body:has(#reportForm) .operator-submit.modern-submit .v362-home{
   flex:0 0 auto!important;min-width:160px!important;padding:12px 18px!important;
 }
 body:has(#reportForm) .operator-submit.modern-submit [data-panel-open="panel-close"]{
   flex:0 0 auto!important;min-width:200px!important;max-width:100%!important;padding:12px 20px!important;
 }
 .operator-page-layout .operator-cockpit{min-width:0!important}
 .operator-page-layout .operator-cockpit>.operator-submit{grid-column:1!important;grid-row:auto!important}
}
/* Compact screen: fixed action bar, safely above the iOS home indicator. */
@media (max-width:760px) {
 body:has(#reportForm){padding-bottom:115px!important}
 body:has(#reportForm) .operator-submit.modern-submit{
  position:fixed!important;left:8px!important;right:8px!important;
  bottom:calc(8px + env(safe-area-inset-bottom))!important;
  width:auto!important;max-width:none!important;display:flex!important;
  flex-wrap:nowrap!important;gap:8px!important;padding:8px!important;z-index:90!important;
 }
 body:has(#reportForm) .operator-submit.modern-submit .v362-home{flex:0 0 35%!important}
 body:has(#reportForm) .operator-submit.modern-submit [data-panel-open="panel-close"]{flex:1 1 0!important;min-width:0!important}
}

/* V37: desktop form actions remain in the page flow; buttons readable. */
@media(min-width:761px){
 body:has(#reportForm) .operator-submit.modern-submit{position:static!important;display:flex!important;align-items:center!important;justify-content:flex-end!important;flex-wrap:wrap!important;gap:12px!important;min-height:80px!important}
 body:has(#reportForm) .operator-submit.modern-submit .v362-home{background:#f8fafc!important;color:#102b46!important;border:2px solid #cbd5e1!important;opacity:1!important;font-weight:800!important}
 body:has(#reportForm) .operator-submit.modern-submit [data-panel-open="panel-close"]{background:#059669!important;color:#fff!important;font-weight:800!important}
}

/* V37.1: MOBILE - no floating footer may obscure quick actions.
   Four actions and shift closure share normal document flow. */
@media (max-width:760px){
 body:has(#reportForm){padding-bottom:calc(24px + env(safe-area-inset-bottom))!important}
 body:has(#reportForm) .operator-submit.modern-submit{
  position:relative!important;inset:auto!important;top:auto!important;bottom:auto!important;
  left:auto!important;right:auto!important;width:100%!important;max-width:100%!important;
  transform:none!important;margin:16px 0 22px!important;z-index:1!important;
  box-sizing:border-box!important;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr)!important;
  align-items:stretch!important;gap:10px!important;padding:12px!important;
 }
 body:has(#reportForm) .operator-submit.modern-submit .v362-home{
  display:flex!important;flex:auto!important;min-width:0!important;width:100%!important;
  background:#fff!important;color:#102b46!important;border:2px solid #cbd5e1!important;
  font-weight:800!important;opacity:1!important;min-height:58px!important;
 }
 body:has(#reportForm) .operator-submit.modern-submit [data-panel-open="panel-close"]{
  display:flex!important;flex:auto!important;width:100%!important;min-width:0!important;
  min-height:58px!important;background:#059669!important;color:#fff!important;
  font-weight:800!important;white-space:normal!important;
 }
 .operator-page-layout .operator-cockpit>.quick-action-strip{
  position:relative!important;top:auto!important;bottom:auto!important;inset:auto!important;
  z-index:1!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;
  width:100%!important;margin:12px 0!important;padding:8px!important;
 }
 .operator-page-layout .operator-cockpit>.quick-action-strip .quick-action{
  position:relative!important;min-width:0!important;min-height:80px!important;
  width:100%!important;overflow:visible!important;
 }
 .operator-page-layout .operator-modern-shell,.operator-page-layout .operator-modern-main,
 .operator-page-layout .operator-cockpit{min-height:0!important}
}

/* V40: responsive supplier search */
.v40-merch{max-width:820px;margin-inline:auto}.v40-supplier-box{border:1px solid #cbd5e1;border-radius:12px;padding:16px;margin:12px 0}.v40-supplier-box legend{font-weight:800;padding:0 8px}.v40-supplier-box>label{display:flex;gap:9px;align-items:center;margin:12px 0}.v40-supplier-box input[type=radio]{width:18px;height:18px;flex:none}.v40-results{max-height:280px;overflow-y:auto;border-radius:10px}.v40-result{display:block;width:100%;padding:12px;text-align:left;background:#f2f7fa;border:1px solid #dbe5ee;color:#18334c;font-size:16px;cursor:pointer}.v40-result:hover,.v40-result:focus{background:#dceff2}.v40-table-scroll{overflow-x:auto}.v40-merch [hidden]{display:none!important}
