.transport-main{box-sizing:border-box;width:min(660px,calc(100% - 32px));margin:auto;padding:max(24px,env(safe-area-inset-top)) 0 max(32px,env(safe-area-inset-bottom));color:var(--ink)}
.transport-main *{box-sizing:border-box}.transport-main [hidden]{display:none!important}.transport-nav{display:flex;margin-bottom:24px}.transport-nav a{margin:0}
.transport-nav a,.transport-main button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 18px;border:1px solid var(--line-strong);border-radius:18px;background:var(--card);color:var(--accent-soft);font:600 16px/1.35 system-ui;text-decoration:none;cursor:pointer;max-width:100%;white-space:normal}
.transport-head{text-align:center}.transport-head h1{font-size:clamp(27px,7vw,36px);margin:0 0 12px;overflow-wrap:anywhere}.transport-head p{line-height:1.5;color:var(--muted)}
.transport-catalog{display:grid;gap:14px;margin:24px 0}.transport-catalog button{width:100%;justify-content:flex-start;text-align:left;gap:16px;padding:22px;border-radius:24px;font-size:20px}.transport-catalog button>span:first-child{font-size:28px;color:var(--accent)}.transport-catalog small{display:block;font-size:14px;font-weight:400;color:var(--muted);margin-top:6px}
.transport-card{border:1px solid var(--line-strong);border-radius:24px;background:var(--card);padding:18px;margin:18px 0;min-width:0;max-width:100%}.transport-card h2{font-size:23px;margin:0 0 8px;overflow-wrap:anywhere}.transport-card p{line-height:1.5;color:var(--muted);font-size:14px}
.transport-stations{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.transport-field{min-width:0;position:relative}.transport-field label,.transport-date label{display:block;margin:0 0 8px;font-weight:600}.transport-form input{display:block;width:100%;min-width:0;max-width:100%;min-height:48px;padding:12px;font:inherit;color:var(--ink);background:var(--bg);border:1px solid var(--line-strong);border-radius:14px;color-scheme:dark}
.transport-date{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}.transport-date label{grid-column:1/-1}.transport-main button[type=submit]{background:var(--accent);color:var(--btn-ink,#171006)}.transport-help{margin:12px 0 18px}
.transport-options{display:grid;gap:6px;margin-top:8px}.transport-options button{width:100%;text-align:left;justify-content:flex-start;font-size:14px;overflow-wrap:anywhere;padding:10px 12px}.transport-options p{margin:8px 0}
.transport-list{list-style:none;margin:0;padding:0}.transport-departure{padding:18px 0;border-bottom:1px solid var(--line);min-width:0}.transport-departure:last-child{border-bottom:0}.transport-times{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:baseline;font-size:24px;font-weight:750;line-height:1.25;font-variant-numeric:tabular-nums;color:var(--accent-soft)}.transport-times small{font-size:12px;font-weight:400;color:var(--muted)}.transport-route{font-weight:650;font-size:17px;line-height:1.4;overflow-wrap:anywhere;margin-top:8px}.transport-meta{font-size:13px;line-height:1.6;color:var(--muted);margin-top:5px;overflow-wrap:anywhere}.transport-cancelled{color:#ffb0a9;font-weight:700}.transport-warning{border-left:3px solid var(--accent);padding-left:10px}.transport-status,.transport-source{font-size:13px;line-height:1.5;color:var(--muted);overflow-wrap:anywhere}.transport-status{text-align:center;min-height:20px}.transport-source a{color:var(--accent-soft)}.transport-source p{font-size:13px}.transport-main :focus-visible{outline:3px solid var(--accent);outline-offset:3px}.transport-empty{padding:14px 0;color:var(--muted)}
[data-theme=ivory] .transport-form input{color-scheme:light}[data-theme=ivory] .transport-times,[data-theme=ivory] .transport-nav a{color:var(--ink)}[data-theme=ivory] .transport-cancelled{color:#a12218}
@media(max-width:480px){.transport-stations{grid-template-columns:minmax(0,1fr)}.transport-date{grid-template-columns:minmax(0,1fr)}.transport-date label{margin-top:0}.transport-card{padding:16px}.transport-form input{font-size:16px}.transport-date button{width:100%}.transport-catalog button{padding:18px;font-size:18px}}
