*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--yellow: #F5B800;--yellow-light: #FFF8E1;--yellow-mid: #FFE082;--yellow-dark: #7A5C00;--bg: #0F0F0F;--bg-sb: #1C1C1C;--bg-card: #252525;--bg-surface: #2E2E2E;--text-pri: #F0F0F0;--text-sec: rgba(240,240,240,.55);--text-ter: rgba(240,240,240,.3);--border: rgba(255,255,255,.07);--border2: rgba(255,255,255,.12);--surface: rgba(255,255,255,.04);--surface2: rgba(255,255,255,.07);--font: "Inter", sans-serif;--shadow: 0 4px 20px rgba(0,0,0,.4);--transition: all .3s cubic-bezier(.4, 0, .2, 1);--dark3: #252525;--dark4: #2E2E2E;--bdr: rgba(255,255,255,.07)}[data-theme=light]{--bg: #F4F6F8;--bg-sb: #FFFFFF;--bg-card: #FFFFFF;--bg-surface: #F0F2F5;--text-pri: #1A1C1E;--text-sec: #44474E;--text-ter: #74777F;--border: rgba(0,0,0,.08);--border2: rgba(0,0,0,.12);--surface: rgba(0,0,0,.03);--surface2: rgba(0,0,0,.06);--shadow: 0 4px 20px rgba(0,0,0,.06);--dark3: #FFFFFF;--dark4: #F4F6F8;--bdr: rgba(0,0,0,.08)}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes popIn{0%{opacity:0;transform:scale(.88) translateY(16px)}60%{opacity:1;transform:scale(1.03) translateY(-3px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes popOut{0%{opacity:1;transform:scale(1) translateY(0)}to{opacity:0;transform:scale(.9) translateY(12px)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes pulseYellow{0%{box-shadow:0 0 #f5b80066}70%{box-shadow:0 0 0 10px #f5b80000}to{box-shadow:0 0 #f5b80000}}@keyframes radarRotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes barGrow{0%{transform:scaleY(0);transform-origin:bottom}to{transform:scaleY(1);transform-origin:bottom}}@keyframes staggerFade{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes spinnerPulse{0%,to{opacity:1}50%{opacity:.35}}.anim-fade{animation:fadeIn .4s ease-out forwards}.anim-slide{animation:slideInRight .4s ease-out forwards}.anim-scale{animation:scaleIn .3s ease-out forwards}.anim-pop{animation:popIn .35s cubic-bezier(.34,1.56,.64,1) forwards}.anim-down{animation:slideDown .25s ease-out forwards}.anim-up{animation:slideUp .25s ease-out forwards}.pulse-y{animation:pulseYellow 2s infinite}.stagger>*:nth-child(1){animation:staggerFade .35s ease-out 0s both}.stagger>*:nth-child(2){animation:staggerFade .35s ease-out .06s both}.stagger>*:nth-child(3){animation:staggerFade .35s ease-out .12s both}.stagger>*:nth-child(4){animation:staggerFade .35s ease-out .18s both}.stagger>*:nth-child(5){animation:staggerFade .35s ease-out .22s both}.stagger>*:nth-child(6){animation:staggerFade .35s ease-out .26s both}.card{animation:slideUp .3s ease-out both}.table-wrap{animation:slideUp .3s ease-out .08s both}.spinner{animation:spin .7s linear infinite}@media (prefers-reduced-motion: reduce){.spinner{animation:spinnerPulse 1.2s ease-in-out infinite}}html.no-transitions *,html.no-transitions *:before,html.no-transitions *:after{transition:none!important;animation-duration:0s!important}body,.app,.sidebar,.topbar,.content,.card,.metric,.btn,.nav-inner,.table-row,.row,.badge,.search-row input,.search-row select,.chat-item,.chat-window,.msg-bubble,.profile-card,.table-wrap{transition:background-color .3s ease,border-color .3s ease,color .3s ease,box-shadow .3s ease}html{background:var(--bg);color-scheme:dark}[data-theme=light] html,html[data-theme=light]{color-scheme:light}html,body{height:100%;overflow:hidden;background:var(--bg);font-family:var(--font);color:var(--text-pri)}.app{display:flex;height:100vh;height:100dvh}.sidebar{width:240px;flex-shrink:0;background:var(--bg-sb);border-right:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden;box-shadow:var(--shadow);transition:width .25s ease;min-height:0}.sb-nav{flex:1;overflow-y:auto;min-height:0}.sb-nav::-webkit-scrollbar{width:0}.sb-nav{scrollbar-width:none}.sidebar.collapsed{width:64px}.sb-brand{height:64px;padding:0 10px;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:8px;flex-shrink:0;overflow:hidden}.sidebar.collapsed .sb-brand{justify-content:center;gap:0;padding:0}.sb-logo-wrap{flex:1;min-width:0;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:10px;transition:background .25s,padding .25s}[data-theme=dark] .sb-logo-wrap{background:#ffffffeb;border-radius:10px;max-height:52px;margin:auto 6px;padding:0 6px;overflow:hidden}.sb-logo{height:64px;object-fit:contain;transform:scale(2.6);transform-origin:center center;transition:opacity .2s ease;pointer-events:none}.sidebar.collapsed .sb-logo-wrap{display:none}.sb-toggle{width:28px;height:28px;flex-shrink:0;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text-ter);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.sb-toggle:hover{background:var(--surface2);color:var(--text-pri);border-color:var(--border2)}.sb-section{font-size:10px;color:var(--text-ter);padding:16px 16px 5px;letter-spacing:.08em;text-transform:uppercase;font-weight:700;opacity:.6}.nav-item{padding:4px 10px;cursor:pointer}.nav-inner{display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:12px;font-size:13.5px;font-weight:600;color:var(--text-sec);transition:all .2s ease}.nav-item:hover .nav-inner{background:var(--surface2);color:var(--text-pri);transform:translate(4px)}.nav-item.active .nav-inner{background:var(--yellow);color:#000;font-weight:800;box-shadow:0 8px 16px #f5b80026}.nav-icon{width:16px;height:16px;flex-shrink:0;opacity:.7;transition:transform .2s}.nav-item:hover .nav-icon{transform:scale(1.1)}.nav-item.active .nav-icon{opacity:1;color:#000}.nav-badge{margin-left:auto;background:#e24b4a;color:#fff;font-size:10px;padding:2px 6px;border-radius:6px;font-weight:800;box-shadow:0 2px 6px #e24b4a4d}.sidebar.collapsed .sb-section{display:none}.sidebar.collapsed .nav-inner{padding:10px;justify-content:center}.sidebar.collapsed .nav-inner span,.sidebar.collapsed .nav-badge,.sidebar.collapsed .sb-uname,.sidebar.collapsed .sb-urole,.sidebar.collapsed .sb-theme-btn{display:none}.sidebar.collapsed .sb-footer{justify-content:center;padding:14px 10px}.sb-theme-btn{flex-shrink:0;width:28px;height:28px;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text-ter);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.sb-theme-btn:hover{background:var(--surface2);color:var(--yellow);border-color:var(--yellow)}.sb-footer{margin-top:auto;padding:14px 16px;border-top:1px solid var(--border);display:flex;align-items:center;gap:10px;transition:background .2s}.sb-footer:hover{background:var(--surface)}.sb-footer.active{background:var(--surface2)}.sb-av{width:32px;height:32px;border-radius:50%;background:var(--yellow);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;color:#000;flex-shrink:0;transition:border .2s}.sb-uname{font-size:12px;font-weight:600;color:var(--text-pri)}.sb-urole{font-size:10px;color:var(--text-ter)}.main{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}.topbar{height:64px;padding:0 32px;background:var(--bg-sb);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;flex-shrink:0;z-index:5}.tb-left{display:flex;align-items:center;gap:10px}.tb-accent{width:3px;height:20px;background:var(--yellow);border-radius:2px}.tb-title{font-size:17px;font-weight:700;color:var(--text-pri)}.tb-right{display:flex;align-items:center;gap:10px}.tb-time{font-size:12px;color:var(--text-ter)}.btn{padding:8px 16px;font-size:12px;font-weight:700;border:1px solid var(--border2);border-radius:10px;cursor:pointer;background:var(--surface);color:var(--text-pri);font-family:var(--font);transition:all .2s cubic-bezier(.4,0,.2,1);white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;gap:8px;-webkit-user-select:none;user-select:none}.btn:hover{background:var(--surface2);border-color:var(--text-ter);transform:translateY(-1px);box-shadow:0 4px 12px #0003}.btn:active{transform:translateY(0);filter:brightness(.9)}.btn-primary{background:var(--yellow);color:#111;border-color:var(--yellow);box-shadow:0 4px 14px #f5b80033}.btn-primary:hover{background:#fbc62d;border-color:#fbc62d;box-shadow:0 6px 20px #f5b8004d}.content{flex:1;overflow-y:auto;padding:32px}.content::-webkit-scrollbar{width:4px}.content-tight{padding:16px 20px}.dispatch-wrap{height:calc(100vh - 130px);min-height:520px}.content::-webkit-scrollbar-track{background:transparent}.content::-webkit-scrollbar-thumb{background:var(--border2);border-radius:2px}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:24px}.metrics-3{grid-template-columns:repeat(3,minmax(0,1fr))}.metrics-4b{grid-template-columns:repeat(4,minmax(0,1fr))}.metric{background:var(--bg-card);border:1px solid var(--border);border-radius:14px;padding:22px 24px;box-shadow:var(--shadow);transition:transform .25s cubic-bezier(.34,1.56,.64,1),box-shadow .25s ease,border-color .25s ease}.metric:hover{transform:translateY(-6px) scale(1.01);box-shadow:0 12px 32px #0003;border-color:var(--border2)}.m-label{font-size:11px;color:var(--text-ter);font-weight:500;margin-bottom:6px;text-transform:uppercase;letter-spacing:.05em}.m-val{font-size:30px;font-weight:800;color:var(--text-pri);line-height:1}.m-sub{font-size:11px;color:var(--text-ter);margin-top:4px}.m-up{color:#5dcaa5}.m-dn{color:#f09595}.m-yellow{color:var(--yellow)}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.grid-2-3{grid-template-columns:1fr 1.2fr}.span-2{grid-column:span 2}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:14px;overflow:hidden;box-shadow:var(--shadow);transition:transform .25s cubic-bezier(.34,1.56,.64,1),box-shadow .25s ease,border-color .25s ease}.card:hover{transform:translateY(-3px);box-shadow:0 10px 28px #0000002e;border-color:var(--border2)}.card-head{padding:16px 20px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.card-title{font-size:13px;font-weight:700;color:var(--text-pri)}.card-meta{font-size:11px;color:var(--text-ter)}.card-link{font-size:11px;color:var(--yellow);font-weight:700;cursor:pointer}.card-link:hover{text-decoration:underline}.badge{padding:4px 10px;border-radius:8px;font-size:10px;font-weight:800;white-space:nowrap;letter-spacing:.02em;text-transform:uppercase}.b-green{background:#5dcaa51a;color:#5dcaa5;border:1px solid rgba(93,202,165,.2)}.b-amber{background:#ef9f271a;color:#ef9f27;border:1px solid rgba(239,159,39,.2)}.b-red{background:#e04b4a1a;color:#f09595;border:1px solid rgba(224,75,74,.2)}.b-blue{background:#378add1a;color:#85b7eb;border:1px solid rgba(55,138,221,.2)}.b-yellow{background:#f5b8001a;color:var(--yellow);border:1px solid rgba(245,184,0,.2)}.b-gray{background:var(--surface);color:var(--text-ter);border:1px solid var(--border)}.row{display:flex;align-items:center;padding:14px 20px;border-bottom:1px solid var(--border);gap:12px;cursor:pointer;transition:background .15s,transform .2s cubic-bezier(.34,1.56,.64,1),box-shadow .2s}.row:last-child{border-bottom:none}.row:hover{background:var(--surface);transform:translate(4px)}.row-info{flex:1;min-width:0}.row-name{font-size:14px;font-weight:600;color:var(--text-pri);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.row-sub{font-size:11px;color:var(--text-ter);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:1px}.av{width:32px;height:32px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex-shrink:0;box-shadow:0 2px 8px #0003}.av-sm{width:24px;height:24px;font-size:9px;border-radius:7px}.av-lg{width:46px;height:46px;font-size:15px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-weight:800;flex-shrink:0}.av-y{background:#f5b80026;color:var(--yellow);border:1px solid rgba(245,184,0,.2)}.av-b{background:#378add26;color:#85b7eb;border:1px solid rgba(55,138,221,.2)}.av-g{background:#5dcaa526;color:#5dcaa5;border:1px solid rgba(93,202,165,.2)}.av-r{background:#e04b4a26;color:#f09595;border:1px solid rgba(224,75,74,.2)}.av-p{background:#7f77dd26;color:#afa9ec;border:1px solid rgba(127,119,221,.2)}.av-x{background:var(--surface);color:var(--text-ter);border:1px solid var(--border)}.dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.dot-g{background:#5dcaa5;box-shadow:0 0 8px #5dcaa566}.dot-a{background:#ef9f27;box-shadow:0 0 8px #ef9f2766}.dot-x{background:#888780}.map-box{height:230px;background:var(--bg-surface);position:relative;overflow:hidden;border-radius:12px}.map-road{position:absolute;background:#ffffff0f}.map-blk{position:absolute;background:#ffffff0a;border-radius:3px}.map-drv{position:absolute;width:13px;height:13px;border-radius:50%;border:2.5px solid var(--bg-card)}.map-pickup{position:absolute;width:12px;height:12px;border-radius:50%;background:var(--yellow);border:2.5px solid var(--bg-card)}.map-pulse{animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.map-legend{position:absolute;bottom:10px;left:12px;display:flex;gap:8px}.ml{display:flex;align-items:center;gap:5px;font-size:10px;color:var(--text-sec);background:#00000080;padding:3px 8px;border-radius:5px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.ml-dot{width:8px;height:8px;border-radius:50%}.chart-wrap{padding:14px 16px}.bars{display:flex;align-items:flex-end;gap:4px;height:72px;margin-bottom:4px}.bar-col{flex:1;display:flex;flex-direction:column;align-items:center;gap:3px}.bar-fill{width:100%;border-radius:4px 4px 0 0;min-height:3px;background:#f5b80026;transition:background .2s ease,box-shadow .2s ease;animation:barGrow .6s ease-out both}.bar-fill.peak{background:var(--yellow);box-shadow:0 2px 10px #f5b80033}.bar-fill:hover{background:var(--yellow)!important;box-shadow:0 0 12px #f5b80059!important}.bar-lbl{font-size:9px;color:var(--text-ter)}.search-row{display:flex;gap:12px;margin-bottom:24px;flex-wrap:wrap}.search-row input,.search-row select,.f-input{padding:12px 16px;font-size:14px;font-weight:500;background:var(--bg-card);border:1px solid var(--border);border-radius:12px;color:var(--text-pri);font-family:var(--font);outline:none;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:inset 0 2px 4px #0000000d}.search-row input:focus,.search-row select:focus,.f-input:focus{border-color:var(--yellow);background:var(--bg);box-shadow:0 0 0 4px #f5b8001f}.search-row input::placeholder{color:var(--text-ter)}.search-row select option{background:var(--bg-card)}.table-wrap{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;overflow:hidden}.table-head{display:grid;padding:9px 20px 9px 23px;background:var(--surface);font-size:10px;font-weight:700;color:var(--text-ter);border-bottom:1px solid var(--border);text-transform:uppercase;letter-spacing:.06em}.table-row{display:grid;padding:14px 20px;border-bottom:1px solid var(--border);border-left:3px solid transparent;align-items:center;cursor:pointer;transition:background .15s,border-color .15s,transform .2s cubic-bezier(.34,1.56,.64,1)}.table-row:hover{background:var(--surface);transform:translate(2px)}.table-row:last-child{border-bottom:none}.table-row.selected{background:#f5b8000f!important;border-left-color:var(--yellow)!important}.prog-bar{height:4px;background:var(--surface);border-radius:2px;overflow:hidden;margin:2px 0 10px}.prog-fill{height:100%;background:var(--yellow);border-radius:2px}.profile-card{background:var(--dark3);border:1px solid var(--border);border-radius:12px;padding:18px;margin-bottom:14px}.profile-top{display:flex;align-items:flex-start;gap:14px;margin-bottom:16px}.profile-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:16px}.customer-header-actions{align-self:start}.pstat{text-align:center;padding:10px;background:var(--surface);border-radius:8px}.pstat-val{font-size:20px;font-weight:800;color:var(--text-pri)}.pstat-lbl{font-size:10px;color:var(--text-ter);margin-top:2px}.loc-row{display:flex;align-items:center;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--border)}.loc-row:last-child{border-bottom:none}.loc-name{font-size:13px;font-weight:600;color:var(--text-pri)}.loc-addr{font-size:11px;color:var(--text-ter);margin-top:1px}.section-label{font-size:10px;font-weight:700;color:var(--text-ter);text-transform:uppercase;letter-spacing:.07em;margin-bottom:10px}.chat-list{background:var(--dark3);border:1px solid var(--border);border-radius:14px;overflow:hidden;display:flex;flex-direction:column;min-height:0}.chat-search{padding:12px;border-bottom:1px solid var(--border);flex-shrink:0}.chat-search input{width:100%;padding:9px 12px;font-size:12px;background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text-pri);font-family:var(--font);outline:none}.chat-search input:focus{border-color:var(--yellow)}.chat-scroll{flex:1;min-height:0;overflow-y:auto}.chat-scroll::-webkit-scrollbar{width:4px}.chat-scroll::-webkit-scrollbar-thumb{background:var(--border2);border-radius:2px}.chat-section-label{padding:6px 14px;background:#f5b80014;border-bottom:1px solid var(--border);font-size:10px;font-weight:700;color:var(--yellow);text-transform:uppercase;letter-spacing:.06em}.chat-item{padding:10px 14px 10px 17px;border-left:3px solid transparent;border-bottom:1px solid var(--border);cursor:pointer;transition:background .15s,border-color .15s}.chat-item:hover{background:var(--surface)}.chat-item:last-child{border-bottom:none}.chat-item.urgent{border-left-color:var(--yellow);background:#f5b8000a}.chat-item.alert{border-left-color:#e24b4a;background:#e04b4a0a}.chat-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:3px}.chat-name{font-size:12px;font-weight:700;color:var(--text-pri)}.chat-time{font-size:10px;color:var(--text-ter)}.chat-prev{font-size:11px;color:var(--text-ter);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-prev.red{color:#f09595}.chat-prev.amber{color:#ef9f27}.chat-window{background:var(--dark3);border:1px solid var(--border);border-radius:14px;overflow:hidden;display:flex;flex-direction:column;min-height:0}.chat-window-head{padding:13px 18px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;flex-shrink:0;background:var(--bg-sb)}.messages{flex:1;min-height:0;padding:20px 22px;display:flex;flex-direction:column;gap:12px;overflow-y:auto}.messages::-webkit-scrollbar{width:5px}.messages::-webkit-scrollbar-thumb{background:var(--border2);border-radius:3px}.msg{max-width:72%;display:flex;flex-direction:column}.msg-in{align-self:flex-start;align-items:flex-start}.msg-out{align-self:flex-end;align-items:flex-end}.msg-bubble{padding:10px 14px;font-size:13.5px;line-height:1.55;white-space:pre-wrap;word-break:break-word;box-shadow:0 1px 1.5px #0000002e}.msg-in .msg-bubble{background:var(--surface2);color:var(--text-pri);border-radius:3px 14px 14px}.msg-out .msg-bubble{background:#f5b80029;color:#f7c948;border-radius:14px 3px 14px 14px}.msg-out.msg-dispatcher .msg-bubble{background:#5dcaa529;color:#6fe0bb}.msg-out.alert-msg .msg-bubble{background:#ef9f271f;color:#ef9f27}.msg-time{font-size:10px;color:var(--text-ter);margin-top:4px}.msg-out .msg-time{text-align:right}.typing-dot{width:6px;height:6px;border-radius:50%;background:var(--text-ter);display:inline-block;animation:typingBounce 1.2s infinite ease-in-out}.typing-dot:nth-child(2){animation-delay:.2s}.typing-dot:nth-child(3){animation-delay:.4s}@keyframes typingBounce{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-4px);opacity:1}}.chat-reply{padding:14px 16px;border-top:1px solid var(--border);display:flex;gap:10px;flex-shrink:0;background:var(--bg-sb)}.chat-reply input{flex:1;padding:11px 14px;font-size:13px;background:var(--surface);border:1px solid var(--border);border-radius:10px;color:var(--text-pri);font-family:var(--font);outline:none}.chat-reply input:focus{border-color:var(--yellow)}.zone-row{padding:7px 0}.zone-top{display:flex;justify-content:space-between;font-size:13px;color:var(--text-pri);font-weight:500;margin-bottom:5px}.zone-val{font-weight:700}.toggle-wrap{display:flex;align-items:center;gap:7px}.toggle{position:relative;width:34px;height:19px;flex-shrink:0}.toggle input{opacity:0;width:0;height:0;position:absolute}.toggle-track{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:20px;background:var(--surface2);border:1px solid var(--border2);cursor:pointer;transition:background .2s,border-color .2s}.toggle-track:after{content:"";position:absolute;top:2px;left:2px;width:13px;height:13px;border-radius:50%;background:var(--text-ter);transition:transform .2s,background .2s}.toggle input:checked+.toggle-track{background:#5dcaa540;border-color:#5dcaa5}.toggle input:checked+.toggle-track:after{transform:translate(15px);background:#5dcaa5}.toggle-lbl{font-size:11px;font-weight:600;color:var(--text-ter);min-width:32px}.toggle input:checked~.toggle-lbl{color:#5dcaa5}.loc-icon{width:28px;height:28px;border-radius:7px;display:flex;align-items:center;justify-content:center;flex-shrink:0}*{scrollbar-width:thin;scrollbar-color:var(--border2) transparent}@media (max-width: 900px){.sidebar{width:64px}.sb-brand{justify-content:center}.sb-logo-wrap,.nav-inner span,.sb-uname,.sb-urole{display:none}.nav-inner{padding:10px;justify-content:center}.nav-badge,.sb-section{display:none}.sb-footer{justify-content:center;padding:14px 10px}.topbar{padding:0 16px}.content{padding:20px}.dispatch-wrap{height:calc(100vh - 106px)}.metrics,.metrics-6,.metrics-5,.metrics-3,.grid-2,.grid-2-3,.grid-4-2,.profile-stats,.incident-meta-grid,.dash-map-grid,.chats-layout{grid-template-columns:1fr!important}.chats-layout>*{grid-column:1!important;grid-row:auto!important}.dash-metrics{grid-template-columns:repeat(3,minmax(0,1fr))!important}.table-wrap{overflow-x:auto!important}.card-head{flex-wrap:wrap;gap:8px}.customer-header{grid-template-columns:auto minmax(0,1fr)!important}.customer-header-actions{grid-column:1 / -1;justify-content:flex-start!important}.search-row{flex-wrap:wrap}.search-row input,.search-row select{flex:1 1 100%;min-width:0}.profile-top{flex-wrap:wrap;gap:12px}.profile-actions{flex-wrap:wrap}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px;pointer-events:all}.modal-overlay>*{pointer-events:all}.modal-popup{position:fixed;top:0;right:0;bottom:0;left:0;background:transparent;z-index:200;display:flex;align-items:center;justify-content:center;padding:20px}.modal-popup-card{animation:popIn .38s cubic-bezier(.34,1.56,.64,1) forwards;box-shadow:0 24px 64px #00000059,0 4px 16px #0003}.modal-card{width:100%;max-width:440px;max-height:calc(100vh - 40px);background:var(--bg-card);border:1px solid var(--border);border-radius:20px;box-shadow:0 40px 100px #0009;overflow:hidden;display:flex;flex-direction:column}.modal-card--wide{max-width:600px}.modal-head{padding:20px 24px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.btn-close{background:none;border:none;color:var(--text-ter);font-size:24px;cursor:pointer}.modal-body{padding:24px;overflow-y:auto;flex:1}.f-row{margin-bottom:16px}.f-row label{display:block;font-size:11px;font-weight:700;color:var(--text-ter);text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px}.f-row input{width:100%;padding:12px 14px;background:var(--bg);border:1px solid var(--border);border-radius:10px;color:var(--text-pri);font-family:var(--font);font-size:14px;outline:none;transition:border-color .15s}.f-row input:focus{border-color:var(--yellow)}.grid-4-2{display:grid;grid-template-columns:repeat(4,1fr)}.incident-meta-grid{grid-template-columns:repeat(3,1fr)}.metrics-6{grid-template-columns:repeat(6,minmax(0,1fr))}.metrics-5{grid-template-columns:repeat(5,minmax(0,1fr))}.chats-layout{display:grid;grid-template-columns:1fr 300px;grid-template-rows:1fr auto;gap:10px;height:calc(100vh - 96px);min-height:0}.chats-layout>*:nth-child(1){grid-column:2;grid-row:1;min-height:0}.chats-layout>*:nth-child(2){grid-column:1;grid-row:1 / -1;min-height:0}.chats-layout>*:nth-child(3){grid-column:2;grid-row:2;min-height:0}.dash-metrics{grid-template-columns:repeat(6,minmax(0,1fr))}.dash-map-grid{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:20px;margin-bottom:20px}.dash-map-container{height:390px}.tb-logout-icon{display:none}.tb-logout-text{display:inline}.sb-hamburger{display:none;width:34px;height:34px;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text-ter);cursor:pointer;align-items:center;justify-content:center;flex-shrink:0;margin-right:8px}.sb-backdrop{display:none!important}@media (max-width: 768px){.sb-hamburger{display:flex}.sb-toggle{display:none!important}.topbar{z-index:300!important}.sidebar{position:fixed!important;top:0;left:0;bottom:0;z-index:200;width:260px!important;transform:translate(-100%);transition:transform .28s cubic-bezier(.4,0,.2,1);box-shadow:4px 0 32px #0006}.sidebar.mobile-open{transform:translate(0)}.sidebar.collapsed{width:260px!important;transform:translate(-100%)}.sidebar.collapsed.mobile-open{transform:translate(0)}.sidebar.mobile-open .sb-logo-wrap{display:flex!important}.sidebar.mobile-open .sb-section{display:block!important}.sidebar.mobile-open .nav-inner{padding:10px 16px!important;justify-content:flex-start!important}.sidebar.mobile-open .nav-inner span{display:inline!important}.sidebar.mobile-open .nav-badge{display:inline-flex!important}.sidebar.mobile-open .sb-uname,.sidebar.mobile-open .sb-urole{display:block!important}.sidebar.mobile-open .sb-theme-btn{display:flex!important}.sidebar.mobile-open .sb-footer{justify-content:flex-start!important;padding:14px 16px!important}.sb-backdrop{display:block!important}.main{width:100%}.topbar{padding:0 10px;height:54px}.tb-time{display:none}.tb-title{font-size:15px}.tb-accent,.tb-logout-text{display:none}.tb-logout-icon{display:inline}.tb-right .btn-primary{font-size:11px;padding:6px 10px;max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.content{padding:14px}.dispatch-wrap{height:calc(100vh - 84px)}.topbar{padding:0 10px}.tb-right{gap:8px}.tb-right .btn{max-width:120px;overflow:hidden;text-overflow:ellipsis}.metrics,.metrics-6,.metrics-5,.metrics-3{grid-template-columns:repeat(2,minmax(0,1fr))!important}.grid-2,.grid-2-3,.grid-4-2,.profile-stats,.incident-meta-grid,.dash-map-grid,.chats-layout{grid-template-columns:1fr!important}.card-head{flex-wrap:wrap;gap:8px}.customer-header{grid-template-columns:1fr!important}.customer-header-actions{grid-column:auto;justify-content:flex-start!important}.search-row input,.search-row select{min-width:0;flex:1 1 100%}.metrics{grid-template-columns:repeat(2,1fr)!important;gap:10px;margin-bottom:14px}.grid-2,.grid-2-3{grid-template-columns:1fr!important;gap:12px}.table-wrap{overflow-x:auto!important;overflow-y:visible!important;-webkit-overflow-scrolling:touch}.table-head,.table-row{min-width:560px}.drivers-table .table-head{display:none!important}.drivers-table .table-row{display:flex!important;align-items:center;gap:12px;padding:12px 16px!important;min-width:0!important}.drivers-table .table-row>span.dr-trips,.drivers-table .table-row>span.dr-rating,.drivers-table .table-row>span.dr-seen{display:none!important}.drivers-table .table-row>div.dr-status{display:none!important}.orders-table .table-head,.orders-table .table-row,.dispatch-log-table .table-head,.dispatch-log-table .table-row{min-width:650px}.payroll-table .table-head,.payroll-table .table-row,.leaderboard-table .table-head,.leaderboard-table .table-row{min-width:780px}.card{border-radius:10px}.card:hover{transform:none}.profile-card{padding:14px}.profile-top{flex-wrap:wrap;gap:12px}.profile-stats{grid-template-columns:repeat(2,1fr)!important;gap:8px!important}.search-row{flex-wrap:wrap;gap:8px}.search-row input{min-width:0;flex:1 1 100%}.search-row select{flex:1}.grid-4-2,.incident-meta-grid{grid-template-columns:repeat(2,1fr)!important}.metrics,.metrics-6,.metrics-5,.metrics-3{grid-template-columns:repeat(2,1fr)!important;gap:8px;margin-bottom:12px}.chats-layout{grid-template-columns:1fr!important}.chats-layout>*:nth-child(3){display:none}.dash-metrics{grid-template-columns:repeat(3,1fr)!important;gap:8px;margin-bottom:12px}.dash-metrics .m-sub{display:none}.dash-metrics .m-val{font-size:20px}.dash-metrics .metric{padding:10px 8px}.dash-map-grid{grid-template-columns:1fr!important;gap:12px}.dash-map-container{height:220px!important}.dash-activity{height:240px!important}.metric{padding:12px 10px}.m-val{font-size:22px}.pstat{padding:10px}.pstat-val{font-size:18px}.tb-right .btn{font-size:11px;padding:6px 10px}.tb-right .tb-time{display:none}.live-map-wrap{height:260px}.chat-layout{flex-direction:column}.chat-list{width:100%;max-height:260px;border-right:none;border-bottom:1px solid var(--border)}@media (max-width: 480px){[style*="maxWidth: 500"],[style*="maxWidth: 540"],[style*="maxWidth: 520"]{max-width:100%!important;border-radius:14px 14px 0 0!important;margin-top:auto;align-self:flex-end}}}@media (display-mode: standalone){.topbar{padding-top:env(safe-area-inset-top);height:calc(54px + env(safe-area-inset-top))}.sb-brand{padding-top:env(safe-area-inset-top);height:calc(64px + env(safe-area-inset-top))}.content{padding-bottom:calc(14px + env(safe-area-inset-bottom))}.app{height:100dvh}.tb-time,.tb-accent{display:none}.tb-title{font-size:15px}.sb-hamburger{display:flex}.sb-toggle{display:none!important}.topbar{z-index:300!important}.sidebar.mobile-open .sb-logo-wrap{display:flex!important}.sidebar.mobile-open .sb-section{display:block!important}.sidebar.mobile-open .nav-inner{padding:10px 16px!important;justify-content:flex-start!important}.sidebar.mobile-open .nav-inner span{display:inline!important}.sidebar.mobile-open .nav-badge{display:inline-flex!important}.sidebar.mobile-open .sb-uname,.sidebar.mobile-open .sb-urole{display:block!important}.sidebar.mobile-open .sb-theme-btn{display:flex!important}.sidebar.mobile-open .sb-footer{justify-content:flex-start!important;padding:14px 16px!important}.grid-4-2,.incident-meta-grid{grid-template-columns:repeat(2,1fr)!important}.metrics,.metrics-6,.metrics-5,.metrics-3{grid-template-columns:repeat(2,1fr)!important;gap:8px;margin-bottom:12px}.chats-layout{grid-template-columns:1fr!important}.chats-layout>*:nth-child(3){display:none}.dash-metrics{grid-template-columns:repeat(3,1fr)!important;gap:8px;margin-bottom:12px}.dash-metrics .m-sub{display:none}.dash-metrics .m-val{font-size:20px}.dash-metrics .metric{padding:10px 8px}.dash-map-grid{grid-template-columns:1fr!important;gap:12px}.dash-map-container{height:220px!important}.dash-activity{height:240px!important}.grid-2,.grid-2-3{grid-template-columns:1fr!important}.table-wrap{overflow-x:auto!important;overflow-y:visible!important;-webkit-overflow-scrolling:touch}.table-head,.table-row{min-width:560px}.drivers-table .table-head{display:none!important}.drivers-table .table-row{display:flex!important;align-items:center;gap:12px;padding:12px 16px!important;min-width:0!important}.drivers-table .table-row>span.dr-trips,.drivers-table .table-row>span.dr-rating,.drivers-table .table-row>span.dr-seen,.drivers-table .table-row>div.dr-status{display:none!important}.orders-table .table-head,.orders-table .table-row{min-width:680px}.payroll-table .table-head,.payroll-table .table-row,.leaderboard-table .table-head,.leaderboard-table .table-row{min-width:780px}.content{padding:14px}.tb-right .btn{font-size:11px;padding:6px 10px}.tb-right .btn-primary{max-width:110px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tb-logout-text{display:none}.tb-logout-icon{display:inline}}.dev-badge{margin-left:10px;padding:3px 9px;border-radius:6px;background:#ff9f0a;color:#1a1200;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;cursor:help;box-shadow:0 0 0 1px #ff9f0a59,0 2px 8px #ff9f0a40}button{transition-property:transform,background-color,border-color,color,box-shadow,opacity;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}button:not(:disabled):not([style*=transform]):active{transform:scale(.97)}.btn:not(:disabled):active{transform:scale(.97)}.action-btn-content{display:inline-flex;align-items:center;justify-content:center;gap:7px}.action-btn-done{animation:scaleIn .2s ease-out}@media (prefers-reduced-motion: reduce){button:not(:disabled):active,.btn:not(:disabled):active{transform:none}.action-btn-done{animation:none}}
