.mobileNavBackdrop,.mobileNavClose,.mobileNavToggle{display:none}@media (max-width:900px){body.mobileNavLocked{overflow:hidden}.layout{display:block;min-height:100dvh}.sidebar{position:fixed;inset:0 auto 0 0;z-index:50;width:min(88vw,340px);height:100dvh;overflow-y:auto;overscroll-behavior:contain;padding:max(16px,env(safe-area-inset-top)) 16px max(20px,env(safe-area-inset-bottom));box-shadow:18px 0 50px rgba(15,23,42,.2);transform:translateX(-105%);transition:transform .2s ease}.sidebar.isOpen{transform:translateX(0)}.mobileNavBackdrop{position:fixed;inset:0;z-index:40;display:block;width:100%;height:100%;border:0;background:rgba(15,23,42,.52);opacity:0;pointer-events:none;transition:opacity .2s ease}.mobileNavBackdrop.isOpen{opacity:1;pointer-events:auto}.mobileNavClose,.mobileNavToggle{display:inline-flex;min-width:44px;min-height:44px;align-items:center;justify-content:center;border:1px solid #dbe3ee;border-radius:12px;background:#ffffff;color:#0f172a;cursor:pointer;font:inherit;font-weight:850}.mobileNavToggle{gap:7px;margin-right:auto;padding:0 13px}.mobileNavClose{flex:0 0 44px;padding:0}.topBarRight{position:sticky;top:0;z-index:30;justify-content:flex-end;gap:8px;padding:max(8px,env(safe-area-inset-top)) 12px 8px}.userChip{min-width:44px;min-height:44px;padding:4px}.userChipChevron,.userChipText{display:none}.headerLogoutBtn{min-height:44px;padding:0 12px}.content{box-sizing:border-box;width:auto;min-width:0;max-width:100%;padding:18px 16px max(28px,env(safe-area-inset-bottom))}.adminStatusNotice{margin:12px 16px 0}.adminPage,.adminPage>*,.card,.mainArea{min-width:0;max-width:100%}.adminPage{gap:18px}.cardHeader,.pageHeader,.sectionHeader{display:flex;flex-direction:column;align-items:stretch;gap:12px}.cardHeader>a,.cardHeader>button,.pageHeader>a,.pageHeader>button{width:100%}.pageTitle{font-size:clamp(26px,8vw,32px)}.pageSubtitle{font-size:14px}.card{padding:15px}.card:hover{transform:none}.dashboardStatsGrid,.menuStatsGrid,.reportSummaryGrid,.routeDetailStatsGrid,.routeStatsGrid,.staffStatsGrid,.stopRequestStatsGrid,.taskStatsGrid,.temperatureSummaryGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.formGrid,.menuReadGrid,.menuToggleGrid,.reportDetailsGrid,.routeDetailsGrid,.taskDetailsGrid{grid-template-columns:minmax(0,1fr)}.dashboardAlertsList .alertItem,.menuToolbar,.routeToolbar,.rowActions,.staffToolbar,.stopRequestFilters,.stopRequestToolbar,.taskToolbar,.topBar{display:flex;flex-direction:column;align-items:stretch;gap:10px}.menuToolbar>*,.routeToolbar>*,.rowActions>*,.staffToolbar>*,.stopRequestFilters>*,.stopRequestToolbar>*,.taskToolbar>*{width:100%}.dangerBtn,.primaryBtn,.secondaryBtn,input:not([type=checkbox]):not([type=radio]),select,textarea{min-height:44px;font-size:16px}input[type=checkbox],input[type=radio]{min-width:22px;min-height:22px}[draggable=true]{min-height:48px}[draggable=true] .material-symbols-rounded{font-size:26px}.leaflet-container,.routeMapFrame,.stopRequestMapFrame{max-width:100%;min-height:320px}table{font-size:13px}.dashboardChartScroll{box-sizing:border-box;width:100%;min-width:0;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin}.dashboardChartCanvas{min-width:600px}.fleetScroller{width:auto;min-width:0;max-width:calc(100% + 30px);margin-inline:-15px;padding-inline:15px;scroll-padding-inline:15px;scroll-snap-type:x mandatory;overscroll-behavior-x:contain}.fleetScroller .vehicleCard{width:min(82vw,320px);min-width:min(82vw,320px);max-width:min(82vw,320px);scroll-snap-align:start}}@media (max-width:520px){.content{padding-right:12px;padding-left:12px}.dashboardStatsGrid,.menuStatsGrid,.reportSummaryGrid,.routeDetailStatsGrid,.routeStatsGrid,.staffStatsGrid,.stopRequestStatsGrid,.taskStatsGrid,.temperatureSummaryGrid{grid-template-columns:minmax(0,1fr)}.dashboardStatsGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboardStatsGrid .statCard{min-width:0;padding:13px}.dashboardStatsGrid .statValue{font-size:clamp(24px,8vw,32px);overflow-wrap:anywhere}.dashboardChartCanvas{min-width:540px}.headerLogoutBtn{overflow:hidden;max-width:76px;text-overflow:ellipsis;white-space:nowrap}.adminLoadingCard{width:calc(100% - 24px);flex-wrap:wrap}.toastStack{right:12px;bottom:max(12px,env(safe-area-inset-bottom));left:12px;width:auto}.toast{grid-template-columns:auto minmax(0,1fr) auto}.toast>button:not(.toastDismiss){grid-column:2;justify-self:start}.confirmDialog{padding:18px}}@media (prefers-reduced-motion:reduce){.loadingSkeleton:after,.mobileNavBackdrop,.sidebar{transition:none;animation:none}}