/* Barra de «rumbo fijado» (journey-bar.js): abajo en todas las páginas mientras hay un viaje guardado */
.jbar { position: fixed; z-index: 1200; left: 50%; transform: translateX(-50%); bottom: max(10px, env(safe-area-inset-bottom)); width: min(760px, calc(100vw - 20px)); box-sizing: border-box;
  display: grid; grid-template-columns: auto 1fr; gap: 6px 10px; align-items: center; padding: 10px 12px; border-radius: 16px;
  background: var(--panel, #fff); color: var(--text, #111); border: 1px solid var(--line, #ccd); border-left: 5px solid var(--blue, #2563eb); box-shadow: 0 8px 28px var(--shadow, rgba(0,0,0,.2)); font: 14px/1.35 var(--sans, system-ui, sans-serif); }
.jbar.transfer { border-left-color: var(--amber, #d97706); }
.jbar.arrived { border-left-color: var(--green, #16a34a); }
.jbar.warn-at_risk { border-left-color: var(--amber, #d97706); }
.jbar.warn-missed { border-left-color: var(--red, #dc2626); }
.jbar.alight .jb-sub { color: var(--text); font-weight: 700; }
.jb-ico { font-size: 22px; line-height: 1; }
.jb-text { min-width: 0; }
.jb-st { display: grid; gap: 1px; }
.jb-title { font-size: 15px; overflow-wrap: anywhere; }
.jb-sub { color: var(--muted, #556); font-size: 13px; }
.jb-warn { font-size: 13px; font-weight: 700; margin-top: 2px; }
.jb-warn.at_risk { color: var(--amber, #b45309); } .jb-warn.missed { color: var(--red, #dc2626); }
.jb-stale { font-size: 12px; color: var(--faint, #889); }
.jb-disc { margin: 6px 0 0; font-size: 12.5px; color: var(--muted, #556); }
.jb-btns { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: 6px; justify-content: flex-end; align-items: center; }
.jb-btn { display: inline-flex; align-items: center; min-height: 36px; padding: 0 12px; border-radius: 10px; border: 1px solid var(--line, #ccd); background: var(--panel-2, #f3f4f8); color: var(--text, #111); font: 600 13px var(--sans, system-ui); text-decoration: none; cursor: pointer; }
.jb-btn.primary { background: var(--blue, #2563eb); border-color: var(--blue, #2563eb); color: var(--on-accent, #fff); }
.jb-btn.danger { color: var(--red, #dc2626); border-color: currentColor; }
.jb-info { color: var(--muted, #556); font-weight: 600; }
.jb-x { width: 36px; height: 36px; border-radius: 10px; border: 1px solid var(--line, #ccd); background: transparent; color: var(--muted, #556); font-size: 20px; line-height: 1; cursor: pointer; }
.jb-btn:hover, .jb-x:hover { border-color: var(--blue, #2563eb); }
@media (min-width: 720px) { .jbar { grid-template-columns: auto 1fr auto; } .jb-btns { grid-column: auto; } }
body.has-jbar { padding-bottom: 130px; }
@media (min-width: 761px) { body.has-jbar .fol-toasts { bottom: 150px; } }

/* Enlace «Viaje» / «Andén» en la cabecera del andén y del planificador */
.vj-nav { margin-left: auto; display: flex; gap: 6px; }
.vj-nav a { color: var(--muted); text-decoration: none; font-weight: 600; font-size: 14px; padding: 8px 10px; border-radius: 8px; }
.vj-nav a:hover { color: var(--blue); }
.vj-nav + .an-tools { margin-left: 4px; }
