/* VHD Kutná Hora – polohy vozidel na mapách (vhd-pid-odjezdy, vozidla.js). Značka s číslem linky a šipkou ve směru
   jízdy, barva podle zpoždění jako na mapa.pid.cz (0.3.7): podklad #d2d70f / #f2b81e / #ff6745, číslo autobusu černě,
   vlaku tmavomodře (rgb(30,40,100) jako tam), bez známého zpoždění šedá. */
.leaflet-marker-icon.vhd-vozidlo-holder { border: 0; background: none; }
.vhd-vozidlo { --vozidlo-bg: #c3c9cf; --vozidlo-fg: #1f2328; position: relative; display: flex; align-items: center; justify-content: center; width: 34px; height: 34px; cursor: pointer; }
.vhd-vozidlo.is-ok { --vozidlo-bg: #d2d70f; }
.vhd-vozidlo.is-warn { --vozidlo-bg: #f2b81e; }
.vhd-vozidlo.is-bad { --vozidlo-bg: #ff6745; }
.vhd-vozidlo.is-early { --vozidlo-bg: #a678de; }
.vhd-vozidlo-train { --vozidlo-fg: rgb(30, 40, 100); }
.vhd-vozidlo-line { position: relative; z-index: 2; display: inline-flex; align-items: center; justify-content: center; min-width: 27px; height: 23px; padding: 0 4px; border: 2px solid #fff; border-radius: 12px; background: var(--vozidlo-bg); color: var(--vozidlo-fg); font: 700 11px/1 system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif; letter-spacing: -.2px; white-space: nowrap; box-shadow: 0 1px 4px rgba(0, 0, 0, .45); }
.vhd-vozidlo-train .vhd-vozidlo-line { border-radius: 4px; }
.vhd-vozidlo-arrow { position: absolute; inset: 0; z-index: 1; transition: transform .3s linear; }
.vhd-vozidlo-arrow::before { content: ""; position: absolute; top: -3px; left: 50%; margin-left: -7px; border: 7px solid transparent; border-top: 0; border-bottom: 10px solid var(--vozidlo-bg); filter: drop-shadow(0 -1px 0 #fff) drop-shadow(0 0 1px rgba(0, 0, 0, .5)); }
/* 0.4.28: no report for a while – full colour with a grey dashed ring (faint now means only „has not left yet“). */
.vhd-vozidlo.is-stale .vhd-vozidlo-line { outline: 2px dashed #7d8794; outline-offset: 1px; }
/* Card beside the selected vehicle (0.3.4): line and destination, state, next stops, a small table, age of the report. */
.leaflet-tooltip.vhd-vozidlo-card { width: min(250px, calc(100vw - 150px)); padding: 10px 12px 9px; border: 0; border-radius: 8px; background: #fff; box-shadow: 0 3px 14px rgba(0, 0, 0, .3); white-space: normal; cursor: auto; }
.vhd-vozidlo-dock { margin: 8px 0 0; padding: 10px 12px 9px; border: 1px solid var(--vhd-home-border, #dce2e8); border-radius: 6px; background: #fff; box-shadow: 0 1px 4px rgba(0, 0, 0, .08); }
.vhd-vozidlo-dock[hidden] { display: none; }
.vhd-vozidlo-popup { position: relative; color: #27303c; font-size: 13px; line-height: 1.4; }
.vhd-vozidlo-popup button.vhd-vozidlo-close { position: absolute; top: -6px; right: -8px; width: 28px; height: 28px; min-height: 0; margin: 0; padding: 0; border: 0; border-radius: 50%; background: none; box-shadow: none; color: #65707e; font: 400 20px/28px Arial, sans-serif; cursor: pointer; }
.vhd-vozidlo-popup button.vhd-vozidlo-close:hover { background: #eef1f4; color: #202733; }
.vhd-vozidlo-popup button.vhd-vozidlo-close:focus-visible { outline: 2px solid #236fa2; outline-offset: 1px; }
/* Selected: a dark blue ring, so it does not mix with the delay colours. */
.vhd-vozidlo.is-selected .vhd-vozidlo-line { box-shadow: 0 0 0 2px #fff, 0 0 0 4px #1d4f91, 0 1px 6px rgba(0, 0, 0, .5); }
.vhd-vozidlo-head { display: flex; align-items: flex-start; gap: 8px; margin: 0 20px 7px 0; }
.vhd-vozidlo-head .vhd-home-line { flex: none; min-width: 36px; min-height: 24px; font-size: 12.5px; }
.vhd-vozidlo-head strong { padding-top: 2px; color: var(--vhd-home-ink, #202733); font-size: 14px; font-weight: 650; line-height: 1.3; }
.vhd-vozidlo-popup p.vhd-vozidlo-state { display: inline-block; margin: 0 0 7px; padding: 2px 7px; border-radius: 10px; font-size: 12.5px; font-weight: 600; line-height: 1.35; }
/* Delay colours of mapa.pid.cz, as backgrounds with black text like there (band() in vozidla.js). */
:is(.vhd-vozidlo-state, .vhd-vozidlo-chip).is-ok { background: #d2d70f; color: #1f2328; }
:is(.vhd-vozidlo-state, .vhd-vozidlo-chip).is-warn { background: #f2b81e; color: #1f2328; }
:is(.vhd-vozidlo-state, .vhd-vozidlo-chip).is-bad { background: #ff6745; color: #1f2328; }
:is(.vhd-vozidlo-state, .vhd-vozidlo-chip).is-early { background: #a678de; color: #1f2328; }
:is(.vhd-vozidlo-state, .vhd-vozidlo-chip).is-other { background: #edf0f3; color: #3c4653; }
.vhd-vozidlo-chip { display: inline-block; padding: 0 5px; border-radius: 4px; font-variant-numeric: tabular-nums; line-height: 1.45; }
.vhd-vozidla-list .vhd-vozidlo-chip { font-size: 12.5px; font-weight: 600; white-space: nowrap; }
.vhd-vozidlo-popup p.vhd-vozidlo-label { margin: 0 0 2px; color: var(--vhd-home-muted, #65707e); font-size: 12px; }
.vhd-vozidlo-next { margin: 0 0 8px; padding: 0; list-style: none; }
.vhd-vozidlo-next li { display: grid; grid-template-columns: 46px minmax(0, 1fr); gap: 0 8px; align-items: baseline; padding: 2px 0; font-size: 13px; line-height: 1.35; }
.vhd-vozidlo-next.is-late li { grid-template-columns: 84px minmax(0, 1fr); }
.vhd-vozidlo-next li:first-child { font-weight: 600; }
.vhd-vozidlo-when { display: flex; align-items: baseline; gap: 5px; white-space: nowrap; font-variant-numeric: tabular-nums; }
.vhd-vozidlo-next s { color: var(--vhd-home-muted, #65707e); font-size: 11.5px; font-weight: 400; }
.vhd-vozidlo-facts { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 3px 10px; margin: 0; }
.vhd-vozidlo-facts dt { color: var(--vhd-home-muted, #65707e); font-size: 12px; line-height: 1.45; white-space: nowrap; }
.vhd-vozidlo-facts dd { margin: 0; font-size: 13px; line-height: 1.4; overflow-wrap: anywhere; }
.vhd-vozidlo-times { display: block; color: var(--vhd-home-muted, #65707e); font-size: 12px; }
.vhd-vozidlo-popup p.vhd-vozidlo-age { margin: 7px 0 0; padding-top: 6px; border-top: 1px solid #e8ecef; color: var(--vhd-home-muted, #65707e); font-size: 11.5px; line-height: 1.35; }
.vhd-vozidlo-popup p { margin-top: 0; }
.vhd-vozidla-status { margin: 0 0 6px 6px !important; padding: 3px 7px; border-radius: 3px; background: rgba(255, 255, 255, .92); box-shadow: 0 1px 3px rgba(0, 0, 0, .25); color: #27303c; font-size: 12px; line-height: 1.35; pointer-events: none; }
.vhd-vozidla-status:empty { display: none; }
/* Online mapy: [vhd_vozidla] */
/* The site sizes every svg to 24 px (core.css); Leaflet draws routes in an svg as large as the map. */
.vhd-vozidla .leaflet-pane > svg, .leaflet-vhdVozidlaTrasa-pane > svg { width: auto; height: auto; max-width: none; max-height: none; }
.vhd-vozidla .leaflet-control-attribution { font: 10px/1.45 Arial, sans-serif; padding: 2px 5px; }
.vhd-vozidla .leaflet-control-attribution a { color: #45505a; text-decoration: underline; }
.vhd-vozidla { margin: 0 0 22px; }
.vhd-vozidla-canvas { width: 100%; height: min(70vh, 560px); min-height: 340px; border: 1px solid var(--vhd-home-border, #dce2e8); border-radius: 5px; background: #e8ecef; }
.vhd-vozidla-filter { display: flex; flex-wrap: wrap; gap: 6px; margin: 0 0 8px; }
.vhd-vozidla-filter button { min-height: 32px; margin: 0; padding: 5px 12px; border: 1px solid #c9d1d9; border-radius: 16px; background: #fff; box-shadow: none; color: #27303c; font: inherit; font-size: 13.5px; line-height: 1.3; cursor: pointer; }
.vhd-vozidla-filter button[aria-pressed="true"] { border-color: #202733; background: #202733; color: #fff; }
.vhd-vozidla-filter button:focus-visible { outline: 2px solid #236fa2; outline-offset: 2px; }
.vhd-vozidla-wanted { margin: 8px 0 0; padding: 7px 10px; border: 1px solid var(--vhd-home-amber-border, #eed898); border-radius: 4px; background: var(--vhd-home-amber, #fff7dd); font-size: 13px; line-height: 1.4; }
.vhd-vozidla-wanted[hidden] { display: none; }
.vhd-vozidla-note { margin: 8px 0 0; color: var(--vhd-home-muted, #65707e); font-size: 13px; line-height: 1.45; }
.vhd-vozidla-list { width: 100%; margin: 12px 0 0; border-collapse: collapse; font-size: 14px; }
.vhd-vozidla-list th { padding: 5px 8px 5px 0; border-bottom: 1px solid #dce2e8; color: var(--vhd-home-muted, #65707e); font-size: 12.5px; font-weight: 600; text-align: left; }
.vhd-vozidla-list td { padding: 5px 8px 5px 0; border-bottom: 1px solid #edf0f2; vertical-align: middle; }
.vhd-vozidla-list button.vhd-vozidla-locate { min-height: 0; margin: 0; padding: 0; border: 0; background: none; box-shadow: none; cursor: pointer; }
.vhd-vozidla-list button.vhd-vozidla-locate:focus-visible { outline: 2px solid #236fa2; outline-offset: 2px; }
@media (max-width: 540px) { .vhd-vozidla-canvas { height: 62vh; } .vhd-vozidla-list { font-size: 13px; } .vhd-vozidla-list th:nth-child(4), .vhd-vozidla-list td:nth-child(4) { display: none; } }
@media print { .vhd-vozidla, .vhd-vozidla-status, .vhd-vozidlo-holder { display: none !important; } }

/* 0.4.13–0.4.15: "Moje linky" chosen right on the live map – a drop-down over the map, lines as toggle badges. */
.vhd-vozidla { position: relative; }
.vhd-vozidla-filter button[hidden] { display: none; }
.vhd-vozidla-filter .vhd-vozidla-edit { display: inline-flex; align-items: center; gap: 6px; border-style: dashed; color: #4a5361; }
.vhd-vozidla-filter .vhd-vozidla-edit::before { content: ''; width: 13px; height: 13px; background: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M11.6 1.6a2 2 0 0 1 2.8 2.8L5.2 13.6 1.5 14.5l.9-3.7 9.2-9.2z'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M11.6 1.6a2 2 0 0 1 2.8 2.8L5.2 13.6 1.5 14.5l.9-3.7 9.2-9.2z'/%3E%3C/svg%3E") center / contain no-repeat; }
.vhd-vozidla-filter .vhd-vozidla-edit[aria-expanded="true"] { border-style: solid; border-color: #202733; color: #202733; }
.vhd-vozidla-mylines { position: absolute; z-index: 1100; left: 0; width: 440px; max-width: 100%; max-height: min(70vh, 560px); overflow: auto; overscroll-behavior: contain; margin: 2px 0 0; padding: 12px 14px 12px; border: 1px solid #d7dde3; border-radius: 8px; background: #fff; box-shadow: 0 10px 28px rgb(32 39 51 / 18%); }
.vhd-vozidla-mylines[hidden] { display: none; }
.vhd-vozidla-mylines-head { display: flex; align-items: center; justify-content: space-between; margin: 0 0 6px; }
.vhd-vozidla-mylines-head strong { color: #202733; font-size: 15px; }
.vhd-vozidla-mylines-close { width: 32px; height: 32px; margin: -6px -8px 0 0; padding: 0; border: 0; border-radius: 16px; background: transparent; box-shadow: none; color: #65707e; font: inherit; font-size: 22px; line-height: 1; cursor: pointer; }
.vhd-vozidla-mylines-close:hover { background: #eef1f4; color: #202733; }
.vhd-vozidla-mylines-group { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 6px 10px; min-width: 0; margin: 0; padding: 10px 0; border: 0; border-top: 1px solid #edf0f3; }
.vhd-vozidla-mylines-group legend { float: left; display: flex; align-items: baseline; gap: 8px; width: auto; margin: 0; padding: 0; color: #27303c; font-size: 13.5px; font-weight: 600; }
.vhd-vozidla-mylines-count { color: #65707e; font-size: 12.5px; font-weight: 400; }
.vhd-vozidla-mylines-toggle { justify-self: end; margin: 0; padding: 2px 4px; border: 0; background: transparent; box-shadow: none; color: var(--vhd-home-red, #aa2432); font: inherit; font-size: 13px; text-decoration: underline; text-underline-offset: 2px; cursor: pointer; }
.vhd-vozidla-mylines-chips { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: 6px; }
.vhd-vozidla-mylines-chip { position: relative; display: inline-flex; margin: 0; cursor: pointer; }
.vhd-vozidla-mylines-chip input { position: absolute; width: 1px; height: 1px; margin: 0; opacity: 0; pointer-events: none; }
.vhd-vozidla-mylines-chip span { display: inline-flex; align-items: center; justify-content: center; gap: 4px; min-width: 50px; height: 34px; padding: 0 10px; border: 1.5px solid #c3cad2; border-radius: 6px; background: #fff; color: #3c4552; font-size: 14px; font-weight: 600; line-height: 1; transition: background .12s, border-color .12s; }
.vhd-vozidla-mylines-chip:hover span { border-color: var(--vhd-home-red, #aa2432); color: var(--vhd-home-red, #aa2432); }
.vhd-vozidla-mylines-chip input:checked + span { border-color: var(--vhd-home-red, #aa2432); background: var(--vhd-home-red, #aa2432); color: #fff; }
.vhd-vozidla-mylines-chip input:checked + span::before { content: '✓'; font-size: 12px; }
.vhd-vozidla-mylines-chip input:focus-visible + span { outline: 2px solid #236fa2; outline-offset: 2px; }
.vhd-vozidla-mylines-foot { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 0 0; border-top: 1px solid #edf0f3; }
.vhd-vozidla-mylines-hint { margin: 0; color: #65707e; font-size: 12px; line-height: 1.4; }
.vhd-vozidla-mylines-done { flex: 0 0 auto; min-height: 34px; margin: 0; padding: 5px 16px; border: 1px solid #202733; border-radius: 17px; background: #202733; color: #fff; font: inherit; font-size: 13.5px; line-height: 1.3; cursor: pointer; }
.vhd-vozidla-mylines-done:focus-visible, .vhd-vozidla-mylines-toggle:focus-visible, .vhd-vozidla-mylines-close:focus-visible { outline: 2px solid #236fa2; outline-offset: 2px; }
@media (max-width: 540px) { .vhd-vozidla-mylines { width: 100%; } .vhd-vozidla-mylines-chip span { min-width: 46px; height: 38px; } }

/* 0.4.14: the live map page – way back to the section Mapy, other online maps below. */
.vhd-vozidla-back { margin: 0 0 12px; font-size: 14.5px; }
.vhd-vozidla-back a { color: var(--vhd-home-red, #aa2432); text-decoration: none; }
.vhd-vozidla-back a:hover, .vhd-vozidla-back a:focus-visible { text-decoration: underline; }
.vhd-vozidla-more { margin: 14px 0 0; color: #4a5361; font-size: 14px; line-height: 1.6; }

/* 0.4.16: vehicle search */
.vhd-vozidla-search { position: relative; display: flex; flex: 1 1 260px; max-width: 360px; min-width: 0; margin: 0 0 0 auto; }
.vhd-vozidla-search input { flex: 1 1 auto; min-width: 0; height: 32px; margin: 0; padding: 4px 10px; border: 1px solid #c9d1d9; border-right: 0; border-radius: 16px 0 0 16px; background: #fff; box-shadow: none; color: #202733; font: inherit; font-size: 13.5px; }
.vhd-vozidla-search input:focus { outline: 2px solid #236fa2; outline-offset: 0; }
.vhd-vozidla-search .vhd-vozidla-search-go { flex: 0 0 40px; min-height: 0; height: 32px; margin: 0; padding: 0; border: 1px solid #202733; border-radius: 0 16px 16px 0; background: #202733 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2.4' stroke-linecap='round'%3E%3Ccircle cx='10.5' cy='10.5' r='6.5'/%3E%3Cpath d='m15.5 15.5 5 5'/%3E%3C/svg%3E") center / 17px no-repeat; box-shadow: none; cursor: pointer; }
.vhd-vozidla-search .vhd-vozidla-search-go:focus-visible { outline: 2px solid #236fa2; outline-offset: 2px; }
.vhd-vozidla-found { position: absolute; z-index: 1200; top: calc(100% + 4px); right: 0; width: 100%; min-width: 260px; max-height: 50vh; overflow: auto; padding: 10px 12px; border: 1px solid #d7dde3; border-radius: 8px; background: #fff; box-shadow: 0 10px 28px rgb(32 39 51 / 18%); color: #27303c; font-size: 13.5px; line-height: 1.4; }
.vhd-vozidla-found[hidden] { display: none; }
.vhd-vozidla-found p { margin: 0 0 6px; }
.vhd-vozidla-found p:last-child { margin: 0; }
.vhd-vozidla-found ul { margin: 0; padding: 0; list-style: none; }
.vhd-vozidla-found li + li { border-top: 1px solid #edf0f3; }
.vhd-vozidla-found li button { display: block; width: 100%; margin: 0; padding: 7px 2px; border: 0; background: transparent; box-shadow: none; color: #202733; font: inherit; text-align: left; cursor: pointer; }
.vhd-vozidla-found li button:hover, .vhd-vozidla-found li button:focus-visible { background: #f3f5f7; }
@media (max-width: 540px) { .vhd-vozidla-search { flex-basis: 100%; max-width: none; margin: 0; } }

/* 0.4.16: full screen (the browser's own, or a layer over the page where that is not possible) */
.vhd-vozidla-full-control a.vhd-vozidla-full-button { display: flex; align-items: center; justify-content: center; width: 30px; height: 30px; color: #202733; }
.vhd-vozidla-full-button svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; }
.vhd-vozidla-full-button .vhd-full-close, .vhd-vozidla-full .vhd-vozidla-full-button .vhd-full-open { display: none; }
.vhd-vozidla-full .vhd-vozidla-full-button .vhd-full-close { display: inline; }
html.vhd-vozidla-full-on, html.vhd-vozidla-full-on body { overflow: hidden !important; }
.vhd-vozidla-full { position: fixed !important; inset: 0 !important; z-index: 100000 !important; display: flex !important; flex-direction: column; width: auto !important; max-width: none !important; height: auto !important; margin: 0 !important; padding: 8px !important; border-radius: 0 !important; background: #fff; }
.vhd-vozidla-full > .leaflet-container, .vhd-vozidla-full > [data-vhd-vozidla-canvas], .vhd-vozidla-full > [data-vhd-stop-map] { flex: 1 1 auto; height: auto !important; min-height: 0 !important; max-height: none !important; margin: 0 !important; }
.vhd-vozidla-full > .vhd-vozidla-note, .vhd-vozidla-full > .vhd-vozidla-list { display: none !important; }
.vhd-vozidla-full .vhd-vozidla-filter { margin: 0 0 8px; }
.vhd-vozidla-full-bar { display: none; }
.vhd-vozidla-full > .vhd-vozidla-full-bar { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 0 0 8px; }
.vhd-vozidla-full-line { height: 32px; margin: 0; padding: 0 8px; border: 1px solid #c9d1d9; border-radius: 16px; background: #fff; color: #202733; font: inherit; font-size: 13.5px; }

/* 0.4.18: padlock for the mouse wheel */
.vhd-vozidla-wheel-control a.vhd-vozidla-wheel-button { display: flex; align-items: center; justify-content: center; width: 30px; height: 30px; color: #202733; }
.vhd-vozidla-wheel-button svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 2.1; stroke-linecap: round; stroke-linejoin: round; }
.vhd-vozidla-wheel-button .vhd-wheel-shut, .vhd-vozidla-wheel-button.is-locked .vhd-wheel-open { display: none; }
.vhd-vozidla-wheel-button.is-locked .vhd-wheel-shut { display: inline; }
.leaflet-bar a.vhd-vozidla-wheel-button.is-locked { background: #202733; color: #fff; }

/* 0.4.22: trips that have not left yet are faint (as on mapa.pid.cz); the selected one is shown fully. */
.vhd-vozidlo.is-waiting:not(.is-selected) { opacity: .5; }
.vhd-vozidlo.is-waiting:not(.is-selected):hover { opacity: .85; }

/* 0.4.24: list of vehicles standing on one spot */
.vhd-vozidla-choose-popup .leaflet-popup-content { margin: 10px 12px; }
.vhd-vozidla-choose p { margin: 0 22px 6px 0; color: #4a5361; font-size: 13px; }
.vhd-vozidla-choose button { display: flex; align-items: center; gap: 8px; width: 100%; margin: 0; padding: 7px 4px; border: 0; border-top: 1px solid #edf0f3; background: transparent; box-shadow: none; color: #202733; font: inherit; font-size: 13.5px; line-height: 1.3; text-align: left; cursor: pointer; }
.vhd-vozidla-choose button:hover, .vhd-vozidla-choose button:focus-visible { background: #f3f5f7; outline: none; }
.vhd-vozidla-choose .vhd-home-line { flex: 0 0 auto; min-width: 38px; justify-content: center; }

/* 0.4.26: actions of the vehicle card (trip timetable, page of the line / its service changes) and the trip timetable */
.vhd-vozidlo-actions { display: flex; flex-wrap: wrap; gap: 6px; margin: 9px 0 0; }
.vhd-vozidlo-action { display: inline-flex; align-items: center; min-height: 28px; margin: 0; padding: 3px 10px; border: 1px solid #c9d1d9; border-radius: 14px; background: #fff; box-shadow: none; color: #202733; font: inherit; font-size: 12.5px; font-weight: 500; line-height: 1.2; text-decoration: none !important; white-space: nowrap; cursor: pointer; }
.vhd-vozidlo-action:hover { border-color: #202733; }
.vhd-vozidlo-action:focus-visible { outline: 2px solid #236fa2; outline-offset: 2px; }
.vhd-vozidlo-action[aria-expanded="true"] { border-color: #202733; background: #202733; color: #fff; }
.vhd-vozidlo-action.is-alert { border-color: #e2b13c; background: #fff7e0; color: #6b4e00; }
.vhd-vozidlo-action.is-alert.is-now { border-color: #e08b80; background: #fdecea; color: #8a1f17; }
.vhd-vozidlo-timetable { max-height: 230px; margin: 2px 0 6px; padding: 0 4px 0 0; overflow: auto; overscroll-behavior: contain; list-style: none; }
.vhd-vozidlo-timetable li { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: baseline; gap: 8px; padding: 2px 0; font-size: 13px; line-height: 1.35; }
.vhd-vozidlo-timetable li.is-past { color: #9aa3ad; }
.vhd-vozidlo-timetable li.is-next { font-weight: 600; }
.vhd-vozidlo-timetable li > .vhd-vozidlo-when { display: inline-flex; gap: 5px; align-items: baseline; min-width: 42px; }
.vhd-vozidlo-timetable s { color: #8a939d; font-size: 12px; }
