@font-face{font-family:Fira Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/fira-sans-400-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fira Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/fira-sans-400-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fira Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/fira-sans-500-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fira Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/fira-sans-500-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fira Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/fira-sans-600-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fira Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/fira-sans-600-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fira Sans Condensed;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/fira-sans-condensed-500-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fira Sans Condensed;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/fira-sans-condensed-500-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fira Sans Condensed;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/fira-sans-condensed-600-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fira Sans Condensed;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/fira-sans-condensed-600-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/bricolage-grotesque-700-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/bricolage-grotesque-700-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}:root{--neutral-0:#fff;--neutral-50:#fafafa;--neutral-100:#f4f4f5;--neutral-200:#e4e4e7;--neutral-300:#d4d4d8;--neutral-400:#a1a1aa;--neutral-500:#71717a;--neutral-600:#52525b;--neutral-700:#3f3f46;--neutral-800:#27272a;--neutral-900:#18181b;--neutral-950:#111827;--neutral-1000:#09090b;--distance-light-1:#6ec173;--distance-light-2:#85a331;--distance-light-3:#8f6d19;--distance-light-4:#96461b;--distance-light-5:#8a2721;--distance-light-6:#661717;--distance-dark-1:#96e09f;--distance-dark-2:#a3b83c;--distance-dark-3:#b58726;--distance-dark-4:#ab5722;--distance-dark-5:#9c3129;--distance-dark-6:#75201d;--focus-light:#6d28d9;--focus-dark:#a78bfa;--warning-light:#b3261e;--warning-dark:#f2a9a2;--hint-light:#fdf3d6;--hint-dark:#3a2e10;--linie-breite:4px;--linie-breite-mobil:3.5px;--linie-umriss:1px;--space-3xs:2px;--space-2xs:4px;--space-xs:8px;--space-sm:12px;--space-md:16px;--space-lg:20px;--space-xl:24px;--space-2xl:32px;--space-3xl:40px;--space-4xl:48px;--space-5xl:64px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-full:999px;--font-sans:"Fira Sans", system-ui, sans-serif;--font-condensed:"Fira Sans Condensed", "Fira Sans", system-ui, sans-serif;--font-brand:"Bricolage Grotesque", "Fira Sans", system-ui, sans-serif;--size-xs:12px;--size-sm:14px;--size-md:16px;--size-lg:18px;--size-xl:20px;--size-2xl:24px;--size-3xl:30px;--size-4xl:36px;--leading-tight:16px;--leading-sm:20px;--leading-md:24px;--leading-lg:28px;--leading-xl:32px;--leading-2xl:40px;--line-u1:#7dad4a;--line-u2:#da421e;--line-u3:#16683d;--line-u4:#f0d722;--line-u5:#7e5330;--line-u6:#8c6dab;--line-u7:#528dba;--line-u8:#224f86;--line-u9:#f3791d;--line-s1:#dd6ba6;--line-s2:#007a33;--line-s25:#007a33;--line-s26:#007a33;--line-s3:#0a4c9e;--line-s5:#ee7300;--line-s7:#7b5aa6;--line-s75:#7b5aa6;--line-s8:#55a822;--line-s85:#55a822;--line-s9:#941d3e;--line-s41:#a23b1e;--line-s42:#c7743a;--line-s45:#cd9c5d;--line-s46:#cd9c5d;--line-s47:#cd9c5d;--line-fallback:#71717a;--transport-u:#115d91;--transport-s:#007a3d;--linie-ohne-ziel:#a1a1aa;--color-base:var(--neutral-100);--color-surface:var(--neutral-0);--color-surface-muted:var(--neutral-50);--color-surface-inverse:var(--neutral-950);--color-border:var(--neutral-200);--color-border-strong:var(--neutral-400);--color-text:var(--neutral-950);--color-text-muted:var(--neutral-500);--color-text-inverse:var(--neutral-0);--color-action:var(--neutral-950);--color-action-text:var(--neutral-0);--color-focus:var(--focus-light);--color-warning:var(--warning-light);--color-hint-surface:var(--hint-light);--color-distance-1:var(--distance-light-1);--color-distance-2:var(--distance-light-2);--color-distance-3:var(--distance-light-3);--color-distance-4:var(--distance-light-4);--color-distance-5:var(--distance-light-5);--color-distance-6:var(--distance-light-6);--color-distance-text-1:var(--neutral-950);--color-distance-text-2:var(--neutral-950);--color-distance-text-3:var(--neutral-0);--color-distance-text-4:var(--neutral-0);--color-distance-text-5:var(--neutral-0);--color-distance-text-6:var(--neutral-0);--color-on-line-light:var(--neutral-0);--color-on-line-dark:var(--neutral-950);--schwebend:var(--neutral-0);--schwebend-80:#fffc;--schleier:var(--neutral-950);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--color-base:var(--neutral-1000);--linie-ohne-ziel:#9296a3;--color-surface:var(--neutral-900);--color-surface-muted:var(--neutral-800);--color-surface-inverse:var(--neutral-100);--color-border:var(--neutral-700);--color-border-strong:var(--neutral-500);--color-text:var(--neutral-100);--color-text-muted:var(--neutral-400);--color-text-inverse:var(--neutral-950);--color-action:var(--neutral-100);--color-action-text:var(--neutral-950);--color-focus:var(--focus-dark);--color-warning:var(--warning-dark);--color-hint-surface:var(--hint-dark);--color-distance-1:var(--distance-dark-1);--color-distance-2:var(--distance-dark-2);--color-distance-3:var(--distance-dark-3);--color-distance-4:var(--distance-dark-4);--color-distance-5:var(--distance-dark-5);--color-distance-6:var(--distance-dark-6);--color-distance-text-1:var(--neutral-900);--color-distance-text-2:var(--neutral-900);--color-distance-text-3:var(--neutral-900);--color-distance-text-4:var(--neutral-100);--color-distance-text-5:var(--neutral-100);--color-distance-text-6:var(--neutral-100);--schwebend:var(--neutral-900);--schwebend-80:#18181bcc;--schleier:var(--neutral-1000);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--color-base:var(--neutral-1000);--linie-ohne-ziel:#9296a3;--color-surface:var(--neutral-900);--color-surface-muted:var(--neutral-800);--color-surface-inverse:var(--neutral-100);--color-border:var(--neutral-700);--color-border-strong:var(--neutral-500);--color-text:var(--neutral-100);--color-text-muted:var(--neutral-400);--color-text-inverse:var(--neutral-950);--color-action:var(--neutral-100);--color-action-text:var(--neutral-950);--color-focus:var(--focus-dark);--color-warning:var(--warning-dark);--color-hint-surface:var(--hint-dark);--color-distance-1:var(--distance-dark-1);--color-distance-2:var(--distance-dark-2);--color-distance-3:var(--distance-dark-3);--color-distance-4:var(--distance-dark-4);--color-distance-5:var(--distance-dark-5);--color-distance-6:var(--distance-dark-6);--color-distance-text-1:var(--neutral-900);--color-distance-text-2:var(--neutral-900);--color-distance-text-3:var(--neutral-900);--color-distance-text-4:var(--neutral-100);--color-distance-text-5:var(--neutral-100);--color-distance-text-6:var(--neutral-100);--schwebend:var(--neutral-900);--schwebend-80:#18181bcc;--schleier:var(--neutral-1000);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--color-base);color:var(--color-text);font-family:var(--font-sans);font-size:var(--size-md);line-height:var(--leading-md);height:100dvh;margin:0;overflow:hidden}h1,h2,h3,p,figure,ul,ol{margin:0}ul,ol{padding:0;list-style:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;padding:0}input{font:inherit;color:inherit}a{color:inherit}:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.type-brand{font-family:var(--font-brand);font-weight:700;font-size:var(--size-3xl);line-height:var(--leading-2xl)}.type-brand-sm{font-family:var(--font-brand);font-weight:700;font-size:var(--size-xl);line-height:var(--leading-md)}.type-heading-lg{font-family:var(--font-sans);font-weight:600;font-size:var(--size-2xl);line-height:var(--leading-xl)}.type-heading-sm{font-family:var(--font-sans);font-weight:600;font-size:var(--size-xl);line-height:var(--leading-lg)}.type-body-lg{font-family:var(--font-sans);font-weight:400;font-size:var(--size-lg);line-height:var(--leading-lg)}.type-body{font-family:var(--font-sans);font-weight:400;font-size:var(--size-md);line-height:var(--leading-md)}.type-body-sm{font-family:var(--font-sans);font-weight:400;font-size:var(--size-sm);line-height:var(--leading-sm)}.type-label{font-family:var(--font-sans);font-weight:500;font-size:var(--size-sm);line-height:var(--leading-sm)}.type-label-sm{font-family:var(--font-sans);font-weight:500;font-size:var(--size-xs);line-height:var(--leading-tight)}.type-station-lg{font-family:var(--font-condensed);font-weight:600;font-size:var(--size-lg);line-height:var(--leading-md)}.type-station{font-family:var(--font-condensed);font-weight:500;font-size:var(--size-md);line-height:var(--leading-sm)}.type-number-lg{font-family:var(--font-sans);font-weight:600;font-size:var(--size-2xl);line-height:var(--leading-xl);font-variant-numeric:tabular-nums}.type-number{font-family:var(--font-sans);font-weight:600;font-size:var(--size-lg);line-height:var(--leading-md);font-variant-numeric:tabular-nums}.type-eyebrow{font-family:var(--font-sans);font-weight:500;font-size:var(--size-xs);line-height:var(--leading-tight);letter-spacing:.04em;color:var(--color-text-muted);text-transform:uppercase}.text-muted{color:var(--color-text-muted)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.login-container{background-color:var(--color-base);min-height:100vh;padding:var(--space-md);justify-content:center;align-items:center;display:flex}.login-card{width:100%;max-width:360px;padding:var(--space-4xl);background-color:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:0 4px 12px #00000014}.login-title{font-family:var(--font-brand);font-size:var(--size-4xl);font-weight:700;line-height:var(--leading-2xl);color:var(--color-text);margin:0 0 var(--space-3xl) 0;text-align:center}.login-form{gap:var(--space-lg);flex-direction:column;display:flex}.login-input-group{gap:var(--space-sm);flex-direction:column;display:flex}.login-input{padding:var(--space-sm) var(--space-md);font-family:var(--font-sans);font-size:var(--size-md);line-height:var(--leading-md);color:var(--color-text);background-color:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:border-color .15s,box-shadow .15s}.login-input:focus{border-color:var(--color-action);border-color:var(--color-focus);outline:none;box-shadow:0 0 0 3px #6d28d91a}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .login-input:focus{box-shadow:0 0 0 3px #a78bfa1a}}.login-input:disabled{opacity:.6;cursor:not-allowed}.login-error{padding:var(--space-sm) var(--space-md);font-family:var(--font-sans);font-size:var(--size-sm);line-height:var(--leading-sm);color:var(--color-warning);background-color:var(--color-hint-surface);border-radius:var(--radius-md);border-left:3px solid var(--color-warning)}.login-button{padding:var(--space-sm) var(--space-md);font-family:var(--font-sans);font-size:var(--size-md);font-weight:600;line-height:var(--leading-md);color:var(--color-action-text);background-color:var(--color-action);border-radius:var(--radius-md);cursor:pointer;border:none;transition:background-color .15s,opacity .15s}.login-button:hover:not(:disabled){background-color:var(--color-text)}.login-button:active:not(:disabled){opacity:.9}.login-button:disabled{opacity:.6;cursor:not-allowed}@media (width<=640px){.login-card{padding:var(--space-3xl) var(--space-xl)}.login-title{font-size:var(--size-3xl)}}
