.map-heading{display:flex;justify-content:space-between;align-items:center;gap:16px}.map-heading h2{font-size:24px}.map-heading a{color:#37674f;font-size:13px}.map-counts{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:8px;margin:20px 0}.map-metric{display:flex;flex-direction:column;align-items:flex-start;padding:13px 10px;background:#fffefa;border-top:3px solid #a8b6a1}.map-metric span{font-size:12px;white-space:nowrap}.map-metric strong{font-size:28px;font-weight:600}.map-metric small{font-size:11px;font-weight:400}.map-metric[aria-pressed=true]{outline:2px solid #41654b;background:#edf2e7}.map-metric.has-alert{border-top-color:#bd594b;color:#a13c32}.map-toolbar{display:flex;gap:10px;align-items:end;flex-wrap:wrap}.map-toolbar label{min-width:140px;flex:1}.map-toolbar .map-search{flex:2}.map-toolbar button{min-height:42px}.map-count-note{margin:8px 0 16px;font-size:12px}.map-count-note button{font-size:12px;padding:3px 8px}#map-sync{margin-top:10px;font-size:12px}.map-workspace{display:grid;grid-template-columns:minmax(0,1fr) 315px;gap:16px;align-items:start}.map-canvas-card{border:1px solid #d9e0d1;border-radius:14px;overflow:hidden;background:#fffefa;position:sticky;top:15px}.map-canvas-tools{display:flex;align-items:center;gap:12px;padding:10px 14px;font-size:11px;flex-wrap:wrap}.map-canvas-tools label{display:flex;align-items:center;gap:6px}.map-canvas-tools input,.check-row input{width:auto}.map-canvas-tools button{padding:4px 14px}#dispatch-map{height:570px;background:#eef1e6}.map-legend{display:flex;flex-wrap:wrap;gap:8px 16px;padding:12px;font-size:11px;color:#4f6656}.map-caption{padding:0 12px 12px;font-size:11px}.map-detail{padding:18px;min-height:360px}.map-detail h3{margin:12px 0}.map-detail dl{font-size:12px}.map-detail dt{color:#7b8679;margin-top:8px}.map-detail dd{margin:2px 0}.map-detail button{margin:10px 0;width:100%}.map-detail details{border-top:1px solid #e0e4d9;margin-top:18px;padding-top:13px;font-size:12px}.map-detail summary{cursor:pointer}.map-detail label{margin-top:9px}.map-detail .check-row{display:flex;align-items:center}.map-location-state{padding:10px;border-radius:8px;background:#edf1e5;font-size:12px;margin-top:15px}.map-location-state.warning{background:#fff1d7;color:#956c24}.map-timeline>div{display:flex;justify-content:space-between;border-left:2px solid #d1dbc8;padding:5px 0 5px 12px;font-size:12px}.map-timeline small{font-size:11px}.map-bottom{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}.map-bottom h3{margin:0 0 12px}.map-bottom h3 small{margin-left:8px}.map-order{display:block;width:100%;text-align:left;margin:8px 0;padding:12px}.map-order>div{display:flex;justify-content:space-between;gap:10px}.map-order p{margin:6px 0}.map-order.selected{background:#eef3e9;box-shadow:inset 3px 0 #386447}.map-order.alert-border{border-left:3px solid #c45448}.map-alert{border-left:3px solid #c45448;background:#fff4f0;border-radius:8px;padding:14px;margin-top:14px}.map-alert.amber{border-color:#bd902f;background:#fff8e8}.map-alert strong,.map-alert small{display:block;margin:8px 0}.map-alert strong{font-size:13px}.map-alert textarea{min-height:65px}.map-alert button{font-size:12px;margin-top:6px}.map-no-alert{padding:35px 0;text-align:center}.map-settings{margin-top:18px}.map-settings summary{cursor:pointer}.map-settings p{margin-top:12px}.service-map-pin{position:absolute;white-space:nowrap;font-size:11px;line-height:1.3;box-shadow:0 2px 6px #193e2525;border-radius:6px;padding:5px 7px}.community-pin{background:#fffef7dc;color:#496353;border:1px solid #91ab8c}.teacher-pin{background:#28523e;color:white;border:2px solid white;z-index:10;font-weight:700;padding:9px 12px}.teacher-pin.area{background:#d9b969;color:#442f0a}.teacher-pin.city{background:#161917;color:#f4d790;border-color:#d6b671}.teacher-pin.stale{background:#686f6a;color:white;border-color:#b7beb9}.teacher-pin.red-ring{box-shadow:0 0 0 4px #ce5145,0 4px 12px #0004}.destination-pin{background:#e9f0fc;border:2px solid #4478ad;color:#285381;z-index:8}@media(max-width:1250px){.map-counts{grid-template-columns:repeat(4,minmax(0,1fr))}.map-workspace{grid-template-columns:minmax(0,1fr) 280px}#dispatch-map{height:520px}}@media(max-width:850px){.map-workspace,.map-bottom{grid-template-columns:1fr}.map-canvas-card{position:relative;top:0}.map-heading{align-items:start;flex-direction:column}#dispatch-map{height:440px}.map-counts{grid-template-columns:repeat(2,minmax(0,1fr))}}
.community-pin.compact{width:12px;height:12px;padding:0;border-radius:50%;background:#c1d2a7;border:2px solid #55705a}.community-pin.compact>span{display:none}.map-detail{overflow-wrap:anywhere;min-width:0}.map-timeline small{text-align:right}.map-settings form input{max-width:250px}

/* Map workspace: scoped to this panel so other company screens keep their theme. */
body.dispatch-map-mode{color-scheme:dark;--ink:#e0edf7;--muted:#9aafc1;--line:#273e53;--green:#83dce5;--bg:#09121e;background:radial-gradient(ellipse at 75% 0,#113047 0,transparent 48%),#09121e;color:var(--ink)}
.dispatch-map-mode main{max-width:2100px;padding:28px 30px 40px}
.dispatch-map-mode header{margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #24384c}
.dispatch-map-mode header h1{font-size:23px;letter-spacing:2px;margin:3px 0}
.dispatch-map-mode header .eyebrow,.dispatch-map-mode header p{display:none}
.dispatch-map-mode .eyebrow{color:#7fa9be;letter-spacing:2.5px}
.dispatch-map-mode .sidebar{background:linear-gradient(180deg,#102132,#0a1726);border-right:1px solid #263e52}
.dispatch-map-mode .sidebar .brand{color:#e0eee9}.dispatch-map-mode .brand-note{color:#a0bcc9;opacity:1}
.dispatch-map-mode .sidebar-bottom{color:#819daf}.dispatch-map-mode .sidebar button.nav{color:#adbfce}
.dispatch-map-mode .sidebar button.nav:hover{background:#193348;color:#e2faff}
.dispatch-map-mode .sidebar button.nav.active{background:linear-gradient(90deg,#164252,#142c40);color:#9bf3f2;box-shadow:inset 3px 0 #5ce1e1;border-radius:4px 9px 9px 4px}
.dispatch-map-mode button{background:#142a3c;border-color:#35546a;color:#c5e5ed;transition:background .15s,border-color .15s}
.dispatch-map-mode button:hover{background:#1c3a4f;border-color:#68bac8}
.dispatch-map-mode button:focus-visible,.dispatch-map-mode input:focus-visible,.dispatch-map-mode select:focus-visible,.dispatch-map-mode textarea:focus-visible,.dispatch-map-mode summary:focus-visible{outline:2px solid #66e5ec;outline-offset:3px}
.dispatch-map-mode .primary{background:#206779;color:#fff;border-color:#479baa}.dispatch-map-mode .primary:hover{background:#297f92}
.dispatch-map-mode .pill,.dispatch-map-mode .tag{background:#163549;color:#a4d9e5;border:1px solid #2c5369}
.dispatch-map-mode input,.dispatch-map-mode select,.dispatch-map-mode textarea{background:#0b1b2a;border-color:#355067;color:#e2edf5;accent-color:#55d4db}
.dispatch-map-mode input::placeholder,.dispatch-map-mode textarea::placeholder{color:#7f99ad}
.dispatch-map-mode #message:not(:empty){color:#ffe2a0;background:#352d1e;border-color:#806a3d}
.dispatch-map-mode .management-tabs .active{background:#194c5a;border-color:#58cad3;color:#b5ffff}
.dispatch-map-panel .map-heading{padding:3px 0 0;gap:20px}
.dispatch-map-panel .map-heading h2{display:flex;align-items:center;gap:14px;font-size:29px;letter-spacing:1px;margin:4px 0 9px!important}
.map-heading-label{font-size:11px;letter-spacing:1px;font-weight:500;color:#86d8dd;border:1px solid #315967;background:#15343c;padding:3px 9px;border-radius:4px}
.dispatch-map-panel .map-heading a{color:#9dc8d8;text-decoration:none;border-bottom:1px solid #3a6479;padding-bottom:5px;white-space:nowrap}
.dispatch-map-panel .map-heading a span{margin-left:15px;color:#7ce2e8}
.dispatch-map-panel .map-counts{gap:9px;margin:18px 0 16px;grid-template-columns:repeat(9,minmax(0,1fr))}
.dispatch-map-panel .map-metric{min-width:0;position:relative;overflow:hidden;padding:14px 11px 12px;border:1px solid #2a455b;border-radius:8px;background:linear-gradient(135deg,#152b3e,#101e2e);text-align:left;gap:7px}
.dispatch-map-panel .map-metric:hover{background:#1b3548;border-color:#6aa2b7}
.map-metric-top{display:flex;align-items:center;justify-content:space-between;gap:5px;width:100%;color:#aec3d1}
.dispatch-map-panel .map-metric-top>span:first-child{font-size:11px;white-space:normal;min-height:18px}
.dispatch-map-panel .map-metric .map-metric-index{color:#64899e;font:10px/1.3 ui-monospace,Consolas,monospace}
.dispatch-map-panel .map-metric strong{color:#ecfaff;font:500 34px/1.1 ui-monospace,Consolas,monospace;letter-spacing:-1px;font-variant-numeric:tabular-nums}
.dispatch-map-panel .map-metric small{font:11px system-ui;color:#8ca7ba;letter-spacing:0}
.map-metric-accent{width:25px;height:2px;background:#4cb7c6;margin-top:5px}
.dispatch-map-panel .map-metric[aria-pressed=true]{outline:0;border-color:#69dae1;box-shadow:inset 0 0 20px #2d8a991a,0 0 0 1px #69dae12b;background:#183948}
.dispatch-map-panel .map-metric[aria-pressed=true] .map-metric-top{color:#b2f9fb}
.dispatch-map-panel .map-metric.has-alert{background:linear-gradient(135deg,#402837,#211c2b);border-color:#a25161}
.dispatch-map-panel .map-metric.has-alert strong,.dispatch-map-panel .map-metric.has-alert .map-metric-top{color:#ffb6bf}
.dispatch-map-panel .map-metric.has-alert .map-metric-accent{background:#ff8196}
.dispatch-map-panel .map-toolbar{padding:17px 18px;background:#112335;border:1px solid #2b4358;border-radius:10px;gap:12px}
.dispatch-map-panel .map-toolbar label{font-size:11px;color:#a3bbcc;min-width:130px}
.dispatch-map-panel .map-toolbar .map-search{min-width:190px}
.dispatch-map-panel .map-toolbar input,.dispatch-map-panel .map-toolbar select{font-size:13px;min-height:41px}
.dispatch-map-panel #map-refresh{background:#205566;border-color:#4296a7;color:#e2feff}
.dispatch-map-panel #map-sync{color:#9bc0d0;font-size:11px;line-height:1.8;letter-spacing:.2px;margin:12px 0 5px;padding-left:13px;border-left:2px solid #439dad}
.dispatch-map-panel .map-count-note{font-size:11px;color:#8ca6ba;line-height:1.9;margin-bottom:18px}
.dispatch-map-panel .map-count-note button{padding:2px 8px;font-size:11px;border-radius:4px}
.dispatch-map-panel .map-workspace{grid-template-columns:minmax(0,1fr) 310px;gap:16px;align-items:start}
.dispatch-map-panel .map-canvas-card,.map-detail-shell{background:#101f30;border:1px solid #315167;border-radius:12px;box-shadow:0 8px 26px #0003;overflow:hidden}
.dispatch-map-panel .map-canvas-card{top:16px}
.map-section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px 14px;border-bottom:1px solid #2a4257;background:linear-gradient(110deg,#153246,#112234)}
.map-section-kicker{display:block;color:#7cabbf;font:10px/1.6 ui-monospace,Consolas,monospace;letter-spacing:1.7px}
.map-section-title h3{font-size:17px;font-weight:600;letter-spacing:1px;margin:3px 0 0}
.map-section-chip{color:#83cdd9;font-size:10px;white-space:nowrap;border:1px solid #355e73;padding:3px 7px;border-radius:4px}
.dispatch-map-panel .map-canvas-tools{background:#12263a;gap:12px;padding:10px 16px;border-bottom:1px solid #314d60;color:#b2cbd8}
.dispatch-map-panel .map-canvas-tools label{font-size:11px}.dispatch-map-panel .map-canvas-tools button{font-size:11px;padding:4px 12px}
.dispatch-map-panel #map-provider-state{margin-left:auto;color:#99bacb;font-size:10px}
.dispatch-map-panel #dispatch-map{height:580px;background:#dce7ec;color-scheme:light;color:#233b31}
.dispatch-map-panel .map-legend{padding:14px 16px 8px;gap:10px 18px;color:#bed0df;background:#101f30}
.map-legend>span{display:inline-flex;align-items:center;gap:6px}
.legend-dot{width:9px;height:9px;display:inline-block;border-radius:50%;border:1px solid #92b5ba;background:#287d5b}
.legend-dot.area{background:#d9b969;border-color:#f1d991}.legend-dot.city{background:#13191e;border-color:#dfbd73}.legend-dot.alert{background:transparent;border:2px solid #ff7b88;border-radius:2px}.legend-dot.stale{background:#7f8c95;border-color:#a7b1b7}
.legend-line{display:inline-block;width:16px;height:3px;background:#50b39a;border-radius:2px}
.dispatch-map-panel .map-caption{padding:2px 16px 16px;font-size:11px;line-height:1.8;color:#8ca6ba}
.dispatch-map-panel .map-detail{padding:19px;min-height:490px;background:linear-gradient(180deg,#12273a,#101f30)}
.map-detail-empty{text-align:center;padding:56px 0 25px}.map-detail-empty h4{font-size:15px;font-weight:500;letter-spacing:1px;margin:24px 0 10px}.map-detail-empty p{font-size:12px;line-height:2;color:#8daabd}
.map-target{position:relative;margin:auto;width:98px;height:98px;border:1px solid #376174;border-radius:50%;background:radial-gradient(circle,#53dae319 0,transparent 65%)}
.map-target:before,.map-target:after{content:'';position:absolute;background:#39667b}.map-target:before{width:1px;height:122px;left:48px;top:-13px}.map-target:after{height:1px;width:122px;top:48px;left:-13px}
.map-target span{position:absolute;inset:22px;border:1px solid #478498;border-radius:50%;z-index:1}.map-target span:after{content:'';position:absolute;inset:19px;border-radius:50%;background:#6bdde1;box-shadow:0 0 14px #73ecea55}
.map-empty-steps{font-size:11px;color:#739bad;margin-top:32px}.map-empty-steps span{margin:0 9px;color:#38586f}
.dispatch-map-panel .map-detail h3{color:#f2f9ff;font-size:23px;letter-spacing:1px}
.dispatch-map-panel .map-detail dt{color:#88a6bc;font-size:11px}.dispatch-map-panel .map-detail dd{font-size:12px;color:#c9dce8;font-variant-numeric:tabular-nums}
.dispatch-map-panel .map-location-state{background:#173344;border:1px solid #305267;color:#bfe2e8;font-size:12px;line-height:1.8;padding:12px}
.dispatch-map-panel .map-location-state p{color:#9ebfce;font-size:11px;margin-top:5px}.dispatch-map-panel .map-location-state.warning{background:#382d20;border-color:#77633f;color:#f1cd8e}
.dispatch-map-panel .map-timeline{margin:18px 0}.dispatch-map-panel .map-timeline>div{border-color:#3d7d8c;padding:7px 0 7px 13px;gap:12px}.dispatch-map-panel .map-timeline small{color:#92b2c4}
.dispatch-map-panel .map-detail details{border-color:#2c465b}.dispatch-map-panel .map-detail summary{color:#acccd9}
.dispatch-map-panel .map-bottom{gap:16px}.dispatch-map-panel .card{background:#102234;border-color:#2a465b;box-shadow:0 6px 18px #0002}
.dispatch-map-panel .map-bottom h3{font-size:17px;letter-spacing:.5px;margin:6px 0 18px}.dispatch-map-panel .map-bottom h3 small{font-size:11px;background:#1c3a4d;border:1px solid #34566a;border-radius:5px;padding:3px 7px;color:#99d2dd}
.dispatch-map-panel .map-order{padding:15px;background:#142b3d;border-color:#2c4a5f;border-radius:8px;margin:10px 0}.dispatch-map-panel .map-order:hover{background:#1b374a;border-color:#5d9daf}
.dispatch-map-panel .map-order strong{color:#dfeef7}.dispatch-map-panel .map-order small{font-size:11px;color:#a6bed0}.dispatch-map-panel .map-order p{font-size:12px;color:#9bb8ca}
.dispatch-map-panel .map-order.selected{background:#183d4b;border-color:#50bdcc;box-shadow:inset 3px 0 #70e2e6}.dispatch-map-panel .map-order.alert-border{border-left-color:#fb8995}
.dispatch-map-panel .tag.confirmed,.dispatch-map-panel .tag.teaching{background:#163b3f;color:#9adbc5;border-color:#386457}.dispatch-map-panel .tag.pending,.dispatch-map-panel .tag.awaiting_report{background:#3b3423;color:#eed393;border-color:#6e6040}
.dispatch-map-panel .map-alert{background:#312531;border:1px solid #654252;border-left:3px solid #f18596;color:#eac0ca}.dispatch-map-panel .map-alert.amber{background:#332d24;border-color:#796440;border-left-color:#e6b761;color:#efd59e}
.dispatch-map-panel .map-alert small{color:#b6a9b6}.dispatch-map-panel .map-alert label{color:#d4bdc8}.dispatch-map-panel .map-alert.amber label{color:#d9c9a6}.dispatch-map-panel .map-alert textarea{background:#101e2e}
.dispatch-map-panel .map-no-alert{padding:50px 0;color:#92b9c9}.dispatch-map-panel .map-no-alert:before{content:'✓';display:block;margin:0 auto 12px;border:1px solid #3b6470;border-radius:50%;width:34px;height:34px;font-size:18px;line-height:34px;color:#7cc6bd}
.dispatch-map-panel .map-settings{padding:18px 22px}.dispatch-map-panel .map-settings summary{font-size:13px;color:#bad8e3}.dispatch-map-panel .map-settings p{font-size:12px}
.dispatch-map-panel .service-map-pin{color-scheme:light}.dispatch-map-panel .community-pin{background:#f8fcffeb;color:#31566a;border-color:#83aaba;box-shadow:0 2px 7px #102c4226}.dispatch-map-panel .community-pin:hover{background:#e3f3fa;border-color:#4384a1}
.dispatch-map-panel .community-pin.compact{background:#b6d7e1;border:2px solid #466f85}
.dispatch-map-panel .teacher-pin{background:#285b47;border:2px solid white;color:#fff}.dispatch-map-panel .teacher-pin.area{background:#d9b969;color:#442f0a}.dispatch-map-panel .teacher-pin.city{background:#161917;color:#f4d790;border-color:#d6b671}.dispatch-map-panel .teacher-pin.stale{background:#686f6a;color:white;border-color:#b7beb9}.dispatch-map-panel .teacher-pin.red-ring{box-shadow:0 0 0 4px #ce5145,0 4px 12px #0004}
.dispatch-map-panel .destination-pin{background:#e9f0fc;border:2px solid #4478ad;color:#285381}
@media(min-width:1700px){.dispatch-map-panel .map-workspace{grid-template-columns:minmax(0,1fr) 360px}.dispatch-map-panel #dispatch-map{height:650px}.dispatch-map-panel .map-metric{padding:17px}.dispatch-map-panel .map-metric-top>span:first-child{font-size:12px}}
@media(max-width:1400px){.dispatch-map-mode .sidebar{width:180px;padding:28px 15px}.dispatch-map-mode .sidebar button.nav{font-size:13px;padding:13px 8px;white-space:nowrap}.dispatch-map-mode main{margin-left:180px;padding:24px}.dispatch-map-panel .map-workspace{grid-template-columns:minmax(0,1fr) 280px}.dispatch-map-panel .map-metric-index{display:none}.dispatch-map-panel .map-metric{padding:12px 8px}.dispatch-map-panel .map-metric strong{font-size:29px}.dispatch-map-panel .map-metric-top>span:first-child{min-height:18px}.dispatch-map-panel #dispatch-map{height:560px}}
@media(max-width:1100px){.dispatch-map-panel .map-counts{grid-template-columns:repeat(3,minmax(0,1fr))}.dispatch-map-panel .map-metric{padding:12px 15px}.dispatch-map-panel .map-metric-top>span:first-child{min-height:auto}.dispatch-map-panel .map-metric-index{display:inline}.dispatch-map-panel .map-workspace{grid-template-columns:minmax(0,1fr) 260px}.dispatch-map-panel .map-heading h2{font-size:25px}.map-heading-label{display:none}.dispatch-map-panel .map-heading{flex-wrap:wrap}}
@media(max-width:850px){.dispatch-map-panel .map-workspace,.dispatch-map-panel .map-bottom{grid-template-columns:1fr}.dispatch-map-panel .map-canvas-card{position:relative;top:0}.dispatch-map-panel .map-detail{min-height:0}.map-detail-empty{padding:30px 0}.dispatch-map-panel #dispatch-map{height:460px}}
@media(max-width:800px){.dispatch-map-mode main{margin:0;padding:20px 16px}.dispatch-map-mode header{margin-bottom:20px;gap:12px}.dispatch-map-mode header h1{font-size:23px}.dispatch-map-panel .map-heading{gap:12px}.dispatch-map-panel .map-heading h2{font-size:25px}.dispatch-map-panel .map-counts{gap:7px}.dispatch-map-panel .map-metric strong{font-size:29px}.dispatch-map-panel .map-toolbar{padding:13px;gap:12px}.dispatch-map-panel .map-toolbar label{min-width:calc(50% - 12px)}.dispatch-map-panel .map-toolbar .map-search{min-width:100%}.dispatch-map-panel .map-toolbar button{flex:1;font-size:12px}.map-section-title{padding:14px}.dispatch-map-panel .map-canvas-tools{padding:10px 12px;gap:8px}.dispatch-map-panel #map-provider-state{margin-left:0}.dispatch-map-panel .map-bottom .card{padding:17px}.dispatch-map-panel .map-metric-index{display:none}.dispatch-map-panel .map-metric{padding:12px 10px}.dispatch-map-panel .map-legend{gap:10px 14px}.dispatch-map-panel .map-order>div{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.dispatch-map-mode button{transition:none}}
/* Keep sidebar gold in map mode as well. */
.dispatch-map-mode .sidebar .brand{color:#ead5a0}.dispatch-map-mode .brand-note{color:#c7ad76}.dispatch-map-mode .sidebar-bottom{color:#cbb783}.dispatch-map-mode .sidebar button.nav{color:#dfc58d}.dispatch-map-mode .sidebar button.nav:hover{background:#253643;color:#f1dcaa}.dispatch-map-mode .sidebar button.nav.active{background:linear-gradient(90deg,#344038,#1a2e39);color:#f4dfa9;box-shadow:inset 3px 0 #c8a76a}.dispatch-map-mode .sidebar button.nav:focus-visible{outline-color:#e0c48b}