:root{--primary:#3568D4;--primary-dark:#214CA8;--navy:#17222B;--green:#2E9D5B;--amber:#D99521;--bg:#f4f7fb;--line:#e2e8f0;--muted:#6b7785;--danger:#bd2c2c;--white:#fff;--shadow:0 8px 24px rgba(23,34,43,.08)}
*{box-sizing:border-box}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:var(--bg);color:var(--navy)}button,input,select{font:inherit}.hidden{display:none!important}.login-shell{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,var(--navy),#223746)}.login-card{width:min(420px,92vw);background:white;border-radius:18px;padding:38px;box-shadow:0 24px 80px rgba(0,0,0,.28)}.brand-mark{width:58px;height:58px;border-radius:16px;display:grid;place-items:center;background:var(--primary);color:#fff;font-weight:800;font-size:22px}.brand-mark.small{width:40px;height:40px;border-radius:12px;font-size:16px}.login-card h1{margin:20px 0 4px}.login-card p{margin:0 0 26px;color:var(--muted)}label{display:block;font-size:12px;font-weight:700;margin:13px 0 6px}input,select{width:100%;border:1px solid #cfd8e3;border-radius:9px;padding:10px 12px;background:#fff;color:var(--navy)}button{border:0;border-radius:9px;padding:10px 14px;cursor:pointer;font-weight:700}.login-card button,.primary{background:var(--primary);color:#fff}.login-card button{width:100%;margin-top:18px}.ghost{background:#eef3f8;color:var(--navy)}.error{color:var(--danger);font-size:13px;margin-top:10px}.version{margin-top:22px;font-size:11px;color:#8b96a3}.app{min-height:100vh;display:grid;grid-template-columns:245px 1fr}.sidebar{background:var(--navy);color:white;padding:22px 15px;display:flex;flex-direction:column;min-height:100vh}.brand{display:flex;align-items:center;gap:11px;padding:0 7px}.brand strong,.brand span{display:block}.brand span{font-size:12px;color:#aebbc5}.portal-label{font-size:10px;letter-spacing:1.8px;color:#8ea1ae;padding:22px 8px 10px}.sidebar nav{display:grid;gap:5px}.nav{text-align:left;background:transparent;color:#d5dde3;padding:11px 13px}.nav.active{background:var(--primary);color:#fff}.nav.muted{opacity:.42;cursor:default}.sidebar-footer{margin-top:auto;color:#82939f;font-size:10px;padding:10px 8px}main{min-width:0}.support-banner{background:#fff4d8;border-bottom:1px solid #ebd29b;padding:10px 28px;display:flex;gap:12px;align-items:center;font-size:13px}.support-banner strong{color:#885b00}header{display:flex;justify-content:space-between;align-items:center;padding:24px 28px 18px}header h2{margin:0;font-size:24px}header p{margin:4px 0 0;color:var(--muted);font-size:13px}.header-actions{display:flex;align-items:center;gap:10px}.customer-chip{background:white;border:1px solid var(--line);border-radius:999px;padding:8px 12px;font-size:12px;font-weight:700}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;padding:0 28px 18px}.cards article,.panel{background:white;border:1px solid #e8edf3;border-radius:14px;box-shadow:var(--shadow)}.cards article{padding:20px}.cards span{display:block;color:var(--muted);font-size:12px}.cards strong{display:block;font-size:30px;margin-top:7px}.cards .attention strong{color:var(--amber)}.panel-grid{display:grid;grid-template-columns:2fr 1fr;gap:18px;padding:0 28px 28px}.panel{margin:0 28px 28px;padding:20px}.panel-grid .panel{margin:0}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:16px}.panel h3,.panel h4{margin:0}.panel-head p{margin:4px 0 0;color:var(--muted);font-size:12px}.compact{padding:20px}.status-list{display:grid;gap:10px}.vehicle-status-item{display:flex;justify-content:space-between;gap:8px;padding:11px 0;border-bottom:1px solid #edf1f5}.vehicle-status-item:last-child{border:0}.vehicle-status-item span{font-size:12px;color:var(--muted)}.badge{display:inline-flex;border-radius:999px;padding:4px 8px;font-size:10px;font-weight:800}.badge.moving{background:#e7f6ed;color:var(--green)}.badge.parked{background:#eef3f8;color:#526271}.badge.offline{background:#fae8e8;color:var(--danger)}.map-box{height:430px;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#eef2f6;position:relative}.map-box.large{height:650px}.map-message{height:100%;display:grid;place-items:center;color:var(--muted);font-size:13px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:12px;border-bottom:1px solid #edf1f5;font-size:13px;white-space:nowrap}th{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.4px}.subtle{color:var(--muted);font-size:11px}.detail-panel{min-height:640px}.detail-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:22px}.telemetry-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:14px 0}.telemetry-card{border:1px solid var(--line);border-radius:11px;padding:13px;background:#fbfcfe}.telemetry-card span{display:block;color:var(--muted);font-size:10px;text-transform:uppercase}.telemetry-card strong{display:block;margin-top:5px;font-size:15px}.vehicle-tabs{display:flex;gap:7px;border-bottom:1px solid var(--line);margin:18px 0}.vehicle-tab{background:transparent;color:var(--muted);border-radius:0;padding:10px 12px}.vehicle-tab.active{color:var(--primary);border-bottom:3px solid var(--primary)}.history-toolbar,.trip-selector{display:flex;align-items:end;gap:10px;margin:12px 0 18px}.history-toolbar input,.trip-selector input,.trip-selector select{width:auto;min-width:180px}.history-grid{align-items:start}.playback-controls{display:flex;align-items:center;gap:10px;padding-top:11px}.playback-controls input[type=range]{flex:1}.row-actions{display:flex;gap:8px}.support-mode{outline:3px solid #f1c667}.empty{color:var(--muted);padding:18px 0}@media(max-width:1050px){.app{grid-template-columns:210px 1fr}.cards{grid-template-columns:repeat(2,1fr)}.panel-grid,.detail-grid{grid-template-columns:1fr}.telemetry-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:720px){.app{display:block}.sidebar{min-height:auto}.sidebar nav{grid-template-columns:repeat(2,1fr)}header,.support-banner{padding-left:16px;padding-right:16px}.cards,.panel-grid{padding-left:16px;padding-right:16px}.panel{margin-left:16px;margin-right:16px}.cards{grid-template-columns:1fr 1fr}.header-actions{flex-wrap:wrap}.telemetry-grid{grid-template-columns:1fr 1fr}.map-box.large{height:480px}}

/* Alerts foundation: responsive controls and scrollable evidence table. */
.alert-filters{display:flex;flex-wrap:wrap;gap:14px;margin:18px 0}
.alert-filters label{display:flex;flex-direction:column;gap:6px;flex:1 1 150px;min-width:0}
.alert-filters input,.alert-filters select{width:100%;min-height:42px}
.alert-filters .alert-check{flex-direction:row;align-items:center}
.alert-check input{width:18px;min-height:18px}
#alertsView .panel{margin-bottom:20px}
#alertsView td{vertical-align:top}
#alertsView .alert-detail{display:block;font-size:12px;margin-top:5px;color:#64748b}
#alertsView .alert-active{color:#9a3412;font-weight:700}
#alertSettingsVehicle{max-width:100%;min-height:44px}
#alertSettingsMessage{display:block;margin-top:12px}
@media(max-width:600px){.alert-filters label{flex-basis:100%}#alertsView .panel{padding:14px}}

#alertsView td{white-space:normal;min-width:120px;max-width:280px;overflow-wrap:anywhere}
@media(max-width:600px){
  #alertsView table,#alertsView tbody,#alertsView tr,#alertsView td{display:block;width:100%;min-width:0;max-width:none}
  #alertsView thead{display:none}
  #alertsView tr{border:1px solid #dde4ec;border-radius:10px;margin:12px 0;padding:8px}
  #alertsView td{border:0;padding:8px}
  #alertsView td[data-label]::before{content:attr(data-label);display:block;font-size:11px;font-weight:700;color:#64748b;margin-bottom:4px}
}

#fuelView .panel{margin-bottom:18px}#fuelView select{max-width:100%;min-height:44px}
.fuel-controls{display:flex;flex-wrap:wrap;gap:16px;margin:18px 0;align-items:end}
.fuel-controls label{display:flex;flex-direction:column;gap:6px;flex:1 1 200px;min-width:0}
.fuel-controls input{width:100%;min-height:44px}.fuel-checkbox{display:flex!important;flex-direction:row!important;align-items:center;gap:10px;margin:14px 0}
.fuel-checkbox input{width:18px;min-height:18px}#fuelView .telemetry-grid{margin:20px 0;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}
#fuelView .telemetry-card strong{overflow-wrap:anywhere}#fuelView td{white-space:normal;overflow-wrap:anywhere}
.fuel-chart{margin:20px 0;overflow-x:auto}.fuel-chart svg{width:100%;min-width:650px;display:block}.fuel-chart text{font:12px sans-serif;fill:#64748b}
@media(max-width:600px){#fuelView .panel{padding:14px}.fuel-controls label{flex-basis:100%}#fuelView table,#fuelView tbody,#fuelView tr,#fuelView td{display:block;width:100%;min-width:0}#fuelView thead{display:none}#fuelView tr{border:1px solid #dde4ec;border-radius:10px;margin:12px 0;padding:8px}#fuelView td{border:0;padding:8px}#fuelView td[data-label]::before{content:attr(data-label);display:block;font-size:11px;font-weight:700;color:#64748b;margin-bottom:4px}}

/* Customer experience: calm slate navigation, teal actions, clear density. */
:root{--primary:#087f82;--bg:#f3f6f8;--text:#172c3c;--muted:#647985;--line:#dfe7eb}
body{font-family:Inter,"Segoe UI",Arial,sans-serif;background:var(--bg)}
.sidebar{background:#132c3d}.brand-mark{background:#0c9695}.nav.active{background:#254858;border-left-color:#63d4c5}.nav.muted{display:none}
header{border-bottom:1px solid var(--line);background:white;margin-bottom:24px}header h2{font-size:26px}
.fleet-intro{padding:4px 28px 22px;display:flex;justify-content:space-between;gap:20px;align-items:center}.fleet-intro h3{font-size:30px;letter-spacing:-.8px;margin:8px 0}.fleet-intro p{color:var(--muted);margin:0}.eyebrow{font-size:10px;letter-spacing:2px;color:#087f82;font-weight:800}#dashboardUpdated{font-size:12px;color:var(--muted)}
.cards article{border-top:3px solid #93aaaF;box-shadow:none}.cards article:nth-child(2){border-color:#13917d}.cards article:nth-child(3){border-color:#6796b0}.cards article.attention{border-color:#d69b45}.metric-link{display:block;padding:0;background:none;color:var(--muted);font-size:12px;text-align:left;border-radius:0}.metric-link:hover{background:none;color:var(--primary)}
.panel{box-shadow:0 3px 14px #20384505;border-radius:14px}.panel h3{font-size:17px}.map-box{height:380px}.fleet-toolbar{display:flex;align-items:end;flex-wrap:wrap;gap:16px}.fleet-toolbar label:first-child{flex:1;min-width:220px}.fleet-toolbar label{display:grid;gap:7px}.fleet-toolbar input,.fleet-toolbar select{margin:0}#fleetResults{font-size:12px;color:var(--muted);padding-bottom:12px}
.fleet-status-button,.attention-row{display:flex;align-items:center;justify-content:space-between;width:100%;gap:14px;background:white;color:var(--text);text-align:left;padding:16px 0;border-bottom:1px solid var(--line);border-radius:0}.fleet-status-button:hover,.attention-row:hover{background:#f2f9f8}.fleet-status-button small,.attention-row small{display:block;color:var(--muted);font-size:11px;font-weight:400;margin-top:6px}.attention-row>span:last-child{font-size:11px;color:var(--primary)}
button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #63c8c1;outline-offset:3px}.telemetry-card{background:white}.telemetry-card strong{font-variant-numeric:tabular-nums}.fuel-chart svg{min-width:650px}#dashboardNotice{margin:0 28px 12px}
@media(max-width:720px){header{margin-bottom:18px}.fleet-intro{padding:0 16px 20px;display:block}.fleet-intro h3{font-size:25px}#dashboardUpdated{display:block;margin-top:12px}.sidebar{padding:16px}.sidebar-footer,.portal-label{display:none}.sidebar nav{grid-template-columns:repeat(3,1fr);gap:5px;margin-top:14px}.nav{font-size:11px;padding:10px 5px}.brand{margin-bottom:8px}.fleet-toolbar{gap:12px}.fleet-toolbar label{flex:1}.map-box{height:300px}#vehiclesTable td{white-space:normal}#vehiclesView table thead{display:none}#vehiclesTable tr{display:block;padding:12px 0;border-bottom:1px solid var(--line)}#vehiclesTable td{display:flex;justify-content:space-between;gap:12px;border:0;padding:7px 0}#vehiclesTable td:before{content:attr(data-label);color:var(--muted);font-size:11px;min-width:70px}.fleet-intro p{font-size:13px}}

.logo-window{position:relative;overflow:hidden;width:190px;height:80px;background:white;border-radius:10px;flex-shrink:0}.logo-window img{position:absolute;max-width:none;width:250px;height:250px;left:-20px;top:-85px}.login-card>.logo-window{margin:0 auto 20px}.brand{display:flex;justify-content:center}
.nav-icon{display:inline-block;width:24px;flex-shrink:0;font-size:22px;text-align:center;margin-right:10px}.nav{display:flex;align-items:center}.app.menu-collapsed{grid-template-columns:88px minmax(0,1fr)}.menu-collapsed .sidebar{padding:18px 10px}.menu-collapsed .nav-text,.menu-collapsed .portal-label,.menu-collapsed .sidebar-footer{display:none}.menu-collapsed .nav{justify-content:center;padding:12px 4px}.menu-collapsed .nav-icon{margin:0}.menu-collapsed .logo-window{width:46px;height:58px}.menu-collapsed .logo-window img{width:210px;height:210px;left:-23px;top:-74px}#menuToggle{font-size:20px;padding:8px 12px}header>div:first-of-type{flex:1}header{gap:18px}.map-toolbar,.map-tools{display:flex;align-items:center;justify-content:space-between;gap:12px}.map-toolbar{margin-bottom:16px}.map-toolbar h3{font-size:24px;margin:0 0 6px}.map-tools button{white-space:nowrap}#mobileMapToggle{display:none}.fleet-workspace{display:grid;grid-template-columns:350px minmax(0,1fr);height:calc(100vh - 230px);min-height:530px;background:white;border:1px solid var(--line);border-radius:16px;overflow:hidden}.map-list{overflow:auto;border-right:1px solid var(--line);background:#f5f8fa}.map-filters{padding:18px;background:white;border-bottom:1px solid var(--line)}.map-filters input{margin:8px 0 12px}.map-filter-row{display:flex;gap:10px}.map-filter-row select{flex:1;min-width:0;margin:0}.map-filters p{font-size:12px;color:var(--muted);margin:12px 0 0}.map-vehicle{margin:12px;padding:18px;background:white;border:1px solid var(--line);border-radius:12px;box-shadow:0 3px 12px #172c3c06}.map-vehicle.selected{border-color:#087f82;box-shadow:0 0 0 1px #087f82}.select-map-vehicle{display:block;width:100%;padding:0;background:none;color:var(--text);text-align:left}.select-map-vehicle:hover{background:none;color:var(--primary)}.select-map-vehicle strong{display:block;font-size:18px}.select-map-vehicle span{display:block;font-size:12px;font-weight:400;color:var(--muted);margin-top:5px}.map-card-status{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:16px}.map-card-status small,.map-vehicle>small{font-size:10px;color:var(--muted)}.position-note{font-size:12px;color:var(--muted);margin:14px 0}.map-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:12px 0}.map-metrics span{font-size:10px;text-align:center;padding:10px 4px;border:1px solid var(--line);border-radius:8px;color:var(--muted)}.map-metrics b{display:block;margin-bottom:6px;font-size:13px;color:var(--text)}.map-card-actions{display:flex;justify-content:space-between;gap:8px;margin-top:16px}.map-card-actions button{font-size:11px;padding:9px 12px}.fleet-map-panel{position:relative;min-width:0;display:flex;flex-direction:column}.fleet-map-panel #liveMap{height:auto;flex:1;border:0;border-radius:0;min-height:300px}#mapSelection{background:white;border-top:1px solid var(--line);padding:14px 18px;font-size:12px;color:var(--muted)}.vehicle-popup{padding:10px;max-width:260px;color:var(--text)}.vehicle-popup strong{font-size:18px}.vehicle-popup p{font-size:12px}.vehicle-popup button{padding:10px 16px}.playback-speed{font-size:11px;white-space:nowrap}.playback-speed select{width:70px;margin:4px 0 0;padding:5px}.playback-controls{flex-wrap:wrap}.playback-controls input[type=range]{flex:1;min-width:100px}.detail-panel .vehicle-tabs{position:sticky;top:0;background:white;z-index:1}.history-toolbar{flex-wrap:wrap}.history-toolbar input{max-width:190px}
@media(max-width:1050px) and (min-width:721px){.fleet-workspace{grid-template-columns:300px minmax(0,1fr)}.map-toolbar{flex-wrap:wrap}.map-card-status{align-items:start;flex-direction:column}.app{grid-template-columns:210px minmax(0,1fr)}}
@media(max-width:720px){.app.menu-collapsed{display:block}.menu-collapsed .sidebar{padding:10px 16px}.menu-collapsed .sidebar nav{display:none}.menu-collapsed .brand{margin:0}.menu-collapsed .logo-window{width:190px;height:80px}.menu-collapsed .logo-window img{width:250px;height:250px;left:-20px;top:-85px}.nav{justify-content:center;flex-direction:column;gap:4px}.nav-icon{margin:0;font-size:18px}.nav-text{font-size:10px}.map-toolbar{align-items:start;flex-wrap:wrap}.map-tools{flex-wrap:wrap;gap:8px}.map-tools button{font-size:11px;padding:10px}#mobileMapToggle{display:block}.fleet-workspace{display:block;height:auto;min-height:0}.map-list{border:0;max-height:70vh}.fleet-map-panel{display:none;height:65vh;min-height:380px}.mobile-show-map .map-list{display:none}.mobile-show-map .fleet-map-panel{display:flex}header{gap:8px;flex-wrap:wrap}header h2{font-size:21px}.header-actions{width:100%;justify-content:flex-end}.map-card-status{flex-direction:row}.map-vehicle>small{font-size:11px}.history-grid{display:block}}

#liveView{margin:0 24px 24px}@media(max-width:720px){#liveView{margin:0 12px 16px}}

.report-controls{display:flex;flex-wrap:wrap;gap:12px;align-items:end;margin:14px 0}.report-controls label{display:flex;flex-direction:column;gap:5px;min-width:150px}.report-controls input,.report-controls select{min-height:40px}.report-controls input[type=search]{min-width:240px}.report-controls.hidden{display:none}@media(max-width:640px){.report-controls>*{width:100%;min-width:0!important}}

#geoList .status-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px}#geoList .status-row span{flex:1 1 220px;min-width:0}#geofencesView .map-box{width:100%}#geoPoints{min-width:min(100%,320px)}@media(max-width:640px){#geofencesView .report-controls>*{width:100%;min-width:0!important}#geoList .status-row button{flex:1 1 auto}}

/* Live fleet refinements */
.badge.stale,.badge.unknown{background:#fff2d5;color:#875813}
.map-vehicle{border-radius:16px!important;box-shadow:0 3px 14px #132d3d08;transition:border-color .2s,box-shadow .2s}
.map-vehicle.selected{box-shadow:0 0 0 2px #0696a51c,0 8px 22px #132d3d0a}
.map-metrics{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.map-metrics>span{background:#f5f9fb;border:0!important;border-radius:10px;padding:10px 5px}
.map-metrics b{font-size:16px;color:#173d50}.reading-age{display:block;margin:12px 0;color:#58707d}
#mapUpdated{color:#16725d;font-weight:600}#mapSelection{font-weight:600;background:#f4fafb}
.select-map-vehicle strong{font-size:19px}.map-card-actions button{border-radius:10px}
#vehicleTelemetry{gap:12px}.telemetry-card{border-radius:14px;background:#fff;box-shadow:0 3px 16px #132d3d08}
@media(max-width:600px){.map-metrics b{font-size:14px}.map-vehicle{padding:14px!important}}

.live-context{padding:12px 16px;margin:0 0 10px;background:#f1f8fa;border:1px solid #d8e8ed;border-radius:12px}.live-context p{margin:4px 0 10px;line-height:1.5}.live-context button{margin:4px 8px 4px 0}

.document-panel{padding:24px 0}.document-form{display:flex;gap:16px;align-items:end;flex-wrap:wrap}.document-form label{flex:1;min-width:180px}.document-row{display:flex;align-items:center;gap:12px;padding:16px 0;border-bottom:1px solid #e2e8f0}.document-row span{flex:1;overflow-wrap:anywhere}dialog{border:1px solid #dce6ec;border-radius:18px;padding:28px;width:min(720px,94vw);max-height:90vh;overflow:auto}dialog::backdrop{background:#102c3c88}.user-row{display:flex;gap:10px;align-items:center;padding:12px 0;border-bottom:1px solid #dce6ec}.user-row span{flex:1}.model-profile{font-size:12px;color:#526979;line-height:1.6}.fuel-vehicle-setting{display:flex;align-items:center;gap:12px;padding:16px;background:#eef7f7;border-radius:12px;margin:16px 0}.fuel-vehicle-setting input{width:20px;height:20px}
@media(min-width:901px){.app,.app.sidebar-collapsed{grid-template-columns:72px minmax(0,1fr)!important}.sidebar{position:sticky;top:0;z-index:30;width:72px!important;height:100vh;min-height:100vh;padding:16px 8px!important;overflow:hidden;transition:width .18s ease;box-shadow:4px 0 18px #102c3c15}.sidebar:hover,.sidebar:focus-within{width:245px!important}.sidebar .nav{white-space:nowrap;display:flex;gap:12px;align-items:center;min-height:44px}.sidebar .nav-icon{display:inline-block!important;flex:0 0 24px;text-align:center}.sidebar:not(:hover):not(:focus-within) .nav-text,.sidebar:not(:hover):not(:focus-within) .portal-label,.sidebar:not(:hover):not(:focus-within) .sidebar-footer{visibility:hidden}.sidebar .brand{min-width:200px}.sidebar .brand img{max-width:200px}.sidebar:not(:hover):not(:focus-within) .brand{opacity:.65}.sidebar nav{display:grid!important;grid-template-columns:1fr!important}}
@media(max-width:900px){.sidebar{display:none!important}.mobile-menu-open .sidebar{display:flex!important;position:fixed;inset:0 auto 0 0;width:min(280px,80vw)!important;z-index:60;overflow-y:auto}.mobile-menu-open .sidebar nav{display:grid;grid-template-columns:1fr}.app{display:block!important}.document-row{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.sidebar{transition:none}}

.speed-report{padding:28px!important}.speed-heading,.speed-chart-heading{display:flex;justify-content:space-between;align-items:center;gap:16px}.speed-heading h3{font-size:26px;margin:8px 0}.speed-heading p{color:#607888}.speed-eyebrow{font-size:10px;font-weight:800;letter-spacing:1.5px;color:#00858b}.speed-tag{background:#e8f6f4;color:#007e80;padding:8px 12px;border-radius:20px;font-size:12px}.speed-filters{display:grid;grid-template-columns:1.2fr 1fr 1fr auto;gap:14px;align-items:end;margin:18px 0}.speed-filters label{margin:0;display:grid;gap:7px}.speed-filters label:last-child{grid-column:1/-1;max-width:420px}.speed-visuals{display:grid;grid-template-columns:280px minmax(0,1fr);gap:22px}.speed-instrument,.speed-chart{border:1px solid #e0e9ee;border-radius:16px;padding:22px;background:#fff}.speed-instrument{text-align:center;background:#f8fbfc}.speed-instrument p{font-size:12px;color:#607888}.speed-visuals svg{width:100%;display:block}.speed-visuals svg text{font:12px Segoe UI,Arial;fill:#657b89}.speed-visuals svg .gauge-value{font-size:32px;font-weight:700;fill:#173d4b}.speed-chart-heading span{font-size:12px;color:#00858b}.speed-empty{min-height:230px;display:grid;place-items:center;color:#748997}#speedScrub{padding:0;accent-color:#008f96;height:28px}#speedMessage{color:#617787;font-size:12px;margin:14px 0 22px}@media(max-width:1100px){.speed-visuals{grid-template-columns:1fr}.speed-instrument{max-width:360px;width:100%;justify-self:center}.speed-filters{grid-template-columns:1fr 1fr}}@media(max-width:600px){.speed-report{padding:16px!important;margin:0 12px 20px!important}.speed-filters{grid-template-columns:1fr}.speed-tag{display:none}.speed-chart{padding:12px}.speed-visuals{gap:12px}}

.trip-number{font-weight:800;color:#00878e}.trip-street{min-width:220px;max-width:320px;font-size:12px;white-space:normal!important}

.analytics-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:20px 0}.analytics-cards article{border:1px solid #dce8ec;border-top:3px solid #00999a;border-radius:14px;padding:22px;background:white}.analytics-cards strong{display:block;font-size:32px;margin-top:12px}.analytics-cards span{color:#58727f;font-size:13px}.analytics-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.analytics-grid article{padding:24px;border:1px solid #dce8ec;border-radius:16px;background:#fff;min-width:0}.analytics-grid h4{margin:0 0 18px}.analytics-grid svg{width:100%;font:12px Segoe UI;fill:#58727f}.report-controls textarea{min-height:90px;min-width:200px;max-width:100%;border:1px solid #ccdbe3;border-radius:8px;padding:10px;font:inherit}details{margin:20px 0}summary{cursor:pointer;font-weight:700;padding:12px 0}@media(max-width:700px){.analytics-grid{grid-template-columns:1fr}.analytics-cards{gap:8px}.analytics-cards article{padding:12px}.analytics-grid article{padding:16px}}

@media(min-width:901px){.sidebar{align-self:start!important;align-items:flex-start!important;overflow-y:auto!important;overflow-x:hidden!important}.sidebar nav{width:229px!important;align-self:flex-start!important}.sidebar .nav{width:229px!important;justify-content:flex-start!important;flex-direction:row!important}.sidebar .nav-icon{margin:0!important}.sidebar .brand{min-height:70px}.sidebar .sidebar-footer{padding-top:20px}}

@media(min-width:901px){.sidebar{scrollbar-width:thin;scrollbar-color:#31505f transparent}.sidebar:not(:hover):not(:focus-within) .logo-window{width:46px;height:58px}.sidebar:not(:hover):not(:focus-within) .logo-window img{width:210px;height:210px;left:-23px;top:-74px}.mobile-menu-open .sidebar{width:245px!important}.mobile-menu-open .sidebar .nav-text,.mobile-menu-open .sidebar .portal-label,.mobile-menu-open .sidebar .sidebar-footer{visibility:visible!important}}

@media(min-width:901px){.sidebar nav,.sidebar .nav{width:100%!important;min-width:0!important}.sidebar .nav{padding-left:12px!important;overflow:hidden}.sidebar .nav-text{flex-shrink:0}.sidebar .brand{width:100%;min-width:0!important;overflow:hidden}}
.speed-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:10px 0 14px}.speed-stats span{padding:9px 10px;border:1px solid #e0e9ee;border-radius:10px;background:#f8fbfc;color:#647b86;font-size:10px}.speed-stats b{display:block;color:#1d4652;font-size:17px;margin-bottom:2px}@media(max-width:700px){.speed-stats{grid-template-columns:repeat(2,1fr)}}
