:root{--navy:#102a43;--navy2:#163b5c;--cyan:#18a7c9;--bg:#f3f6f9;--text:#152536;--muted:#6c7d8e;--line:#dfe7ee;--white:#fff;--shadow:0 14px 40px rgba(16,42,67,.09)}*{box-sizing:border-box}html{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--text);background:var(--bg)}body{margin:0;min-height:100vh}a{color:var(--cyan);text-decoration:none}button,input,select,textarea{font:inherit}.eyebrow{color:var(--cyan);font-size:.72rem;font-weight:800;letter-spacing:.14em;margin:0 0 7px}.muted{color:var(--muted)}.btn{border:0;border-radius:9px;padding:11px 17px;font-weight:750;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn.primary{background:var(--cyan);color:#fff;box-shadow:0 7px 18px rgba(24,167,201,.24)}.btn.light{background:#fff;color:var(--navy)}.btn.ghost{background:#eef3f6;color:var(--navy)}.btn:disabled{opacity:.45;cursor:not-allowed}.alert{border-radius:9px;padding:12px 15px;margin:0 0 18px;font-size:.9rem}.alert.success{background:#e9f8f2;color:#167759;border:1px solid #bfe9d9}.alert.error{background:#fff0f0;color:#a73737;border:1px solid #f1c5c5}
.auth-page{background:#eef3f6}.auth-shell{min-height:100vh;display:grid;grid-template-columns:minmax(420px,1.1fr) minmax(390px,.9fr)}.auth-brand{background:linear-gradient(145deg,rgba(13,39,61,.96),rgba(17,68,95,.92)),radial-gradient(circle at 15% 15%,#2598ae,#102a43);padding:54px 7vw;color:#fff;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.auth-brand:after{content:"";position:absolute;width:430px;height:430px;border:1px solid rgba(255,255,255,.08);border-radius:50%;right:-180px;bottom:-180px;box-shadow:0 0 0 70px rgba(255,255,255,.025),0 0 0 140px rgba(255,255,255,.02)}.auth-brand img{width:250px;filter:brightness(0) invert(1)}.auth-brand>div{position:relative;z-index:1;max-width:560px}.auth-brand span{font-size:.7rem;letter-spacing:.22em;color:#8fe0f0}.auth-brand h1{font-size:clamp(2.2rem,4vw,4.6rem);line-height:1.03;margin:18px 0 24px;letter-spacing:-.04em}.auth-brand p{color:#c0d1df;font-size:1.05rem;line-height:1.7;max-width:500px}.auth-card{background:#fff;padding:8vh clamp(35px,7vw,100px);display:flex;flex-direction:column;justify-content:center}.auth-card h2{font-size:2rem;margin:0 0 8px}.auth-card>.muted{margin:0 0 25px}.mobile-logo{display:none}.form-stack{display:grid;gap:17px}.form-stack label,.form-grid label{display:grid;gap:7px;font-size:.82rem;font-weight:750;color:#405469}.form-stack input,.form-grid input,.form-grid select,.form-grid textarea,.inline-form select{width:100%;border:1px solid #ced9e2;border-radius:8px;padding:11px 12px;background:#fff;color:var(--text);outline:none}.form-stack input:focus,.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:var(--cyan);box-shadow:0 0 0 3px rgba(24,167,201,.11)}.form-stack .btn{margin-top:7px;padding:13px}
.sidebar{position:fixed;left:0;top:0;bottom:0;width:244px;background:var(--navy);padding:25px 18px;color:#fff;display:flex;flex-direction:column;z-index:20}.brand{display:block;padding:4px 10px 28px;border-bottom:1px solid rgba(255,255,255,.09);color:#fff}.brand img{width:145px;display:block;filter:brightness(0) invert(1)}.brand span{display:block;color:#83cddd;font-size:.68rem;letter-spacing:.18em;margin-top:7px}.sidebar nav{display:grid;gap:6px;padding:24px 0}.sidebar nav a{color:#b8c8d5;padding:11px 12px;border-radius:8px;font-size:.9rem;font-weight:650}.sidebar nav a i{font-style:normal;display:inline-grid;place-items:center;width:27px;margin-right:8px;color:#72c9dc}.sidebar nav a:hover,.sidebar nav a.active{background:rgba(255,255,255,.1);color:#fff}.sidebar-user{margin-top:auto;border-top:1px solid rgba(255,255,255,.1);padding:18px 8px 13px;display:flex;gap:11px;align-items:center}.avatar{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:var(--cyan);font-weight:800}.sidebar-user div{min-width:0}.sidebar-user strong,.sidebar-user small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user strong{font-size:.83rem}.sidebar-user small{font-size:.68rem;color:#91a9ba;margin-top:3px;text-transform:capitalize}.logout{border:0;background:none;color:#93a8b8;font-size:.78rem;cursor:pointer;padding:5px 8px}.app-main{margin-left:244px;padding:28px clamp(22px,4vw,58px) 70px;min-height:100vh}.topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:27px}.topbar h1{font-size:1.65rem;margin:0}.topbar .eyebrow{margin-bottom:3px}.today{font-size:.82rem;color:var(--muted);background:#fff;border:1px solid var(--line);border-radius:8px;padding:9px 12px}.menu{display:none}.hero{background:linear-gradient(112deg,#123651,#1b6680);color:#fff;border-radius:14px;padding:31px 34px;display:flex;align-items:center;justify-content:space-between;box-shadow:var(--shadow)}.hero h2{font-size:2rem;margin:3px 0 6px}.hero p:last-child{color:#c0d7e2;margin:0}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:17px;margin:22px 0}.stats article{background:#fff;border:1px solid var(--line);border-radius:11px;padding:20px;display:flex;gap:14px;align-items:center}.stats small,.stats strong{display:block}.stats small{color:var(--muted);font-size:.76rem;margin-bottom:3px}.stats strong{font-size:1.7rem}.stat-icon{width:42px;height:42px;border-radius:9px;display:grid;place-items:center;font-weight:900}.stat-icon.blue{background:#e3f5fa;color:#1698b7}.stat-icon.amber{background:#fff5dd;color:#be8120}.stat-icon.red{background:#fde7e7;color:#c84949}.stat-icon.green{background:#e6f7ef;color:#27875f}.panel{background:#fff;border:1px solid var(--line);border-radius:11px;box-shadow:0 5px 18px rgba(16,42,67,.035);overflow:hidden}.panel-head{padding:20px 22px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.panel-head h3{margin:0 0 4px}.panel-head p{color:var(--muted);font-size:.79rem;margin:0}.panel-head a{font-size:.8rem;font-weight:750}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:.82rem}th{text-align:left;color:#738496;font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;background:#f8fafb}th,td{padding:14px 18px;border-bottom:1px solid #e8eef3}tbody tr:last-child td{border-bottom:0}.badge,.status{display:inline-flex;align-items:center;border-radius:999px;padding:5px 9px;font-size:.68rem;font-weight:750}.badge.low{background:#eff3f5;color:#607485}.badge.medium{background:#e5f4fa;color:#257d98}.badge.high{background:#fff0dc;color:#b26917}.badge.critical{background:#fde6e6;color:#b33d3d}.status.open{background:#eaf4fa;color:#347c9a}.status.in_progress,.status.maintenance{background:#fff1d9;color:#9a641e}.status.completed,.status.active{background:#e5f5ed;color:#26785a}.status.cancelled,.status.inactive{background:#edf0f2;color:#687989}.empty{text-align:center;padding:45px 20px;color:var(--muted)}.empty.wide{grid-column:1/-1;background:#fff;border:1px dashed #cbd7e0;border-radius:11px}.page-actions{display:flex;justify-content:space-between;align-items:center;margin:-5px 0 20px}.page-actions p{color:var(--muted);font-size:.86rem}.cards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.asset-card,.plan-card{background:#fff;border:1px solid var(--line);border-radius:11px;padding:20px;box-shadow:0 5px 18px rgba(16,42,67,.03)}.asset-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.asset-icon{width:42px;height:42px;border-radius:8px;background:#e6f6fa;color:var(--cyan);display:grid;place-items:center;font-size:1.4rem}.asset-card>small,.plan-card small{color:var(--cyan);font-weight:800;letter-spacing:.05em}.asset-card h3,.plan-card h3{margin:5px 0 17px}.asset-card dl{margin:0;display:grid;gap:9px}.asset-card dl div{display:flex;justify-content:space-between;border-top:1px solid #edf1f4;padding-top:9px;font-size:.77rem}.asset-card dt{color:var(--muted)}.asset-card dd{margin:0;font-weight:700}.plan-card{display:flex;gap:16px}.plan-date{flex:0 0 55px;height:62px;background:#e8f6fa;color:#197f99;border-radius:9px;display:grid;place-items:center;align-content:center}.plan-date.late{background:#fde9e9;color:#ae4040}.plan-date strong{font-size:1.4rem;line-height:1}.plan-date span{font-size:.6rem;font-weight:800;margin-top:4px}.plan-card h3{margin-bottom:3px}.plan-card p{font-size:.8rem;margin:3px 0}.inline-form select{padding:6px 8px;font-size:.72rem}
dialog{border:0;border-radius:13px;padding:0;width:min(620px,calc(100vw - 28px));box-shadow:0 30px 90px rgba(10,30,48,.32)}dialog::backdrop{background:rgba(8,25,39,.58);backdrop-filter:blur(2px)}dialog form{padding:26px}.dialog-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:22px}.dialog-head h2{margin:0}.dialog-head button{border:0;background:#edf2f5;width:33px;height:33px;border-radius:50%;font-size:1.3rem;cursor:pointer}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid .full{grid-column:1/-1}.form-grid textarea{resize:vertical;min-height:80px}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}
.site-intake-context{display:grid;gap:5px;padding:15px 17px;border:1px solid #cfe0ea;border-left:4px solid var(--cyan);border-radius:10px;background:#f5fafc}.site-intake-context strong{color:var(--navy);font-size:1rem}.site-intake-context span{font-weight:750}.site-intake-context small{color:var(--muted)}.form-grid input[type="file"]{padding:10px;background:#f8fafc;border-style:dashed}
.action-group,.import-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.import-shell{max-width:1280px;margin:0 auto;padding:45px 24px 80px}.import-head{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:25px}.import-head h1{margin:0}.import-panel{padding:24px;margin-bottom:20px}.import-panel>h2{margin-top:0}.import-actions{justify-content:space-between}.import-actions form{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.import-error{color:#b33d3d;font-weight:700}.import-ok{color:#26785a;font-weight:700}.form-stack small{font-size:.72rem;color:var(--muted);font-weight:500}
.settings-page{max-width:1100px;margin:0 auto;padding:42px 24px}.settings-top{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:25px}.settings-top h1{margin:0 0 8px}.settings-panel{padding:0}.settings-panel input[type=checkbox]{width:20px;height:20px;accent-color:var(--cyan)}.sla-field{display:flex;align-items:center;gap:8px}.sla-field input{width:130px;border:1px solid #ced9e2;border-radius:8px;padding:9px}.sla-field span{color:var(--muted)}.settings-save{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 22px;border-top:1px solid var(--line)}@media(max-width:700px){.settings-top,.settings-save{align-items:stretch;flex-direction:column}.settings-panel th,.settings-panel td{padding:11px 9px}.sla-field input{width:95px}}
@media(max-width:1050px){.stats{grid-template-columns:1fr 1fr}.cards-grid{grid-template-columns:1fr 1fr}}@media(max-width:760px){.auth-shell{grid-template-columns:1fr}.auth-brand{display:none}.auth-card{min-height:100vh;padding:45px 25px}.mobile-logo{display:block;width:180px;margin-bottom:55px}.sidebar{transform:translateX(-100%);transition:.22s}.sidebar.open{transform:translateX(0);box-shadow:15px 0 50px rgba(10,30,48,.25)}.app-main{margin-left:0;padding:20px 16px 50px}.menu{display:block;border:0;background:#fff;border-radius:8px;padding:9px 11px;margin-right:12px}.topbar{justify-content:flex-start}.today{margin-left:auto}.hero{align-items:flex-start;padding:25px;gap:20px}.hero h2{font-size:1.55rem}.stats,.cards-grid{grid-template-columns:1fr}.page-actions{align-items:center}.table-wrap{margin:0 -1px}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}}@media(max-width:450px){.today{display:none}.hero{display:block}.hero .btn{margin-top:18px}.stats{gap:10px;margin:15px 0}.stats article{padding:15px}}

/* KYNEX CMMS 1.4.0 — Enterprise dashboard */
.dashboard-hero{margin-bottom:18px}.hero-actions{display:flex;gap:10px;align-items:center}.hero-secondary{background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.35)}.hero-secondary:hover{background:rgba(255,255,255,.2)}
.dashboard-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin:0 0 18px}.kpi-card{min-height:154px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:17px;display:flex;flex-direction:column;box-shadow:0 5px 18px rgba(16,42,67,.035);position:relative;overflow:hidden}.kpi-card:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:#7c95a6}.kpi-card.critical:before{background:#d94b4b}.kpi-card.active:before{background:#278ca8}.kpi-card.overdue:before{background:#e08a22}.kpi-card.success:before{background:#2f936d}.kpi-card.field:before{background:#6468b5}.kpi-card.maintenance:before{background:#8166aa}.kpi-head{display:flex;align-items:center;justify-content:space-between}.kpi-icon{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;background:#eef4f7;color:#47677a;font-weight:900}.kpi-card.critical .kpi-icon{background:#fdeaea;color:#b73737}.kpi-card.overdue .kpi-icon{background:#fff1dd;color:#ad6819}.kpi-card.success .kpi-icon{background:#e6f5ee;color:#257653}.kpi-trend{font-size:.61rem;text-transform:uppercase;letter-spacing:.055em;color:var(--muted);font-weight:800}.kpi-card>small{margin-top:13px;color:var(--muted);font-size:.72rem}.kpi-card>strong{font-size:2rem;line-height:1.05;margin:4px 0;color:var(--navy)}.kpi-card>a,.kpi-note{margin-top:auto;font-size:.66rem;color:#34829a;text-decoration:none;font-weight:700}.kpi-note{color:var(--muted);font-weight:600}
.dashboard-grid{display:grid;gap:18px;margin-bottom:18px}.charts-grid{grid-template-columns:1.25fr .75fr}.operations-grid{grid-template-columns:minmax(0,1.5fr) minmax(310px,.7fr);align-items:start}.dashboard-panel{background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px;box-shadow:0 5px 18px rgba(16,42,67,.035)}.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-bottom:18px}.panel-heading h3{margin:2px 0 0;font-size:1rem}.panel-heading .eyebrow{margin:0}.panel-heading>a,.panel-total{font-size:.68rem;color:#37839a;text-decoration:none;font-weight:750;white-space:nowrap}.panel-total{color:var(--muted);background:#f1f5f7;border-radius:999px;padding:5px 9px}
.bar-chart{display:grid;gap:12px}.bar-row{display:grid;gap:6px}.bar-label{display:flex;justify-content:space-between;align-items:center;font-size:.71rem}.bar-label span{display:flex;align-items:center;gap:7px;color:#536d7d}.bar-label strong{font-size:.7rem}.bar-track{height:7px;border-radius:999px;background:#edf2f5;overflow:hidden}.bar-fill{display:block;height:100%;border-radius:999px;background:#72a9b9;min-width:3px}.status-new{background:#4ba0bd}.status-confirmed,.status-assigned,.status-accepted{background:#6c91ac}.status-travelling,.status-on_site,.status-in_progress{background:#d9943f}.status-waiting_material,.status-waiting_client{background:#b17a9d}.status-technician_completed,.status-review,.status-client_confirmed{background:#6a9d81}.status-to_invoice,.status-invoiced,.status-closed{background:#397d60}.priority-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.priority-dot.emergency,.priority-emergency{background:#d94b4b}.priority-dot.urgent,.priority-urgent{background:#e37a2c}.priority-dot.high,.priority-high{background:#dfaa36}.priority-dot.standard,.priority-standard{background:#4d9bb4}.priority-dot.low,.priority-low{background:#94a6b0}
.w-0{width:0}.w-5{width:5%}.w-10{width:10%}.w-15{width:15%}.w-20{width:20%}.w-25{width:25%}.w-30{width:30%}.w-35{width:35%}.w-40{width:40%}.w-45{width:45%}.w-50{width:50%}.w-55{width:55%}.w-60{width:60%}.w-65{width:65%}.w-70{width:70%}.w-75{width:75%}.w-80{width:80%}.w-85{width:85%}.w-90{width:90%}.w-95{width:95%}.w-100{width:100%}
.recent-panel{padding-bottom:8px}.recent-list{margin:0 -8px}.recent-ticket{display:grid;grid-template-columns:5px minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px 8px;border-top:1px solid #edf1f4;text-decoration:none;color:inherit;border-radius:8px}.recent-ticket:first-child{border-top:0}.recent-ticket:hover{background:#f7fafb}.ticket-priority{display:block;width:5px;height:38px;border-radius:4px;background:#95a7b1}.ticket-priority.emergency{background:#d94b4b}.ticket-priority.urgent{background:#e37a2c}.ticket-priority.high{background:#dfaa36}.ticket-priority.standard{background:#4d9bb4}.recent-main{min-width:0}.recent-main strong{display:block;font-size:.76rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.recent-main small,.recent-meta small{display:block;color:var(--muted);font-size:.64rem;margin-top:4px}.recent-meta{text-align:right}.status-chip{display:inline-flex;border-radius:999px;padding:4px 7px;background:#edf2f5;color:#526d7d;font-size:.59rem;font-weight:800}.status-chip.status-in_progress,.status-chip.status-on_site,.status-chip.status-travelling{background:#fff0da;color:#9a621d}.status-chip.status-closed,.status-chip.status-invoiced,.status-chip.status-client_confirmed{background:#e4f4ec;color:#297456}.status-chip.status-new{background:#e5f3f8;color:#277b98}.late-text{color:#bd4141!important;font-weight:750}
.dashboard-stack{display:grid;gap:18px}.compact-panel{padding:18px}.maintenance-list,.workload-list{display:grid}.maintenance-row{display:flex;align-items:center;gap:11px;padding:10px 0;border-top:1px solid #edf1f4;text-decoration:none;color:inherit}.maintenance-row:first-child{border-top:0}.maintenance-row>div:last-child{min-width:0}.maintenance-row strong{display:block;font-size:.72rem}.maintenance-row small{display:block;font-size:.61rem;color:var(--muted);margin-top:2px}.due-date{flex:0 0 42px;height:45px;border-radius:8px;background:#e7f3f7;color:#277b94;display:grid;place-items:center;align-content:center}.due-date.late{background:#fde9e9;color:#b53a3a}.due-date strong{font-size:1rem;line-height:1}.due-date small{font-size:.52rem;margin:2px 0 0}.workload-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 0;border-top:1px solid #edf1f4}.workload-row:first-child{border-top:0}.avatar.mini{width:31px;height:31px;font-size:.72rem}.workload-row strong{display:block;font-size:.72rem}.workload-row small{display:block;font-size:.61rem;color:var(--muted);margin-top:2px}.field-indicator{font-size:.56rem;font-weight:800;color:#728591;background:#eef2f4;border-radius:999px;padding:4px 7px}.field-indicator.online{color:#257553;background:#e4f4ec}.dashboard-empty{font-size:.72rem;color:var(--muted);padding:18px 0;text-align:center}
.quick-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px}.quick-actions>a{display:flex;gap:12px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:11px;padding:15px;text-decoration:none;color:inherit}.quick-actions>a:hover{border-color:#9fc4cf;box-shadow:0 5px 15px rgba(16,42,67,.05)}.quick-actions>a>span{width:35px;height:35px;border-radius:8px;background:#e8f4f7;color:#28809a;display:grid;place-items:center;font-weight:900}.quick-actions strong{display:block;font-size:.72rem}.quick-actions small{display:block;color:var(--muted);font-size:.61rem;margin-top:3px}
@media(max-width:1350px){.dashboard-kpis{grid-template-columns:repeat(3,1fr)}}@media(max-width:1000px){.charts-grid,.operations-grid{grid-template-columns:1fr}.quick-actions{grid-template-columns:1fr 1fr}}@media(max-width:650px){.dashboard-kpis{grid-template-columns:1fr 1fr}.hero-actions{align-items:stretch;flex-direction:column}.dashboard-hero{display:block}.dashboard-hero .hero-actions{margin-top:18px}.recent-ticket{grid-template-columns:5px minmax(0,1fr)}.recent-meta{grid-column:2;text-align:left;display:flex;align-items:center;gap:8px}.recent-meta small{margin:0}.quick-actions{grid-template-columns:1fr}}@media(max-width:420px){.dashboard-kpis{grid-template-columns:1fr}}

/* KYNEX CMMS 1.5.0 — dashboard rendering safeguards */
.dashboard-page .app-main{min-width:0;overflow-x:hidden}
.dashboard-page .dashboard-hero,.dashboard-page .dashboard-kpis,.dashboard-page .dashboard-grid,.dashboard-page .quick-actions{width:100%;box-sizing:border-box}
.dashboard-page .dashboard-panel,.dashboard-page .kpi-card{box-sizing:border-box;min-width:0}
.dashboard-page .dashboard-panel *,.dashboard-page .kpi-card *{box-sizing:border-box}
.dashboard-page .dashboard-kpis article{margin:0}
.dashboard-page .dashboard-grid article,.dashboard-page .dashboard-grid aside{min-width:0}
.dashboard-page .recent-main strong{max-width:100%}
@media(max-width:1180px){.dashboard-page .dashboard-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.dashboard-page .dashboard-kpis{grid-template-columns:1fr}.dashboard-page .dashboard-panel{padding:16px}}
.notification-group{margin:0 0 22px;border:1px solid #dfe6ee;border-radius:14px;overflow:hidden}.notification-group>header{padding:14px 16px;background:#f6f8fb;border-bottom:1px solid #dfe6ee}.notification-group h4{margin:0;color:#18324a}.notification-group table{margin:0}.notification-group td:first-child strong,.notification-group td:first-child small{display:block}.notification-group td:first-child small{margin-top:4px;color:#718096}.notification-group th:not(:first-child),.notification-group td:not(:first-child){text-align:center;width:150px}.notification-settings input[type=checkbox]{width:18px;height:18px}@media(max-width:700px){.notification-group th:not(:first-child),.notification-group td:not(:first-child){width:auto}.notification-group td:first-child small{max-width:230px}}
/* KYNEX 2.8.0 — постоянна лява навигация */
.global-sidebar{position:fixed;inset:0 auto 0 0;width:248px;background:#102a43;color:#fff;z-index:1000;display:flex;flex-direction:column;box-shadow:8px 0 30px rgba(16,42,67,.12)}
.global-brand{display:flex;flex-direction:column;padding:24px 22px 20px;color:#fff;border-bottom:1px solid rgba(255,255,255,.1)}.global-brand strong{font-size:1.35rem;letter-spacing:.12em}.global-brand span{font-size:.68rem;color:#91d7e7;margin-top:3px;letter-spacing:.08em;text-transform:uppercase}
.global-sidebar nav{padding:14px 10px;display:grid;gap:4px;overflow-y:auto}.global-sidebar nav a{display:flex;align-items:center;gap:12px;color:#c9d7e2;padding:10px 12px;border-radius:9px;font-size:.82rem;font-weight:650}.global-sidebar nav a:hover,.global-sidebar nav a.active{background:rgba(24,167,201,.18);color:#fff}.global-sidebar nav i{font-style:normal;width:22px;text-align:center;color:#70cee0}
.global-sidebar-user{margin-top:auto;padding:16px;border-top:1px solid rgba(255,255,255,.1);display:flex;gap:10px;align-items:center}.global-sidebar-user .avatar{width:34px;height:34px;border-radius:50%;background:#18a7c9;display:grid;place-items:center;font-weight:800}.global-sidebar-user strong,.global-sidebar-user small{display:block}.global-sidebar-user strong{font-size:.76rem}.global-sidebar-user small{font-size:.62rem;color:#aabfce;margin-top:2px}
.runtime-release-badge{margin:12px 16px 0;padding:7px 9px;border:1px solid rgba(255,255,255,.2);border-radius:8px;background:rgba(0,0,0,.14);color:#d9edf5;font:700 .58rem/1.25 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.04em;text-align:center}.auth-runtime-release{margin-top:20px;padding-top:14px;border-top:1px solid #dce5ec;color:#66788a;font:700 .68rem/1.3 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.05em;text-align:center}
.global-content{margin-left:248px!important;width:calc(100% - 248px)!important;max-width:none!important;padding:26px 30px!important}.has-global-sidebar{overflow-x:hidden}.ops-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:22px}.ops-head h1{margin:0}.ops-head-actions{display:flex;gap:8px;flex-wrap:wrap}
@media(max-width:850px){.global-sidebar{width:76px}.global-brand{padding:20px 8px;text-align:center}.global-brand strong{font-size:.8rem}.global-brand span,.global-sidebar nav a span,.global-sidebar-user div,.runtime-release-badge{display:none}.global-sidebar nav a{justify-content:center;padding:11px}.global-sidebar nav i{width:auto}.global-sidebar-user{justify-content:center;padding:14px 8px}.global-content{margin-left:76px!important;width:calc(100% - 76px)!important;padding:20px 16px!important}}

/* KYNEX 2.9.0 — единна горна лента и глобално търсене */
.global-toolbar{position:sticky;top:0;z-index:90;display:flex;align-items:center;gap:14px;margin:-26px -30px 22px;padding:12px 30px;background:rgba(238,243,247,.96);backdrop-filter:blur(12px);border-bottom:1px solid #dbe5ec}
.global-search{flex:1;max-width:820px;display:flex;align-items:center;gap:10px;background:#fff;border:1px solid #cfdae2;border-radius:11px;padding:0 12px;box-shadow:0 4px 14px rgba(16,42,67,.04)}
.global-search:focus-within{border-color:#18a7c9;box-shadow:0 0 0 3px rgba(24,167,201,.12)}.global-search>span{font-size:1.15rem;color:#547184}.global-search input{width:100%;border:0!important;box-shadow:none!important;background:transparent;padding:11px 0}.global-search kbd{font:600 .65rem/1 system-ui;color:#6d8190;border:1px solid #d7e0e6;border-bottom-width:2px;border-radius:6px;padding:5px 7px;background:#f7f9fa;white-space:nowrap}
.global-toolbar-actions{display:flex;gap:8px}.toolbar-link{display:flex;align-items:center;gap:6px;padding:9px 11px;border-radius:9px;color:#334e68;text-decoration:none;font-size:.72rem;font-weight:750}.toolbar-link:hover{background:#fff}
.tenant-switcher-icon-source{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important}.tenant-icon-switcher{display:flex;align-items:center;gap:9px;max-width:min(58vw,760px);padding:4px 6px;overflow-x:auto;scrollbar-width:thin}.tenant-icon-switcher .tenant-context-label{flex:0 0 auto;font-size:.7rem;font-weight:800;color:#526d82;text-transform:uppercase}.tenant-icon-button{display:grid;place-items:center;flex:0 0 auto;width:62px;height:54px;padding:5px;border:1px solid #c8d8e3;border-radius:13px;background:#fff;color:#0f2d46;font-size:18px;font-weight:900;line-height:1;cursor:pointer;box-shadow:0 4px 12px rgba(16,42,67,.06);transition:border-color .16s ease,background .16s ease,color .16s ease,transform .16s ease}.tenant-icon-button img{display:block;width:100%;height:100%;object-fit:contain;border-radius:8px}.tenant-icon-button:hover{border-color:#0f77a8;transform:translateY(-1px)}.tenant-icon-button:focus-visible{outline:3px solid rgba(15,119,168,.22);outline-offset:2px}.tenant-icon-button.active{border:3px solid #ed7d22;background:#fff;color:#ed7d22;padding:3px;box-shadow:0 6px 16px rgba(237,125,34,.24)}
.search-page{padding:18px}.search-page-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;margin-bottom:18px}.search-page-form input{font-size:1rem}.search-group{margin-top:20px}.search-group>header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e4ebf0;padding:0 2px 9px}.search-group h2{font-size:.95rem;margin:0}.search-group header span{font-size:.7rem;color:#60798a;background:#edf3f6;padding:4px 8px;border-radius:999px}.search-results{display:grid}.search-result{display:grid;grid-template-columns:130px minmax(0,1fr) auto 18px;align-items:center;gap:14px;padding:13px 4px;border-bottom:1px solid #edf1f4;color:inherit;text-decoration:none}.search-result:hover{background:#f7fafb}.search-result-code{font-size:.7rem;font-weight:850;color:#2a7c96}.search-result-main{min-width:0}.search-result-main strong,.search-result-main small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-result-main strong{font-size:.78rem}.search-result-main small{font-size:.65rem;color:#6d8190;margin-top:4px}.search-result>b{color:#7c919f;font-size:1.1rem}
@media(max-width:900px){.global-toolbar{margin:-20px -16px 18px;padding:10px 16px}.global-toolbar-actions span,.global-search kbd{display:none}.search-result{grid-template-columns:90px minmax(0,1fr) auto}.search-result>b{display:none}}
@media(max-width:620px){.global-toolbar-actions{display:none}.global-search input{font-size:.78rem}.search-page-form{grid-template-columns:1fr}.search-result{grid-template-columns:1fr}.search-result-code{margin-bottom:-8px}.search-result .status-chip{justify-self:start}.search-result-main strong,.search-result-main small{white-space:normal}}

/* KYNEX 3.0.0 — единна обвивка и постоянно ляво меню и за началните екрани */
.index-page-head{margin-top:0;padding-top:8px}
.toolbar-logout{margin:0}.toolbar-logout button{border:0;background:transparent;font:inherit;cursor:pointer}
.tenant-switcher{margin:0}.tenant-switcher select{min-width:190px;max-width:280px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
body.has-global-sidebar .app-main.global-content{min-width:0}

/* Keep fragment navigation to the role-context editor clear of the fixed
   application sidebar. Without an inline scroll margin, browsers may move the
   document horizontally when following #role-context-editor; the submit
   control then sits behind the sidebar and a pointer click can hit navigation. */
body.has-global-sidebar #role-context-editor{scroll-margin-left:278px;scroll-margin-inline-start:278px}
@media(max-width:850px){body.has-global-sidebar #role-context-editor{scroll-margin-left:92px;scroll-margin-inline-start:92px}}
@media (max-width:760px){.tenant-switcher select{min-width:120px;max-width:150px}.global-toolbar-actions span{display:none}}

/* KYNEX 3.2.0 — единна горна лента */
.toolbar-form{margin:0;display:flex;align-items:center}
.toolbar-button{border:0;background:transparent;font:inherit;cursor:pointer}
.tenant-switcher select{min-width:180px;max-width:240px;border:1px solid #c8d6e0;background:#fff;border-radius:9px;padding:8px 30px 8px 10px;color:#334e68;font-size:.72rem;font-weight:700}
@media(max-width:1100px){.tenant-switcher select{min-width:140px;max-width:170px}.toolbar-link span{display:none}}
/* 3.4.0 tenant white-label branding */
.global-sidebar{background:linear-gradient(180deg,var(--tenant-brand,#123651),#0d273d)}
.tenant-theme-sesame .global-sidebar,.tenant-theme-city-home .global-sidebar,.tenant-theme-kynex .global-sidebar{background:linear-gradient(180deg,var(--theme-primary),var(--theme-deep))}
.tenant-theme-sesame .hero,.tenant-theme-city-home .hero,.tenant-theme-kynex .hero{background:linear-gradient(112deg,var(--theme-deep),var(--theme-primary))}
.tenant-theme-sesame .global-sidebar nav a.active,.tenant-theme-city-home .global-sidebar nav a.active,.tenant-theme-kynex .global-sidebar nav a.active{background:color-mix(in srgb,var(--theme-accent) 24%,transparent);border-left-color:var(--theme-accent)}
.tenant-theme-sesame .global-sidebar nav i,.tenant-theme-city-home .global-sidebar nav i,.tenant-theme-kynex .global-sidebar nav i{color:color-mix(in srgb,var(--theme-accent) 82%,white)}
.tenant-theme-sesame .avatar,.tenant-theme-city-home .avatar,.tenant-theme-kynex .avatar{background:var(--theme-accent)}
.tenant-theme-sesame .tenant-icon-button.active,.tenant-theme-city-home .tenant-icon-button.active,.tenant-theme-kynex .tenant-icon-button.active{border-color:var(--theme-accent);color:var(--theme-primary);box-shadow:0 6px 16px color-mix(in srgb,var(--theme-accent) 28%,transparent)}
.tenant-theme-sesame .workspace-context-chip,.tenant-theme-city-home .workspace-context-chip,.tenant-theme-kynex .workspace-context-chip{background:var(--theme-soft);color:var(--theme-primary);border-color:color-mix(in srgb,var(--theme-primary) 22%,white)}
.global-brand.tenant-brand{min-height:74px;display:flex;flex-direction:column;justify-content:center}
.global-brand.tenant-brand img{display:block;max-width:175px;max-height:54px;object-fit:contain;object-position:left center}
.global-brand.tenant-brand strong{font-size:1.05rem;line-height:1.2;letter-spacing:.03em}
.btn.primary,.wizard-submit{background:var(--tenant-brand,#123651);border-color:var(--tenant-brand,#123651)}
.tenant-logo-preview{width:220px;height:100px;border:1px dashed #cbd7e0;border-radius:10px;display:grid;place-items:center;background:#fff;overflow:hidden;padding:12px}
.tenant-logo-preview img{max-width:100%;max-height:100%;object-fit:contain}
.client-list article .client-logo{width:58px;height:42px;object-fit:contain;border:1px solid #e6edf2;border-radius:7px;background:#fff;padding:4px}

/* 6.9.2: client users see one clear tenant identity; provider users retain KYNEX branding. */
.global-brand .tenant-primary-logo{display:block;width:190px;max-width:100%;max-height:92px;height:auto;object-fit:contain;object-position:center;background:#fff;border-radius:9px;padding:8px 10px;box-shadow:0 10px 24px rgba(0,0,0,.14)}
.global-brand .tenant-brand-name{display:block;width:190px;max-width:100%;background:#fff;color:#123651;border-radius:9px;padding:14px 12px;text-align:center;box-shadow:0 10px 24px rgba(0,0,0,.14)}

/* 5.2.5: KYNEX provider logo across login, navigation and responsive layouts. */
.auth-brand img.auth-brand-logo{display:block;width:min(360px,78%);height:auto;margin:0 0 34px;background:#fff;border-radius:14px;padding:10px 14px;box-shadow:0 16px 36px rgba(3,18,30,.22);filter:none}
.global-brand.tenant-brand{min-height:104px;padding:18px 18px 16px}
.global-brand.tenant-brand .kynex-provider-logo{display:block;width:190px;max-width:none;max-height:none;height:auto;object-fit:contain;object-position:left center;background:#fff;border-radius:9px;padding:5px 7px;box-shadow:0 10px 24px rgba(0,0,0,.14)}
.global-brand.tenant-brand>span{margin-top:8px}
@media(max-width:900px){.global-brand.tenant-brand{min-height:80px;padding:16px 8px}.global-brand.tenant-brand .kynex-provider-logo,.global-brand.tenant-brand .tenant-primary-logo{width:60px;max-width:none;max-height:62px;padding:3px;border-radius:6px}.global-brand .tenant-brand-name{width:60px;padding:8px 3px;font-size:.62rem;overflow-wrap:anywhere}}
@media(max-width:760px){.auth-card .mobile-logo{display:block;width:min(280px,86%);height:auto;margin:0 0 48px;background:#fff;filter:none}}
body>.ops-shell:first-child::before{content:"";display:block;width:220px;max-width:70vw;height:92px;margin:0 0 22px;background:#fff url('brand/kynex-logo.png') center/contain no-repeat;border-radius:10px;box-shadow:0 8px 24px rgba(16,42,67,.08)}
.technician-new-assignment{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px;text-decoration:none;color:inherit;cursor:pointer}.technician-new-assignment b{white-space:nowrap;color:#123651}.technician-new-assignment:hover{box-shadow:0 8px 24px rgba(18,54,81,.12)}.ticket-list-table td .badge.warning{display:inline-flex;margin-left:8px;background:#fff0d5;color:#9a5b00;border:1px solid #f3c56b;text-decoration:none}.technician-clickable-row{cursor:pointer}.technician-clickable-row:hover{background:#eef8fb}

/* 6.15.50: compact phone dashboard — tickets first, no desktop sidebar or KPI noise. */
@media(max-width:700px){
  body.dashboard-page{background:#eef3f7}
  body.dashboard-page .global-sidebar{display:none!important}
  body.dashboard-page .app-main.global-content{margin-left:0!important;width:100%!important;padding:10px 12px 30px!important}
  body.dashboard-page .global-toolbar{position:static;margin:-10px -12px 10px;padding:9px 12px;background:#fff;box-shadow:0 2px 10px rgba(16,42,67,.06)}
  body.dashboard-page .global-search{max-width:none;border-radius:9px;box-shadow:none}
  body.dashboard-page .global-search input{font-size:16px;padding:9px 0}
  body.dashboard-page .global-toolbar-actions{display:none!important}
  body.dashboard-page .index-page-head{margin:0 0 8px;padding:0}
  body.dashboard-page .index-page-head .eyebrow{display:none}
  body.dashboard-page .index-page-head h1{font-size:1.25rem;line-height:1.2;margin:0}
  body.dashboard-page .dashboard-hero,
  body.dashboard-page .dashboard-kpis,
  body.dashboard-page .charts-grid,
  body.dashboard-page .quick-actions{display:none!important}
  body.dashboard-page .operations-grid{display:block!important;margin:0}
  body.dashboard-page .operations-grid>aside{display:none!important}
  body.dashboard-page .dashboard-panel.recent-panel{padding:0;border-radius:12px;overflow:hidden;box-shadow:none}
  body.dashboard-page .recent-panel .panel-heading{padding:12px 14px;margin:0;border-bottom:1px solid #e6edf2;align-items:center}
  body.dashboard-page .recent-panel .panel-heading .eyebrow{display:none}
  body.dashboard-page .recent-panel .panel-heading h3{font-size:1rem;margin:0}
  body.dashboard-page .recent-panel .panel-heading>a{font-size:.72rem}
  body.dashboard-page .recent-list{margin:0}
  body.dashboard-page .recent-ticket{grid-template-columns:4px minmax(0,1fr) auto;gap:9px;padding:13px 12px;border-radius:0;min-height:58px}
  body.dashboard-page .ticket-priority{width:4px;height:42px}
  body.dashboard-page .recent-main strong{font-size:.82rem;line-height:1.25}
  body.dashboard-page .recent-main small{font-size:.68rem;margin-top:5px}
  body.dashboard-page .recent-meta{grid-column:auto;text-align:right;display:block}
  body.dashboard-page .recent-meta small{font-size:.61rem;margin-top:5px;white-space:nowrap}
  body.dashboard-page .status-chip{font-size:.61rem;padding:4px 7px}
}

/* KYNEX 6.15.60: visible object assignment and compact permission groups. */
.form-stack [data-user-sites]{order:-1;border:2px solid #18a7c9;background:#eef9fc;border-radius:12px;padding:16px}.form-stack [data-user-sites] legend{padding:0 8px;color:#0b7895;font-weight:900}.form-stack [data-user-sites].required-assignment{border-color:#e59a24;background:#fff8eb}.permission-groups{display:grid;gap:12px}.permission-groups details{border:1px solid #d8e3ea;border-radius:12px;background:#fff;overflow:hidden}.permission-groups summary{cursor:pointer;padding:15px 17px;font-weight:850;color:#123651;background:#f5f9fb}.permission-groups details[open] summary{border-bottom:1px solid #d8e3ea}.permission-groups table td:last-child{width:210px}.permission-groups select{width:100%;padding:9px;border:1px solid #cbd9e2;border-radius:8px;background:#fff}
.tenant-role-row{display:grid;grid-template-columns:minmax(180px,1fr) minmax(220px,1fr);gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}.tenant-role-row select{width:100%}.tenant-role-row:last-child{border-bottom:0}@media(max-width:700px){.tenant-role-row{grid-template-columns:1fr}}
.tenant-context-label{margin-right:7px;color:#496276;font-size:.78rem;font-weight:900;text-transform:uppercase;white-space:nowrap}


/* Sidebar brand card: make every tenant/provider logo prominent and consistent. */
.global-brand.tenant-brand .tenant-primary-logo,
.global-brand.tenant-brand .kynex-provider-logo{width:100%;max-width:none;height:96px;max-height:none;box-sizing:border-box;object-fit:contain;object-position:center;background:#e5e7eb;border:1px solid rgba(255,255,255,.58);border-radius:12px;padding:10px 14px;box-shadow:0 10px 24px rgba(0,0,0,.18)}
.global-brand.tenant-brand .tenant-brand-name{width:100%;max-width:none;min-height:76px;box-sizing:border-box;display:grid;place-items:center;background:#e5e7eb;border:1px solid rgba(255,255,255,.58);border-radius:12px;color:#123651;padding:12px 14px;box-shadow:0 10px 24px rgba(0,0,0,.18)}


/* Canonical workflow status colors — shared across request, dashboard and mobile surfaces. */
.status-chip[class*="status-"]{border:1px solid transparent}
.status-chip.status-draft,
.status-chip.status-new,
.status-chip.status-submitted_to_kynex,
.status-chip.status-onboarding,
.status-chip.status-planned{
  background:#e8f3fb;color:#245f86;border-color:#cfe4f3
}
.status-chip.status-pending_client_approval,
.status-chip.status-awaiting_executor_assignment,
.status-chip.status-awaiting_executor_dispatch,
.status-chip.status-confirmed,
.status-chip.status-assigned,
.status-chip.status-released,
.status-chip.status-ready_for_act,
.status-chip.status-act_draft,
.status-chip.status-ready_for_invoice,
.status-chip.status-partially_invoiced{
  background:#fff4d8;color:#875b12;border-color:#f0dda8
}
.status-chip.status-accepted,
.status-chip.status-en_route,
.status-chip.status-travelling,
.status-chip.status-on_site,
.status-chip.status-in_progress,
.status-chip.status-active{
  background:#e4f4f7;color:#176979;border-color:#c4e5ea
}
.status-chip.status-on_hold,
.status-chip.status-waiting_parts,
.status-chip.status-waiting_material,
.status-chip.status-waiting_client,
.status-chip.status-paused,
.status-chip.status-suspended{
  background:#f1e9f6;color:#6e477d;border-color:#dfcee8
}
.status-chip.status-technician_completed,
.status-chip.status-quality_review,
.status-chip.status-review,
.status-chip.status-client_approved,
.status-chip.status-client_confirmed,
.status-chip.status-to_invoice,
.status-chip.status-invoiced,
.status-chip.status-closed,
.status-chip.status-completed,
.status-chip.status-ended,
.status-chip.status-warranty_no_invoice,
.status-chip.status-acted{
  background:#e4f4ec;color:#297456;border-color:#c9e7d8
}
.status-chip.status-client_rejected,
.status-chip.status-returned_to_executor,
.status-chip.status-reported_incomplete,
.status-chip.status-not_done,
.status-chip.status-canceled,
.status-chip.status-disabled,
.status-chip.status-inactive,
.status-chip.status-archived,
.status-chip.status-skipped,
.status-chip.status-act_rejected{
  background:#fde9e9;color:#a13232;border-color:#f2cccc
}
.field-status.status-draft,
.field-status.status-new,
.field-status.status-submitted_to_kynex{background:#e8f3fb;color:#245f86}
.field-status.status-pending_client_approval,
.field-status.status-awaiting_executor_assignment,
.field-status.status-awaiting_executor_dispatch,
.field-status.status-confirmed,
.field-status.status-assigned,
.field-status.status-released{background:#fff4d8;color:#875b12}
.field-status.status-accepted,
.field-status.status-en_route,
.field-status.status-travelling,
.field-status.status-on_site,
.field-status.status-in_progress{background:#e4f4f7;color:#176979}
.field-status.status-on_hold,
.field-status.status-waiting_parts,
.field-status.status-waiting_material,
.field-status.status-waiting_client{background:#f1e9f6;color:#6e477d}
.field-status.status-technician_completed,
.field-status.status-quality_review,
.field-status.status-review,
.field-status.status-client_approved,
.field-status.status-client_confirmed,
.field-status.status-to_invoice,
.field-status.status-invoiced,
.field-status.status-closed{background:#e4f4ec;color:#297456}
.field-status.status-client_rejected,
.field-status.status-returned_to_executor,
.field-status.status-reported_incomplete,
.field-status.status-not_done,
.field-status.status-canceled{background:#fde9e9;color:#a13232}

/* Phone navigation: full labels in a drawer, full-width page when closed. */
.kx-mobile-nav-bar,.kx-drawer-shade,.kx-drawer-heading{display:none}
@media(max-width:900px){
  body.has-global-sidebar .kx-mobile-nav-bar{display:flex;position:sticky;top:0;z-index:1200;align-items:center;gap:14px;min-height:58px;padding:8px 12px;background:#fff;border-bottom:1px solid #dfe7ee;box-shadow:0 2px 8px #102a430a}
  .kx-mobile-nav-button,.kx-drawer-close{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-width:48px;min-height:44px;padding:10px 14px;border:1px solid #d5dfea;border-radius:10px;background:#fff;color:#123651;font-size:16px;font-weight:800;cursor:pointer;touch-action:manipulation}
  .kx-mobile-nav-button{flex:none;min-width:108px;white-space:nowrap}
  .kx-mobile-nav-context{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:700;color:#405469}
  body.has-global-sidebar .global-sidebar{display:flex!important;position:fixed!important;inset:0 auto 0 0!important;width:min(86vw,330px)!important;max-width:100vw!important;height:100vh;height:100dvh;padding:0!important;transform:translateX(-105%)!important;transition:transform .2s ease;z-index:1500!important;overflow:hidden!important;visibility:hidden;pointer-events:none}
  body.has-global-sidebar.kx-drawer-open .global-sidebar{transform:translateX(0)!important;visibility:visible;pointer-events:auto;box-shadow:12px 0 40px #102a4340}
  body.has-global-sidebar .global-sidebar .kx-drawer-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;border-bottom:1px solid #ffffff26;flex-shrink:0;color:#fff;font-size:18px;font-weight:800}
  .kx-drawer-close{background:#ffffff15;border-color:#ffffff44;color:#fff;font-size:22px;padding:6px 12px}
  body.has-global-sidebar .global-sidebar .global-brand{display:flex!important;flex-direction:column;align-items:flex-start!important;min-height:0!important;padding:14px 18px!important;flex-shrink:0}
  body.has-global-sidebar .global-sidebar .global-brand img{display:block!important;width:auto!important;max-width:190px!important;height:auto!important;max-height:68px!important;object-fit:contain!important}
  body.has-global-sidebar .global-sidebar .global-brand span{display:block!important;font-size:11px}
  body.has-global-sidebar .global-sidebar .workspace-identity{display:block!important;width:auto!important;max-width:none!important;margin:0 14px 8px!important;padding:10px 12px!important;flex-shrink:0}
  body.has-global-sidebar .global-sidebar .workspace-identity small{display:block!important}
  body.has-global-sidebar .global-sidebar .workspace-identity strong{display:block!important;font-size:16px!important;line-height:1.4;white-space:normal!important}
  body.has-global-sidebar .global-sidebar nav{display:flex!important;flex-direction:column;flex:1;min-height:0;overflow-y:auto!important;overscroll-behavior:contain;padding:8px 6px!important;gap:4px!important}
  body.has-global-sidebar .global-sidebar nav a{display:flex!important;align-items:center;justify-content:flex-start!important;gap:12px!important;flex-shrink:0;min-height:48px;margin:0 6px!important;padding:12px!important;font-size:16px!important;white-space:normal!important}
  body.has-global-sidebar .global-sidebar nav a span{display:block!important;width:auto!important;white-space:normal!important;line-height:1.35}
  body.has-global-sidebar .global-sidebar nav i{display:block!important;flex:0 0 24px;width:24px!important;font-size:18px}
  body.has-global-sidebar .global-sidebar .super-admin-nav-section{display:block!important;padding:12px 14px 4px!important;font-size:12px!important}
  body.has-global-sidebar .global-sidebar-user{justify-content:flex-start!important;gap:12px!important;padding:12px 18px!important;flex-shrink:0}
  body.has-global-sidebar .global-sidebar-user div{display:block!important}
  body.has-global-sidebar .global-sidebar-user strong{font-size:14px!important}
  body.has-global-sidebar .global-sidebar-user small{font-size:12px!important}
  body.has-global-sidebar .global-sidebar-user .avatar{flex:0 0 36px}
  body.has-global-sidebar .ops-shell.global-content,body.has-global-sidebar .app-main.global-content{margin-left:0!important;width:100%!important;max-width:100%!important;min-width:0!important;padding-left:12px!important;padding-right:12px!important}
  body.has-global-sidebar #role-context-editor{scroll-margin-left:0;scroll-margin-inline-start:0}
  .kx-drawer-shade{position:fixed;inset:0;width:100%;height:100%;z-index:1400;border:0;padding:0;background:#07172788;cursor:pointer}
  body.kx-drawer-open .kx-drawer-shade{display:block}
  body.kx-drawer-open{overflow:hidden}
  .kx-mobile-nav-button:focus-visible,.kx-drawer-close:focus-visible{outline:3px solid #18a7c9;outline-offset:2px}
}
@media(prefers-reduced-motion:reduce){body.has-global-sidebar .global-sidebar{transition:none!important}}
