/* == TfL palette variables == */
:root{
  /* Underground */
  --tfl-bakerloo:#B26300;         --tfl-bakerloo-text:#fff;
  --tfl-central:#DC241F;          --tfl-central-text:#fff;
  --tfl-circle:#FFC80A;           --tfl-circle-text:#000;
  --tfl-district:#007D32;         --tfl-district-text:#fff;
  --tfl-hammersmith:#F589A6;      --tfl-hammersmith-text:#000;
  --tfl-jubilee:#838D93;          --tfl-jubilee-text:#000;
  --tfl-metropolitan:#9B0058;     --tfl-metropolitan-text:#fff;
  --tfl-northern:#000000;         --tfl-northern-text:#fff;
  --tfl-piccadilly:#0019A8;       --tfl-piccadilly-text:#fff;
  --tfl-victoria:#039BE5;         --tfl-victoria-text:#000;
  --tfl-waterloo-city:#76D0BD;    --tfl-waterloo-city-text:#000;

  /* Rail modes */
  --tfl-elizabeth:#60399E;        --tfl-elizabeth-text:#fff;
  --tfl-dlr:#00AFAD;              --tfl-dlr-text:#000;
  --tfl-tram:#5FB526;             --tfl-tram-text:#000;

  /* Overground (global & 6 lines) */
  --tfl-overground:#FA7B05;       --tfl-overground-text:#000;
  --tfl-og-liberty:#5D6061;       --tfl-og-liberty-text:#fff;
  --tfl-og-lioness:#FAA61A;       --tfl-og-lioness-text:#000;
  --tfl-og-mildmay:#0077AD;       --tfl-og-mildmay-text:#fff;
  --tfl-og-suffragette:#5BBD72;   --tfl-og-suffragette-text:#000;
  --tfl-og-weaver:#823A62;        --tfl-og-weaver-text:#fff;
  --tfl-og-windrush:#ED1B00;      --tfl-og-windrush-text:#fff;
}

/* generic badge */
.tfl-badge{display:inline-block;padding:.25rem .6rem;border-radius:999px;font:600 12px/1.1 system-ui,sans-serif}

/* utility classes (use with .tfl-badge) */
.line-bakerloo{background:var(--tfl-bakerloo);color:var(--tfl-bakerloo-text)}
.line-central{background:var(--tfl-central);color:var(--tfl-central-text)}
.line-circle{background:var(--tfl-circle);color:var(--tfl-circle-text)}
.line-district{background:var(--tfl-district);color:var(--tfl-district-text)}
.line-hammersmith-city{background:var(--tfl-hammersmith);color:var(--tfl-hammersmith-text)}
.line-jubilee{background:var(--tfl-jubilee);color:var(--tfl-jubilee-text)}
.line-metropolitan{background:var(--tfl-metropolitan);color:var(--tfl-metropolitan-text)}
.line-northern{background:var(--tfl-northern);color:var(--tfl-northern-text)}
.line-piccadilly{background:var(--tfl-piccadilly);color:var(--tfl-piccadilly-text)}
.line-victoria{background:var(--tfl-victoria);color:var(--tfl-victoria-text)}
.line-waterloo-city{background:var(--tfl-waterloo-city);color:var(--tfl-waterloo-city-text)}

.line-elizabeth{background:var(--tfl-elizabeth);color:var(--tfl-elizabeth-text)}
.line-dlr{background:var(--tfl-dlr);color:var(--tfl-dlr-text)}
.line-trams,.line-tram{background:var(--tfl-tram);color:var(--tfl-tram-text)}

.line-overground{background:var(--tfl-overground);color:var(--tfl-overground-text)}
.line-og-liberty{background:var(--tfl-og-liberty);color:var(--tfl-og-liberty-text)}
.line-og-lioness{background:var(--tfl-og-lioness);color:var(--tfl-og-lioness-text)}
.line-og-mildmay{background:var(--tfl-og-mildmay);color:var(--tfl-og-mildmay-text)}
.line-og-suffragette{background:var(--tfl-og-suffragette);color:var(--tfl-og-suffragette-text)}
.line-og-weaver{background:var(--tfl-og-weaver);color:var(--tfl-og-weaver-text)}
.line-og-windrush{background:var(--tfl-og-windrush);color:var(--tfl-og-windrush-text)}


/* Einheitliche Breite für Linien-Badges */
.tfl-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 140px;      /* 👈 hier spielen */
  text-align: center;
  white-space: nowrap;
}

/* Ruhige Ausrichtung: Linie + Status nebeneinander */
.tfl-row {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

.tfl-status {
  flex: 0 0 260px;   /* feste, ruhige Breite */
  text-align: left;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
