*{box-sizing:border-box}body{color:#141414;background:#f5f6f7;margin:0;font-family:Inter,Segoe UI,Arial,sans-serif}button,input,select{font:inherit}button{cursor:pointer}.login-page{background:#ededed;place-items:center;min-height:100vh;padding:24px;display:grid}.login-panel{background:#fff;border:1px solid #d4d4d4;border-radius:8px;gap:18px;width:min(420px,100%);padding:28px;display:grid}.brand-row,.sidebar-brand,.filter-row,.search-box{align-items:center;gap:12px;display:flex}.brand-row h1{letter-spacing:0;margin:0;font-size:28px}.brand-row span,.sidebar-brand span{color:#6a6a6a;font-size:14px}label{color:#4a4a4a;gap:8px;font-size:14px;display:grid}input,select{color:#141414;background:#fff;border:1px solid #cfcfcf;border-radius:6px;min-height:40px;padding:0 12px}.primary-button,.icon-button,.logout-button,.nav-button{color:#141414;background:#fff;border:1px solid #1f1f1f;border-radius:6px;min-height:40px}.primary-button{color:#fff;background:#141414;justify-content:center;align-items:center;gap:10px;display:inline-flex}.secondary-button{color:#141414;background:#fff;border:1px solid #1f1f1f;border-radius:6px;justify-content:center;align-items:center;gap:10px;min-height:40px;display:inline-flex}.primary-button:disabled,.secondary-button:disabled{opacity:.55;cursor:wait}.icon-button{flex:0 0 40px;place-items:center;width:40px;display:inline-grid}.form-error,.notice{color:#8a1f1d;background:#fff7f7;border:1px solid #b94a48;border-radius:6px;margin:0;padding:10px 12px}.app-shell{grid-template-columns:248px 1fr;min-height:100vh;display:grid}.sidebar{background:#fff;border-right:1px solid #d8d8d8;flex-direction:column;gap:18px;padding:20px 16px;display:flex}.sidebar-brand{min-height:48px}.sidebar-brand strong{font-size:18px;display:block}nav{gap:16px;display:grid}.nav-group{gap:6px;display:grid}.nav-group-title{color:#77808d;letter-spacing:.08em;text-transform:uppercase;padding:0 10px;font-size:11px;font-weight:800}.nav-button{color:#243248;border-color:#0000;justify-content:flex-start;align-items:center;gap:10px;width:100%;padding:0 12px;font-weight:600;display:flex}.nav-button svg{width:18px}.nav-button.active{color:#0f4c96;background:#eef5ff;border-color:#c7d8f5}.content{min-width:0;padding:18px 24px 30px}.topbar{justify-content:flex-end;align-items:center;gap:18px;min-height:44px;margin-bottom:10px;display:flex}.page-eyebrow{color:#6f7a89;font-size:13px;font-weight:700}.user-menu{background:#fff;border:1px solid #dde3ec;border-radius:8px;align-items:center;gap:8px;padding:6px 8px 6px 10px;display:inline-flex}.user-menu div{text-align:right;gap:2px;display:grid}.user-menu span{color:#0f4c96;font-size:11px;font-weight:700}.settings-tabs{flex-wrap:wrap;gap:8px;margin-bottom:18px;display:flex}.settings-tabs .secondary-button.active{color:#fff;background:#141414}.release-card{background:#fff;border:1px solid #e1e5ec;border-radius:8px;flex-wrap:wrap;align-items:center;gap:12px;padding:16px;display:flex}.release-grid{gap:14px;display:grid}.release-info{flex:1;gap:10px;min-width:260px;display:grid}.download-link{border-radius:6px;min-height:40px;padding:0 16px;text-decoration:none}.upload-link{cursor:pointer;border-radius:6px;min-height:40px;padding:0 16px}.upload-link input{display:none}.apk-qr{color:#5f6673;background:#fff;border:1px solid #e1e5ec;border-radius:8px;justify-items:center;gap:8px;padding:12px;font-size:13px;display:grid}.apk-qr img{width:180px;height:180px}.muted-text{color:#6b7280;margin:0;font-size:13px}.demo-layout{grid-template-columns:minmax(260px,360px) minmax(360px,430px);align-items:start;gap:24px;display:grid}.demo-controls{gap:10px;display:grid}.demo-controls .secondary-button{justify-content:flex-start;padding:0 14px}.demo-notes{margin-top:8px}.demo-popup-body .phone-frame{margin:0 auto}.phone-frame{background:#f7f8fb;border:10px solid #111827;border-radius:28px;width:390px;min-height:760px;padding:16px 10px 12px;position:relative;box-shadow:0 18px 50px #00000029}.phone-speaker{background:#111827;border-radius:99px;width:64px;height:6px;position:absolute;top:7px;left:calc(50% - 32px)}.demo-phone-screen{color:#172033;gap:8px;font-size:13px;display:grid}.demo-phone-header,.demo-topbar{color:#0b3b78;justify-content:space-between;align-items:center;min-height:40px;display:flex}.demo-topbar button{color:#0b3b78;background:0 0;border:0;width:28px;height:32px;font-size:24px}.demo-phone-header strong{font-size:22px}.demo-topbar strong{color:#172033;font-size:16px}.demo-topbar span{text-align:right;min-width:70px;font-size:11px}.demo-driver-name,.demo-subtitle,.demo-offline{color:#6b7280}.demo-subtitle{text-align:center;margin:-4px 0 4px}.demo-waybill-card,.demo-list-card,.demo-event-row{background:#fff;border:1px solid #e1e5ec;border-radius:8px}.demo-waybill-card{padding:8px 10px}.demo-waybill-card p,.demo-list-card p{margin:5px 0}.demo-waybill-card p,.demo-list-card p,.demo-two-cols p{align-items:center;gap:5px;display:flex}.demo-waybill-head,.demo-list-head{background:#e8fbea;border-radius:6px;justify-content:space-between;align-items:center;gap:8px;padding:8px;display:flex}.demo-waybill-head div{gap:2px;display:grid}.demo-waybill-head strong{font-size:18px}.demo-waybill-head b{color:#0b5f20}.demo-waybill-head span{color:#6b7280;font-size:12px}.demo-waybill-head em,.demo-list-head em{color:#fff;white-space:nowrap;background:#18b33f;border-radius:5px;padding:4px 8px;font-style:normal;font-weight:700}.demo-action-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.demo-action-grid button{color:#0b3b78;background:#fff;border:1px solid #e1e5ec;border-radius:8px;place-items:center;gap:4px;min-height:64px;font-weight:700;display:grid}.demo-action-grid button:nth-child(4){background:#eaf3ff;border-color:#c8daf7}.demo-action-grid button:hover,.demo-click-card:hover,.demo-event-row:hover{background:#f4f8ff;border-color:#b8cdf0}.demo-offline{text-align:center;padding-top:10px;font-size:12px}.demo-primary,.demo-cancel{color:#0b3b78;border:1px solid #d8e0ec;border-radius:8px;min-height:44px;font-weight:700}.demo-primary{color:#fff;background:#0b3b78}.demo-cancel{background:#fff}.demo-list-card{overflow:hidden}.demo-click-card{width:100%;color:inherit;text-align:left;cursor:pointer;border:1px solid #e1e5ec;padding:0}.demo-list-card h3{margin:10px 10px 0}.demo-list-head{background:#f1f4f8;border-radius:0}.demo-list-head.active{background:#e8fbea}.demo-list-head strong{flex:1;font-size:15px}.demo-list-head:not(.active) em{color:#5d6678;background:#e7ecf4}.demo-plates{border-bottom:1px solid #e9edf3;grid-template-columns:1fr 1fr;gap:8px;padding:8px 10px;display:grid}.demo-two-cols{grid-template-columns:1fr 1fr;display:grid}.demo-two-cols>div{padding:8px 10px}.demo-two-cols>div+div{border-left:1px solid #e9edf3}.demo-two-cols b{color:#273bff;margin-bottom:4px;font-size:11px;display:block}.demo-event-row{min-height:58px;color:inherit;text-align:left;cursor:pointer;grid-template-columns:42px 1fr 18px;align-items:center;gap:8px;padding:8px 10px;display:grid}.demo-event-row i{background:#eef2ff;border-radius:8px;place-items:center;width:34px;height:34px;font-style:normal;display:grid}.demo-event-row div{gap:3px;display:grid}.demo-event-row strong{color:#0b3b78}.demo-event-row span{color:#6b7280;font-size:12px}.demo-event-row b{color:#0b3b78;font-size:20px}.demo-muted-line{color:#6b7280;font-weight:700}.demo-toast{color:#0b5f20;background:#effbf1;border:1px solid #cfe6d3;border-radius:8px;padding:8px 10px;font-weight:700}.demo-detail-card,.demo-form-card{padding:10px}.demo-detail-card h4{color:#0b3b78;margin:10px 0 4px}.demo-form-card{gap:10px;display:grid}.demo-form-card label{color:#6b7280;gap:4px;font-size:12px;font-weight:700;display:grid}.demo-form-card input{color:#172033;background:#f8fafc;border:1px solid #d8e0ec;border-radius:7px;height:38px;padding:0 10px;font-weight:700}.demo-route-card{gap:6px;padding:12px;display:grid}.demo-route-card strong{color:#172033}.demo-route-card span{color:#0b3b78;font-weight:700}.demo-route-card b{color:#6b7280}.demo-compare{background:#f8fafc;border:1px solid #e1e5ec;border-radius:8px;margin:8px 10px 10px;padding:8px}.demo-form-card .demo-compare{margin:0}.demo-map-box{color:#0b3b78;background:linear-gradient(90deg,#0000 49%,#b8cdf0 49% 51%,#0000 51%),linear-gradient(#eef5ff,#f9fbff);border:1px solid #d8e0ec;border-radius:8px;justify-content:space-around;align-items:center;min-height:170px;margin-top:10px;font-weight:700;display:flex}.demo-warning{color:#9a5b00;background:#fff5e6;border-radius:7px;padding:8px;font-weight:700}.demo-done-card{text-align:center;justify-items:center;gap:8px;padding:28px 18px;display:grid}.demo-done-card svg{color:#18b33f}.logout-button{justify-content:center;align-items:center;gap:10px;margin-top:auto;display:inline-flex}.content{padding:22px 26px 32px;overflow-x:auto}section{gap:18px;display:grid}.section-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.section-header h2{letter-spacing:0;margin:0;font-size:26px}.metric-grid{grid-template-columns:repeat(3,minmax(180px,1fr));gap:12px;display:grid}.metric{background:#fff;border:1px solid #d5d5d5;border-radius:8px;align-content:space-between;min-height:118px;padding:18px;display:grid}.metric span{color:#656565}.metric strong{letter-spacing:0;font-size:34px}.overview-grid{gap:16px;display:grid}.overview-two-columns{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:16px;display:grid}.kpi-row{grid-template-columns:repeat(6,minmax(120px,1fr));gap:10px;display:grid}.kpi-row.compact{grid-template-columns:repeat(4,minmax(120px,1fr))}.stat-card{background:#fff;border:1px solid #dfe6f0;border-radius:8px;gap:8px;min-height:82px;padding:14px;display:grid}.stat-card span{color:#6b7585;font-size:13px;font-weight:700}.stat-card strong{color:#10213d;font-size:30px;line-height:1}.stat-card.green{background:#effaf2;border-color:#cfeedd}.stat-card.blue{background:#eef5ff;border-color:#d5e5ff}.stat-card.amber{background:#fff8e6;border-color:#f2dfaa}.stat-card.red{background:#fff1f0;border-color:#f2c2be}.section-card{background:#fff;border:1px solid #dfe6f0;border-radius:8px;gap:14px;padding:16px;display:grid}.section-card-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.section-card-header h3{color:#10213d;margin:0;font-size:18px}.attention-list{gap:8px;display:grid}.attention-row{background:#fbfcfe;border:1px solid #edf1f6;border-radius:8px;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;display:grid}.attention-row div{gap:2px;display:grid}.attention-row span:not(.severity-dot),.attention-row small{color:#6b7585}.severity-dot{background:#8a94a6;border-radius:999px;width:10px;height:10px}.severity-dot.critical{background:#d92d20}.severity-dot.warning{background:#f59e0b}.severity-dot.info{background:#2f80ed}.status-chip{border-radius:999px;align-items:center;min-height:24px;padding:0 9px;font-size:12px;font-weight:800;display:inline-flex}.status-chip.moving{color:#0f7a35;background:#e7f8ed}.status-chip.stopped{color:#7a4b00;background:#fff3d8}.status-chip.no_data{color:#6b7280;background:#eef1f5}.status-chip.problem{color:#b42318;background:#fee4e2}.status-chip.ok{color:#0f7a35;background:#e7f8ed}.empty-state{color:#64748b;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:8px;gap:4px;padding:18px;display:grid}.empty-state strong{color:#25324a}.inline-form{grid-template-columns:repeat(auto-fit,minmax(160px,1fr)) 40px;align-items:center;gap:10px;display:grid}.inline-form.wide-form{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.row-actions.settings-actions{grid-template-columns:repeat(3,minmax(180px,1fr));width:min(780px,100%)}.settings-card{background:#fff;border:1px solid #d4d4d4;border-radius:8px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;padding:16px;display:grid}.settings-card div{gap:4px;display:grid}.settings-card strong{overflow-wrap:anywhere}.settings-form{gap:16px;max-width:1100px;margin-top:16px;display:grid}.settings-section{background:#fff;border:1px solid #d4d4d4;border-radius:8px;gap:12px;padding:16px;display:grid}.settings-section h2{align-items:center;gap:8px;margin:0;font-size:18px;display:flex}.settings-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;display:grid}.events-toolbar{grid-template-columns:minmax(180px,1fr) minmax(180px,1fr);width:min(520px,100%)}.events-filter-panel{background:#fff;border:1px solid #d8e0ec;border-radius:10px;grid-template-columns:repeat(auto-fit,minmax(180px,max-content));align-items:center;gap:8px;margin-bottom:12px;padding:10px;display:grid}.events-filter-panel select,.events-filter-panel button{min-height:40px}.ellipsis-cell{text-overflow:ellipsis;white-space:nowrap;max-width:340px;overflow:hidden}.muted-label{color:#656565;font-size:13px}.filter-row{width:min(360px,100%)}.filter-row select{width:100%}.search-box{background:#fff;border:1px solid #cfcfcf;border-radius:6px;width:min(320px,100%);min-height:40px;padding:0 10px}.search-box input{border:0;outline:0;width:100%;min-height:34px;padding:0}.table-wrap{background:#fff;border:1px solid #d4d4d4;border-radius:8px;overflow-x:auto}.monitor-wrap{background:#fff;border:1px solid #d8e0ec;border-radius:10px;overflow-x:auto}.monitor-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.monitor-summary{grid-template-columns:repeat(5,minmax(120px,1fr));gap:10px;margin-bottom:12px;display:grid}.monitor-filter-panel{background:#fff;border:1px solid #d8e0ec;border-radius:10px;grid-template-columns:minmax(220px,1.3fr) repeat(5,minmax(150px,1fr)) auto;align-items:center;gap:8px;margin-bottom:12px;padding:10px;display:grid}.monitor-filter-panel .search-box{width:100%}.monitor-filter-panel select{background:#fff;border:1px solid #ccd6e3;border-radius:8px;min-height:40px}.monitor-table{min-width:1260px;font-size:13px}.monitor-table th,.monitor-table td{white-space:nowrap;border-right:1px solid #edf1f6;padding:10px 11px}.monitor-table th:last-child,.monitor-table td:last-child{border-right:0}.monitor-table th{z-index:1;color:#526176;background:#f7f9fc;position:sticky;top:0}.monitor-row{cursor:pointer}.monitor-row:hover td{background:#f7fbff}.monitor-row.critical td:first-child{box-shadow:inset 4px 0 #d92d20}.monitor-row.warning td:first-child{box-shadow:inset 4px 0 #f59e0b}.monitor-org-row td{color:#1f1f1f;background:#f4f4f4;font-weight:700;display:table-cell}.monitor-org-row td>svg,.monitor-org-row td>strong,.monitor-org-row td>span{vertical-align:middle}.monitor-org-row td>svg{margin-right:7px}.monitor-org-row td>span{color:#606060;margin-left:12px;font-weight:500}.monitor-empty-row td{color:#6a6a6a;background:#fafafa}.monitor-vehicle-cell{align-items:center;gap:8px;display:flex}.monitor-vehicle-cell strong{display:block}.monitor-vehicle-cell span{color:#6a6a6a;margin-top:2px;font-size:12px;display:block}.monitor-stack{gap:3px;display:grid}.monitor-stack span,.monitor-stack small{color:#657386;font-size:12px}.mini-badge,.redirect-chip{color:#0b4b83;background:#e7f1ff;border-radius:999px;align-items:center;width:max-content;min-height:20px;padding:0 7px;font-size:11px;font-weight:700;display:inline-flex}.danger-text{color:#b42318;font-weight:700}.warning-text{color:#9a5b00;font-weight:700}.monitor-status,.monitor-freshness{border-radius:999px;align-items:center;min-height:22px;padding:0 8px;font-size:12px;font-weight:700;display:inline-flex}.monitor-status.moving,.monitor-freshness.fresh{color:#17622d;background:#dff3e6}.monitor-status.stopped{color:#7a4a00;background:#fff0cf}.monitor-status.info{color:#0b4b83;background:#e7f1ff}.monitor-freshness.warning{color:#8a5200;background:#fff3d6}.monitor-status.problem,.monitor-freshness.stale{color:#9f1d1d;background:#ffe4e4}.monitor-status.unknown,.monitor-freshness.no-data{color:#667085;background:#eef2f6}.drawer-backdrop{z-index:50;background:#0f172a38;justify-content:flex-end;display:flex;position:fixed;inset:0}.vehicle-drawer{background:#f6f8fb;width:min(520px,100%);height:100%;padding:16px;overflow-y:auto;box-shadow:-14px 0 34px #0f172a2e}.drawer-header{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:10px;display:flex}.drawer-header h2{color:#0b2341;margin:0 0 4px}.drawer-header p{color:#667085;margin:0}.drawer-status-line{background:#fff;border:1px solid #d8e0ec;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;padding:10px 12px;display:flex}.drawer-section{background:#fff;border:1px solid #d8e0ec;border-radius:10px;margin-bottom:8px;padding:12px}.drawer-section h3{color:#102a4c;margin:0 0 8px;font-size:15px}.drawer-section p{margin:5px 0}.mini-map{color:#0b4b83;background-color:#f8fbff;background-image:linear-gradient(90deg,#0d477814 1px,#0000 1px),linear-gradient(#0d477814 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:28px 28px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;border:1px solid #d8e0ec;border-radius:10px;justify-content:center;align-items:center;gap:10px;min-height:180px;margin-top:10px;font-weight:700;display:flex}.drawer-actions{grid-template-columns:repeat(2,1fr);gap:8px;padding-bottom:8px;display:grid}.drawer-close{flex:none}.monitor-row.selected td{background:#f4f8ff}.monitor-detail-row td{background:#f6f8fb;padding:0 10px 8px}.vehicle-inline-detail{background:#f8fbff;border:1px solid #cfd9e8;border-top:0;border-radius:0 0 12px 12px;margin:0 0 4px;padding:10px;box-shadow:inset 3px 0 #0d6efd}.vehicle-inline-detail-clean{gap:8px;padding:8px 10px 10px;display:grid}.monitor-detail-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px;display:flex}.monitor-detail-head h2{color:#0b2341;margin:0 0 3px;font-size:22px}.monitor-detail-head p{color:#56657a;margin:0}.monitor-detail-head-actions{white-space:nowrap;align-items:center;gap:10px;display:flex}.monitor-detail-grid{grid-template-columns:minmax(300px,1.2fr) repeat(3,minmax(220px,1fr));align-items:stretch;gap:8px;display:grid}.monitor-clean-grid{grid-template-columns:minmax(520px,1fr) minmax(280px,360px);gap:8px;display:grid}.monitor-clean-secondary{grid-template-columns:repeat(2,minmax(280px,1fr));gap:8px;display:grid}.monitor-context-grid{grid-template-columns:repeat(3,minmax(240px,1fr))}.monitor-detail-card{background:#fff;border:1px solid #d8e0ec;border-radius:10px;min-width:0;padding:9px 10px;line-height:1.25}.monitor-clean-summary,.monitor-clean-autograph{padding:8px 10px}.monitor-current-card,.monitor-problems-card,.monitor-timeline-card{grid-column:1/-1}.monitor-current-grid{grid-template-columns:repeat(5,minmax(150px,1fr));gap:8px;display:grid}.state-tile{background:#f8fbff;border:1px solid #edf1f6;border-radius:8px;min-width:0;padding:8px}.state-tile.wide{grid-column:span 1}.state-tile span,.state-tile em{color:#667085;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-style:normal;display:block;overflow:hidden}.state-tile strong{color:#061a33;text-overflow:ellipsis;white-space:nowrap;margin:3px 0;font-size:14px;display:block;overflow:hidden}.monitor-problems-cell span:last-child{color:#9f1d1d}.monitor-problem-list{grid-template-columns:repeat(2,minmax(260px,1fr));gap:6px;display:grid}.monitor-problem-item{color:#9f1d1d;background:#fff3f3;border-radius:8px;grid-template-columns:18px minmax(0,1fr);align-items:start;gap:7px;padding:7px 8px;display:grid}.monitor-problem-item strong,.monitor-problem-item span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.monitor-problem-item span{color:#667085;margin-top:2px;font-size:12px}.monitor-detail-card.primary{border-color:#bfd2ef}.monitor-events-card{grid-column:1/-1}.detail-card-title{color:#0b2341;margin-bottom:6px;font-size:14px;font-weight:800}.detail-fact{grid-template-columns:92px minmax(0,1fr);align-items:baseline;gap:6px;min-width:0;margin:3px 0;display:grid}.monitor-clean-facts{grid-template-columns:repeat(2,minmax(220px,1fr));column-gap:18px;display:grid}.detail-fact span{color:#667085;font-size:12px}.detail-fact strong{color:#061a33;text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.monitor-attention-box,.monitor-ok-box{border-radius:8px;align-items:flex-start;gap:8px;margin-top:7px;padding:7px;font-size:13px;line-height:1.2;display:flex}.monitor-attention-box{background:#fff3f3}.monitor-attention-box span{color:#667085;margin-top:2px;display:block}.monitor-attention-box>div{min-width:0}.monitor-attention-compact{margin-top:6px;padding:7px 9px}.monitor-attention-compact strong,.monitor-attention-compact span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.monitor-ok-box{color:#136b2e;background:#ecfdf3;font-weight:700}.detail-address{color:#56657a;text-overflow:ellipsis;white-space:nowrap;margin-top:6px;font-size:13px;overflow:hidden}.monitor-events-list{gap:3px;display:grid}.monitor-events-card-clean{padding-bottom:7px}.monitor-events-list-clean{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px}.monitor-event-row{color:#344054;border-top:1px solid #edf1f6;grid-template-columns:118px minmax(150px,220px) minmax(0,1fr);align-items:center;gap:10px;min-width:0;padding:4px 0;font-size:12px;line-height:1.2;display:grid}.monitor-event-row-clean{grid-template-columns:102px minmax(150px,230px) minmax(0,1fr);padding:5px 0}.monitor-event-row:first-child{border-top:0}.monitor-event-row strong,.monitor-event-row span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.monitor-event-row strong{color:#0b2341}.monitor-event-time{color:#667085}.compact-empty{margin:2px 0 0}.monitor-detail-actions{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.monitor-clean-actions{margin-top:0}.compact-action{width:auto;min-width:120px;height:32px;margin-top:6px;padding:0 12px}.compact-close{width:34px;height:32px;margin-left:auto}.timeline-scale{color:#667085;justify-content:space-between;margin-bottom:5px;font-size:12px;display:flex}.monitor-timeline-track{background:#f8fafc;border:1px solid #d8e0ec;border-radius:8px;height:34px;margin-bottom:6px;position:relative;overflow:hidden}.monitor-timeline-track.control{height:28px;margin-left:86px}.timeline-bar{color:#0b2341;text-overflow:ellipsis;white-space:nowrap;border-radius:6px;align-items:center;min-width:18px;padding:0 6px;font-size:11px;font-weight:800;display:flex;position:absolute;top:5px;bottom:5px;overflow:hidden}.timeline-bar.waiting_for_assignment{background:#e7f1ff}.timeline-bar.idle,.timeline-bar.waiting_prr,.timeline-bar.rest{background:#fff0cf}.timeline-bar.in_trip{color:#17622d;background:#dff3e6}.timeline-bar.gap{color:#667085;background:repeating-linear-gradient(45deg,#eef2f6,#eef2f6 6px,#f8fafc 6px 12px)}.timeline-bar.problem{color:#9f1d1d;background:#ffe4e4}.monitor-control-lanes{gap:4px;margin-top:8px;display:grid}.timeline-lane-label{color:#667085;font-size:12px;font-weight:800}.monitor-timeline-summary{border-top:1px solid #edf1f6;grid-template-columns:repeat(2,minmax(240px,1fr));gap:10px;margin-top:10px;padding-top:8px;display:grid}.monitor-timeline-summary div{gap:3px;display:grid}.monitor-timeline-summary strong{color:#0b2341;font-size:13px}.monitor-timeline-summary span{color:#56657a;font-size:12px}.inline-action{margin-top:8px}.clickable-row{cursor:pointer}.clickable-row:hover td{background:#f7fbff}.routes-filter-panel{background:#fff;border:1px solid #d8e0ec;border-radius:10px;grid-template-columns:minmax(220px,1.4fr) repeat(8,minmax(130px,1fr));align-items:center;gap:8px;margin-bottom:10px;padding:10px;display:grid}.routes-filter-panel .search-box{width:100%}.filter-panel{background:#fff;border:1px solid #d8e0ec;border-radius:10px;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;padding:10px;display:flex}.filter-panel select,.resolution-form textarea{background:#fff;border:1px solid #ccd6e3;border-radius:8px;min-height:40px}.segmented-control{background:#eef3f9;border-radius:8px;gap:4px;padding:4px;display:inline-flex}.segmented-control button{color:#12345b;background:0 0;border:0;border-radius:6px;padding:8px 12px;font-weight:700}.segmented-control button.active{color:#fff;background:#12345b}.link-button{color:#0b65d8;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:800}.verification-panel{background:#f8fafc;border-radius:10px;justify-content:space-between;align-items:center;gap:16px;padding:14px;display:flex}.verification-panel strong,.verification-panel span{display:block}.verification-panel.warning{background:#fff7ed}.verification-panel.ready{background:#ecfdf3}.verification-panel.ok{background:#e7f8ed}.discrepancy-values{grid-template-columns:repeat(3,minmax(160px,1fr));gap:12px;margin-bottom:10px;display:grid}.discrepancy-values div,.resolution-card{background:#fff;border:1px solid #d8e0ec;border-radius:10px;padding:12px}.discrepancy-values span,.resolution-card span{color:#667085;font-size:12px;display:block}.resolution-grid{grid-template-columns:repeat(2,minmax(180px,1fr));gap:10px;display:grid}.resolution-card{cursor:pointer;align-items:center;gap:8px;display:flex}.resolution-card.active{background:#eff6ff;border-color:#0b65d8}.resolution-form{gap:12px;display:grid}.resolution-form textarea{resize:vertical;width:100%;padding:10px 12px}.routes-filter-panel select,.routes-filter-panel input[type=date],.route-sort-row select{background:#fff;border:1px solid #ccd6e3;border-radius:8px;min-height:40px}.route-sort-row,.pagination-row{align-items:center;gap:8px;margin:10px 0;display:flex}.pagination-row{justify-content:flex-end}.route-table{min-width:1180px;font-size:13px}.route-table th{z-index:1;position:sticky;top:0}.route-table-wrap{border-color:#d8e0ec}.route-detail-hero{background:#fff;border:1px solid #d8e0ec;border-radius:12px;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:12px;padding:16px;display:flex}.route-detail-hero h2{color:#0b2341;margin:0 0 4px}.route-detail-hero p{color:#667085;margin:0}.route-summary-grid{grid-template-columns:repeat(6,minmax(140px,1fr));gap:10px;margin-bottom:12px;display:grid}.route-info-card{background:#fff;border:1px solid #d8e0ec;border-radius:10px;gap:10px;min-height:76px;padding:12px;display:flex}.route-info-card>span{color:#0b65d8}.route-info-card small,.route-info-card em{color:#667085;font-style:normal;display:block}.route-info-card strong{color:#0b2341;margin-top:4px;display:block}.route-detail-grid{grid-template-columns:minmax(0,1.35fr) minmax(360px,.9fr);align-items:start;gap:12px;display:grid}.route-main-column{gap:12px;display:grid}.route-destination{gap:7px;display:grid}.route-destination>strong{color:#0b2341;font-size:20px}.route-original{background:#f3f7fc;border-radius:8px;margin-top:8px;padding:10px}.route-original span{color:#667085;display:block}.route-linked-cards{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.route-timeline{gap:12px;display:grid;position:relative}.timeline-item{grid-template-columns:54px 1fr;gap:12px;padding-left:4px;display:grid}.timeline-item time{color:#667085;font-weight:700}.timeline-item>div{background:#fff;border:1px solid #d8e0ec;border-left-width:4px;border-radius:8px;padding:10px 12px;position:relative}.timeline-item.green>div{border-left-color:#16a34a}.timeline-item.blue>div{border-left-color:#0b65d8}.timeline-item.red>div{border-left-color:#d92d20}.timeline-item.amber>div{border-left-color:#f59e0b}.timeline-item.navy>div{border-left-color:#0b2341}.timeline-item strong,.timeline-item span{display:block}.timeline-item p{margin:4px 0}.timeline-item span{color:#667085;font-size:13px}.route-map,.route-map-placeholder{background:#f8fbff;border:1px solid #d8e0ec;border-radius:12px;width:100%;min-height:260px}.route-map text{fill:#0b2341;font-size:13px;font-weight:700}.route-map-placeholder,.route-detail-skeleton{color:#667085;place-items:center;display:grid}@media (width>=1440px){.route-detail-grid{grid-template-columns:minmax(0,1.45fr) minmax(380px,1fr)}}@media (width<=1280px){.routes-filter-panel,.route-summary-grid{grid-template-columns:repeat(3,minmax(160px,1fr))}.route-detail-grid,.route-linked-cards{grid-template-columns:1fr}}table{border-collapse:collapse;width:100%;min-width:860px}th,td{text-align:left;vertical-align:middle;border-bottom:1px solid #e6e6e6;padding:12px 14px}th{color:#606060;background:#fafafa;font-size:13px;font-weight:600}tr:last-child td{border-bottom:0}td select{width:100%;min-width:180px}.row-actions{grid-template-columns:minmax(140px,1fr) 40px;align-items:center;gap:8px;display:grid}.row-actions.compact-actions{min-width:260px}.vehicle-actions{grid-template-columns:repeat(2,minmax(150px,1fr))}.cell-stack{gap:8px;min-width:260px;display:grid}.match-button{color:#141414;text-align:left;overflow-wrap:anywhere;background:#fff;border:1px solid #cfcfcf;border-radius:6px;min-height:34px;padding:6px 8px}.inline-error{color:#8a1f1d;font-size:13px}.checkbox-label{color:#141414;background:#fff;border:1px solid #cfcfcf;border-radius:6px;align-items:center;gap:8px;min-height:40px;padding:0 10px;display:inline-flex}.checkbox-label input{width:16px;height:16px;min-height:auto;padding:0}.statement-photo{object-fit:cover;background:#f7f7f7;border:1px solid #d4d4d4;border-radius:6px;width:160px;height:110px}.json-preview{white-space:pre;background:#f7f7f7;border:1px solid #dcdcdc;border-radius:6px;max-width:420px;max-height:180px;margin:0;padding:10px;font-size:12px;line-height:1.45;overflow:auto}.api-docs{max-width:1080px}.doc-panel{background:#fff;border:1px solid #d4d4d4;border-radius:8px;gap:12px;padding:18px;display:grid}.doc-panel h3{letter-spacing:0;margin:0;font-size:18px}.api-doc-item{gap:0;padding:0;overflow:hidden}.api-doc-item summary{cursor:pointer;justify-content:space-between;align-items:center;min-height:52px;padding:0 18px;font-size:17px;font-weight:700;list-style:none;display:flex}.api-doc-item summary::-webkit-details-marker{display:none}.api-doc-item summary:after{content:"+";border:1px solid #d4d4d4;border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;font-size:18px;font-weight:500;display:inline-flex}.api-doc-item[open] summary{border-bottom:1px solid #e3e3e3}.api-doc-item[open] summary:after{content:"-"}.api-doc-body{gap:12px;padding:18px;display:grid}.doc-panel p{color:#454545;margin:0;line-height:1.55}.doc-panel code{background:#f7f7f7;border:1px solid #dcdcdc;border-radius:4px;padding:2px 5px}.doc-panel pre{color:#141414;white-space:pre;background:#f7f7f7;border:1px solid #dcdcdc;border-radius:6px;margin:0;padding:14px;line-height:1.45;overflow-x:auto}.status{border-radius:999px;align-items:center;min-height:28px;padding:0 10px;font-size:13px;display:inline-flex}.status.active{color:#1f5d36;background:#e8f5ee}.status.blocked{color:#8a1f1d;background:#fff0f0}.waybill-workspace,.waybill-detail{gap:16px;display:grid}.waybill-table th,.waybill-table td{vertical-align:top}.badge-row{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.waybill-summary-grid{grid-template-columns:repeat(4,minmax(180px,1fr));gap:14px;display:grid}.waybill-summary-grid div{gap:4px;display:grid}.waybill-comparison-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.comparison-table{border:1px solid #e2e8f0;border-radius:8px;gap:0;display:grid;overflow:hidden}.comparison-head,.comparison-row{border-bottom:1px solid #e2e8f0;grid-template-columns:minmax(130px,1.2fr) repeat(3,minmax(90px,1fr));align-items:center;gap:10px;padding:10px 12px;display:grid}.comparison-head{color:#64748b;background:#f8fafc;font-size:13px}.comparison-row:last-child{border-bottom:0}.comparison-row span{color:#64748b}.comparison-row em{color:#12345b;font-style:normal;font-weight:700}.waybill-events-list{gap:8px;display:grid}.waybill-events-list p{color:#344054;margin:0}@media (width<=1280px){.monitor-detail-grid{grid-template-columns:1fr 1fr}.monitor-clean-grid,.monitor-clean-secondary,.monitor-context-grid,.monitor-current-grid,.monitor-problem-list,.monitor-timeline-summary,.monitor-events-list-clean{grid-template-columns:1fr}.monitor-event-row{grid-template-columns:112px minmax(130px,190px) minmax(0,1fr)}.waybill-summary-grid,.waybill-comparison-grid{grid-template-columns:1fr}}@media (width<=900px){.app-shell{grid-template-columns:1fr}.sidebar{z-index:2;border-bottom:1px solid #d8d8d8;border-right:0;grid-template-columns:1fr;gap:12px;display:grid;position:sticky;top:0}nav{grid-template-columns:repeat(12,minmax(44px,1fr))}.nav-button{justify-content:center;padding:0;font-size:0}.logout-button{margin-top:0}.content{padding:18px}.metric-grid{grid-template-columns:1fr 1fr}}@media (width<=560px){.metric-grid,.inline-form{grid-template-columns:1fr}.section-header{flex-direction:column;align-items:stretch}.icon-button{width:100%}}
