:root{font-family:Inter,Segoe UI,system-ui,sans-serif;color:#17142b;background:#f6f6fa;font-synthesis:none}body{margin:0;min-width:320px}button,input{font:inherit}.lms-app{height:100vh;display:grid;grid-template-columns:260px minmax(0,1fr);overflow:hidden}.sidebar{background:linear-gradient(155deg,#5420b7,#6c2cd5 38%,#32107e);color:#fff;display:flex;flex-direction:column;padding:20px 16px;z-index:30}.suite-brand{display:flex;gap:8px;align-items:center;background:none;border:0;color:#fff;font-weight:750;padding:4px 8px}.lms-brand{display:flex;gap:12px;align-items:center;padding:22px 8px 28px}.lms-brand img{width:48px;height:48px;border-radius:13px;object-fit:cover;box-shadow:0 9px 24px #1c075488}.lms-brand b{display:block;font-size:29px;line-height:1}.lms-brand small{font-weight:800;font-size:11px;letter-spacing:.08em}.tenant-label{font-size:11px;font-weight:800;opacity:.75;padding:0 10px 8px}.tenant-switch{display:flex;justify-content:space-between;align-items:center;border:1px solid #ffffff42;background:#ffffff10;color:#fff;border-radius:8px;padding:12px;margin-bottom:20px;font-weight:700}.tenant-switch svg{width:16px}.sidebar nav{display:flex;flex-direction:column;gap:4px}.sidebar nav button{display:flex;align-items:center;gap:12px;width:100%;border:0;background:transparent;color:#eee8ff;border-radius:8px;padding:12px 13px;text-align:left;font-weight:700}.sidebar nav button svg{width:19px}.sidebar nav button.active{background:linear-gradient(90deg,#ffffff2c,#bca0ff55);box-shadow:inset 0 0 0 1px #ffffff20;color:#fff}.sidebar .badge{margin-left:auto;background:#d8c6ff;color:#4f1ca0;border-radius:99px;padding:2px 9px;font-size:12px}.sidebar footer{margin-top:auto}.profile{width:100%;border:0;border-radius:10px;padding:12px;background:#ffffff0f;color:#fff;display:flex;align-items:center;gap:10px;text-align:left}.profile>span{width:40px;height:40px;background:#fff;color:#5b24be;border-radius:50%;display:grid;place-items:center;font-size:22px;font-weight:800}.profile div{flex:1}.profile b,.profile small{display:block}.profile small{opacity:.7}.profile svg{width:16px}.sidebar footer>div{display:flex;align-items:center;justify-content:space-between;padding:18px 8px 0;opacity:.75}.sidebar footer>div button{background:none;border:0;color:#fff}.sidebar footer svg{width:17px}.mobile-close{display:none}.workspace{min-width:0;display:flex;flex-direction:column;height:100vh}.topbar{height:72px;flex:0 0 72px;background:#fff;border-bottom:1px solid #e7e7ef;display:flex;align-items:center;padding:0 22px;gap:18px}.page-title{display:flex;align-items:center;gap:12px}.page-title>span{width:10px;height:10px;border-radius:50%;background:#7c3aed}.page-title h1{font-size:22px;margin:0}.top-actions{margin-left:auto;display:flex;align-items:center;gap:8px}.top-actions>button{display:flex;align-items:center;gap:7px;border:0;background:transparent;padding:9px 10px;color:#302c50;font-weight:700}.top-actions svg{width:18px}.icon-button{width:36px;height:36px;display:inline-grid!important;place-items:center;border:0!important;background:transparent!important;padding:0!important;position:relative;color:#373354}.top-actions i{position:absolute;top:-5px;right:-4px;background:#e11d48;color:#fff;border-radius:10px;padding:1px 5px;font-size:10px;font-style:normal}.avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#7338cf;color:#fff;font-weight:800}.menu-button{display:none;border:0;background:transparent;color:#472182}.content{flex:1;min-height:0;overflow:auto;padding:14px}.stats-row{display:grid;grid-template-columns:repeat(5,minmax(140px,1fr));gap:12px;margin-bottom:14px}.stats-row article{background:#fff;border:1px solid #e9e8f1;border-radius:10px;padding:14px;display:flex;align-items:center;gap:11px;min-width:0}.stat-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:50%}.stat-icon svg{width:21px}.stat-icon.purple{color:#6d28d9;background:#f1e9ff}.stat-icon.green{color:#059669;background:#e8f8f0}.stat-icon.red{color:#dc2626;background:#feecec}.stat-icon.orange{color:#ea580c;background:#fff2e6}.stat-icon.blue{color:#2563eb;background:#eaf1ff}.stats-row small,.stats-row b{display:block}.stats-row small{font-size:11px;color:#68647d}.stats-row b{font-size:22px;margin-top:3px;white-space:nowrap}.stats-row em{font-style:normal;font-size:11px;color:#8a879a;font-weight:600}.split-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(320px,1fr);gap:14px;min-height:calc(100vh - 100px)}.dashboard-split{min-height:calc(100vh - 174px)}.split-layout>main,.inspector{min-width:0}.live-map{height:min(61vh,660px);min-height:420px;background:#e9ece6;position:relative;overflow:hidden;border:1px solid #dedee7;border-radius:10px}.map-grid{position:absolute;inset:0;background:linear-gradient(22deg,transparent 48%,#fff8 49% 51%,transparent 52%) 0 0/90px 70px,linear-gradient(-25deg,transparent 48%,#cad5c788 49% 51%,transparent 52%) 0 0/120px 100px,radial-gradient(circle at 20% 20%,#cfe4c1 0 10%,transparent 11%),linear-gradient(140deg,#dbe9d1,#eef0ea)}.live-map svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.river{fill:none;stroke:#a8d9ef;stroke-width:9;opacity:.7}.route-line{fill:none;stroke-width:.8;vector-effect:non-scaling-stroke;stroke-dasharray:2 1}.route-line.purple{stroke:#7c3aed}.route-line.orange{stroke:#f97316}.route-line.green{stroke:#10b981}.map-marker{position:absolute;transform:translate(-50%,-50%);display:grid;grid-template-columns:24px auto;grid-template-rows:auto auto;align-items:center;border:2px solid currentColor;border-radius:8px;background:#fff;color:#6d28d9;padding:5px 8px;box-shadow:0 5px 16px #29233a35;z-index:3}.map-marker svg{position:static;width:19px;height:19px;grid-row:1/3}.map-marker b{font-size:12px}.map-marker span{font-size:10px}.map-marker.success{color:#059669}.map-marker.warning{color:#d97706}.map-marker.danger{color:#dc2626}.map-marker.muted{color:#64748b}.map-empty{position:absolute;inset:0;display:grid;place-content:center;text-align:center;color:#55516b;padding:30px;z-index:2}.map-empty svg{position:static;width:44px;height:44px;margin:auto;color:#7c3aed}.map-empty h3{margin:10px 0 4px}.map-empty p{margin:0;max-width:360px}.map-controls{position:absolute;top:18px;left:18px;display:flex;flex-direction:column;background:#fff;border-radius:7px;box-shadow:0 4px 15px #221a3a24;z-index:4}.map-controls button{width:38px;height:38px;border:0;border-bottom:1px solid #eee;background:#fff;font-size:20px}.map-controls svg{width:16px}.map-legend{position:absolute;bottom:18px;left:50%;transform:translate(-50%);background:#fff;padding:11px 18px;border-radius:8px;display:flex;gap:20px;box-shadow:0 5px 18px #221a3a20;z-index:4;font-size:12px}.map-legend span,.summary-dots span{display:flex;align-items:center;gap:7px;white-space:nowrap}.map-legend i,.summary-dots i{width:8px;height:8px;border-radius:50%;background:#94a3b8}.map-legend i.success,.summary-dots i.success{background:#10b981}.map-legend i.warning{background:#f59e0b}.map-legend i.danger,.summary-dots i.danger{background:#ef4444}.below-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:14px;margin-top:14px}.panel,.table-panel,.inspector{background:#fff;border:1px solid #e7e6ee;border-radius:10px}.panel{padding:14px}.panel header h3{margin:0 0 12px;font-size:14px}.panel header span{background:#eee8ff;color:#6d28d9;border-radius:99px;padding:2px 7px;margin-left:5px}.message-row{display:grid;grid-template-columns:50px 18px 1fr;gap:8px;padding:8px 0;border-top:1px solid #eee;font-size:12px}.message-row svg{width:15px;color:#f97316}.measure-row{width:100%;display:flex;align-items:center;gap:8px;border:0;border-top:1px solid #eee;background:#fff;padding:8px;text-align:left}.measure-row svg{width:17px;color:#7c3aed}.measure-row span,.measure-row small{display:block}.measure-row small{color:#767185}.empty-copy{color:#777287;font-size:13px}.inspector{display:flex;flex-direction:column;overflow:hidden;min-height:0}.inspector>header{display:flex;justify-content:space-between;align-items:center;padding:18px 18px 10px}.inspector h2{margin:2px 0;font-size:21px}.inspector header small{color:#737083}.vehicle-heading{margin:0 14px;padding:12px;display:flex;align-items:center;gap:10px;border-top:1px solid #eee}.vehicle-icon{width:36px;height:36px;border-radius:8px;display:grid;place-items:center;background:#f0eaff;color:#6d28d9}.vehicle-icon svg{width:20px}.vehicle-heading>div{min-width:0;flex:1}.vehicle-heading b,.vehicle-heading small{display:block}.vehicle-heading small{font-size:11px;color:#777287;margin-top:2px}.status{display:inline-flex;align-items:center;border-radius:99px;padding:4px 8px;font-size:11px;font-weight:700;white-space:nowrap}.status.success{color:#087f5b;background:#eaf8f1}.status.danger{color:#c81e1e;background:#fff0f0}.status.warning{color:#b45309;background:#fff6e5}.status.muted{color:#64748b;background:#f0f2f5}.success{color:#059669}.danger{color:#dc2626}.warning{color:#d97706}.muted{color:#64748b}.inspector-tabs{display:flex;padding:0 14px;border-bottom:1px solid #e9e8ef;overflow:auto}.inspector-tabs button{border:0;background:#fff;padding:11px 9px;color:#5e5875;font-weight:700;font-size:12px;white-space:nowrap}.inspector-tabs button.active{color:#6d28d9;border-bottom:3px solid #7c3aed}.detail-card{margin:14px;border:1px solid #ebeaf0;border-radius:9px;padding:14px}.detail-card dl{display:grid;grid-template-columns:1fr 1.15fr;margin:0;font-size:12px;gap:10px}.detail-card dt{color:#6d687f}.detail-card dd{margin:0;font-weight:700}.timeline{padding:0 18px 20px}.timeline h3{font-size:14px}.timeline>div{display:grid;grid-template-columns:50px 12px 1fr;align-items:center;gap:8px;font-size:12px;padding:6px}.timeline i{width:10px;height:10px;border:2px solid #7c3aed;border-radius:50%}.timeline .past span{color:#6d28d9;font-weight:700}.timeline p{font-size:12px;color:#777287}.inspector>footer{margin-top:auto;border-top:1px solid #e9e8ef;padding:13px;display:flex;gap:8px}.inspector>footer button{flex:1;display:flex;justify-content:center;align-items:center;gap:6px;border:1px solid #dcd8e9;background:#fff;color:#6330bd;border-radius:7px;padding:9px;font-weight:700;font-size:12px}.inspector>footer svg{width:15px}.inspector>footer .primary{background:#7135d4;color:#fff;border-color:#7135d4}.empty-inspector{align-items:center;justify-content:center;text-align:center;padding:30px;color:#68637d}.empty-inspector>svg{width:48px;height:48px;color:#8b5cf6}.empty-inspector p{max-width:330px;line-height:1.5}.vehicle-split{min-height:calc(100vh - 101px)}.table-panel{overflow:hidden}.table-toolbar{padding:14px;display:flex;align-items:center;gap:12px;border-bottom:1px solid #e9e8ef}.table-toolbar>label:first-child{display:flex;align-items:center;gap:8px;border:1px solid #dedce8;border-radius:7px;padding:9px 11px;min-width:280px}.table-toolbar svg{width:17px}.table-toolbar input{border:0;outline:0;width:100%}.table-toolbar>button{display:flex;align-items:center;gap:7px;border:1px solid #dedce8;background:#fff;border-radius:7px;padding:9px 12px;font-weight:700}.check{font-size:12px;color:#5c5770;white-space:nowrap}.summary-dots{margin-left:auto;display:flex;gap:12px;font-size:11px}.vehicle-table-wrap{overflow:auto;height:calc(100vh - 171px)}.vehicle-table{border-collapse:collapse;width:100%;min-width:930px;font-size:12px}.vehicle-table th{text-align:left;padding:13px 14px;color:#5e5971;font-size:11px;position:sticky;top:0;background:#fff;z-index:2}.vehicle-table td{padding:12px 14px;border-top:1px solid #ecebf1}.vehicle-table tr{cursor:pointer}.vehicle-table tr:hover,.vehicle-table tr.selected{background:#f5f0ff}.vehicle-table td:first-child{display:flex;align-items:center;gap:9px}.vehicle-table td small{display:block;color:#777287;margin-top:3px}.mini-bus{width:26px;height:26px;border-radius:6px;background:#f1edfa;display:grid;place-items:center}.mini-bus svg{width:15px}.line-chip{border:1px solid #8b5cf6;color:#6d28d9;border-radius:4px;padding:2px 5px;font-weight:800}.table-empty{text-align:center;padding:48px!important;color:#777287}.context-shield{position:fixed;inset:0;z-index:99}.context-menu{position:fixed;z-index:100;width:240px;background:#fff;border:1px solid #dedbe8;border-radius:9px;box-shadow:0 16px 45px #21183f33;padding:7px}.context-menu strong{display:block;padding:8px 10px;border-bottom:1px solid #eee;font-size:12px;color:#655d78}.context-menu button{border:0;background:#fff;width:100%;display:flex;align-items:center;gap:9px;padding:10px;border-radius:6px;text-align:left;color:#2f2944}.context-menu button:hover{background:#f2ecff;color:#6d28d9}.context-menu svg{width:17px}.toast{position:fixed;right:24px;bottom:24px;z-index:120;background:#241841;color:#fff;display:flex;align-items:center;gap:10px;padding:14px 16px;border-radius:10px;box-shadow:0 12px 35px #21183f55;max-width:420px}.toast>svg{color:#c4a7ff}.toast button{border:0;background:none;color:#fff}.toast button svg{width:16px}.feature-empty{height:calc(100vh - 102px);background:#fff;border:1px solid #e7e6ee;border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px;color:#56516a}.feature-empty>svg{width:55px;height:55px;color:#7c3aed}.feature-empty h2{margin:14px 0 4px}.feature-empty p{max-width:600px;font-size:17px}.feature-empty small{max-width:620px}.inline-error{background:#fff0f0;color:#b91c1c;border:1px solid #fecaca;padding:10px;border-radius:8px;margin-bottom:10px}.inline-error button{float:right}.boot{height:100vh;display:flex;align-items:center;justify-content:center;gap:15px;background:#1d0e42;color:#fff}.boot img{width:68px;height:68px;border-radius:16px}.boot.login{flex-direction:column;text-align:center}.boot.login p{max-width:460px}.boot.login button{border:0;background:#8b5cf6;color:#fff;padding:12px 18px;border-radius:7px;font-weight:700}.boot.login>svg{width:60px;height:60px}.mobile-shield{display:none}@media(max-width:1200px){.stats-row{grid-template-columns:repeat(3,1fr)}.stats-row article:nth-child(n+4){display:none}.split-layout{grid-template-columns:minmax(0,1.75fr) minmax(300px,1fr)}.top-actions>button:not(.icon-button){display:none}.summary-dots{display:none}.below-grid{grid-template-columns:1fr}.dashboard-split .below-grid .panel:last-child{display:none}}@media(max-width:900px){.lms-app{grid-template-columns:1fr}.sidebar{position:fixed;inset:0 auto 0 0;width:270px;transform:translate(-102%);transition:transform .2s}.sidebar.open{transform:translate(0)}.mobile-close{display:grid;position:absolute;right:10px;top:10px;border:0;background:#ffffff15;color:#fff;width:36px;height:36px;place-items:center}.mobile-shield{display:block;position:fixed;inset:0;background:#17102766;z-index:20}.menu-button{display:grid;place-items:center}.split-layout{display:block}.dashboard-split>.inspector{display:none}.vehicle-split .table-panel{height:calc(100vh - 102px)}.vehicle-split>.inspector{position:fixed;right:0;top:72px;bottom:0;width:min(420px,100%);z-index:15;box-shadow:-10px 0 30px #1e163033}.empty-inspector{display:none}.stats-row{grid-template-columns:repeat(3,1fr)}.content{padding:10px}.live-map{height:58vh}.table-toolbar .check{display:none}.vehicle-table-wrap{height:calc(100vh - 171px)}}@media(max-width:600px){.topbar{height:62px;flex-basis:62px;padding:0 10px}.page-title h1{font-size:18px}.top-actions>button{display:none!important}.stats-row{grid-template-columns:1fr 1fr;gap:8px}.stats-row article:nth-child(3){display:none}.stats-row article{padding:10px}.stat-icon{width:34px;height:34px}.stats-row b{font-size:18px}.dashboard-split{min-height:auto}.live-map{min-height:400px;height:calc(100vh - 205px)}.map-legend{gap:9px;padding:8px;font-size:10px}.below-grid{display:none}.table-toolbar{flex-wrap:wrap}.table-toolbar>label:first-child{min-width:0;flex:1}.table-toolbar>button{font-size:0}.table-toolbar>button svg{margin:0}.vehicle-split .table-panel{height:calc(100vh - 82px)}.vehicle-table-wrap{height:calc(100vh - 153px)}.vehicle-table{min-width:650px}.vehicle-table th:nth-child(3),.vehicle-table td:nth-child(3),.vehicle-table th:nth-child(7),.vehicle-table td:nth-child(7){display:none}.vehicle-split>.inspector{top:62px}.feature-empty{height:calc(100vh - 82px)}.toast{right:12px;left:12px;bottom:12px}.inspector>footer{position:sticky;bottom:0;background:#fff}.inspector>footer button{font-size:0}.inspector>footer svg{width:18px}}:root{--om-font: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--om-bg: #f3f6f4;--om-surface: #ffffff;--om-surface-soft: #f7f9f8;--om-surface-muted: #eef3f0;--om-text: #13231b;--om-muted: #627168;--om-border: #d8e1dc;--om-border-strong: #c7d2cc;--om-accent: #0f8f43;--om-accent-strong: #087237;--om-accent-soft: #edf8f1;--om-danger: #d71943;--om-danger-soft: #fff0f3;--om-warning: #a46800;--om-warning-soft: #fff8e6;--om-radius-xs: 3px;--om-radius-sm: 5px;--om-radius-md: 7px;--om-control-h: 38px;--om-shadow-float: 0 16px 44px rgba(9, 29, 19, .14)}html,body,#root{margin:0;min-height:100%;font-family:var(--om-font)!important;background:var(--om-bg);color:var(--om-text)}*{box-sizing:border-box}button,input,select,textarea{font:inherit}button{cursor:pointer}.input,input[type=text],input[type=email],input[type=password],input[type=number],input[type=date],select,textarea,.soft-select>button,.cell-input{min-height:var(--om-control-h);border:1px solid var(--om-border);border-radius:var(--om-radius-sm);background:var(--om-surface);color:var(--om-text);outline:none;box-shadow:none}.input,input[type=text],input[type=email],input[type=password],input[type=number],input[type=date],select,.cell-input{height:var(--om-control-h);padding:0 11px}textarea{padding:10px 11px;resize:vertical}.input:focus,input:focus,select:focus,textarea:focus,.cell-input:focus,.soft-select>button:focus-visible{border-color:var(--om-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--om-accent) 12%,transparent)}input:disabled,select:disabled,textarea:disabled,.input:disabled{color:#66746c;background:#f3f6f4;cursor:default}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,input:-webkit-autofill:active{-webkit-text-fill-color:var(--om-text)!important;caret-color:var(--om-text)!important;-webkit-box-shadow:0 0 0 1000px var(--om-surface) inset!important;box-shadow:0 0 0 1000px var(--om-surface) inset!important;transition:background-color 9999s ease-out 0s}.btn,button.btn,.mini,.icon-btn{min-height:var(--om-control-h);height:var(--om-control-h);display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--om-border);border-radius:var(--om-radius-sm);background:var(--om-surface);color:var(--om-text);box-shadow:none;font-weight:750;line-height:1;white-space:nowrap}.btn{padding:0 14px}.btn:not(.ghost):not(.secondary):not(.danger){color:#fff;border-color:var(--om-accent);background:var(--om-accent)}.btn:not(.ghost):not(.secondary):not(.danger):hover{background:var(--om-accent-strong)}.btn.ghost,.btn.secondary{background:var(--om-surface);color:var(--om-text)}.btn.ghost:hover,.btn.secondary:hover{border-color:var(--om-border-strong);background:var(--om-surface-soft)}.btn.danger,.mini.danger{color:#fff;border-color:var(--om-danger);background:var(--om-danger)}.mini,.icon-btn{width:var(--om-control-h);padding:0}.panel,.card,.ref-panel,.modal-card,.om-dialog-card{border:1px solid var(--om-border);border-radius:var(--om-radius-md);background:var(--om-surface);box-shadow:none}.no-pad{padding:0!important}.tabs,.subtabs,.detail-tabs,.compact-tabs{display:flex;align-items:stretch;gap:18px;min-height:42px;padding:0 12px;border-bottom:1px solid var(--om-border);background:var(--om-surface);overflow-x:auto;overflow-y:hidden}.tabs button,.subtabs button,.detail-tabs button,.compact-tabs button{min-height:42px;padding:0 2px;border:0;border-radius:0;background:transparent;color:var(--om-muted);box-shadow:inset 0 -2px 0 transparent;font-weight:760;white-space:nowrap}.tabs button.active,.subtabs button.active,.detail-tabs button.active,.compact-tabs button.active{color:var(--om-accent);box-shadow:inset 0 -3px 0 var(--om-accent)}.table,.ref-table{width:100%;border-collapse:collapse;background:var(--om-surface)}.table th,.table td,.ref-table th,.ref-table td{padding:8px 10px;border-bottom:1px solid #e8eeea;text-align:left;vertical-align:middle}.table th,.ref-table th{color:#607067;background:#f7f9f8;font-weight:790}.table tbody tr:hover td,.ref-table tbody tr:hover td{background:#f8fbf9}.context-menu,.rightclick-menu,.user-pop,.soft-select-menu,.search-pop{border:1px solid var(--om-border-strong);border-radius:var(--om-radius-sm);background:var(--om-surface);box-shadow:var(--om-shadow-float)}.context-menu button,.rightclick-menu button,.user-pop button,.soft-select-menu button,.search-pop button{border-radius:var(--om-radius-xs)}.status-dot,.work-dot,.lock-dot{display:inline-block;width:9px;height:9px;flex:0 0 9px;border-radius:50%;background:#19a95a}.work-dot.readonly,.lock-dot.locked{background:#d99a18}.work-dot.pending{background:#94a39a}.leaflet-container{font-family:var(--om-font)!important;background:#e9f0ec!important}.leaflet-control-zoom{overflow:hidden;border:1px solid var(--om-border)!important;border-radius:var(--om-radius-sm)!important;background:#fff!important;box-shadow:0 8px 24px #0b22161a!important}.leaflet-control-zoom a{width:36px!important;height:36px!important;line-height:34px!important;border:0!important;border-bottom:1px solid var(--om-border)!important;color:var(--om-text)!important;font-weight:800!important}.leaflet-control-zoom a:last-child{border-bottom:0!important}*{scrollbar-width:thin;scrollbar-color:#b9c7bf transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{border:3px solid transparent;border-radius:10px;background:#b9c7bf;background-clip:content-box}html[data-theme=dark]{--om-bg: #08111d;--om-surface: #111d2b;--om-surface-soft: #162536;--om-surface-muted: #1b2b3d;--om-text: #f2f7f4;--om-muted: #bdc9c2;--om-border: #344558;--om-border-strong: #4a5e73;--om-accent-soft: #102d20;--om-danger-soft: #351522;color-scheme:dark}html[data-theme=dark] input,html[data-theme=dark] textarea,html[data-theme=dark] select,html[data-theme=dark] .input,html[data-theme=dark] .cell-input,html[data-theme=dark] .soft-select>button{color:#f4f8f5!important;border-color:var(--om-border)!important;background:#132131!important}html[data-theme=dark] input::placeholder,html[data-theme=dark] textarea::placeholder{color:#9fb0a7!important;opacity:1!important}html[data-theme=dark] input:disabled,html[data-theme=dark] textarea:disabled,html[data-theme=dark] select:disabled,html[data-theme=dark] .input:disabled{color:#c2cec7!important;background:#182637!important;opacity:1!important}html[data-theme=dark] .table,html[data-theme=dark] .ref-table,html[data-theme=dark] .table th,html[data-theme=dark] .ref-table th,html[data-theme=dark] .table td,html[data-theme=dark] .ref-table td{color:var(--om-text)!important;border-color:#293b4d!important;background:var(--om-surface)!important}html[data-theme=dark] .table th,html[data-theme=dark] .ref-table th{color:#cbd6d0!important;background:#172536!important}html[data-theme=dark] .table tbody tr:hover td,html[data-theme=dark] .ref-table tbody tr:hover td{background:#182a3a!important}html[data-theme=dark] input:-webkit-autofill,html[data-theme=dark] input:-webkit-autofill:hover,html[data-theme=dark] input:-webkit-autofill:focus{-webkit-text-fill-color:#f4f8f5!important;caret-color:#f4f8f5!important;-webkit-box-shadow:0 0 0 1000px #132131 inset!important;box-shadow:0 0 0 1000px #132131 inset!important}.om-toast-stack{position:fixed;right:18px;bottom:18px;z-index:50000;display:grid;gap:8px;width:min(390px,calc(100vw - 36px));pointer-events:none}.om-toast{min-height:58px;display:grid;grid-template-columns:30px minmax(0,1fr) 28px;align-items:center;gap:10px;padding:10px 10px 10px 12px;border:1px solid var(--om-border-strong);border-left:4px solid var(--om-accent);border-radius:var(--om-radius-sm);background:var(--om-surface);color:var(--om-text);box-shadow:var(--om-shadow-float);pointer-events:auto;animation:omToastIn .16s ease-out}.om-toast.info{border-left-color:#2563eb}.om-toast.error{border-left-color:var(--om-danger)}.om-toast-icon{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;color:#fff;background:var(--om-accent)}.om-toast.info .om-toast-icon{background:#2563eb}.om-toast.error .om-toast-icon{background:var(--om-danger)}.om-toast-copy{min-width:0;display:grid;gap:2px}.om-toast-copy b{color:var(--om-text);font-size:13px;line-height:1.25}.om-toast-copy small{color:var(--om-muted);font-size:11.5px;line-height:1.35}.om-toast>button{width:28px;height:28px;display:grid;place-items:center;padding:0;border:0;border-radius:var(--om-radius-xs);background:transparent;color:var(--om-muted)}.om-toast>button:hover{background:var(--om-surface-soft);color:var(--om-text)}@keyframes omToastIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.user-pop button,.suite-user-pop button{color:var(--om-text)!important;background:var(--om-surface)!important}.user-pop button:hover,.user-pop button:focus-visible,.suite-user-pop button:hover,.suite-user-pop button:focus-visible{color:var(--om-text)!important;background:var(--om-surface-soft)!important;outline:0!important}html[data-theme=dark] .user-pop,html[data-theme=dark] .suite-user-pop{color:#f5f8f6!important;border-color:#43586d!important;background:#111d2b!important}html[data-theme=dark] .user-pop button,html[data-theme=dark] .suite-user-pop button{color:#f5f8f6!important;background:#111d2b!important}html[data-theme=dark] .user-pop button:hover,html[data-theme=dark] .user-pop button:focus-visible,html[data-theme=dark] .suite-user-pop button:hover,html[data-theme=dark] .suite-user-pop button:focus-visible{color:#fff!important;background:#24384c!important}html[data-theme=dark] .user-pop small,html[data-theme=dark] .suite-user-pop small{color:#aebdc5!important}html[data-theme=dark] .om-toast{border-color:#43586d;background:#111d2b;color:#f5f8f6}html[data-theme=dark] .om-toast-copy b{color:#fff}html[data-theme=dark] .om-toast-copy small{color:#b8c6ce}html[data-theme=dark] .om-toast>button:hover{background:#24384c;color:#fff}.om-assistant{position:fixed;right:18px;bottom:18px;z-index:10050;font-family:inherit}.om-assistant-launch{height:38px;padding:0 13px;border:1px solid var(--om-border, #cfd8d3);border-radius:8px;background:var(--om-surface, #fff);color:var(--om-text, #10241c);box-shadow:0 8px 24px #0620161f;display:flex;align-items:center;gap:7px;cursor:pointer}.om-assistant-launch span{color:#139447}.om-assistant-panel{position:absolute;right:0;bottom:48px;width:360px;height:min(500px,70vh);display:grid;grid-template-rows:auto 1fr auto;background:var(--om-surface, #fff);color:var(--om-text, #10241c);border:1px solid var(--om-border, #cfd8d3);border-radius:8px;box-shadow:0 18px 50px #06201633;overflow:hidden}.om-assistant-panel header{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border-bottom:1px solid var(--om-border, #dce4e0)}.om-assistant-panel header div{display:grid}.om-assistant-panel header small{color:var(--om-text-muted, #687b73);font-size:11px}.om-assistant-panel header button{border:0;background:transparent;color:inherit;font-size:22px;cursor:pointer}.om-assistant-messages{overflow:auto;padding:12px;display:flex;flex-direction:column;gap:8px}.om-assistant-welcome{font-size:12px;color:var(--om-text-muted, #687b73);padding:8px}.om-assistant-msg{max-width:88%;padding:8px 10px;border-radius:6px;font-size:12px;line-height:1.45;white-space:pre-wrap}.om-assistant-msg.user{align-self:flex-end;background:#e7f6ee}.om-assistant-msg.assistant{align-self:flex-start;background:var(--om-surface-alt, #f3f6f5);border:1px solid var(--om-border, #dce4e0)}.om-assistant-panel footer{display:grid;grid-template-columns:1fr 38px;gap:6px;padding:10px;border-top:1px solid var(--om-border, #dce4e0)}.om-assistant-panel footer input{height:36px;border:1px solid var(--om-border, #cfd8d3);background:var(--om-input-bg, #fff);color:var(--om-text, #10241c);border-radius:5px;padding:0 10px}.om-assistant-panel footer button{border:0;border-radius:5px;background:#139447;color:#fff;cursor:pointer}@media(max-width:700px){.om-assistant-panel{width:min(360px,calc(100vw - 24px));right:-6px}}[data-theme=dark] .om-assistant-msg.user{background:#123e2c;color:#f2fff8}.user-language{display:grid}.user-language>button{display:flex!important;justify-content:space-between!important;align-items:center!important}.user-language>button small{font-size:10px;opacity:.7}.user-language-options{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px 8px 8px}.user-language-options button{min-height:30px!important;border:1px solid var(--om-border, #dce4e0)!important;border-radius:4px!important;background:transparent!important}.user-language-options button.active{border-color:#139447!important;color:#139447!important;background:#13944712!important}.login-language{position:fixed;right:18px;top:16px;z-index:40;display:flex;padding:2px;border:1px solid var(--om-border, #d8e0dc);background:var(--om-surface, #fff);border-radius:6px;box-shadow:0 1px 4px #0f172a14}.login-language button,.om-language-inline button{min-width:38px;height:30px;border:0;background:transparent;color:var(--om-text, #102015);font:600 12px/1 inherit;cursor:pointer;border-radius:4px}.login-language button.active,.om-language-inline button.active{background:var(--om-accent, #159447);color:#fff}.om-language-inline{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px 8px 8px}[data-theme=dark] .login-language{background:#0e1a28;border-color:#304256}[data-theme=dark] .login-language button,[data-theme=dark] .om-language-inline button{color:#eaf1f7}.om-assistant-panel{width:390px}.om-assistant-panel header small{font-size:12px}.om-assistant-welcome{font-size:13px;line-height:1.5}.om-assistant-msg{font-size:13.5px;line-height:1.5;padding:9px 11px}.om-assistant-panel footer input{font-size:13.5px}.module-user-menu{--module-menu-text: #172033;--module-menu-muted: #5f6c7c;--module-menu-surface: #ffffff;--module-menu-soft: #eef3f7;--module-menu-line: #cfd9e2;position:relative;z-index:90}.module-user-trigger{min-height:44px;display:flex;align-items:center;gap:9px;padding:4px 7px 4px 4px;color:inherit;background:transparent;border:1px solid transparent;border-radius:10px;cursor:pointer}.module-user-trigger:hover,.module-user-trigger[aria-expanded=true]{background:var(--module-menu-soft);border-color:var(--module-menu-line)}.module-user-trigger>span,.module-user-popover>header>span{width:36px;height:36px;flex:none;display:grid;place-items:center;color:#fff;background:var(--module-accent, #6d28d9);border-radius:10px;font-size:12px;font-weight:900;box-shadow:0 5px 15px color-mix(in srgb,var(--module-accent, #6d28d9) 26%,transparent)}.module-user-trigger>div{max-width:150px;display:grid;gap:2px;text-align:left}.module-user-trigger b,.module-user-trigger small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.module-user-trigger b{color:var(--module-menu-text);font-size:12px}.module-user-trigger small{color:var(--module-menu-muted);font-size:10px}.module-user-trigger>svg{width:15px}.module-user-popover{position:absolute;top:calc(100% + 9px);right:0;width:310px;color:var(--module-menu-text);background:var(--module-menu-surface);border:1px solid var(--module-menu-line);border-radius:13px;box-shadow:0 22px 58px #0f172a38;overflow:hidden;animation:module-menu-in .15s ease-out}@keyframes module-menu-in{0%{opacity:0;transform:translateY(-5px)}}.module-user-popover>header{display:flex;align-items:center;gap:11px;padding:15px;border-bottom:1px solid var(--module-menu-line);background:linear-gradient(135deg,color-mix(in srgb,var(--module-accent, #6d28d9) 10%,var(--module-menu-surface)),var(--module-menu-surface))}.module-user-popover>header>div{min-width:0;display:grid;gap:3px}.module-user-popover>header b,.module-user-popover>header small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.module-user-popover>header small{color:var(--module-menu-muted)}.module-language-row{min-height:56px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px;border-bottom:1px solid var(--module-menu-line)}.module-language-row>span{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:800}.module-language-row>span svg{width:17px}.module-language-options{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:3px;background:var(--module-menu-soft);border:1px solid var(--module-menu-line);border-radius:9px}.module-language-options button{min-width:45px;min-height:31px;padding:0 9px;color:var(--module-menu-text);background:transparent;border:0;border-radius:6px;font-size:11px;font-weight:900;cursor:pointer}.module-language-options button.active{color:#fff;background:var(--module-accent, #6d28d9)}.module-language-options button:disabled{opacity:.6;cursor:wait}.module-theme-toggle{min-height:34px!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;padding:0 10px!important;color:var(--module-menu-text)!important;background:var(--module-menu-soft)!important;border:1px solid var(--module-menu-line)!important;border-radius:8px!important;font-size:11px!important;font-weight:800!important;cursor:pointer!important}.module-theme-toggle svg{width:16px!important;height:16px!important}.module-theme-toggle.compact{width:38px!important;min-width:38px!important;padding:0!important}.module-user-popover>section{display:grid;padding:8px;border-bottom:1px solid var(--module-menu-line)}.module-user-popover>section>small{padding:4px 7px 7px;color:var(--module-menu-muted);font-size:9px;font-weight:900;letter-spacing:.08em}.module-user-popover>section>button,.module-user-popover>footer>button{min-height:38px;display:flex;align-items:center;gap:8px;padding:0 8px;color:var(--module-menu-text);background:transparent;border:0;border-radius:7px;text-align:left;font-weight:700;cursor:pointer}.module-user-popover>section>button:hover,.module-user-popover>footer>button:hover{background:var(--module-menu-soft)}.module-user-popover button svg{width:17px}.module-user-popover>section>button span{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.module-user-popover>section>button span+svg{color:var(--module-accent, #6d28d9);stroke-width:3}.module-user-error{margin:8px 10px 0;padding:8px;color:#b42318;background:#fff1ef;border-radius:7px;font-size:11px}.module-user-popover>footer{display:grid;grid-template-columns:1fr 1fr;gap:5px;padding:8px}.module-user-popover>footer.single{grid-template-columns:1fr}.module-user-popover>footer>button:last-child{color:#b42318}html[data-theme=dark] .module-user-menu{--module-menu-text: #f5f8f6;--module-menu-muted: #b9c7d1;--module-menu-surface: #111d2b;--module-menu-soft: #1c2d40;--module-menu-line: #43586d}html[data-theme=dark] .module-user-trigger:hover,html[data-theme=dark] .module-user-trigger[aria-expanded=true]{background:var(--module-menu-soft)}html[data-theme=dark] .module-user-error{color:#ffb4ac;background:#431d1d}@media(max-width:900px){.module-user-trigger>div{display:none}.module-user-popover{position:fixed;top:66px;right:12px;width:min(310px,calc(100vw - 24px))}}input[type=checkbox]:not([role=switch]){appearance:none;-webkit-appearance:none;width:18px;min-width:18px;height:18px;margin:0;display:inline-grid;place-content:center;border:1.5px solid var(--om-border-strong, #91a39a);border-radius:4px;background:var(--om-surface, #fff);box-shadow:inset 0 1px #ffffff80;cursor:pointer;vertical-align:middle}input[type=checkbox]:not([role=switch]):before{width:9px;height:5px;content:"";transform:rotate(-45deg) scale(0);transform-origin:center;border-left:2px solid #fff;border-bottom:2px solid #fff;transition:transform .1s ease-out}input[type=checkbox]:not([role=switch]):checked{border-color:var(--module-accent, var(--om-accent, #159447));background:var(--module-accent, var(--om-accent, #159447))}input[type=checkbox]:not([role=switch]):checked:before{transform:rotate(-45deg) scale(1)}input[type=checkbox]:not([role=switch]):focus-visible{outline:3px solid color-mix(in srgb,var(--module-accent, var(--om-accent, #159447)) 25%,transparent);outline-offset:2px}input[type=checkbox]:not([role=switch]):disabled{opacity:.5;cursor:not-allowed}.context-menu,.rightclick-menu,.ops-context,.smp-context{max-width:calc(100vw - 16px)!important;max-height:calc(100dvh - 16px)!important;overflow:auto!important;border-radius:10px!important}.context-menu button,.rightclick-menu button,.ops-context button,.smp-context button{height:auto!important;min-height:40px!important;align-items:center!important;gap:9px!important;padding:8px 10px!important;line-height:1.25!important;text-align:left!important;white-space:normal!important}.context-menu>b,.context-menu>strong,.rightclick-menu>b,.ops-context>b,.smp-context>b{white-space:normal!important;line-height:1.3!important}@media(min-width:901px){.module-user-trigger>div{min-width:88px}}.ops-view{min-width:0;display:grid;gap:16px;padding:18px;color:var(--lms-text,#172033)}.ops-page-head{min-height:76px;display:flex;align-items:center;gap:14px;padding:16px 18px;background:var(--lms-surface,#fff);border:1px solid var(--lms-line,#e0e5ed);border-radius:12px;box-shadow:0 4px 18px #2217480d}.ops-page-head>span{width:44px;height:44px;display:grid;place-items:center;color:#6d28d9;background:#f0e9ff;border-radius:11px}.ops-page-head>span svg{width:23px}.ops-page-head>div{flex:1}.ops-page-head h2,.ops-page-head p{margin:0}.ops-page-head h2{font-size:21px}.ops-page-head p{margin-top:5px;color:var(--lms-muted,#6f7788);font-size:13px}.ops-primary,.measure-form button,.announcement-compose button{min-height:40px;display:flex;align-items:center;justify-content:center;gap:8px;padding:0 14px;color:#fff;background:#6d28d9;border:0;border-radius:8px;font-weight:800;cursor:pointer}.ops-primary svg,.measure-form button svg,.announcement-compose button svg{width:17px}.ops-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.ops-toolbar label,.resource-search{height:42px;width:min(480px,100%);display:flex;align-items:center;gap:8px;padding:0 11px;background:var(--lms-surface,#fff);border:1px solid var(--lms-line,#dde3ec);border-radius:8px}.ops-toolbar svg{width:18px;color:var(--lms-muted,#6f7788)}.ops-toolbar input{flex:1;min-width:0;border:0;outline:0;background:transparent;color:var(--lms-text,#172033)}.ops-toolbar>span{color:var(--lms-muted,#6f7788);font-size:12px;font-weight:800}.ops-master-detail{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:14px}.ops-list,.ops-summary,.connection-grid>button,.measure-board,.announcement-compose,.announcement-history,.traffic-overview>section,.line-situation{background:var(--lms-surface,#fff);border:1px solid var(--lms-line,#dfe5ed);border-radius:11px;overflow:hidden}.ops-list>button{width:100%;min-height:66px;display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:11px;padding:9px 13px;color:var(--lms-text,#172033);background:transparent;border:0;border-bottom:1px solid var(--lms-line,#e3e7ee);text-align:left;cursor:pointer}.ops-list>button:hover{background:var(--lms-hover,#f7f5fc)}.ops-event-icon{width:34px;height:34px;display:grid;place-items:center;color:#7c3aed;background:#ede9fe;border-radius:9px}.ops-event-icon.alarm,.ops-event-icon.critical{color:#dc2626;background:#fee2e2}.ops-event-icon.disruption,.ops-event-icon.warning{color:#ea580c;background:#ffedd5}.ops-event-icon svg{width:18px}.ops-list>button>div{min-width:0;display:grid;gap:4px}.ops-list>button b,.ops-list>button small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ops-list>button small{color:var(--lms-muted,#6f7788)}.ops-list>button em{color:#6d28d9;font-size:10px;font-style:normal;font-weight:900;text-transform:uppercase}.ops-summary{padding:18px}.ops-summary h3{margin:0 0 15px}.ops-summary>div{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.ops-summary>div span{display:grid;gap:4px;padding:12px 8px;background:var(--lms-soft,#f5f3fb);border-radius:8px;text-align:center;font-size:10px}.ops-summary>div b{font-size:22px}.ops-summary p{color:var(--lms-muted,#6f7788);line-height:1.55}.ops-empty{min-height:170px;display:grid;place-items:center;align-content:center;gap:8px;color:var(--lms-muted,#6f7788)}.ops-empty svg{width:34px;height:34px;color:#8b5cf6}.connection-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.connection-stats>span{min-height:76px;display:grid;grid-template-columns:42px auto;grid-template-rows:auto auto;align-items:center;column-gap:10px;padding:12px 16px;background:var(--lms-surface,#fff);border:1px solid var(--lms-line,#dfe5ed);border-radius:10px}.connection-stats svg{grid-row:1/3;color:#7c3aed}.connection-stats b{font-size:23px}.connection-stats span{color:var(--lms-muted,#6f7788);font-size:11px}.connection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.connection-grid>button{min-height:150px;padding:14px;color:var(--lms-text,#172033);text-align:left;cursor:pointer}.connection-grid>button.danger{border-color:#fca5a5;box-shadow:inset 0 3px #ef4444}.connection-grid>button.warning{border-color:#fdba74;box-shadow:inset 0 3px #f97316}.connection-grid>button.safe{box-shadow:inset 0 3px #22c55e}.connection-grid header{display:flex;align-items:center;gap:7px;color:#6d28d9;font-weight:900}.connection-grid header svg{width:17px}.connection-grid>button>b{display:block;margin-top:16px;font-size:16px}.connection-grid>button>small{color:var(--lms-muted,#6f7788)}.connection-grid footer{display:flex;align-items:center;justify-content:space-between;margin-top:15px;padding-top:10px;border-top:1px solid var(--lms-line,#e3e7ee)}.measure-form{display:grid;grid-template-columns:minmax(220px,2fr) repeat(3,minmax(140px,1fr)) auto;gap:10px;padding:14px;background:var(--lms-surface,#fff);border:1px solid var(--lms-line,#dfe5ed);border-radius:10px}.measure-form label{display:grid;gap:5px;color:var(--lms-muted,#6f7788);font-size:10px;font-weight:800}.measure-form input,.measure-form select,.announcement-compose select,.announcement-compose textarea{min-height:39px;padding:0 10px;color:var(--lms-text,#172033);background:var(--lms-input,#fff);border:1px solid var(--lms-line,#d6dde7);border-radius:7px;font:600 13px/1.3 inherit}.measure-form .wide{grid-column:1/-2}.measure-board article{min-height:80px;display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 15px;border-bottom:1px solid var(--lms-line,#e2e7ee)}.measure-board article:last-child{border-bottom:0}.measure-priority{width:38px;height:38px;display:grid;place-items:center;color:#f97316;background:#ffedd5;border-radius:9px}.measure-priority.p3{color:#dc2626;background:#fee2e2}.measure-priority svg{width:20px}.measure-board h3,.measure-board p{margin:0}.measure-board p{margin-top:4px;color:var(--lms-muted,#6f7788)}.measure-board small{display:block;margin-top:5px;color:var(--lms-muted,#6f7788)}.measure-board em{color:#6d28d9;font-size:10px;font-style:normal;font-weight:900}.announcement-layout{display:grid;grid-template-columns:minmax(300px,1fr) minmax(0,2fr);gap:14px}.announcement-compose{display:grid;align-content:start;gap:11px;padding:18px}.announcement-compose>span{width:46px;height:46px;display:grid;place-items:center;color:#7c3aed;background:#ede9fe;border-radius:12px}.announcement-compose h3{margin:0}.announcement-compose label{display:grid;gap:5px;color:var(--lms-muted,#6f7788);font-size:11px;font-weight:800}.announcement-compose textarea{min-height:130px;padding:10px;resize:vertical}.announcement-history>header,.line-situation>header{min-height:52px;display:flex;align-items:center;justify-content:space-between;padding:0 15px;border-bottom:1px solid var(--lms-line,#e2e7ee)}.announcement-history h3,.line-situation h3{margin:0}.announcement-history article{min-height:66px;display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 14px;border-bottom:1px solid var(--lms-line,#e2e7ee)}.announcement-history article>svg{color:#7c3aed}.announcement-history article div{min-width:0;display:grid;gap:4px}.announcement-history article b,.announcement-history article small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.announcement-history article small{color:var(--lms-muted,#6f7788)}.announcement-history article em{color:#16a34a;font-size:10px;font-style:normal}.traffic-overview{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.traffic-overview>section{padding:15px}.traffic-overview header{display:flex;align-items:center;gap:12px}.traffic-overview header>svg{width:30px;height:30px;color:#7c3aed}.traffic-overview header div{display:grid}.traffic-overview header b{font-size:23px}.traffic-overview p{color:var(--lms-muted,#6f7788)}.line-situation>button{width:100%;min-height:64px;display:grid;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:12px;padding:9px 15px;color:var(--lms-text,#172033);background:transparent;border:0;border-bottom:1px solid var(--lms-line,#e2e7ee);text-align:left;cursor:pointer}.line-situation>button:hover{background:var(--lms-hover,#f7f5fc)}.line-number{width:42px;height:34px;display:grid;place-items:center;color:#fff;background:#6d28d9;border-radius:7px;font-weight:900}.line-situation>button>div{display:grid;gap:4px}.line-situation small{color:var(--lms-muted,#6f7788)}.line-situation strong.danger{color:#dc2626}.line-situation strong.warning{color:#ea580c}.line-situation strong.safe{color:#16a34a}@media(max-width:1100px){.connection-grid,.measure-form{grid-template-columns:repeat(2,minmax(0,1fr))}.measure-form .wide{grid-column:1/-1}.announcement-layout,.ops-master-detail{grid-template-columns:1fr}}@media(max-width:720px){.ops-view{padding:12px}.ops-page-head{align-items:flex-start;flex-wrap:wrap}.ops-page-head>div{min-width:calc(100% - 60px)}.connection-grid,.connection-stats,.traffic-overview,.measure-form{grid-template-columns:1fr}.measure-form .wide{grid-column:auto}}:root{--module-accent:#6d28d9;--lms-text:#17142b;--lms-muted:#6f6a7f;--lms-surface:#fff;--lms-soft:#f5f3fb;--lms-hover:#f5f0ff;--lms-line:#e3e2eb;--lms-input:#fff}.top-actions>.header-control{position:relative}.top-actions>.header-control>button{display:flex;align-items:center;gap:7px;padding:9px 10px;color:#302c50;background:transparent;border:0;font-weight:700}.top-actions>button.active,.top-actions>.header-control>button.active{color:#6d28d9;background:#f1eaff;border-radius:8px}.header-popover{position:absolute;z-index:80;top:calc(100% + 10px);right:0;width:245px;display:grid;gap:3px;padding:8px;color:var(--lms-text);background:var(--lms-surface);border:1px solid var(--lms-line);border-radius:11px;box-shadow:0 20px 50px #1f163633}.header-popover>b{padding:7px 8px;font-size:12px}.header-popover>button{min-height:38px;display:flex;align-items:center;gap:9px;padding:0 8px;color:var(--lms-text);background:transparent;border:0;border-radius:7px;text-align:left;font-weight:700}.header-popover>button:hover,.header-popover>button.active{color:#6d28d9;background:var(--lms-hover)}.header-popover>button>span{width:20px;color:#6d28d9;font-weight:900}.header-popover>button>svg{width:17px}.header-popover>button.reset{margin-top:5px;border-top:1px solid var(--lms-line);border-radius:0;color:#6f6a7f}.help-popover{width:300px;padding:14px}.help-popover p{margin:4px 0 0;color:var(--lms-muted);font-size:12px;line-height:1.55}.lms-app .module-user-trigger{--module-accent:#6d28d9}html[data-theme=dark]{color-scheme:dark;--lms-text:#f2eff9;--lms-muted:#aaa3ba;--lms-surface:#171520;--lms-soft:#211d2d;--lms-hover:#272137;--lms-line:#343040;--lms-input:#211e2c;--surface:#171520;--surface-alt:#211d2d;--line:#343040;--text:#f2eff9;--muted:#aaa3ba;background:#100e18;color:#f2eff9}html[data-theme=dark] body,html[data-theme=dark] .workspace,html[data-theme=dark] .content{background:#100e18;color:var(--lms-text)}html[data-theme=dark] .topbar{background:#171520;border-color:#343040}html[data-theme=dark] .page-title h1,html[data-theme=dark] .top-actions>button,html[data-theme=dark] .top-actions>.header-control>button,html[data-theme=dark] .icon-button{color:#f2eff9}html[data-theme=dark] .stats-row article,html[data-theme=dark] .panel,html[data-theme=dark] .table-panel,html[data-theme=dark] .inspector,html[data-theme=dark] .feature-empty,html[data-theme=dark] .context-menu{background:#171520;border-color:#343040;color:#f2eff9}html[data-theme=dark] .stats-row small,html[data-theme=dark] .stats-row em,html[data-theme=dark] .vehicle-heading small,html[data-theme=dark] .detail-card dt,html[data-theme=dark] .timeline p,html[data-theme=dark] .empty-copy{color:#aaa3ba}html[data-theme=dark] .below-grid .panel,html[data-theme=dark] .measure-row,html[data-theme=dark] .inspector-tabs button,html[data-theme=dark] .inspector>footer button,html[data-theme=dark] .vehicle-table th,html[data-theme=dark] .context-menu button{background:#171520;color:#eee9f8;border-color:#343040}html[data-theme=dark] .measure-row:hover,html[data-theme=dark] .context-menu button:hover,html[data-theme=dark] .vehicle-table tr:hover,html[data-theme=dark] .vehicle-table tr.selected{background:#272137}html[data-theme=dark] .message-row,html[data-theme=dark] .vehicle-heading,html[data-theme=dark] .inspector-tabs,html[data-theme=dark] .detail-card,html[data-theme=dark] .inspector>footer,html[data-theme=dark] .vehicle-table td,html[data-theme=dark] .table-toolbar{border-color:#343040}html[data-theme=dark] .detail-card,html[data-theme=dark] .table-toolbar>label:first-child,html[data-theme=dark] .table-toolbar>button{background:#211d2d;border-color:#403a4d;color:#eee9f8}html[data-theme=dark] input,html[data-theme=dark] select,html[data-theme=dark] textarea{color:#f2eff9;background:#211d2d}html[data-theme=dark] .map-controls,html[data-theme=dark] .map-controls button,html[data-theme=dark] .map-legend,html[data-theme=dark] .map-marker{background:#211d2d;color:#f2eff9;border-color:#403a4d}html[data-theme=dark] .live-map{filter:brightness(.72) saturate(.82);border-color:#343040}html[data-theme=dark] .toast{background:#2d2342}@media(max-width:1200px){.top-actions>.header-control{display:none}.top-actions>.module-theme-toggle{display:flex!important}.module-user-menu{display:block}}@media(max-width:600px){.top-actions>.module-theme-toggle{display:none!important}}
