.ws-routing { padding:12px; border-top:1px solid var(--line); font:13px var(--font-ui); min-width:0; }
.ws-routing__toolbar { display:flex; gap:7px; flex-wrap:wrap; align-items:center; }
.ws-routing__toolbar :is(button,select) { min-height:40px; padding:7px 10px; color:var(--ink); border:1px solid var(--line); background:var(--paper); border-radius:6px; font:inherit; }
.ws-routing__toolbar label { display:flex; align-items:center; gap:6px; }
.ws-routing button[aria-pressed=true] { border-color:var(--accent); background:color-mix(in srgb,var(--accent) 12%,var(--paper)); }
.ws-routing__stops { list-style:none; padding:0; margin:10px 0; }
.ws-routing__stops li { display:flex; align-items:center; gap:4px; min-height:44px; border-bottom:1px solid var(--line); }
.ws-routing__stops li>span { flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.ws-routing__stops .ws-iconbtn { width:40px; height:40px; flex:none; }
.ws-routing__up svg { transform:rotate(180deg); }
.ws-routing__alternatives { display:flex; flex-wrap:wrap; gap:7px; margin-block:10px; }
.ws-routing__alternatives button { padding:8px; border:1px solid var(--line); background:var(--paper); color:var(--ink); border-radius:6px; font:inherit; min-height:40px; }
.ws-routing__directions { max-height:240px; overflow:auto; padding-left:24px; }
.ws-routing__directions li { padding:7px 0; }.ws-routing__directions small { display:block; color:var(--muted); }
.ws-routing__table { overflow-x:auto; }.ws-routing__matrix { border-collapse:collapse; white-space:nowrap; font-size:12px; }
.ws-routing__matrix :is(th,td) { padding:8px; border:1px solid var(--line); }
.ws-routing [hidden] { display:none!important; }
