/* Bus and train pages: only what the APMC styles (engage.css, .sle-st__*) do not already cover. Colours come from the theme's tokens, so dark mode follows. */
.sle-bus__q { width: 100%; box-sizing: border-box; min-height: var(--ui-btn-h, 44px); margin: 0 0 10px; padding: 0 14px; font: 15px var(--font-body, sans-serif); color: var(--ink, #17161A); background: var(--tone, #ECE8E2); border: 1px solid var(--line, #E4E0D9); border-radius: var(--ui-r-sm, 12px); }
.sle-bus__q::placeholder { color: var(--ink-2, #5E5953); }
.sle-bus__q:focus-visible { outline: 2px solid var(--c-orange, #F09008); outline-offset: -2px; }
.sle-bus .sle-st__chip button { padding: 0 14px; }
.sle-bus__next { display: grid; gap: 2px; margin: 4px 0 6px; padding: 12px 14px; border-radius: var(--ui-r-sm, 12px); background: rgb(240 144 8 / .22); color: var(--ink, #17161A); font-size: 13px; }
.sle-bus__next b { font: 600 28px/1.15 var(--font-body, sans-serif); font-variant-numeric: tabular-nums; }
.sle-bus__r { grid-template-columns: minmax(0, 1fr) auto; }
.sle-bus__r .sle-st__tag { margin-left: 0; }
.sle-bus .sle-st__info b { color: var(--ink, #17161A); }
.sle-bus__act { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 16px; margin: 14px 0 0; font-size: 14px; }
.sle-bus__act .sle-rshare { margin: 0; text-decoration: none; }
.sle-bus__act .sle-st__what { text-decoration: underline; }
/* route page table and train page */
.sle-bus__h2 { margin: 24px 0 4px; font: 600 16px/1.3 var(--font-head, sans-serif); color: var(--ink, #17161A); }
.sle-bus__src { margin: 2px 0 10px; font-size: 12px; color: var(--ink-2, #5E5953); }
.sle-bus__src a { color: var(--accent, #1a5fb4); }
.sle-bus__tbl { width: 100%; border-collapse: collapse; font-size: 15px; color: var(--ink, #17161A); }
.sle-bus__tbl th, .sle-bus__tbl td { padding: 9px 4px; text-align: left; border-top: 1px solid var(--line, #E4E0D9); font-variant-numeric: tabular-nums; }
.sle-bus__tbl th { font-size: 12px; font-weight: 400; color: var(--ink-2, #5E5953); }
.sle-bus__tbl small { color: var(--ink-2, #5E5953); font-size: 11.5px; }
.sle-bus__note { margin: 0 0 10px; padding: 10px 12px; border-radius: var(--ui-r-sm, 12px); background: rgb(240 144 8 / .22); color: var(--ink, #17161A); font-size: 14px; line-height: 1.5; }
.sle-bus__note:empty { display: none; }
