/* Bus route finder — standalone so it is not blocked by older CSS parse issues */
.br-toolbar { display:block; margin:0 0 8px 0; overflow:auto; }
.br-toolbar-main { display:block; }
.br-toolbar-main table { margin:0; }
.br-near-me { display:inline-block; vertical-align:middle; }
.br-city-line { margin:4px 0 8px 0; color:#444; font-size:14px; }
.br-page { box-sizing:border-box; }
.br-search-row { margin:8px 0 12px 0; }
.br-search-label { display:block; font-weight:bold; margin:0 0 6px 0; }
.br-native-select { display:none !important; }
.br-picker { position:relative; max-width:640px; }
.br-picker-input {
  width:96%;
  max-width:620px;
  box-sizing:border-box;
  padding:8px 10px;
  border:1px solid #8aa3a3;
  border-radius:4px;
  font-size:15px;
  background:#fff;
}
.br-picker-list {
  position:absolute;
  z-index:50;
  top:100%;
  left:0;
  right:8px;
  max-height:240px;
  overflow:auto;
  background:#fff;
  border:1px solid #8aa3a3;
  box-shadow:0 4px 12px rgba(0,0,0,.18);
}
.br-picker-item {
  display:block;
  width:100%;
  text-align:left;
  border:0;
  border-bottom:1px solid #edf2f2;
  background:#fff;
  padding:8px 10px;
  cursor:pointer;
  font-size:13px;
  color:#222;
}
.br-picker-item:hover, .br-picker-item.is-selected { background:#e8f3f3; }
.br-picker-empty { padding:10px; color:#666; font-size:13px; background:#fff; }
.br-picker-hint { color:#b71c1c; font-size:13px; margin-top:6px; display:none; }
.br-hero { margin:8px 0 14px 0; }
.br-hero-badge {
  display:inline-block;
  background:#01646E;
  color:#fff;
  font-weight:bold;
  padding:4px 10px;
  border-radius:4px;
  margin-bottom:6px;
  font-size:16px;
}
.br-hero-title { font-size:20px; margin:4px 0 8px 0; font-weight:bold; line-height:1.3; }
.br-arrow { color:#01646E; padding:0 4px; }
.br-chips { margin:0 0 8px 0; }
.br-chip {
  display:inline-block;
  background:#eef5f5;
  border:1px solid #c5d6d6;
  border-radius:12px;
  padding:2px 8px;
  margin:0 6px 6px 0;
  font-size:12px;
  color:#333;
}
.br-timings { margin:4px 0; font-size:13px; }
.br-empty, .br-intro { line-height:1.45; }
.br-layout { display:block; }
.br-map-panel { margin:0 0 12px 0; }
.br-stops-panel { margin:0 0 12px 0; }
.br-stops-head { overflow:auto; margin-bottom:6px; }
.br-stops-head h2 { margin:0 8px 6px 0; font-size:16px; display:inline-block; }
.br-stop-filter { width:150px; padding:4px 6px; border:1px solid #8aa3a3; border-radius:4px; }
.br-stop-list {
  max-height:420px;
  overflow:auto;
  border:1px solid #d5e0e0;
  border-radius:4px;
  background:#fff;
}
.br-stop {
  display:block;
  overflow:auto;
  padding:8px 10px;
  border-bottom:1px solid #edf2f2;
  cursor:pointer;
  border-left:3px solid transparent;
  background:#fff;
}
.br-stop:hover { background:#f6fbfb; }
.br-stop.is-active { background:#e8f3f3; border-left-color:#01646E; }
.br-stop.is-deleted { opacity:.55; }
.br-stop-num {
  display:inline-block;
  min-width:22px;
  height:22px;
  line-height:22px;
  text-align:center;
  border-radius:12px;
  background:#d7e6e6;
  font-size:11px;
  font-weight:bold;
  color:#01646E;
  margin-right:8px;
  float:left;
}
.br-stop.is-start .br-stop-num { background:#2e7d32; color:#fff; }
.br-stop.is-end .br-stop-num { background:#c62828; color:#fff; }
.br-stop-body { display:block; overflow:hidden; }
.br-stop-title { color:#014b52; font-weight:600; text-decoration:none; }
.br-stop-title:hover { text-decoration:underline; }
.br-stop-flag {
  display:inline-block;
  margin-left:6px;
  font-size:11px;
  color:#666;
  font-weight:normal;
}
.br-map-frame {
  position:relative;
  border:1px solid #c5d6d6;
  border-radius:4px;
  overflow:hidden;
  background:#e8eeee;
  width:100%;
}
.br-map-canvas,
.br-map-static,
.br-map-static img {
  width:100% !important;
  height:320px !important;
  display:block;
  min-height:320px;
}
.br-map-toggle {
  position:absolute;
  right:10px;
  bottom:10px;
  z-index:5;
  padding:8px 12px;
  cursor:pointer;
  background:#01646E;
  color:#fff;
  border:0;
  border-radius:4px;
}
.br-alts { margin:8px 0 12px 0; }
.br-pill {
  display:inline-block;
  margin:0 8px 8px 0;
  padding:4px 10px;
  border:1px solid #01646E;
  border-radius:14px;
  color:#01646E;
  text-decoration:none;
  font-weight:bold;
}
.br-pill:hover { background:#e8f3f3; }
.br-stop-meta { display:block; font-size:12px; color:#355; margin-top:2px; line-height:1.35; }
.br-upcoming { margin:0 0 16px 0; border:1px solid #d5e0e0; background:#fff; }
.br-upcoming h3 { margin:0; padding:8px 10px; background:#01646E; color:#fff; font-size:16px; }
.br-upcoming-row { padding:8px 10px; border-bottom:1px solid #e6eeee; }
.br-upcoming-time { display:inline-block; min-width:52px; font-weight:bold; color:#01646E; margin-right:8px; }
.br-upcoming-note { display:inline-block; margin-left:8px; color:#555; font-size:12px; }
.br-ask h2 { margin:8px 0 4px 0; font-size:22px; color:#01646E; }
.br-ask-lead { margin:0 0 12px 0; color:#444; }
.br-near-cards { margin:0 0 12px 0; }
.br-near-card {
  display:block;
  width:100%;
  max-width:640px;
  box-sizing:border-box;
  text-align:left;
  margin:0 0 8px 0;
  padding:10px 12px;
  border:1px solid #c5d6d6;
  border-radius:6px;
  background:#fff;
  font-size:16px;
  color:#222;
}
button.br-near-card { cursor:pointer; }
.br-near-card span { display:block; color:#555; font-size:13px; font-weight:normal; }
.br-near-card.is-from { border-color:#01646E; background:#e8f3f3; }
.br-go { display:inline-block; margin-left:10px; font-size:14px; font-weight:bold; }
.br-loc-btn {
  display:inline-block;
  background:#01646E;
  color:#fff;
  border:0;
  border-radius:4px;
  padding:8px 14px;
  font-size:15px;
  font-weight:bold;
  text-decoration:none;
  cursor:pointer;
}
a.br-loc-btn:link, a.br-loc-btn:visited { color:#fff; }

@media (min-width: 800px) {
  .br-layout { overflow:auto; }
  .br-map-panel { float:right; width:48%; margin:0 0 12px 0; }
  .br-stops-panel { float:left; width:48%; }
  .br-map-canvas, .br-map-static, .br-map-static img { height:420px !important; min-height:420px; }
}
