.city-label{background:var(--cream);border:1px solid var(--main-soft);border-radius:20px;padding:4px 12px;font-size:13px;color:var(--text);white-space:nowrap;box-shadow:0 2px 6px rgba(0,0,0,.08);opacity:0;transform:translateY(4px) scale(.9);transition:opacity .4s ease,transform .4s ease;pointer-events:none}.city-label.detour{border:1px dashed var(--detour-soft);font-size:12px;color:#33443c;background:#f2f6f3}.city-label.show{opacity:1;transform:translateY(0) scale(1)}.travel-dot{width:14px;height:14px;border-radius:50%;background:var(--main);border:3px solid #fff;box-shadow:0 0 0 3px rgba(181,118,42,.25)}.stop-dot{width:10px;height:10px;border-radius:50%;background:var(--main);border:2px solid #fff}.stop-dot.detour{width:8px;height:8px;background:var(--detour)}.stop-dot.waypoint{width:6px;height:6px;background:var(--waypoint);border:1px solid #fff;opacity:.85}.leaflet-control-attribution{font-family:sans-serif;font-size:10px;background:rgba(246,239,226,.85)!important}