/* Beitbridge crossing ledger on the Fleet Atlas: schematic, not GPS. */
.cfi-border-coach-map-pin {
  appearance:none;display:flex;align-items:center;gap:7px;min-height:37px;
  max-width:190px;padding:6px 10px 6px 7px;border:2px solid #fff8eb;
  border-radius:14px;background:linear-gradient(145deg,#123f42,#1b6262);
  box-shadow:0 7px 24px #13313b6b,0 0 0 2px #b5dac633;
  color:#fffdf6;cursor:pointer;white-space:nowrap;font:700 10px/1.2 Inter,Manrope,Arial,sans-serif;
  text-transform:uppercase;letter-spacing:.45px;isolation:isolate;
}
.cfi-border-coach-map-pin[data-source="reported"]{background:linear-gradient(140deg,#724722,#a7773b)}
.cfi-border-coach-map-pin[data-source="last-known"]{background:linear-gradient(140deg,#565e67,#7e8790)}
.cfi-border-coach-map-pin:hover{box-shadow:0 9px 30px #13313b88,0 0 0 3px #f5d7a0}
.cfi-border-coach-map-pin:focus-visible{outline:3px solid #f3b06b;outline-offset:4px}
.cfi-border-coach-map-pin .cfi-border-pin-count{width:26px;height:26px;display:grid;place-items:center;border-radius:9px;background:#e9c58e;color:#13383b;font-size:15px;line-height:1;font-weight:900}
.cfi-border-coach-map-pin .cfi-border-pin-copy{display:flex;flex-direction:column;gap:2px;text-align:left}
.cfi-border-coach-map-pin .cfi-border-pin-copy span{font-size:10px;letter-spacing:.5px}
.cfi-border-coach-map-pin .cfi-border-pin-copy small{font-size:8px;letter-spacing:1px;font-weight:700;color:#b7d8d2}
.cfi-border-coach-map-pin[data-source="reported"] .cfi-border-pin-copy small{color:#ffdfb2}
.cfi-border-coach-map-pin[data-source="last-known"] .cfi-border-pin-copy small{color:#eef2f4}
.cfi-border-coach-popup .maplibregl-popup-content{background:#fffdf7!important;color:#193e40;padding:0!important;border:1px solid #d6e1d9;border-radius:14px;overflow:hidden;box-shadow:0 16px 40px #123a3c3d}
.cfi-border-coach-popup .maplibregl-popup-tip{border-top-color:#fffdf7!important}
.cfi-border-coach-roster{padding:17px 16px 14px;font:12px/1.5 Inter,Manrope,Arial,sans-serif;color:#214448;max-height:390px;overflow:auto}
.cfi-border-coach-roster h3{font-weight:800;font-size:15px;margin:0 26px 5px 0;color:#103d42}
.cfi-border-coach-roster p{font-size:11px;margin:0 0 11px;color:#5b7775}
.cfi-border-coach-roster ul{list-style:none;padding:0;margin:0 0 12px;display:grid;gap:5px;max-height:190px;overflow:auto}
.cfi-border-coach-roster li{background:#f1f5f0;border:1px solid #e3ebe2;border-radius:8px;padding:7px 9px}
.cfi-border-coach-roster li b{display:block;font-size:11px;color:#183d42}
.cfi-border-coach-roster li small{display:block;color:#617871;font-size:10px;margin-top:1px}
.cfi-border-coach-roster li[data-last-known="true"]{border-style:dashed;background:#f6f1e8}
.cfi-border-coach-roster .cfi-border-roster-open{appearance:none;display:block;width:100%;border:0;border-radius:9px;background:#13484a;color:#fffdf7;font-weight:800;font-size:11px;padding:10px 12px;cursor:pointer;text-align:center}
.cfi-border-coach-roster .cfi-border-roster-open:hover{background:#1c6663}
.cfi-fallback-border-coach-marker{cursor:pointer;outline:none}
.cfi-fallback-border-coach-marker:focus-visible rect{stroke:#f7af69;stroke-width:3}
.cfi-fallback-border-coach-marker text{pointer-events:none;font-family:Inter,Manrope,Arial,sans-serif}
@media(max-width:640px){.cfi-border-coach-map-pin{max-width:145px;padding:5px 7px}.cfi-border-coach-roster{max-height:310px}}
