/*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */:root{--cgopush-cat-software:#0085c4;--cgopush-cat-operation:#d29700;--cgopush-cat-promotion:#009655;--cgopush-cat-system:#6b7280}[data-theme=dark]{--cgopush-cat-software:#38bdf8;--cgopush-cat-operation:#ffca28;--cgopush-cat-promotion:#4ade80;--cgopush-cat-system:#a0b0b9;--cgo-btn-dark-bg:var(--primary-color,#006098);--cgo-btn-dark-hover-bg:var(--primary-hover,#0070b0)}#cgopush-notice-container{top:calc(76px + env(safe-area-inset-top,0px));z-index:10010;pointer-events:none;flex-direction:column;gap:10px;display:flex;position:fixed;right:18px}.cgopush-notice-card{background:var(--card-bg,#fff);width:280px;min-width:200px;max-width:80vw;color:var(--text-main,#00263b);border:1px solid var(--border-color,#00000014);pointer-events:auto;cursor:pointer;opacity:0;box-sizing:border-box;border-radius:10px;padding:12px 36px 12px 14px;transition:transform .45s cubic-bezier(.34,1.56,.64,1),opacity .35s ease-out;position:relative;overflow:hidden;transform:translate(125%);box-shadow:0 4px 20px #0000001a}.cgopush-notice-card.show{opacity:1;transform:translate(0)}.cgopush-notice-card.hide{opacity:0;transform:translate(125%)}.cgopush-notice-content{width:100%;min-width:0}.cgopush-notice-header{letter-spacing:.3px;align-items:center;gap:5px;margin-bottom:4px;font-size:11px;font-weight:600;line-height:1;display:flex}.cgopush-notice-header svg{vertical-align:middle;flex-shrink:0;justify-content:center}.cgopush-notice-header span,.cgopush-notice-header svg{align-items:center;display:inline-flex}.cat-software .cgopush-notice-header{color:var(--cgopush-cat-software)}.cat-operation .cgopush-notice-header{color:var(--cgopush-cat-operation)}.cat-promotion .cgopush-notice-header{color:var(--cgopush-cat-promotion)}.cat-system .cgopush-notice-header{color:var(--cgopush-cat-system)}.cgopush-notice-title{color:var(--text-main,#00263b);word-break:break-word;font-size:13px;font-weight:700;line-height:1.35}.cgopush-notice-desc{display:none}.cgopush-notice-close{width:18px;height:18px;color:var(--text-light,#666);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:0;font-size:14px;line-height:1;transition:background .2s,color .2s;display:flex;position:absolute;top:10px;right:10px}.cgopush-notice-close:hover{background:var(--tab-hover,#0000000f);color:var(--text-main,#00263b)}.cgopush-center-panel{background:var(--panel-bg,var(--card-bg,#fff));border:1px solid var(--border-color,#00000014);box-sizing:border-box;border-radius:10px;flex-direction:column;width:100%;max-width:280px;height:auto;max-height:calc(80vh - 30px);padding:14px 12px 10px;display:flex;overflow:hidden;box-shadow:0 8px 24px #00000017}.dropdown-notice-center .cgopush-center-panel{background:var(--card-bg,#fff)!important;width:100%!important;max-width:none!important;height:100%!important;box-shadow:none!important;border:none!important;border-radius:0!important;flex-direction:column!important;min-height:0!important;max-height:none!important;margin:0!important;padding:0!important;display:flex!important}.cgopush-center-title{text-align:center;border-bottom:1px solid var(--border-color,#0000000f);color:var(--text-main,#00263b);flex-shrink:0;margin:0 0 10px;padding-bottom:8px;font-size:13px;font-weight:700}.cgopush-center-list{-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--border-color,#0000001f)transparent;flex-direction:column;flex:auto;gap:8px;height:auto;min-height:0;max-height:none;display:flex;overflow:hidden auto}.cgopush-center-list::-webkit-scrollbar{width:4px}.cgopush-center-list::-webkit-scrollbar-thumb{background:var(--border-color,#0000001f);border-radius:2px}.dropdown-notice-center .cgopush-center-list{flex:auto!important;height:auto!important;min-height:0!important;max-height:none!important;overflow-y:auto!important}.cgopush-center-empty{color:var(--text-light,#9ca3af);text-align:center;padding:18px 0;font-size:11px}.cgopush-center-item{background:var(--tab-hover,#00000008);box-sizing:border-box;border-radius:8px;flex-shrink:0;max-height:2000px;padding:10px 10px 8px;transition:transform .35s cubic-bezier(.4,0,.2,1),opacity .35s cubic-bezier(.4,0,.2,1),max-height .35s cubic-bezier(.4,0,.2,1),padding .35s cubic-bezier(.4,0,.2,1),margin .35s cubic-bezier(.4,0,.2,1),background .15s;overflow:hidden}.cgopush-center-item.is-exiting{opacity:0!important;pointer-events:none!important;border:none!important;max-height:0!important;margin-top:0!important;margin-bottom:0!important;padding-top:0!important;padding-bottom:0!important;transform:translate(100%)!important}.cgopush-center-item-header{align-items:center;gap:5px;margin-bottom:3px;font-size:11px;font-weight:600;line-height:1;display:flex}.cgopush-center-item-header svg{vertical-align:middle;flex-shrink:0;justify-content:center}.cgopush-center-item-header span,.cgopush-center-item-header svg{align-items:center;display:inline-flex}.cat-software .cgopush-center-item-header{color:var(--cgopush-cat-software)}.cat-operation .cgopush-center-item-header{color:var(--cgopush-cat-operation)}.cat-promotion .cgopush-center-item-header{color:var(--cgopush-cat-promotion)}.cat-system .cgopush-center-item-header{color:var(--cgopush-cat-system)}.cgopush-center-item-title{color:var(--text-main,#00263b);word-break:break-word;margin-bottom:4px;font-size:12.5px;font-weight:700;line-height:1.4}.cgopush-center-item-content{color:var(--text-light,#666);word-break:break-word;white-space:pre-wrap;margin-bottom:2px;font-size:11.5px;line-height:1.5}.cgopush-center-item-image{background:var(--tab-hover,#0000000a);border-radius:6px;justify-content:center;align-items:center;margin-top:8px;display:flex;overflow:hidden}.cgopush-center-item-image img{object-fit:contain;border-radius:6px;width:auto;max-width:100%;height:auto;display:block}.cgopush-center-actions{gap:6px;margin-top:7px;display:flex}.cgopush-action-btn{cursor:pointer;border:none;border-radius:4px;justify-content:center;align-items:center;padding:4px 12px;font-size:11px;font-weight:600;line-height:1.4;transition:all .15s;display:inline-flex}.cgopush-action-ignore{background:var(--btn-info-bg,#e9ecef);color:var(--btn-info-text,#495057)}.cgopush-action-ignore:hover{background:var(--btn-info-hover,#dee2e6);color:var(--text-main,#00263b)}.cgopush-action-read,.cgopush-action-view{background:var(--primary-color,#0085c4);color:var(--btn-text,#fff)!important}.cgopush-action-read:hover,.cgopush-action-view:hover{background:var(--primary-hover,#0073ab);box-shadow:0 2px 6px #0085c440;color:var(--btn-text,#fff)!important}.cgopush-center-footer{border-top:1px solid var(--border-color,#0000000f);box-sizing:border-box;align-items:center;gap:8px;width:100%;margin-top:10px;padding-top:8px;display:flex}.cgopush-btn-clear,.cgopush-mute-toggle{box-sizing:border-box;cursor:pointer;border:none;border-radius:6px;justify-content:center;align-items:center;height:32px;font-size:11px;font-weight:600;line-height:1;transition:background .15s,color .15s;display:inline-flex}.cgopush-btn-clear{background:var(--btn-info-bg,#e9ecef);color:var(--btn-info-text,#495057);flex:1}.cgopush-btn-clear:hover{background:var(--btn-info-hover,#dee2e6);color:var(--text-main,#00263b)}.cgopush-mute-toggle{background:var(--btn-info-bg,#e9ecef);color:var(--text-light,#666);white-space:nowrap;flex-shrink:0;gap:4px;padding:0 10px}.cgopush-mute-toggle cgo-icon,.cgopush-mute-toggle svg{vertical-align:middle;flex-shrink:0;justify-content:center;align-items:center;width:13px;height:13px;display:inline-flex}.cgopush-mute-toggle span{align-items:center;line-height:1;display:inline-flex}.cgopush-mute-toggle.is-active,.cgopush-mute-toggle:hover{background:var(--btn-info-hover,#dee2e6);color:var(--text-main,#00263b)}#options-btn{position:relative}.options-btn-badge{background-color:var(--danger-color,#ff4d4f);border:2px solid var(--card-bg,#fff);pointer-events:none;z-index:2;border-radius:50%;width:8px;height:8px;position:absolute;top:-2px;right:-2px}.cgopush-center-host{flex-direction:column;flex:auto;width:100%;height:100%;min-height:0;display:flex}:root{--safe-area-top:env(safe-area-inset-top,0px);--safe-area-bottom:env(safe-area-inset-bottom,0px);--safe-area-left:env(safe-area-inset-left,0px);--safe-area-right:env(safe-area-inset-right,0px);--bg:#fff;--text:#00263b;--panel:#fff;--line:#d6d4cd;--map-bg:#fff;--station-stroke:#00263b;--not-open-color:#bdcbd2;--panel-header-bg:#00263b;--panel-header-text:#fff;--close-btn-color:#fff9;--capsule-bg:#fff;--capsule-text:#00263b;--stops-tag-bg:#f0f2f5;--control-bg:#fff;--ctrl-btn-bg:#f0f2f5;--ctrl-icon:var(--text);--ctrl-hover:#e1e4e8;--divider:#e0e0e0;--list-hover:#f0f2f5;--text-main:#00263b;--text-light:#7a7a7a;--text-sub:#999;--edit-accent:#ff6b2c;--edit-muted:#00000014;--help-code-bg:#f7f9fa;--border-color:#dee2e6;--primary-color:#00263b;--primary-hover:#004060;--cgo-primary:var(--primary-color);--cgo-primary-hover:var(--primary-hover);--data1:var(--map-bg);--data2:#00263b;--data3:#999;--card-bg:#fff;--bg-color:#f0f2f5;--btn-text:#fff;--btn-info-bg:#e9ecef;--btn-info-text:#495057;--btn-info-hover:#dee2e6;--header-bg:#fff;--header-height:48px;--text-color:var(--text-main);--bg-card:var(--card-bg);--panel-bg:var(--panel);--tab-bg:#f8f9fa;--tab-hover:#00000008;--success-color:#34a853;--success-bg:#e6ffed;--success-border:#a8d5b5;--warning-color:#f59e0b;--warning-bg:#fff3cd80;--warning-border:#ffeeba80;--danger-color:#ea4335;--danger-hover:#b3261e;--danger-bg:#fff1f1;--danger-border:#e58f8f;--info-color:#006098;--info-bg:#e8f0fe;--info-border:#b8d0ee}@media (min-width:641px){:root{--header-height:84px}}[data-theme=dark]{--bg:#1a1a1a;--text:#e5e8ea;--panel:#1f2020;--line:#333;--map-bg:#1a1a1a;--station-stroke:#bdcbd2;--not-open-color:#4e4e4e;--panel-header-bg:#373838;--panel-header-text:#e5e8ea;--close-btn-color:#78848b;--capsule-bg:#1f2020;--capsule-text:#78848b;--stops-tag-bg:#78848b;--control-bg:#1f2020;--ctrl-btn-bg:#373838;--ctrl-icon:var(--text);--ctrl-hover:#4f4f4f;--divider:#333;--list-hover:#373838;--text-main:#e5e8ea;--text-light:#a0b0b9;--text-sub:#78848b;--edit-accent:#ff8a55;--edit-muted:#ffffff14;--primary-color:#006098;--primary-hover:#0070b0;--cgo-primary:var(--primary-color);--cgo-primary-hover:var(--primary-hover);--cgo-btn-dark-bg:var(--primary-color);--cgo-btn-dark-hover-bg:var(--primary-hover);--help-code-bg:#2a2a2a;--border-color:#333;--data1:var(--map-bg);--data2:#fff;--data3:#999;--card-bg:#1f2020;--bg-color:#1a1a1a;--btn-text:#fff;--btn-info-bg:#373838;--btn-info-text:#e5e8ea;--btn-info-hover:#4a4b4c;--header-bg:#1f2020;--text-color:var(--text-main);--bg-card:var(--card-bg);--panel-bg:var(--panel);--tab-bg:#2c2d2e;--tab-hover:#ffffff0d;--success-color:#34a853;--success-bg:#1b3e20;--success-border:#2d5c36;--warning-color:#f59e0b;--warning-bg:#644b0033;--warning-border:#785a004d;--danger-color:#ea4335;--danger-hover:#ff5252;--danger-bg:#3b0f0f;--danger-border:#7a2424;--info-color:#4da3e0;--info-bg:#15293d;--info-border:#1e4566}@media (prefers-color-scheme:dark){:root:not([data-theme=light]),html:not([data-theme=light]){--bg:#1a1a1a;--text:#e5e8ea;--panel:#1f2020;--line:#333;--map-bg:#1a1a1a;--station-stroke:#bdcbd2;--not-open-color:#4e4e4e;--panel-header-bg:#373838;--panel-header-text:#e5e8ea;--close-btn-color:#78848b;--capsule-bg:#1f2020;--capsule-text:#78848b;--stops-tag-bg:#78848b;--control-bg:#1f2020;--ctrl-btn-bg:#373838;--ctrl-icon:var(--text);--ctrl-hover:#4f4f4f;--divider:#333;--list-hover:#373838;--text-main:#e5e8ea;--text-light:#a0b0b9;--text-sub:#78848b;--edit-accent:#ff8a55;--edit-muted:#ffffff14;--primary-color:#006098;--primary-hover:#0070b0;--cgo-primary:var(--primary-color);--cgo-primary-hover:var(--primary-hover);--cgo-btn-dark-bg:var(--primary-color);--cgo-btn-dark-hover-bg:var(--primary-hover);--help-code-bg:#2a2a2a;--border-color:#333;--data1:var(--map-bg);--data2:#fff;--data3:#999;--card-bg:#1f2020;--bg-color:#1a1a1a;--btn-text:#fff;--btn-info-bg:#373838;--btn-info-text:#e5e8ea;--btn-info-hover:#4a4b4c;--header-bg:#1f2020;--text-color:var(--text-main);--bg-card:var(--card-bg);--panel-bg:var(--panel);--tab-bg:#2c2d2e;--tab-hover:#ffffff0d;--success-color:#34a853;--success-bg:#1b3e20;--success-border:#2d5c36;--warning-color:#f59e0b;--warning-bg:#644b0033;--warning-border:#785a004d;--danger-color:#ea4335;--danger-hover:#ff5252;--danger-bg:#3b0f0f;--danger-border:#7a2424;--info-color:#4da3e0;--info-bg:#15293d;--info-border:#1e4566;--edge-gradient-bg:#1a1a1a;--edge-gradient-bg-transparent:#1a1a1a00}}.help-grid{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:15px;display:grid}.help-card{background-color:var(--help-code-bg);border:1px solid var(--border-color);color:var(--text-main);text-align:left;border-radius:12px;flex-direction:column;align-items:flex-start;padding:12px;display:flex}.help-card-icon{margin-bottom:8px;font-size:24px}.help-card h4{color:var(--text-main);margin:0 0 5px;font-size:13px;font-weight:700}.help-card ul{color:var(--text-light);margin:0;padding-left:12px;font-size:11px;line-height:1.5;list-style:outside}.help-card ul li{margin-bottom:0;padding-left:0}.help-card ul li:before{content:none}.help-link-btn{background-color:var(--panel);color:var(--text-main);border:1px solid var(--border-color);border-radius:8px;align-items:center;margin-bottom:10px;padding:12px 15px;font-size:14px;font-weight:700;text-decoration:none;transition:background .2s;display:flex;justify-content:space-between!important}.help-link-btn:hover{background-color:var(--ctrl-hover)}.help-link-btn.primary{background-color:var(--primary-color);color:#fff;border:none}.help-link-btn.primary:hover{background-color:var(--primary-hover)}.help-data-info{background-color:var(--help-code-bg);color:var(--text-light);border:1px solid var(--border-color);border-radius:8px;margin:15px 0;padding:12px;font-size:12px;line-height:1.6}.help-data-info strong{color:var(--text-main)}*{box-sizing:border-box}html{background-color:var(--bg);-webkit-tap-highlight-color:transparent;width:100%;height:100dvh;margin:0;padding:0;overflow:hidden}:root{--font-latin:"Arimo","Arial","Helvetica Neue",sans-serif;--font-cjk:"Noto Sans SC","PingFang SC","HarmonyOS Sans SC","Microsoft YaHei","Hiragino Sans GB",sans-serif;--font-ui:"Arimo","Noto Sans SC","PingFang SC","HarmonyOS Sans SC","Microsoft YaHei","Hiragino Sans GB",sans-serif;--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;--font-japanese:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;--font-korean:"Noto Sans KR","Apple SD Gothic Neo","Malgun Gothic",sans-serif}[data-language=ja] body{--font-ui:"Arimo",var(--font-japanese)}[data-language=ko] body{--font-ui:"Arimo",var(--font-korean)}[data-station-language=en] .sta-primary{font-family:var(--font-latin)!important}[data-station-language=en] .sta-secondary{font-family:var(--font-cjk)!important}.header-name-group,.header-name-group *,.panel-header,.panel-header *{-webkit-text-stroke:0!important;text-shadow:none!important}[data-station-language=en] .label-group .sta-main,[data-station-language=en] .label-group .sta-row[data-row-role=main],[data-station-language=en] .label-group .stacn{-webkit-text-stroke:1px var(--map-bg);paint-order:stroke fill;text-shadow:0 0 1px var(--map-bg),0 0 2px var(--map-bg);font-size:8px!important;line-height:9.6px!important;font-family:var(--font-latin)!important;letter-spacing:-.01em!important;font-weight:500!important}[data-station-language=en] .label-group .sta-meaning,[data-station-language=en] .label-group .sta-phonetic,[data-station-language=en] .label-group .sta-row[data-row-role=meaning],[data-station-language=en] .label-group .sta-row[data-row-role=phonetic]{-webkit-text-stroke:.8px var(--map-bg);paint-order:stroke fill;text-shadow:0 0 1px var(--map-bg),0 0 2px var(--map-bg);font-size:6px!important;line-height:7.2px!important;font-family:var(--font-latin)!important;letter-spacing:-.01em!important;font-weight:500!important}[data-station-language=en] .label-group .sta-native,[data-station-language=en] .label-group .sta-row[data-row-role=native],[data-station-language=en] .label-group .sta-secondary{-webkit-text-stroke:.8px var(--map-bg);paint-order:stroke fill;text-shadow:0 0 1px var(--map-bg),0 0 2px var(--map-bg);font-size:6px!important;line-height:7.5px!important;font-family:var(--font-cjk)!important;letter-spacing:-.01em!important;font-weight:500!important}[data-station-language=en] .label-group .sta-row:first-child{margin-top:0!important}[data-station-language=en] .label-group .sta-row:nth-child(2){margin-top:-1.5px!important}[data-station-language=en] .label-group .sta-row:nth-child(n+3){margin-top:-2px!important}[data-station-language=en] .label-group .sta-row.sta-phonetic,[data-station-language=en] .label-group .sta-row:nth-child(4),[data-station-language=en] .label-group .sta-row[data-row-role=phonetic]{margin-top:-1px!important}[data-station-language=en] .label-group .sta-main>span:nth-child(n+2),[data-station-language=en] .label-group .sta-row[data-row-role=main]>span:nth-child(n+2){margin-top:-2.5px!important}[data-station-language=en] .label-group .sta-row>span:nth-child(n+2){margin-top:-2px!important}[data-station-language=ja] .label-group .sta-primary,[data-station-language=ja] .label-group .sta-secondary{font-family:var(--font-japanese)!important}:root{--font-japanese:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic","HarmonyOS Sans JP",sans-serif}.sta-ja-ruby{flex-direction:row;align-items:flex-end;gap:0;white-space:nowrap!important;display:flex!important}.sta-ja-ruby.has-latin{flex-direction:column!important}.sta-ja-ruby.has-latin .ja-ruby-cjk-line,.sta-ja-ruby.has-latin .ja-ruby-latin-line{white-space:nowrap!important;flex-direction:row!important;align-items:flex-end!important;gap:0!important;display:flex!important}.sta-ja-ruby.has-latin .ja-ruby-latin-line{margin-top:-1.5px}.label-group[style*="text-align: center"] .sta-ja-ruby,.label-group[style*=text-align\:center] .sta-ja-ruby{justify-content:center!important}.label-group[style*="text-align: center"] .sta-ja-ruby.has-latin,.label-group[style*=text-align\:center] .sta-ja-ruby.has-latin{align-items:center!important}.label-group[style*="text-align: right"] .sta-ja-ruby,.label-group[style*=text-align\:right] .sta-ja-ruby{justify-content:flex-end!important}.label-group[style*="text-align: right"] .sta-ja-ruby.has-latin,.label-group[style*=text-align\:right] .sta-ja-ruby.has-latin{align-items:flex-end!important}.ja-ruby-group{flex-direction:column;justify-content:flex-end;align-items:stretch;display:inline-flex}.ja-kana{letter-spacing:-.085em;transform-origin:bottom;font-size:4.25px;font-weight:400;line-height:1;-webkit-text-stroke:.4px var(--map-bg);paint-order:stroke fill;text-shadow:0 0 1px var(--map-bg);margin-bottom:-.5px;transform:scaleX(.8)}.ja-kana,.ja-kanji{white-space:nowrap;text-align:center;font-family:var(--font-japanese);display:block}.ja-kanji{font-size:11.5px;font-weight:500;line-height:12px}.ja-latin .ja-kanji{font-size:8px;font-family:var(--font-latin)}.sta-ja-gloss{letter-spacing:-.1em;white-space:nowrap;font-size:5px;font-weight:500;line-height:6.5px;font-family:var(--font-japanese);-webkit-text-stroke:.6px var(--map-bg);paint-order:stroke fill;text-shadow:0 0 1px var(--map-bg);display:block}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){.ja-kana{-webkit-text-stroke:.3px var(--map-bg)}.sta-ja-gloss{-webkit-text-stroke:.4px var(--map-bg)}}.panel-ja-ruby{white-space:nowrap!important;line-height:1!important;font-family:var(--font-japanese)!important;flex-direction:row!important;align-items:flex-end!important;gap:0!important;display:flex!important}.panel-ja-ruby-group{flex-direction:column;justify-content:flex-end;align-items:center;display:inline-flex}.panel-ja-kana{letter-spacing:-.05em;transform-origin:bottom;font-size:8.5px;font-weight:400;line-height:1;opacity:.85;margin-bottom:2px;transform:scaleX(.85)}.panel-ja-kana,.panel-ja-kanji{white-space:nowrap;font-family:var(--font-japanese);display:block}.panel-ja-kanji{font-size:18.5px;font-weight:700;line-height:1.1;letter-spacing:.5px}.panel-ja-ruby-group.ja-latin .panel-ja-kanji{font-size:13px;font-family:var(--font-latin)}.panel-ja-gloss{font-family:var(--font-japanese);letter-spacing:-.02em;white-space:nowrap;margin-top:3px;font-size:11px;font-weight:500;line-height:1.2;display:block;color:#ffffffb3!important}.panel-header.is-light-bg .panel-ja-gloss{color:#00263bb3!important}[data-station-language=ko] .sta-primary,[data-station-language=ko] .sta-secondary{font-family:var(--font-korean)!important}[data-station-font=noto] .sta-primary,[data-station-font=noto] .sta-secondary{font-family:Noto Sans SC,Noto Sans JP,Noto Sans KR,sans-serif!important}[data-station-font=gothic] .sta-primary,[data-station-font=gothic] .sta-secondary{font-family:Arial,Hiragino Kaku Gothic ProN,Apple SD Gothic Neo,sans-serif!important}body{background-color:var(--bg);color:var(--text);overscroll-behavior:none;width:100%;height:100dvh;margin:0;padding:0;font-weight:500;position:absolute;inset:0;font-family:var(--font-ui)!important;-webkit-text-size-adjust:100%!important;-moz-text-size-adjust:100%!important;text-size-adjust:100%!important;-webkit-font-smoothing:antialiased!important;-moz-osx-font-smoothing:grayscale!important;text-rendering:optimizeLegibility!important;overflow:hidden!important}button,input,select,textarea{font-family:inherit!important;font-weight:inherit!important}.app{box-sizing:border-box;background-color:var(--bg);flex-direction:column;gap:0;width:100%;height:100dvh;min-height:100%;display:flex;position:absolute;inset:0;overflow:hidden}html.pwa-standalone,html.pwa-standalone .app,html.pwa-standalone body{height:100dvh!important;min-height:100dvh!important}html.pwa-standalone .app,html.pwa-standalone body{position:relative;inset:auto}@media (display-mode:standalone){.app,body,html{height:100dvh!important;min-height:100dvh!important}.app,body{position:relative;inset:auto}}.tool-header{height:0;min-height:0;box-shadow:none;touch-action:none;pointer-events:none;color:var(--text-main);background-color:#0000;border-bottom:none;flex-shrink:0;padding:0;top:0;left:0;right:0}.header-island,.tool-header{box-sizing:border-box;z-index:1000;position:absolute}.header-island{top:calc(env(safe-area-inset-top,0px) + 20px);background-color:var(--header-bg);border:1px solid var(--border-color);pointer-events:auto;border-radius:12px;align-items:center;height:52px;min-height:52px;padding:0 12px;transition:left .25s,right .25s,width .25s,background-color .3s,border-color .3s;display:flex;box-shadow:0 4px 20px #0000002e}.header-island-left{left:calc(20px + env(safe-area-inset-left,0px));gap:10px}.header-island-divider{background-color:var(--border-color);opacity:.8;flex-shrink:0;align-self:center;width:1px;height:24px}@media (min-width:641px){html.pwa-standalone .header-island-left .header-island-divider,html.pwa-standalone .header-island-left .header-left{display:none!important}}@media (display-mode:fullscreen) and (min-width:641px),(display-mode:minimal-ui) and (min-width:641px),(display-mode:standalone) and (min-width:641px),(display-mode:window-controls-overlay) and (min-width:641px){.header-island-left .header-island-divider,.header-island-left .header-left{display:none!important}}.header-island-right{right:calc(20px + env(safe-area-inset-right,0px));gap:8px}.header-left,.header-right{z-index:2;align-items:center;gap:8px;display:flex}.header-right{justify-content:flex-end}.header-left .btn,.header-right .btn{margin:0!important}.header-center{white-space:nowrap;touch-action:manipulation;z-index:1;pointer-events:auto;align-items:center;gap:8px;display:flex}.header-logo{border-radius:6px;flex-shrink:0;width:auto;height:32px;display:block}.app-title{color:var(--text-main);font-size:1.1rem;font-weight:600;line-height:1;display:inline-block}.title-short{display:none}.mobile-only{display:none!important}.desktop-only{display:inline-flex}.title-full{display:inline}@media (max-width:640px){.title-full{display:none}.title-short{display:inline}.mobile-only{display:inline-flex!important}.desktop-only{display:none!important}}.btn{cursor:pointer;box-sizing:border-box;touch-action:manipulation;white-space:nowrap;border:1px solid #0000;border-radius:4px;justify-content:center;align-items:center;height:34px;margin:0;padding:6px 12px;font-size:.9rem;font-weight:500;line-height:1;text-decoration:none;transition:all .2s;display:inline-flex}.btn-icon{fill:currentColor;width:1.1em;height:1.1em;margin-top:-1px}.btn-info{background-color:var(--btn-info-bg);color:var(--btn-info-text)}.btn-info,.btn-info:hover{border-color:var(--border-color)}.btn-info:hover{background-color:var(--btn-info-hover);color:var(--text-main)}.btn-dark{background-color:var(--primary-color);color:#fff;border-color:var(--primary-color);font-weight:600}.btn-dark:hover{background-color:var(--primary-hover);border-color:var(--primary-hover)}.btn-dark .btn-icon path{fill:#fff!important}.btn-primary{background-color:var(--primary-color);color:#fff;border-color:var(--primary-color);font-weight:600}.btn-primary:hover{background-color:var(--primary-hover);border-color:var(--primary-hover)}.btn-primary.active{background-color:var(--primary-hover);box-shadow:inset 0 2px 4px #0003}.header{display:none}.map{flex-direction:column;flex:1;width:100%;min-height:0;display:flex;overflow:hidden;margin:0!important;padding:0!important}.map-container{background:var(--map-bg);touch-action:none;flex:1;width:100%;position:relative;border:none!important}.map-container,.map-container *{-webkit-user-select:none;user-select:none}.map-content{transform-origin:0 0;image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges;position:absolute;top:0;left:0}.map-content.is-interacting{will-change:transform}.map-bg-image{z-index:1;pointer-events:none;-webkit-user-select:none;user-select:none;transform-origin:50%;position:absolute}.map-svg{z-index:2;shape-rendering:geometricPrecision;text-rendering:optimizeLegibility;image-rendering:-webkit-optimize-contrast;background:0 0;display:block;position:relative}.zoom-controls{background:var(--control-bg);z-index:800;border:1px solid var(--divider);border-radius:20px;flex-direction:column;align-items:center;gap:5px;width:60px;padding:6px 4px;display:flex;position:absolute;top:88px;left:20px;box-shadow:0 4px 12px #00000026}.zoom-btn{background:var(--ctrl-btn-bg);cursor:pointer;width:24px;height:24px;color:var(--ctrl-icon);border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:all .2s;display:inline-flex}.zoom-btn:hover{background-color:var(--ctrl-hover)}.zoom-btn svg{fill:currentColor;width:16px;height:16px}.zoom-slider-wrap{justify-content:center;align-items:center;width:24px;height:80px;display:flex;position:relative}.zoom-slider{appearance:none;cursor:pointer;background:0 0;width:80px;height:24px;margin:0;transform:rotate(-90deg)}.zoom-slider::-webkit-slider-runnable-track{background:var(--divider);border-radius:2px;width:100%;height:3px}.zoom-slider::-webkit-slider-thumb{appearance:none;background:#00263b;border-radius:50%;width:12px;height:12px;margin-top:-4.5px;box-shadow:0 1px 3px #0000004d}[data-theme=dark] .zoom-slider::-webkit-slider-thumb{background:#78848b}.zoom-value{display:none}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.map-content[data-edit-mode=true] .layer-assets,.map-content[data-edit-mode=true] .layer-lines,.map-content[data-edit-mode=true] .layer-stations{opacity:.35;pointer-events:none;transition:opacity .2s}.map-content[data-edit-mode=true][data-active-layer=assets] .layer-assets,.map-content[data-edit-mode=true][data-active-layer=lines] .layer-lines,.map-content[data-edit-mode=true][data-active-layer=stations] .layer-stations{opacity:1;pointer-events:auto}.map-content[data-edit-mode=true][data-active-layer=stations][data-station-tool=add] .layer-lines{opacity:.7;pointer-events:auto}.map-content[data-edit-mode=true][data-active-layer=stations] .labels-layer{pointer-events:none}.map-content[data-edit-mode=true][data-active-layer=lines] .labels-layer,.map-content[data-edit-mode=true][data-active-layer=lines] .labels-layer .label-group,.map-content[data-edit-mode=true][data-active-layer=lines] .layer-stations,.map-content[data-edit-mode=true][data-active-layer=lines] .layer-stations .station,.map-content[data-edit-mode=true][data-active-layer=lines] .layer-stations .station-hit,.map-content[data-edit-mode=true][data-active-layer=notOpen] .labels-layer,.map-content[data-edit-mode=true][data-active-layer=notOpen] .labels-layer .label-group,.map-content[data-edit-mode=true][data-active-layer=notOpen] .layer-stations,.map-content[data-edit-mode=true][data-active-layer=notOpen] .layer-stations .station,.map-content[data-edit-mode=true][data-active-layer=notOpen] .layer-stations .station-hit{pointer-events:none!important}.animate-zoom{transition:transform .2s cubic-bezier(.25,.46,.45,.94)}.panel-fit-transition,.route-fit-transition{transition:transform .34s cubic-bezier(.22,1,.36,1)}.map-content.sheet-map-follow{will-change:transform;backface-visibility:hidden;transition:none!important}.map-canvas{background:var(--map-bg);position:relative}.stations-layer{pointer-events:none;z-index:35;inset:0}.station,.stations-layer{image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges;position:absolute}.station{cursor:pointer;justify-content:center;align-items:center;transition:transform .2s;display:flex}.station,.station-hit{pointer-events:auto;transform:translate(-50%,-50%)}.station-hit{background:0 0;border-radius:50%;width:22px;height:22px;position:absolute;top:50%;left:50%}.station-hit.is-enlarged{width:36px;height:36px}.station.is-selected{box-shadow:0 0 0 3px var(--edit-accent);cursor:grab;border-radius:50%}.station.is-dragging,.station.is-selected:active{cursor:grabbing}.station.is-dragging{box-shadow:0 0 0 3px var(--edit-accent),0 4px 12px #0000002e;z-index:200;transition:none!important}.station svg{width:100%;height:100%;shape-rendering:geometricPrecision;text-rendering:optimizeLegibility;display:block}.station.active{filter:drop-shadow(0 0 5px #00000080);transform:translate(-50%,-50%)scale(1.5);z-index:100!important}.label-group.active{z-index:35}.label-group.active .stacn{color:#d0021b;transform-origin:inherit;font-size:15px;font-weight:700;line-height:15px;transform:scale(1.1)}.label-group.active .staen{color:#d0021b;font-size:9px;font-weight:700;line-height:8px}.diy,.dot,.rdot,.tsfo{z-index:15;width:10px;height:10px}.tsf{z-index:20;width:17.5px;height:17.5px}.no{z-index:5;width:10px;height:10px}.station.is-iso-fare-origin{z-index:45!important;width:14px!important;height:14px!important}.iso-fare-origin-dot{box-sizing:border-box;background:#e53935;border:2px solid #fff;border-radius:50%;width:14px;height:14px;animation:isoOriginPulse 2s ease-in-out infinite;display:block;box-shadow:0 0 0 1px #0003,0 2px 8px #e53935a6}[data-theme=dark] .iso-fare-origin-dot{background:#ff453a;border:2px solid #fff;box-shadow:0 0 0 1px #00000080,0 0 12px #ff453acc}@keyframes isoOriginPulse{0%,to{transform:scale(1);box-shadow:0 0 0 1px #0003,0 2px 8px #e53935a6}50%{transform:scale(1.15);box-shadow:0 0 0 2px #fffc,0 3px 12px #e53935e6}}.station.is-iso-fare-node{z-index:35!important;width:16px!important;height:16px!important}.iso-fare-badge{color:#111827;box-sizing:border-box;-webkit-user-select:none;user-select:none;pointer-events:none;background:#fff;border:1.5px solid #374151;border-radius:50%;justify-content:center;align-items:center;width:16px;min-width:16px;height:16px;min-height:16px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:10px;font-weight:800;line-height:1;transition:transform .15s;display:flex;box-shadow:0 1px 3px #00000040}.iso-fare-badge.digits-2{letter-spacing:-.5px;font-size:8.5px}[data-theme=dark] .iso-fare-badge{color:#fff;background:#202124;border:1.5px solid #e5e7eb;box-shadow:0 1px 4px #0009}.label-group.type-no,.label-group.type-no .ja-kana,.label-group.type-no .ja-kanji,.label-group.type-no .sta-ja-gloss,.label-group.type-no .sta-ja-ruby,.label-group.type-no .sta-row,.label-group.type-no .stacn,.label-group.type-no .staen{color:var(--not-open-color)!important}.station-svg{width:100%;height:100%;display:block}.labels-layer{pointer-events:none;z-index:30;position:absolute;inset:0}#custom-context-menu,.map-context-menu{z-index:10000;background:var(--card-bg,#fff);color:var(--text-main,#00263b);border-radius:var(--radius-md,8px);box-shadow:var(--shadow-xl,0 18px 46px #00000029);border:1px solid var(--border-color,#dee2e6);min-width:180px;max-width:calc(100vw - 20px);max-height:calc(100dvh - 20px);font-family:var(--font-sans,system-ui,-apple-system,sans-serif);-webkit-user-select:none;user-select:none;flex-direction:column;gap:2px;padding:6px;animation:menuFadeIn .15s ease-out;display:flex;position:fixed;overflow-y:auto}@keyframes menuFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.ctx-header{text-align:center;letter-spacing:.3px;margin-bottom:4px;padding:8px 12px 6px;font-weight:700;border-bottom:1px solid var(--border-color)!important}.ctx-header,.ctx-menu-btn{font-size:var(--text-base,14px);color:var(--text-main)!important}.ctx-menu-btn{cursor:pointer;border-radius:var(--radius-xs,4px);transition:background var(--transition-base,.15s ease),color var(--transition-base,.15s ease);box-sizing:border-box;text-align:left;background:0 0;border:none;justify-content:flex-start;align-items:center;gap:8px;width:100%;padding:9px 12px;font-weight:500;text-decoration:none;display:flex}.ctx-menu-btn:hover{background-color:var(--btn-info-hover,#0000000d)!important;color:var(--text-main)!important}.ctx-menu-btn:active{background-color:var(--btn-info-bg,#0000001a)}.ctx-menu-btn .btn-icon,.ctx-menu-btn svg{fill:currentColor;color:currentColor;flex-shrink:0;width:16px;height:16px}.ctx-btn-primary{font-weight:600;color:var(--primary-color)!important}.ctx-btn-primary svg{color:var(--primary-color)!important;fill:var(--primary-color)!important}.ctx-btn-danger{font-weight:600}.ctx-btn-danger,.ctx-btn-danger svg{color:var(--danger-color,#d93025)!important}.ctx-btn-danger svg{fill:var(--danger-color,#d93025)!important}.ctx-divider{letter-spacing:.3px;align-items:center;gap:8px;margin-top:4px;padding:6px 12px 2px;font-size:11px;font-weight:600;display:flex;color:var(--text-light,#666)!important;background:0 0!important;border:none!important}.ctx-divider:after{content:"";background:var(--border-color,#dee2e6);flex:1;height:1px}.label-group{cursor:pointer;white-space:nowrap;pointer-events:auto;position:absolute}.stacn{color:var(--text);font-size:11.5px;font-weight:500;line-height:13.8px;font-family:var(--font-cjk);-webkit-text-stroke:1.2px var(--map-bg);paint-order:stroke fill;text-shadow:0 0 1px var(--map-bg),0 0 2px var(--map-bg);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:block}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){.stacn{-webkit-text-stroke:.8px var(--map-bg);text-shadow:0 0 1px var(--map-bg)}}.staen{white-space:nowrap;text-shadow:0 0 1px var(--map-bg),0 0 2px var(--map-bg);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin-top:0;display:block}.sta-tertiary,.staen{color:var(--text);font-size:6.65px;line-height:6.35px;font-family:var(--font-latin);-webkit-text-stroke:1px var(--map-bg);paint-order:stroke fill;font-weight:500}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){.staen{-webkit-text-stroke:.6px var(--map-bg);text-shadow:0 0 1px var(--map-bg)}}.footer{color:#6c6a63;padding:12px 20px 18px;font-size:12px}.empty{padding:40px 20px}.content{flex:1;align-items:stretch;gap:0;min-height:0;display:flex;overflow:hidden;margin:0!important;padding:0!important}.edit-toggle.is-active{border-color:var(--edit-accent);color:var(--edit-accent)}.edit-floating-ui{z-index:50;pointer-events:none;flex-direction:column;align-items:center;max-width:100%;display:flex;position:absolute;bottom:40px;left:50%}.edit-toolbar{pointer-events:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);cursor:grab;-webkit-user-select:none;user-select:none;background:linear-gradient(135deg,#fffffff5,#faf6f2eb);border:1px solid #00000014;border-radius:18px;flex-wrap:nowrap;justify-content:center;align-items:center;gap:6px;max-width:min(100vw,1100px);padding:6px 10px;animation:toolbarSlideUp .3s cubic-bezier(.2,.8,.2,1);display:flex;overflow-x:auto;box-shadow:0 10px 28px #0000002e}.edit-toolbar:active{cursor:grabbing}.edit-selection-group{background:var(--edit-muted);border:1px solid #0000000d;border-radius:20px;align-items:center;gap:6px;margin:0 4px;padding:4px 8px 4px 12px;display:inline-flex}.edit-selection-count{color:var(--text-main);white-space:nowrap;font-size:12px;font-weight:500}.edit-selection-clear{color:var(--text-light);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;padding:0;font-size:16px;line-height:1;transition:all .2s;display:flex}.edit-selection-clear:hover{color:var(--text-main);background-color:#0000001a}@keyframes toolbarSlideUp{0%{opacity:0;transform:translate(-50%,100%)}to{opacity:1;transform:translate(-50%)}}.edit-tool{color:#2d2a27;letter-spacing:.2px;cursor:pointer;background:linear-gradient(#fff,#f2ede7);border:1px solid #00000014;border-radius:14px;flex-direction:column;gap:3px;min-width:46px;padding:6px 10px 7px;font-size:12px;line-height:1;transition:transform .12s,box-shadow .18s,background .2s,border-color .2s}.edit-tool,.edit-tool-icon{align-items:center;display:inline-flex}.edit-tool-icon{justify-content:center;width:18px;height:18px}.edit-tool-icon svg{width:18px;height:18px;display:block}.edit-tool-label{white-space:nowrap;font-size:11px;line-height:1}.edit-tool.is-active{color:#fff;background:linear-gradient(#ff6b2c,#ff8a55);border-color:#ff6b2c;box-shadow:0 8px 18px #ff6b2c59}.edit-tool.save{color:#ff6b2c;background:#fff;border-color:#ff6b2c;font-weight:600}.edit-tool.save:disabled{opacity:.6;cursor:not-allowed}.edit-tool:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.edit-tool:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 14px #0000001f}.edit-toolbar-divider{background:#0000001f;width:1px;height:22px}@media (max-width:640px){.edit-toolbar{border-radius:18px;gap:6px;width:calc(100% - 16px)}.edit-tool{padding:4px 10px;font-size:11px}.edit-toolbar-divider{height:14px}}.edit-sub-mode-tabs{background:#00000014;border-radius:6px;gap:2px;padding:2px;display:flex}.edit-sub-tab{color:var(--text-sub,#666);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:4px;padding:4px 10px;font-size:.72rem;transition:background .15s,color .15s}.edit-sub-tab.is-active{background:var(--edit-accent,#ff6b2c);color:#fff}.edit-sub-tab:hover:not(.is-active){background:#ff6b2c26}@media (max-width:640px){.edit-sub-mode-tabs{gap:1px;padding:1px}.edit-sub-tab{padding:3px 7px;font-size:.65rem}}.station-add-prompt-overlay{z-index:9998;background:0 0;position:fixed;inset:0}.station-add-prompt{z-index:10001;-webkit-backdrop-filter:blur(10px);background:#fffffff5;border:1px solid #0f172a14;border-radius:12px;width:220px;padding:10px;animation:station-add-prompt-in .16s ease-out;position:fixed;box-shadow:0 10px 28px #0f172a24,inset 0 1px #ffffffb3}@keyframes station-add-prompt-in{0%{opacity:0;transform:translateY(6px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.station-add-prompt-head{align-items:flex-start;gap:8px;margin-bottom:10px;display:flex}.station-add-prompt-swatch{border-radius:4px;flex-shrink:0;width:12px;height:12px;margin-top:3px;box-shadow:0 0 0 1px #0000000f}.station-add-prompt-titles{flex-direction:column;gap:2px;min-width:0;display:flex}.station-add-prompt-titles strong{color:#0f172a;font-size:13px;font-weight:700;line-height:1.25}.station-add-prompt-titles small{color:#64748b;white-space:nowrap;text-overflow:ellipsis;font-size:11px;line-height:1.3;overflow:hidden}.station-add-prompt-actions{gap:6px;display:flex}.station-add-prompt-cancel,.station-add-prompt-confirm{cursor:pointer;border:1px solid #0000;border-radius:8px;height:32px;font-size:12px;font-weight:700;transition:background .12s,border-color .12s,transform 80ms}.station-add-prompt-cancel{color:#475569;background:#f1f5f9;border-color:#e2e8f0;flex:none;padding:0 12px}.station-add-prompt-cancel:hover{background:#e2e8f0}.station-add-prompt-confirm{color:#fff;background:#0f2f45;border-color:#0f2f45;flex:1;justify-content:center;align-items:center;gap:5px;display:inline-flex}.station-add-prompt-confirm:hover{background:#16405c}.station-add-prompt-cancel:active,.station-add-prompt-confirm:active{transform:translateY(.5px)}.station-add-prompt-plus{background:#ffffff2e;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;font-size:14px;font-weight:700;line-height:1;display:inline-flex}.dark-mode .station-add-prompt,[data-theme=dark] .station-add-prompt{background:#20272cf5;border-color:#ffffff14}.dark-mode .station-add-prompt-titles strong,[data-theme=dark] .station-add-prompt-titles strong{color:#e8edf0}.dark-mode .station-add-prompt-cancel,[data-theme=dark] .station-add-prompt-cancel{color:#c5d0d8;background:#2a3238;border-color:#3a444c}.nearby-station-picker-overlay{z-index:9999;position:fixed;inset:0}.nearby-station-picker{z-index:10000;background:var(--bg,#fff);border:1px solid var(--border,#e0e0e0);border-radius:8px;min-width:200px;max-width:320px;position:fixed;overflow:hidden;box-shadow:0 4px 16px #00000026}.nearby-station-picker-header{color:var(--text-sub,#666);border-bottom:1px solid var(--border,#e0e0e0);background:var(--bg-alt,#f8f8f8);padding:8px 12px;font-size:.72rem;font-weight:600}.nearby-station-picker-list{margin:0;padding:4px 0;list-style:none}.nearby-station-picker-item{cursor:pointer;text-align:left;width:100%;color:var(--text,#333);background:0 0;border:none;align-items:center;gap:8px;padding:8px 12px;font-size:.78rem;transition:background .15s;display:flex}.nearby-station-picker-item:hover{background:#ff6b2c14}.nearby-station-picker-item:active{background:#ff6b2c26}.nearby-station-picker-item-dot{border:1.5px solid #fff;border-radius:50%;flex-shrink:0;width:10px;height:10px;box-shadow:0 0 0 1px #0000001a}.nearby-station-picker-item-info{flex-direction:column;gap:1px;min-width:0;display:flex}.nearby-station-picker-item-name{white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.nearby-station-picker-item-line{color:var(--text-sub,#999);white-space:nowrap;text-overflow:ellipsis;font-size:.65rem;overflow:hidden}.edit-toolbar-status{color:var(--text-sub);font-size:12px}.edit-toolbar-status.success{color:var(--edit-accent)}.edit-toolbar-status.error{color:#e5534b}.edit-add-indicator{background:var(--edit-muted);color:var(--text-light);border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;display:inline-flex}.edit-add-indicator svg{fill:none;stroke:currentColor;stroke-width:1.6px;width:14px;height:14px}.edit-tool-hint{color:#fff;pointer-events:none;white-space:nowrap;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#001d31d9;border-radius:8px;margin-bottom:12px;padding:6px 12px;font-size:12px;animation:fadeIn .2s ease-out;box-shadow:0 4px 12px #00000026}.edit-tool-hint:after{content:"";border:6px solid #0000;border-top-color:#001d31d9;position:absolute;top:100%;left:50%;transform:translate(-50%)}@keyframes fadeIn{0%{opacity:0;transform:translate(-50%,5px)}to{opacity:1;transform:translate(-50%)}}.edit-draw-surface{cursor:crosshair;pointer-events:all}.line-draw-guide{z-index:70;border:1px solid var(--edit-accent);grid-template-columns:minmax(0,1fr) auto;gap:8px 14px;width:min(520px,100% - 420px);min-width:360px;padding:10px 12px;display:grid;position:absolute;top:76px;left:50%}@supports (color:color-mix(in lab,red,red)){.line-draw-guide{border:1px solid color-mix(in srgb,var(--edit-accent)35%,var(--divider))}}.line-draw-guide{background:var(--panel);border-radius:10px}@supports (color:color-mix(in lab,red,red)){.line-draw-guide{background:color-mix(in srgb,var(--panel)96%,transparent)}}.line-draw-guide{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transform:translate(-50%);box-shadow:0 12px 30px #001d3124}.line-draw-guide-progress{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;display:grid}.line-draw-guide-progress span{color:var(--text-light);white-space:nowrap;align-items:center;gap:5px;font-size:9px;font-weight:700;display:flex;position:relative}.line-draw-guide-progress span:not(:last-child):after{content:"";background:var(--divider);flex:1;height:1px}.line-draw-guide-progress b{background:var(--ctrl-btn-bg);border:1px solid var(--divider);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;font-size:8px;display:inline-flex}.line-draw-guide-progress span.is-done{color:var(--edit-accent)}.line-draw-guide-progress span.is-done b{background:var(--edit-accent);border-color:var(--edit-accent);color:#fff}.line-draw-guide-main{align-items:center;gap:10px;min-width:0;display:flex}.line-draw-guide-main>span{flex-direction:column;gap:2px;min-width:0;display:flex}.line-draw-guide-main strong{color:var(--text-main);font-size:12px}.line-draw-guide-main small{color:var(--text-light);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.line-draw-guide-main em{background:var(--ctrl-btn-bg);color:var(--text-light);border-radius:999px;flex-shrink:0;padding:3px 7px;font-size:9px;font-style:normal;font-weight:700}.line-draw-guide-actions{align-items:center;gap:5px;display:flex}.line-draw-guide-actions button{border:1px solid var(--divider);background:var(--ctrl-btn-bg);height:28px;color:var(--text-main);cursor:pointer;border-radius:5px;padding:0 9px;font-size:10px;font-weight:700}.line-draw-guide-actions button.is-primary{background:var(--edit-accent);border-color:var(--edit-accent);color:#fff}.line-draw-guide-actions button:disabled{opacity:.42;cursor:not-allowed}@media (max-width:1080px){.line-draw-guide{width:min(460px,100% - 180px);min-width:320px;top:68px}}.edit-line-points circle{cursor:grab}.edit-line-points circle:active{cursor:grabbing}.edit-line-points circle.is-selected{stroke-width:3px}.edit-point-hit{pointer-events:all;cursor:grab;touch-action:none}.edit-line-points>g.is-endpoint .edit-point-core{r:8px;stroke-width:2.5px}.edit-point-selection-ring{fill:#ff6b2c1f;stroke:var(--edit-accent);stroke-width:1.5px;stroke-dasharray:3 3;vector-effect:non-scaling-stroke}.edit-point-endpoint-hint rect{fill:var(--editor-navy,#082c46);stroke:#ffffffb8;stroke-width:1px;vector-effect:non-scaling-stroke}.edit-point-endpoint-hint text{fill:#fff;text-anchor:middle;dominant-baseline:middle;letter-spacing:.02em;white-space:nowrap;font-size:10px;font-weight:700}.selection-line-points .selection-point{fill:#ff6b2c1f;stroke:var(--edit-accent);stroke-width:2px}.edit-line-segments path{cursor:pointer;pointer-events:stroke}.edit-line-extend line{stroke:var(--edit-accent);stroke-width:2px;stroke-linecap:round}.edit-line-extend circle{fill:#ffffffe6;stroke:var(--edit-accent);stroke-width:2px;stroke-dasharray:3 2;cursor:grab}.edit-line-extend path{fill:none;stroke:var(--edit-accent);stroke-width:2px;stroke-linecap:round;vector-effect:non-scaling-stroke}.edit-line-extend circle:hover{fill:#ff6b2c26}.edit-line-extend .extend-anchor{cursor:pointer;pointer-events:all}.edit-line-extend{pointer-events:all}.edit-panel{gap:12px;width:320px;max-height:calc(100dvh - 110px);margin-right:12px;padding:12px;overflow-y:auto}.edit-panel,.edit-panel-section{background:var(--panel);border:1px solid var(--line);border-radius:10px;flex-direction:column;display:flex}.edit-panel-section{gap:10px;padding:10px}.edit-panel-title{color:var(--text-sub);text-transform:uppercase;letter-spacing:.08em;font-size:12px}.edit-panel-row{align-items:center;gap:8px;display:flex}.edit-panel-label{min-width:56px;color:var(--text-sub);font-size:12px}.edit-panel-checkbox{color:var(--text);align-items:center;gap:6px;font-size:12px;display:inline-flex}.edit-panel-number{border:1px solid var(--divider);background:var(--panel);width:64px;color:var(--text);border-radius:6px;padding:4px 6px;font-size:12px}.line-logo-row{align-items:center;gap:12px;margin-bottom:8px;display:flex}.line-logo-preview{border:1px solid var(--divider);background:var(--panel-bg);border-radius:8px;justify-content:center;align-items:center;width:60px;height:36px;display:flex;overflow:hidden}.line-logo-preview img{max-width:100%;max-height:100%}.line-icon-preview,.line-logo-icon{justify-content:center;align-items:center;height:100%;display:inline-flex}.line-icon-preview svg,.line-logo-icon svg{width:auto;height:100%}.line-icon-preview{height:26px}.line-logo-empty{color:var(--text-light);font-size:12px}.line-logo-actions{flex:1;gap:8px;display:flex}.line-logo-actions input{border:1px solid var(--divider);background:var(--ctrl-btn-bg);color:var(--text);border-radius:8px;flex:1;padding:6px 8px}.line-icon-grid{border:1px solid var(--divider);background:var(--panel-bg);border-radius:10px;grid-template-columns:repeat(auto-fill,minmax(46px,1fr));gap:8px;max-height:220px;padding:6px;display:grid;overflow:auto}.line-icon-item{background:var(--ctrl-btn-bg);cursor:pointer;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;padding:6px;display:flex}.line-icon-item img{max-width:100%;max-height:26px}.line-icon-item.is-active{border-color:var(--edit-accent);box-shadow:0 0 0 1px var(--edit-accent)}.line-icon-empty{color:var(--text-light);padding:6px 4px;font-size:12px}.edit-layer-switcher{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.edit-layer-btn{color:var(--text-light);cursor:pointer;text-align:center;background:linear-gradient(#fff,#f2ede7);border:1px solid #00000014;border-radius:8px;padding:8px;font-size:12px;transition:all .2s;box-shadow:0 1px 2px #0000000d}.edit-layer-btn:hover{color:var(--text-main);background:#fff;transform:translateY(-1px);box-shadow:0 4px 8px #00000014}.edit-layer-btn.is-active{color:#fff;background:linear-gradient(#ff6b2c,#ff8a55);border-color:#ff6b2c;box-shadow:0 2px 6px #ff6b2c4d}.edit-list-wrapper{flex-direction:column;gap:8px;display:flex}.edit-search{border:1px solid var(--divider);background:var(--ctrl-btn-bg);width:100%;color:var(--text);border-radius:8px;padding:8px 10px}.edit-list{gap:6px;max-height:220px;overflow-y:auto}.edit-list,.edit-list-item{flex-direction:column;display:flex}.edit-list-item{border:1px solid var(--divider);background:var(--ctrl-btn-bg);text-align:left;cursor:pointer;border-radius:8px;gap:4px;padding:8px 10px;transition:all .15s}.edit-list-item.edit-list-item-inline{flex-direction:row;align-items:center;gap:8px;padding:6px 10px}.edit-list-item:hover{background:var(--list-hover)}.edit-list-item.is-active{border-color:var(--edit-accent);background:var(--edit-muted)}.edit-list-row{grid-template-columns:1fr auto auto;align-items:center;gap:6px;display:grid}.edit-list-row.is-active .edit-list-item{border-color:var(--edit-accent);background:var(--edit-muted)}.edit-list-title{color:var(--text-main);font-size:13px}.edit-list-sub,.edit-list-z{color:var(--text-sub);font-size:11px}.edit-list-z{text-align:right;min-width:36px}.edit-order{flex-direction:column;gap:4px;display:flex}.edit-order.edit-order-inline{flex-direction:row}.edit-order-btn{border:1px solid var(--divider);background:var(--ctrl-btn-bg);color:var(--text-light);cursor:pointer;border-radius:6px;padding:2px 6px}.edit-form{gap:8px}.edit-field,.edit-form{flex-direction:column;display:flex}.edit-field{gap:4px}.edit-field,.edit-toggle-label{color:var(--text-sub);font-size:12px}.edit-toggle-label{align-items:center;gap:6px;display:inline-flex}.edit-point-hit{cursor:pointer}.edit-point-core{pointer-events:none}.edit-point-core.is-selected{stroke-width:3px}.edit-field input,.edit-field select{border:1px solid var(--divider);background:var(--ctrl-btn-bg);width:100%;color:var(--text-main);border-radius:8px;outline:none;padding:8px 10px;font-size:13px;transition:all .2s}.edit-field input:focus,.edit-field select:focus{border-color:var(--edit-accent);background:var(--bg);box-shadow:0 0 0 2px #ff6b2c26}.edit-textarea{border:1px solid var(--divider);background:var(--ctrl-btn-bg);width:100%;color:var(--text-main);resize:vertical;border-radius:8px;outline:none;padding:8px 10px;font-size:13px;transition:all .2s}.edit-textarea:focus{border-color:var(--edit-accent);background:var(--bg);box-shadow:0 0 0 2px #ff6b2c26}.edit-action{color:#2d2a27;cursor:pointer;background:linear-gradient(#fff,#f2ede7);border:1px solid #00000014;border-radius:8px;justify-content:center;align-items:center;width:100%;margin-top:6px;padding:8px 12px;font-size:13px;font-weight:500;transition:all .2s;display:flex;box-shadow:0 1px 2px #0000000d}.edit-action:hover{background:linear-gradient(#fff,#f8f5f2);transform:translateY(-1px);box-shadow:0 4px 12px #0000001a}.edit-action:active{transform:translateY(0);box-shadow:0 1px 2px #0000000d}.edit-danger{color:#e5534b;border-color:#e5534b4d}.edit-danger:hover{background:#fff5f5;border-color:#e5534b}.edit-toggle-row{gap:8px;display:flex}.edit-toggle-btn{color:var(--text-light);cursor:pointer;text-align:center;background:linear-gradient(#fff,#f2ede7);border:1px solid #00000014;border-radius:8px;flex:1;padding:6px 10px;font-size:12px;transition:all .2s;box-shadow:0 1px 2px #0000000d}.edit-toggle-btn:hover{color:var(--text-main);background:#fff;transform:translateY(-1px);box-shadow:0 4px 8px #00000014}.edit-toggle-btn.is-on{color:#fff;background:linear-gradient(#ff6b2c,#ff8a55);border-color:#ff6b2c;box-shadow:0 2px 6px #ff6b2c4d}.edit-log{flex-direction:column;gap:6px;max-height:140px;display:flex;overflow-y:auto}.edit-log-item{color:var(--text-main);background:var(--ctrl-btn-bg);border-radius:6px;justify-content:space-between;padding:6px 8px;font-size:12px;display:flex}.edit-log-time{color:var(--text-sub)}.edit-field-row{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.edit-divider{background:var(--divider);height:1px;margin:8px 0}.edit-grid-3{grid-template-columns:repeat(3,1fr);gap:4px;display:grid}.edit-panel-sub-title{color:var(--text-main);text-transform:uppercase;margin-top:4px;font-size:11px;font-weight:700}.edit-empty{color:var(--text-sub);padding:6px 0;font-size:12px}.legend{background:var(--panel);border:1px solid var(--line);width:220px;padding:12px 10px}#modern-zoom-control{top:88px;left:calc(20px + env(safe-area-inset-left,0px));z-index:800;-webkit-user-select:none;user-select:none;touch-action:manipulation;border:1px solid var(--divider);border-radius:50px;flex-direction:column;align-items:center;gap:5px;padding:8px 6px;display:flex;position:absolute;box-shadow:0 4px 15px #00000026;background-color:var(--panel)!important}#modern-zoom-control .zoom-btn{background-color:var(--ctrl-btn-bg);width:32px;height:32px;color:var(--ctrl-icon);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:18px;font-weight:700;line-height:1;transition:all .2s;display:flex}#modern-zoom-control .zoom-btn:hover{background-color:var(--ctrl-hover);color:var(--text-main)}#modern-zoom-control .zoom-btn:active{transform:scale(.95)}#modern-zoom-control .zoom-btn-group{background-color:var(--ctrl-btn-bg);border-radius:16px;flex-direction:column;width:32px;display:flex;overflow:hidden}#modern-zoom-control .zoom-btn-group .zoom-btn{background-color:#0000;border-radius:0;width:32px;height:32px}#modern-zoom-control .zoom-btn-group .zoom-btn:first-child{border-radius:16px 16px 0 0}#modern-zoom-control .zoom-btn-group .zoom-btn:last-child{border-top:1px solid var(--ctrl-btn-bg);border-radius:0 0 16px 16px}#modern-zoom-control .zoom-btn-group .zoom-btn:hover{background-color:var(--ctrl-hover);color:var(--text-main)}#modern-zoom-control .zoom-btn-group .zoom-btn:active{transform:scale(.95)}.mz-slider-track{justify-content:center;align-items:center;width:32px;height:100px;display:flex;position:relative}#mz-slider{transform-origin:50%;cursor:pointer;appearance:none;touch-action:auto;background:0 0;width:100px;height:32px;margin:0;position:absolute;transform:rotate(-90deg)}#mz-slider::-webkit-slider-runnable-track{background:var(--divider);cursor:pointer;border-radius:2px;width:100%;height:4px}#mz-slider::-moz-range-track{background:var(--divider);cursor:pointer;border-radius:2px;width:100%;height:4px}#mz-slider::-webkit-slider-thumb{appearance:none;background:var(--primary-color);cursor:pointer;border-radius:50%;width:16px;height:16px;margin-top:-6px;transition:transform .1s;box-shadow:0 1px 3px #0000004d}#mz-slider::-moz-range-thumb{background:var(--primary-color);cursor:pointer;border:none;border-radius:50%;width:16px;height:16px;transition:transform .1s;box-shadow:0 1px 3px #0000004d}#mz-slider::-webkit-slider-thumb:hover{transform:scale(1.2)}#mz-slider:focus{outline:none}#modern-zoom-control .mz-divider,#modern-zoom-control div[style*="height: 1px"]{background-color:var(--ctrl-btn-bg)!important}#modern-zoom-control .zoom-btn svg{fill:currentColor;width:20px;height:20px;display:block}#mobile-pwa-dock{-webkit-user-select:none;user-select:none;touch-action:manipulation;outline:none;justify-content:center;align-items:center;gap:10px;bottom:16px!important;left:50%!important;bottom:max(16px,calc(env(safe-area-inset-bottom,0px) - 8px))!important;z-index:1050!important;pointer-events:auto!important;display:none!important;position:fixed!important;transform:translate(-50%)!important}.mobile-pwa-dock-pill{box-sizing:border-box;border-radius:50px;align-items:center;gap:4px;padding:4px;transition:background-color .2s,border-color .2s,box-shadow .2s;display:inline-flex;background-color:var(--control-bg)!important;border:1px solid var(--border-color)!important;box-shadow:0 4px 18px #00000026!important}[data-theme=dark] .mobile-pwa-dock-pill{background-color:var(--control-bg)!important;border-color:var(--border-color)!important;box-shadow:0 4px 18px #00000073!important}.pwa-dock-item{cursor:pointer;min-width:74px;height:48px;color:var(--ctrl-icon);box-sizing:border-box;-webkit-tap-highlight-color:transparent;background:0 0;border:none;border-radius:50px;outline:none;flex-direction:column;justify-content:center;align-items:center;padding:4px 12px;transition:background-color .2s,color .2s,transform .15s,box-shadow .2s;display:flex;position:relative}.pwa-dock-item:hover:not(.active):not(:disabled){background-color:var(--ctrl-btn-bg);color:var(--text-main)}.pwa-dock-item:active{transform:scale(.95)}.pwa-dock-icon{color:currentColor;justify-content:center;align-items:center;width:20px;height:20px;display:flex}.pwa-dock-icon svg{fill:currentColor;width:20px;height:20px;display:block}.pwa-dock-label{letter-spacing:-.2px;color:currentColor;white-space:nowrap;margin-top:3px;font-size:11px;font-weight:500;line-height:1}.pwa-dock-item.active{box-shadow:0 2px 6px #0003;background-color:var(--primary-color)!important;color:var(--btn-text,#fff)!important}.pwa-dock-item.active .pwa-dock-icon svg{fill:#fff!important}.pwa-dock-item.active .pwa-dock-label{font-weight:600;color:#fff!important}.pwa-dock-item.permission-disabled,.pwa-dock-item:disabled{opacity:.4;cursor:not-allowed}.mobile-pwa-dock-ride{cursor:pointer;box-sizing:border-box;-webkit-tap-highlight-color:transparent;border:1px solid #00000014;border-radius:50%;outline:none;flex-shrink:0;justify-content:center;align-items:center;width:58px;height:58px;transition:transform .15s,filter .15s,box-shadow .2s;display:flex;background-color:var(--primary-color)!important;color:var(--btn-text,#fff)!important;box-shadow:0 4px 18px #0000002e!important}[data-theme=dark] .mobile-pwa-dock-ride{border:1px solid #ffffff26;box-shadow:0 4px 18px #00000073!important}.mobile-pwa-dock-ride:hover{filter:brightness(1.08)}.mobile-pwa-dock-ride:active{filter:brightness(.95);transform:scale(.92)}.mobile-pwa-dock-ride .pwa-dock-ride-icon,.mobile-pwa-dock-ride svg{width:28px;height:28px;display:block;fill:#fff!important;color:#fff!important}.ride-modal-overlay{z-index:2200;-webkit-backdrop-filter:blur(8px);background:#00000073;justify-content:center;align-items:center;padding:20px;animation:fadeIn .2s cubic-bezier(.16,1,.3,1);display:flex;position:fixed;inset:0}.ride-modal-card{background-color:var(--control-bg,#fff);border:1px solid var(--border-color,#0000001a);box-sizing:border-box;border-radius:20px;flex-direction:column;width:100%;max-width:380px;animation:scaleUp .22s cubic-bezier(.16,1,.3,1);display:flex;overflow:hidden;box-shadow:0 20px 48px #00000040}[data-theme=dark] .ride-modal-card{box-shadow:0 20px 48px #0000008c}.ride-modal-header{justify-content:space-between;align-items:flex-start;gap:12px;padding:18px 20px 14px;display:flex}.ride-modal-title-group{align-items:center;gap:12px;min-width:0;display:flex}.ride-modal-icon-badge{background-color:var(--primary-color,#0284c7);color:#fff;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.ride-modal-icon-badge svg{fill:#fff;width:22px;height:22px}.ride-modal-title{color:var(--text-main,#111827);font-size:16px;font-weight:700;line-height:1.25}.ride-modal-subtitle{color:var(--text-desc,#6b7280);margin-top:3px;font-size:12px;line-height:1.35}.ride-modal-close-btn{background:var(--ctrl-btn-bg,#0000000d);width:32px;height:32px;color:var(--ctrl-icon,#6b7280);cursor:pointer;border:none;border-radius:50%;outline:none;flex-shrink:0;justify-content:center;align-items:center;margin-top:-2px;margin-right:-4px;transition:all .15s;display:flex}.ride-modal-close-btn:hover{background:var(--hover-bg,#0000001a);color:var(--text-main,#111827)}.ride-modal-close-btn:active{transform:scale(.92)}.ride-modal-tabs{background:var(--hover-bg,#0000000d);border:1px solid var(--border-color,#00000014);border-radius:12px;gap:4px;margin:0 20px 14px;padding:3px;display:flex}.ride-modal-tab-item{color:var(--text-desc,#6b7280);cursor:pointer;background:0 0;border:none;border-radius:9px;outline:none;flex:1;padding:7px 12px;font-size:13px;font-weight:500;transition:all .2s cubic-bezier(.4,0,.2,1)}.ride-modal-tab-item:hover:not(.active){color:var(--text-main,#111827)}.ride-modal-tab-item.active{background-color:var(--control-bg,#fff);color:var(--primary-color,#0284c7);font-weight:600;box-shadow:0 2px 8px #0000001a}[data-theme=dark] .ride-modal-tab-item.active{background-color:var(--card-bg,#262626);color:var(--primary-color,#38bdf8)}.ride-modal-body{flex-direction:column;padding:4px 20px 18px}.ride-modal-body,.ride-qrcode-card{justify-content:center;align-items:center;display:flex}.ride-qrcode-card{border:1px solid #00000014;border-radius:16px;padding:14px;box-shadow:0 4px 18px #00000014;background-color:#fff!important}.ride-qrcode-img,.ride-qrcode-svg{width:200px;height:200px;image-rendering:pixelated;display:block}.ride-qrcode-fallback{color:#6b7280;justify-content:center;align-items:center;width:200px;height:200px;font-size:13px;display:flex}.ride-modal-tips{color:var(--text-desc,#4b5563);text-align:center;margin-top:14px;padding:0 8px;font-size:12.5px;line-height:1.5}.ride-modal-tips strong{color:var(--primary-color,#0284c7);font-weight:600}.ride-modal-subtip{color:var(--text-muted,#9ca3af);margin-top:4px;font-size:11px;line-height:1.4}.ride-modal-actions{border-top:1px solid var(--border-color,#00000014);gap:10px;padding:12px 20px 18px;display:flex}.ride-action-btn{cursor:pointer;box-sizing:border-box;border-radius:10px;outline:none;flex:1;justify-content:center;align-items:center;gap:6px;height:38px;font-size:12.5px;font-weight:500;transition:all .15s;display:inline-flex}.ride-action-btn.secondary{background-color:var(--ctrl-btn-bg,#0000000a);border:1px solid var(--border-color,#0000001a);color:var(--text-main,#111827)}.ride-action-btn.secondary:hover{background-color:var(--hover-bg,#00000014)}.ride-action-btn.secondary:active{transform:scale(.96)}.ride-action-btn.primary{background-color:var(--primary-color,#0284c7);color:#fff;border:1px solid #0000}.ride-action-btn.primary:hover{background-color:var(--primary-hover,#0369a1)}.ride-action-btn.primary:active{transform:scale(.96)}.ride-download-card{max-width:380px}.ride-download-body{text-align:center;flex-direction:column;align-items:center;padding:16px 20px 20px;display:flex}.ride-download-icon-wrap{margin-bottom:14px}.ride-download-icon-circle{width:60px;height:60px;color:var(--primary-color,#0284c7);background:linear-gradient(135deg,#0284c71f,#0284c73d);border-radius:50%;justify-content:center;align-items:center;display:flex}[data-theme=dark] .ride-download-icon-circle{color:#38bdf8;background:linear-gradient(135deg,#0284c733,#0284c759)}.ride-download-message{color:var(--text-desc,#4b5563);font-size:13.5px;line-height:1.6}[data-theme=dark] .ride-download-message{color:#94a3b8}.station-modal{z-index:50;background:#00000040;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.station-modal-card{background:#fff;border-radius:12px;width:420px;max-width:calc(100vw - 32px);overflow:hidden;box-shadow:0 20px 50px #0003}.station-modal-header{color:#fff;background:#0e8d9e;justify-content:space-between;align-items:center;padding:18px 20px;display:flex}.station-modal-title{font-size:20px;font-weight:700}.station-modal-subtitle{opacity:.85;font-size:12px}.station-modal-close{color:#fff;cursor:pointer;background:0 0;border:none;font-size:24px}.station-modal-icon{border-bottom:1px solid #e8e5de;justify-content:center;align-items:center;padding:20px;display:flex}.station-modal-icon img{max-width:220px;height:auto}.station-modal-icon.placeholder{color:#999;font-size:12px}.station-modal-content{color:#333;padding:16px 20px 20px;font-size:14px}.station-line-icons{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.station-line-icon{background:#f5f5f5;border-radius:8px;align-items:center;gap:6px;padding:4px 8px;display:inline-flex}.station-line-text{color:#333;white-space:nowrap;font-size:12px}#info-panel{z-index:2000;overscroll-behavior:contain;touch-action:pan-y;border-radius:18px;flex-direction:column;width:360px;padding:0;font-weight:400;display:flex;position:fixed;top:0;left:0;overflow:hidden;box-shadow:0 4px 20px #0000004d;background:var(--card-bg)!important}.panel-resize-handle{cursor:nwse-resize;z-index:20;opacity:.4;width:15px;height:15px;color:var(--text-light);pointer-events:auto;justify-content:flex-end;align-items:flex-end;padding:1px;display:flex;position:absolute;bottom:0;right:0}.panel-resize-handle:hover{opacity:1;color:var(--text-main)}.panel-resize-handle svg{width:100%;height:100%;display:block}.panel-header{--data1:transparent;--data2:#fff;border-bottom:1px solid #ffffff1a;flex-shrink:0;justify-content:flex-start;align-items:center;padding:20px 40px 20px 20px;display:flex;position:relative;background-color:var(--station-header-bg,var(--panel-header-bg))!important;color:var(--panel-header-text)!important}.panel-header-main{align-items:center;gap:10px;min-width:0;display:flex}.header-name-group{flex:none;min-width:0}.panel-cn-name{letter-spacing:1px;margin-bottom:2px;font-size:18.5px;color:inherit!important}.panel-cn-name,.panel-en-name{white-space:nowrap;font-weight:700;line-height:1.2}.panel-en-name{font-family:var(--font-latin);margin-bottom:0;font-size:11px;color:#ffffffb3!important}[data-station-language=en] .panel-cn-name,html[data-language=en] .panel-cn-name{font-family:var(--font-latin);letter-spacing:.2px}[data-station-language=en] .panel-en-name,html[data-language=en] .panel-en-name{font-family:var(--font-cjk);letter-spacing:.6px;margin-top:1px;font-weight:500;color:#ffffffd9!important;font-size:13.5px!important}[data-station-language=en] .panel-header.is-light-bg .panel-en-name,html[data-language=en] .panel-header.is-light-bg .panel-en-name{color:#001d31cc!important}.panel-badges{flex-shrink:0;align-items:center;gap:1.5px;margin-left:auto;margin-right:5px;display:flex}.panel-header .line-badge{--data1:transparent;--data2:#fff}.line-badge{--data1:transparent;--data2:#00263b;border-radius:2px;width:auto;height:26px;display:block}[data-theme=dark] .line-badge{--data2:#fff}.line-badge.tooltip-badge{--data1:var(--map-bg);background-color:var(--map-bg);box-shadow:0 0 0 1px var(--map-bg);vertical-align:middle;border:none;border-radius:2px;display:inline-flex;overflow:hidden}.panel-badges .line-badge{height:26px}.line-block .line-badge,.line-block-header .line-badge{height:24px}.text-badge{background:#fff3;border-radius:4px;padding:2px 6px;font-size:12px}.panel-close-btn{color:var(--close-btn-color,#ffffffd9);border-radius:6px;width:26px;height:26px;transition:all .18s;right:12px}.panel-body{scrollbar-width:thin;scrollbar-color:#bdcbd2 #f0f2f5;--data1:transparent;--data2:#00263b;flex-direction:column;flex:1;min-height:0;padding:6px 10px 10px;display:flex;overflow-y:auto;background-color:var(--card-bg)!important;color:var(--text-main)!important}.panel-body::-webkit-scrollbar{width:6px}.panel-body::-webkit-scrollbar-track{background:#f0f2f5}.panel-body::-webkit-scrollbar-thumb{background-color:#bdcbd2;border-radius:3px}.station-detail-content{min-height:0}[data-theme=dark] .panel-body{--data2:#fff}.info-row{justify-content:space-between;align-items:baseline;margin-bottom:4px;font-size:12px;line-height:1.35;display:flex}.info-label{color:var(--text-light);flex-shrink:0;margin-right:12px}.info-value{color:var(--text-main);text-align:right;word-break:break-word;font-weight:700}.line-block{border-top:1px dashed var(--divider);margin-top:10px;padding-top:6px}.line-block-header{text-align:left;margin-bottom:6px}.reserved-box{background:var(--ctrl-btn-bg);color:var(--text-light);text-align:center;border:1px dashed var(--divider);border-radius:4px;margin:4px 0;padding:4px 8px;font-size:11px}.station-svg-container{width:100%;height:auto;padding:0;overflow:hidden}.station-svg-container svg{width:100%;height:auto;display:block}.station-layout-empty{color:var(--text-light);padding:6px 0;font-size:10px;display:inline-block}.panel-footer{text-align:center;flex-shrink:0;padding:6px 10px;font-size:11px;background-color:var(--bg-color)!important;border-top:1px solid var(--divider)!important}.mobile-panel-dock,.mobile-station-footer-dock{display:none}.panel-footer-actions{gap:6px;display:flex}.panel-footer-actions.compact{gap:4px}.panel-footer-btn{border:1px solid var(--divider);background:var(--ctrl-btn-bg);color:var(--text-main);cursor:pointer;border-radius:6px;flex-direction:column;flex:1 1 0;justify-content:center;align-items:center;gap:2px;padding:5px 4px;font-size:12px;font-weight:600;text-decoration:none;display:flex;box-shadow:0 1px 3px #0000000d}.panel-footer-btn.tiny{gap:2px;padding:6px 2px;font-size:11px}.panel-footer-btn.primary{background:var(--primary-color);color:#fff;border-color:#0000}.panel-footer-note{color:var(--text-light);margin-bottom:10px;font-size:12px}.panel-footer-weather-alert{color:#d48806;box-sizing:border-box;background:#fffbe6;border:1px solid #ffe58f;border-radius:8px;align-items:center;gap:6px;width:100%;margin-bottom:10px;padding:8px 10px;font-size:12px;font-weight:500;line-height:1.4;display:flex}[data-theme=dark] .panel-footer-weather-alert{color:#e6b85c;background:#2b2111;border:1px solid #594214}.header-station-logo{flex-shrink:0;width:auto;height:50px;margin-left:-5px;margin-right:-5px;display:block}.force-white-text .panel-close-btn,.force-white-text .panel-cn-name,.force-white-text .panel-en-name{color:#fff!important}.legend-overlay{z-index:30000;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#00000080;width:100%;height:100%;animation:overlayFadeIn .2s ease-out;position:fixed;top:0;left:0}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}.legend-popover{background:var(--panel);color:var(--text);z-index:30001}.legend-overlay .legend-popover,.legend-popover{flex-direction:column;display:flex;overflow:hidden}.legend-overlay .legend-popover{transform-origin:0 0;touch-action:none;border-radius:12px;width:400px;max-width:85%;max-height:80vh;padding:0;animation:expandMenu .3s cubic-bezier(.2,.8,.2,1);position:absolute;box-shadow:0 10px 25px #0003;background:var(--card-bg)!important;color:var(--text-main)!important}@keyframes expandMenu{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}@keyframes expandMenuMobile{0%{opacity:0;transform:translate(-50%,-50%)scale(.85)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}.legend-overlay .legend-popover.is-closing{animation:collapseMenu .2s cubic-bezier(.2,.8,.2,1) forwards}@keyframes collapseMenu{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(0)}}.left-pinned-sidebar,.legend-popover.pinned-mode{right:auto;left:calc(0px + env(safe-area-inset-left,0px));box-shadow:1px 0 0 var(--divider);flex-direction:column;flex:none;max-width:none;max-height:none;animation:none;transform:none}.left-pinned-sidebar,.legend-popover.pinned-mode,.right-pinned-sidebar{top:0;bottom:0;width:320px;z-index:850;background:var(--panel,var(--bg,#fff));border-radius:0;transition:transform .25s,width .25s;display:flex;position:fixed;height:100dvh!important}.right-pinned-sidebar{right:calc(0px + env(safe-area-inset-right,0px));box-shadow:-1px 0 0 var(--divider);flex-direction:column;left:auto}.left-pinned-sidebar.collapsed,.right-pinned-sidebar.collapsed{pointer-events:none!important;border:none!important;width:0!important;overflow:hidden!important}.sidebar-floating-container{width:100%;height:100%;padding:calc(env(safe-area-inset-top,0px) + 80px)8px 8px 8px;box-sizing:border-box;flex-direction:column;align-items:stretch;gap:8px;display:flex;position:relative;overflow:hidden}.sidebar-floating-container cgo-floating-window{box-sizing:border-box;--cgo-floating-content-padding:0px;transition:transform .25s cubic-bezier(.2,0,.2,1),opacity .25s,max-height .25s,flex .25s;width:100%!important;margin-bottom:0!important;position:relative!important;top:auto!important;left:auto!important}.sidebar-floating-container cgo-floating-window::part(header){height:26px!important;padding:0 8px 0 10px!important}.sidebar-floating-container cgo-floating-window::part(content){padding:0!important}.sidebar-floating-container cgo-floating-window[minimized]{flex:none!important;height:auto!important}.sidebar-floating-container cgo-floating-window:not([minimized]){min-height:calc((100dvh - 80px - env(safe-area-inset-top,0px))*.25)!important;flex-direction:column!important;flex:1 1 0!important;max-height:100%!important;display:flex!important}.sidebar-floating-container cgo-floating-window[data-window-key=search]:not([minimized]){min-height:68px!important;max-height:calc((100dvh - 80px - env(safe-area-inset-top,0px))*.5)!important;flex:none!important}.sidebar-floating-container .legend-tree-wrapper,.sidebar-floating-container .section-body,.sidebar-floating-container .unified-route-content{box-sizing:border-box;height:100%;overflow-y:auto}.left-pinned-sidebar cgo-floating-window.is-pushed-out{animation:pushOutToRight .25s cubic-bezier(.2,.8,.2,1) forwards;pointer-events:none!important}.right-pinned-sidebar cgo-floating-window.is-pushed-out{animation:pushOutToLeft .25s cubic-bezier(.2,.8,.2,1) forwards;pointer-events:none!important}@keyframes pushOutToRight{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(340px)}}@keyframes pushOutToLeft{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-340px)}}body.is-sidebar-dragging{cursor:grabbing!important}body.is-sidebar-dragging,body.is-sidebar-dragging *{-webkit-user-select:none!important;user-select:none!important}.left-pinned-sidebar.is-drop-target-active,.right-pinned-sidebar.is-drop-target-active{transition:box-shadow .2s,background-color .2s;box-shadow:inset 0 0 0 2px var(--primary-color,#007bff),0 8px 32px #007bff40!important}.left-pinned-sidebar.is-drop-target-active .sidebar-floating-container,.right-pinned-sidebar.is-drop-target-active .sidebar-floating-container{background:linear-gradient(#007bff14,#007bff05)}.sidebar-blue-drop-placeholder{border:2px dashed var(--primary-color,#007bff);box-sizing:border-box;background:#007bff1f;border-radius:12px;flex-shrink:0;width:100%;height:48px;transition:all .15s;animation:expandPlaceholder .2s cubic-bezier(.2,.8,.2,1) forwards,pulsePlaceholder 1.2s ease-in-out infinite}@keyframes expandPlaceholder{0%{opacity:0;max-height:0;transform:scale(.95)}to{opacity:1;max-height:48px;transform:scale(1)}}@keyframes pulsePlaceholder{0%,to{background:#007bff14;border-color:#007bffcc}50%{background:#007bff38;border-color:#0056b3;box-shadow:0 0 16px #007bff59}}@media (min-width:641px){body.panel-pinned .content>.editor-layout-passthrough,body.panel-pinned .content>.editorShell,body.panel-pinned .content>[class*=editorShell]{width:calc(100% - 320px);margin-left:320px;margin-right:0;transition:margin-left .25s,margin-right .25s,width .25s}body.panel-pinned.has-right-sidebar .content>.editor-layout-passthrough,body.panel-pinned.has-right-sidebar .content>.editorShell,body.panel-pinned.has-right-sidebar .content>[class*=editorShell]{width:calc(100% - 640px);margin-right:320px}body.panel-pinned.no-left-sidebar .content>.editor-layout-passthrough,body.panel-pinned.no-left-sidebar .content>.editorShell,body.panel-pinned.no-left-sidebar .content>[class*=editorShell]{width:calc(100% - 320px);margin-left:0}body.panel-pinned.no-left-sidebar.has-right-sidebar .content>.editor-layout-passthrough,body.panel-pinned.no-left-sidebar.has-right-sidebar .content>.editorShell,body.panel-pinned.no-left-sidebar.has-right-sidebar .content>[class*=editorShell]{width:calc(100% - 320px);margin-left:0;margin-right:320px}body.panel-pinned:not(.no-left-sidebar) .header-island-left{left:calc(8px + env(safe-area-inset-left,0px));width:304px}body.panel-pinned.has-right-sidebar .header-island-right{right:calc(8px + env(safe-area-inset-right,0px));width:304px}body.panel-pinned.has-right-sidebar .header-island-right .header-right{justify-content:flex-end;width:100%}}.legend-tree-wrapper{padding:12px 16px 16px}.legend-popover.pinned-mode .legend-tree-wrapper{padding:4px 0}.legend-popover.pinned-mode .legend-header{min-height:40px;padding:6px 12px!important}.legend-popover.pinned-mode .legend-header-btn{width:28px;height:28px;box-shadow:none;background:0 0}.legend-popover.pinned-mode .legend-header-btn:hover{background:var(--ctrl-hover);box-shadow:none;transform:none}.legend-popover.pinned-mode .legend-header-btn.pin-btn.primary{background:var(--primary-color);color:#fff}.legend-popover.pinned-mode .legend-header-btn.pin-btn.primary:hover{background:var(--primary-hover);color:#fff}.legend-popover.pinned-mode .legend-header-btn svg{width:14px;height:14px}.legend-popover.pinned-mode .section-header{padding:6px 12px;font-size:12px}.legend-popover.pinned-mode .section-arrow{width:12px!important;height:12px!important}.legend-popover.pinned-mode .station-search-container{padding:6px 8px}.legend-popover.pinned-mode #station-search-input{border-radius:4px;padding:5px 24px 5px 8px;font-size:12px}.legend-popover.pinned-mode #search-clear-btn{right:5px}.legend-popover.pinned-mode #search-clear-btn svg{width:12px!important;height:12px!important}.legend-popover.pinned-mode #search-results-list{border-radius:4px;max-height:260px;margin-top:4px}.legend-popover.pinned-mode .search-item{padding:4px 8px}.legend-popover.pinned-mode .search-line-icons-group{gap:2px;margin-right:6px}.legend-popover.pinned-mode .search-line-icon{height:15.5px}.legend-popover.pinned-mode .search-zh{font-size:12px}.legend-popover.pinned-mode .search-en{font-size:10px}.legend-popover.pinned-mode .search-line-dot{width:5px;height:5px}.legend-popover.pinned-mode .station-history-header{padding:6px 12px;font-size:12px}.header-color-squares{align-items:center;gap:3px;display:flex}.header-line-icon-square{object-fit:contain;overflow:hidden}.header-color-square,.header-line-icon-square{border-radius:3px;flex-shrink:0;width:12px;height:12px;display:block}.legend-popover.pinned-mode .station-detail-content.is-pinned .panel-header{padding:10px 12px!important}.legend-popover.pinned-mode .station-detail-content.is-pinned .panel-body{padding:8px 12px!important}.legend-popover.pinned-mode .info-row{margin-bottom:6px;font-size:11.5px}.legend-popover.pinned-mode .line-block{margin-top:8px;padding-top:6px}.legend-scroll-content{background:var(--panel);flex-direction:column;flex:1;min-height:0;display:flex;overflow-y:auto}.panel-section{border-bottom:1px solid var(--divider);background:var(--panel)}.section-header{cursor:pointer;color:var(--text-main);background-color:var(--list-hover);-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;padding:8px 15px;font-size:13px;font-weight:700;transition:background-color .2s;display:flex}.section-header:hover{background-color:var(--ctrl-hover)}.panel-section.collapsed .section-content{display:none}.legend-header{border-bottom:1px solid var(--divider);background:var(--panel);justify-content:space-between;align-items:center;min-height:52px;display:flex;padding:10px 15px!important}.legend-header-btn{cursor:pointer;background:var(--bg);width:38px;height:38px;color:var(--text-main);border:none;border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex;box-shadow:0 2px 8px #0000001a;padding:0!important}.legend-header-btn:hover{background:var(--ctrl-hover);transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.legend-header-btn.primary{background:var(--primary-color);color:#fff}.legend-header-btn svg{width:20px;height:20px}.legend-footer{border-top:1px solid var(--divider);background:var(--panel);z-index:10;padding:0}.legend-footer .panel-footer{border-top:none;margin-top:0}.station-detail-content.is-pinned{box-shadow:none;border-radius:0;background:0 0!important;width:100%!important;height:auto!important}.station-detail-content.is-pinned .panel-header{font-size:.9em;padding:15px!important}.station-detail-content.is-pinned .panel-body{padding:10px 15px!important}.station-search-container{background:var(--panel);padding:8px 10px}.search-input-wrapper{width:100%;position:relative}#station-search-input{border-radius:5px;outline:none;width:100%;padding:6px 26px 6px 10px;font-size:13px;transition:all .2s;border:1px solid var(--divider)!important;color:var(--text-main)!important;background-color:var(--bg)!important}#station-search-input:focus{background-color:var(--bg);box-shadow:0 0 0 2px #001d3114;border-color:var(--primary-color)!important}#search-clear-btn{color:var(--text-light);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:2px;display:none;position:absolute;top:50%;right:6px;transform:translateY(-50%)}#search-clear-btn:hover{color:var(--text-main)}#search-results-list{border:1px solid var(--divider);background:var(--bg);border-radius:5px;max-height:320px;margin-top:5px;overflow-y:auto;box-shadow:0 3px 10px #00000014}.search-empty-hint{text-align:center;color:var(--text-light);padding:14px 10px;font-size:12px}.search-item{cursor:pointer;border-bottom:1px solid var(--divider);align-items:center;padding:5px 10px;transition:background .1s;display:flex}.search-item:last-child{border-bottom:none}.search-item:hover{background-color:var(--list-hover)}.search-item.pending{opacity:.6}.search-line-icons-group{flex-shrink:0;align-items:center;gap:3px;margin-right:8px;display:flex}.search-line-icon{vertical-align:middle;width:auto;height:17px;display:inline-block}.search-line-dot{border-radius:50%;width:6px;height:6px}.search-item-text{flex-direction:column;justify-content:center;gap:0;min-width:0;display:flex}.search-zh{color:var(--text-main);font-size:13px;font-weight:500;line-height:1.25}.search-en,.search-zh{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.search-en{color:var(--text-light);margin-top:1px;font-size:10.5px;line-height:1.1}.search-status-tag{color:#ff6b2c;margin-left:3px;font-size:10px;font-weight:400}.legend-popover .history-list{flex-direction:column;display:flex}.legend-popover .history-item{border-bottom:1px solid var(--divider-light);cursor:pointer;align-items:center;gap:8px;padding:8px 15px;font-size:13px;display:flex}.legend-popover .history-item:hover{background:var(--list-hover)}.legend-section-title img{max-width:100%;height:24px;display:block}.legend-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px;margin-bottom:24px;display:grid}.legend-grid-item{box-sizing:border-box;min-width:0}.legend-svg-wrapper{width:100%;min-width:0}.legend-svg-wrapper svg{object-fit:contain!important;width:100%!important;max-width:100%!important;height:auto!important;max-height:40px!important;display:block!important}.legend-item{cursor:pointer;background:var(--panel);color:var(--text);border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;padding:6px;transition:transform .1s,background .1s;display:flex}.legend-item:hover{background-color:var(--list-hover);border-color:#dee2e6;transform:translateY(-1px)}.legend-item img{object-fit:contain;width:100%;height:auto;max-height:50px;display:block}.search-container{background:var(--panel);z-index:10;border-bottom:none;margin-bottom:10px;padding-top:55px;padding-bottom:10px;position:sticky;top:0}.line-tooltip img{width:auto;height:30px;display:block}.line-tooltip-text{color:var(--text-main);font-size:13px;font-weight:500}.highlighted-line-outer{filter:drop-shadow(0 0 5px #00000080)}[data-theme=dark] .highlighted-line-outer{filter:drop-shadow(0 0 10px #000c)}.highlighted-line-inner{stroke-width:9px!important}.collapse-arrow{width:20px;height:20px;fill:var(--text-light);margin-right:8px;transition:transform .3s;transform:rotate(0)}.collapse-arrow.collapsed{transform:rotate(-90deg)}.accordion-header{cursor:pointer;-webkit-user-select:none;user-select:none;border-bottom:1px solid #0000;justify-content:flex-start;align-items:center;padding:8px 5px;transition:all .2s;display:flex;overflow:hidden}.accordion-header:hover{background-color:var(--list-hover);border-radius:4px}.accordion-body{opacity:1;border-bottom:1px dashed var(--divider);overscroll-behavior:contain;max-height:500px;color:var(--text-main);margin-bottom:5px;padding-left:28px;transition:max-height .3s,opacity .3s;overflow:hidden}.accordion-body.hidden{opacity:0;border-bottom:none;max-height:0;margin-bottom:0}.accordion-hint{color:var(--text-light);pointer-events:none;opacity:1;white-space:nowrap;text-overflow:ellipsis;flex-shrink:1;margin-left:8px;font-size:11px;font-weight:400;overflow:hidden}[data-theme=dark] .accordion-hint{color:#fff9}.mini-schedule-btn{background-color:var(--primary-color);color:var(--panel-header-text);white-space:nowrap;z-index:5;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;height:22px;margin-left:10px;padding:2px 10px;font-size:11px;font-weight:400;line-height:1;text-decoration:none;transition:background .2s;display:inline-flex;position:relative;box-shadow:0 1px 3px #0003}@media (max-width:900px){.legend{width:auto}.edit-panel{width:auto;max-height:none;margin-right:0}.edit-toolbar{top:10px}}#theme-tooltip{background-color:var(--panel-header-bg);color:#fff;pointer-events:none;z-index:3000;opacity:0;border-radius:6px;padding:6px 10px;font-size:12px;transition:all .3s;position:absolute;top:70px;right:50px;transform:translateY(-5px);box-shadow:0 2px 8px #0003}#theme-tooltip.show{opacity:1;transform:translateY(0)}.help-overlay{z-index:40000;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#00000080;justify-content:center;align-items:center;width:100%;height:100%;animation:overlayFadeIn .2s ease-out;display:flex;position:fixed;top:0;left:0}.help-dialog{z-index:40001;background:var(--panel);color:var(--text-main);opacity:0;border-radius:16px;flex-direction:column;width:90%;max-width:400px;max-height:90vh;padding:0;animation:modalPopIn .2s ease-out forwards;display:flex;overflow:hidden;transform:scale(.95);box-shadow:0 10px 30px #0000004d}.help-dialog.is-closing{animation:modalPopOut .2s ease-in forwards}@keyframes modalPopIn{0%{opacity:0;transform:scale(.95)translateY(5%)}to{opacity:1;transform:scale(1)translate(0)}}@keyframes modalPopOut{0%{opacity:1;transform:scale(1)translate(0)}to{opacity:0;transform:scale(.95)translateY(5%)}}.help-dialog-header{text-align:right;flex-shrink:0;padding:10px 15px 0}.help-close-btn{cursor:pointer;color:var(--text-sub);background:0 0;border:none;padding:0 5px;font-size:28px;line-height:1}.help-dialog-content{-webkit-overflow-scrolling:touch;flex:1;padding:0;overflow-y:auto}.help-dialog-content::-webkit-scrollbar{width:6px}.help-dialog-content::-webkit-scrollbar-track{background:0 0}.help-dialog-content::-webkit-scrollbar-thumb{background-color:#0003;border-radius:3px}.help-container{text-align:left;box-sizing:border-box;width:100%;color:var(--text-main);padding:0 25px 20px}.help-header{border-bottom:1px solid var(--border-color);align-items:center;gap:15px;margin-bottom:20px;padding-bottom:15px;display:flex}.help-icon-img{border-radius:12px;width:60px;height:60px}.help-title-group h3{color:var(--text-main);margin:0 0 5px;font-size:18px}.help-title-group p{color:var(--text-light);margin:0;font-size:12px}.btn-arrow{font-size:12px;transform:scaleX(.8)}.help-footer{text-align:center;color:var(--text-light);border-top:1px solid var(--border-color);margin-top:20px;padding-top:15px;font-size:11px;line-height:1.8}.help-footer a{color:var(--text-light);text-decoration:none}.help-footer a:hover{text-decoration:underline}.help-footer img{vertical-align:middle;width:14px;margin-right:2px}.help-notices-box{color:#856404;background-color:#fff3cd;border:1px solid #ffeeba;border-radius:8px;margin-bottom:20px;padding:12px;font-size:12px;line-height:1.5}.dropdown-notices-title{color:var(--text-light);background-color:#fff8e1;border-bottom:1px dashed #00000026;align-items:center;gap:8px;padding:10px 15px 5px;font-size:14px;font-weight:700;display:flex}.dropdown-notices-title .btn-icon{flex-shrink:0;width:16px;height:16px}[data-theme=dark] .dropdown-notices-title{color:#fff;background-color:#2c240a;border-bottom:1px dashed #fff3}.dropdown-notices{background-color:#fff8e1!important;border:none!important;border-radius:0!important;margin-bottom:0!important;padding:15px!important}[data-theme=dark] .dropdown-notices{color:#fff!important;background-color:#2c240a!important;border-color:#463a12!important}.dropdown-notices .help-notice-item{border-bottom:1px dashed #00000026;border-left:3px solid #00a0e9;padding-left:9px}.dropdown-notices .help-notice-item.notice-level-warning{border-left-color:#eb9605}.dropdown-notices .help-notice-item.notice-level-critical{border-left-color:#d93025}[data-theme=dark] .dropdown-notices .help-notice-item{border-bottom:1px dashed #fff3}.dropdown-notices .help-notice-item:last-child{border-bottom:none!important}[data-theme=dark] .help-notice-content{color:#fff!important}.dropdown-notices+.dropdown-item-settings{margin-top:5px!important}[data-theme=dark] .help-notices-box{color:#ffd970;background-color:#3e3312;border-color:#584610}.help-notice-item{margin-bottom:12px;padding-bottom:12px}.help-notice-item,[data-theme=dark] .help-notice-item{border-bottom:1px dashed #0000001a}.help-notice-item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.help-notice-header{color:#006b9f;flex-wrap:wrap;align-items:center;margin-bottom:4px;font-size:13px;font-weight:700;display:flex}.notice-level-warning .help-notice-header{color:#9a6200}.notice-level-critical .help-notice-header{color:#b3261e}[data-theme=dark] .help-notice-header{color:var(--text-main)}.help-notice-icon{margin-right:4px}.help-notice-content{font-size:11px;line-height:1.5}.help-notice-image{text-align:center;margin-top:8px}.help-notice-image img{border-radius:4px;max-width:100%;height:auto;margin:0 auto;display:block}#route-capsule{top:88px;left:calc(76px + env(safe-area-inset-left,0px));z-index:850;box-sizing:border-box;height:48px;color:var(--text-main);-webkit-user-select:none;user-select:none;-webkit-backdrop-filter:blur(12px);border-radius:24px;align-items:center;gap:10px;padding:8px 16px;transition:all .2s ease-in-out;display:flex;position:absolute;box-shadow:0 4px 16px #0003;background:var(--panel)!important;border:1px solid var(--divider)!important}@media (min-width:641px){#cgopush-notice-container{top:calc(88px + env(safe-area-inset-top,0px))!important;right:calc(20px + env(safe-area-inset-right,0px))!important}}#route-capsule .capsule-dot{background:#d0021b;border-radius:50%;flex-shrink:0;width:8px;height:8px;box-shadow:0 0 6px #d0021b99}#route-capsule .capsule-close-btn{cursor:pointer;color:var(--text-light);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;margin-left:4px;padding:4px;font-size:16px;line-height:1;transition:all .2s;display:flex}#route-capsule .capsule-close-btn:hover{color:#ef4444;background:#ffffff1a}.route-planner{color:var(--text-main);background:var(--panel);border:1px solid var(--divider);-webkit-user-select:none;user-select:none;isolation:isolate;touch-action:auto;border-radius:8px;overflow:visible;box-shadow:0 18px 44px #001d3133}.route-planner-header{color:#fff;background:var(--panel-header-bg,#00263b);border-bottom:1px solid #ffffff1a;border-top-left-radius:8px;border-top-right-radius:8px;justify-content:flex-start;align-items:center;padding:16px 40px 16px 20px;display:flex;position:relative}.route-planner-heading{text-align:left;flex-direction:column;align-items:flex-start;display:flex}.route-planner-kicker{color:#8fc3d2;letter-spacing:.18em;margin-bottom:2px;font-size:9px;font-weight:800;line-height:1}.route-planner-heading strong{color:#fff;letter-spacing:1px;font-size:18.5px;font-weight:700;line-height:1.2}.route-planner-heading small{color:#ffffffb3;margin-top:3px;font-size:11px;font-weight:700;line-height:1.2}.route-station-clear,.route-swap-button{color:var(--text-light);cursor:pointer;background:0 0;border:0}.route-planner-close{width:26px;height:26px;color:var(--close-btn-color,#ffffffd9);cursor:pointer;z-index:10;background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;padding:0;transition:all .18s;display:flex;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.route-station-clear:hover,.route-swap-button:hover{color:var(--text-main);background:var(--ctrl-hover)}.route-planner-close:hover{color:#fff;background-color:#ffffff1f;border-radius:6px}.route-planner-fields{background:var(--panel);padding:10px 12px;position:relative;z-index:20!important}@supports (color:color-mix(in lab,red,red)){.route-planner-fields{background:color-mix(in srgb,var(--panel)92%,#d8e8ed)}}.route-planner-fields{overflow:visible!important}.route-planner-fields:last-child{border-bottom-right-radius:8px;border-bottom-left-radius:8px}.route-endpoints{--route-field-h:30px;grid-template-columns:minmax(0,1fr) 34px;align-items:center;gap:8px 6px;display:grid;position:relative}.route-endpoints-rail{left:8px;top:calc(var(--route-field-h)/2);bottom:calc(var(--route-field-h)/2);border-left:1px dashed var(--text-light);width:0;position:absolute}@supports (color:color-mix(in lab,red,red)){.route-endpoints-rail{border-left:1px dashed color-mix(in srgb,var(--text-light)55%,transparent)}}.route-endpoints-rail{pointer-events:none}.route-station-field{grid-column:1;grid-template-columns:17px minmax(0,1fr);align-items:center;column-gap:8px;display:grid;position:relative}.route-station-field-start{grid-row:1}.route-station-field-end{grid-row:2}.route-station-dot{width:9px;height:9px;box-shadow:0 0 0 2px var(--panel);border-radius:50%;justify-self:center}.route-station-dot-start{background:#0f7894}.route-station-dot-end{background:#d0021b}.route-station-input-row{height:var(--route-field-h);color:var(--text-light);background:var(--panel);border:1px solid var(--divider);border-radius:6px;align-items:center;gap:6px;padding:0 8px;transition:border-color .16s,box-shadow .16s,background-color .16s;display:flex;box-shadow:0 1px #001d3109}.route-station-input-row:focus-within{color:var(--primary-color);background:var(--card-bg);border-color:var(--primary-color);box-shadow:0 0 0 2px var(--primary-color)}@supports (color:color-mix(in lab,red,red)){.route-station-input-row:focus-within{box-shadow:0 0 0 2px color-mix(in srgb,var(--primary-color)12%,transparent)}}.route-station-input-row input{width:100%;min-width:0;height:100%;color:var(--text-main);font:inherit;background:0 0;border:0;outline:0;padding:0;font-size:16px;font-weight:550;line-height:normal}.route-station-input-row input::placeholder{color:var(--text-light);font-size:12.5px;font-weight:450}.route-station-input-row input::-webkit-search-cancel-button{display:none}.route-station-clear{border-radius:4px;flex:none;place-items:center;width:18px;height:18px;padding:0;display:grid}.route-swap-button{border:1px solid var(--divider);background:var(--ctrl-btn-bg,#f0f2f5);width:30px;height:30px;color:var(--text-main,#00263b);cursor:pointer;border-radius:8px;grid-area:1/2/span 2;justify-content:center;justify-self:center;align-items:center;padding:0;transition:color .15s,border-color .15s,background-color .15s;display:inline-flex}.route-swap-button:hover{color:var(--primary-color,#0f7894);border-color:var(--primary-color)}@supports (color:color-mix(in lab,red,red)){.route-swap-button:hover{border-color:color-mix(in srgb,var(--primary-color)32%,var(--divider))}}.route-swap-button:hover{background:var(--panel)}.route-planner-chips{flex-wrap:wrap;gap:6px;margin-top:8px;padding-left:25px;display:flex}.route-chip{height:26px;color:var(--text-main,#00263b);background:var(--ctrl-btn-bg,#f0f2f5);border:1px solid var(--divider,#e0e0e0);font:inherit;white-space:nowrap;cursor:pointer;border-radius:999px;align-items:center;gap:5px;padding:0 10px;font-size:12px;font-weight:600;transition:background-color .2s,border-color .2s,color .2s;display:inline-flex}.route-chip:hover{color:var(--primary-color,#0f7894);background:var(--panel,#fff);border-color:var(--primary-color)}@supports (color:color-mix(in lab,red,red)){.route-chip:hover{border-color:color-mix(in srgb,var(--primary-color)32%,var(--divider))}}.route-chip.is-open,.route-chip.is-set{color:var(--primary-color);border-color:var(--primary-color)}@supports (color:color-mix(in lab,red,red)){.route-chip.is-open,.route-chip.is-set{border-color:color-mix(in srgb,var(--primary-color)45%,var(--divider))}}.route-chip.is-open,.route-chip.is-set{background:var(--primary-color)}@supports (color:color-mix(in lab,red,red)){.route-chip.is-open,.route-chip.is-set{background:color-mix(in srgb,var(--primary-color)10%,var(--panel))}}.route-time-chip-wrap{position:relative}.route-time-popover{z-index:40;background:var(--card-bg,#fff);border:1px solid var(--divider);border-radius:10px;flex-direction:column;gap:8px;width:max-content;min-width:236px;max-width:min(300px,100vw - 40px);padding:10px;display:flex;position:absolute;inset:auto 0 calc(100% + 6px) auto;box-shadow:0 10px 26px #001d312e}.route-time-modes{background:var(--ctrl-btn-bg,#f0f2f5);border-radius:8px;gap:2px;padding:2px;display:flex}.route-time-modes button{height:28px;color:var(--text-light);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;flex:1 1 0;font-size:12.5px;font-weight:600}.route-time-modes button.is-active{color:var(--text-main);background:var(--panel,#fff);box-shadow:0 1px 3px #001d311f}.route-time-popover input[type=datetime-local]{width:100%;height:34px;color:var(--text-main);background:var(--panel);border:1px solid var(--divider);font:inherit;border-radius:8px;padding:0 8px;font-size:14px}.route-time-actions{justify-content:space-between;align-items:center;gap:8px;display:flex}.route-time-actions button{border:1px solid var(--divider);height:30px;color:var(--text-main);font:inherit;cursor:pointer;background:0 0;border-radius:8px;padding:0 12px;font-size:12.5px;font-weight:600}.route-time-actions .route-time-apply{color:var(--primary-contrast,#f8fbfc);background:var(--primary-color);border-color:var(--primary-color)}.route-time-actions button:disabled{opacity:.6;cursor:default}.route-chip.is-active{box-shadow:0 2px 8px #d0021b59;color:#fff!important;background:#d0021b!important;border-color:#d0021b!important}.route-station-results{z-index:30;background:var(--card-bg,#fff);border:1px solid var(--divider,#e0e0e0);overscroll-behavior:contain;touch-action:pan-y;border-radius:8px;grid-column:2;max-height:min(260px,42vh);margin-top:6px;position:relative;overflow-y:auto;box-shadow:0 8px 22px #001d3129}.route-quick-actions{border-bottom:1px solid var(--divider);flex-wrap:wrap;gap:6px;padding:8px 10px;display:flex}.route-quick-action{height:30px;color:var(--text-main);background:var(--ctrl-btn-bg,#f0f2f5);border:1px solid var(--divider);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:0 10px;font-size:12.5px;font-weight:600;display:inline-flex}.route-quick-action:hover{color:var(--primary-color);border-color:var(--primary-color)}@supports (color:color-mix(in lab,red,red)){.route-quick-action:hover{border-color:color-mix(in srgb,var(--primary-color)32%,var(--divider))}}.route-quick-action:hover{background:var(--panel)}.route-quick-action.is-active{color:#fff;background:#d0021b;border-color:#d0021b}.route-results-title{color:var(--text-light);justify-content:space-between;align-items:center;gap:8px;padding:7px 10px 3px;font-size:11px;font-weight:600;display:flex}.route-results-title button{color:var(--text-light);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:11px;text-decoration:underline}.route-results-title button:hover{color:var(--primary-color)}.route-station-result{text-align:left;width:100%;min-height:44px;color:var(--text-main);background:var(--card-bg);border:0;border-bottom:1px solid var(--divider);cursor:pointer;grid-template-columns:minmax(48px,auto) minmax(0,1fr) auto;align-items:center;gap:9px;padding:6px 10px;display:grid}.route-station-result:last-child{border-bottom:0}.route-station-result:focus-visible,.route-station-result:hover{background:var(--list-hover);outline:0}.route-result-line-icons{justify-content:flex-start;align-items:center;gap:3px;display:flex}.route-result-line-icons i{border-radius:50%;width:7px;height:7px;display:block}.route-result-name{flex-direction:column;min-width:0;display:flex}.route-result-name small,.route-result-name strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.route-result-name strong{font-size:12.5px}.route-result-name small{color:var(--text-light);margin-top:1px;font-size:9.5px}.route-station-result em{color:var(--text-light);white-space:nowrap;font-size:10px;font-style:normal}.route-station-empty{color:var(--text-light);text-align:center;padding:18px 14px;font-size:12px;line-height:1.5}.route-planner-footer{background:var(--panel);border-top:1px solid var(--divider);border-bottom-right-radius:8px;border-bottom-left-radius:8px;justify-content:space-between;align-items:center;gap:10px;min-height:48px;padding:8px 14px 8px 16px;display:flex;position:relative;z-index:1!important}.route-planner-footer>span{min-width:0;color:var(--text-light);align-items:center;gap:7px;font-size:11.5px;line-height:1.35;display:flex}.route-planner-footer>span:before{content:"";background:var(--text-light);border-radius:50%;flex:none;width:6px;height:6px}@supports (color:color-mix(in lab,red,red)){.route-planner-footer>span:before{background:color-mix(in srgb,var(--text-light)70%,transparent)}}.route-planner-footer>span.is-picking{color:var(--primary-color);font-weight:650}.route-planner-footer>span.is-picking:before{background:var(--primary-color);box-shadow:0 0 0 4px var(--primary-color)}@supports (color:color-mix(in lab,red,red)){.route-planner-footer>span.is-picking:before{box-shadow:0 0 0 4px color-mix(in srgb,var(--primary-color)12%,transparent)}}.route-planner-footer>button{min-width:104px;height:38px;color:var(--primary-contrast,#f8fbfc);background:var(--primary-color);font:inherit;cursor:pointer;border:0;border-radius:6px;justify-content:center;align-items:center;gap:6px;padding:0 16px;font-size:12px;font-weight:750;display:inline-flex}.route-planner-footer>button:after{content:"›";font-size:16px;font-weight:500;line-height:1}.route-planner-footer>button:hover:not(:disabled){filter:brightness(1.12)}.route-planner-footer>button:disabled{color:var(--text-light);background:var(--ctrl-hover);cursor:not-allowed;opacity:.72}.route-result-panel{width:320px;max-width:calc(100vw - 40px);top:80px;left:calc(76px + env(safe-area-inset-left,0px));z-index:3000;color:var(--text-main);-webkit-backdrop-filter:blur(16px);border-radius:20px;padding:18px 20px;font-family:inherit;animation:slideInLeft .3s cubic-bezier(.2,.8,.2,1);position:absolute;overflow:hidden;box-shadow:0 16px 36px -8px #00000059,0 0 0 1px #ffffff14;background:var(--panel)!important;border:1px solid var(--divider)!important}.unified-panel{flex-direction:column;display:flex}.unified-panel .sheet-grabber{display:none}.unified-panel.route-panel .unified-route-content{flex-direction:column;gap:10px;min-height:0;display:flex;overflow:visible!important}@media (min-width:641px){.unified-panel.route-panel{border:1px solid var(--divider)!important;background:var(--panel)!important;border-radius:16px!important;overflow:hidden!important;box-shadow:0 4px 24px #0000004d!important}.unified-panel.route-panel.route-result-sheet{border-color:var(--primary-color)!important}@supports (color:color-mix(in lab,red,red)){.unified-panel.route-panel.route-result-sheet{border-color:color-mix(in srgb,var(--primary-color)24%,var(--divider))!important}}.unified-panel.route-panel.route-result-sheet{box-shadow:0 2px 8px #001d311f,0 22px 60px #001d3147!important}.unified-panel.route-panel .unified-route-content{overscroll-behavior:contain;overflow-y:auto!important}.unified-panel.route-panel .route-planner,.unified-panel.route-panel .route-result-panel{box-shadow:none!important;background:0 0!important;border:none!important;border-radius:0!important}.unified-panel.route-panel .route-result-panel{flex:none;width:100%!important;max-width:none!important;position:static!important;inset:auto!important}}.sidebar-floating-container .route-planner,cgo-floating-window .route-planner{overflow:visible!important}.sidebar-floating-container .route-planner,.sidebar-floating-container .route-result-panel,cgo-floating-window .route-planner,cgo-floating-window .route-result-panel{flex-shrink:0;animation:none;border:1px solid var(--divider)!important;border-radius:16px!important;width:100%!important;max-width:none!important;position:static!important;top:auto!important;left:auto!important;right:auto!important;box-shadow:0 4px 24px #0000004d!important}.sidebar-floating-container .route-result-panel,cgo-floating-window .route-result-panel{overflow:hidden!important}@media (max-width:640px){.unified-panel.mobile-sheet{border-radius:20px 20px 0 0;transition:top .28s cubic-bezier(.2,.8,.2,1);overflow:hidden;width:100%!important;max-height:none!important;position:fixed!important;inset:40dvh 0 0!important}#info-panel.mobile-split-active.sheet-collapsed,.unified-panel.mobile-sheet.sheet-collapsed{top:calc(100dvh - 96px - env(safe-area-inset-bottom,0px))!important}#info-panel.mobile-split-active.mobile-expanded,.unified-panel.mobile-sheet.mobile-expanded{border-radius:0;top:calc(env(safe-area-inset-top,0px) + 64px)!important}.unified-panel.route-panel.mobile-sheet:not(.mobile-expanded):not(.sheet-collapsed){height:auto;max-height:70dvh;animation:routeSheetEnter .36s cubic-bezier(.16,1,.3,1) both;bottom:0;top:auto!important}.panel-expand-btn{display:none!important}.unified-panel .sheet-grabber{cursor:grab;touch-action:none;z-index:2002;background:0 0;justify-content:center;align-items:center;width:72px;height:20px;display:flex;position:absolute;top:0;left:50%;transform:translate(-50%)}.unified-panel .sheet-grabber-bar{background:#ffffffc7;border-radius:999px;width:40px;height:4px;box-shadow:0 0 0 1px #0003,0 1px 3px #0000004d}.unified-panel.route-panel{--route-sheet-surface:#f7fafb;background:var(--route-sheet-surface);border:1px solid var(--divider);border-bottom:none;box-shadow:0 -12px 32px #00000047;z-index:11630!important;overflow:visible!important}[data-theme=dark] .unified-panel.route-panel{--route-sheet-surface:#101c24}.unified-panel.route-panel .unified-route-content{overscroll-behavior:contain;overflow:visible!important}.unified-panel.route-panel .route-planner,.unified-panel.route-panel .route-result-panel{-webkit-backdrop-filter:none;box-shadow:none!important;background:0 0!important;border:none!important;border-radius:0!important}.unified-panel.route-panel .route-planner-fields,.unified-panel.route-panel .route-planner-footer{background-color:var(--route-sheet-surface)}.unified-panel.route-panel .panel-expand-btn,.unified-panel.route-panel .sheet-grabber{display:none!important}.unified-panel.route-panel .route-planner-header{border-bottom-color:#ffffff1f;padding-top:14px}.unified-panel.route-panel .route-planner-footer{padding-bottom:calc(12px + env(safe-area-inset-bottom,0px))}}@keyframes routeSheetEnter{0%{transform:translateY(100%)}to{transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.unified-panel.route-panel.mobile-sheet{transition-duration:.01ms!important;animation:none!important}}.route-plan-cards{gap:8px;margin-bottom:14px;display:flex}.route-plan-card{border:1px solid var(--divider);color:var(--text-main);cursor:pointer;text-align:left;background:#ffffff0a;border-radius:12px;flex-direction:column;flex:1;align-items:flex-start;gap:2px;padding:8px 10px;font-family:inherit;font-size:12px;transition:all .2s;display:flex}.route-plan-card.active,.route-plan-card:hover{border-color:var(--plan-color,#38bdf8)}.route-plan-card.active{background:var(--plan-color,#38bdf8)}@supports (color:color-mix(in lab,red,red)){.route-plan-card.active{background:color-mix(in srgb,var(--plan-color,#38bdf8)12%,transparent)}}.route-plan-card.active{box-shadow:0 0 0 1px var(--plan-color,#38bdf8)}.route-plan-card .plan-label{color:var(--text-light);align-items:center;gap:5px;font-weight:600;display:flex}.route-plan-card .plan-color-dot{background:var(--plan-color,#38bdf8);border-radius:50%;width:8px;height:8px}.route-plan-card .plan-time{font-size:15px;font-weight:700}.route-plan-card .plan-meta{color:var(--text-light);font-size:11px}.result-close{border:1px solid var(--divider);width:28px;height:28px;color:var(--text-light);cursor:pointer;background:#ffffff0f;border-radius:50%;justify-content:center;align-items:center;font-size:16px;line-height:1;transition:all .2s;display:flex;position:absolute;top:12px;right:14px}.result-close:hover{color:#ef4444;background:#ef444426;border-color:#ef44444d}.result-header{color:#f4fafc;cursor:grab;background:#002c43;border-bottom:1px solid #ffffff1f;flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:5px;margin:-18px -20px 16px;padding:13px 48px 14px 20px;font-size:14px;font-weight:700;display:flex}.result-header:active{cursor:grabbing}.result-header-kicker{color:#8fc3d2;letter-spacing:.16em;font-size:9px;font-weight:800;line-height:1}.result-journey{align-items:center;gap:9px;min-width:0;display:flex}.result-station-tag{color:inherit;align-items:center;gap:6px;display:inline-flex}.result-station-tag.start .station-dot{background:#10b981;border-radius:50%;width:8px;height:8px;box-shadow:0 0 8px #10b98199}.result-station-tag.end .station-dot{background:#ef4444;border-radius:50%;width:8px;height:8px;box-shadow:0 0 8px #ef444499}.result-arrow-icon{color:var(--text-light);opacity:.6;font-size:13px}.result-main{justify-content:space-between;margin-bottom:16px}.result-main,.time-big{align-items:flex-start;display:flex}.time-big{flex-direction:column;gap:7px;line-height:1}.time-duration-row{align-items:baseline;gap:3px;display:flex}.time-big .time-value{letter-spacing:-1px;color:#38bdf8;text-shadow:0 2px 10px #38bdf840;font-size:38px;font-weight:800}.time-big small{color:var(--text-light);margin-left:2px;font-size:13px;font-weight:500}.time-big .result-arrival-time{color:var(--primary-color);align-items:center;gap:4px;margin-left:1px;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.time-big .result-arrival-time{color:color-mix(in srgb,var(--primary-color)76%,var(--text-main))}}.time-big .result-arrival-time{white-space:nowrap;font-size:11.5px;font-weight:650;line-height:1.2}.stops-info-box{flex-direction:column;justify-content:flex-start;align-items:flex-end;gap:4px;display:flex}.stops-small{color:#38bdf8;background:#38bdf81f;border:1px solid #38bdf840;border-radius:8px}.fare-small,.stops-small{white-space:nowrap;align-items:center;gap:4px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.fare-small{color:#10b981;background:#10b9811f;border:1px solid #10b98140;border-radius:8px}.result-options{flex-wrap:wrap;gap:6px;margin-bottom:14px;display:flex}.result-option{cursor:pointer;color:var(--text-light);border:1px solid var(--divider);-webkit-user-select:none;user-select:none;box-sizing:border-box;background:#ffffff0a;border-radius:8px;align-items:center;gap:4px;padding:4px 9px;font-size:11.5px;font-weight:500;transition:all .2s;display:inline-flex}.result-option:hover{color:var(--text-main);background:#ffffff14;border-color:#38bdf866}.result-option.active{font-weight:600;box-shadow:0 2px 8px #38bdf826;color:#38bdf8!important;background:#38bdf826!important;border-color:#38bdf880!important}.result-option input[type=checkbox]{accent-color:#38bdf8;cursor:pointer;margin:0}.passenger-type-option.active{box-shadow:0 2px 8px #fbbf2426;color:#fbbf24!important;background:#fbbf2426!important;border-color:#fbbf2480!important}.passenger-type-option input[type=checkbox]{accent-color:#fbbf24}.peak-badge,.timetable-badge{cursor:default;-webkit-user-select:none;user-select:none;border-radius:6px;align-items:center;gap:3px;padding:3px 7px;font-size:10.5px;font-weight:600;display:inline-flex}.timetable-badge{color:#22c55e;background:#22c55e1f;border:1px solid #22c55e4d}.peak-badge{color:#ef4444;background:#ef44441f;border:1px solid #ef44444d}.fare-breakdown{background:var(--ctrl-btn-bg);border:1px dashed var(--divider);color:var(--text-light);border-radius:8px;margin-bottom:14px;padding:10px 12px;font-size:12px}.fare-item{justify-content:space-between;margin-bottom:4px;display:flex}.route-result-actions{align-items:center;gap:8px;width:100%;margin-bottom:12px;display:flex}.route-result-panel>.result-options,.route-result-panel>.route-result-actions{max-height:320px;transition:max-height .22s,opacity .16s,margin-bottom .22s;overflow:hidden}.route-result-panel>.result-options.is-busy{opacity:.55;pointer-events:none}.route-result-panel.is-compact>.result-options,.route-result-panel.is-compact>.route-result-actions{opacity:0;pointer-events:none;max-height:0;margin-bottom:0}.route-result-actions .route-fit-btn{border:1px solid var(--divider,#e0e0e0);background:var(--ctrl-btn-bg,#f0f2f5);width:32px;height:32px;color:var(--text-main,#00263b);cursor:pointer;border-radius:8px;flex:0 0 32px;justify-content:center;align-items:center;padding:0;transition:color .18s,border-color .18s,background-color .18s;display:flex}.route-result-actions .route-fit-btn:hover{color:var(--primary-color,#0f7894);border-color:var(--primary-color)}@supports (color:color-mix(in lab,red,red)){.route-result-actions .route-fit-btn:hover{border-color:color-mix(in srgb,var(--primary-color)32%,var(--divider))}}.route-result-actions .route-fit-btn:hover{background:var(--panel,#fff)}.route-result-actions #pip-result-btn{flex:1;margin-bottom:0}.route-result-actions #copy-result-btn{flex:0 0 32px;width:32px;height:32px;margin-bottom:0;padding:0}#copy-result-btn,#pip-refresh-btn,#pip-result-btn{border:1px solid var(--divider,#e0e0e0);background:var(--ctrl-btn-bg,#f0f2f5);height:32px;color:var(--text-main,#00263b);cursor:pointer;box-shadow:none;box-sizing:border-box;border-radius:8px;outline:none;justify-content:center;align-items:center;gap:5px;padding:0 12px;font-size:13px;font-weight:500;transition:background-color .2s,border-color .2s,color .2s;display:flex}#copy-result-btn cgo-icon,#copy-result-btn svg,#pip-refresh-btn cgo-icon,#pip-refresh-btn svg,#pip-result-btn cgo-icon,#pip-result-btn svg{flex-shrink:0;width:13px;height:13px;font-size:13px}#copy-result-btn:hover,#pip-refresh-btn:hover:not(:disabled),#pip-result-btn:hover:not(:disabled){background:var(--ctrl-btn-bg-hover,#0000000f);border-color:var(--text-light)}#copy-result-btn.is-copied{color:#10b981;background:#10b98126;border-color:#10b98166}#copy-result-btn.is-error{color:#ef4444;background:#ef444426;border-color:#ef444466}#pip-result-btn:disabled{opacity:.6;cursor:not-allowed}.route-note{color:var(--text-light);opacity:.8;margin-top:8px;font-size:11px;line-height:1.4}#route-calc-error{color:#ef4444;text-align:center;background:#ef44441a;border:1px solid #ef444433;border-radius:8px;margin-top:8px;padding:8px;font-size:12px;font-weight:600}.route-path-flow{background:var(--ctrl-btn-bg);border:1px solid var(--divider);color:var(--text-main);-webkit-user-select:text;user-select:text;border-radius:8px;flex-direction:column;gap:8px;max-height:260px;margin-top:10px;padding:10px 12px;font-size:12px;line-height:1.5;display:flex;overflow-y:auto}.route-path-flow::-webkit-scrollbar{width:4px}.route-path-flow::-webkit-scrollbar-thumb{background:#8080804d;border-radius:2px}.route-section-block{border-left:2px solid var(--line-color,#38bdf8);flex-direction:column;gap:4px;margin-left:28px;padding-left:10px;transition:border-color .2s;display:flex;position:relative}.route-section-content{flex-wrap:wrap;gap:4px 6px}.route-section-content,.route-section-end-row{align-items:center;display:flex;position:relative}.route-section-end-row{gap:6px;margin-top:2px}.path-node-icon{color:var(--text-light);opacity:.85;flex-shrink:0;justify-content:center;align-items:center;width:14px;height:14px;display:inline-flex}.path-node-icon.start{top:2px}.path-node-icon.end,.path-node-icon.start{width:14px;height:14px;color:var(--text-light);opacity:.85;position:absolute;left:-28px}.path-node-icon.end{top:50%;transform:translateY(-50%)}.path-node-icon.transfer{color:var(--text-light);opacity:.7;margin:0 1px}.path-line-badge{color:var(--line-color,var(--text-main));box-sizing:border-box;justify-content:center;align-items:center;font-size:11px;font-weight:700;line-height:1;display:inline-flex;border-radius:3px!important;overflow:hidden!important}.path-line-badge .inline-line-icon,.path-line-badge svg,.path-transfer-btn .inline-line-icon,.path-transfer-btn svg{display:block;border-radius:3px!important;overflow:hidden!important}.path-transfer-btn{background:var(--line-bg,#f59e0b26);color:var(--line-color,#f59e0b);border:1px solid var(--line-color,#f59e0b4d);vertical-align:middle;border-radius:5px;align-items:center;gap:3px;padding:1px 6px;font-size:11px;font-weight:600;line-height:1.3;display:inline-flex}.path-station-name{color:var(--text-main);font-size:12px;font-weight:500}.path-arrow-icon{color:var(--text-light);opacity:.35;align-items:center;margin:0 1px;display:inline-flex}@keyframes slideInLeft{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.btn-close-unified{color:var(--close-btn-color);cursor:pointer;z-index:10;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;padding:4px;font-size:24px;line-height:1;transition:background-color .2s;display:flex}.btn-close-unified:hover{color:#fff;background-color:#ffffff26}.panel-close-btn{cursor:pointer;z-index:10;appearance:none;background:0 0;border:none;justify-content:center;align-items:center;width:32px;height:32px;padding:0;display:flex;position:absolute;top:50%;right:10px;transform:translateY(-50%);color:var(--close-btn-color)!important}.panel-close-btn:hover{color:#fff;background-color:#ffffff1a;border-radius:50%}.station-detail-resizable{flex-direction:column;transition:width .2s,height .2s;display:flex}@media (min-width:641px){#info-panel,.station-detail-resizable,.unified-panel{max-height:90dvh;border-radius:8px!important;overflow:hidden!important}}.station-detail-resizable.minimized{height:60px!important}.panel-expand-btn{display:none}@media (max-width:640px){.panel-expand-btn{-webkit-backdrop-filter:blur(8px);color:#fff;cursor:pointer;z-index:2001;background-color:#00000052;border-radius:10px;justify-content:center;align-items:center;width:60px;height:20px;padding:0;transition:background-color .2s;display:flex;position:absolute;top:-5px;left:50%;transform:translate(-50%);box-shadow:0 1px 4px #0000004d;border:none!important}.panel-expand-btn svg{opacity:.9;fill:currentColor;width:16px;height:16px}.panel-expand-btn svg path{fill:#fff}#info-panel.mobile-split-active{animation:slideUp .3s cubic-bezier(.2,.8,.2,1);z-index:11500!important;background-color:var(--panel)!important;border-radius:20px 20px 0 0!important;flex-direction:column!important;width:100%!important;height:auto!important;max-height:none!important;transition:top .3s cubic-bezier(.25,.46,.45,.94)!important;display:flex!important;position:fixed!important;top:40dvh!important;bottom:0!important;left:0!important;overflow:visible!important;box-shadow:0 -5px 20px #00000026!important}#info-panel .panel-body{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;flex:1;min-height:0;padding-bottom:20px;overflow:hidden auto}#info-panel .panel-footer{background-color:var(--panel);z-index:5;flex-shrink:0;margin-top:auto;position:sticky;bottom:0;border-top:1px solid var(--divider)!important;padding-bottom:calc(8px + env(safe-area-inset-bottom))!important}#info-panel.mobile-expanded,body.mobile-panel-expanded #info-panel{top:calc(env(safe-area-inset-top,0px) + 64px)!important;z-index:11500!important;border-radius:0!important;height:auto!important;min-height:0!important;max-height:none!important;bottom:0!important}#info-panel.mobile-split-active:not(.mobile-expanded) .station-detail-content{border-radius:20px 20px 0 0!important;overflow:hidden!important}.tool-header:has(.dropdown-content.show){z-index:12000!important}#info-panel.mobile-expanded .station-detail-content,#info-panel.mobile-split-active .station-detail-content,body.mobile-panel-expanded #info-panel .station-detail-content{flex-direction:column!important;height:100%!important;min-height:0!important;display:flex!important}#info-panel.mobile-expanded .panel-body,#info-panel.mobile-split-active .panel-body,body.mobile-panel-expanded #info-panel .panel-body{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;flex:auto!important;min-height:0!important;overflow:hidden auto!important}#info-panel.mobile-expanded:not(.is-pinned) .panel-header,#info-panel.mobile-split-active:not(.is-pinned) .panel-header,.unified-panel.mobile-sheet:not(.is-pinned) .panel-header{padding:18px 44px 14px 18px!important}#info-panel.mobile-expanded:not(.is-pinned) .panel-cn-name,#info-panel.mobile-split-active:not(.is-pinned) .panel-cn-name,.unified-panel.mobile-sheet:not(.is-pinned) .panel-cn-name{letter-spacing:.5px!important;margin-bottom:2px!important;font-size:20px!important;font-weight:700!important}#info-panel.mobile-expanded:not(.is-pinned) .panel-en-name,#info-panel.mobile-split-active:not(.is-pinned) .panel-en-name,.unified-panel.mobile-sheet:not(.is-pinned) .panel-en-name{margin-top:1px!important;font-size:12px!important}#info-panel.mobile-expanded:not(.is-pinned) .panel-close-btn,#info-panel.mobile-split-active:not(.is-pinned) .panel-close-btn,.unified-panel.mobile-sheet:not(.is-pinned) .panel-close-btn{width:28px!important;height:28px!important;right:14px!important}#info-panel.mobile-expanded:not(.is-pinned) .panel-close-btn svg,#info-panel.mobile-split-active:not(.is-pinned) .panel-close-btn svg,.unified-panel.mobile-sheet:not(.is-pinned) .panel-close-btn svg{width:18px!important;height:18px!important}#info-panel.mobile-expanded:not(.is-pinned) .panel-badges .line-badge,#info-panel.mobile-split-active:not(.is-pinned) .panel-badges .line-badge,.unified-panel.mobile-sheet:not(.is-pinned) .panel-badges .line-badge{height:26px!important}#info-panel.mobile-expanded:not(.is-pinned) .panel-body,#info-panel.mobile-split-active:not(.is-pinned) .panel-body,.unified-panel.mobile-sheet:not(.is-pinned) .panel-body{gap:8px;padding:10px 14px 20px!important}#info-panel.mobile-expanded:not(.is-pinned) .panel-tabs-nav,#info-panel.mobile-split-active:not(.is-pinned) .panel-tabs-nav{height:38px!important;margin-bottom:4px!important}#info-panel.mobile-expanded:not(.is-pinned) .panel-tabs-nav .tab-item,#info-panel.mobile-split-active:not(.is-pinned) .panel-tabs-nav .tab-item{padding:6px 14px!important;font-size:13.5px!important}#info-panel.mobile-expanded:not(.is-pinned) .station-pip-button-row,#info-panel.mobile-split-active:not(.is-pinned) .station-pip-button-row{height:32px!important;margin-top:4px!important;margin-bottom:8px!important}#info-panel.mobile-expanded:not(.is-pinned) .station-pip-button-row .share-btn,#info-panel.mobile-expanded:not(.is-pinned) .station-pip-button-row button,#info-panel.mobile-split-active:not(.is-pinned) .station-pip-button-row .share-btn,#info-panel.mobile-split-active:not(.is-pinned) .station-pip-button-row button{border-radius:6px!important;height:32px!important;font-size:13px!important}#info-panel.mobile-expanded:not(.is-pinned) .reserved-box,#info-panel.mobile-expanded:not(.is-pinned) .station-svg-container,#info-panel.mobile-split-active:not(.is-pinned) .reserved-box,#info-panel.mobile-split-active:not(.is-pinned) .station-svg-container{border-radius:6px!important;margin:8px 0!important}#info-panel.mobile-expanded:not(.is-pinned) .info-row,#info-panel.mobile-split-active:not(.is-pinned) .info-row{margin-bottom:6px!important;font-size:13.5px!important}#info-panel.mobile-expanded:not(.is-pinned) .info-label,#info-panel.mobile-expanded:not(.is-pinned) .info-value,#info-panel.mobile-split-active:not(.is-pinned) .info-label,#info-panel.mobile-split-active:not(.is-pinned) .info-value{font-size:13.5px!important}#info-panel.mobile-split-active:not(.mobile-expanded):not(.sheet-collapsed),.unified-panel.mobile-sheet:not(.mobile-expanded):not(.sheet-collapsed){top:28dvh!important}#info-panel.mobile-expanded:not(.is-pinned) .nt-wrapper,#info-panel.mobile-split-active:not(.is-pinned) .nt-wrapper{margin-top:3px!important;margin-bottom:5px!important}#info-panel.mobile-expanded:not(.is-pinned) .nt-item,#info-panel.mobile-split-active:not(.is-pinned) .nt-item{border-radius:4px!important;flex-wrap:wrap!important;row-gap:2px!important;height:auto!important;min-height:26px!important;padding:4px 8px!important;font-size:12.5px!important}#info-panel.mobile-expanded:not(.is-pinned) .nt-label,#info-panel.mobile-split-active:not(.is-pinned) .nt-label{font-size:12.5px!important;font-weight:700!important}#info-panel.mobile-expanded:not(.is-pinned) .nt-time-val,#info-panel.mobile-split-active:not(.is-pinned) .nt-time-val{font-size:13px!important;font-weight:700!important}#info-panel.mobile-expanded:not(.is-pinned) .nt-right,#info-panel.mobile-split-active:not(.is-pinned) .nt-right{padding:1px 6px!important;font-size:12px!important}#info-panel.mobile-expanded:not(.is-pinned) .nt-special-note,#info-panel.mobile-split-active:not(.is-pinned) .nt-special-note{white-space:normal!important;word-break:break-word!important;font-size:11.5px!important}#info-panel.mobile-expanded:not(.is-pinned) .panel-share-btn-square,#info-panel.mobile-expanded:not(.is-pinned) .panel-tts-btn-square,#info-panel.mobile-expanded:not(.is-pinned) .station-pip-button-row .panel-share-btn-square,#info-panel.mobile-expanded:not(.is-pinned) .station-pip-button-row .panel-tts-btn-square,#info-panel.mobile-split-active:not(.is-pinned) .panel-share-btn-square,#info-panel.mobile-split-active:not(.is-pinned) .panel-tts-btn-square,#info-panel.mobile-split-active:not(.is-pinned) .station-pip-button-row .panel-share-btn-square,#info-panel.mobile-split-active:not(.is-pinned) .station-pip-button-row .panel-tts-btn-square{aspect-ratio:1!important;border-radius:6px!important;flex-shrink:0!important;width:32px!important;min-width:32px!important;height:32px!important;min-height:32px!important;padding:0!important}#info-panel.mobile-expanded:not(.is-pinned) .tt-header-row-split,#info-panel.mobile-split-active:not(.is-pinned) .tt-header-row-split{gap:6px!important;height:34px!important;margin:6px 0!important}#info-panel.mobile-expanded:not(.is-pinned) .tt-split-toggle,#info-panel.mobile-split-active:not(.is-pinned) .tt-split-toggle{border-radius:6px!important;height:34px!important;padding:0 12px!important;font-size:13.5px!important}#info-panel.mobile-expanded:not(.is-pinned) .tt-ext-btn,#info-panel.mobile-split-active:not(.is-pinned) .tt-ext-btn{border-radius:6px!important;width:34px!important;height:34px!important}#info-panel.mobile-expanded .timetable-scroll-area,#info-panel.mobile-split-active .timetable-scroll-area,body.mobile-panel-expanded .timetable-scroll-area,body.mobile-split-active .timetable-scroll-area{min-height:260px!important;max-height:min(580px,62vh)!important}#info-panel.mobile-expanded:not(.is-pinned) .panel-footer,#info-panel.mobile-split-active:not(.is-pinned) .panel-footer{padding:8px 12px calc(8px + env(safe-area-inset-bottom,0px))!important}#info-panel.mobile-expanded:not(.is-pinned) .panel-footer-actions,#info-panel.mobile-split-active:not(.is-pinned) .panel-footer-actions{gap:6px!important}#info-panel.mobile-expanded:not(.is-pinned) .panel-footer-btn,#info-panel.mobile-split-active:not(.is-pinned) .panel-footer-btn{border-radius:6px!important;flex-direction:column!important;justify-content:center!important;align-items:center!important;gap:2px!important;height:44px!important;min-height:44px!important;padding:4px 2px!important;font-size:12px!important;font-weight:600!important}#info-panel.mobile-expanded:not(.is-pinned) .panel-footer-btn svg,#info-panel.mobile-split-active:not(.is-pinned) .panel-footer-btn svg{width:20px!important;height:20px!important}body.mobile-panel-expanded #modern-zoom-control #mz-in,body.mobile-panel-expanded #modern-zoom-control #mz-out,body.mobile-panel-expanded #modern-zoom-control .mz-divider:last-of-type,body.mobile-panel-expanded #modern-zoom-control .mz-slider-track,body.mobile-panel-expanded #modern-zoom-control .zoom-btn-group,body.mobile-split-active #modern-zoom-control #mz-in,body.mobile-split-active #modern-zoom-control #mz-out,body.mobile-split-active #modern-zoom-control .mz-divider:last-of-type,body.mobile-split-active #modern-zoom-control .mz-slider-track,body.mobile-split-active #modern-zoom-control .zoom-btn-group,body:has(#info-panel.mobile-expanded) #modern-zoom-control #mz-in,body:has(#info-panel.mobile-expanded) #modern-zoom-control #mz-out,body:has(#info-panel.mobile-expanded) #modern-zoom-control .mz-divider:last-of-type,body:has(#info-panel.mobile-expanded) #modern-zoom-control .mz-slider-track,body:has(#info-panel.mobile-expanded) #modern-zoom-control .zoom-btn-group,body:has(#info-panel.mobile-split-active) #modern-zoom-control #mz-in,body:has(#info-panel.mobile-split-active) #modern-zoom-control #mz-out,body:has(#info-panel.mobile-split-active) #modern-zoom-control .mz-divider:last-of-type,body:has(#info-panel.mobile-split-active) #modern-zoom-control .mz-slider-track,body:has(#info-panel.mobile-split-active) #modern-zoom-control .zoom-btn-group{display:none!important}.legend-overlay{z-index:30000!important}.legend-overlay .legend-popover{transform-origin:50%!important;z-index:30001!important;border-radius:16px!important;width:90vw!important;max-width:380px!important;max-height:80dvh!important;margin:0!important;animation:expandMenuMobile .22s cubic-bezier(.2,.8,.2,1)!important;position:fixed!important;top:50%!important;left:50%!important;transform:translate(-50%,-50%)!important;box-shadow:0 10px 30px #0000004d!important}.legend-popover .legend-header-btn.pin-btn{display:none!important}.legend-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:4px 6px!important;margin-bottom:12px!important;display:grid!important}.legend-grid-item{padding:2px 4px!important}.legend-svg-wrapper svg{max-height:35px!important}.legend-svg-wrapper :global(svg){max-height:35px!important}}@media (min-width:641px){#info-panel .panel-header{cursor:move;-webkit-user-select:none!important;user-select:none!important}#info-panel .panel-header a,#info-panel .panel-header button{cursor:pointer;-webkit-user-select:none;user-select:none}}.line-tooltip{z-index:9999;color:var(--text-main);pointer-events:none;filter:drop-shadow(0 2px 5px #0000004d);--data1:var(--map-bg);background:#fffffff2;border:1px solid #dcdcdc;border-radius:3px;flex-direction:column;align-items:center;margin-top:-15px;padding:3px 2px .5px;display:flex;position:fixed;overflow:hidden;transform:translate(-50%,-100%);box-shadow:0 4px 12px #00000026}[data-theme=dark] .line-tooltip{--data2:#fff;background:#1a1a1af2;border:1px solid #444}.settings-overlay{z-index:40000;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#00000080;justify-content:center;align-items:center;width:100%;height:100%;animation:overlayFadeIn .2s ease-out;display:flex;position:fixed;top:0;left:0}.settings-modal{background:var(--panel,#fff);color:var(--text-main,#00263b);border-radius:var(--radius-lg,14px);border:1px solid var(--divider,#dee2e6);width:min(580px,94vw);max-height:88dvh;animation:settingsPopIn .22s cubic-bezier(.34,1.56,.64,1);box-shadow:0 16px 40px #00000038}.settings-modal,.settings-modal cgo-tabs{flex-direction:column;display:flex;overflow:hidden}.settings-modal cgo-tabs{--tab-bg:var(--panel,#fff);--card-bg:transparent;--border-color:var(--divider,#dee2e6);--primary-color:var(--cgo-primary,#00263b);flex:1;min-height:0}.settings-modal cgo-tab[active]{max-height:calc(88dvh - 110px);padding:0;display:block;overflow-y:auto}@keyframes settingsPopIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.settings-header{border-bottom:1px solid var(--divider,#dee2e6);background:var(--panel,#fff);flex-shrink:0;justify-content:space-between;align-items:center;padding:14px 20px;display:flex}.settings-header h3{letter-spacing:-.01em;margin:0;font-size:16px;font-weight:700}.settings-close-btn{background:var(--ctrl-btn-bg,#f1f3f5);width:30px;height:30px;color:var(--text-light,#6c757d);cursor:pointer;appearance:none;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:all .15s;display:flex}.settings-close-btn:hover{background-color:var(--ctrl-hover,#e9ecef);color:var(--text-main,#00263b)}.settings-content{flex-direction:column;flex:1;min-height:0;padding:0;display:flex;overflow:hidden}.settings-group{gap:14px;padding:16px 20px}.settings-card,.settings-group{flex-direction:column;display:flex}.settings-card{background:var(--card-bg,var(--bg-color,#fff));border:1px solid var(--divider,#dee2e6);border-radius:var(--radius-md,10px);box-sizing:border-box;gap:12px;padding:14px 16px}.settings-card-header{border-bottom:1px solid var(--divider,#dee2e6);justify-content:space-between;align-items:center;gap:10px;padding-bottom:8px;display:flex}.settings-card-title{color:var(--text-main,#00263b);align-items:center;gap:8px;font-size:13px;font-weight:700;display:flex}.settings-card-title .btn-icon{color:var(--primary-color,#00263b)}.settings-row{justify-content:space-between;align-items:center;gap:16px;padding:4px 0;display:flex}.settings-row-bordered{border-bottom:1px dashed var(--divider,#dee2e6);padding-bottom:12px}.settings-row-bordered:last-child{border-bottom:none;padding-bottom:4px}.settings-label-wrap{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.settings-label{color:var(--text-main,#00263b);align-items:center;gap:6px;font-size:13.5px;font-weight:600;display:flex}.settings-flag-group{align-items:center;gap:5px;display:inline-flex}.lang-flag-svg{aspect-ratio:3/2;width:21px;height:14px;box-shadow:0 0 0 .5px var(--divider,#0000002e);vertical-align:middle;border-radius:2px;flex-shrink:0;display:inline-block}.settings-desc{color:var(--text-light,#6c757d);font-size:11.5px;line-height:1.45}.settings-switch{background-color:var(--ctrl-btn-bg,#dee2e6);border:1px solid var(--divider,#ced4da);cursor:pointer;box-sizing:border-box;appearance:none;border-radius:12px;outline:none;flex-shrink:0;align-items:center;width:44px;height:24px;padding:2px;transition:background-color .2s,border-color .2s;display:inline-flex;position:relative}.settings-switch:hover:not(:disabled){border-color:var(--primary-color,#00263b)}.settings-switch:focus-visible{box-shadow:0 0 0 2px #00263b33}.settings-switch-thumb{background-color:#fff;border-radius:50%;width:18px;height:18px;transition:transform .2s cubic-bezier(.34,1.56,.64,1);display:block;transform:translate(0);box-shadow:0 1px 3px #00000040}.settings-switch[aria-checked=true]{background-color:var(--primary-color,#00263b);border-color:var(--primary-color,#00263b)}.settings-switch[aria-checked=true] .settings-switch-thumb{transform:translate(20px)}.settings-switch:disabled{opacity:.5;cursor:not-allowed}.settings-readiness-card{background:linear-gradient(135deg,var(--card-bg,#fff)0,var(--panel,#f8f9fa)100%);border:1.5px solid var(--divider,#dee2e6);border-radius:var(--radius-md,10px);flex-direction:column;gap:14px;padding:16px;display:flex}.settings-readiness-card.is-ready{background:linear-gradient(135deg,var(--card-bg,#fff)0,#10b9810a 100%);border-color:#10b98159}.settings-readiness-card.is-partial{background:linear-gradient(135deg,var(--card-bg,#fff)0,#f59e0b0a 100%);border-color:#f59e0b59}.settings-readiness-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.settings-readiness-badge{border-radius:20px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:700;display:inline-flex}.settings-readiness-badge.badge-ready{color:#059669;background-color:#10b9811f;border:1px solid #10b9814d}.settings-readiness-badge.badge-partial{color:#d97706;background-color:#f59e0b1f;border:1px solid #f59e0b4d}.settings-readiness-badge.badge-none{background-color:var(--ctrl-btn-bg,#e9ecef);color:var(--text-light,#6c757d);border:1px solid var(--divider,#ced4da)}.settings-storage-bar{background-color:var(--ctrl-btn-bg,#e9ecef);border:1px solid var(--divider,#dee2e6);border-radius:5px;height:10px;margin:6px 0;display:flex;overflow:hidden}.settings-storage-seg{height:100%;transition:width .3s}.settings-storage-seg.seg-map{background-color:#10b981}.settings-storage-seg.seg-timetable{background-color:#3b82f6}.settings-storage-seg.seg-fonts{background-color:#8b5cf6}.settings-storage-seg.seg-other{background-color:#94a3b8}.settings-storage-legend{color:var(--text-light,#6c757d);flex-wrap:wrap;gap:12px;margin-top:4px;font-size:11px;display:flex}.settings-legend-item{align-items:center;gap:5px;display:inline-flex}.settings-legend-dot{border-radius:50%;width:8px;height:8px}.settings-progress-box{background-color:var(--ctrl-btn-bg,#f8f9fa);border:1px solid var(--divider,#dee2e6);border-radius:var(--radius-sm,6px);flex-direction:column;gap:6px;padding:8px 12px;display:flex}.settings-progress-track{background-color:var(--divider,#dee2e6);border-radius:3px;height:6px;overflow:hidden}.settings-progress-fill{background:var(--primary-color,#00263b);height:100%;transition:width .2s}.settings-line-pack-list{flex-direction:column;gap:6px;max-height:220px;padding-right:4px;display:flex;overflow-y:auto}.settings-line-pack-item{background-color:var(--panel,#f8f9fa);border:1px solid var(--divider,#dee2e6);border-radius:var(--radius-sm,6px);justify-content:space-between;align-items:center;gap:10px;padding:7px 10px;transition:background-color .15s;display:flex}.settings-line-pack-item:hover{background-color:var(--ctrl-hover,#e9ecef)}.settings-line-pack-info{flex:1;align-items:center;gap:8px;min-width:0;display:flex}.settings-line-pack-meta{color:var(--text-light,#6c757d);font-size:11px}.settings-pip-box{background-color:var(--card-bg,var(--bg-color,#fff));border:1px solid var(--divider,#dee2e6);margin-top:4px;padding:12px 14px}.settings-pip-box,.settings-warning-box{border-radius:var(--radius-md,8px);box-sizing:border-box;width:100%;margin-bottom:2px}.settings-warning-box{background-color:#eab30814;border:1px solid #eab30859;align-items:flex-start;gap:10px;margin-top:8px;padding:10px 12px;display:flex}.settings-warning-icon{color:#d97706;flex-shrink:0;margin-top:2px}.settings-warning-text{color:var(--text-main,#00263b);flex-direction:column;gap:3px;font-size:12px;line-height:1.5;display:flex}.settings-warning-text strong{color:#d97706;font-weight:600}.settings-status-tag{background-color:var(--primary-light,#00609814);color:var(--primary-color,#006098);border-radius:var(--radius-sm,6px);align-items:center;gap:8px;margin-top:4px;padding:6px 12px;font-size:12px;font-weight:500;display:inline-flex}.settings-status-dot{background-color:var(--primary-color,#006098);border-radius:50%;flex-shrink:0;width:6px;height:6px}.settings-danger-card{border-radius:var(--radius-md,10px);background-color:#ef444408;border:1px solid #ef444440;flex-direction:column;gap:12px;padding:14px 16px;display:flex}.settings-danger-header{color:#dc2626;border-bottom:1px solid #ef444426;align-items:center;gap:6px;padding-bottom:8px;font-size:13px;font-weight:700;display:flex}.settings-pip-title{color:var(--text-light,#6c757d);margin-bottom:8px;font-size:12px;font-weight:600}.settings-pip-options{flex-direction:column;gap:8px;display:flex}.settings-checkbox-item{cursor:pointer;border-radius:var(--radius-sm,6px);transition:background-color var(--transition-fast,.15s ease);align-items:flex-start;gap:10px;padding:6px 8px;display:flex}.settings-checkbox-item:hover:not(.disabled){background-color:var(--ctrl-hover,#0000000a)}.settings-checkbox-item.disabled{opacity:.5;cursor:not-allowed}.settings-checkbox{appearance:none;border:1.5px solid var(--divider,#ccc);background-color:var(--panel,#fff);cursor:pointer;width:16px;height:16px;transition:all var(--transition-fast,.15s ease);border-radius:4px;flex-shrink:0;margin-top:2px;position:relative}.settings-checkbox:checked{background-color:var(--primary-color,#00263b);border-color:var(--primary-color,#00263b)}.settings-checkbox:checked:after{content:"";border:2px solid #fff;border-width:0 2px 2px 0;width:5px;height:9px;position:absolute;top:1px;left:4px;transform:rotate(45deg)}.settings-checkbox:disabled{cursor:not-allowed;border-color:var(--divider,#dee2e6);background-color:var(--ctrl-btn-bg,#e9ecef)}.settings-checkbox-text{flex-direction:column;min-width:0;display:flex}.settings-checkbox-title{color:var(--text-main,#00263b);font-size:13px;font-weight:500}.settings-checkbox-desc{color:var(--text-light,#6c757d);margin-top:2px;font-size:11px}@media (max-width:480px){.settings-modal{width:95%;max-height:88vh}.settings-row{flex-direction:column;align-items:flex-start;gap:8px}}body.panel-dock-hint-left:after,body.panel-dock-hint:not(.panel-dock-hint-right):after{content:"释放以固定到左侧边栏";border-right:2px dashed #3b82f6;animation:dockHintFadeInLeft .2s ease-out;top:0;bottom:0;left:0}body.panel-dock-hint-left:after,body.panel-dock-hint-right:after,body.panel-dock-hint:not(.panel-dock-hint-right):after{z-index:2400;pointer-events:none;color:#3b82f6;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background-color:#3b82f61a;justify-content:center;align-items:center;width:320px;font-size:14px;font-weight:700;display:flex;position:fixed}body.panel-dock-hint-right:after{content:"释放以固定到右侧边栏";border-left:2px dashed #3b82f6;animation:dockHintFadeInRight .2s ease-out;inset:0 0 0 auto}@keyframes dockHintFadeInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes dockHintFadeInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.station-detail-resizable.is-dragging{opacity:.9;-webkit-user-select:none;user-select:none;transition:transform .2s,box-shadow .2s,opacity .2s;transform:scale(1.01);box-shadow:0 20px 50px #0000004d;z-index:25000!important}.panel-tabs-container{border-bottom:1px solid var(--divider);z-index:10;background:var(--card-bg);align-items:center;display:flex;position:relative}.panel-tabs-nav{scrollbar-width:none;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;flex:1;margin:0 0 -1px;padding:0;display:flex;overflow-x:auto}.panel-tabs-nav::-webkit-scrollbar{display:none}.tab-item{cursor:pointer;white-space:nowrap;color:var(--text-light);border-bottom:3px solid #0000;flex-shrink:0;padding:5px 10px 4px;font-size:13px;font-weight:500;transition:all .2s;position:relative}.tab-item:hover{color:var(--text-main);background-color:var(--list-hover)}.tab-item.active{color:var(--text-main);border-bottom-color:var(--line-color,var(--primary-color));font-weight:700}.panel-tabs-body{min-height:100px;position:relative}.tab-pane{animation:tabFadeIn .2s ease-out;display:none}.tab-pane.active{display:block}@keyframes tabFadeIn{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}.nt-wrapper{flex-direction:column;gap:3px;margin:3px 0 5px;display:flex}.nt-item{border-radius:4px;justify-content:space-between;align-items:center;min-height:23px;padding:2px 8px;font-size:11.5px;font-weight:500;display:flex;box-shadow:0 1px 2px #0000000d}.nt-item.nt-gray{color:#999;background:#f0f2f5;border-radius:999px;justify-content:center;padding:6px 12px;font-weight:400}[data-theme=dark] .nt-item.nt-gray{color:#777;background:#2a2a2a}.nt-green-1,.nt-green-2{color:#2e7d32;background:#e8f5e9;border-left:4px solid #4caf50}[data-theme=dark] .nt-green-1,[data-theme=dark] .nt-green-2{color:#a5d6a7;background:#1b5e20;border-left-color:#66bb6a}.nt-gold{color:#f57f17;background:#fff8e1;border-left:4px solid #ffca28}[data-theme=dark] .nt-gold{color:#ffe082;background:#4a3b0a;border-left-color:#ffd54f}.nt-left{align-items:center;display:flex}.nt-label{margin-right:8px}.nt-label,.nt-time-val{font-weight:700}.nt-time-val.arriving{color:#e65100}[data-theme=dark] .nt-time-val.arriving{color:#ffb74d}.nt-right{opacity:.9;background:#fff9;border-radius:4px;padding:2px 8px;font-size:12px}.nt-right-detailed{text-align:right;flex-direction:column;align-items:flex-end;gap:1px;max-width:52%;display:flex}.nt-special-note{color:currentColor;opacity:.82;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:10px;line-height:1.2;overflow:hidden}[data-theme=dark] .nt-right{background:#0003}.nt-min-val{font-size:14px;font-weight:700}.nt-min-unit{margin-left:2px;font-size:11px}.map-mode-toggle{background:var(--ctrl-btn-bg);border:1px solid var(--divider);border-radius:6px;align-items:center;gap:4px;margin-left:4px;padding:2px;display:inline-flex}.map-mode-toggle .btn-mode,.map-mode-toggle .btn-tile-toggle{cursor:pointer;box-sizing:border-box;height:28px;color:var(--ctrl-icon);white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:4px;justify-content:center;align-items:center;padding:4px 10px;font-size:.82rem;line-height:1;transition:all .2s;display:inline-flex}.map-mode-toggle .btn-mode:hover,.map-mode-toggle .btn-tile-toggle:hover{background-color:var(--ctrl-hover);color:var(--primary-color)}.map-mode-toggle .btn-mode.is-active{background-color:var(--primary-color);color:#fff;border-color:var(--primary-color)}.map-mode-toggle .btn-tile-toggle.is-active{background-color:var(--ctrl-hover);color:var(--primary-color);border-color:var(--divider)}.map-mode-toggle .btn-icon{fill:currentColor;width:1em;height:1em;margin-top:-1px;margin-right:3px}.basemap-layer{filter:grayscale(.9)brightness()contrast(1.1)opacity(.35);pointer-events:none;-webkit-user-select:none;user-select:none;background-color:#0000;transition:filter .3s;z-index:0!important}[data-theme=dark] .basemap-layer{filter:invert()grayscale()brightness(.2)contrast(1.1)opacity(.5);background-color:#0000}[data-theme=dark] .basemap-layer img{filter:none}.basemap-layer~.map-svg~.labels-layer .stacn,.basemap-layer~.map-svg~.stations-layer .stacn{-webkit-text-stroke:2px var(--map-bg);paint-order:stroke fill}.basemap-layer~.map-svg~.labels-layer .staen,.basemap-layer~.map-svg~.stations-layer .staen{-webkit-text-stroke:1.75px var(--map-bg);paint-order:stroke fill}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){.basemap-layer~.map-svg~.labels-layer .stacn,.basemap-layer~.map-svg~.stations-layer .stacn{-webkit-text-stroke:1.2px var(--map-bg)}.basemap-layer~.map-svg~.labels-layer .staen,.basemap-layer~.map-svg~.stations-layer .staen{-webkit-text-stroke:.8px var(--map-bg)}}@media (max-width:640px){.map-mode-toggle{gap:2px;padding:1px}.map-mode-toggle .btn-mode span,.map-mode-toggle .btn-tile-toggle span{display:none}.map-mode-toggle .btn-mode,.map-mode-toggle .btn-tile-toggle{padding:4px 6px}.map-mode-toggle .btn-icon{margin-right:0}}:root{--ruler-thick:15px;--ruler-bg-a:#768289;--ruler-bg-b1:#00263b;--ruler-bg-b2:#768289}[data-theme=dark]{--ruler-bg-a:#555;--ruler-bg-b1:#151515;--ruler-bg-b2:#444}.ruler-wrapper-h{height:var(--ruler-thick);z-index:900;pointer-events:none;background:0 0;transition:top .2s,bottom .2s,left .3s;position:absolute;top:0;left:0;right:0;overflow:hidden}.ruler-wrapper-h.at-bottom{top:auto;bottom:0}.ruler-content-h{transform-origin:0 0;will-change:transform;display:flex;position:absolute;top:0;left:0}.ruler-wrapper-v{width:var(--ruler-thick);z-index:901;pointer-events:none;background:0 0;transition:left .3s,right .2s;position:absolute;top:0;bottom:0;left:0;overflow:hidden}.ruler-wrapper-v.at-right{left:auto;right:0}.ruler-content-v{transform-origin:0 0;will-change:transform;flex-direction:column;display:flex;position:absolute;top:0;left:0}.ruler-block{box-sizing:border-box;position:relative}.ruler-block-h{height:100%}.ruler-block-v{width:100%}.bg-a{background-color:var(--ruler-bg-a)}.bg-b1{background-color:var(--ruler-bg-b1)}.bg-b2{background-color:var(--ruler-bg-b2)}.ruler-label{transform-origin:50%;font-family:var(--font-latin);color:#fff;white-space:nowrap;pointer-events:none;-webkit-user-select:none;user-select:none;font-size:12px;font-weight:700;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@media (max-width:640px){.ruler-wrapper-h,.ruler-wrapper-v{display:none!important}}.panel-share-btn{background:var(--card-bg);width:30px;height:30px;color:var(--text-main);cursor:pointer;opacity:.7;z-index:11;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;margin-right:11px;transition:all .2s;display:flex;position:relative}.panel-share-btn:hover{opacity:1;background-color:var(--bg-color);color:var(--primary-color)}.force-white-text .panel-share-btn{color:inherit}body.legend-pinned .panel-share-btn{width:28px;height:28px;margin-right:8px}@media (max-width:640px){.panel-share-btn{width:30px;height:30px;margin-right:16px}}.panel-tabs-container .panel-share-btn{opacity:.6;background:0 0;margin-left:4px;margin-right:10px}.panel-tabs-container .panel-share-btn:hover{opacity:1;background-color:var(--list-hover)}.panel-share-btn-square,.panel-tts-btn-square,.station-pip-button-row .panel-share-btn-square,.station-pip-button-row .panel-tts-btn-square{aspect-ratio:1;border-radius:6px;flex-shrink:0;width:28px;min-width:28px;height:28px;min-height:28px;padding:0}.share-toast{color:#fff;z-index:10000;pointer-events:none;background:#000c;border-radius:20px;padding:8px 16px;font-size:13px;transition:opacity .3s;position:fixed;bottom:30px;left:50%;transform:translate(-50%);box-shadow:0 2px 10px #0003}[data-theme=dark] .share-toast{color:#000;background:#ffffffe6}.line-timetable-module{border-top:none;flex-direction:column;margin-top:10px;margin-bottom:16px;padding-top:0;display:flex}.line-timetable-module.active{flex:1;min-height:0}.tt-header-row-split{flex-shrink:0;align-items:stretch;gap:8px;height:28px;display:flex}.tt-split-toggle{cursor:pointer;background-color:var(--ctrl-btn-bg);border:1px solid var(--divider);-webkit-user-select:none;user-select:none;border-radius:6px;flex-grow:1;justify-content:space-between;align-items:center;padding:0 10px;transition:background-color .2s;display:flex}.tt-split-toggle:hover{background-color:var(--ctrl-hover)}.tt-split-toggle-text{color:var(--text-main);font-size:12px;font-weight:700}.tt-split-arrow{color:var(--text-light);align-items:center;display:flex}.line-timetable-module.active .tt-split-arrow{transform:none}.tt-ext-btn{background-color:var(--ctrl-btn-bg);border:1px solid var(--divider);cursor:pointer;color:var(--text-main);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;padding:0;text-decoration:none;transition:all .2s;display:flex;overflow:hidden}.tt-ext-btn:hover{background-color:var(--ctrl-hover)}.tt-ext-btn.btn-square{background-color:var(--primary-color);width:28px;height:28px}.tt-ext-btn svg{color:#fff;width:16px;height:16px}.tt-ext-btn svg[fill=none]{fill:none;stroke:currentColor;stroke-width:2px}.tt-ext-btn svg:not([fill=none]){fill:currentColor}.tt-module-body{padding:4px 0 0;animation:simpleFadeIn .25s;display:none}.line-timetable-module.active .tt-module-body,.tt-module-body-inner{flex-direction:column;flex:1;min-height:0;display:flex}.tt-module-body-inner{gap:0}.tt-header-row{justify-content:space-between;align-items:center;gap:6px;margin-bottom:6px;padding:0 2px;display:flex}.tt-current-date{color:var(--text-main);font-size:11.5px;font-weight:500}.tt-day-type-select{border:1px solid var(--divider);background-color:var(--bg-card);color:var(--text-main);appearance:none;border-radius:4px;outline:none;padding:2px 6px;font-size:11px}.tt-loading-text{text-align:center;color:var(--text-light);padding:20px;font-size:13px}.tt-addon-prompt{border:1px dashed var(--divider);background:var(--ctrl-btn-bg);border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;display:flex}.tt-addon-copy{flex-direction:column;gap:2px;min-width:0;display:flex}.tt-addon-title{color:var(--text-main);font-size:13px;font-weight:600}.tt-addon-sub{color:var(--text-light);font-size:11px}.tt-addon-enable-btn{background:var(--primary-color);color:#fff;cursor:pointer;border:none;border-radius:8px;flex-shrink:0;padding:6px 16px;font-size:13px;font-weight:600;transition:opacity .15s,transform .1s}.tt-addon-enable-btn:active{opacity:.9;transform:scale(.96)}.tt-addon-modal-overlay{-webkit-backdrop-filter:blur(6px);z-index:50000;background:#0000008c;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.tt-addon-modal{background:var(--panel);border:1px solid var(--divider);text-align:center;width:340px;max-width:100%;color:var(--text-main);border-radius:20px;padding:24px 22px 18px;animation:ttAddonPop .25s cubic-bezier(.2,.8,.2,1);box-shadow:0 16px 36px -8px #00000059}@keyframes ttAddonPop{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.tt-addon-modal-icon{color:#ff9800;background:#ff980026;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;margin:0 auto 10px;display:flex}.tt-addon-modal-title{margin:0 0 8px;font-size:17px;font-weight:700}.tt-addon-modal-text{color:var(--text-light);text-align:left;margin:0 0 18px;font-size:13px;line-height:1.7}.tt-addon-modal-actions{gap:10px;display:flex}.tt-addon-modal-actions button{cursor:pointer;border-radius:10px;flex:1;padding:10px 0;font-size:14px;font-weight:600;transition:transform .1s,opacity .15s}.tt-addon-modal-actions button:active{transform:scale(.97)}.tt-addon-cancel{border:1px solid var(--divider);background:var(--ctrl-btn-bg);color:var(--text-main)}.tt-addon-confirm{background:var(--primary-color);color:#fff;border:none}.subrail-tt-pill{background:var(--bg-card-secondary,#0000000d);color:var(--text-light,#666);border-radius:12px;padding:2px 8px;font-size:11px;font-weight:500}.subrail-tt-wrapper{-webkit-user-select:none;user-select:none;scrollbar-width:none;-ms-overflow-style:none;cursor:grab;flex-direction:column;flex:1;gap:12px;min-height:220px;max-height:min(500px,55vh);padding:2px;display:flex;overflow-y:auto}.subrail-tt-wrapper::-webkit-scrollbar{width:0;height:0;display:none}.subrail-tt-wrapper.is-dragging,.subrail-tt-wrapper:active{cursor:grabbing}.subrail-tt-dir-group{background:var(--bg-card,#fff);border:1px solid var(--divider,#e5e7eb);border-radius:8px;padding:10px}.subrail-tt-dir-title{border-bottom:1px dashed var(--divider,#eee);justify-content:space-between;align-items:center;margin-bottom:8px;padding-bottom:6px;display:flex}.subrail-tt-dir-badge{color:var(--text-main,#333);font-size:12px;font-weight:700}.subrail-tt-dir-count{color:var(--text-light,#888);font-size:11px}.subrail-tt-cards-grid{grid-template-columns:repeat(auto-fill,minmax(95px,1fr));gap:8px;display:grid}.subrail-tt-card{border:1px solid var(--divider,#e2e8f0);background:var(--bg-card,#fafafa);border-radius:8px;flex-direction:column;gap:2px;padding:8px 10px;transition:all .2s;display:flex;position:relative}.subrail-tt-card-top{justify-content:space-between;align-items:center;gap:4px;display:flex}.subrail-tt-code{color:var(--text-main,#1e293b);letter-spacing:.02em;font-size:12px;font-weight:700}.subrail-tt-card-time{font-size:16px;font-weight:800;font-family:var(--font-mono);color:var(--text-main,#0f172a);margin:2px 0 1px}.subrail-tt-card-term{color:var(--text-light,#64748b);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.subrail-tt-card.is-next-train{background:linear-gradient(135deg,#fff7ed,#ffedd5);border:1.5px solid #ea580c;box-shadow:0 2px 8px #ea580c2e}@media (prefers-color-scheme:dark){.subrail-tt-card.is-next-train{background:linear-gradient(135deg,#ea580c40,#c2410c26);border-color:#f97316}}.subrail-tt-next-tag{color:#fff;background:#ea580c;border-radius:4px;padding:1px 4px;font-size:10px;font-weight:700;line-height:1.2}.subrail-tt-card.is-next-train .subrail-tt-card-time{color:#c2410c}.timetable-scroll-area{-webkit-overflow-scrolling:touch;border:1px solid var(--divider);background:var(--bg-card);-webkit-user-select:none;user-select:none;scrollbar-width:none;-ms-overflow-style:none;cursor:grab;border-radius:6px;flex:1;width:100%;min-height:120px;overflow:auto}.timetable-scroll-area::-webkit-scrollbar{width:0;height:0;display:none}.timetable-scroll-area.is-dragging,.timetable-scroll-area:active{cursor:grabbing}.tt-grid{background:var(--bg-card);min-width:100%;display:table}.tt-row{display:table-row}.tt-row-down,.tt-row-up{color:var(--text-main)}.tt-dir-header{background:var(--bg-color);border-right:1px solid var(--divider);z-index:15;box-sizing:border-box;text-align:center;width:32px;min-width:32px;max-width:32px;padding:0;display:table-cell;position:sticky;left:0;overflow:clip}.tt-dir-header:after{content:"";background:var(--bg-color);z-index:0;position:absolute;inset:0}.tt-hour-row .tt-dir-header:after{background:var(--primary-color)}.tt-dir-inner{box-sizing:border-box;z-index:1;will-change:transform;backface-visibility:hidden;flex-direction:column;align-items:center;gap:6px;width:100%;display:flex;position:absolute;top:0;left:0;right:0;transform:translate(0)}.tt-dir-inner span{writing-mode:vertical-lr;text-orientation:upright;letter-spacing:1px;margin:0 auto;font-size:11px;font-weight:700;display:inline-block}html[data-language=en] .tt-dir-inner span{writing-mode:horizontal-tb;text-orientation:mixed;transform-origin:50%;white-space:nowrap;letter-spacing:0;transform:rotate(90deg)}html[data-language=en] .tt-dir-inner{width:32px;overflow:visible}html[data-language=en] .tt-dir-inner .tt-dir-next-sta{transform:rotate(90deg)}html[data-language=en] .station-layout-canvas,html[data-language=en] .station-layout-wrapper{letter-spacing:-.01em}html[data-language=en] .next-train-indicator button,html[data-language=en] .route-planner button,html[data-language=en] .unified-panel-tab{letter-spacing:-.015em;padding-inline:.72em}.fit-text-label{min-width:0;max-width:100%;display:block}.panel-tabs-nav .fit-text-label{width:100%}.tt-dir-inner .tt-dir-next-sta{color:var(--text-light);letter-spacing:.5px;opacity:.85;margin-top:4px;font-size:9.5px;font-weight:500}.tt-hour-row{background:var(--primary-color);color:#fff;z-index:25;font-weight:700;position:relative}.tt-cell{text-align:center;border-right:1px dashed var(--divider);min-width:24px;padding:3px 2px;font-size:11.5px;display:table-cell}.tt-row-up .tt-cell,.tt-row-up .tt-dir-header{vertical-align:bottom}.tt-row-down .tt-cell,.tt-row-down .tt-dir-header{vertical-align:top}.tt-hour-row .tt-cell{vertical-align:middle;color:#fff;background:var(--primary-color);z-index:25;box-sizing:border-box;height:24px;padding:0 1px;font-size:11.5px;font-weight:700;line-height:24px;position:sticky;top:0;bottom:0}.tt-hour-row .tt-dir-header,.tt-hour-row .tt-dir-placeholder{z-index:30;box-sizing:border-box;height:24px;line-height:24px;position:sticky;top:0;bottom:0;left:0;background:var(--primary-color)!important;border-top:none!important;border-bottom:none!important;border-right:none!important}.tt-cell.tt-col-even{background:#00000005}[data-theme=dark] .tt-cell.tt-col-even{background:#ffffff0d}.tt-hour-row .tt-cell.tt-col-now{outline-offset:-3px;outline:2px solid #ffffff8c}.tt-dir-placeholder{background:var(--bg-color);border-right:1px solid var(--divider)}.tt-min.tt-min-now{outline:2px solid var(--text-main,#222);outline-offset:-1px;border-radius:2px;font-weight:700!important}.tt-min{text-align:center;border-radius:50%;width:17px;height:17px;margin:0 auto 1px;font-size:10px;font-weight:600;line-height:17px;display:block}.tt-min.tt-special{color:#fff;cursor:pointer;outline:none;transition:background-color .2s,transform .15s;position:relative}.tt-min.tt-special,.tt-min.tt-special-1,.tt-min.tt-special-blue,.tt-min.tt-special-status-1{background-color:#60a5fa}.tt-min.tt-special-1:focus,.tt-min.tt-special-1:hover,.tt-min.tt-special-blue:focus,.tt-min.tt-special-blue:hover,.tt-min.tt-special-status-1:focus,.tt-min.tt-special-status-1:hover,.tt-min.tt-special:focus,.tt-min.tt-special:hover{background-color:#2563eb}.tt-min.tt-special-2,.tt-min.tt-special-green,.tt-min.tt-special-status-2{background-color:#34d399}.tt-min.tt-special-2:focus,.tt-min.tt-special-2:hover,.tt-min.tt-special-green:focus,.tt-min.tt-special-green:hover,.tt-min.tt-special-status-2:focus,.tt-min.tt-special-status-2:hover{background-color:#059669}.tt-min.tt-special-3,.tt-min.tt-special-orange,.tt-min.tt-special-red,.tt-min.tt-special-status-3{background-color:#fb923c}.tt-min.tt-special-3:focus,.tt-min.tt-special-3:hover,.tt-min.tt-special-orange:focus,.tt-min.tt-special-orange:hover,.tt-min.tt-special-red:focus,.tt-min.tt-special-red:hover,.tt-min.tt-special-status-3:focus,.tt-min.tt-special-status-3:hover{background-color:#ea580c}.tt-min.tt-special-4,.tt-min.tt-special-gray,.tt-min.tt-special-grey,.tt-min.tt-special-status-4{background-color:#9ca3af}.tt-min.tt-special-4:focus,.tt-min.tt-special-4:hover,.tt-min.tt-special-gray:focus,.tt-min.tt-special-gray:hover,.tt-min.tt-special-grey:focus,.tt-min.tt-special-grey:hover,.tt-min.tt-special-status-4:focus,.tt-min.tt-special-status-4:hover{background-color:#4b5563}@media (prefers-color-scheme:dark){.tt-min.tt-special,.tt-min.tt-special-1,.tt-min.tt-special-blue,.tt-min.tt-special-status-1{background-color:#3b82f6}.tt-min.tt-special-2,.tt-min.tt-special-green,.tt-min.tt-special-status-2{background-color:#10b981}.tt-min.tt-special-3,.tt-min.tt-special-orange,.tt-min.tt-special-red,.tt-min.tt-special-status-3{background-color:#f97316}.tt-min.tt-special-4,.tt-min.tt-special-gray,.tt-min.tt-special-grey,.tt-min.tt-special-status-4{background-color:#6b7280}}.dark .tt-min.tt-special,.dark .tt-min.tt-special-1,.dark .tt-min.tt-special-blue,.dark .tt-min.tt-special-status-1,.dark-mode .tt-min.tt-special,.dark-mode .tt-min.tt-special-1,.dark-mode .tt-min.tt-special-blue,.dark-mode .tt-min.tt-special-status-1,[data-theme=dark] .tt-min.tt-special,[data-theme=dark] .tt-min.tt-special-1,[data-theme=dark] .tt-min.tt-special-blue,[data-theme=dark] .tt-min.tt-special-status-1{background-color:#3b82f6}.dark .tt-min.tt-special-2,.dark .tt-min.tt-special-green,.dark .tt-min.tt-special-status-2,.dark-mode .tt-min.tt-special-2,.dark-mode .tt-min.tt-special-green,.dark-mode .tt-min.tt-special-status-2,[data-theme=dark] .tt-min.tt-special-2,[data-theme=dark] .tt-min.tt-special-green,[data-theme=dark] .tt-min.tt-special-status-2{background-color:#10b981}.dark .tt-min.tt-special-3,.dark .tt-min.tt-special-orange,.dark .tt-min.tt-special-red,.dark-mode .tt-min.tt-special-3,.dark-mode .tt-min.tt-special-orange,.dark-mode .tt-min.tt-special-red,[data-theme=dark] .tt-min.tt-special-3,[data-theme=dark] .tt-min.tt-special-orange,[data-theme=dark] .tt-min.tt-special-red,[data-theme=dark] .tt-min.tt-special-status-3{background-color:#f97316}.dark .tt-min.tt-special-4,.dark .tt-min.tt-special-gray,.dark .tt-min.tt-special-grey,.dark .tt-min.tt-special-status-4,.dark-mode .tt-min.tt-special-4,.dark-mode .tt-min.tt-special-gray,.dark-mode .tt-min.tt-special-grey,.dark-mode .tt-min.tt-special-status-4,[data-theme=dark] .tt-min.tt-special-4,[data-theme=dark] .tt-min.tt-special-gray,[data-theme=dark] .tt-min.tt-special-grey,[data-theme=dark] .tt-min.tt-special-status-4{background-color:#6b7280}#tt-special-tooltip{z-index:1000000;color:#fff;white-space:pre;text-align:center;pointer-events:none;opacity:0;background:#000000e6;border-radius:6px;padding:8px 12px;font-size:13px;line-height:1.4;transition:opacity .15s;display:none;position:fixed;transform:translate(-50%,-50%);box-shadow:0 4px 12px #0000004d}#tt-special-tooltip.show{opacity:1;display:block}@keyframes simpleFadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}@media (max-width:640px){.timetable-scroll-area{max-height:min(300px,32vh)}.tt-header-row{padding:0 4px}.tt-current-date{font-size:11px}.tt-day-type-select{padding:4px 8px}}.station-detail-content.is-pinned .timetable-scroll-area{max-height:280px}.station-detail-content.is-pinned .tt-header-row-split{flex-shrink:0;height:28.5px}body.mobile-panel-expanded .subrail-tt-wrapper,body.mobile-panel-expanded .timetable-scroll-area,body.mobile-split-active .subrail-tt-wrapper,body.mobile-split-active .timetable-scroll-area{min-height:180px;max-height:min(400px,46vh);flex:0 auto!important}body.mobile-panel-expanded .line-timetable-module,body.mobile-split-active .line-timetable-module{margin-bottom:16px!important}body.mobile-panel-expanded .tt-header-row,body.mobile-split-active .tt-header-row{margin-bottom:10px}body.mobile-panel-expanded .tt-current-date,body.mobile-split-active .tt-current-date{font-size:12px}body.mobile-panel-expanded .tt-day-type-select,body.mobile-split-active .tt-day-type-select{padding:2px 6px;font-size:11px}body.mobile-panel-expanded .tt-cell,body.mobile-split-active .tt-cell{min-width:22px;padding:2px 1px;font-size:11px}body.mobile-panel-expanded .tt-hour-row .tt-cell,body.mobile-panel-expanded .tt-hour-row .tt-dir-header,body.mobile-panel-expanded .tt-hour-row .tt-dir-placeholder,body.mobile-split-active .tt-hour-row .tt-cell,body.mobile-split-active .tt-hour-row .tt-dir-header,body.mobile-split-active .tt-hour-row .tt-dir-placeholder{height:22px!important;padding:0 1px!important;line-height:22px!important}body.mobile-panel-expanded .tt-dir-header,body.mobile-split-active .tt-dir-header{width:30px;min-width:30px;max-width:30px}body.mobile-panel-expanded .tt-min,body.mobile-split-active .tt-min{width:16px;height:16px;font-size:9.5px;line-height:16px}.dropdown{vertical-align:middle;display:inline-block;position:relative}.dropdown-content{background-color:var(--card-bg);z-index:10001;border:1px solid var(--border-color);border-radius:8px;width:max-content;min-width:170px;max-width:280px;margin-top:8px;display:none;position:absolute;top:100%;right:0;overflow:hidden;box-shadow:0 8px 16px #00000026}.dropdown-divider{background-color:var(--border-color);opacity:.8;height:1px;margin:4px 0}.dropdown-content a{color:var(--text-main);text-align:left;align-items:center;gap:10px;padding:12px 16px;font-size:14px;text-decoration:none;transition:background .2s;display:flex}.dropdown-content a.active{background-color:var(--list-hover);color:var(--primary-color);font-weight:600}[data-theme=dark] .dropdown-content a.active{color:#0084d1}.dropdown-content a .btn-icon{flex-shrink:0;width:18px;height:18px;margin-right:0!important}.dropdown-content a:hover{background-color:var(--btn-info-hover,var(--list-hover))}.dropdown-content.show{display:block}@media (max-width:640px){.dropdown-content{width:max-content;min-width:200px;max-width:calc(100vw - 20px);position:absolute;top:100%;bottom:auto;right:0}}.tool-header .btn{font-family:var(--font-ui)!important;padding:6px 12px!important;font-size:.9rem!important;font-weight:500!important}.tool-header .header-left,.tool-header .header-right{gap:8px!important}#options-btn .btn-icon{margin-right:0!important}[data-theme=dark] .btn-info{color:#e5e8ea;background-color:#373838;border-color:#333}[data-theme=dark] .btn-info:hover{color:#fff;background-color:#4a4b4c;border-color:#333}@media (max-width:640px){.left-pinned-sidebar,.right-pinned-sidebar{display:none!important}.app,.content{gap:0!important}.content{margin:0!important;padding:0!important}.footer{display:none!important}.map{margin:0!important;padding:0!important}.map-container{border:none!important;height:100%!important;min-height:0!important;margin:0!important}.header-island{display:contents!important}.header-island-divider{display:none!important}.tool-header{top:calc(env(safe-area-inset-top,0px) + 16px)!important;left:calc(10px + env(safe-area-inset-left,0px))!important;right:calc(10px + env(safe-area-inset-right,0px))!important;background-color:var(--header-bg)!important;border:1px solid var(--border-color)!important;box-sizing:border-box!important;z-index:50000!important;pointer-events:auto!important;border-radius:12px!important;justify-content:space-between!important;width:auto!important;min-height:48px!important;padding:0 10px!important;position:fixed!important;transform:none!important;box-shadow:0 4px 20px #0000002e!important}.header-left,.header-right,.tool-header{align-items:center!important;height:48px!important;display:flex!important}.header-left,.header-right{gap:8px!important;min-width:auto!important}.btn span{display:none!important}.btn{box-sizing:border-box!important;justify-content:center!important;align-items:center!important;width:auto!important;min-width:34px!important;height:34px!important;padding:6px!important;display:inline-flex!important}.btn .btn-icon,.btn svg{flex-shrink:0!important;width:16px!important;min-width:16px!important;height:16px!important;min-height:16px!important;margin:0!important;display:block!important}.btn-dark,.btn-primary{background-color:var(--primary-color)!important;color:#fff!important;border-color:var(--primary-color)!important}.edit-toggle.is-active{background-color:var(--edit-muted)!important;color:var(--edit-accent)!important;border-color:var(--edit-accent)!important}.header-center{z-index:10!important;pointer-events:auto!important;gap:8px!important;max-width:calc(100% - 170px)!important;height:48px!important;margin:0!important;display:flex!important;position:absolute!important;top:50%!important;bottom:auto!important;left:50%!important;overflow:visible!important;transform:translate(-50%,-50%)!important}.header-logo{flex-shrink:0!important;width:auto!important;height:28px!important;display:block!important}.app-title{letter-spacing:0!important;text-overflow:clip!important;color:var(--text-main)!important;white-space:nowrap!important;font-size:.95rem!important;font-weight:600!important;line-height:1!important;display:inline-block!important;overflow:visible!important}html.pwa-standalone .tool-header .header-left{display:none!important}html.pwa-standalone .tool-header .header-center{flex:0 auto!important;justify-content:flex-start!important;gap:8px!important;min-width:0!important;max-width:calc(100% - 130px)!important;margin:0!important;position:relative!important;top:auto!important;bottom:auto!important;left:auto!important;overflow:hidden!important;transform:none!important}html.pwa-standalone .tool-header .header-center .app-title{text-overflow:ellipsis!important;white-space:nowrap!important;overflow:hidden!important}html.pwa-standalone .tool-header .header-right{flex-shrink:0!important;margin-left:auto!important}@media (display-mode:fullscreen),(display-mode:minimal-ui),(display-mode:standalone),(display-mode:window-controls-overlay){.tool-header .header-left{display:none!important}.tool-header .header-center{flex:0 auto!important;justify-content:flex-start!important;gap:8px!important;min-width:0!important;max-width:calc(100% - 130px)!important;margin:0!important;position:relative!important;top:auto!important;bottom:auto!important;left:auto!important;overflow:hidden!important;transform:none!important}.tool-header .header-center .app-title{text-overflow:ellipsis!important;white-space:nowrap!important;overflow:hidden!important}.tool-header .header-right{flex-shrink:0!important;margin-left:auto!important}}html.pwa-standalone #modern-zoom-control #mz-menu,html.pwa-standalone #modern-zoom-control #mz-ride,html.pwa-standalone #modern-zoom-control #mz-route,html.pwa-standalone #modern-zoom-control #mz-route+.mz-divider,html.pwa-standalone #modern-zoom-control .mz-divider-first,html.pwa-standalone #modern-zoom-control .mz-divider-ride{display:none!important}@media (display-mode:fullscreen),(display-mode:minimal-ui),(display-mode:standalone),(display-mode:window-controls-overlay){#modern-zoom-control #mz-menu,#modern-zoom-control #mz-ride,#modern-zoom-control #mz-route,#modern-zoom-control #mz-route+.mz-divider,#modern-zoom-control .mz-divider-first,#modern-zoom-control .mz-divider-ride{display:none!important}}html.pwa-standalone #mobile-pwa-dock{display:flex!important}@media (display-mode:fullscreen),(display-mode:minimal-ui),(display-mode:standalone),(display-mode:window-controls-overlay){#mobile-pwa-dock{display:flex!important}}#theme-btn,body.mobile-panel-expanded #mobile-pwa-dock,body:has(#info-panel.mobile-expanded) #mobile-pwa-dock,body:has(.unified-panel[data-sheet-stage=full]) #mobile-pwa-dock{display:none!important}.header-left .dashboard-link,.header-left .mobile-mode-switch{margin-left:0!important}.header-right .mobile-fun-link{margin-right:0!important}.header-right #settings-btn{margin-left:0!important}.header-right .btn{gap:0!important;width:auto!important;min-width:34px!important;padding:6px!important}.header-right .btn .btn-icon,.header-right .btn svg{margin-right:0!important}.dashboard-link .btn-icon,.header-right .btn .btn-icon,.header-right .btn svg,.mobile-mode-switch .btn-icon{flex-shrink:0!important;width:16px!important;min-width:16px!important;height:16px!important;min-height:16px!important;display:block!important}.dashboard-link .btn-icon,.mobile-mode-switch .btn-icon{margin:0!important}.header-center .header-logo+.app-title{margin-left:-2px!important}.mobile-mode-switch span,.zoom-controls{display:none!important}.zoom-value{display:none}#info-panel.mobile-expanded,body.mobile-panel-expanded #info-panel{top:calc(env(safe-area-inset-top,0px) + 64px)!important;border-radius:0!important;height:auto!important;min-height:0!important;max-height:none!important;bottom:0!important}body.mobile-panel-expanded #modern-zoom-control,body.mobile-panel-expanded .zoom-controls,body.mobile-split-active .legend-popover.pinned-mode{display:none!important}#modern-zoom-control{left:calc(10px + env(safe-area-inset-left,0px))!important}#modern-zoom-control,#route-capsule{top:calc(env(safe-area-inset-top,0px) + 76px)!important}#route-capsule{justify-content:space-between;left:calc(66px + env(safe-area-inset-left,0px))!important;right:calc(10px + env(safe-area-inset-right,0px))!important;width:auto!important}.route-planner-header{min-height:52px;padding:12px 40px 12px 16px}.route-planner-heading strong{font-size:16px}.route-planner-heading small{font-size:12px}.route-planner-fields{padding:14px 16px 12px}.route-endpoints{--route-field-h:36px;gap:10px 8px}.route-station-field{grid-template-columns:20px minmax(0,1fr);column-gap:8px}.route-endpoints-rail{left:9.5px}.route-station-dot{width:10px;height:10px}.route-station-input-row{border-radius:8px;gap:8px;padding:0 10px}.route-station-input-row input{font-size:16px}.route-station-input-row input::placeholder{font-size:13px}.route-station-clear{width:24px;height:24px}.route-swap-button{width:34px;height:34px}.route-planner-chips{gap:8px;margin-top:10px;padding-left:28px}.route-chip{height:32px;padding:0 12px;font-size:13px}.route-quick-action{height:34px;font-size:13px}.route-station-results{z-index:99999;max-height:min(240px,calc(var(--visual-vh,100dvh)*.34));margin-top:0;position:absolute;top:calc(100% + 6px);left:28px;right:0;box-shadow:0 8px 24px #00000047}.unified-panel.mobile-expanded .route-station-results,.unified-panel[data-sheet-stage=full] .route-station-results{max-height:min(340px,calc(var(--visual-vh,100dvh)*.48))}.route-station-field:focus-within{z-index:1000}.route-planner-footer{padding:10px 16px calc(12px + env(safe-area-inset-bottom,0px))}.route-planner-footer>span{max-width:58%;font-size:13px}.route-planner-footer>button{border-radius:11px;min-width:112px;height:42px;font-size:14.5px;font-weight:600}.search-results-list{max-height:240px!important}.mobile-hidden{display:none!important}}#station-selector{z-index:5000;background-color:var(--card-bg);border:1px solid var(--divider);touch-action:none;border-radius:8px;flex-wrap:nowrap;gap:6px;padding:4px;animation:popIn .15s cubic-bezier(.175,.885,.32,1.275);display:flex;position:absolute;transform:translate(-50%);box-shadow:0 4px 15px #00000040;pointer-events:auto!important}@keyframes popIn{0%{opacity:0;transform:translate(-50%)scale(.8)}to{opacity:1;transform:translate(-50%,10px)scale(1)}}.selector-item{cursor:pointer;background-color:var(--bg-color);border-radius:6px;justify-content:center;align-items:center;gap:3px;min-width:34px;height:34px;padding:0 7px;transition:transform .1s,background-color .1s;display:flex}.selector-item:active,.selector-item:hover{background-color:var(--list-hover);transform:scale(1.08)}.selector-item .inline-line-icon,.selector-item .svg-icon-inlined,.selector-item img,.selector-item svg,.svg-icon-placeholder{--data1:transparent;--data2:var(--text-main);flex-shrink:0;width:auto;height:24px;display:block}.selector-text-badge{white-space:nowrap;height:24px;color:var(--text-main);background:#80808033;border-radius:4px;padding:0 6px;font-size:11px;line-height:24px}#selector-layer{z-index:6000;pointer-events:none;width:100%;height:100%;position:absolute;top:0;left:0}.panel-header.is-light-bg{--panel-header-text:#00263b;--close-btn-color:#001d31a6;--data2:#00263b;color:#00263b!important}.panel-header.is-light-bg .panel-en-name{color:#001d31b3!important}.force-white-text .panel-header.is-light-bg .panel-close-btn,.panel-header.is-light-bg .panel-close-btn{color:#001d31a6!important}.panel-header.is-light-bg .panel-close-btn:hover{background-color:#001d3114;color:#00263b!important}.permission-disabled{opacity:.45!important}.permission-disabled,.permission-disabled *{cursor:not-allowed!important}html .auth-dialog,html .auth-overlay{--panel-bg:#fff;--border-color:#dee2e6;--tab-bg:#f3f4f6;--primary-color:#00263b;--primary-hover:#004060;--btn-text:#fff;--text-main:#333;--text-light:#666;--btn-info-bg:#0000000f}html .auth-dialog{color:#333!important;background:#fff!important}html .auth-dialog .auth-input-group{background:var(--tab-bg,#f3f4f6)!important;border:1px solid var(--border-color,#dee2e6)!important}html .auth-dialog .auth-input-label{border-right:1px solid var(--border-color,#dee2e6)!important;color:var(--text-light,#666)!important}html .auth-dialog .auth-input-group input{color:#333!important}html .auth-dialog .auth-submit-arrow-btn{background:var(--primary-color,#00263b)!important;border:1px solid var(--primary-color,#00263b)!important;color:#fff!important;border-radius:6px!important;box-shadow:0 1px 3px #00000026!important}html .auth-dialog .auth-submit-arrow-btn:hover{background:var(--primary-hover,#004060)!important;border-color:var(--primary-hover,#004060)!important}html[data-theme=dark] .auth-dialog,html[data-theme=dark] .auth-overlay{--panel-bg:#1a202c;--border-color:#ffffff26;--tab-bg:#ffffff0d;--primary-color:#1282b8;--primary-hover:#0e6b98;--btn-text:#fff;--text-main:#fff;--text-light:#a0aec0;--btn-info-bg:#ffffff0f}html[data-theme=dark] .auth-dialog{color:#fff!important;background:#1a202c!important}html[data-theme=dark] .auth-dialog .auth-input-group{background:var(--tab-bg,#ffffff0d)!important;border:1px solid var(--border-color,#ffffff26)!important}html[data-theme=dark] .auth-dialog .auth-input-label{border-right:1px solid var(--border-color,#ffffff26)!important;color:var(--text-light,#a0aec0)!important}html[data-theme=dark] .auth-dialog .auth-input-group input{color:#fff!important}.notopen-overlay{background-color:var(--bg-color,#0b0f19);background-image:radial-gradient(circle at 20% 30%,var(--primary-color,#3b82f6)0,transparent 40%),radial-gradient(circle at 80% 70%,var(--primary-color,#3b82f6)0,transparent 40%);width:100%;height:100dvh;position:fixed;inset:0}@supports (color:color-mix(in lab,red,red)){.notopen-overlay{background-image:radial-gradient(circle at 20% 30%,color-mix(in srgb,var(--primary-color,#3b82f6)5%,transparent)0,transparent 40%),radial-gradient(circle at 80% 70%,color-mix(in srgb,var(--primary-color,#3b82f6)5%,transparent)0,transparent 40%)}}.notopen-overlay{box-sizing:border-box;z-index:15000;opacity:1;justify-content:center;align-items:center;padding:20px;transition:opacity .5s ease-out;display:flex}.notopen-overlay.swipe-success-anim{opacity:0;pointer-events:none}.station-grid{background-image:linear-gradient(var(--border-color,#ffffff12)1px,transparent 1px),linear-gradient(90deg,var(--border-color,#ffffff12)1px,transparent 1px);opacity:.3;pointer-events:none;z-index:0;background-size:40px 40px;position:absolute;inset:0}.notopen-container{z-index:1;background:var(--card-bg,#111827b3);border:1px solid var(--border-color,#ffffff14);text-align:center;-webkit-backdrop-filter:blur(16px);border-radius:20px;width:100%;max-width:480px;padding:40px 32px;animation:notopen-card-appear .6s cubic-bezier(.34,1.56,.64,1) forwards;position:relative;box-shadow:0 20px 50px -15px #0006}@media (max-width:640px){.notopen-overlay{padding:20px}.notopen-container{border-radius:18px;padding:32px 20px}}.notopen-icon-row{gap:20px;margin-bottom:32px}.notopen-icon-row,.notopen-icon-wrapper{justify-content:center;align-items:center;display:flex}.notopen-icon-wrapper{opacity:.4;cursor:default;background:0 0;border:none;width:48px;height:48px;transition:transform .3s cubic-bezier(.34,1.56,.64,1),opacity .3s;position:relative}.notopen-icon-wrapper.active{opacity:1;transform:scale(1.15)}.notopen-icon-wrapper img{object-fit:contain;width:100%;height:100%;transition:transform .3s}.notopen-status-badge{color:#ef4444;letter-spacing:.05em;background:#ef44441a;border:1px solid #ef444433;border-radius:99px;align-items:center;gap:6px;margin-bottom:20px;padding:6px 12px;font-size:12px;font-weight:700;animation:notopen-pulse-red 2s infinite;display:inline-flex}.notopen-status-badge:before{content:"";background:#ef4444;border-radius:50%;width:6px;height:6px;display:inline-block}.notopen-title{color:var(--text-main);letter-spacing:-.02em;margin-bottom:12px;font-size:22px;font-weight:750;line-height:1.4}.notopen-description{color:var(--text-light);margin-bottom:36px;padding:0 10px;font-size:14px;line-height:1.6}.notopen-description strong{color:var(--primary-color);font-weight:600}.nfc-tap-area{border:2px dashed var(--primary-color,#3b82f6);background:0 0;position:relative}@supports (color:color-mix(in lab,red,red)){.nfc-tap-area{border:2px dashed color-mix(in srgb,var(--primary-color,#3b82f6)30%,transparent)}}.nfc-tap-area{cursor:pointer;border-radius:16px;flex-direction:column;align-items:center;gap:12px;padding:24px;transition:all .3s;display:flex;overflow:hidden}.nfc-tap-area:hover{border-color:var(--primary-color);background:var(--primary-color,#3b82f6)}@supports (color:color-mix(in lab,red,red)){.nfc-tap-area:hover{background:color-mix(in srgb,var(--primary-color,#3b82f6)8%,transparent)}}.nfc-tap-area:hover{transform:scale(1.02)}.nfc-ripple-ring{border:2px solid var(--primary-color);opacity:0;pointer-events:none;border-radius:14px;position:absolute;inset:0}.nfc-tap-area:active .nfc-ripple-ring{animation:notopen-ripple-out .4s ease-out}.nfc-sensor-icon{width:48px;height:48px;color:var(--primary-color);opacity:.85;z-index:1;transition:transform .3s;position:relative}.nfc-tap-area:hover .nfc-sensor-icon{opacity:1;transform:translateY(-2px)scale(1.05)}.nfc-text{z-index:1;flex-direction:column;gap:4px;display:flex}.nfc-title{color:var(--text-main);font-size:15px;font-weight:700}.nfc-subtitle{color:var(--text-light);letter-spacing:.05em;text-transform:uppercase;font-size:11px}.redirecting-notice{color:var(--primary-color);opacity:0;justify-content:center;align-items:center;gap:6px;margin-top:24px;font-size:12px;font-weight:600;transition:opacity .3s;display:flex}.redirecting-notice.is-visible{opacity:1}.notopen-spinner{border:2px solid #0000;border-top-color:currentcolor;border-radius:50%;width:14px;height:14px;animation:spin .8s linear infinite}.cgoauth-manage-link{margin-top:24px}.cgoauth-manage-link a{color:var(--primary-color);font-size:13px;font-weight:600;text-decoration:none;transition:opacity .15s}.cgoauth-manage-link a:hover{opacity:.8}@keyframes notopen-card-appear{0%{opacity:0;transform:translateY(30px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes notopen-pulse-red{0%,to{box-shadow:0 0 #ef444466}50%{box-shadow:0 0 0 8px #0000}}@keyframes notopen-ripple-out{0%{opacity:.8;transform:scale(.9)}to{opacity:0;transform:scale(1.15)}}.panel-edit-target{outline-offset:2px;cursor:pointer;outline:2px solid #0000;position:relative}.panel-edit-target:hover{outline-color:#3b82f694}.panel-edit-target.is-panel-edit-selected{outline-color:#3b82f6;box-shadow:0 0 0 4px #3b82f629}.panel-edit-target.is-panel-edit-selected:after{content:attr(data-panel-component);z-index:5;color:#fff;pointer-events:none;background:#3b82f6;border-radius:999px;padding:2px 6px;font-size:10px;font-weight:800;line-height:1.2;position:absolute;top:-10px;left:8px}.panel-header.panel-edit-target.is-panel-edit-selected:after{top:8px!important}.dropdown-content.has-auth-user{min-width:260px!important}.auth-user-card{box-sizing:border-box;flex-direction:column;margin:0;padding:24px 14px 16px;position:relative;overflow:visible!important}.auth-logout-btn-top,.auth-user-card{background:0 0;border:none;align-items:center;display:flex}.auth-logout-btn-top{width:24px;height:24px;color:var(--text-light,#888);cursor:pointer;border-radius:4px;justify-content:center;padding:0;transition:all .2s;position:absolute;top:12px;right:12px}.auth-logout-btn-top:hover{color:var(--danger-color,#ff4d4f);background:#ff4d4f14}.auth-logout-btn-top svg.btn-icon{width:14px;height:14px;display:block;margin-right:0!important}.auth-avatar-large{cursor:pointer;box-sizing:border-box;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:60px;height:60px;margin-bottom:12px;margin-right:0;padding:6px;transition:transform .2s,box-shadow .2s;display:flex;position:relative;overflow:hidden;box-shadow:none!important;border:none!important}.auth-avatar-large .auth-btn-avatar-svg,.auth-avatar-large svg{width:100%!important;height:100%!important}.auth-avatar-large svg{display:block}.auth-info-detail{text-align:center;box-sizing:border-box;flex-direction:column;align-items:center;gap:2px;display:flex;width:100%!important;overflow:visible!important}.auth-info-username{color:var(--text-main,#333);margin-bottom:2px;font-size:18px;font-weight:700;line-height:1.3}.auth-info-email,.auth-info-username{-webkit-user-select:none;user-select:none;word-break:break-all}.auth-info-email{color:var(--text-light,#888);margin-bottom:4px;font-size:13px;line-height:1.2}.auth-info-group{-webkit-user-select:none;user-select:none;box-sizing:border-box;color:var(--text-light,#888);border:1px solid #0000;border-radius:4px;align-self:center;margin-top:2px;padding:2px 8px;font-size:11px;font-weight:600;position:relative;background:0 0!important;display:inline-flex!important}.auth-info-group:before{content:"";pointer-events:none;border-radius:4px;padding:1px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.auth-info-group.card-guest:before{background:linear-gradient(135deg,#78848b,#a3b0b8)}.auth-info-group.card-regular:before{background:var(--level-default-gradient,linear-gradient(135deg,#1282b8,#009655))}.auth-info-group.card-test:before{background:var(--level-test-gradient,linear-gradient(135deg,#e98913,#f7b52c))}.auth-info-group.card-prime:before{background:var(--level-prime-gradient,linear-gradient(135deg,#1c1887,#5f1985))}.auth-info-group.card-admin:before{background:var(--level-admin-gradient,linear-gradient(135deg,#5c1c24,#e5757e))}.auth-menu-item-iconic,.dropdown-content a.auth-menu-item-iconic,.dropdown-main-panel>a{color:var(--text-main,#00263b)!important;box-sizing:border-box!important;text-align:left!important;white-space:nowrap!important;cursor:pointer!important;background:0 0!important;border-radius:4px!important;flex-direction:row!important;align-items:center!important;gap:8px!important;width:100%!important;padding:9px 12px!important;font-size:14px!important;line-height:1.6!important;text-decoration:none!important;transition:background .15s!important;display:flex!important}.auth-menu-item-iconic:hover,.dropdown-content a.auth-menu-item-iconic:hover,.dropdown-main-panel>a:hover{background-color:var(--btn-info-hover,#0000000a)!important;color:var(--text-main,#00263b)!important}.auth-menu-item-iconic cgo-icon,.auth-menu-item-iconic svg.btn-icon,.auth-menu-item-iconic svg.cgo-svg-icon,.dropdown-main-panel>a svg,.dropdown-main-panel>a svg.btn-icon{flex-shrink:0!important;width:20px!important;height:20px!important;margin-bottom:0!important;margin-right:0!important;display:block!important}.auth-menu-item-iconic svg.btn-icon:not([fill=none]),.dropdown-main-panel>a svg.btn-icon:not([fill=none]){fill:currentColor!important}.auth-menu-item-iconic span,.dropdown-main-panel>a span{white-space:nowrap!important;display:inline-block!important}.auth-menu-item-iconic.permission-disabled,.dropdown-main-panel>a.permission-disabled{opacity:.45;cursor:not-allowed!important}.dropdown-main-panel .dropdown-divider{background:var(--border-color,#dee2e6)!important;opacity:1!important;border:none!important;height:1px!important;margin:5px 0!important}.dropdown-divider+.dropdown-divider{display:none!important}.auth-color-picker-panel{opacity:0;box-sizing:border-box;border-radius:8px;max-height:0;margin:0 8px;padding:0 8px;transition:max-height .3s cubic-bezier(.4,0,.2,1),opacity .2s,padding .3s;overflow:hidden}.auth-color-picker-panel.is-open{opacity:1;border:1px solid var(--border-color,#00000014);background:var(--panel,var(--card-bg,#fff));max-height:160px;margin-bottom:6px;padding:8px}.auth-color-picker-title{color:var(--text-light,#888);-webkit-user-select:none;user-select:none;text-align:left;margin-bottom:6px;font-size:10px;font-weight:600}.auth-color-grid{grid-template-columns:repeat(10,1fr);gap:4px;display:grid}.auth-color-opt{aspect-ratio:1;cursor:pointer;border:1px solid #0000001a;border-radius:4px;transition:transform .15s,box-shadow .15s}.auth-color-opt:hover{z-index:2;transform:scale(1.15);box-shadow:0 2px 6px #00000026}.auth-color-opt.active{box-shadow:0 0 0 2px var(--panel,var(--card-bg,#fff)),0 0 0 4px var(--primary-color,#006098);z-index:2}.auth-avatar-large:hover{transform:scale(1.04);box-shadow:0 0 0 3px #2196f333!important}.dropdown-content.has-notices-layout{width:552px!important;min-width:552px!important;margin-top:0!important;top:calc(100% + 6px)!important}.dropdown-content.has-notices-layout,.dropdown-content.has-notices-layout.show{box-shadow:none!important;-webkit-backdrop-filter:none!important;background:0 0!important;border:none!important}.dropdown-content.has-notices-layout.show{height:auto!important;max-height:none!important;flex-direction:row!important;align-items:flex-start!important;gap:12px!important;padding:0!important;animation:cgoMapDropdownIn .15s!important;display:flex!important;overflow:visible!important}@keyframes cgoMapDropdownIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.options-dropdown>.dropdown-content{border-radius:8px;min-width:180px;max-width:none;margin-top:0;padding:6px;animation:cgoMapDropdownIn .15s;top:calc(100% + 6px);box-shadow:0 18px 46px #00000029}.options-dropdown>.dropdown-content:before{content:"";background:0 0;width:100%;height:10px;position:absolute;top:-10px;left:0}.options-dropdown>.dropdown-content>a:not(.auth-menu-item-iconic){white-space:nowrap;border-radius:4px;align-items:center;gap:8px;min-width:170px;padding:9px 12px;font-size:14px;line-height:1.6;display:flex}.dropdown-main-panel,.dropdown-notice-center{box-sizing:border-box!important;border:1px solid #00000014!important;border-radius:10px!important;box-shadow:0 8px 24px #00000017!important}[data-theme=dark] .dropdown-main-panel,[data-theme=dark] .dropdown-notice-center{border-color:#ffffff14!important;box-shadow:0 10px 30px #00000059!important}.dropdown-notice-center{width:280px!important;height:auto!important;min-height:0!important;max-height:calc(85dvh - var(--header-height) - env(safe-area-inset-top,0px))!important;background-color:var(--card-bg,#fff)!important;color:var(--text-main,#1f2937)!important;flex-direction:column!important;flex:0 0 280px!important;padding:14px 12px 10px!important;display:flex!important;overflow:hidden!important}[data-theme=dark] .dropdown-notice-center{color:#e5e8ea!important;background-color:#1f2020!important}.dropdown-main-panel{width:260px!important;color:var(--text-main,#1f2937)!important;background-color:#fff!important;flex-direction:column!important;flex:0 0 260px!important;padding:12px 10px!important;display:flex!important}[data-theme=dark] .dropdown-main-panel{color:#fff!important;background-color:#1f2020!important}@media (max-width:840px){.dropdown-content.has-notices-layout{min-width:unset!important;width:280px!important;max-width:calc(100vw - 24px)!important;box-shadow:none!important;background-color:#0000!important;border:none!important}.dropdown-content.has-notices-layout.show{height:calc(90dvh - 48px - env(safe-area-inset-top,0px))!important;max-height:calc(90dvh - 48px - env(safe-area-inset-top,0px))!important;flex-direction:column!important;align-items:stretch!important;gap:12px!important;display:flex!important;overflow-y:visible!important}.dropdown-notice-center{flex:auto!important;width:100%!important;min-height:0!important;max-height:none!important}.dropdown-main-panel{width:100%!important;min-width:unset!important;flex-shrink:0!important}}.mode-dropdown>.dropdown-content{flex-direction:column;gap:4px;min-width:172px;padding:6px;display:none}.mode-dropdown>.dropdown-content.show{display:flex!important}.dropdown-map-modes{background-color:var(--btn-info-bg);border-radius:8px;flex-direction:column;gap:2px;min-width:160px;padding:4px!important}.dropdown-map-modes,.map-mode-option-btn{box-sizing:border-box;width:100%;display:flex}.map-mode-option-btn{color:var(--text-main);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:6px;align-items:center;gap:10px;padding:8px 12px;font-size:14px;transition:all .2s}.map-mode-option-btn:hover:not(.active):not(.permission-disabled){background-color:var(--btn-info-hover,var(--list-hover))}.map-mode-option-btn.active{background-color:var(--bg);color:var(--primary-color);font-weight:600;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f}[data-theme=dark] .map-mode-option-btn.active{color:#0084d1;box-shadow:0 1px 3px #0000004d}.map-mode-option-btn.permission-disabled{opacity:.5;cursor:not-allowed}.map-mode-option-btn .btn-icon{width:18px;height:18px;margin-right:0!important}.dropdown-lang-flags-row{background-color:var(--btn-info-bg);box-sizing:border-box;border-radius:6px;justify-content:space-between;align-items:center;gap:4px;width:100%;padding:5px 6px;display:flex}.dropdown-lang-flag-btn{cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;outline:none;flex:1;justify-content:center;align-items:center;padding:3px 4px;transition:all .18s cubic-bezier(.4,0,.2,1);display:inline-flex}.dropdown-lang-flag-btn:hover{background-color:var(--bg);transform:translateY(-1px)scale(1.12);box-shadow:0 2px 6px #0000001f}.dropdown-lang-flag-btn.active{background-color:var(--bg);border-color:var(--primary-color,#00263b);transform:scale(1.06);box-shadow:0 1px 4px #00263b2e}[data-theme=dark] .dropdown-lang-flag-btn.active{border-color:#0084d1;box-shadow:0 1px 4px #0084d159}.dropdown-lang-flag-btn .lang-flag-svg{pointer-events:none;width:21px;height:14px}.header-bar,.menu-bar,.navbar,.tool-header,.top-bar{z-index:1000!important}.mobile-edge-gradient,.mobile-status-bar-anchor,.mobile-system-edge-probe,.mobile-top-bar-backdrop{display:none!important}@media (max-width:640px){.mobile-top-bar-backdrop{will-change:transform,opacity;visibility:hidden!important;height:calc(env(safe-area-inset-top,0px) + 64px)!important;background-color:var(--mobile-panel-header-bg,var(--station-header-bg,var(--panel-header-bg,#00263b)))!important;pointer-events:none!important;z-index:11600!important;transform-origin:bottom!important;opacity:0!important;transition:transform .18s cubic-bezier(.4,0,1,1),opacity .14s ease-out,background-color .2s,visibility 0s linear .18s!important;display:block!important;position:fixed!important;top:0!important;left:0!important;right:0!important;transform:scaleY(0)!important}[data-theme=dark] .mobile-top-bar-backdrop,html[data-theme=dark] .mobile-top-bar-backdrop{background-color:var(--mobile-panel-header-bg,var(--station-header-bg,var(--panel-header-bg,#373838)))!important}body.mobile-panel-docked-full:not(.mobile-sheet-dragging):not(:has([data-sheet-dragging=true])) .mobile-top-bar-backdrop{visibility:visible!important;opacity:1!important;transition:transform .3s cubic-bezier(.22,1,.36,1),opacity .22s,background-color .2s,visibility!important;transform:scaleY(1)!important}@supports (-webkit-touch-callout:none){.mobile-system-edge-probe{display:none!important}}:root{--edge-gradient-bg:#fff;--edge-gradient-bg-transparent:#fff0}[data-theme=dark],html[data-theme=dark]{--edge-gradient-bg:#1a1a1a;--edge-gradient-bg-transparent:#1a1a1a00}@media (prefers-color-scheme:dark){:root:not([data-theme=light]),html:not([data-theme=light]){--edge-gradient-bg:#1a1a1a;--edge-gradient-bg-transparent:#1a1a1a00}}.mobile-status-bar-anchor{pointer-events:none!important;z-index:100000!important;background-color:var(--edge-gradient-bg,var(--bg,#fff))!important;display:block!important;position:fixed!important;left:0!important;right:0!important}.mobile-status-bar-anchor.is-top{height:calc(env(safe-area-inset-top,0px) + 12px)!important;background-color:var(--browser-top-color,var(--edge-gradient-bg,#fff))!important;top:0!important}.mobile-status-bar-anchor.is-bottom{height:12px!important;bottom:0!important}.mobile-edge-gradient{transition:opacity .18s;pointer-events:none!important;z-index:500!important;-webkit-user-select:none!important;user-select:none!important;position:fixed!important;left:0!important;right:0!important}.mobile-edge-gradient.is-top{top:env(safe-area-inset-top,0)!important;background:linear-gradient(to bottom,var(--edge-gradient-bg)0,var(--edge-gradient-bg)12px,var(--edge-gradient-bg-transparent)100%)!important;height:64px!important;display:block!important}body.mobile-panel-docked-full .mobile-edge-gradient.is-top,body.mobile-panel-expanded .mobile-edge-gradient.is-top{opacity:0!important}.mobile-edge-gradient.is-bottom{height:calc(max(16px,calc(env(safe-area-inset-bottom,0px) - 8px)) + 58px)!important;background:linear-gradient(to top,var(--edge-gradient-bg)0,var(--edge-gradient-bg)12px,var(--edge-gradient-bg-transparent)100%)!important;display:block!important;bottom:0!important}body.mobile-panel-expanded .mobile-edge-gradient.is-bottom,body:has(#info-panel.mobile-expanded) .mobile-edge-gradient.is-bottom,body:has(.unified-panel[data-sheet-stage=full]) .mobile-edge-gradient.is-bottom{display:none!important}}#info-panel,.info-panel,.station-panel{z-index:20000!important}body.mobile-panel-expanded #info-panel,body.mobile-split-active #info-panel{z-index:11500!important}.dropdown-content,.dropdown-menu,.header-island:has(.dropdown-content.show),.menu-dropdown,.select-dropdown,.tool-header .dropdown-content.show,.tool-header:has(.dropdown-content.show){z-index:3000!important}@media (max-width:640px){.tool-header,.tool-header .dropdown-content.show,.tool-header:has(.dropdown-content.show){z-index:50000!important}}.backdrop,.dialog,.dialog-backdrop,.dialog-overlay,.drawer-overlay,.mask,.modal,.modal-backdrop,.modal-overlay,.overlay{z-index:5000!important}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.iso-fare-click-close{color:#fff;cursor:pointer;background:#ffffff2e;border:none;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;margin-left:4px;font-size:11px;line-height:1;display:inline-flex}.iso-fare-click-close:hover{background:#ffffff52}@media (max-width:640px){#info-panel.unified-panel.mobile-sheet,.unified-panel.mobile-sheet,body.mobile-panel-expanded #info-panel.unified-panel.mobile-sheet,body.mobile-split-active #info-panel.unified-panel.mobile-sheet{--sheet-content-shift:calc(var(--sheet-live-side-gap,var(--sheet-resting-side-gap,0px)) - var(--sheet-resting-side-gap,0px));contain:layout style;backface-visibility:hidden;clip-path:inset(0 var(--sheet-live-side-gap,var(--sheet-resting-side-gap,0))0 var(--sheet-live-side-gap,var(--sheet-resting-side-gap,0))round var(--sheet-live-radius,var(--sheet-resting-radius,22px))var(--sheet-live-radius,var(--sheet-resting-radius,22px))0 0);will-change:transform;top:var(--sheet-full-top,calc(env(safe-area-inset-top,0px) + 64px))!important;width:auto!important;height:auto!important;min-height:0!important;max-height:none!important;transform:translate3d(0,var(--sheet-live-offset,var(--sheet-resting-offset,0)),0)!important;border:0!important;border-radius:0!important;transition:transform .34s cubic-bezier(.22,1,.36,1),opacity .15s ease-out!important;bottom:0!important;left:0!important;right:0!important;overflow:hidden!important;box-shadow:0 -10px 34px #00162433!important}.unified-panel.mobile-sheet.mobile-expanded,.unified-panel.mobile-sheet.sheet-collapsed,.unified-panel.route-panel.mobile-sheet:not(.mobile-expanded):not(.sheet-collapsed){top:var(--sheet-full-top,calc(env(safe-area-inset-top,0px) + 64px))!important;height:auto!important;max-height:none!important;animation:none!important;bottom:0!important}.unified-panel.mobile-sheet{border:0!important}#info-panel.unified-panel.mobile-sheet,#info-panel.unified-panel.mobile-sheet.mobile-expanded,#info-panel.unified-panel.mobile-sheet.sheet-collapsed,body.mobile-panel-expanded #info-panel.unified-panel.mobile-sheet,body.mobile-split-active #info-panel.unified-panel.mobile-sheet{bottom:calc(var(--mobile-station-footer-height,76px) - 2px)!important}#info-panel.unified-panel.mobile-sheet .station-detail-content,.unified-panel.route-panel.mobile-sheet .route-planner{backface-visibility:hidden;border-top-left-radius:0!important;border-top-right-radius:0!important}#info-panel.unified-panel.mobile-sheet .panel-body,.unified-panel.mobile-sheet .panel-body{backface-visibility:hidden;transform:translateZ(0)}.unified-panel.route-panel.mobile-sheet .route-planner{border:0!important}#info-panel.unified-panel.mobile-sheet .panel-header,.unified-panel.route-panel.mobile-sheet .route-planner-header{border-top-left-radius:0!important;border-top-right-radius:0!important}#info-panel.unified-panel.mobile-sheet .panel-header{padding-left:calc(18px + var(--sheet-resting-side-gap,0px))!important;padding-right:calc(44px + var(--sheet-resting-side-gap,0px))!important}#info-panel.unified-panel.mobile-sheet .panel-close-btn{right:calc(14px + var(--sheet-resting-side-gap,0px))!important}#info-panel.unified-panel.mobile-sheet .panel-tabs-container{padding-right:var(--sheet-resting-side-gap,0);padding-left:var(--sheet-resting-side-gap,0)}#info-panel.unified-panel.mobile-sheet .panel-body{overflow-anchor:none;padding-right:calc(14px + var(--sheet-resting-side-gap,0px))!important;padding-left:calc(14px + var(--sheet-resting-side-gap,0px))!important}#info-panel.unified-panel.mobile-sheet .header-name-group,#info-panel.unified-panel.mobile-sheet .header-station-logo,#info-panel.unified-panel.mobile-sheet .panel-tabs-nav{transform:translate3d(var(--sheet-content-shift,0),0,0);transition:transform .34s cubic-bezier(.22,1,.36,1)}#info-panel.unified-panel.mobile-sheet .panel-body>*{translate:var(--sheet-content-shift,0)0;transition:translate .34s cubic-bezier(.22,1,.36,1)}#info-panel.unified-panel.mobile-sheet .panel-badges{transform:translate3d(calc(0px - var(--sheet-content-shift,0px)),0,0);transition:transform .34s cubic-bezier(.22,1,.36,1)}#info-panel.unified-panel.mobile-sheet .panel-close-btn{transition:transform .34s cubic-bezier(.22,1,.36,1);transform:translate3d(calc(0px - var(--sheet-content-shift,0px)),-50%,0)!important}#info-panel.unified-panel.mobile-sheet[data-sheet-committing=true] .header-name-group,#info-panel.unified-panel.mobile-sheet[data-sheet-committing=true] .header-station-logo,#info-panel.unified-panel.mobile-sheet[data-sheet-committing=true] .panel-badges,#info-panel.unified-panel.mobile-sheet[data-sheet-committing=true] .panel-body>*,#info-panel.unified-panel.mobile-sheet[data-sheet-committing=true] .panel-close-btn,#info-panel.unified-panel.mobile-sheet[data-sheet-committing=true] .panel-tabs-nav,#info-panel.unified-panel.mobile-sheet[data-sheet-dragging=true] .header-name-group,#info-panel.unified-panel.mobile-sheet[data-sheet-dragging=true] .header-station-logo,#info-panel.unified-panel.mobile-sheet[data-sheet-dragging=true] .panel-badges,#info-panel.unified-panel.mobile-sheet[data-sheet-dragging=true] .panel-body>*,#info-panel.unified-panel.mobile-sheet[data-sheet-dragging=true] .panel-close-btn,#info-panel.unified-panel.mobile-sheet[data-sheet-dragging=true] .panel-tabs-nav{transition:none!important}#info-panel.unified-panel.mobile-sheet[data-sheet-committing=true],#info-panel.unified-panel.mobile-sheet[data-sheet-dragging=true],.unified-panel.mobile-sheet[data-sheet-committing=true],.unified-panel.mobile-sheet[data-sheet-dragging=true],.unified-panel.route-panel.mobile-sheet[data-sheet-committing=true],.unified-panel.route-panel.mobile-sheet[data-sheet-dragging=true],body.mobile-panel-expanded #info-panel.unified-panel.mobile-sheet[data-sheet-committing=true],body.mobile-panel-expanded #info-panel.unified-panel.mobile-sheet[data-sheet-dragging=true],body.mobile-sheet-dragging #info-panel.unified-panel.mobile-sheet,body.mobile-sheet-dragging .unified-panel.mobile-sheet,body.mobile-split-active #info-panel.unified-panel.mobile-sheet[data-sheet-committing=true],body.mobile-split-active #info-panel.unified-panel.mobile-sheet[data-sheet-dragging=true]{-webkit-user-select:none;user-select:none;transition:none!important}#info-panel.unified-panel.mobile-sheet .panel-footer-inline{display:none!important}.mobile-station-footer-dock{z-index:11620;background:var(--bg-color);border-top:1px solid var(--divider);isolation:isolate;clip-path:inset(0 var(--mobile-dock-live-gap,0)0 var(--mobile-dock-live-gap,0));transition:clip-path .34s cubic-bezier(.22,1,.36,1);display:block;position:fixed;bottom:0;left:0;right:0;transform:translateZ(0);box-shadow:0 -8px 24px #00000029}.mobile-station-footer-dock .panel-footer-dock{padding:8px 12px calc(8px + env(safe-area-inset-bottom,0px))!important;border-top:0!important;margin:0!important;transition:none!important;position:static!important;transform:none!important}body:has(#info-panel.unified-panel.mobile-sheet[data-sheet-dragging=true]) .mobile-station-footer-dock,body:has(.unified-panel.route-panel.mobile-sheet[data-sheet-dragging=true]) .mobile-panel-dock-route{transition:none}#info-panel.unified-panel.mobile-sheet .panel-body{scroll-padding-bottom:0;padding-bottom:0!important}#info-panel.unified-panel.mobile-sheet .panel-body:after{content:"";width:1px;height:var(--sheet-resting-offset,0);min-height:var(--sheet-resting-offset,0);flex:0 0 var(--sheet-resting-offset,0px);pointer-events:none;display:block}#info-panel.unified-panel.mobile-sheet .panel-body{overscroll-behavior:none!important;display:block!important;overflow:hidden auto!important}#info-panel.unified-panel.mobile-sheet .line-timetable-module,#info-panel.unified-panel.mobile-sheet .panel-body>:last-child,#info-panel.unified-panel.mobile-sheet .subrail-tt-wrapper{touch-action:pan-x pan-y;overscroll-behavior:none;margin-bottom:14px!important}#info-panel.unified-panel.mobile-sheet .mobile-timetable-bottom-spacer{height:0!important;min-height:0!important;display:none!important}#info-panel.unified-panel.mobile-sheet .timetable-scroll-area{flex:none!important;height:auto!important;min-height:0!important;margin-bottom:0!important}.unified-panel.mobile-sheet[data-sheet-dragging=true] .sheet-grabber{cursor:grabbing}.unified-panel.mobile-sheet .sheet-grabber,.unified-panel.route-panel.mobile-sheet .sheet-grabber{z-index:4001;width:92px;height:24px;touch-action:none!important;-webkit-user-select:none!important;user-select:none!important;display:flex!important}.unified-panel.mobile-sheet .panel-header,.unified-panel.mobile-sheet .panel-tabs-container,.unified-panel.mobile-sheet [data-panel-drag-handle]{touch-action:none!important;-webkit-user-select:none!important;user-select:none!important}.unified-panel.mobile-sheet .sheet-grabber-bar{background:var(--text-light);width:38px;height:5px}@supports (color:color-mix(in lab,red,red)){.unified-panel.mobile-sheet .sheet-grabber-bar{background:color-mix(in srgb,var(--text-light)58%,transparent)}}.unified-panel.mobile-sheet .sheet-grabber-bar{box-shadow:none;transition:width .16s,background-color .16s}.unified-panel.mobile-sheet[data-sheet-dragging=true] .sheet-grabber-bar{background:var(--primary-color);width:46px}@supports (color:color-mix(in lab,red,red)){.unified-panel.mobile-sheet[data-sheet-dragging=true] .sheet-grabber-bar{background:color-mix(in srgb,var(--primary-color)78%,var(--text-main))}}.unified-panel.route-panel .unified-route-content{flex:auto;gap:0;height:100%;min-height:0;overflow:hidden!important}.unified-panel.route-panel .route-planner{flex-direction:column;height:100%;min-height:0;display:flex;overflow:hidden!important}.unified-panel.route-panel .route-planner-header{flex:none;padding:16px 40px 16px 20px}.unified-panel.route-panel .route-planner-footer{flex:none}.unified-panel.route-panel.mobile-sheet{bottom:0!important}body:has(.mobile-panel-dock-route) .unified-panel.route-panel.mobile-sheet{bottom:calc(var(--mobile-route-footer-height,64px) - 2px)!important}.unified-panel.route-panel .route-planner-footer-inline{display:none}.mobile-panel-dock-route{z-index:11640;padding-bottom:env(safe-area-inset-bottom,0);background:var(--panel);border:1px solid var(--divider);display:block;position:fixed;bottom:0;left:0;right:0}@supports (color:color-mix(in lab,red,red)){.mobile-panel-dock-route{border:1px solid color-mix(in srgb,var(--divider)74%,transparent)}}.mobile-panel-dock-route{clip-path:inset(0 var(--mobile-dock-live-gap,0)0 var(--mobile-dock-live-gap,0));border-bottom:0;transition:clip-path .34s cubic-bezier(.22,1,.36,1);box-shadow:0 -8px 24px #00142229}.mobile-panel-dock-route .route-planner-footer{border-top:0;border-radius:0;min-height:64px;padding:8px 12px}body:has(.unified-panel.route-panel.mobile-sheet) .mobile-station-footer-dock{visibility:hidden;pointer-events:none}body:has(.unified-panel.route-panel.mobile-sheet) #info-panel.unified-panel.mobile-sheet{pointer-events:none;visibility:hidden!important;opacity:0!important}.unified-panel.route-panel .route-planner-fields{-webkit-overflow-scrolling:touch;overscroll-behavior:none;flex:auto;min-height:0;padding-bottom:16px;scroll-padding-bottom:16px;overflow:hidden auto!important}.unified-panel.route-panel .route-result-panel{min-height:0;padding:24px 16px calc(18px + env(safe-area-inset-bottom,0px));overscroll-behavior:none;z-index:1;flex:auto;animation:none;width:100%!important;max-width:none!important;position:static!important;inset:auto!important;overflow:hidden auto!important}.unified-panel.route-panel .route-result-panel:after{content:"";width:1px;height:var(--sheet-resting-offset,0);min-height:var(--sheet-resting-offset,0);flex:0 0 var(--sheet-resting-offset,0px);pointer-events:none;display:block}.unified-panel.route-panel .route-result-panel .result-header{margin:-24px -16px 16px;padding:17px 48px 15px 16px}.unified-panel.route-panel .unified-route-content.is-planning .route-result-panel{display:none!important}.route-map-selection-hint{top:calc(env(safe-area-inset-top,0px) + 76px);z-index:11490;color:#f3f8fa;background:#002c43;border:1px solid #ffffff29;border-radius:14px;align-items:center;gap:9px;width:max-content;max-width:calc(100vw - 32px);min-height:48px;padding:8px 10px 8px 12px;animation:routeMapHintEnter .26s cubic-bezier(.22,1,.36,1) both;display:flex;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 8px 28px #00142247}.route-map-selection-hint>span:not(.route-map-selection-pulse){flex-direction:column;min-width:0;display:flex}.route-map-selection-hint strong{font-size:13px;line-height:1.2}.route-map-selection-hint small{color:#f3f8fab8;margin-top:2px;font-size:11px}.route-map-selection-pulse{background:#63c6da;border-radius:50%;flex:0 0 8px;width:8px;height:8px;box-shadow:0 0 0 5px #63c6da24}.route-map-selection-hint button{color:#f3f8fa;min-width:48px;height:32px;font:inherit;background:#ffffff1a;border:0;border-radius:9px;margin-left:4px;padding:0 10px;font-size:12px;font-weight:650}}@keyframes routeMapHintEnter{0%{opacity:0;transform:translate(-50%,-10px)}to{opacity:1;transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.route-map-selection-hint,.unified-panel.mobile-sheet,.unified-panel.mobile-sheet .sheet-grabber-bar{transition-duration:.01ms!important;animation:none!important}}.offline-empty{text-align:center;min-height:100dvh;color:var(--text-primary,#102a3a);background:var(--bg-primary,#f4f7f9);place-content:center;gap:10px;padding:32px;display:grid}.offline-empty h1,.offline-empty p{margin:0}body.minimal-mode .geo-landmark-layer,body.minimal-mode .geo-water-layer,body.minimal-mode .map-decoration,body.minimal-mode .scattered-decoration{display:none!important}body.minimal-mode .line-path,body.minimal-mode .station-node{filter:none!important}body.minimal-mode .stacn,body.minimal-mode .staen{text-shadow:none!important}body.reduce-motion *,body.reduce-motion :after,body.reduce-motion :before{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.settings-mono-value{font-family:var(--font-mono);color:var(--text-secondary,#6b7280);word-break:break-all;text-align:right;max-width:60%;font-size:12.5px}.settings-offline-entry{background:var(--bg-secondary,#00000008);border-radius:6px;align-items:center;gap:8px;padding:6px 10px;font-size:12px;display:flex}.settings-offline-entry-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.settings-modal:focus{outline:none}:root{--splash-bg:#fff;--splash-text:#00263b;--splash-sub:#6b7d87;--splash-overlay:#fffffff5;--splash-progress-track:#00609826;--splash-progress-fill:#006098}[data-theme=dark]{--splash-bg:#1a1a1a;--splash-text:#e5e8ea;--splash-sub:#78848b;--splash-overlay:#1a1a1af5;--splash-progress-track:#00609840;--splash-progress-fill:#2196f3}.cgo-splash{z-index:9999;background:var(--splash-overlay);color:var(--splash-text);opacity:1;transition:opacity .65s cubic-bezier(.4,0,.2,1);position:fixed;inset:0;overflow:hidden}.cgo-splash--hiding{opacity:0;pointer-events:none}.cgo-splash__map-layer{justify-content:stretch;align-items:stretch;display:flex;position:absolute;inset:0}.cgo-splash__map-svg{width:100%;height:100%;display:block}.cgo-splash__center{opacity:1;pointer-events:none;z-index:10000;will-change:transform,opacity;justify-content:center;align-items:center;transition:transform .75s cubic-bezier(.16,1,.3,1),opacity .65s cubic-bezier(.4,0,.2,1);display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)scale(1)}.cgo-splash--hiding .cgo-splash__center{opacity:0;transform:translate(-50%,-50%)scale(1.15)}.cgo-splash__center-svg{width:min(280px,60vw);height:auto;max-height:45vh;display:block}.cgo-splash-anim-translate{will-change:transform;animation:splash-translate-bar 2s linear infinite}.cgo-splash-anim-rotate{will-change:transform;animation:splash-rotate-arrows 2s linear infinite}@keyframes splash-translate-bar{0%{transform:translate(0)}to{transform:translate(300px)}}@keyframes splash-rotate-arrows{0%{transform:rotate(180deg)}to{transform:rotate(-180deg)}}.cgo-splash__center-svg--light{display:block}.cgo-splash__center-svg--dark{display:none}[data-theme=dark] .cgo-splash__center-svg--light{display:none!important}[data-theme=dark] .cgo-splash__center-svg--dark{display:block!important}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .cgo-splash__center-svg--light{display:none}:root:not([data-theme=light]) .cgo-splash__center-svg--dark{display:block}}.cgo-splash__bottom-bar{background:linear-gradient(to top,var(--splash-overlay)60%,transparent);flex-direction:column;align-items:center;gap:12px;padding:20px 24px 28px;animation:splash-brand-in .6s ease-out .2s both;display:flex;position:absolute;bottom:0;left:0;right:0}.cgo-splash__logo-svg{flex-shrink:0;width:40px;height:40px}.cgo-splash__brand-text{flex-direction:column;align-items:center;gap:3px;display:flex}.cgo-splash__title{letter-spacing:-.3px;color:var(--splash-text);font-family:Arimo,PingFang SC,Microsoft YaHei,system-ui,sans-serif;font-size:18px;font-weight:700}.cgo-splash__subtitle{color:var(--splash-sub);font-family:Arimo,PingFang SC,system-ui,sans-serif;font-size:13px}.cgo-splash__progress{background:var(--splash-progress-track);border-radius:999px;width:min(300px,75vw);height:3px;overflow:hidden}.cgo-splash__progress-bar{background:var(--splash-progress-fill);border-radius:999px;width:0;height:100%;animation:splash-progress 3.5s cubic-bezier(.1,.4,.6,1) forwards}@media (prefers-reduced-motion:reduce){.cgo-splash__progress-bar{width:80%;animation:none}}@keyframes splash-svg-in{0%{opacity:0}to{opacity:1}}@keyframes splash-brand-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes logo-hex-in{0%{opacity:0;transform-origin:22px 22px;transform:scale(0)rotate(-30deg)}70%{opacity:1;transform-origin:22px 22px;transform:scale(1.15)rotate(5deg)}to{opacity:1;transform-origin:22px 22px;transform:scale(1)rotate(0)}}@keyframes splash-progress{0%{width:0}25%{width:38%}55%{width:68%}80%{width:85%}to{width:93%}}.d-logo-hex{animation:logo-hex-in .6s cubic-bezier(.34,1.56,.64,1) both}.d-logo-text{animation:splash-brand-in .5s ease-out .2s both}.cgo-compat-actions{flex-direction:column!important;gap:12px!important;width:100%!important;margin-bottom:20px!important;display:flex!important}.cgo-compat-actions .cgo-compat-btn+.cgo-compat-btn,.cgo-compat-actions button+button,.cgo-compat-actions>*+*{margin-top:12px!important}.stacard-tourism-box{background:var(--bg-card,#fff);border:1px solid var(--divider,#00000014);box-sizing:border-box;border-radius:8px;flex-direction:column;gap:7px;width:100%;margin:4px 0 10px;padding:10px 12px;transition:border-color .2s,box-shadow .2s;display:flex;position:relative;overflow:hidden;box-shadow:0 2px 8px #0000000a}[data-theme=dark] .stacard-tourism-box{background:#ffffff0a;border-color:#ffffff1a;box-shadow:0 2px 8px #0003}.stacard-tourism-header{align-items:center;gap:8px;display:flex}.stacard-tourism-title-group{color:var(--text-main,#00263b);align-items:center;gap:5px;display:inline-flex}.stacard-tourism-cgo-icon{width:15px;height:15px;color:var(--tourism-theme-color,var(--primary-color,#006098));flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.stacard-tourism-title{color:var(--text-main,#00263b);letter-spacing:.3px;font-size:13px;font-weight:600;line-height:1.2}.stacard-tourism-content{width:100%}.stacard-tourism-body{color:var(--text-light,#555);text-align:justify;word-break:break-word;margin:0;font-size:12.5px;line-height:1.62}[data-theme=dark] .stacard-tourism-body{color:var(--text-light,#a0b0b9)}.stacard-minimap-box{background:var(--bg-card,#f8f9fa);width:100%;box-shadow:0 2px 8px #00000014,inset 0 0 0 1px var(--divider,#00000014);-webkit-user-select:none;user-select:none;border-radius:8px;margin:4px 0 12px;position:relative;overflow:hidden}.stacard-minimap-viewport{cursor:default;background-color:#f2efe9;width:100%;height:156px;position:relative;overflow:hidden}.stacard-minimap-viewport:focus{outline:none}.stacard-tiles-wrapper{pointer-events:none;width:100%;height:100%;transition:filter .3s;position:absolute;top:0;left:0}.stacard-tile-img{-webkit-user-select:none;user-select:none;-webkit-user-drag:none;image-rendering:auto;pointer-events:none;width:256px;height:256px;display:block;position:absolute}.stacard-pin-marker{pointer-events:none;z-index:10;flex-direction:column;align-items:center;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.stacard-pin-dot{z-index:2;border:2px solid #fff;width:12px;height:12px;box-shadow:0 2px 6px #00000059}.stacard-pin-dot,.stacard-pin-pulse{background-color:var(--marker-color,#ff3b30);border-radius:50%}.stacard-pin-pulse{opacity:.35;width:28px;height:28px;animation:stacard-pulse 2s cubic-bezier(.25,.8,.25,1) infinite;position:absolute;top:-8px}@keyframes stacard-pulse{0%{opacity:.6;transform:scale(.6)}70%{opacity:0;transform:scale(1.6)}to{opacity:0;transform:scale(1.6)}}.stacard-pin-label{color:#1a1a1a;-webkit-backdrop-filter:blur(4px);white-space:nowrap;background:#ffffffeb;border:1px solid #00000014;border-radius:4px;margin-top:4px;padding:2px 6px;font-size:11px;font-weight:700;box-shadow:0 2px 5px #0000002e}.stacard-controls{z-index:12;flex-direction:column;gap:4px;display:flex;position:absolute;top:8px;right:8px}.stacard-ctrl-btn{-webkit-backdrop-filter:blur(4px);color:#333;cursor:pointer;background:#ffffffeb;border:1px solid #00000014;border-radius:6px;justify-content:center;align-items:center;width:24px;height:24px;padding:0;text-decoration:none;transition:all .2s;display:flex;box-shadow:0 1px 4px #0000001f}.stacard-ctrl-btn:hover{color:#000;background:#fff;transform:scale(1.05)}.stacard-ctrl-btn:active{transform:scale(.95)}.route-itinerary{color:var(--text-main);-webkit-user-select:text;user-select:text;gap:10px;margin-top:10px;font-size:12px}.itin-summary,.route-itinerary{flex-direction:column;display:flex}.itin-summary{border:1px solid var(--divider);background:var(--ctrl-btn-bg);border-radius:10px;gap:6px;padding:10px 12px}.itin-headline{align-items:center;gap:10px;font-size:14px;display:flex}.itin-headline strong{letter-spacing:.01em;font-variant-numeric:tabular-nums;font-size:17px;font-weight:700}.itin-sep{background:var(--divider);width:1px;height:16px}.itin-meta{color:var(--text-light);flex-wrap:wrap;align-items:center;gap:6px;font-size:11.5px;display:flex}.itin-dot{background:var(--text-light);opacity:.6;border-radius:50%;width:3px;height:3px}.itin-linebar{flex-wrap:wrap;align-items:center;gap:5px 4px;margin-top:2px;display:flex}.itin-endpoint{border-radius:50%;flex:none;width:8px;height:8px}.itin-endpoint.start{background:#22c55e}.itin-endpoint.end{background:#ef4444}.itin-linebar-link{border-radius:2px;flex:none;align-self:center;width:12px;height:3px}.itin-linebar .itin-line-chip{text-overflow:ellipsis;white-space:nowrap;flex:0 auto;justify-content:center;min-width:0;max-width:100%;overflow:hidden}.itin-line-chip{color:#fff;text-shadow:0 0 2px #00000040;border-radius:5px;align-items:center;padding:2px 8px;font-size:11px;font-weight:700;line-height:1.4;display:inline-flex}.itin-timeline{margin:0;padding:0 0 0 2px;list-style:none}.itin-ride,.itin-timeline{flex-direction:column;display:flex}.itin-ride{gap:6px;padding:0 0 6px 26px;position:relative}.itin-ride:before{content:"";background:var(--leg-color,var(--primary-color,#38bdf8));opacity:.9;border-radius:4px;width:8px;position:absolute;top:10px;bottom:6px;left:6px}.itin-stop{position:relative}.itin-node{box-sizing:border-box;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;display:inline-flex;position:absolute;top:2px;left:-24px}.itin-node.board{background:var(--leg-color,var(--primary-color,#38bdf8));color:#fff}.itin-node.alight{background:var(--panel);border:3px solid var(--leg-color,var(--primary-color,#38bdf8))}.itin-stop-row{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.itin-stop-row strong{font-size:14px;font-weight:700}.itin-stop-row time{font-variant-numeric:tabular-nums;color:var(--text-main);font-size:13px;font-weight:600}.itin-train{background:var(--ctrl-btn-bg);border-radius:8px;flex-wrap:wrap;align-items:center;gap:6px;padding:6px 8px;display:flex}.itin-train-dest{font-weight:600}.itin-tag,.itin-train-rel{color:var(--text-light)}.itin-tag{border:1px solid var(--divider);border-radius:4px;padding:0 5px;font-size:10px;line-height:1.6}.itin-alts{color:var(--text-light);font-variant-numeric:tabular-nums;flex-direction:column;gap:4px;font-size:11.5px;display:flex}.itin-alts-toggle{color:inherit;font:inherit;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:6px;align-items:center;gap:6px;padding:4px 8px;display:flex}.itin-alts-toggle:hover{background:var(--list-hover)}.itin-alts-toggle>:first-child{flex:none;transition:transform .2s;display:inline-flex}.itin-alts.is-open .itin-alts-toggle>:first-child{transform:rotate(180deg)}.itin-alts-toggle small{text-overflow:ellipsis;white-space:nowrap;opacity:.85;min-width:0;overflow:hidden}.itin-alt-list{flex-direction:column;gap:3px;margin:0;padding:0 0 0 18px;list-style:none;display:flex}.itin-alt{background:var(--ctrl-btn-bg);width:100%;color:var(--text-main);font:inherit;font-variant-numeric:tabular-nums;cursor:pointer;text-align:left;border:1px solid #0000;border-radius:6px;align-items:center;gap:8px;padding:5px 8px;font-size:11.5px;display:flex}.itin-alt:hover:not(:disabled){border-color:var(--leg-color,var(--primary-color,#38bdf8))}@supports (color:color-mix(in lab,red,red)){.itin-alt:hover:not(:disabled){border-color:color-mix(in srgb,var(--leg-color,var(--primary-color,#38bdf8))50%,transparent)}}.itin-alt:disabled{cursor:default}.itin-alt>time{flex:none;font-size:13px;font-weight:700}.itin-alt-main{flex-direction:column;flex:auto;min-width:0;line-height:1.4;display:flex;overflow:hidden}.itin-alt-main small{color:var(--text-light);text-overflow:ellipsis;white-space:nowrap;font-size:10.5px;overflow:hidden}.itin-alt-tags{flex:none;align-items:center;gap:4px;display:flex}.itin-alt-rel{color:var(--text-light)}.itin-alt.is-selected{background:var(--leg-color,var(--primary-color,#38bdf8))}@supports (color:color-mix(in lab,red,red)){.itin-alt.is-selected{background:color-mix(in srgb,var(--leg-color,var(--primary-color,#38bdf8))14%,transparent)}}.itin-alt.is-selected{border-color:var(--leg-color,var(--primary-color,#38bdf8))}@supports (color:color-mix(in lab,red,red)){.itin-alt.is-selected{border-color:color-mix(in srgb,var(--leg-color,var(--primary-color,#38bdf8))55%,transparent)}}.itin-alt.is-selected{opacity:1}.itin-alt.is-early{border-style:dashed;border-color:#b0701a66}.itin-tag.is-warn{color:var(--partial-note-text,#b0701a);background:#b0701a1f;border-color:#b0701a66}.itin-tag.is-rec{color:var(--primary-color,#38bdf8);border-color:var(--primary-color,#38bdf8)}@supports (color:color-mix(in lab,red,red)){.itin-tag.is-rec{border-color:color-mix(in srgb,var(--primary-color,#38bdf8)45%,transparent)}}.itin-tag.is-rec{font-weight:600}.itin-tag.is-selected{color:var(--text-main);border-color:var(--divider);font-weight:600}.itin-alt-hint{color:var(--text-light);padding:2px 8px;font-size:11px}.itin-ride-toggle{color:var(--text-main);font:inherit;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:6px;align-items:center;gap:6px;padding:4px 8px;font-size:12px;font-weight:600;display:flex}.itin-ride-toggle:hover:not(:disabled){background:var(--list-hover)}.itin-ride-toggle:disabled{cursor:default;opacity:.8}.itin-ride-toggle>:first-child{transition:transform .2s;display:inline-flex}.itin-ride-toggle.is-open>:first-child{transform:rotate(180deg)}.itin-mid{flex-direction:column;gap:3px;margin:0;padding:0 0 0 10px;list-style:none;display:flex}.itin-mid li{color:var(--text-light);justify-content:space-between;align-items:center;gap:8px;font-size:12px;line-height:1.5;display:flex;position:relative}.itin-mid-dot{background:var(--panel);opacity:.9;border-radius:50%;width:6px;height:6px;position:absolute;top:50%;left:-29px;transform:translateY(-50%)}.itin-mid li time{font-variant-numeric:tabular-nums}.itin-mid li.is-pass{opacity:.7;font-style:italic}.itin-transfer{background:var(--ctrl-btn-bg);border:1px dashed var(--divider);border-radius:8px;align-items:center;gap:8px;margin:2px 0 8px;padding:8px 10px 8px 26px;display:flex;position:relative}.itin-transfer:before{content:"";background-image:linear-gradient(180deg,var(--from-color,var(--text-light)),var(--to-color,var(--text-light)));opacity:.75;border-radius:2px;width:3px;position:absolute;top:-6px;bottom:-6px;left:8px;-webkit-mask-image:repeating-linear-gradient(#000 0 4px,#0000 4px 8px);mask-image:repeating-linear-gradient(#000 0 4px,#0000 4px 8px)}.itin-transfer-icon{color:var(--text-light);display:inline-flex}.itin-transfer-text{flex-direction:column;gap:1px;font-size:12px;display:flex}.itin-transfer-text strong{font-weight:700}.itin-transfer-text span{color:var(--text-light)}.itin-transfer-text .itin-transfer-buffer{color:var(--primary-color,#0f7894);font-size:11px;font-weight:600}.itin-footer{color:var(--text-light);flex-wrap:wrap;justify-content:space-between;gap:8px;padding:0 2px;font-size:11px;display:flex}.route-station-result.is-active,.search-item.is-active{background:var(--list-hover);box-shadow:inset 3px 0 0 var(--primary-color,#38bdf8)}.search-keyboard-hint{color:var(--text-light);text-align:right;border-top:1px solid var(--divider);padding:4px 10px 6px;font-size:10.5px}@media (min-width:641px){.route-result-panel{flex-direction:column;min-height:0;display:flex}.route-result-panel>*{flex:none}.route-result-panel>.route-itinerary,.unified-panel.route-panel .route-result-panel{flex:auto;min-height:0}.route-itinerary>.itin-footer,.route-itinerary>.itin-summary{flex:none}.route-itinerary>.itin-timeline{overscroll-behavior:contain;scrollbar-width:thin;flex:auto;min-height:0;overflow-y:auto}.route-itinerary>.itin-timeline::-webkit-scrollbar{width:4px}.route-itinerary>.itin-timeline::-webkit-scrollbar-thumb{background:#8080804d;border-radius:2px}.unified-panel.route-panel .route-path-flow{flex:auto;min-height:0;max-height:none}}@media (max-width:640px){.route-itinerary{font-size:13px}.itin-headline strong{font-size:19px}.itin-meta{font-size:12px}.itin-stop-row strong{font-size:15px}.itin-stop-row time{font-size:14px}.itin-train{padding:8px 10px}.itin-ride-toggle{min-height:40px;padding:8px}.itin-alts{font-size:12px}.itin-alt,.itin-alts-toggle{min-height:40px;font-size:12.5px}.itin-mid li{min-height:26px;font-size:12.5px}.itin-transfer{padding:10px 12px 10px 26px}.search-keyboard-hint{display:none}}.itin-tag.is-express{color:var(--primary-color,#38bdf8);border-color:var(--primary-color,#38bdf8)}@supports (color:color-mix(in lab,red,red)){.itin-tag.is-express{border-color:color-mix(in srgb,var(--primary-color,#38bdf8)45%,transparent)}}.itin-tag.is-express{background:var(--primary-color,#38bdf8)}@supports (color:color-mix(in lab,red,red)){.itin-tag.is-express{background:color-mix(in srgb,var(--primary-color,#38bdf8)10%,transparent)}}.itin-tag.is-express{font-weight:600}.itin-note{color:var(--partial-note-text,#b0701a);background:#b0701a1a;border:1px solid #b0701a42;border-radius:6px;align-items:flex-start;gap:6px;margin:0;padding:6px 8px;font-size:11.5px;line-height:1.5;display:flex}.itin-note>:first-child{flex:none;margin-top:2px}.itin-note.is-condition{color:var(--primary-color,#0f7894);background:var(--primary-color,#0f7894)}@supports (color:color-mix(in lab,red,red)){.itin-note.is-condition{background:color-mix(in srgb,var(--primary-color,#0f7894)9%,transparent)}}.itin-note.is-condition{border-color:var(--primary-color,#0f7894)}@supports (color:color-mix(in lab,red,red)){.itin-note.is-condition{border-color:color-mix(in srgb,var(--primary-color,#0f7894)26%,transparent)}}.itin-note.is-warn{border-color:#b0701a73;font-weight:600}@media (max-width:640px){.itin-note{padding:8px 10px;font-size:12.5px}}cgo-modal{z-index:21000;position:fixed;inset:0}cgo-notice-popup{z-index:21100!important}cgo-notice-popup:not([position^=bottom]){top:calc(76px + env(safe-area-inset-top,0px))}.special-services-section{color:var(--text-main)}.special-services-line-card{background-color:var(--card-bg,#fff);border:1px solid var(--border-color,#00000014);border-radius:8px;padding:8px 10px}.dark .special-services-line-card,.dark-mode .special-services-line-card,[data-theme=dark] .special-services-line-card{background-color:#ffffff0a;border-color:#ffffff14}.special-service-time-chip{background-color:var(--card-bg,#fff);border:1px solid var(--border-color,#0000001f);color:var(--text-main,#1f2937);cursor:default;-webkit-user-select:none;user-select:none;border-radius:4px;padding:0 5px;font-family:monospace,ui-monospace,sans-serif;font-size:11px;font-weight:600;line-height:18px;transition:all .15s ease-in-out;display:inline-block}.dark .special-service-time-chip,.dark-mode .special-service-time-chip,[data-theme=dark] .special-service-time-chip{color:var(--text-main,#f3f4f6);background-color:#ffffff14;border-color:#ffffff26}.special-service-time-chip:hover{transform:translateY(-1px);background-color:var(--accent-color,#0f7894)!important;color:#fff!important;border-color:var(--accent-color,#0f7894)!important}.special-service-direction-label{color:var(--text-secondary,#666);margin-right:2px;font-size:11px}.dark .special-service-direction-label,.dark-mode .special-service-direction-label,[data-theme=dark] .special-service-direction-label{color:var(--text-secondary,#9ca3af)}.special-services-daytype-tag{color:var(--text-secondary,#666);background-color:#0000000a;border:1px solid #00000014;border-radius:4px;padding:1px 6px;font-size:11px;font-weight:500}.special-service-entry-row.has-divider{border-top:1px dashed var(--divider,#00000014)!important}.dark .special-service-entry-row.has-divider,.dark-mode .special-service-entry-row.has-divider,[data-theme=dark] .special-service-entry-row.has-divider{border-top-color:#ffffff1a!important}.dark .special-services-daytype-tag,.dark-mode .special-services-daytype-tag,[data-theme=dark] .special-services-daytype-tag{color:var(--text-secondary,#9ca3af);background-color:#ffffff14;border-color:#ffffff1f}.tt-special-badge.state-2{color:#fff;background-color:#10b981}.dark .tt-special-badge.state-2,.dark-mode .tt-special-badge.state-2,[data-theme=dark] .tt-special-badge.state-2{color:#fff;background-color:#059669}.tt-special-badge.state-4{color:#fff;background-color:#64748b}.dark .tt-special-badge.state-4,.dark-mode .tt-special-badge.state-4,[data-theme=dark] .tt-special-badge.state-4{color:#fff;background-color:#475569}