/* SVG-карты: суша, маршруты, города */

.land { fill: var(--land); stroke: var(--land-line); stroke-width: .6; }
.grat { fill: none; stroke: var(--grat); stroke-width: .6; }

.route-line { fill: none; stroke-width: 1.6; stroke-linecap: round; opacity: .85; transition: stroke-width .15s, opacity .15s; }
.route-line.rail { stroke: var(--rail); }
.route-line.bus { stroke: var(--bus); stroke-width: 2.2; stroke-dasharray: 1.5 4.5; }
.route-line.air { stroke: var(--air); stroke-dasharray: 6 4; }
.route-line.solo { opacity: 1; stroke-width: 2.6; }

/* широкая невидимая линия — чтобы по маршруту было легко попасть пальцем */
.route-hit { fill: none; stroke: transparent; stroke-width: 14; cursor: pointer; }
.route:focus { outline: none; }
.route:hover .route-line,
.route.on .route-line,
.route:focus-visible .route-line { opacity: 1; stroke-width: 3.4; }

.city-dot { fill: var(--tile); stroke: var(--ink); stroke-width: 1.2; }
.city-label {
  font: 500 11.5px var(--sans);
  fill: var(--ink);
  paint-order: stroke;
  stroke: var(--land);
  stroke-width: 3px;
  stroke-linejoin: round;
}
