/* Live route planner. Layout comes from the DoorHi theme's .planner styles; this adds the live parts. */
.eddm-rt .rt-q-row { display: flex; gap: 8px; margin-top: 6px; }
.eddm-rt .rt-q-row input { flex: 1; min-width: 0; }
.eddm-rt .rt-msg { font-size: 15px; margin: 4px 0 0; color: #536058; min-height: 1.2em; }
.eddm-rt .rt-msg.is-bad { color: #A32020; font-weight: 600; }
.eddm-rt .rt-zips { font-size: 14px; margin: 4px 0 0; display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }
.eddm-rt .rt-chip { border: 1.5px solid #8C9A91; background: #fff; border-radius: 999px; padding: 4px 10px; font: 600 14px/1.2 inherit; cursor: pointer; min-height: 32px; }
.eddm-rt .rt-chip:hover { border-color: #A32020; color: #A32020; }
.eddm-rt .rt-tools { display: flex; gap: 14px; align-items: center; flex-wrap: wrap; font-size: 15px; margin: 4px 0 6px; }
.eddm-rt .rt-tools label { margin-left: auto; display: flex; gap: 6px; align-items: center; }
.eddm-rt .rt-tools select { padding: 6px 8px; font-size: 15px; }
.eddm-rt .rt-link { background: none; border: 0; padding: 6px 0; color: #2F6690; font: 700 15px inherit; text-decoration: underline; cursor: pointer; min-height: 36px; }
.eddm-rt .route-list { max-height: 420px; overflow-y: auto; }
.eddm-rt .route-list:empty { display: none; }
.eddm-rt .route-list li.is-hover { background: #FFF6D6; }
.eddm-rt .planner-total small { display: block; font-size: 15px; color: #FFD66B; font-weight: 700; margin-top: 6px; }
.eddm-rt .planner-total small:empty { display: none; }
.eddm-rt .rt-card { border: 1px solid #D5DDD7; border-radius: 8px; padding: 12px; margin: 14px 0; background: #fff; }
.eddm-rt .rt-card-pick { margin: 0 0 10px; font-size: 15px; }
.eddm-rt .rt-card-row { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.eddm-rt .rt-card-row label { font-size: 14px; font-weight: 700; display: flex; flex-direction: column; gap: 4px; }
.eddm-rt .rt-card-row select { padding: 9px; font-size: 16px; width: 100%; }
.eddm-rt .rt-order { gap: 10px; }
.eddm-rt .rt-order button[disabled] { opacity: .5; cursor: not-allowed; }
.eddm-rt .rt-src { font-size: 13px; color: #5B675F; margin-top: 10px; }
.eddm-rt .rt-map { height: 600px; min-height: 0; align-self: start; position: sticky; top: 16px; overflow: hidden; background: #F6F8F6; }
.eddm-rt .rt-map.rt-plain { border: 1px solid #DCE3DE; }
.eddm-rt .rt-map.rt-plain svg { display: block; }
@media (max-width: 860px) {
  .eddm-rt .rt-map { order: -1; position: static; height: 380px; }
}
@media (max-width: 760px) {
  .eddm-rt .rt-map { height: 340px; }
  .eddm-rt .rt-card-row { grid-template-columns: 1fr; }
  .eddm-rt .route-list { max-height: 320px; }
}
