@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.8e0177b5.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.b97b3418.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:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.853070df.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:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_a71539c9-module__T19VSG__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_a71539c9-module__T19VSG__variable{--font-geist-sans:"Geist","Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.c1fdd6c2.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.799d8ef8.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:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.dbea232f.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:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_8d43a2aa-module__8Li5zG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_8d43a2aa-module__8Li5zG__variable{--font-geist-mono:"Geist Mono","Geist Mono Fallback"}
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.col-2{grid-column:2}.col-3{grid-column:3}.col-6{grid-column:6}.col-8{grid-column:8}.container{width:100%}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-block{display:inline-block}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.resize{resize:both}.border{border-style:var(--tw-border-style);border-width:1px}.text-center{text-align:center}.text-nowrap{text-wrap:nowrap}.capitalize{text-transform:capitalize}.uppercase{text-transform:uppercase}.italic{font-style:italic}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}:root{--safe-area-top:env(safe-area-inset-top,0px);--safe-area-right:env(safe-area-inset-right,0px);--safe-area-bottom:env(safe-area-inset-bottom,0px);--safe-area-left:env(safe-area-inset-left,0px);--bg-primary:#fff;--bg-secondary:#f8fafc;--bg-tertiary:#f1f5f9;--text-primary:#0f172a;--text-secondary:#475569;--text-tertiary:#94a3b8;--border-color:#e2e8f0;--accent-color:#3b82f6;--accent-hover:#2563eb;--shadow:#0000001a;--shadow-strong:#0003;--map-filter:none;--color-success:#10b981;--color-warning:#f59e0b;--color-error:#ef4444;--color-info:#3b82f6}[data-theme=dark]{--bg-primary:#0f172a;--bg-secondary:#1e293b;--bg-tertiary:#334155;--text-primary:#f1f5f9;--text-secondary:#cbd5e1;--text-tertiary:#94a3b8;--border-color:#475569;--accent-color:#60a5fa;--accent-hover:#93c5fd;--shadow:#00000080;--shadow-strong:#000c;--map-filter:invert(.9)hue-rotate(180deg)brightness(.9)contrast(.85);--color-success:#34d399;--color-warning:#fbbf24;--color-error:#f87171;--color-info:#60a5fa}html{width:100%;height:100vh;position:fixed;overflow:hidden}body{background:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overscroll-behavior:none;-webkit-overflow-scrolling:touch;width:100%;height:100vh;margin:0;padding:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;transition:background-color .3s,color .3s;position:fixed;overflow:hidden}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}.leaflet-container{background:var(--bg-tertiary);font-family:system-ui,-apple-system,sans-serif;width:100%!important;height:100%!important}.leaflet-tile-pane{filter:var(--map-filter);transition:filter .3s}[data-theme=dark] .leaflet-control-zoom a,[data-theme=dark] .leaflet-control-attribution{background:var(--bg-secondary)!important;color:var(--text-primary)!important;border-color:var(--border-color)!important}[data-theme=dark] .leaflet-control-zoom a:hover{background:var(--bg-tertiary)!important}[data-theme=high-contrast] .leaflet-control-zoom a{font-weight:700;color:#000!important;background:#fff!important;border:3px solid #000!important}.leaflet-popup-content-wrapper{background:var(--bg-primary);color:var(--text-primary);box-shadow:0 8px 24px var(--shadow-strong);border-radius:12px;padding:0}[data-theme=dark] .leaflet-popup-content-wrapper{border:2px solid var(--border-color);background:var(--bg-secondary)!important;color:var(--text-primary)!important}[data-theme=high-contrast] .leaflet-popup-content-wrapper{color:#000!important;background:#fff!important;border:3px solid #000!important}.leaflet-popup-content{margin:1rem;font-family:system-ui,-apple-system,sans-serif}.leaflet-popup-tip-container{display:none}.train-marker-badge,.train-marker-dot{cursor:pointer;transition:transform .2s,filter .2s}.train-marker-badge:hover,.train-marker-dot:hover{filter:brightness(1.1)drop-shadow(0 4px 8px #0000004d);transform:scale(1.15);z-index:1000!important}[data-theme=dark] .train-marker-badge>div,[data-theme=dark] .train-marker-dot>div>div{box-shadow:0 3px 10px #0009;border-color:#ffffffe6!important}[data-theme=high-contrast] .train-marker-badge>div,[data-theme=high-contrast] .train-marker-dot>div>div{filter:grayscale()contrast(1.5);box-shadow:0 3px 8px #00000080;border:3px solid #000!important}@media (max-width:768px){*{touch-action:manipulation}html{height:100svh}body,#__next{height:100svh;min-height:100svh}.leaflet-container{touch-action:pan-x pan-y;width:100vw!important;height:100svh!important}button,.tap-target{min-width:44px;min-height:44px;padding:12px}.no-select-mobile{-webkit-user-select:none;user-select:none}.mobile-fab{width:64px!important;height:64px!important;bottom:calc(20px + var(--safe-area-bottom))!important;font-size:28px!important}.mobile-scroll{-webkit-overflow-scrolling:touch;overflow-y:auto}.mobile-scroll::-webkit-scrollbar{display:none}input,select,textarea{font-size:16px!important}.mobile-sheet{padding-bottom:calc(20px + var(--safe-area-bottom))}}@supports (-webkit-touch-callout:none){html,body{height:-webkit-fill-available}}.train-detail-popup{padding-bottom:calc(16px + var(--safe-area-bottom));max-height:calc(60dvh - var(--safe-area-bottom));background:var(--bg-primary);border-radius:20px 20px 0 0;position:fixed;bottom:0;left:0;right:0;overflow-y:auto;box-shadow:0 -4px 20px #00000026}.mobile-bottom-sheet{max-height:calc(85dvh - var(--safe-area-bottom));padding-bottom:var(--safe-area-bottom);-webkit-overflow-scrolling:touch;position:fixed;bottom:0;left:0;right:0;overflow-y:auto}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.fade-in{animation:.3s fadeIn}.slide-up{animation:.3s slideUp}.slide-in{animation:.3s slideIn}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--text-tertiary);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}[data-theme=high-contrast] ::-webkit-scrollbar-thumb{background:#000;border:1px solid #fff}:focus-visible{outline:3px solid var(--accent-color);outline-offset:2px}[data-theme=high-contrast] :focus-visible{outline-offset:3px;outline:4px solid #000}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
