.route-operations { padding: 16px 28px; border-bottom: 1px solid #edf0f5; background: #f8fafc; }
.route-operations-head { display: flex; align-items: center; justify-content: space-between; gap: 18px; }
.route-operations-head > div { display: grid; gap: 3px; }
.route-operations-head strong { font-size: 16px; color: var(--navy); }
.route-operations-head span { font-size: 13px; color: #61677a; }
.route-facility-toggle { appearance: none; border: 1px solid #cfd7e7; border-radius: 999px; background: #fff; color: var(--navy); font: inherit; font-size: 13px; font-weight: 800; padding: 9px 13px; cursor: pointer; white-space: nowrap; }
.route-facility-toggle > span { color: #1285d8; }
.route-facility-legend { display: flex; flex-wrap: wrap; gap: 10px 18px; margin-top: 13px; }
.route-facility-legend > span { display: flex; align-items: center; gap: 7px; font-size: 13px; font-weight: 700; color: #3f4659; }
.facility-key { display: inline-flex; align-items: center; justify-content: center; width: 26px; height: 26px; border-radius: 50%; color: #fff; font-size: 11px; font-style: normal; font-weight: 900; }
.facility-key.hydration { background: #1285d8; }.facility-key.support, .facility-key.medical { background: #e3312d; }.facility-key.signage { background: #8a28b6; }.facility-key.toilet, .facility-key.comfort { background: #195da5; }.facility-key.kilometre { background: #3f6312; }
@media (max-width: 650px) { .route-operations { padding: 15px 23px; }.route-operations-head { align-items: flex-start; }.route-operations-head span { line-height: 1.35; }.route-facility-toggle { padding: 8px 10px; }.route-facility-legend { gap: 9px 13px; }.route-facility-legend > span { font-size: 12px; } }
