*{box-sizing:border-box;margin:0;padding:0}:root{--bg:#ffffff;--bg2:#101010;--bg3:#181818;--bg4:#222;--bd1:#1e1e1e;--bd2:#2a2a2a;--bd3:#383838;--t1:#f0f0f0;--t2:#aaa;--t3:#666;--t4:#444;--peak:#c8973a;--offpeak:#4a9e6a;--accent:#3a6cf0;--nav-bar-circle:28px;--nav-bar-gap:12px}@media(max-width:768px){:root{--nav-bar-circle:32px;--nav-bar-gap:8px}}html,body{height:100%;overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:var(--bg);color:var(--t1);font-size:13px;-webkit-user-select:none;user-select:none}body.sg-font-stroudley,body.sg-font-stroudley button,body.sg-font-stroudley input,body.sg-font-stroudley select,body.sg-font-stroudley textarea,body.sg-font-stroudley #panel-line-info,body.sg-font-stroudley #panel-station{font-family:Stroudley,DIN Alternate,Avenir Next,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif!important}@font-face{font-family:MTR Sung;src:url(/fonts/mtr-sung.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}body.hk-font-mtr #line-info-length-signature,body.hk-font-mtr #modal-line.hk-font-mtr #line-name-input,body.hk-font-mtr #modal-line-edit.hk-font-mtr #line-edit-name-zh,#modal-line.hk-font-mtr #line-name-input,#modal-line-edit.hk-font-mtr #line-edit-name-zh,body.hk-font-mtr #line-info-title,body.hk-font-mtr #line-info-badge,body.hk-font-mtr #line-info-badge-num,body.hk-font-mtr #line-info-badge-txt,body.hk-font-mtr #line-info-badge-zh,body.hk-font-mtr #panel-line-info .line-info-badge-zh,body.hk-font-mtr #panel-line-info .line-info-name,body.hk-font-mtr #panel-line-info .line-info-tag,body.hk-font-mtr #sidebar .lr-name,body.hk-font-mtr #ps-title-input,body.hk-font-mtr #line-name-input,body.hk-font-mtr #line-edit-name-zh,body.hk-font-mtr label[for=line-edit-name-zh],#modal-line.hk-font-mtr label[for=line-name-input],#modal-line.hk-font-mtr .line-official-swatch-txt,#modal-line.hk-font-mtr .line-color-palette-sec-title{font-family:MTR Sung,Songti SC,STSong,SimSun,serif!important}body.hk-font-mtr #line-info-subtitle,body.hk-font-mtr #line-info-badge-en,body.hk-font-mtr .line-info-badge-en-wrap,body.hk-font-mtr .line-info-badge-en-wrap .line-info-badge-en,body.hk-font-mtr .line-info-badge-en-wrap.is-marquee .line-info-badge-en-track span,body.hk-font-mtr #panel-line-info .line-info-en,body.hk-font-mtr #ps-title-en-input,body.hk-font-mtr #line-edit-name-en,body.hk-font-mtr #line-edit-name-en-col input,#modal-line.hk-font-mtr #line-edit-name-en,#modal-line-edit.hk-font-mtr #line-edit-name-en-col input{font-family:Myriad Pro,Myriad Pro Regular,Myriad,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif!important}body.hk-font-mtr #tb-city,body.hk-font-mtr .bb-net-length,body.hk-font-mtr .bb-net-length-label,body.hk-font-mtr .bb-net-length-val{font-family:PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif!important}body.md-font-helvetica #line-info-length-signature,body.md-font-helvetica #modal-line.md-font-helvetica #line-name-input,body.md-font-helvetica #modal-line-edit.md-font-helvetica #line-edit-name-zh,#modal-line.md-font-helvetica #line-name-input,#modal-line-edit.md-font-helvetica #line-edit-name-zh,body.md-font-helvetica #line-info-title,body.md-font-helvetica #line-info-badge,body.md-font-helvetica #line-info-badge-num,body.md-font-helvetica #line-info-badge-txt,body.md-font-helvetica #line-info-badge-zh,body.md-font-helvetica #line-info-subtitle,body.md-font-helvetica #line-info-badge-en,body.md-font-helvetica .line-info-badge-en-wrap,body.md-font-helvetica .line-info-badge-en-wrap .line-info-badge-en,body.md-font-helvetica .line-info-badge-en-wrap.is-marquee .line-info-badge-en-track span,body.md-font-helvetica #panel-line-info .line-info-badge-zh,body.md-font-helvetica #panel-line-info .line-info-name,body.md-font-helvetica #panel-line-info .line-info-tag,body.md-font-helvetica #panel-line-info .line-info-en,body.md-font-helvetica #panel-station,body.md-font-helvetica #panel-station input,body.md-font-helvetica #panel-station button,body.md-font-helvetica #panel-station textarea,body.md-font-helvetica #sidebar .lr-name,body.md-font-helvetica #ps-title-input,body.md-font-helvetica #ps-title-en-input,body.md-font-helvetica #line-name-input,body.md-font-helvetica #line-edit-name-zh,body.md-font-helvetica #line-edit-name-en,body.md-font-helvetica #line-edit-name-en-col input,body.md-font-helvetica label[for=line-edit-name-zh],#modal-line.md-font-helvetica label[for=line-name-input],#modal-line.md-font-helvetica .line-official-swatch-txt,#modal-line.md-font-helvetica .line-color-palette-sec-title,#modal-line.md-font-helvetica #line-edit-name-en,#modal-line-edit.md-font-helvetica #line-edit-name-en-col input,body.md-font-helvetica #modal-line .line-stock-code,body.md-font-helvetica #modal-line .line-stock-brand{font-family:Helvetica,Helvetica Neue,Arial,sans-serif!important}body.md-font-helvetica #tb-city,body.md-font-helvetica .bb-net-length,body.md-font-helvetica .bb-net-length-label,body.md-font-helvetica .bb-net-length-val{font-family:PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif!important}input,textarea{-webkit-user-select:text;user-select:text}body.home-mode,html.home-mode{cursor:none}body.home-mode *,body.home-mode *:before,body.home-mode *:after{cursor:none!important}.cursor-dot{position:fixed;top:0;left:0;width:14px;height:14px;background-color:#000;border-radius:50%;transform:translate(-50%,-50%);pointer-events:none;z-index:10001;will-change:transform}body:not(.home-mode) .cursor-dot{display:none!important}body.release-notes-open .cursor-dot,html.release-notes-open .cursor-dot{z-index:10060}@media(pointer:coarse){.cursor-dot{display:none!important}body.home-mode,html.home-mode{cursor:auto}body.home-mode *,body.home-mode *:before,body.home-mode *:after{cursor:auto!important}}#screen-home{position:fixed;inset:0;z-index:9000;background:var(--bg);overflow:hidden;will-change:transform,opacity;transform:translateY(0);opacity:1;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}#screen-home canvas{display:block;position:absolute;top:0;left:0;z-index:1;opacity:0;transition:opacity .4s ease}#screen-home[data-ready="1"] canvas{opacity:1}#screen-home .ui-container{position:absolute;bottom:80px;left:80px;z-index:10;display:flex;flex-direction:column;align-items:flex-start;pointer-events:none}#screen-home .main-title{font-weight:900;font-size:clamp(3rem,5vw,6rem);color:#000!important;line-height:1;letter-spacing:.5em;margin-bottom:40px;margin-right:-.5em;opacity:0;transform:translateY(20px);animation:fadeUp 1s cubic-bezier(.16,1,.3,1) forwards;animation-delay:.3s;pointer-events:auto}#screen-home .main-title.true-focus{display:inline-block}#screen-home .main-title.true-focus .tf-char{display:inline-block;will-change:filter,opacity,transform;transition:filter .12s ease,opacity .12s ease,transform .12s ease;transform-origin:50% 70%}#screen-home .main-title.true-focus .tf-char.is-space{width:.5em}#screen-home .text-btn{pointer-events:auto;background:none;border:none;outline:none;padding:0;font-size:1.2rem;font-weight:900;color:#000!important;letter-spacing:.1em;cursor:none;position:relative;display:flex;align-items:center;gap:15px;opacity:0;animation:fadeUp 1s cubic-bezier(.16,1,.3,1) forwards;animation-delay:.5s}#screen-home .text-btn:after{content:"";position:absolute;bottom:-8px;left:0;width:0%;height:6px;background-color:#000;transition:width .4s cubic-bezier(.25,.8,.25,1)}#screen-home .text-btn:hover:after{width:100%}#screen-home .arrow-icon{display:inline-block;transform:translate(-10px);opacity:0;transition:all .4s ease;font-weight:900}#screen-home .text-btn:hover .arrow-icon{transform:translate(0);opacity:1}#screen-home .about-link{position:absolute;left:80px;bottom:32px;padding:0;margin:0;background:none;border:none;outline:none;pointer-events:auto;cursor:none;z-index:10;font-size:.8rem;font-weight:500;letter-spacing:.08em;color:#0009}#screen-home .about-link:hover{color:#000}.release-notes-trigger{position:relative;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:none;background:#ffffff59;border-radius:12px;color:#0a0a0a;box-shadow:0 1px #0000000f;transition:background .2s,transform .15s,box-shadow .2s;z-index:12;pointer-events:auto}.release-notes-trigger:hover{background:#ffffff8c;transform:translateY(-1px);box-shadow:0 4px 14px #00000014}.release-notes-trigger:focus-visible{outline:2px solid #000;outline-offset:2px}.release-notes-trigger .release-notes-icon svg{width:22px;height:22px;display:block}.release-notes-badge{position:absolute;top:8px;right:8px;width:9px;height:9px;border-radius:50%;background:#ef4444;box-shadow:0 0 0 2px #fffffff2;pointer-events:none;display:none}.release-notes-badge.is-unread{display:block}#screen-home .release-notes-trigger--home{position:absolute;top:28px;right:36px}#screen-home .release-notes-trigger--home{cursor:pointer!important}@media(max-width:768px){#screen-home .release-notes-trigger--home{top:20px;right:20px;width:40px;height:40px}}.release-notes-modal{position:fixed;inset:0;z-index:10050;display:none;align-items:center;justify-content:center;padding:max(16px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));box-sizing:border-box}.release-notes-modal.is-open{display:flex}.release-notes-backdrop{position:absolute;inset:0;background:#0f172a73;-webkit-backdrop-filter:none;backdrop-filter:none}.release-notes-dialog{position:relative;width:min(92vw,760px);max-height:min(85vh,900px);overflow:hidden;display:flex;flex-direction:column;background:#fafafa;color:#0f172a;border-radius:18px;box-shadow:0 24px 80px #0f172a40,0 0 0 1px #0f172a0f;z-index:1;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Segoe UI,Roboto,sans-serif;contain:layout paint}.release-notes-close{position:absolute;top:14px;right:16px;width:40px;height:40px;border:none;border-radius:10px;background:transparent;color:#0f172a73;font-size:26px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s}.release-notes-close:hover{background:#0f172a0f;color:#0f172a}.release-notes-h2{margin:0;padding:28px 56px 12px 28px;font-size:clamp(1.25rem,2.8vw,1.6rem);font-weight:800;letter-spacing:.12em;color:#111827}.release-notes-body{overflow:auto;padding:0 28px 28px;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y;will-change:scroll-position;transform:translateZ(0)}.release-notes-section{margin-top:20px}.release-notes-section:first-child{margin-top:4px}.release-notes-h3{margin:0 0 12px;font-size:.95rem;font-weight:800;letter-spacing:.08em;text-transform:none;color:#111827;border-left:4px solid #f97316;padding-left:10px}.release-notes-body h2{margin:0 0 14px;color:#111827;font-size:1.1rem;font-weight:900;letter-spacing:.04em;border-left:4px solid #f97316;padding-left:10px}.release-notes-body a{color:#ea580c;font-weight:800;text-decoration-color:#f9731673;text-underline-offset:3px}.release-notes-body a:hover{color:#c2410c}.release-notes-ver{letter-spacing:.06em;text-transform:none;font-size:.95rem;font-weight:400;color:#0f172ab8}.release-notes-section--future .release-notes-h3{color:#b45309}.release-notes-section--future .release-notes-ver{color:#78350fd9}.release-notes-eta{margin:0 0 12px;font-size:.95rem;font-weight:400;letter-spacing:.04em;line-height:1.75;color:#78350fe0}.release-notes-eta--current{color:#ea580c;font-weight:700}.release-notes-compact{font-size:.95rem;line-height:1.72;color:#0f172ae0}.release-notes-compact p{margin:0 0 10px}.release-notes-compact p:last-child{margin-bottom:0}.release-notes-intro{margin:0 0 16px;font-size:.95rem;line-height:1.75;color:#111827}.release-notes-intro strong{color:#111827;font-weight:800}.release-notes-intro p{margin:0 0 12px}.release-notes-intro p:last-child{margin-bottom:0}.release-notes-list{margin:0;padding:0;font-size:.95rem;line-height:1.75;color:#111827}.release-notes-list li{margin-bottom:10px}.release-notes-list li:last-child{margin-bottom:0}.release-notes-ol{list-style:decimal;padding-left:1.35em}.release-notes-ol li{padding-left:.25em}.release-notes-section--future .release-notes-ol{color:#0f172ae0}.release-notes-table{width:100%;border-collapse:collapse;margin:12px 0;font-size:.88rem;line-height:1.4}.release-notes-table th,.release-notes-table td{border:1px solid rgba(15,23,42,.12);padding:8px 10px;text-align:left;vertical-align:top}.release-notes-table thead th{background:#0f172a0f;font-weight:700}.release-notes-table tbody td[colspan="4"]{background:#0f172a0d;font-weight:700;letter-spacing:.04em}.release-notes-list li>p{margin:0 0 10px}.release-notes-list li>p:last-child{margin-bottom:0}.metro-transfer-notice-modal{position:fixed;inset:0;z-index:10050;display:none;align-items:center;justify-content:center;padding:max(16px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(96px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));box-sizing:border-box;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Segoe UI,Roboto,sans-serif}.metro-transfer-notice-backdrop{position:absolute;inset:0;background:#0f172a6b;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.metro-transfer-notice-dialog{position:relative;width:min(94vw,720px);max-height:min(82vh,680px);overflow:auto;z-index:1;margin:0;padding:22px 24px 20px;background:#fafafa;color:#0f172a;border-radius:18px;border:1px solid rgba(15,23,42,.08);box-shadow:0 24px 80px #0f172a38,0 0 0 1px #0f172a0a;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.metro-transfer-notice-close{position:absolute;top:12px;right:12px;width:40px;height:40px;border:none;border-radius:10px;background:transparent;color:#0f172a6b;font-size:26px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s}.metro-transfer-notice-close:hover{background:#0f172a0f;color:#0f172a}.metro-transfer-notice-title{margin:0 0 14px;padding-right:36px;font-size:clamp(1.05rem,3.2vw,1.28rem);font-weight:800;letter-spacing:.06em;line-height:1.35;color:#0f172a}.metro-transfer-notice-body{margin:0 0 20px}.metro-transfer-notice-body>p{margin:0 0 12px;font-size:13px;line-height:1.68;letter-spacing:.03em;color:#0f172ad1}.metro-transfer-notice-body>p:last-child{margin-bottom:0}.metro-transfer-notice-subtitle{margin:18px 0 8px;font-size:14px;line-height:1.45;letter-spacing:.04em;color:#0f172a}.metro-transfer-notice-table-wrap{width:100%;overflow-x:auto;margin:8px 0 12px;-webkit-overflow-scrolling:touch}.metro-transfer-notice-table{min-width:560px;font-size:12px;background:#fff}.metro-transfer-notice-table th,.metro-transfer-notice-table td{white-space:nowrap}.metro-transfer-notice-note{font-size:12px!important;line-height:1.62!important;color:#0f172aad!important}.metro-transfer-notice-em{color:#0f172a;font-weight:700}.metro-transfer-notice-actions{display:flex;justify-content:stretch}.metro-transfer-notice-btn{flex:1;padding:12px 18px;font-size:13px;font-weight:600;letter-spacing:.1em;cursor:pointer;border:none;border-radius:12px;background:var(--accent,#1e293b);color:#fff;box-shadow:0 1px #ffffff1f inset;transition:transform .12s,opacity .15s,filter .15s}.metro-transfer-notice-btn:hover{filter:brightness(1.06);transform:translateY(-1px)}.metro-transfer-notice-btn:active{transform:translateY(0);filter:brightness(.98)}#screen-mosaic{position:fixed;inset:0;z-index:12100;background:transparent;overflow:hidden;pointer-events:none;opacity:0;transition:opacity .8s cubic-bezier(.16,1,.3,1)}#screen-mosaic.fade-out{opacity:0}#screen-mosaic .mosaic-grid{position:absolute;inset:0;display:grid;perspective:900px;transform:translateZ(0)}#screen-mosaic .mosaic-tile{position:relative;width:100%;height:100%;transform-origin:center;transform-style:preserve-3d;transform:translateZ(0) rotateY(0);will-change:transform;transition:transform .95s cubic-bezier(.16,1,.3,1);transition-delay:var(--delay-in,0ms)}#screen-mosaic .mosaic-face{position:absolute;inset:0;backface-visibility:hidden}#screen-mosaic .mosaic-face.front{background:transparent}#screen-mosaic .mosaic-face.back{background:var(--tile-color,#000);transform:rotateY(180deg)}#screen-mosaic.phase-in .mosaic-tile{transform:translateZ(0) rotateY(180deg);transition-delay:var(--delay-in,0ms)}#screen-mosaic.phase-out .mosaic-tile{transform:translateZ(0) rotateY(0);transition-delay:var(--delay-out,0ms)}@keyframes fadeUp{to{opacity:1;transform:translateY(0)}}@media(max-width:768px){#screen-home .ui-container{left:30px;bottom:50px}#screen-home .main-title{font-size:2.5rem;letter-spacing:.2em;font-weight:900}#screen-home .about-link{left:30px;bottom:24px}}#screen-login .login-arrow-btn:hover .login-arrow-icon{transform:translate(10px);opacity:.96}#screen-login .remember-checkbox-wrapper{display:flex;align-items:center;gap:8px;cursor:pointer}#screen-login .remember-checkbox{position:absolute;opacity:0;width:0;height:0}#screen-login .remember-visual{width:20px;height:20px;border-radius:5px;border:1px solid rgba(248,250,252,.6);box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;background:transparent;transition:background-color .22s cubic-bezier(.16,1,.3,1),border-color .22s cubic-bezier(.16,1,.3,1)}#screen-login .remember-visual svg{width:14px;height:14px}#screen-login .remember-visual path{stroke-dasharray:18;stroke-dashoffset:18;transition:stroke-dashoffset .22s cubic-bezier(.16,1,.3,1)}#screen-login .remember-checkbox:checked+.remember-visual{background-color:#f8fafc26;border-color:#f8fafce6}#screen-login .remember-checkbox:checked+.remember-visual path{stroke-dashoffset:0}#screen-login .login-inner{position:absolute;left:80px;top:50%;transform:translateY(-50%);max-width:760px;width:min(70%,calc(100% - 160px));min-width:0;box-sizing:border-box;padding-right:16px}@media(max-width:768px){#screen-login .login-inner{left:max(16px,env(safe-area-inset-left));right:max(16px,env(safe-area-inset-right));width:auto;max-width:none;padding-right:0;transform:translateY(-46%)}#screen-login #login-home-btn{left:max(14px,env(safe-area-inset-left))!important;top:max(14px,env(safe-area-inset-top))!important}.login-form-email-row,.login-form-code-row{flex-direction:column!important;align-items:stretch!important;gap:16px!important;margin-bottom:16px!important}.login-form-email-row input[data-role=email],.login-form-code-row input[data-role=code]{font-size:clamp(26px,7.5vw,40px)!important;line-height:1.15!important}.login-form-code-row input[data-role=code]{width:100%!important;max-width:100%!important}.login-arrow-btn .login-arrow-icon{width:48px!important;height:48px!important}.login-arrow-btn .login-arrow-icon svg{width:48px!important;height:48px!important}}#screen-login-swipe{position:fixed;inset:0;width:100%;height:100%;z-index:9800;display:none;background:transparent;color:#f9fafb;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}#screen-login-swipe.metro-login-swipe-open{display:block!important;position:fixed!important;inset:0!important;width:100vw!important;height:100vh!important;max-width:100vw!important;max-height:100vh!important;overflow:hidden!important;box-sizing:border-box!important}#screen-login-swipe #lanyard-root{position:absolute!important;inset:0!important;width:100%!important;height:100%!important}#screen-login-swipe .lanyard-wrapper{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;min-height:100vh!important}#screen-login-swipe .lanyard-target{position:absolute!important;top:28px!important;right:28px!important;width:240px!important;height:300px!important;border-radius:16px!important;border:2px solid rgba(255,255,255,.98)!important;background:transparent!important;box-shadow:none!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:flex-start!important;padding-top:28px!important;gap:12px!important;color:#fff!important;pointer-events:none!important;z-index:9999!important}#screen-login-swipe .lanyard-target-label{font-size:20px!important;font-weight:700!important;letter-spacing:.2em!important;color:#fff!important}@media(max-width:768px){#screen-login-swipe .lanyard-target{top:max(12px,env(safe-area-inset-top))!important;right:max(12px,env(safe-area-inset-right))!important;width:min(220px,calc(100vw - 32px))!important;height:min(280px,42vh)!important;padding-top:20px!important}#screen-login-swipe .lanyard-target-label{font-size:16px!important;letter-spacing:.12em!important}}#screen-login-swipe .lanyard-inner,#screen-login-swipe .swipe-inner{position:relative;width:100%;height:100%}#screen-login-swipe .swipe-target{position:absolute;top:32px;right:32px;width:96px;height:96px;border-radius:16px;border:2px dashed rgba(248,250,252,.85);box-shadow:0 0 24px #f8fafc59;display:flex;align-items:center;justify-content:center;font-size:12px;letter-spacing:.3em;text-transform:uppercase;pointer-events:none}#screen-login-swipe .swipe-card{position:absolute;left:50%;top:0;width:210px;height:130px;margin-left:-105px;border-radius:18px;background:linear-gradient(145deg,#f97316,#ea580c);box-shadow:0 20px 50px #0f172acc;display:flex;align-items:center;justify-content:center;color:#f9fafb;cursor:grab;transform:translateZ(0);animation:swipeCardDrop .85s cubic-bezier(.16,1,.3,1) forwards}#screen-login-swipe .swipe-card:active{cursor:grabbing}#screen-login-swipe .swipe-card-front{font-weight:600;letter-spacing:.22em;text-transform:uppercase;font-size:12px}@keyframes swipeCardDrop{0%{transform:translate3d(0,-80vh,0)}to{transform:translate3d(0,38vh,0)}}#screen-swipe-success{position:fixed;inset:0;z-index:13000;display:none;align-items:center;justify-content:center;background:#000000bf;pointer-events:none}#screen-swipe-success.show{display:flex;animation:swipeSuccessBgIn .4s ease-out forwards}#screen-swipe-success .swipe-success-circle{--circle-size: clamp(44px, 12vw, 64px);width:var(--circle-size);height:var(--circle-size);border-radius:50%;background:#ffb300;border:none;box-shadow:none;display:flex;align-items:center;justify-content:center;padding:0;box-sizing:border-box;transform:translateY(100vh);opacity:0;overflow:hidden}#screen-swipe-success .swipe-success-mark{display:none}#screen-swipe-success .swipe-success-check{width:70%;height:70%;flex-shrink:0;display:block}#screen-swipe-success.show .swipe-success-circle{animation:swipeSuccessCheckSlide .55s cubic-bezier(.16,1,.3,1) .1s forwards}@keyframes swipeSuccessBgIn{0%{opacity:0}to{opacity:1}}@keyframes swipeSuccessCheckSlide{0%{transform:translateY(100vh);opacity:0}to{transform:translateY(0);opacity:1}}#screen-about{display:none!important;pointer-events:none!important;visibility:hidden!important;position:fixed;inset:0;z-index:9500;background:#f9fafb;color:#020617;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;overflow:hidden;display:none;will-change:transform,opacity;transform:translateY(0);opacity:1}#screen-about .about-bg-word{position:absolute;bottom:-16.5%;right:-4%;font-size:22vw;font-weight:900;letter-spacing:-.06em;color:#0f172a0d;pointer-events:none}#screen-about .about-inner{position:absolute;left:80px;bottom:80px;max-width:520px}#screen-about .about-subtitle{font-size:.8rem;font-weight:700;letter-spacing:.24em;text-transform:uppercase;opacity:.6;margin-bottom:.75rem}#screen-about .about-title{font-weight:900;font-size:clamp(2rem,3vw,3.2rem);letter-spacing:.34em;text-transform:uppercase;margin-right:-.34em}#screen-about .about-section{margin-top:2rem}#screen-about .about-section h2{font-size:.95rem;letter-spacing:.12em;text-transform:uppercase;margin-bottom:.75rem;color:#020617}#screen-about .about-section p{font-size:.85rem;line-height:1.7;color:#0f172acc}.about-action-btn{margin-right:10px;margin-bottom:8px;padding:6px 14px;border-radius:999px;border:1px solid rgba(148,163,184,.8);background:transparent;color:#0f172a;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;cursor:pointer}.about-action-btn:hover{background:#94a3b829}#screen-about .about-section+.about-section{margin-top:1.5rem}#screen-about .about-legal-links{margin-top:1.5rem;font-size:.75rem;letter-spacing:.08em;color:#0f172a99}#screen-about .about-legal-links a{color:#0f172acc;text-decoration:none;cursor:pointer}#screen-about .about-legal-links a:hover{color:#020617;text-decoration:underline}.about-scroll-hint{margin-top:2.2rem;font-size:.75rem;letter-spacing:.16em;text-transform:uppercase;color:#0f172a8c;display:flex;align-items:center;gap:10px;background:none;border:none;padding:0;cursor:pointer;text-align:left}.about-scroll-hint-arrow{font-size:1.6rem;font-weight:900;line-height:1}.about-scroll-hint-text{flex:1}#screen-about .about-close{position:absolute;top:32px;right:40px;padding:0;background:none;border:none;outline:none;font-size:.8rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:#0f172ab3!important;cursor:none}#screen-about .about-close:hover{color:#020617}@media(max-width:768px){#screen-about .about-inner{left:30px;right:24px;bottom:48px;max-width:none}}#screen-game-menu{position:fixed;inset:0;z-index:9500;background:#064dbc;background-image:linear-gradient(180deg,#064dbc,#2f8fe3 42%,#b7d7ef 78%,#ffe8b3);background-size:100% 360vh;background-repeat:no-repeat;background-attachment:local;color:#020617;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;overflow:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;display:none;place-items:center;isolation:isolate;will-change:scroll-position;transform:translateZ(0)}#screen-game-menu:before,#screen-game-menu:after{content:"";position:absolute;left:0;right:0;top:0;height:max(100%,360vh);pointer-events:none}#screen-game-menu:before{z-index:0;background:linear-gradient(180deg,#064dbceb,#2f8fe3c2 42%,#b7d7ef7a 78%,#ffe8b324)}#screen-game-menu:after{z-index:1;background:#ffffff0e}#screen-game-menu.sky-clear:before{background:linear-gradient(180deg,#0650bd,#1f7fdc 38%,#8bc4ef 68%,#e8f5ff)}#screen-game-menu.sky-clear{background:#e8f5ff;background-image:linear-gradient(180deg,#0650bd,#1f7fdc 38%,#8bc4ef 68%,#e8f5ff);background-size:100% 360vh}#screen-game-menu.sky-sunset:before{background:linear-gradient(180deg,#0b46b4,#378beb 36%,#ef7d22 66%,#f3b45d)}#screen-game-menu.sky-sunset{background:#f3b45d;background-image:linear-gradient(180deg,#0b46b4,#378beb 36%,#ef7d22 66%,#f3b45d);background-size:100% 360vh}#screen-game-menu.sky-dusk:before{background:linear-gradient(180deg,#04093b,#223f83 34%,#cc6579 66%,#ffb046)}#screen-game-menu.sky-dusk{background:#ffb046;background-image:linear-gradient(180deg,#04093b,#223f83 34%,#cc6579 66%,#ffb046);background-size:100% 360vh}#screen-game-menu.sky-cruise:before{background:linear-gradient(180deg,#05285f,#0759b1 44%,#5ba6dc,#d3e8f6)}#screen-game-menu.sky-cruise{background:#d3e8f6;background-image:linear-gradient(180deg,#05285f,#0759b1 44%,#5ba6dc,#d3e8f6);background-size:100% 360vh}#screen-game-menu.sky-afterglow:before{background:linear-gradient(180deg,#000836,#094ca6 35%,#f15b2a 62%,#f8c76a)}#screen-game-menu.sky-afterglow{background:#f8c76a;background-image:linear-gradient(180deg,#000836,#094ca6 35%,#f15b2a 62%,#f8c76a);background-size:100% 360vh}#screen-game-menu.sky-polar:before{background:linear-gradient(180deg,#102f63,#6ca6c7 36%,#e7f3f6 66%,#c9b5ad)}#screen-game-menu.sky-polar{background:#c9b5ad;background-image:linear-gradient(180deg,#102f63,#6ca6c7 36%,#e7f3f6 66%,#c9b5ad);background-size:100% 360vh}#screen-game-menu.sky-cyan:before{background:linear-gradient(180deg,#178f99,#1bb8c9 42%,#82dce6 72%,#e5f7f7)}#screen-game-menu.sky-cyan{background:#e5f7f7;background-image:linear-gradient(180deg,#178f99,#1bb8c9 42%,#82dce6 72%,#e5f7f7);background-size:100% 360vh}#screen-game-menu.sky-rose:before{background:linear-gradient(180deg,#252b6f,#8e5a83 36%,#ff7664 63%,#ffb743)}#screen-game-menu.sky-rose{background:#ffb743;background-image:linear-gradient(180deg,#252b6f,#8e5a83 36%,#ff7664 63%,#ffb743);background-size:100% 360vh}#screen-game-menu.sky-haze:before{background:linear-gradient(180deg,#14334b,#506f7d 42%,#b9c9ca 72%,#e2b09b)}#screen-game-menu.sky-haze{background:#e2b09b;background-image:linear-gradient(180deg,#14334b,#506f7d 42%,#b9c9ca 72%,#e2b09b);background-size:100% 360vh}#screen-game-menu.sky-nightfall:before{background:linear-gradient(180deg,#00042d,#003b8f 42%,#006fc7 65%,#f1c6a2)}#screen-game-menu.sky-nightfall{background:#f1c6a2;background-image:linear-gradient(180deg,#00042d,#003b8f 42%,#006fc7 65%,#f1c6a2);background-size:100% 360vh}#screen-game-menu .game-menu-top-actions{position:absolute;z-index:5;top:24px;right:32px;display:flex;align-items:center;gap:12px}#screen-game-menu .release-notes-trigger--menu{background:#06070a75;border:1px solid rgba(255,255,255,.22);box-shadow:0 14px 30px #0000001f,inset 0 1px #ffffff1f;color:#f8fafc;backdrop-filter:blur(18px) saturate(.82);-webkit-backdrop-filter:blur(18px) saturate(.82)}#screen-game-menu .release-notes-trigger--menu:hover{border-color:#ffffff5c;background:#06070a9e}#screen-game-menu .release-notes-trigger--menu .release-notes-badge{box-shadow:0 0 0 2px #06070a9e}#screen-game-menu .game-menu-metrics-link{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:10px;background:#06070a75;border:1px solid rgba(255,255,255,.22);box-shadow:0 14px 30px #0000001f,inset 0 1px #ffffff1f;color:#f8fafc;text-decoration:none;backdrop-filter:blur(18px) saturate(.82);-webkit-backdrop-filter:blur(18px) saturate(.82)}#screen-game-menu .game-menu-metrics-link:hover{border-color:#ffffff5c;background:#06070a9e}#screen-game-menu .game-menu-inner{position:relative;z-index:2;left:auto;top:auto;transform:none;max-width:548px;width:min(548px,calc(100vw - 88px));min-height:220vh;overflow:visible;padding:240px 0 280px;box-sizing:border-box;--game-menu-controls-max:100%;scrollbar-width:none;display:flex;flex-direction:column;align-items:stretch;contain:layout paint}#screen-game-menu .game-menu-inner::-webkit-scrollbar{display:none}#screen-game-menu .game-menu-contact-note{margin:12px 0 0;font-size:.76rem;line-height:1.7;color:#0f172a9e;max-width:520px}#screen-game-menu .game-menu-section-row{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;align-items:stretch;margin-top:22px}#screen-game-menu .game-menu-section-row:first-child{z-index:20}#screen-game-menu .game-menu-section{width:100%;margin-top:0;box-sizing:border-box;padding:22px 24px;color:#111827;background:#f8fafc70;border:1px solid rgba(255,255,255,.62);border-radius:22px;backdrop-filter:blur(10px) saturate(.9);-webkit-backdrop-filter:blur(10px) saturate(.9);box-shadow:0 18px 38px #0000001f,inset 0 1px #ffffff7a;height:100%;content-visibility:auto;contain-intrinsic-size:240px}#screen-game-menu .game-menu-profile-section{min-height:210px;display:flex;flex-direction:column;justify-content:space-between}#screen-game-menu .game-menu-profile-title{font-family:Frutiger,Avenir Next,Avenir,Helvetica,Arial,-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif;font-size:34px;line-height:.95;font-weight:400;letter-spacing:0;color:#020617}#screen-game-menu .game-menu-profile-bottom h2{margin-bottom:8px}#screen-game-menu .game-menu-section-row:nth-of-type(2n) .game-menu-section:nth-child(2),#screen-game-menu .game-menu-section-cloud{background:#e5e7eb6b;border-color:#ffffff8f}#screen-game-menu .game-menu-section-row:nth-of-type(2n) .game-menu-section:nth-child(1){color:#f8fafc;background:#06070ac7;border-color:#ffffff3d;box-shadow:0 18px 38px #00000029,inset 0 1px #ffffff1a}#screen-game-menu .game-menu-section-cloud,#screen-game-menu .game-menu-section-share{margin-top:22px;height:auto}#screen-game-menu .game-menu-section h2{font-family:Frutiger,Avenir Next,Avenir,Helvetica,Arial,-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif;font-size:18px;font-weight:400;letter-spacing:0;text-transform:none;margin-bottom:.75rem;color:#020617}#screen-game-menu .game-menu-section-row:nth-of-type(2n) .game-menu-section:nth-child(1) h2,#screen-game-menu .game-menu-section-row:nth-of-type(2n) .game-menu-section:nth-child(1) .game-menu-profile,#screen-game-menu .game-menu-section-row:nth-of-type(2n) .game-menu-section:nth-child(1) .game-menu-setting-label,#screen-game-menu .game-menu-section-row:nth-of-type(2n) .game-menu-section:nth-child(1) .game-menu-save-flow-option,#screen-game-menu .game-menu-section-row:nth-of-type(2n) .game-menu-section:nth-child(1) .game-menu-save-size{color:#ffffffc7}#screen-game-menu .game-menu-profile{font-size:.85rem;line-height:1.6;color:#0f172acc}#screen-game-menu .game-menu-save-flow-option{display:flex;align-items:center;justify-content:center;gap:7px;font-size:.72rem;line-height:1.32;text-align:center;color:#0f172ad1;background:#ffffff57;border:1px solid rgba(255,255,255,.46);border-radius:13px;padding:7px 9px;box-sizing:border-box}#screen-game-menu .game-menu-save-flow-option-body{display:flex;flex-direction:column;align-items:center;gap:4px}#screen-game-menu .game-menu-save-flow-option input{margin:0}#screen-game-menu .game-menu-save-size{font-size:.76rem;line-height:1.35;color:#0f172ab8}#screen-game-menu .game-menu-share-box{display:flex;flex-direction:column;gap:10px;padding:12px;box-sizing:border-box;background:#ffffffc2;border:1px solid rgba(15,23,42,.12);border-radius:10px}#screen-game-menu .game-menu-share-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}#screen-game-menu .game-menu-share-visibility{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:3px;border:1px solid rgba(15,23,42,.12);border-radius:999px;background:#f8fafce6}#screen-game-menu .game-menu-share-visibility-btn{min-width:0;border:0;border-radius:999px;padding:7px 10px;background:transparent;color:#0f172a9e;font-size:.76rem;font-weight:700;letter-spacing:.04em;cursor:pointer}#screen-game-menu .game-menu-share-visibility-btn.active{background:#0f172a;color:#fff}#screen-game-menu .game-menu-share-code-input{width:100%;min-width:0;box-sizing:border-box;padding:12px 14px;border-radius:10px;border:1px solid rgba(15,23,42,.14);background:#fff;color:#020617;font:600 .9rem/1.3 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.08em;text-transform:uppercase;outline:none}#screen-game-menu .game-menu-share-code-input::placeholder{color:#0f172a5c;font-family:inherit;letter-spacing:.08em}#screen-game-menu .game-menu-share-code-input:focus{border-color:#0ea5e97a;box-shadow:0 0 0 3px #0ea5e91f}#screen-game-menu .game-menu-btns{display:flex;flex-direction:column;align-items:stretch;gap:9px;margin-top:.62rem;width:100%;max-width:min(var(--game-menu-controls-max),100%)}#screen-game-menu .game-menu-cloud-panel{width:100%;box-sizing:border-box;border:0;background:transparent;border-radius:0;padding:0}#screen-game-menu .game-menu-cloud-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}#screen-game-menu .game-menu-cloud-title{font-family:Frutiger,Avenir Next,Avenir,Helvetica,Arial,-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif;font-size:18px;font-weight:400;letter-spacing:0;color:#020617;margin:0}#screen-game-menu .game-menu-cloud-rows{display:flex;flex-direction:column;gap:8px;contain:layout paint}#screen-game-menu .game-menu-cloud-empty{padding:12px;border:1px dashed rgba(255,255,255,.35);border-radius:16px;color:#0f172a9e;font-size:.82rem;text-align:center}#screen-game-menu .game-menu-cloud-row{display:grid;grid-template-columns:minmax(118px,.72fr) minmax(142px,.78fr) minmax(150px,.62fr);gap:10px;align-items:center;min-height:72px;padding:12px;border:1px solid rgba(255,255,255,.5);border-radius:18px;background:#f8fafc6b;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:0 14px 30px #0000001a,inset 0 1px #ffffff57;box-sizing:border-box;transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease;content-visibility:auto;contain:layout paint;contain-intrinsic-size:72px}#screen-game-menu .game-menu-cloud-row.is-clickable{cursor:pointer}#screen-game-menu .game-menu-cloud-row.is-clickable:hover{border-color:#0ea5e96b;background:#f0f9ff94;box-shadow:0 16px 34px #0ea5e91f,inset 0 1px #ffffff6b}#screen-game-menu .game-menu-cloud-row.is-selected .game-menu-cloud-slot-label,#screen-game-menu .game-menu-cloud-row.is-loading .game-menu-cloud-slot-label{color:#fff}#screen-game-menu .game-menu-cloud-row.is-selected .game-menu-cloud-slot-meta,#screen-game-menu .game-menu-cloud-row.is-loading .game-menu-cloud-slot-meta,#screen-game-menu .game-menu-cloud-row.is-selected .game-menu-cloud-slot-note,#screen-game-menu .game-menu-cloud-row.is-loading .game-menu-cloud-slot-note{color:#ffffffc2}#screen-game-menu .game-menu-cloud-row:nth-child(2n){background:#e5e7eb6b}#screen-game-menu .game-menu-cloud-row:nth-child(3n){color:#f8fafc;background:#06070ab8;border-color:#ffffff38;box-shadow:0 14px 30px #00000024,inset 0 1px #ffffff1a}#screen-game-menu .game-menu-cloud-row.is-selected,#screen-game-menu .game-menu-cloud-row.is-loading{color:#fff;background:#0e7490db;border-color:#ffffff75;box-shadow:0 18px 38px #0e74903d,inset 0 1px #fff3}#screen-game-menu .game-menu-cloud-slot-main{min-width:0}#screen-game-menu .game-menu-cloud-slot-label{font-size:.86rem;font-weight:700;color:#0f172a;line-height:1.2}#screen-game-menu .game-menu-cloud-slot-meta{margin-top:4px;font-size:.72rem;line-height:1.3;color:#0f172a99;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#screen-game-menu .game-menu-cloud-slot-note{min-width:0;font-size:.78rem;font-weight:700;color:#0f172a9e}#screen-game-menu .game-menu-cloud-row:nth-child(3n) .game-menu-cloud-slot-note{color:#ffffffa3}#screen-game-menu .game-menu-cloud-row:nth-child(3n) .game-menu-cloud-slot-label{color:#fff}#screen-game-menu .game-menu-cloud-row:nth-child(3n) .game-menu-cloud-slot-meta{color:#ffffff94}#screen-game-menu .game-menu-cloud-code-wrap{display:grid;grid-template-columns:minmax(0,1fr) 34px;gap:6px;align-items:center;min-width:0}#screen-game-menu .game-menu-cloud-code-field{position:relative;min-width:0}#screen-game-menu .game-menu-cloud-code-input{width:100%;min-width:0;height:34px;box-sizing:border-box;border:1px solid rgba(255,255,255,.44);border-radius:12px;background:#ffffff8f;color:#020617;padding:0 34px 0 9px;font:700 .78rem/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.08em;text-transform:uppercase;outline:none}#screen-game-menu .game-menu-load-code-row .game-menu-cloud-code-input{height:30px;border-radius:18px;font-size:.72rem;padding-left:8px}#screen-game-menu .game-menu-cloud-copy-btn{position:absolute;right:4px;top:50%;transform:translateY(-50%);width:24px;height:24px;border:0;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;background:#fff6;color:#0f172a;cursor:pointer;padding:0}#screen-game-menu .game-menu-cloud-copy-btn svg,#screen-game-menu .game-menu-icon-btn svg{width:15px;height:15px;display:block}#screen-game-menu .game-menu-cloud-copy-btn:hover{background:#ffffffb3}#screen-game-menu .game-menu-cloud-code-input:focus{border-color:#0ea5e97a;box-shadow:0 0 0 3px #0ea5e91c}#screen-game-menu .game-menu-cloud-row:nth-child(3n) .game-menu-cloud-code-input{color:#f8fafc;background:#ffffff1a;border-color:#fff3}#screen-game-menu .game-menu-cloud-row:nth-child(3n) .game-menu-cloud-code-input::placeholder{color:#ffffff61}#screen-game-menu .game-menu-cloud-row-actions{display:grid;grid-template-columns:34px 34px 34px;gap:6px;justify-content:end;align-items:center;min-width:0}#screen-game-menu .game-menu-share-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px}#screen-game-menu .game-menu-load-code-row{width:100%;display:grid;grid-template-columns:minmax(0,1fr) 34px;gap:8px;align-items:center}#screen-game-menu .game-menu-share-row{display:flex;flex-direction:column;align-items:stretch;gap:8px;min-height:0}#screen-game-menu .game-menu-share-topline{min-width:0;display:grid;grid-template-columns:minmax(0,1fr);gap:5px}#screen-game-menu .game-menu-share-bottomline{min-width:0;display:grid;grid-template-columns:minmax(168px,1fr) auto;gap:8px;align-items:center}#screen-game-menu .game-menu-share-row .game-menu-cloud-code-wrap{grid-template-columns:minmax(0,1fr)}#screen-game-menu .game-menu-share-name-input{width:100%;min-width:0;height:34px;box-sizing:border-box;border:1px solid rgba(255,255,255,.46);border-radius:12px;background:#ffffff80;color:#0f172a;padding:0 10px;font-size:.82rem;font-weight:700;outline:none}#screen-game-menu .game-menu-share-name-input:focus{border-color:#0ea5e980;box-shadow:0 0 0 3px #0ea5e91c}#screen-game-menu .game-menu-cloud-row:nth-child(3n) .game-menu-share-name-input{color:#f8fafc;background:#ffffff1a;border-color:#fff3}#screen-game-menu .game-menu-share-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;white-space:nowrap}#screen-game-menu .game-menu-share-mode-btn{width:34px;height:34px;min-width:34px;border:1px solid rgba(255,255,255,.42);border-radius:999px;background:#ffffff57;color:#0f172a85;padding:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;transition:background .16s ease,color .16s ease,border-color .16s ease,box-shadow .16s ease}#screen-game-menu .game-menu-share-mode-btn:hover{color:#0f172a;background:#ffffff8f}#screen-game-menu .game-menu-share-mode-btn.is-active{color:#fff;background:#111827;border-color:#111827c7;box-shadow:inset 0 0 0 1px #ffffff14}#screen-game-menu .game-menu-share-mode-btn svg{width:15px;height:15px;display:block}#screen-game-menu .game-menu-cloud-row:nth-child(3n) .game-menu-share-mode-btn{color:#ffffff7a;background:#ffffff14;border-color:#fff3}#screen-game-menu .game-menu-cloud-row:nth-child(3n) .game-menu-share-mode-btn.is-active{color:#111827;background:#fff;border-color:#ffffffc7}#screen-game-menu .game-menu-visibility-toggle{position:relative;width:76px;height:34px;border:1px solid rgba(255,255,255,.46);border-radius:999px;background:#ffffff75;display:grid;grid-template-columns:1fr 1fr;align-items:center;overflow:hidden;box-sizing:border-box}#screen-game-menu .game-menu-visibility-toggle:before{content:"";position:absolute;top:3px;bottom:3px;left:3px;width:calc(50% - 3px);border-radius:999px;background:#111827;transition:transform .18s ease,background .18s ease}#screen-game-menu .game-menu-visibility-toggle.is-public:before{transform:translate(100%);background:#fff}#screen-game-menu .game-menu-visibility-btn{position:relative;z-index:1;border:0;background:transparent;color:#0f172a;display:inline-flex;align-items:center;justify-content:center;width:100%;height:100%;padding:0;cursor:pointer}#screen-game-menu .game-menu-visibility-btn svg{width:14px;height:14px;display:block}#screen-game-menu .game-menu-visibility-toggle:not(.is-public) .game-menu-visibility-btn:first-child{color:#fff}#screen-game-menu .game-menu-visibility-toggle.is-public .game-menu-visibility-btn:last-child{color:#111827}#screen-game-menu .game-menu-icon-btn{width:34px;height:34px;padding:0;display:inline-flex;align-items:center;justify-content:center}#screen-game-menu .game-menu-mini-btn{width:34px;height:34px;min-width:0;border:1px solid rgba(255,255,255,.46);border-radius:999px;background:#ffffff75;color:#0f172a;padding:0;font-size:.72rem;font-weight:700;line-height:1;cursor:pointer;white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;vertical-align:middle}#screen-game-menu .game-menu-mini-btn svg{width:15px;height:15px;display:block}#screen-game-menu .game-menu-mini-btn-text{width:auto;min-width:0;padding:0 12px;border-radius:14px}#screen-game-menu .game-menu-mini-btn:hover{border-color:#ffffffb8;background:#ffffffa3}#screen-game-menu .game-menu-mini-btn-primary,#screen-game-menu .game-menu-mini-btn.is-active{background:#06070adb;border-color:#ffffff3d;color:#fff}#screen-game-menu .game-menu-mini-btn-danger{color:#b91c1c;border-color:#b91c1c38}#screen-game-menu .game-menu-mini-btn-danger:hover{background:#fef2f2;border-color:#b91c1c61}#screen-game-menu .game-menu-cloud-row:nth-child(3n) .game-menu-mini-btn{color:#f8fafc;background:#ffffff1a;border-color:#ffffff2e}#screen-game-menu .game-menu-cloud-row:nth-child(3n) .game-menu-mini-btn:hover{background:#ffffff29;border-color:#ffffff52}#screen-game-menu .game-menu-cloud-row:nth-child(3n) .game-menu-mini-btn-primary,#screen-game-menu .game-menu-cloud-row:nth-child(3n) .game-menu-mini-btn.is-active{background:#ffffffdb;border-color:#ffffff6b;color:#06070a}#screen-game-menu .game-menu-cloud-row.is-selected .game-menu-mini-btn,#screen-game-menu .game-menu-cloud-row.is-loading .game-menu-mini-btn{color:#fff;background:#ffffff24;border-color:#ffffff4d}#screen-game-menu .game-menu-cloud-row.is-selected .game-menu-mini-btn-primary,#screen-game-menu .game-menu-cloud-row.is-loading .game-menu-mini-btn-primary{color:#0f172a;background:#ffffffe0;border-color:#ffffffb3}#screen-game-menu .game-menu-cloud-row:nth-child(3n) .game-menu-cloud-copy-btn{color:#f8fafc;background:#ffffff14}#screen-game-menu .game-menu-cloud-row:nth-child(3n) .game-menu-visibility-toggle{background:#ffffff1a;border-color:#ffffff2e}#screen-game-menu .game-menu-btn{display:inline-flex;align-items:center;justify-content:center;width:100%;max-width:100%;min-width:0;box-sizing:border-box;padding:9px 12px;min-height:34px;font-size:.76rem;font-weight:600;letter-spacing:.04em;color:#020617;background:#fff;border:1px solid rgba(15,23,42,.1);border-radius:10px;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,border-color .2s,background .2s;position:relative;overflow:hidden;box-shadow:0 1px 3px #0f172a0f}#screen-game-menu .game-menu-settings{margin-top:.62rem;display:flex;flex-direction:column;gap:9px;width:100%;max-width:min(var(--game-menu-controls-max),100%)}#screen-game-menu .game-menu-setting-row{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;box-sizing:border-box}#screen-game-menu .game-menu-setting-label{font-size:.76rem;color:#0f172acc;min-width:0;flex:1;padding-right:8px}#screen-game-menu .game-menu-help{position:relative;display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;margin-left:6px;border-radius:50%;border:1px solid rgba(15,23,42,.28);color:#0f172abd;font-size:11px;font-weight:700;line-height:1;cursor:help;user-select:none}#screen-game-menu .game-menu-help-tooltip{position:absolute;left:0;top:calc(100% + 8px);transform:none;width:min(320px,calc(100vw - 24px));background:#0f172aeb;color:#fffffff0;border:1px solid rgba(255,255,255,.15);border-radius:8px;padding:8px 10px;font-size:11px;line-height:1.45;letter-spacing:.01em;box-shadow:0 8px 20px #02061759;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .12s ease,visibility .12s ease;z-index:5}#screen-game-menu .game-menu-help:hover .game-menu-help-tooltip,#screen-game-menu .game-menu-help:focus .game-menu-help-tooltip,#screen-game-menu .game-menu-help:focus-visible .game-menu-help-tooltip{opacity:1;visibility:visible}#screen-game-menu .game-menu-toggle-capsule{display:inline-flex;flex-shrink:0;padding:1px;border-radius:999px;border:1px solid rgba(15,23,42,.14);background:#ffffffbf}#screen-game-menu .game-menu-toggle-item{border:none;background:transparent;color:#0f172a99;font-size:.68rem;font-weight:600;letter-spacing:.03em;padding:4px 8px;line-height:1.2;border-radius:999px;cursor:pointer;transition:background .18s ease,color .18s ease}#screen-game-menu .game-menu-toggle-item.active{background:#0f172a;color:#fff}#screen-game-menu .game-menu-toggle-item:hover{color:#0f172a}#screen-game-menu .game-menu-setting-select{flex-shrink:0;min-width:0;max-width:62%;padding:4px 9px;border-radius:999px;border:1px solid rgba(15,23,42,.14);background:#ffffffe6;color:#0f172ab8;font-size:.68rem;font-weight:600;letter-spacing:.03em;cursor:pointer;outline:none;transition:border-color .18s ease,box-shadow .18s ease}#screen-game-menu .game-menu-setting-select:hover,#screen-game-menu .game-menu-setting-select:focus{border-color:#0f172a4d;box-shadow:0 0 0 2px #0f172a1f}#screen-game-menu .game-menu-timezone-picker{position:relative;z-index:80;flex-shrink:0;min-width:0;max-width:62%;width:min(220px,62%)}#screen-game-menu .game-menu-timezone-input{width:100%;box-sizing:border-box;padding:4px 9px;border-radius:999px;border:1px solid rgba(15,23,42,.14);background:#ffffffe6;color:#0f172ad1;font-size:.68rem;font-weight:600;letter-spacing:.02em;outline:none;transition:border-color .18s ease,box-shadow .18s ease}#screen-game-menu .game-menu-timezone-input::placeholder{color:#0f172a61;font-weight:500}#screen-game-menu .game-menu-timezone-input:hover,#screen-game-menu .game-menu-timezone-input:focus{border-color:#0f172a4d;box-shadow:0 0 0 2px #0f172a1f}#screen-game-menu .game-menu-timezone-suggestions{position:absolute;right:0;left:0;top:calc(100% + 6px);z-index:1000;max-height:min(280px,42vh);overflow:auto;border-radius:12px;border:1px solid rgba(15,23,42,.12);background:#fff;box-shadow:0 10px 28px #0f172a24}#screen-game-menu .game-menu-timezone-suggestions.is-open{display:block}#screen-game-menu .game-menu-timezone-suggestion{display:block;width:100%;box-sizing:border-box;text-align:left;padding:8px 12px;font-size:.76rem;line-height:1.35;color:#0f172adb;cursor:pointer;border:none;border-bottom:1px solid rgba(15,23,42,.06);background:transparent;font-family:inherit}#screen-game-menu .game-menu-timezone-suggestion:last-child{border-bottom:none}#screen-game-menu .game-menu-timezone-suggestion:hover,#screen-game-menu .game-menu-timezone-suggestion.is-active{background:#0ea5e914}#screen-game-menu .game-menu-timezone-suggestion-empty{padding:10px 12px;font-size:.74rem;color:#0f172a73}#screen-game-menu .game-menu-btn:before{content:none;position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,#64748b,#94a3b8);border-radius:10px 0 0 10px;transition:width .2s ease}#screen-game-menu .game-menu-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0f172a1f;border-color:#0f172a2e;background:#fafafa}#screen-game-menu .game-menu-btn:hover:before{width:0}#screen-game-menu .game-menu-btn-primary:before{background:linear-gradient(180deg,#0ea5e9,#38bdf8)}#screen-game-menu .game-menu-btn-primary:hover{border-color:#0ea5e959;background:#0ea5e90a}#screen-game-menu .game-menu-btn-accent:before{background:linear-gradient(180deg,#f59e0b,#fbbf24)}#screen-game-menu .game-menu-btn-accent:hover{border-color:#f59e0b59;background:#f59e0b0d}#screen-game-menu .game-menu-btn-danger:before{background:linear-gradient(180deg,#dc2626,#f87171)}#screen-game-menu .game-menu-btn-danger:hover{border-color:#dc26264d;background:#dc26260a}#screen-game-menu .game-menu-section .game-menu-btn{border:1px solid rgba(255,255,255,.46);border-radius:18px;background:#ffffff6b;font-weight:700;letter-spacing:.04em;box-shadow:0 14px 30px #0000001a,inset 0 1px #ffffff57;backdrop-filter:blur(18px) saturate(.82);-webkit-backdrop-filter:blur(18px) saturate(.82)}#screen-game-menu .game-menu-section .game-menu-btn:before{content:none;left:14px;top:50%;bottom:auto;width:4px;height:54%;transform:translateY(-50%);border-radius:999px;background:#06070ac7}#screen-game-menu .game-menu-section .game-menu-btn:hover{transform:translateY(-1px);border-color:#ffffffb8;background:#ffffff94;box-shadow:0 18px 38px #00000024,inset 0 1px #ffffff6b}#screen-game-menu .game-menu-section .game-menu-btn:hover:before{width:0}#screen-game-menu .game-menu-section .game-menu-btn-primary:before{background:#06070adb}#screen-game-menu .game-menu-section .game-menu-btn-accent:before{background:#6b7280db}#screen-game-menu .game-menu-section .game-menu-btn-danger:before{background:#b91c1cdb}#screen-game-menu .game-menu-section-row:nth-of-type(2n) .game-menu-section:nth-child(1) .game-menu-btn{color:#f8fafc;background:#ffffff1a;border-color:#ffffff2e}#screen-game-menu .game-menu-section-row:nth-of-type(2n) .game-menu-section:nth-child(1) .game-menu-btn:hover{background:#ffffff29;border-color:#ffffff52}#screen-game-menu .game-menu-section-row:nth-of-type(2n) .game-menu-section:nth-child(1) .game-menu-btn:before{background:#ffffffad}#screen-game-menu .game-menu-slot{margin-top:8px;padding:14px 16px;background:linear-gradient(135deg,#0f172a08,#0f172a0f);border:1px solid rgba(15,23,42,.08);border-radius:10px;font-size:.8rem;color:#0f172ad9;border-left:4px solid rgba(14,165,233,.5)}#screen-game-menu .game-menu-slot-label{font-weight:600;letter-spacing:.08em;margin-bottom:4px}#screen-game-menu .game-menu-slot-meta{font-size:.75rem;opacity:.7;margin-top:4px}#screen-game-menu .game-menu-close{position:static;display:inline-flex;align-items:center;justify-content:center;width:40px;min-width:40px;height:40px;padding:0;background:#06070a75;border:1px solid rgba(255,255,255,.22);border-radius:10px;box-shadow:0 14px 30px #0000001f,inset 0 1px #ffffff1f;outline:none;font-size:1.28rem;font-weight:500;letter-spacing:0;line-height:1;color:#f8fafc;cursor:pointer;backdrop-filter:blur(18px) saturate(.82);-webkit-backdrop-filter:blur(18px) saturate(.82);transition:background .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease}#screen-game-menu .game-menu-close:hover{border-color:#ffffff5c;background:#06070a9e;color:#fff}@media(max-width:768px){#screen-game-menu .game-menu-top-actions{top:18px;right:20px}#screen-game-menu .game-menu-inner{inset:auto;transform:none;max-width:none;width:calc(100vw - 28px);min-height:220vh;padding:156px 0 190px}#screen-game-menu .game-menu-section-row{grid-template-columns:1fr;gap:18px}#screen-game-menu .game-menu-section{padding:20px}#screen-game-menu .game-menu-share-actions,#screen-game-menu .game-menu-cloud-row{grid-template-columns:1fr}#screen-game-menu .game-menu-cloud-code-wrap{grid-template-columns:minmax(0,1fr) 34px}#screen-game-menu .game-menu-share-bottomline{grid-template-columns:1fr}#screen-game-menu .game-menu-share-row .game-menu-cloud-code-wrap{grid-template-columns:minmax(0,1fr)}#screen-game-menu .game-menu-cloud-row-actions{grid-template-columns:34px 34px 76px 34px;justify-content:start}#screen-game-menu .game-menu-share-row-actions{justify-content:start;flex-wrap:wrap}#screen-game-menu .game-menu-icon-btn{width:34px}}.screen-guide{position:fixed;inset:0;z-index:9510;display:flex;align-items:center;justify-content:center;padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));box-sizing:border-box;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .34s cubic-bezier(.22,1,.36,1),visibility 0s linear .34s}.screen-guide.is-open{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .34s cubic-bezier(.22,1,.36,1),visibility 0s}.screen-guide-backdrop{position:absolute;inset:0;background:#0f172a6b;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;transition:opacity .32s ease}.screen-guide.is-open .screen-guide-backdrop{opacity:1}.screen-guide-dialog{position:relative;z-index:1;width:min(96vw,720px);max-height:min(88vh,820px);display:flex;flex-direction:column;overflow:hidden;background:#fffffff0;color:#0f172a;border-radius:20px;box-shadow:0 18px 46px #0f172a2e,0 0 0 1px #ffffff8c inset;opacity:0;transform:translateY(14px) scale(.97);transition:opacity .34s cubic-bezier(.22,1,.36,1),transform .34s cubic-bezier(.22,1,.36,1)}.screen-guide.is-open .screen-guide-dialog{opacity:1;transform:translateY(0) scale(1)}.screen-guide-close{position:absolute;top:12px;right:14px;width:40px;height:40px;border:none;border-radius:12px;background:transparent;color:#0f172a66;font-size:26px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .18s ease,color .18s ease,transform .15s ease;z-index:2}.screen-guide-close:hover{background:#0f172a0f;color:#0f172a}.screen-guide-close:active{transform:scale(.96)}.screen-guide-head{flex-shrink:0;padding:26px 52px 16px 28px;border-bottom:1px solid rgba(15,23,42,.07)}.screen-guide-title{margin:0;font-size:clamp(1.35rem,3.2vw,1.75rem);font-weight:800;letter-spacing:.14em;color:#0f172a}.screen-guide-sub{margin:8px 0 0;font-size:.82rem;letter-spacing:.06em;color:#0f172a8c;line-height:1.5}.screen-guide-search-wrap{position:relative;margin-top:18px;transition:margin-top .22s ease}.screen-guide-search-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#0f172a59;pointer-events:none;display:flex;transition:color .2s ease,transform .2s ease}.screen-guide-search-wrap:focus-within .screen-guide-search-icon{color:#2563eba6}.screen-guide-search{width:100%;box-sizing:border-box;padding:12px 14px 12px 44px;border-radius:14px;border:1px solid rgba(15,23,42,.1);background:#ffffffa6;font-size:.92rem;color:#0f172a;outline:none;box-shadow:0 1px 2px #0f172a0a;transition:border-color .22s ease,box-shadow .22s ease,background .22s ease}.screen-guide-search::placeholder{color:#0f172a61}.screen-guide-search:focus{border-color:#2563eb73;background:#fff;box-shadow:0 0 0 3px #2563eb1f}.screen-guide-scroll{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding:12px 16px 22px 20px;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y}.guide-section{margin-top:8px;transition:opacity .28s ease}.guide-section:first-child{margin-top:0}.guide-section--faded{opacity:.35}.guide-section-title{margin:0 0 10px 4px;font-size:.72rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#0f172a73;transition:opacity .25s ease}.guide-section--faq{margin-top:18px;padding-top:18px;border-top:1px solid rgba(15,23,42,.08)}.guide-section-title--faq{margin:0 0 14px 2px;font-size:1.12rem;font-weight:800;letter-spacing:.06em;text-transform:none;color:#0f172a}.guide-rows--faq{gap:4px}.guide-rows{display:flex;flex-direction:column;gap:8px}.guide-row{display:flex;flex-direction:row;align-items:flex-start;gap:14px;padding:12px 14px;border-radius:14px;background:#ffffff80;border:1px solid rgba(15,23,42,.06);box-shadow:0 1px #ffffffb3 inset;transition:opacity .3s ease,transform .26s ease,box-shadow .26s ease,background .26s ease,border-color .26s ease,max-height .32s ease,margin .28s ease,padding .28s ease;content-visibility:auto;contain-intrinsic-size:84px}.guide-row-keys{flex:0 0 108px;width:108px;min-height:40px;display:flex;flex-wrap:wrap;align-items:center;align-content:center;justify-content:flex-start;gap:4px 5px;transition:opacity .25s ease}.guide-row-keys--wasd{flex-wrap:nowrap;gap:4px}.guide-row-text{flex:1;min-width:0}.guide-row-label{font-size:.78rem;font-weight:700;letter-spacing:.08em;color:#0f172ad9;margin-bottom:4px}.guide-row-desc{margin:0;font-size:.84rem;line-height:1.65;color:#0f172aad}.guide-row-desc strong{color:#0f172aeb;font-weight:600}.guide-row--dim{opacity:.22;transform:scale(.992);pointer-events:none}.guide-row--hit{background:#3b82f617;border-color:#3b82f647;box-shadow:0 0 0 1px #3b82f626,0 4px 12px #2563eb12}.guide-faq-item{flex-direction:column;align-items:stretch;gap:6px;padding:10px 4px 14px!important;background:transparent!important;border:none!important;border-radius:0!important;box-shadow:none!important}.guide-faq-item.guide-row--hit{background:#3b82f60f!important;box-shadow:none!important;border-left:3px solid rgba(59,130,246,.45)!important;padding-left:12px!important}.guide-faq-item.guide-row--dim{opacity:.22}.guide-faq-q{margin-bottom:0!important;font-size:.88rem;font-weight:700;letter-spacing:.02em;color:#0f172a}.guide-faq-a{font-size:.86rem;line-height:1.65;color:#0f172ab8}.guide-kbd{display:inline-flex;align-items:center;justify-content:center;min-width:26px;height:28px;padding:0 7px;border-radius:8px;font-size:.72rem;font-weight:700;letter-spacing:.04em;color:#1e293b;background:linear-gradient(180deg,#fff,#f1f5f9);border:1px solid rgba(15,23,42,.14);box-shadow:0 1px #ffffffe6 inset,0 2px 4px #0f172a0f}.guide-kbd-wide{min-width:auto;padding:0 10px;font-size:.68rem}.guide-kbd-plus,.guide-kbd-fence{font-size:.7rem;font-weight:600;color:#0f172a59;padding:0 1px}.guide-kbd-fence{margin:0 2px}.guide-icon{display:inline-block;flex-shrink:0}.guide-icon-mouse-l,.guide-icon-mouse-r{width:24px;height:30px;border-radius:10px 10px 12px 12px;border:2px solid #475569;background:linear-gradient(180deg,#f8fafc,#e2e8f0);position:relative;box-shadow:0 2px 4px #0f172a14}.guide-icon-mouse-l:before{content:"";position:absolute;right:3px;top:5px;width:7px;height:10px;border-radius:2px 3px 3px;background:#94a3b866;border:1px solid rgba(71,85,105,.22);box-sizing:border-box}.guide-icon-mouse-l:after{content:"";position:absolute;left:3px;top:5px;width:7px;height:10px;border-radius:3px 2px 3px 3px;background:#475569;box-shadow:0 1px #ffffff26 inset}.guide-icon-mouse-r:before{content:"";position:absolute;left:3px;top:5px;width:7px;height:10px;border-radius:3px 2px 3px 3px;background:#94a3b866;border:1px solid rgba(71,85,105,.22);box-sizing:border-box}.guide-icon-mouse-r:after{content:"";position:absolute;right:3px;top:5px;width:7px;height:10px;border-radius:2px 3px 3px;background:#475569;box-shadow:0 1px #ffffff26 inset}.guide-icon-wheel{width:26px;height:32px;border-radius:8px;border:2px solid #475569;background:linear-gradient(180deg,#f8fafc,#e2e8f0);position:relative}.guide-icon-wheel:before{content:"";position:absolute;left:50%;top:6px;transform:translate(-50%);width:10px;height:14px;border-radius:4px;border:1px solid rgba(71,85,105,.5);background:repeating-linear-gradient(180deg,transparent 0,transparent 2px,rgba(71,85,105,.35) 2px,rgba(71,85,105,.35) 3px)}.tb-btn-guide{padding:0}.tb-btn-guide .tb-btn-guide-icon{display:flex;align-items:center;justify-content:center;opacity:.92}.tb-btn-guide:hover .tb-btn-guide-icon{opacity:1}.tb-btn-guide .tb-btn-guide-icon svg{width:14px;height:14px;display:block}body.screen-guide-open{overflow:hidden}.screen-metro-diagram{position:fixed;inset:0;z-index:9600;display:none;flex-direction:column;background:#eceef2;overflow:hidden}body.metro-diagram-open{overflow:hidden}body.metro-diagram-open #panel-line-info,body.metro-diagram-open #panel-station,body.metro-diagram-open #panel-train,body.metro-diagram-open #panel-hsr-train,body.metro-diagram-open #panel-line,body.metro-diagram-open #panel-ridership,body.metro-diagram-open #panel-flow-dashboard,body.metro-diagram-open #panel-menu,body.metro-diagram-open #line-info-side-stack,body.metro-diagram-open #screen-game-menu,body.metro-diagram-open .screen-guide,body.metro-diagram-open #modal-line,body.metro-diagram-open #modal-operate,body.metro-diagram-open #modal-line-edit,body.metro-diagram-open #modal-line-delete,body.metro-diagram-open #modal-station-edit,body.metro-diagram-open #modal-station-actions,body.metro-diagram-open #modal-band-add-choice,body.metro-diagram-open #modal-station-transfer-decision{z-index:9800!important}.metro-diagram-toolbar{flex:0 0 auto;display:flex;align-items:center;gap:12px;padding:10px 16px;border-bottom:1px solid rgba(0,0,0,.08);background:#fafafa;min-height:52px}.metro-diagram-title{flex:1 1 auto;margin:0;font-size:15px;font-weight:600;color:#1a1a1a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.metro-diagram-stages{display:flex;align-items:center;gap:4px;flex-shrink:0}.metro-diagram-stage-btn{appearance:none;border:1px solid rgba(0,0,0,.1);background:#fff;color:#555;font-size:12px;padding:5px 10px;border-radius:8px;cursor:pointer;white-space:nowrap}.metro-diagram-stage-btn:hover{background:#f0f0f0}.metro-diagram-stage-btn.is-active{background:#1a1a1a;color:#fff;border-color:#1a1a1a}.metro-diagram-toolbar-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.metro-diagram-status{font-size:12px;color:#666;white-space:nowrap}.metro-diagram-btn{appearance:none;border:1px solid rgba(0,0,0,.12);background:#fff;color:#333;font-size:13px;padding:6px 12px;border-radius:8px;cursor:pointer;line-height:1.2}.metro-diagram-btn:hover{background:#f3f3f3}.metro-diagram-btn.is-active{background:#e8e8e8;border-color:#0003}.metro-diagram-btn-fix{background:#059669;color:#fff;border-color:#059669;font-weight:600}.metro-diagram-btn-fix:hover{background:#047857}.metro-diagram-btn-global{background:#eff6ff;border-color:#93c5fd;color:#1d4ed8;font-weight:600}.metro-diagram-btn-global:hover{background:#dbeafe}.metro-diagram-btn-next{background:#1a1a1a;color:#fff;border-color:#1a1a1a;font-weight:600}.metro-diagram-btn-next:hover:not(:disabled){background:#333}.metro-diagram-btn-next:disabled{opacity:.45;cursor:not-allowed}#icon-metro-diagram-v2{font-size:10px;font-weight:700;letter-spacing:-.02em}.metro-diagram-btn-align{background:#ecfdf5;border-color:#6ee7b7;color:#047857;font-weight:600}.metro-diagram-btn-align:hover{background:#d1fae5}.metro-diagram-btn-primary{background:#1a1a1a;color:#fff;border-color:#1a1a1a}.metro-diagram-btn-primary:hover{background:#333}.metro-diagram-btn-back{display:inline-flex;align-items:center;gap:4px;flex-shrink:0}.metro-diagram-canvas{flex:1 1 auto;width:100%;height:100%;display:block;cursor:grab;touch-action:none}.metro-diagram-canvas:active{cursor:grabbing}.metro-diagram-v4-wrap{flex:1 1 auto;position:relative;min-height:0;width:100%;display:flex;flex-direction:column}.metro-diagram-v4-loading{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:#ffffffd1;pointer-events:none}.metro-diagram-v4-loading[hidden]{display:none!important}.metro-diagram-v4-loading-text{margin:0;font-size:13px;color:#444}.transit-map-svg-wrap{flex:1 1 auto;position:relative;min-height:0;width:100%;overflow:hidden;background:#fff;cursor:grab;touch-action:none}.transit-map-svg-wrap:active{cursor:grabbing}.transit-map-svg-host{transform-origin:0 0;will-change:transform}.transit-map-svg-host svg{display:block}.transit-map-solver-label{font-size:12px;color:#666;margin-right:4px}.transit-map-solver-select{font-size:12px;padding:4px 8px;border:1px solid #ccc;border-radius:6px;background:#fff;margin-right:8px}.metro-diagram-hint{flex:0 0 auto;margin:0;padding:6px 16px 10px;font-size:11px;color:#888;text-align:center;background:#fafafa;border-top:1px solid rgba(0,0,0,.06)}.metro-diagram-debug{flex:0 0 auto;max-height:38vh;overflow:auto;margin:0;padding:10px 14px 12px;font-size:11px;line-height:1.55;color:#334155;background:#f8fafc;border-top:1px solid rgba(0,0,0,.08);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.metro-diagram-debug.is-open{display:block}.metro-diagram-debug[hidden]{display:none!important}.metro-diagram-debug h3{margin:0 0 8px;font-size:12px;font-weight:600;color:#0f172a;font-family:ui-sans-serif,system-ui,sans-serif}.metro-diagram-debug .dg-sum{margin:0 0 10px;padding:8px 10px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;font-family:ui-sans-serif,system-ui,sans-serif}.metro-diagram-debug .dg-line{margin:0 0 10px;padding:8px 10px;background:#fff;border:1px solid #e2e8f0;border-radius:8px}.metro-diagram-debug .dg-line-title{font-weight:600;color:#1e293b;margin-bottom:4px;font-family:ui-sans-serif,system-ui,sans-serif}.metro-diagram-debug .dg-st{padding-left:8px;color:#475569}.metro-diagram-debug .dg-st.has-turn{color:#b45309}.metro-diagram-btn.is-active-debug{background:#e0e7ff;border-color:#818cf8}.metro-diagram-line-align{position:absolute;right:12px;bottom:48px;z-index:3;width:min(420px,calc(100vw - 24px));max-height:42vh;overflow:auto;padding:12px 14px;background:#fffffff5;border:1px solid #a7f3d0;border-radius:10px;box-shadow:0 8px 28px #0000001f;font-size:12px;line-height:1.45;color:#334155}.metro-diagram-line-align[hidden]{display:none!important}.metro-diagram-line-align h3{margin:0 0 8px;font-size:13px;font-weight:600;color:#065f46}.metro-diagram-line-align .dg-sum{margin-bottom:8px;padding:8px 10px;background:#ecfdf5;border-radius:6px;color:#047857}.metro-diagram-line-align .dg-st{padding-left:8px;color:#475569}.metro-diagram-line-align .dg-st.has-turn{color:#047857}.metro-diagram-line-align .dg-st.dg-warn,.metro-diagram-line-align .dg-sum.dg-warn{color:#b45309}.metro-diagram-line-align .dg-debug-pre{margin:8px 0 0;padding:10px;max-height:420px;overflow:auto;font:11px/1.45 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;white-space:pre-wrap;word-break:break-word;background:#0f172a;color:#e2e8f0;border-radius:6px}.screen-metro-diagram-v1-lite{display:flex;flex-direction:column;min-height:100dvh;height:100%}.screen-metro-diagram-v1-lite .metro-diagram-canvas-wrap{flex:1 1 0%;position:relative;min-height:0;width:100%;height:100%;display:flex;flex-direction:column;overflow:hidden}.screen-metro-diagram-v1-lite .metro-diagram-canvas{flex:1 1 0%;min-height:0;width:100%;height:100%}.metro-diagram-sim-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:3}.metro-diagram-fab{position:absolute;z-index:22;pointer-events:auto;width:30px;height:30px;padding:0;display:inline-flex;align-items:center;justify-content:center}.metro-diagram-fab-back{top:16px;left:16px}.metro-diagram-v1-loading{position:absolute;inset:0;z-index:4;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:#eceef2e0;pointer-events:none}.metro-diagram-v1-loading[hidden]{display:none!important}.metro-diagram-v1-loading-text{margin:0;font-size:14px;color:#444;letter-spacing:.02em}#screen-metro-diagram.metro-diagram-render-dark .metro-diagram-v1-loading{background:#16161de6}#screen-metro-diagram.metro-diagram-render-dark .metro-diagram-v1-loading-text{color:#e8eaed}.metro-diagram-style-stack{position:absolute;top:16px;right:16px;z-index:20;display:flex;flex-direction:column;align-items:flex-end;gap:8px;pointer-events:none}.screen-metro-diagram:not(.screen-metro-diagram-v1-lite) .metro-diagram-style-stack{top:68px}.metro-diagram-style-fab{pointer-events:auto;width:30px;height:30px}.metro-diagram-style-panel{pointer-events:auto;min-width:196px;margin:0;padding-bottom:6px}.metro-diagram-style-row{display:grid;grid-template-columns:56px 1fr 28px;align-items:center;gap:6px;margin-bottom:6px;font-size:10px;color:#d1d5db;cursor:pointer}.metro-diagram-style-row:last-of-type{margin-bottom:4px}.metro-diagram-style-label{white-space:nowrap}.metro-diagram-style-val{text-align:right;font-variant-numeric:tabular-nums;color:#f3f4f6}.metro-diagram-style-row input[type=range]{-webkit-appearance:none;appearance:none;width:100%;margin:0;padding:0;border:none;cursor:pointer;height:8px;background:transparent}.metro-diagram-style-row input[type=range]::-webkit-slider-runnable-track{height:3px;border-radius:999px;background:#ffffff24}.metro-diagram-style-row input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:8px;height:8px;margin-top:-2.5px;border-radius:50%;background:#f9fafb;border:1px solid rgba(0,0,0,.22);box-shadow:none}.metro-diagram-style-row input[type=range]::-moz-range-track{height:3px;border-radius:999px;background:#ffffff24;border:none}.metro-diagram-style-row input[type=range]::-moz-range-progress{height:3px;border-radius:999px;background:#f9fafb}.metro-diagram-style-row input[type=range]::-moz-range-thumb{width:8px;height:8px;margin-top:0;border-radius:50%;background:#f9fafb;border:1px solid rgba(0,0,0,.22);box-shadow:none}.metro-diagram-style-theme-row{display:grid;grid-template-columns:56px 1fr 28px;align-items:center;gap:6px;margin-bottom:6px;font-size:10px;color:#d1d5db}.metro-diagram-style-val--theme{visibility:hidden}.metro-diagram-theme-toggle{display:inline-flex;align-items:center;gap:8px;width:fit-content;max-width:100%;height:8px}.metro-diagram-theme-dot{appearance:none;width:8px;height:8px;padding:0;margin:0;border-radius:50%;cursor:pointer;flex:0 0 8px;box-sizing:border-box;transition:box-shadow .15s ease,transform .15s ease,opacity .15s ease}.metro-diagram-theme-dot--light{background:#f3f4f6;border:1px solid rgba(255,255,255,.45)}.metro-diagram-theme-dot--dark{background:#6b7280;border:1px solid rgba(255,255,255,.18)}.metro-diagram-theme-dot:hover{opacity:.92}.metro-diagram-theme-dot.active{box-shadow:0 0 0 1px #ffffffd9;transform:scale(1.08)}.metro-diagram-theme-dot--light.active{background:#fff}.metro-diagram-theme-dot--dark.active{background:#9ca3af}.metro-diagram-style-foot{display:flex;justify-content:flex-end;margin-top:2px}.metro-diagram-style-reset{appearance:none;width:28px;height:22px;padding:0;border:1px solid rgba(255,255,255,.18);background:#ffffff14;color:#f3f4f6;font-size:9px;line-height:1;border-radius:4px;cursor:pointer}.metro-diagram-style-reset:hover{background:#ffffff29;border-color:#ffffff47}#screen-metro-diagram.metro-diagram-render-dark{background:#16161d}#screen-metro-diagram.metro-diagram-render-dark .metro-diagram-toolbar{background:#1e1e26;border-bottom-color:#ffffff14}#screen-metro-diagram.metro-diagram-render-dark .metro-diagram-title{color:#e8eaed}#screen-metro-diagram.metro-diagram-render-dark .metro-diagram-stage-btn{background:#2a2a34;border-color:#ffffff1f;color:#d1d5db}#screen-metro-diagram.metro-diagram-render-dark .metro-diagram-stage-btn.is-active{background:#e8eaed;color:#16161d;border-color:#e8eaed}#screen-metro-diagram.metro-diagram-render-dark .metro-diagram-hint{color:#9ca3af}#screen-metro-diagram.is-open{display:flex!important}body.metro-diagram-v1-nav #bottombar,body.metro-diagram-v1-nav #custom-zoom-control{z-index:9700}body.metro-diagram-v1-nav .bb-tool-map-only,body.metro-diagram-v1-nav #custom-layer-toggle{display:none!important}body.metro-diagram-v1-nav .bb-diagram-tools{display:flex;align-items:center;gap:var(--nav-bar-gap)}body.metro-diagram-v1-nav .screen-metro-diagram-v1-lite .metro-diagram-canvas-wrap{padding-bottom:0}body.metro-diagram-v1-nav #bottombar{background:transparent}body.metro-diagram-v1-nav #bottombar .bb-strip{background:transparent;box-shadow:none}body.metro-diagram-v1-nav #nav-btn-diagram-style,body.metro-diagram-v1-nav #nav-btn-diagram-style[hidden]{display:flex!important}#nav-btn-diagram-style.bb-diagram-v1-only{display:none}body.metro-diagram-v1-nav #bottombar .bb-brand .tbc,body.metro-diagram-v1-nav #bottombar #tb-city{color:#111827}body.metro-diagram-v1-nav.metro-diagram-v1-nav-dark #bottombar .bb-brand .tbc,body.metro-diagram-v1-nav.metro-diagram-v1-nav-dark #bottombar #tb-city{color:#fff}body.metro-diagram-v1-nav #metro-diagram-style-panel{position:fixed;z-index:9710;pointer-events:auto}#screen-metro-diagram-v2.is-open,#screen-metro-diagram-v5.is-open{display:flex!important}#screen-metro-diagram-v5 .metro-diagram-v4-wrap{flex:1 1 auto;min-height:0}#screen-metro-diagram-v5 .metro-diagram-canvas{min-height:0}@media(max-width:560px){.guide-row{flex-direction:column;gap:10px}.guide-row-keys{width:100%;flex:0 0 auto}.screen-guide-head{padding-right:48px}}#screen-checkout{position:fixed;inset:0;z-index:9700;display:none;overflow:hidden;height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;-webkit-overflow-scrolling:touch}#screen-checkout-return{position:fixed;inset:0;z-index:9700;display:none;overflow:auto;min-height:100vh;min-height:100dvh;background:#a3364d;color:#e5e7eb;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;-webkit-overflow-scrolling:touch}.metro-checkout-shell{display:flex;flex-direction:row;width:100%;height:100%;min-height:0;position:relative;overflow:hidden}.metro-checkout-left{flex:0 0 50%;width:50%;min-width:0;height:100%;min-height:0;position:relative;display:flex;flex-direction:column;overflow:hidden;background:#0a0a0a}.metro-checkout-left .metro-checkout-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.metro-checkout-left-overlay{position:absolute;inset:0;z-index:1;background:#ffffff7a;pointer-events:none}.metro-checkout-left-inner{position:relative;z-index:2;flex:1;min-height:0;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;box-sizing:border-box;padding-top:clamp(18vh,24vh,32vh);padding-right:clamp(20px,3vw,40px);padding-bottom:clamp(48px,6vh,72px);padding-left:clamp(52px,14vw,168px);display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;text-align:left}.metro-checkout-brand{display:flex;flex-direction:row;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:clamp(2.25rem,5vh,3.5rem)}.metro-checkout-brand-logo{display:block;flex-shrink:0;height:auto;max-height:52px;width:auto;max-width:min(100%,240px);object-fit:contain;object-position:left center}.metro-checkout-brand-text{font-size:clamp(1.08rem,1.45vw,1.35rem);font-weight:800;letter-spacing:.02em;color:#0f172a;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.25}.metro-checkout-headline{margin:0 0 clamp(2rem,5vh,3rem);font-size:clamp(1.28rem,1.85vw,1.55rem);font-weight:800;line-height:2.15;color:#0f172a;letter-spacing:.02em}.metro-checkout-features{margin:0;padding:0;list-style:none}.metro-checkout-features li{display:flex;align-items:flex-start;gap:16px;margin-bottom:clamp(1.75rem,4vh,2.75rem);font-size:clamp(1.06rem,1.35vw,1.22rem);font-weight:600;line-height:2.05;color:#1e293b}.metro-checkout-features li:last-child{margin-bottom:0}.metro-checkout-check{flex-shrink:0;margin-top:2px}.metro-checkout-right{flex:0 0 50%;width:50%;min-width:0;height:100%;min-height:0;position:relative;background:#a3364d;display:flex;flex-direction:column;align-items:stretch;padding:0;box-sizing:border-box;overflow:hidden}.metro-checkout-right-scroll{flex:1;min-height:0;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:clamp(56px,8vh,88px) clamp(16px,3vw,40px) 16px;box-sizing:border-box}.metro-checkout-back{position:absolute;top:20px;left:20px;z-index:4;padding:6px 0;font-size:.9rem;font-weight:600;letter-spacing:.02em;color:#fff;background:none;border:none;cursor:pointer;text-decoration:none}.metro-checkout-back:hover{opacity:.9;text-decoration:underline}.metro-checkout-card{width:100%;max-width:480px;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000002e;padding:clamp(20px,3vw,28px);box-sizing:border-box}.metro-checkout-embed-status{display:none;margin:0 0 12px;padding:10px 12px;font-size:.85rem;line-height:1.5;color:#7f1d1d;text-align:center;background:#fef2f2;border-radius:8px}#screen-checkout-embed{width:100%;min-height:min(380px,50vh)}.metro-checkout-legal{flex-shrink:0;margin:0;padding:10px clamp(16px,3vw,40px) 16px;max-width:none;width:100%;box-sizing:border-box;text-align:center;font-size:.78rem;line-height:1.65;color:#ffffffeb}.metro-checkout-legal a{color:#fff;text-decoration:underline;text-underline-offset:.2em}.metro-checkout-legal a:hover{opacity:.95}#screen-checkout-return .metro-checkout-return-bg-word{position:fixed;bottom:-16.5%;right:-4%;font-size:22vw;font-weight:900;letter-spacing:-.06em;color:#0000001f;pointer-events:none;z-index:0;user-select:none}#screen-checkout-return .metro-checkout-return-inner{position:absolute;left:80px;bottom:80px;z-index:1;box-sizing:border-box;max-width:620px;padding:0 24px 0 0;text-align:left}#screen-checkout-return .about-cities-subtitle{font-size:.8rem;font-weight:700;letter-spacing:.24em;text-transform:uppercase;opacity:.72;margin-bottom:.75rem;color:#e2e8f0f2}#screen-checkout-return .about-cities-title{font-weight:900;font-size:clamp(2rem,3vw,3.2rem);letter-spacing:.34em;text-transform:uppercase;margin:0 -.34em 0 0;color:#f8fafc;line-height:1.15}#screen-checkout-return .about-section{margin-top:1.5rem}#screen-checkout-return .about-section p,#screen-checkout-return .metro-checkout-return-text{font-size:.9rem;line-height:1.8;color:#e2e8f0eb;margin:0;max-width:none}#screen-checkout-return .metro-checkout-return-actions{margin-top:2rem;display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-start}#screen-checkout-return .metro-checkout-return-btn{padding:10px 22px;font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;border-radius:999px;border:1px solid rgba(255,255,255,.45);background:transparent;color:#f8fafc;cursor:pointer;transition:background .2s ease,border-color .2s ease,opacity .2s ease}#screen-checkout-return .metro-checkout-return-btn:hover{background:#ffffff1f}#screen-checkout-return .metro-checkout-return-btn.primary{background:#f9fafb;color:#431407;border-color:transparent}#screen-checkout-return .metro-checkout-return-btn.primary:hover{background:#fff;opacity:.98}@media(max-width:768px){#screen-checkout-return .metro-checkout-return-inner{left:max(24px,env(safe-area-inset-left));right:max(24px,env(safe-area-inset-right));bottom:max(48px,env(safe-area-inset-bottom));max-width:none;padding-right:0}}@media(max-width:900px){.metro-checkout-shell{flex-direction:column;height:100%;min-height:0}.metro-checkout-left{flex:0 0 auto;width:100%;min-height:0;height:auto;max-height:min(42vh,400px);overflow:hidden}.metro-checkout-left-inner{min-height:auto;overflow-y:auto;padding-top:clamp(12vh,16vh,22vh);padding-right:clamp(20px,4vw,32px);padding-bottom:28px;padding-left:clamp(32px,8vw,72px)}.metro-checkout-right{flex:1 1 auto;width:100%;min-height:0;height:auto}.metro-checkout-right-scroll{padding-top:52px}#screen-checkout-embed{min-height:min(300px,42vh)}}#screen-terms,#screen-privacy{position:fixed;inset:0;z-index:9600;background:#f9fafb;color:#020617;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;overflow:auto;display:none;-webkit-overflow-scrolling:touch}#screen-terms .legal-inner,#screen-privacy .legal-inner{max-width:640px;margin:0 auto;padding:80px 24px 120px}#screen-terms .legal-title,#screen-privacy .legal-title{font-size:1.5rem;font-weight:800;letter-spacing:.05em;margin-bottom:.5rem}#screen-terms .legal-updated,#screen-privacy .legal-updated{font-size:.8rem;color:#0f172a80;margin-bottom:2rem}#screen-terms .legal-section,#screen-privacy .legal-section{margin-top:1.5rem}#screen-terms .legal-section h2,#screen-privacy .legal-section h2{font-size:.9rem;font-weight:700;letter-spacing:.08em;margin-bottom:.5rem;color:#020617}#screen-terms .legal-section p,#screen-privacy .legal-section p{font-size:.85rem;line-height:1.75;color:#0f172ad9}#screen-terms .legal-doc,#screen-privacy .legal-doc{font-size:.9rem;line-height:1.7;color:#0f172ae6}#screen-terms .legal-doc p,#screen-privacy .legal-doc p{margin:1em 0}#screen-terms .legal-doc ol,#screen-privacy .legal-doc ol,#screen-terms .legal-doc ul,#screen-privacy .legal-doc ul{margin:.5em 0 .5em 1.5em}#screen-terms .legal-close,#screen-privacy .legal-close{position:fixed;top:32px;right:40px;padding:0;background:none;border:none;outline:none;font-size:.8rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:#0f172ab3;cursor:pointer;z-index:2}#screen-terms .legal-close:hover,#screen-privacy .legal-close:hover{color:#020617}#screen-about .about-train{position:absolute;display:flex;align-items:center;gap:2px;padding:2px;background:transparent;pointer-events:none}#screen-about .about-train-car{width:18px;height:10px;border-radius:2px;background:#0f172a}#screen-about-cities{position:fixed;inset:0;z-index:9650;background:#872907;color:#e5e7eb;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;overflow:hidden;display:none;will-change:transform,opacity;transform:translateY(0);opacity:1}#about-cities-physics{position:absolute;inset:0;width:100%;height:100%;z-index:1}#screen-about-cities .about-cities-bg-word{position:absolute;bottom:-16.5%;right:-4%;font-size:22vw;font-weight:900;letter-spacing:-.06em;color:#0f172a0d;pointer-events:none;z-index:0}#screen-about-cities .about-cities-inner{position:absolute;left:80px;bottom:80px;max-width:620px;z-index:3;pointer-events:none}#screen-about-cities .about-cities-inner *{pointer-events:none}#screen-about-cities .about-cities-subtitle{font-size:.8rem;font-weight:700;letter-spacing:.24em;text-transform:uppercase;opacity:.6;margin-bottom:.75rem}#screen-about-cities .about-cities-title{font-weight:900;font-size:clamp(2rem,3vw,3.2rem);letter-spacing:.34em;text-transform:uppercase;margin-right:-.34em}#screen-about-cities .about-section{margin-top:1.8rem}#screen-about-cities .about-section p{font-size:.9rem;line-height:1.8;color:#e2e8f0e6}.about-cities-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 32px;margin-top:1.2rem}.about-cities-grid.about-cities-grid--3col{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(5,minmax(0,auto));grid-auto-flow:column}.about-cities-item{display:flex;align-items:baseline;gap:10px;font-size:.85rem;letter-spacing:.12em;text-transform:uppercase}.about-cities-index{font-family:system-ui,-apple-system,BlinkMacSystemFont,SF Pro Display;font-weight:600;font-size:.75rem;opacity:.6}.about-cities-name{font-weight:700}.about-cities-name-cn{font-size:.75rem;opacity:.7}#screen-about-cities .about-cities-top-hint{position:absolute;top:32px;right:140px;display:flex;align-items:center;gap:6px;padding:4px 8px;background:transparent;border:none;font-size:.75rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#94a3b8bf;cursor:default;pointer-events:none;z-index:4}#screen-about-cities .about-cities-top-hint-arrow{font-size:.8rem}#screen-about-cities .about-close{position:absolute;top:32px;right:40px;padding:0;background:none;border:none;outline:none;font-size:.8rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:#94a3b8cc;cursor:none;z-index:5;pointer-events:auto}#screen-about-cities .about-close:hover{color:#e5e7eb}@media(max-width:768px){#screen-about-cities .about-cities-inner{left:30px;right:24px;bottom:48px;max-width:none}}#about-cities-scroll{max-height:calc(100vh - 140px);overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;pointer-events:none;padding-right:10px}#screen-site-end #site-end-scroll{max-height:min(48vh,560px);overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;pointer-events:auto;padding-right:10px}#about-cities-scroll .about-cities-bottom-hint{margin-top:2rem;font-size:.75rem;letter-spacing:.16em;text-transform:uppercase;color:#94a3b8bf;display:flex;align-items:center;gap:10px}#screen-site-end{position:fixed;inset:0;z-index:9660;background:#d1d5db;color:#0f172a;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;overflow:visible;display:none;will-change:transform,opacity;transform:translateY(0);opacity:1}#screen-site-end .about-cities-bg-word{position:absolute;bottom:-16.5%;right:-4%;font-size:22vw;font-weight:900;letter-spacing:-.06em;color:#0f172a0f;pointer-events:none;z-index:0}#screen-site-end .site-end-layout{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;box-sizing:border-box;padding:72px 0 0;min-height:0;overflow:visible}#screen-site-end .site-end-text-wrap{flex:0 0 auto;margin-top:auto;min-height:0;padding:0 80px 72px;box-sizing:border-box;max-width:100%;width:100%;position:relative;z-index:10;pointer-events:none}#screen-site-end .site-end-text-wrap .about-cities-inner{pointer-events:auto}#screen-site-end .about-cities-inner{position:relative;left:auto;bottom:auto;max-width:620px;width:100%}#screen-site-end .site-end-title-en{margin:.5rem 0 0;font-size:.78rem;font-weight:600;letter-spacing:.28em;text-transform:uppercase;color:#0f172a8c}#screen-site-end .about-cities-subtitle{font-size:.8rem;font-weight:700;letter-spacing:.24em;text-transform:uppercase;opacity:.65;margin-bottom:.75rem;color:#0f172a}#screen-site-end .about-cities-title{font-weight:900;font-size:clamp(2rem,3vw,3.2rem);letter-spacing:.34em;text-transform:uppercase;margin-right:-.34em;color:#020617}#screen-site-end .about-section{margin-top:1.8rem}#screen-site-end .about-section p{font-size:.9rem;line-height:1.8;color:#0f172ae0}#screen-site-end .site-end-contact-note{margin-top:1.1rem;font-size:.82rem;line-height:1.7;color:#0f172ab8}#screen-site-end .site-end-legal{margin-top:2rem;font-size:.75rem;letter-spacing:.08em;color:#0f172a8c}#screen-site-end .site-end-legal a{color:#0f172ad1;text-decoration:none;cursor:pointer}#screen-site-end .site-end-legal a:hover{color:#020617;text-decoration:underline}#screen-site-end .site-end-copyright{margin-top:1.25rem;font-size:.72rem;letter-spacing:.06em;color:#0f172a80}#screen-site-end .site-end-viz{position:absolute;top:-56px;left:clamp(40px,10vw,160px);width:min(520px,92vw);max-width:520px;height:100vh;max-height:100dvh;flex:none;margin:0;padding:0;overflow:visible;z-index:5;pointer-events:none}#screen-site-end .site-end-viz-rot{position:relative;width:100%;height:100%;transform:rotate(-120deg);transform-origin:50% 50%;will-change:transform}#screen-site-end .site-end-rail{position:relative;width:100%;height:100%;overflow:hidden;pointer-events:none;z-index:1}#screen-site-end .site-end-sim-root{--fixed-train-width:32px;position:absolute;inset:0;width:100%;height:100%;overflow:hidden}#screen-site-end .site-end-platform-bg{position:absolute;inset:0;width:calc(100% - var(--fixed-train-width));background:#c5cad0}#screen-site-end .site-end-platform-passengers-inner{position:absolute;left:0;width:100%;display:flex;flex-direction:column}#screen-site-end .site-end-track-strip{position:absolute;inset:0;left:calc(100% - var(--fixed-train-width));width:var(--fixed-train-width);background:#fff}#screen-site-end .site-end-train{position:absolute;left:calc(100% - var(--fixed-train-width));width:var(--fixed-train-width);top:0;display:flex;flex-direction:column;z-index:2}#screen-site-end .site-end-blue-car{width:100%;border-radius:.375rem;background:#60a5fa}#screen-site-end .site-end-pass-dot{width:.5rem;height:.5rem;border-radius:9999px;background:#000;flex-shrink:0}#screen-site-end .site-end-dots-rows{position:absolute;right:0;top:0;bottom:0;width:7rem;z-index:30;display:flex;flex-direction:column;justify-content:space-around;padding:.5rem;box-sizing:border-box}#screen-site-end .site-end-dot-row{display:flex;justify-content:flex-end;width:100%;gap:.25rem}#screen-site-end .site-end-dot-section{width:100%;display:flex;align-items:stretch;position:relative;overflow:hidden}#screen-site-end .site-end-alighting-dot{position:absolute;width:8px;height:8px;border-radius:9999px;background-color:#ef4444;z-index:20;top:50%;transform:translateY(-50%);opacity:0;transition:left .5s linear,opacity .5s ease-out}#screen-site-end .about-cities-top-hint{position:absolute;top:32px;right:140px;display:flex;align-items:center;gap:6px;padding:4px 8px;background:transparent;border:none;font-size:.75rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#475569d9;cursor:default;pointer-events:none;z-index:4}#screen-site-end .about-close{position:absolute;top:32px;right:40px;padding:0;background:none;border:none;outline:none;font-size:.8rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:#475569e6;cursor:none;z-index:5}#screen-site-end .about-close:hover{color:#020617}#screen-site-end .site-end-corner-en{position:absolute;right:32px;bottom:28px;z-index:6;font-size:.78rem;font-weight:700;letter-spacing:.35em;text-transform:uppercase;color:#475569cc;pointer-events:none}@media(max-width:900px){#screen-site-end .site-end-layout{padding:64px 0 0}#screen-site-end .site-end-viz{top:-56px;left:clamp(24px,8vw,120px);width:min(92vw,480px)}#screen-site-end .site-end-text-wrap{padding:0 24px 56px}#screen-site-end .site-end-corner-en{right:20px;bottom:12px}#screen-site-end .about-cities-top-hint{right:120px}}@media(max-width:768px){#screen-site-end .about-cities-inner{max-width:none}}#screen-museum{position:fixed;inset:0;z-index:9500;background:#020617;color:#e5e7eb;font-family:Noto Sans SC,SF Pro Display,PingFang SC,system-ui,sans-serif;overflow:hidden;display:flex;flex-direction:column}#screen-museum .museum-header{padding:24px 40px 12px;display:flex;justify-content:space-between;align-items:flex-start;gap:40px}#screen-museum .museum-title-block{max-width:520px}#screen-museum .museum-subtitle{font-size:.8rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;opacity:.7;margin-bottom:.5rem}#screen-museum .museum-title{font-weight:900;font-size:clamp(2rem,3vw,3.2rem);letter-spacing:.34em;text-transform:uppercase;margin-right:-.34em;margin-bottom:1rem}#screen-museum .museum-desc{font-size:.85rem;line-height:1.7;color:#e2e8f0e0;margin-bottom:.85rem}#screen-museum .museum-data-note{font-size:.8rem;line-height:1.6;color:#94a3b8f2}#screen-museum .museum-data-note a{color:#93c5fd;text-decoration:none;border-bottom:1px solid rgba(147,197,253,.4)}#screen-museum .museum-data-note a:hover{color:#bfdbfe;border-bottom-color:#bfdbfee6}#screen-museum .museum-controls{min-width:260px;max-width:420px;display:flex;flex-direction:column;gap:10px}#screen-museum .museum-year-row{display:flex;justify-content:space-between;align-items:center}#screen-museum .museum-year-label{font-size:.8rem;letter-spacing:.16em;text-transform:uppercase;color:#94a3b8e6}#screen-museum .museum-year-value{font-size:1.15rem;font-weight:700;letter-spacing:.12em}#screen-museum .museum-year-slider{width:100%}#screen-museum .museum-play-row{display:flex;align-items:center;gap:10px}#screen-museum .museum-play-btn{padding:6px 14px;border-radius:999px;border:1px solid rgba(148,163,184,.8);background:transparent;color:#e5e7eb;font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;cursor:none}#screen-museum .museum-play-btn:hover{background:#0f172ad9}#screen-museum .museum-play-hint{font-size:.75rem;line-height:1.5;color:#94a3b8f2}#screen-museum .museum-map-wrap{flex:1;padding:0 24px 24px}#museum-map{width:100%;height:100%;border-radius:18px;overflow:hidden;background:#020617}#screen-museum .museum-close{position:absolute;top:24px;right:40px;padding:0;background:none;border:none;outline:none;font-size:.8rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:#94a3b8e6;cursor:none}#screen-museum .museum-close:hover{color:#e5e7eb}@media(max-width:768px){#screen-museum .museum-header{flex-direction:column;padding:16px 20px 10px}#screen-museum .museum-map-wrap{padding:0 12px 16px}#screen-museum .museum-close{right:20px}}#screen-dome-showcase{position:fixed;inset:0;z-index:9600;display:none;will-change:transform,opacity;transform:translateY(0);opacity:1;background-color:#000;background-image:radial-gradient(rgba(255,255,255,.08) 1px,transparent 1px);background-size:18px 18px;background-attachment:local;color:#fff;overflow:auto;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}#screen-dome-showcase .dome-showcase-corner-veil{position:absolute;left:0;top:0;width:min(34.56vw,307px);height:min(26.88vh,230px);transform:none;background:#ff000080;pointer-events:none;z-index:2}#screen-dome-showcase .dome-showcase-top{position:relative;z-index:3;max-width:min(96vw,1680px);margin:28px auto 12px;padding:0 13px;display:flex;justify-content:flex-end}#screen-dome-showcase .dome-showcase-close{position:static;border:none;background:none;padding:4px 0;font-size:13px;letter-spacing:.06em;color:#ffffff8c;cursor:pointer}#screen-dome-showcase .dome-showcase-close:hover{color:#fff}#screen-dome-showcase .dome-showcase-content{position:relative;z-index:1;max-width:min(96vw,1680px);margin:0 auto 120px;padding:0 13px 220px}.dome-showcase-layout{display:grid;grid-template-columns:minmax(0,440px) minmax(0,1fr);gap:calc(clamp(24px,4vw,48px) + 80px);align-items:stretch;box-sizing:border-box}.dome-showcase-text-column{display:flex;flex-direction:column;gap:0;min-width:0;max-width:440px;width:100%;justify-self:start;align-self:stretch;min-height:0}.dome-showcase-hero{flex-shrink:0;text-align:right;padding-right:clamp(6px,1.2vw,16px);box-sizing:border-box}.dome-showcase-hero-title{margin:0;font-size:clamp(2.75rem,8vw,5.5rem);font-weight:900;line-height:1.08;letter-spacing:.02em;color:#fff}.dome-showcase-hero-desc{margin-top:clamp(.9rem,2vw,1.35rem)}.dome-showcase-hero-desc p{margin:.85rem 0 0;font-size:clamp(12px,1.15vw,15px);line-height:1.6;font-weight:400;color:#ffffffe6}.dome-showcase-hero-desc p:first-child{margin-top:0}.dome-showcase-sections-bottom{display:flex;flex-direction:column;gap:clamp(2.5rem,5vw,4rem);margin-top:auto;padding-top:clamp(1.75rem,4vw,3rem)}.dome-showcase-intro-block{position:relative;z-index:0;min-width:0;padding-right:clamp(6px,1.2vw,16px);box-sizing:border-box}.dome-showcase-bg-num{position:absolute;right:-.05em;left:auto;top:50%;transform:translateY(-52%);z-index:0;font-size:clamp(3rem,10vw,7rem);font-weight:900;line-height:1;letter-spacing:-.04em;color:#ffffff0f;pointer-events:none;user-select:none}.dome-showcase-intro-inner{position:relative;z-index:1;text-align:right}.dome-showcase-intro-block h2{margin:0;font-size:clamp(16px,1.45vw,22px);line-height:1.25;font-weight:700;color:#fff}.dome-showcase-intro-block p{margin:.85rem 0 0;font-size:clamp(12px,1.05vw,14px);line-height:1.55;font-weight:400;color:#ffffffeb}.dome-showcase-photos-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(10px,1.4vw,18px);width:100%;min-width:0;box-sizing:border-box}.dome-showcase-media-cell{min-width:0;border-radius:0;aspect-ratio:1/1;display:flex;align-items:stretch;justify-content:stretch}.dome-showcase-photo-frame{display:block;width:100%;height:100%;max-width:100%;overflow:hidden;border-radius:0;box-sizing:border-box;line-height:0}.dome-showcase-photo-frame--placeholder{display:flex;align-items:center;justify-content:center;min-height:100%;padding:8px 10px;background:#ffffff14;font-weight:600;font-size:clamp(11px,1.1vw,14px);text-align:center;color:#ffffffbf;line-height:1.2}.dome-showcase-photo-frame--media img,.dome-showcase-photo-frame--media video{width:100%;height:100%;object-fit:contain;object-position:center center;display:block}@media(max-width:900px){.dome-showcase-layout{grid-template-columns:1fr;gap:1.75rem;align-items:start}.dome-showcase-text-column{max-width:none;min-height:0}.dome-showcase-hero-title{font-size:clamp(2rem,9vw,3.25rem)}.dome-showcase-sections-bottom{margin-top:clamp(1.5rem,4vw,2.5rem);padding-top:0}.dome-showcase-intro-block h2{font-size:clamp(15px,4vw,21px)}.dome-showcase-intro-block p{font-size:clamp(12px,3.2vw,14px)}#screen-dome-showcase .dome-showcase-content{padding-left:13px;padding-right:13px}.dome-showcase-photos-grid{grid-template-columns:repeat(3,1fr);max-width:100%}}#screen-ticket{position:fixed;inset:0;z-index:9998;background:#020617;color:#f9fafb;display:none;overflow:hidden;font-family:Noto Sans SC,SF Pro Display,PingFang SC,system-ui,sans-serif}#screen-ticket .ticket-bg{position:absolute;inset:0;pointer-events:auto}#screen-ticket .ticket-big-num{position:absolute;bottom:-5%;left:-2%;font-size:25vw;font-weight:900;font-style:italic;line-height:.8;letter-spacing:-.06em;color:#f8fafc1f}#screen-ticket .ticket-meta{position:absolute;top:4rem;left:4rem;max-width:none;z-index:10}#screen-ticket .ticket-meta h1{font-size:4.5rem;line-height:.8;font-weight:900;font-style:normal;letter-spacing:.34em}#screen-ticket #ticket-city{white-space:nowrap;overflow:visible}#screen-ticket .ticket-meta p{margin-top:4.5rem;max-width:22rem;font-size:.95rem;line-height:1.6;opacity:.9;border-left:4px solid rgba(248,250,252,.5);padding-left:1rem}#screen-ticket .ticket-brand{position:absolute;top:1.5rem;right:2rem;font-size:1.5rem;font-weight:700;font-style:italic;opacity:.75}#ticket-fan-root{position:absolute;bottom:0;right:0;width:100%;height:100%;pointer-events:auto;perspective:1800px;transform-style:preserve-3d}#screen-ticket[data-ready="0"] #ticket-fan-root{opacity:0}#screen-ticket[data-ready="1"] #ticket-fan-root{opacity:1;transition:opacity .4s ease}.ticket-card-shell{position:absolute;bottom:0;right:0;transform-origin:bottom right;transform-style:preserve-3d}.ticket-card{position:relative;transform:translate(-50%,-50%);width:320px;height:440px;border-radius:24px;box-shadow:0 24px 80px #000000a6;overflow:hidden;cursor:pointer;pointer-events:auto;z-index:50;padding:32px;display:flex;flex-direction:column;backface-visibility:hidden}.ticket-card-inner{position:absolute;inset:0;padding:32px;display:flex;flex-direction:column}.ticket-card-inner>div{border:none!important}.ticket-card-inner>div:nth-child(2){border-top:none!important;border-bottom:none!important}.ticket-chip{font-size:10px;font-weight:700;padding:4px 10px;border-radius:999px;background:#0f172a4d;color:#f8fafce6}.ticket-arrow{width:36px;height:36px;border-radius:999px;border:1px solid rgba(248,250,252,.35);display:flex;align-items:center;justify-content:center;font-size:18px}.ticket-title{margin:1.5rem 0 .75rem;font-size:2.5rem;line-height:.9;font-family:serif}.ticket-sub{font-size:11px;opacity:.7}.ticket-id-block{margin-top:auto;display:flex;justify-content:space-between;align-items:flex-end}.ticket-id-main{font-size:3.5rem;line-height:1;font-family:serif}.ticket-valid{font-size:10px;letter-spacing:.25em;transform-origin:bottom right;transform:rotate(-90deg) translate(16px);opacity:.6}.ticket-glow{position:absolute;inset:0;border-radius:24px;pointer-events:none;background:none;display:none}.ticket-border{position:absolute;inset:0;border-radius:24px;border:none;pointer-events:none;display:none}.ticket-help{position:absolute;bottom:2.5rem;left:4rem;font-size:12px;letter-spacing:.15em;text-transform:uppercase;opacity:.6}#screen-city{position:fixed;inset:0;z-index:9999;background:var(--bg);display:none;flex-direction:column;align-items:center;justify-content:flex-start;gap:24px;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:max(20px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(28px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));box-sizing:border-box}#screen-mobile-tip{position:fixed;inset:0;z-index:10000;display:none;align-items:center;justify-content:center;padding:24px;background:#0a0a0cd9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}#screen-mobile-tip .mobile-tip-card{width:min(520px,92vw);border-radius:18px;padding:22px 18px;background:#ffffffeb;box-shadow:0 18px 60px #00000073;color:#0b0b0c;text-align:center}#screen-mobile-tip .mobile-tip-title{font-weight:900;letter-spacing:.18em;font-size:18px;opacity:.92}#screen-mobile-tip .mobile-tip-desc{margin-top:12px;font-weight:800;font-size:16px;letter-spacing:.08em}#screen-mobile-tip .mobile-tip-actions{margin-top:18px;display:flex;justify-content:center}#screen-mobile-tip .mobile-tip-btn{appearance:none;border:none;border-radius:999px;padding:10px 16px;font-weight:900;letter-spacing:.16em;background:#111827;color:#fff;cursor:pointer}#screen-mobile-tip .mobile-tip-btn:active{transform:translateY(1px)}.ch{flex-shrink:0}.ch h1{font-size:22px;font-weight:200;letter-spacing:10px;margin-bottom:18px;text-align:center}.ch p{font-size:9px;color:var(--t4);letter-spacing:4px;text-align:center}.city-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--bd2);width:100%;max-width:920px;box-sizing:border-box}.cc{background:var(--bg);padding:22px 18px;cursor:pointer;transition:background .15s;min-width:0;position:relative}@media(max-width:900px){.city-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cc{padding:16px 14px}}@media(max-width:400px){.city-grid{grid-template-columns:1fr}}.cc:hover{background:var(--bg3)}.cc-name{font-size:15px;font-weight:400;font-style:normal;letter-spacing:5px;margin-bottom:4px}.cc-pop{font-size:9px;color:var(--t3);letter-spacing:1px}.cc-tag{position:absolute;top:9px;right:9px;font-size:8px;color:var(--t4)}#screen-game{position:fixed;inset:0;display:none;padding-bottom:0}#map-placeholder{width:100%;height:100%;background:#1a1a1a}.flow-admission-pin{position:fixed;top:max(16px,env(safe-area-inset-top,0px));right:max(16px,env(safe-area-inset-right,0px));z-index:3010;width:min(320px,calc(100vw - 32px));max-width:min(260px,calc(100vw - 32px));box-sizing:border-box;pointer-events:none;animation:nIn .2s ease}.flow-admission-pin-inner{width:100%;box-sizing:border-box;padding:7px 10px;background:#fff;border-radius:0;border-left:3px solid #ef4444;font-size:11px;line-height:1.35;color:#111827;box-shadow:0 8px 20px #0f172a40}.flow-admission-pin-title{font-size:11px;font-weight:700;letter-spacing:.02em;color:#111827;margin:0 0 6px;line-height:1.35;white-space:normal;overflow:visible;word-break:break-word;overflow-wrap:anywhere}.flow-admission-pin-detail{font-size:11px;line-height:1.45;color:#374151;white-space:normal;overflow:visible;text-overflow:clip;word-break:break-word;overflow-wrap:anywhere}.flow-admission-pin-detail .flow-admission-pin-p{margin:0 0 6px}.flow-admission-pin-detail .flow-admission-pin-p:last-child{margin-bottom:0}.flow-admission-pin-detail strong{color:#b91c1c;font-weight:600}#map-placeholder .maplibregl-ctrl-bottom-left{margin:0 0 54px 10px}#map-placeholder .maplibregl-ctrl-attrib,#map-placeholder .maplibregl-ctrl-attrib.maplibregl-compact{background:transparent!important;box-shadow:none!important;border:none!important}#map-placeholder .maplibregl-ctrl-attrib-inner{background:transparent!important;box-shadow:none!important}#map-placeholder .maplibregl-ctrl-attrib,#map-placeholder .maplibregl-ctrl-attrib a{color:#16161ceb;text-shadow:0 0 6px rgba(255,255,255,1),0 0 2px rgba(255,255,255,.95),0 1px 3px rgba(0,0,0,.45)}#map-placeholder .maplibregl-ctrl-attrib a:hover{color:#0a0a0efa}.map-load-error-ui{position:fixed;inset:0;z-index:1001;display:none;align-items:center;justify-content:center;padding:24px 16px 96px;box-sizing:border-box;pointer-events:none}.map-load-error-card{pointer-events:auto;width:100%;max-width:min(320px,calc(100vw - 32px));background:#080808f5;border:1px solid var(--bd3);border-radius:16px;padding:20px 20px 16px;box-shadow:0 8px 32px #0000008c,0 0 0 1px #ffffff0d}.map-load-error-kicker{font-size:9px;letter-spacing:.28em;text-transform:uppercase;color:var(--t4);margin-bottom:8px}.map-load-error-title{margin:0 0 10px;font-size:15px;font-weight:600;letter-spacing:.06em;color:var(--t1);line-height:1.35}.map-load-error-desc{margin:0 0 16px;font-size:11px;line-height:1.55;color:var(--t3);letter-spacing:.04em}.map-load-error-retry{display:flex;align-items:center;justify-content:center;width:100%;padding:11px 16px;font-size:11px;font-weight:600;letter-spacing:.14em;cursor:pointer;border-radius:12px;border:1px solid rgba(148,163,184,.45);background:#0f172ad9;color:#f8fafcf2;transition:border-color .15s,background .15s,transform .12s}.map-load-error-retry:hover:not(:disabled){border-color:#f8fafc8c;background:#1e293bf2;transform:translateY(-1px)}.map-load-error-retry:disabled{opacity:.65;cursor:wait}.map-load-error-foot{margin:12px 0 0;font-size:9px;line-height:1.5;color:var(--t4);letter-spacing:.06em}.screen-save-load-ui{position:fixed;inset:0;z-index:10100;display:none;align-items:center;justify-content:center;padding:0;box-sizing:border-box;pointer-events:auto;background:#ffffff9e;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.screen-save-load-card{width:100%;height:100%;max-width:none;background:transparent;border:none;border-radius:0;padding:0;box-shadow:none;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px}.screen-save-load-title{margin:0;font-size:20px;font-weight:700;letter-spacing:.02em;color:#0f172a;line-height:1.3}.screen-save-load-enter-direct{display:none;margin:-6px 0 0;padding:4px 10px;font-size:13px;line-height:1.4;font-weight:500;color:#64748b;background:transparent;border:none;text-decoration:none;cursor:pointer;pointer-events:auto;touch-action:manipulation;font-family:inherit}.screen-save-load-enter-direct:hover{color:#475569}.screen-save-load-enter-direct:focus-visible{outline:2px solid rgba(100,116,139,.55);outline-offset:2px}.screen-save-load-desc{margin:0;max-width:min(760px,84vw);font-size:12px;line-height:1.5;color:#0f172abf;word-break:break-word;display:none}.screen-save-load-spinner{width:40px;height:40px;margin:0;border-radius:50%;border:3px solid rgba(15,23,42,.12);border-top-color:#0f172acc;animation:screenSaveSpin .9s linear infinite}.screen-save-load-cache-notice{margin:8px 0 0;max-width:min(420px,88vw);font-size:12px;line-height:1.65;color:#0f172a9e;text-align:center}@keyframes screenSaveSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}#custom-zoom-control{position:fixed;right:var(--nav-bar-gap)!important;bottom:52px!important;z-index:1001;display:flex;flex-direction:column;align-items:center;gap:var(--nav-bar-gap)}#custom-zoom-control .sp-btn{width:var(--nav-bar-circle)!important;height:var(--nav-bar-circle)!important;min-width:var(--nav-bar-circle);min-height:var(--nav-bar-circle);font-size:16px!important;display:flex;align-items:center;justify-content:center}.custom-layer-icon{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px}.custom-compass-icon{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;transition:transform .15s ease;transform-origin:center center}#custom-compass.is-north .custom-compass-icon{opacity:.72}.map-layer-panel{--map-layer-panel-width:212px;--map-layer-panel-width-hk:636px;position:fixed;right:52px;bottom:48px;z-index:1002;display:none;width:var(--map-layer-panel-width);max-width:calc(100vw - 64px);padding:10px 10px 8px;border-radius:12px;background:#000000db;border:1px solid rgba(31,41,55,.7);box-shadow:0 10px 35px #0000008c,0 0 0 1px #ffffff0a;color:#f9fafb}.map-layer-panel.is-hk-city,.map-layer-panel.is-osm-city-overlays,.map-layer-panel.is-preset-osm-intl-overlays,#panel-map-layers:has(#map-layer-pi-section[aria-hidden=false]),#panel-map-layers:has(#map-layer-md-section[aria-hidden=false]),#panel-map-layers:has(#map-layer-ln-section[aria-hidden=false]){width:min(var(--map-layer-panel-width-hk),calc(100vw - 64px))}.map-layer-panel.is-hk-city .map-layer-panel-body,.map-layer-panel.is-osm-city-overlays .map-layer-panel-body,#panel-map-layers:has(#map-layer-pi-section[aria-hidden=false]) .map-layer-panel-body,#panel-map-layers:has(#map-layer-md-section[aria-hidden=false]) .map-layer-panel-body,#panel-map-layers:has(#map-layer-ln-section[aria-hidden=false]) .map-layer-panel-body{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 14px;align-items:start;max-height:min(70vh,520px);overflow-x:auto;overflow-y:auto}.map-layer-panel.is-flight-mode{width:min(188px,calc(100vw - 64px))}#panel-map-layers.is-anycity-no-env{width:min(424px,calc(100vw - 64px))}#panel-map-layers.is-anycity-no-env:has(#map-layer-pi-section[aria-hidden=false]),#panel-map-layers.is-anycity-no-env:has(#map-layer-md-section[aria-hidden=false]),#panel-map-layers.is-anycity-no-env:has(#map-layer-ln-section[aria-hidden=false]){width:min(424px,calc(100vw - 64px))}.map-layer-panel-body{display:block}#panel-map-layers.is-anycity-no-env .map-layer-panel-body{grid-template-columns:repeat(2,minmax(0,1fr))}#panel-map-layers.is-anycity-no-env:has(#map-layer-pi-section[aria-hidden=false]) .map-layer-panel-body,#panel-map-layers.is-anycity-no-env:has(#map-layer-md-section[aria-hidden=false]) .map-layer-panel-body,#panel-map-layers.is-anycity-no-env:has(#map-layer-ln-section[aria-hidden=false]) .map-layer-panel-body{grid-template-columns:repeat(2,minmax(0,1fr))}.map-layer-panel.is-flight-mode .map-layer-panel-body{display:block}.map-layer-panel-col{min-width:0}.map-layer-panel.is-hk-city .map-layer-hk-col,.map-layer-panel.is-osm-city-overlays .map-layer-hk-col,.map-layer-panel.is-preset-osm-intl-overlays .map-layer-hk-col{border-left:1px solid rgba(148,163,184,.35);padding-left:10px}.map-layer-panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.map-layer-panel-title{font-size:12px;font-weight:700;letter-spacing:.02em}.map-layer-panel-close{width:22px;height:22px;border-radius:999px;border:1px solid rgba(148,163,184,.45);background:#0f172a73;color:#f9fafb;cursor:pointer;line-height:1;display:flex;align-items:center;justify-content:center}.map-layer-item{display:flex;align-items:center;gap:8px;padding:5px 2px;font-size:12px;color:#f9fafbf2;user-select:none}.map-layer-item input[type=checkbox]{width:14px;height:14px;margin:0;border-radius:3px;border:1px solid transparent;background:#212121!important;background-color:#212121!important;-webkit-appearance:none;appearance:none;display:inline-block;cursor:pointer;flex-shrink:0}.map-layer-item input[type=checkbox]:checked{background:#fbbf24!important;background-color:#fbbf24!important;border-color:transparent}.map-layer-item input[type=checkbox]:focus-visible{outline:2px solid rgba(251,191,36,.45);outline-offset:2px}.map-layer-item-with-help{align-items:flex-start;justify-content:space-between;gap:6px}.map-layer-item-check{display:flex;align-items:flex-start;gap:8px;flex:1;min-width:0;cursor:pointer}.map-layer-item-label{flex:1;line-height:1.35}.map-layer-help{position:relative;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;margin-top:1px;border-radius:50%;border:1px solid rgba(148,163,184,.55);color:#e2e8f0eb;font-size:10px;font-weight:700;line-height:1;cursor:help;user-select:none}.map-layer-help-tooltip{position:absolute;right:0;bottom:calc(100% + 8px);width:min(260px,calc(100vw - 80px));background:#0f172af0;color:#fffffff0;border:1px solid rgba(255,255,255,.14);border-radius:8px;padding:8px 10px;font-size:11px;font-weight:400;line-height:1.45;letter-spacing:.01em;box-shadow:0 8px 20px #02061773;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .12s ease,visibility .12s ease;z-index:6}.map-layer-help:hover .map-layer-help-tooltip,.map-layer-help:focus .map-layer-help-tooltip,.map-layer-help:focus-visible .map-layer-help-tooltip{opacity:1;visibility:visible}.map-layer-hk-heading{font-size:11px;font-weight:600;color:#e2e8f0d9;margin:0 0 6px 2px;letter-spacing:.02em}.map-layer-hk-building-group{margin:2px 0 4px}.map-layer-hk-building-head{display:flex;align-items:center;justify-content:space-between;gap:4px;padding:5px 2px}.map-layer-hk-building-head.is-osm-only-disabled .map-layer-hk-building-main{opacity:.45;cursor:default;pointer-events:none}.map-layer-hk-sub-heading.is-disabled,.map-layer-hk-type-mode.is-disabled{opacity:.45;pointer-events:none}.map-layer-hk-building-main{display:flex;align-items:center;gap:8px;flex:1;min-width:0;font-size:12px;color:#f9fafbf2;cursor:pointer;user-select:none}.map-layer-hk-building-main input[type=checkbox]{width:14px;height:14px;margin:0;border-radius:3px;border:1px solid transparent;background:#212121!important;background-color:#212121!important;-webkit-appearance:none;appearance:none;display:inline-block;flex-shrink:0}.map-layer-hk-building-main input[type=checkbox]:checked{background:#fbbf24!important;background-color:#fbbf24!important;border-color:transparent}.map-layer-hk-building-main input[type=checkbox]:focus-visible{outline:2px solid rgba(251,191,36,.45);outline-offset:2px}.map-layer-hk-expand-btn{flex-shrink:0;width:22px;height:22px;padding:0;border:none;border-radius:4px;background:transparent;color:#e2e8f0d9;cursor:pointer;display:flex;align-items:center;justify-content:center}.map-layer-hk-expand-btn:hover{background:#94a3b833;color:#f9fafb}.map-layer-hk-expand-icon{width:14px;height:14px;transition:transform .15s ease}.map-layer-hk-expand-btn[aria-expanded=true] .map-layer-hk-expand-icon{transform:rotate(180deg)}.map-layer-hk-sub{margin:0 0 6px 12px;padding-left:8px;border-left:2px solid rgba(148,163,184,.35)}.map-layer-hk-sub-item{padding:4px 2px;font-size:12px}.map-layer-hk-type-mode{font-weight:500;color:#e2e8f0e6}.map-layer-hk-sub-heading{font-size:10px;font-weight:600;color:#94a3b8f2;margin:8px 2px 4px;letter-spacing:.04em}.map-layer-hk-type-list{max-height:180px;overflow-y:auto;margin-top:2px;padding-right:4px}.map-layer-hk-type-list.is-disabled{opacity:.45;pointer-events:none}.map-layer-hk-type-item{display:flex;align-items:center;gap:6px;padding:3px 2px;font-size:12px;color:#f9fafbe6;cursor:pointer;user-select:none}.map-layer-hk-type-item input[type=checkbox]{width:13px;height:13px;margin:0;border-radius:3px;border:1px solid transparent;background:#212121!important;background-color:#212121!important;-webkit-appearance:none;appearance:none;display:inline-block;flex-shrink:0}.map-layer-hk-type-item input[type=checkbox]:checked{background:#fbbf24!important;background-color:#fbbf24!important;border-color:transparent}.map-layer-hk-type-item input[type=checkbox]:focus-visible{outline:2px solid rgba(251,191,36,.45);outline-offset:2px}.map-layer-hk-type-swatch{width:10px;height:10px;border-radius:2px;flex-shrink:0;border:1px solid rgba(255,255,255,.35)}.map-layer-hk-type-label{flex:1;line-height:1.3;min-width:0}.map-layer-hk-type-count{font-size:10px;color:#94a3b8e6;flex-shrink:0}.map-layer-hk-poi-grids{display:flex;flex-direction:column;gap:0;margin:2px 0 6px}.map-layer-hk-poi-grid-row.map-layer-item-with-help{align-items:center;padding:3px 2px}.map-layer-hk-poi-grid-row .map-layer-hk-poi-grid-item{flex:1;min-width:0;padding:2px 0}.map-layer-hk-poi-grid-row{display:flex;align-items:center;gap:6px}.map-layer-hk-poi-grid-item{display:flex;align-items:center;gap:8px;padding:5px 2px;min-height:24px;line-height:1.2}.map-layer-hk-poi-grid-item input[type=checkbox]{width:14px;height:14px;margin:0;border-radius:3px;border:1px solid transparent;background:#212121!important;background-color:#212121!important;-webkit-appearance:none;appearance:none;display:inline-block;flex-shrink:0;vertical-align:middle}.map-layer-hk-poi-grid-item input[type=checkbox]:checked{background:#fbbf24!important;background-color:#fbbf24!important;border-color:transparent}.map-layer-hk-poi-grid-item input[type=checkbox]:focus-visible{outline:2px solid rgba(251,191,36,.45);outline-offset:2px}.map-layer-hk-poi-grid-item .map-layer-hk-type-swatch{width:10px;height:10px;margin:0;flex-shrink:0}.map-layer-hk-poi-grid-item .map-layer-hk-type-label{flex:1;line-height:1.2;padding:0}.poi-grid-download-btn{--poi-download-pct:0;width:18px;height:18px;border:1px solid rgba(148,163,184,.46);border-radius:50%;padding:0;flex:0 0 18px;display:inline-flex;align-items:center;justify-content:center;color:#f9fafbe6;background:conic-gradient(#60a5fa calc(var(--poi-download-pct) * 1%),#334155b8 0),#0f172ab8;cursor:pointer;font-size:11px;line-height:1}.poi-grid-download-btn .poi-grid-download-icon{width:13px;height:13px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#0f172aeb;font-size:10px;line-height:1}.poi-grid-download-btn:hover{border-color:#bfdbfed9;color:#fff}.poi-grid-download-btn:disabled{cursor:progress;opacity:.9}.poi-grid-download-btn.is-done{background:conic-gradient(#34d399 100%,#334155b8 0),#0f172ab8}.poi-grid-download-btn.is-error{background:conic-gradient(#f87171 100%,#334155b8 0),#0f172ab8}.map-layer-item--unavailable{opacity:.45;cursor:not-allowed}.map-layer-item--unavailable input[type=checkbox]{cursor:not-allowed}#bottombar{position:fixed;left:0;right:0;bottom:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:10px var(--nav-bar-gap);pointer-events:none}#bottombar>div{pointer-events:auto}.bb-strip{flex:1;max-width:none;width:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--nav-bar-gap);padding:0;border-radius:0;background:transparent;border:none;box-shadow:none;backdrop-filter:none;font-size:11px;color:#0f172a}.bb-left,.bb-right{display:flex;align-items:center;gap:var(--nav-bar-gap)}.bb-left{flex:1}.bb-right{flex-shrink:0}.bb-tools{display:flex;align-items:center;gap:var(--nav-bar-gap);margin:0;flex-shrink:0}.bb-tool-btn{width:var(--nav-bar-circle);height:var(--nav-bar-circle);min-width:var(--nav-bar-circle);min-height:var(--nav-bar-circle);padding:0;border-radius:999px;border:1px solid rgba(31,41,55,.7);background:#0f172ab3;cursor:pointer;color:#f9fafbe6;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .16s ease-out,border-color .16s ease-out,color .16s ease-out}.bb-tool-btn:hover{border-color:#f9fafbe6;background:#0f172ae6;color:#fff}.bb-tool-btn.on{border-color:#f9fafbf2;background:#0f172a;color:#fff}.bb-tool-btn img{width:12px;height:12px;display:block;filter:brightness(0) invert(1)}.bb-tool-icon svg{width:14px;height:14px;display:block}.bb-tool-icon{font-size:11px;line-height:1;font-weight:600;display:inline-block;vertical-align:middle}.bb-tool-icon-line{font-size:11px}.bb-brand{display:flex;align-items:center;justify-content:flex-start;padding:0;border-radius:0;background:transparent;border:none;flex-shrink:0}.bb-brand .tbl{display:none}.bb-brand .tbc{margin:0;border-right:none;padding:0;font-size:11px;letter-spacing:1px;color:#fff}.bb-stats,.bb-lines{display:none}.bb-net-length{margin-left:auto;margin-right:0;display:flex;align-items:baseline;font-size:11px;color:#fff;letter-spacing:.12em}.bb-net-length-label{text-transform:uppercase;color:#fff}.bb-net-length-val{margin-left:4px;color:#fff;font-size:11px;font-weight:500}.bb-modes{display:flex;gap:var(--nav-bar-gap)}.nav-transport-toggle{display:inline-flex;align-items:center;gap:2px;padding:2px;border-radius:999px;border:1px solid rgba(31,41,55,.7);background:#0f172ab3;flex-shrink:0}.nav-transport-btn{width:calc(var(--nav-bar-circle) - 4px);height:calc(var(--nav-bar-circle) - 4px);min-width:calc(var(--nav-bar-circle) - 4px);min-height:calc(var(--nav-bar-circle) - 4px);padding:0;border:none;border-radius:999px;background:transparent;color:#f9fafbb8;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .16s ease-out,color .16s ease-out,opacity .16s ease-out}.nav-transport-btn:hover:not(.is-disabled){color:#fff;background:#ffffff14}.nav-transport-btn.is-active{color:#fff;background:#ffffff24;box-shadow:inset 0 0 0 1px #ffffff1f}.nav-transport-btn.is-disabled{color:#94a3b873;cursor:not-allowed;opacity:.55}.nav-transport-btn svg{display:block}.nav-hsr-subbar{display:none;align-items:center;gap:4px;padding:2px;border-radius:999px;border:1px solid rgba(31,41,55,.7);background:#0f172ab3;flex-shrink:0}body.transport-mode-hsr .nav-hsr-subbar{display:inline-flex}.nav-hsr-only{display:none!important}body.transport-mode-hsr .nav-hsr-only{display:flex!important}.nav-flight-subbar{display:none;align-items:center;gap:var(--nav-bar-gap);padding:0;border:0;background:transparent;flex-shrink:0}body.transport-mode-flight .nav-flight-subbar{display:inline-flex}.nav-hsr-subbar-btn{height:calc(var(--nav-bar-circle) - 4px);min-width:44px;padding:0 12px;border:none;border-radius:999px;background:#ffffff24;color:#fff;font-size:12px;font-weight:700;cursor:pointer;letter-spacing:0}.nav-hsr-subbar-btn:hover{background:#ffffff38}.nav-flight-action-btn,.nav-flight-search-btn{width:var(--nav-bar-circle);height:var(--nav-bar-circle);min-width:var(--nav-bar-circle);min-height:var(--nav-bar-circle);padding:0;display:flex;align-items:center;justify-content:center;border:1px solid rgba(31,41,55,.7);border-radius:999px;background:#0f172ab3;color:#f9fafbe6;cursor:pointer;flex-shrink:0;transition:background .16s ease-out,border-color .16s ease-out,color .16s ease-out}.nav-flight-action-btn:hover,.nav-flight-search-btn:hover{border-color:#f9fafbe6;background:#0f172ae6;color:#fff}body.transport-mode-hsr .nav-metro-only,body.transport-mode-flight .nav-metro-only,body.transport-mode-flight .nav-hsr-only,body.transport-mode-metro .nav-hsr-only,body.transport-mode-hsr .map-layer-panel-col-metro,body.transport-mode-flight .map-layer-panel-col-metro,body.transport-mode-flight .map-layer-hsr-col,body.transport-mode-flight .map-layer-hk-col{display:none!important}body.transport-mode-hsr .map-layer-panel.is-hsr-mode,body.transport-mode-flight .map-layer-panel.is-hsr-mode{width:min(280px,calc(100vw - 64px))}.map-layer-hsr-col{min-width:0}body.transport-mode-flight .map-layer-flight-col{display:block!important}.map-layer-flight-tier-list{display:grid;grid-template-columns:1fr;gap:4px;margin:6px 0 10px}.map-layer-flight-tier-item{gap:6px}body.transport-mode-flight .map-layer-flight-col .map-layer-item{min-height:22px;white-space:nowrap}.map-layer-flight-tier-swatch{width:9px;height:9px;border-radius:50%;flex:0 0 auto;box-shadow:0 0 0 1px #ffffff42;position:relative}.map-layer-flight-tier-swatch .map-layer-flight-color-input{position:absolute;left:-7px;top:-7px;width:23px;height:23px;padding:0;border:0;opacity:0;cursor:pointer}.map-layer-flight-tier-swatch:has(.map-layer-flight-color-input){cursor:pointer}.map-layer-flight-tier-swatch:has(.map-layer-flight-color-input):hover{box-shadow:0 0 0 2px #ffffff6b}.map-layer-flight-tier-swatch:focus-within{outline:2px solid rgba(251,191,36,.72);outline-offset:3px}.map-layer-flight-tier-mega{background:#ef4444}.map-layer-flight-tier-large{background:#f97316}.map-layer-flight-tier-regional{background:#facc15}.map-layer-flight-tier-medium{background:#22c55e}.map-layer-flight-tier-small{background:#38bdf8}.map-layer-flight-tier-base{background:#0c2f8f}.map-layer-hsr-grade-heading{margin-top:10px}.map-layer-hsr-style-row{display:flex;flex-direction:column;gap:6px;margin:4px 0 10px;padding:7px 8px;border:1px solid rgba(255,255,255,.1);border-radius:6px;background:#ffffff0d}.map-layer-hsr-style-color,.map-layer-hsr-style-width{display:flex;align-items:center;gap:8px;min-height:20px;font-size:12px;color:#ffffffdb}.map-layer-hsr-style-color span:first-child,.map-layer-hsr-style-width span:first-child{min-width:52px;color:#ffffffad}.map-layer-hsr-style-width input[type=range]{flex:1 1 auto;min-width:0;height:18px;appearance:none;-webkit-appearance:none;background:transparent;accent-color:#fbbf24}.map-layer-hsr-style-width input[type=range]::-webkit-slider-runnable-track{height:4px;border-radius:999px;background:#fbbf24}.map-layer-hsr-style-width input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;margin-top:-5px;border:2px solid rgba(255,255,255,.78);border-radius:50%;background:#fbbf24;box-shadow:0 1px 4px #00000047}.map-layer-hsr-style-width input[type=range]::-moz-range-track{height:4px;border-radius:999px;background:#fbbf24}.map-layer-hsr-style-width input[type=range]::-moz-range-thumb{width:14px;height:14px;border:2px solid rgba(255,255,255,.78);border-radius:50%;background:#fbbf24;box-shadow:0 1px 4px #00000047}#hsr-my-line-width-value{width:18px;text-align:right;font-variant-numeric:tabular-nums;color:#ffffffb8}.map-layer-hsr-grade-list{display:grid;grid-template-columns:1fr 1fr;gap:6px 8px;margin-bottom:10px}.map-layer-hsr-grade-item{gap:6px}.map-layer-hsr-grade-swatch{width:9px;height:9px;border-radius:50%;flex:0 0 auto;box-shadow:0 0 0 1px #ffffff42;position:relative}.map-layer-hsr-grade-swatch .map-layer-flight-color-input{position:absolute;left:-7px;top:-7px;width:23px;height:23px;padding:0;border:0;opacity:0;cursor:pointer}.map-layer-hsr-grade-swatch:hover{box-shadow:0 0 0 2px #ffffff6b}.map-layer-hsr-grade-swatch:focus-within{outline:2px solid rgba(251,191,36,.72);outline-offset:3px}.map-layer-hsr-grade-special{background:#ff3b30}.map-layer-hsr-grade-first{background:#fc0}.map-layer-hsr-grade-second{background:#32d74b}.map-layer-hsr-grade-third{background:#64d2ff}.tbl{font-size:9px;color:var(--t4);letter-spacing:4px;padding-right:12px;border-right:1px solid var(--bd2);margin-right:12px}.tbc{font-size:12px;font-weight:500;color:var(--t1);letter-spacing:2px;padding-right:12px;border-right:1px solid var(--bd2);margin-right:12px}.tbs{display:flex;flex-direction:column;padding:0 10px;border-right:1px solid var(--bd2)}.tbs-l{font-size:7px;color:var(--t4);letter-spacing:1.5px;text-transform:uppercase;margin-bottom:1px}.tbs-v{font-size:11px;font-weight:400;color:var(--t1)}.metro-line-card{display:flex;align-items:flex-end;gap:22px}.metro-line-point{display:flex;flex-direction:column;align-items:center;gap:4px}.metro-line-point>div{width:8px;height:8px;border-radius:50%;background:#fff}.metro-line-point p{font-size:10px;color:var(--t1);white-space:nowrap}#time-block{display:flex;align-items:center;gap:6px;padding:0 8px}#time-block>.time-wrap{display:flex;align-items:center;gap:4px}#time-display{font-size:11px;font-weight:300;letter-spacing:0;color:#e5e7eb;white-space:nowrap}#day-display{display:none}body.ui-light #time-display,body.ui-light .bb-net-length,body.ui-light .bb-net-length-label,body.ui-light .bb-net-length-val,body.ui-light .tbc{color:#fff}body.ui-standard #time-display,body.ui-standard .bb-net-length,body.ui-standard .bb-net-length-label,body.ui-standard .bb-net-length-val,body.ui-standard .tbc,body.ui-standard .bb-brand .tbc,body.ui-nav-black #time-display,body.ui-nav-black .bb-net-length,body.ui-nav-black .bb-net-length-label,body.ui-nav-black .bb-net-length-val,body.ui-nav-black .tbc,body.ui-nav-black .bb-brand .tbc{color:#111827}#peak-badge{display:none}#peak-badge.peak{background:#c8973a26;color:var(--peak);border:1px solid rgba(200,151,58,.3)}#peak-badge.offpeak{background:#4a9e6a1f;color:var(--offpeak);border:1px solid rgba(74,158,106,.25)}.speed-btns{display:flex;gap:6px;align-items:center}.sp-btn{width:26px;height:26px;padding:0;border-radius:999px;background:#000000b3;border:1px solid rgba(31,41,55,.7);color:#f9fafbe6;font-size:11px;cursor:pointer;transition:all .12s;display:flex;align-items:center;justify-content:center}.sp-btn:hover{border-color:#f9fafbe6;box-shadow:0 0 0 1px #94a3b8cc}.sp-btn.on{background:#0f172a;color:#fff;border-color:#f9fafbf2}.speed-slider{display:flex;flex-direction:column;gap:0;margin-left:0;user-select:none}.speed-track{position:relative;display:flex;align-items:center;height:24px;padding:0 8px;cursor:pointer;border-radius:999px;background:#0f172ab3;border:1px solid rgba(31,41,55,.7)}.speed-bubble{position:absolute;top:-24px;left:0;transform:translate(-50%);min-width:40px;height:20px;padding:0 6px;border-radius:999px;background:#0f172af2;color:#fff;display:flex;align-items:center;justify-content:center;font-size:10px;box-shadow:0 4px 10px #00000040;pointer-events:none}.speed-bubble-hidden{opacity:0;transform:translate(-50%) translateY(4px);transition:opacity .15s ease,transform .15s ease}.speed-bubble:not(.speed-bubble-hidden){opacity:1;transform:translate(-50%) translateY(0)}.speed-bars{display:flex;align-items:flex-end;gap:4px;width:140px;height:9px}.speed-bar{flex:0 0 3px;width:3px;border-radius:999px;height:100%;background:#9ca3afe6;transition:background-color .15s ease}.speed-bar.active{background:#fff}.speed-current{font-size:10px;color:#f9fafbe6}@media(max-width:768px){:root{--ui-scale: min(1, calc(100vw / 414))}html,body{height:auto;min-height:100%;overflow:auto;overflow-x:hidden}#screen-ticket{position:fixed;inset:0;overflow:hidden}#screen-ticket .ticket-meta{top:max(1.25rem,env(safe-area-inset-top));left:max(1rem,env(safe-area-inset-left));right:max(1rem,env(safe-area-inset-right));max-width:none}#screen-ticket .ticket-meta h1{font-size:2.4rem;letter-spacing:.18em}#screen-ticket .ticket-meta p{margin-top:1.5rem;font-size:.85rem}#screen-ticket .ticket-brand{top:1rem;right:1.5rem;font-size:1.1rem}#ticket-fan-root{bottom:0;right:0}.ticket-help{left:max(1rem,env(safe-area-inset-left));right:max(1rem,env(safe-area-inset-right));bottom:max(1rem,env(safe-area-inset-bottom));text-align:center;font-size:10px;letter-spacing:.1em;line-height:1.4}#screen-game{padding-bottom:0}#bottombar{padding:8px max(8px,env(safe-area-inset-left)) max(8px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-right));bottom:0}.bb-strip{align-items:center}.bb-left{flex:1;min-width:0;flex-wrap:nowrap;row-gap:0;overflow:hidden}.bb-right{flex-shrink:0}.bb-brand .tbc{max-width:min(120px,26vw);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.bb-net-length-label{display:none}.bb-net-length-val{font-size:10px}#time-display{font-size:10px;white-space:nowrap}.speed-slider{flex:1 1 100px;min-width:72px;max-width:160px}.bb-tools{overflow-x:auto;padding-bottom:4px;-webkit-overflow-scrolling:touch;flex-shrink:0}.panel{top:8px;left:8px;right:auto;transform:none}#custom-zoom-control{right:10px!important;bottom:62px!important}.map-layer-panel{right:48px;bottom:58px}}#nav-btn-more{display:none}.mobile-nav-menu{position:fixed;left:max(10px,env(safe-area-inset-left));bottom:62px;z-index:1001;width:112px;display:none;flex-direction:column;justify-content:flex-start;gap:0px;padding:4px;height:fit-content;border-radius:12px;background:#000000db;border:1px solid rgba(31,41,55,.7);box-shadow:0 10px 35px #0000008c,0 0 0 1px #ffffff0a;overflow:visible;pointer-events:none}.mobile-nav-menu.open{display:flex;pointer-events:auto}.mobile-nav-menu-content{display:flex;flex-direction:column;gap:2px;margin-top:0}.mobile-nav-menu-close{position:absolute;top:6px;right:6px;width:26px;height:26px;border-radius:999px;border:1px solid rgba(31,41,55,.7);background:#0f172a80;color:#f9fafbf2;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;line-height:1}.mobile-nav-menu-close:hover{border-color:#f9fafbe6;background:#0f172acc;color:#fff}.mobile-nav-menu-close{display:none}.mobile-nav-menu .bb-tools{display:grid;grid-template-columns:repeat(3,var(--nav-bar-circle));gap:3px 3px;margin:0;padding:0;overflow:hidden}.mobile-nav-menu .bb-tool-btn{width:var(--nav-bar-circle);height:var(--nav-bar-circle);min-width:var(--nav-bar-circle);min-height:var(--nav-bar-circle);flex-shrink:0}.mobile-place-action-btn{width:28px;height:28px;border-radius:999px;border:1px solid rgba(31,41,55,.7);background:#0f172adb;color:#f9fafbf2;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 18px #00000061,0 0 0 1px #ffffff0a;font-size:13px;font-weight:700;line-height:1}.mobile-nav-menu .speed-slider{margin-left:0;width:102px;flex:0 0 auto;margin-top:0;margin-bottom:0;position:relative;height:auto;display:flex;flex-direction:column;gap:0;justify-content:flex-start}.mobile-nav-menu .speed-track{height:18px;padding:0 4px}.mobile-nav-menu .speed-bars{width:auto;flex:1 1 auto;height:6px;gap:0;justify-content:space-between}.mobile-nav-menu .speed-bar{flex:0 0 2px;width:2px}.mobile-nav-menu .speed-bubble{top:-20px}.mobile-nav-menu #time-display{display:none}.mobile-speed-ends-labels{display:flex;justify-content:space-between;align-items:center;width:102px;padding:0 3px;position:static;margin-top:0;font-size:8px;letter-spacing:.02em;color:#f9fafbe6;pointer-events:none}@media(max-width:768px)and (hover:none){#nav-btn-more{display:flex;align-items:center;justify-content:center;pointer-events:auto;margin-left:6px;flex-shrink:0;position:relative}#nav-btn-more .bb-tool-icon{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;line-height:1;font-size:16px;transform:translateY(-1px)}#time-display{display:block;margin-left:6px;font-size:10px;line-height:1;white-space:nowrap}}.pause-btn{width:28px;height:28px;padding:0;border-radius:999px;background:#0f172acc;border:1px solid rgba(31,41,55,.9);color:#f9fafb;font-size:13px;cursor:pointer;transition:all .12s;display:flex;align-items:center;justify-content:center}.pause-btn:hover,.pause-btn.on{border-color:#fff6}.tbr{margin-left:auto;display:flex;gap:5px}.tb-btn{width:var(--nav-bar-circle);height:var(--nav-bar-circle);min-width:var(--nav-bar-circle);min-height:var(--nav-bar-circle);padding:0;border-radius:999px;background:#0f172ab3;border:1px solid rgba(31,41,55,.7);color:#f9fafbe6;font-size:16px;letter-spacing:.5px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}.tb-btn:hover{color:#fff;border-color:#f9fafbf2;background:#0f172ae6}.sb-sec{padding:0}.sb-sec-title{font-size:7px;color:var(--t4);letter-spacing:2px;text-transform:uppercase;margin-bottom:6px}.btn-nl{padding:6px 10px;background:var(--bg3);border:1px solid var(--bd3);color:var(--t2);font-size:9px;letter-spacing:1.5px;cursor:pointer;transition:all .12s;text-align:left}.btn-nl:hover{background:var(--bg4);color:var(--t1)}#lines-scroll{display:flex;flex-direction:row;align-items:center;gap:4px;overflow-x:auto;padding:0 4px;max-width:32vw}.line-row{padding:5px 8px;margin-bottom:0;cursor:pointer;border:1px solid var(--bd2);transition:all .12s;border-radius:999px;background:#0c0c0ce6}.line-row:hover,.line-row.active{border-color:var(--t2);background:var(--bg3)}.lr-top{display:flex;align-items:center;gap:6px;margin-bottom:3px}.lr-dot{width:14px;height:14px;border-radius:50%;flex-shrink:0;border:2px solid rgba(0,0,0,.7);box-shadow:0 0 0 1px #0009}.lr-name{font-size:11px;font-weight:500;color:var(--t1);flex:1}.lr-btns{display:flex;gap:2px}.lr-ibtn{background:none;border:none;color:var(--t4);cursor:pointer;font-size:11px;padding:1px 3px;transition:color .12s;line-height:1}.lr-ibtn:hover{color:var(--t1)}.lr-sub{font-size:9px;color:var(--t3);padding-left:15px}.sb-tips{display:none}.sb-tip{font-size:8px;color:var(--t4);line-height:2.2}.confirm-line-bar{position:fixed;bottom:66px;left:50%;transform:translate(-50%);z-index:1000;background:#080808f2;border:1px solid var(--bd3);padding:8px 14px;border-radius:12px;box-shadow:0 4px 20px #0006}.confirm-line-bar .m-btn.pri{padding:8px 20px;font-size:11px;letter-spacing:2px}#hint-wrap{position:fixed;bottom:80px;left:50%;transform:translate(-50%);z-index:1000;background:#080808f2;border:1px solid var(--bd3);padding:5px 28px 5px 14px;font-size:9px;color:var(--t3);letter-spacing:1px;white-space:nowrap;display:flex;align-items:center;gap:6px;box-sizing:border-box}#hint{flex:1}#hint-close{position:absolute;top:50%;right:6px;transform:translateY(-50%);background:none;border:none;color:var(--t4);cursor:pointer;font-size:12px;line-height:1;padding:2px 4px;border-radius:6px}#hint-close:hover{color:var(--t1);background:#ffffff14}.place-distance-hud{position:fixed;left:50%;transform:translate(-50%);bottom:calc(52px + env(safe-area-inset-bottom,0px));z-index:1001;display:none;align-items:center;justify-content:center;gap:7px;padding:7px 16px;border-radius:999px;border:1px solid rgba(31,41,55,.7);background:#0f172ab8;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 4px 18px #00000059;pointer-events:none;font-variant-numeric:tabular-nums}.place-distance-val{font-size:14px;font-weight:600;line-height:1;color:#f9fafbf5;letter-spacing:.02em}.place-distance-sep{font-size:13px;font-weight:500;line-height:1;color:#f9fafb6b}.place-distance-unit{font-size:10px;font-weight:600;line-height:1;color:#f9fafbb8;letter-spacing:.08em;text-transform:lowercase}.place-distance-hud:not(.place-distance-hud--dual) .place-distance-sep,.place-distance-hud:not(.place-distance-hud--dual) .place-distance-val-seg{display:none}@media(max-width:768px){.place-distance-hud{bottom:calc(48px + env(safe-area-inset-bottom,0px));padding:6px 14px;gap:6px}.place-distance-val{font-size:13px}}.panel{position:fixed;z-index:2000;background:#000c;border:1px solid var(--bd2);display:none;flex-direction:column;top:12px;left:12px;width:min(320px,calc(100vw - 24px));max-height:calc(100vh - 96px);border-radius:20px;box-shadow:0 12px 40px #00000080,0 0 0 1px #ffffff0f;overflow:hidden}.ph{padding:10px 12px;border-bottom:1px solid var(--bd2);display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.ph-title{font-size:9px;color:var(--t3);letter-spacing:2px;text-transform:uppercase}.ph-close{background:none;border:none;color:var(--t4);cursor:pointer;font-size:14px;line-height:1;transition:color .12s;border-radius:10px;padding:4px}.ph-close:hover{color:var(--t1);background:#ffffff0f}.pb{padding:12px;overflow-y:auto;flex:1}:root{--metro-panel-radius:20px;--metro-panel-close-size:28px;--metro-panel-close-bg:rgba(0,0,0,.3);--metro-panel-close-bg-hover:rgba(0,0,0,.5)}.panel,#panel-station .panel-container,#panel-train.panel,#panel-ridership.panel,#panel-line-info.panel,#panel-poptravel.panel,#panel-mapstyle.panel,.panel-flight .flight-panel-card,.panel-hsr-station .hsr-station-card,.panel-hsr-train .hsr-train-card,.panel-hsr-schedule .hsr-sched-card,.map-layer-panel{border-radius:var(--metro-panel-radius)!important}#panel-mapstyle.panel{clip-path:inset(0 round var(--metro-panel-radius))!important}.flight-panel-close,.hsr-station-close,.hsr-train-close,.hsr-sched-close,#panel-ridership .ridership-close,#panel-train .train-panel-close,#panel-line-info .line-info-close,#panel-poptravel .poptravel-close,#panel-mapstyle .poptravel-close,.map-layer-panel-close,.ph-close,.line-info-side-close,#panel-station .interactive-btn[onclick*=panel-station]{position:relative;display:flex;align-items:center;justify-content:center;width:var(--metro-panel-close-size)!important;height:var(--metro-panel-close-size)!important;min-width:var(--metro-panel-close-size);min-height:var(--metro-panel-close-size);padding:0!important;border:none!important;border-radius:50%!important;background:var(--metro-panel-close-bg)!important;color:#fff!important;font-size:0!important;line-height:0!important;cursor:pointer}.flight-panel-close:hover,.hsr-station-close:hover,.hsr-train-close:hover,.hsr-sched-close:hover,#panel-ridership .ridership-close:hover,#panel-train .train-panel-close:hover,#panel-line-info .line-info-close:hover,#panel-poptravel .poptravel-close:hover,#panel-mapstyle .poptravel-close:hover,.map-layer-panel-close:hover,.ph-close:hover,.line-info-side-close:hover,#panel-station .interactive-btn[onclick*=panel-station]:hover{background:var(--metro-panel-close-bg-hover)!important;color:#fff!important}.flight-panel-close:before,.flight-panel-close:after,.hsr-station-close:before,.hsr-station-close:after,.hsr-train-close:before,.hsr-train-close:after,.hsr-sched-close:before,.hsr-sched-close:after,#panel-ridership .ridership-close:before,#panel-ridership .ridership-close:after,#panel-train .train-panel-close:before,#panel-train .train-panel-close:after,#panel-line-info .line-info-close:before,#panel-line-info .line-info-close:after,#panel-poptravel .poptravel-close:before,#panel-poptravel .poptravel-close:after,#panel-mapstyle .poptravel-close:before,#panel-mapstyle .poptravel-close:after,.map-layer-panel-close:before,.map-layer-panel-close:after,.ph-close:before,.ph-close:after,.line-info-side-close:before,.line-info-side-close:after,#panel-station .interactive-btn[onclick*=panel-station]:before,#panel-station .interactive-btn[onclick*=panel-station]:after{content:"";position:absolute;left:50%;top:50%;width:12px;height:2.5px;border-radius:999px;background:currentColor;transform:translate(-50%,-50%) rotate(45deg)}.flight-panel-close:after,.hsr-station-close:after,.hsr-train-close:after,.hsr-sched-close:after,#panel-ridership .ridership-close:after,#panel-train .train-panel-close:after,#panel-line-info .line-info-close:after,#panel-poptravel .poptravel-close:after,#panel-mapstyle .poptravel-close:after,.map-layer-panel-close:after,.ph-close:after,.line-info-side-close:after,#panel-station .interactive-btn[onclick*=panel-station]:after{transform:translate(-50%,-50%) rotate(-45deg)}#modal-line,#modal-operate{top:12px;left:12px;transform:none;width:320px;max-height:calc(100vh - 96px)}#modal-line.panel{background:transparent!important;border:none;display:none;flex-direction:column;gap:12px;padding:0;box-shadow:none}#modal-line .modal-line-layout{display:flex;flex-direction:row;align-items:stretch;gap:8px;width:100%;background:transparent!important}#modal-line .modal-line-main{flex:0 0 auto;width:100%;max-width:320px;background:transparent!important}#modal-line.panel.modal-line--palette-open{width:min(568px,calc(100vw - 24px))!important;max-width:min(568px,calc(100vw - 24px));background:transparent!important;border:none!important;box-shadow:none!important;overflow:visible}#modal-line.panel.modal-line--stock-open{width:min(568px,calc(100vw - 24px))!important;max-width:min(568px,calc(100vw - 24px));overflow:visible}#modal-line.panel.modal-line--palette-overlay{display:flex!important;width:240px!important;max-width:min(240px,calc(100vw - 24px));background:transparent!important;border:none!important;box-shadow:none!important;overflow:visible!important;z-index:2100;pointer-events:none}#modal-line.panel.modal-line--palette-overlay .line-color-palette-drawer{pointer-events:auto}#modal-line.panel.modal-line--palette-overlay .modal-line-layout{gap:0;background:transparent!important}#modal-line.panel.modal-line--palette-overlay .modal-line-main,#modal-line.panel.modal-line--palette-overlay .modal-line-close{display:none}#modal-line .line-color-palette-drawer{display:none;flex:0 0 240px;width:240px;max-width:calc(100vw - 360px);max-height:calc(100vh - 96px);height:max-content;background:transparent!important;border:none!important;box-shadow:none!important;align-self:flex-start}#modal-line.modal-line--palette-open .line-color-palette-drawer{display:flex;flex-direction:column;background:transparent!important}#modal-line.modal-line--palette-open .line-stock-drawer{display:none}#modal-line .line-color-palette-inner{flex:0 1 auto;min-height:0;max-height:calc(100vh - 96px);overflow-y:auto;overflow-x:hidden;background:#252628;border:1px solid rgba(255,255,255,.13);border-radius:20px;padding:16px 14px;color:#fff;box-shadow:0 12px 34px #0000006b,inset 0 1px #ffffff0d}#modal-line .line-color-palette-hd{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#e4e6eb;margin-bottom:12px}#modal-line .line-color-palette-sec{margin-bottom:14px}#modal-line .line-color-palette-sec:last-child{margin-bottom:0}#modal-line .line-color-palette-sec-title{font-size:11px;color:#e4e6eb;font-weight:700;margin-bottom:8px}#modal-line .line-official-city-tabs{display:none;flex-direction:column;align-items:stretch;gap:6px;margin-bottom:8px;width:100%;max-width:100%}#modal-line .line-official-city-tabs-row--cols4{display:flex!important;flex-wrap:nowrap;justify-content:flex-start;align-items:center;gap:10px;width:100%;max-width:100%;box-sizing:border-box}#modal-line .line-official-city-tabs-row--cols4 .toggle-item{flex:0 0 auto;padding:4px 10px;text-align:left}#modal-line .line-official-city-tabs-row--cols2{display:flex!important;flex-wrap:nowrap;justify-content:flex-start;align-items:center;gap:10px;width:100%;max-width:100%;box-sizing:border-box}#modal-line .line-official-city-tabs-row--cols2 .toggle-item{flex:0 0 auto;padding:4px 10px;text-align:left}#modal-line .line-official-city-tabs-row:not(.line-official-city-tabs-row--cols4):not(.line-official-city-tabs-row--cols2){display:flex;flex-wrap:nowrap;width:100%;max-width:100%;justify-content:flex-start;gap:10px;box-sizing:border-box}#modal-line .line-official-city-tabs-row:not(.line-official-city-tabs-row--cols4) .toggle-item{flex:0 0 auto;padding:4px 10px}#modal-line .line-official-color-empty{font-size:11px;color:#6b7280;line-height:1.5;margin:0}#modal-line .line-official-color-grid{display:flex;flex-direction:column;gap:4px;max-height:min(280px,40vh);overflow-y:auto;padding-right:4px;margin:0 -2px 0 0}#modal-line .line-official-swatch{display:flex;align-items:center;gap:8px;width:100%;padding:6px 8px;border:none;border-radius:10px;background:#303133;cursor:pointer;color:#e5e7eb;font-size:11px;text-align:left;border:1px solid transparent;transition:background .15s,border-color .15s,box-shadow .15s}#modal-line .line-official-swatch:hover{background:#38393b}#modal-line .line-official-swatch.active{border-color:#ffffff59;box-shadow:0 0 0 1px #ffffff0f}#modal-line .line-official-swatch-dot{width:14px;height:14px;border-radius:4px;flex-shrink:0;box-shadow:inset 0 0 0 1px #ffffff1f}#modal-line .line-official-swatch-txt{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#modal-line .line-color-palette-sec--custom .line-color-palette-sec-title{margin-bottom:6px}#modal-line .line-custom-color-tools{display:flex;align-items:center;justify-content:flex-start}#modal-line .line-custom-color-input[type=color]{width:26px;height:26px;padding:0;border:1px solid rgba(255,255,255,.14);border-radius:7px;cursor:pointer;background:#303133;-webkit-appearance:none;appearance:none;box-shadow:0 1px 3px #00000059,inset 0 1px #ffffff0f;transition:border-color .15s,box-shadow .15s,transform .12s}#modal-line .line-custom-color-input[type=color]:hover{border-color:#ffffff47;box-shadow:0 2px 6px #0006,inset 0 1px #ffffff14}#modal-line .line-custom-color-input[type=color]::-webkit-color-swatch-wrapper{padding:2px;border-radius:5px}#modal-line .line-custom-color-input[type=color]::-webkit-color-swatch{border:none;border-radius:4px}#modal-line .line-custom-color-input[type=color]::-moz-color-swatch{border:none;border-radius:4px}#modal-line .line-color-palette-toggle{width:22px;height:22px;min-width:22px;border-radius:6px;border:none;background:transparent;color:#9ca3af;display:inline-flex;align-items:center;justify-content:center;padding:0;cursor:pointer;flex-shrink:0;box-shadow:none;opacity:1;transition:opacity .15s,color .15s,transform .15s}#modal-line .line-color-palette-toggle:hover{opacity:1;color:#e5e7eb}#modal-line .line-color-palette-toggle svg{display:block}#modal-line .modal-line-close{position:absolute;top:8px;right:8px;z-index:30;background:#303133;border:none;color:#fff;width:28px;height:28px;border-radius:50%;cursor:pointer;font-size:16px;line-height:1;transition:background .2s}#modal-line .modal-line-close:hover{background:#3a3b3e}#modal-line .card-container{width:100%;max-width:320px;display:flex;flex-direction:column;gap:12px;background:transparent!important}#modal-line .visual-card{background:#252628;border:1px solid rgba(255,255,255,.13);border-radius:20px;padding:24px;position:relative;overflow:hidden;height:200px;color:#fff;box-shadow:none}#modal-line .visual-card:before{content:"";position:absolute;top:0;left:0;right:0;height:5px;background:var(--theme-color,#3b82f6);border-radius:20px 20px 0 0}#modal-line .track-line{position:absolute;left:0;right:0;top:55%;height:2px;background:#ffffff4d}#modal-line .sleeper{position:absolute;top:50%;height:8px;width:2px;background:#ffffff4d;transform:translateY(-50%)}#modal-line #line-sleeper-container{position:absolute;left:0;right:0;top:55%;height:8px;pointer-events:none;overflow:visible}#modal-line .top-down-train{position:absolute;top:55%;left:50%;transform:translate(-50%,-50%);display:flex;gap:4px;z-index:10}#modal-line .top-down-train--hsr{gap:2px;max-width:calc(100% - 32px)}#modal-line .train-car{background:var(--theme-color);border-radius:2px;box-shadow:0 0 15px var(--glow-color);transition:all .4s cubic-bezier(.175,.885,.32,1.275);position:relative;flex-shrink:0}#modal-line .train-car--hsr{border-radius:1px;box-shadow:0 0 8px var(--glow-color)}#modal-line .train-car--hsr-head{border-radius:0;clip-path:polygon(0 50%,14% 0,100% 0,100% 100%,14% 100%)}#modal-line .train-car--hsr-tail{border-radius:0;clip-path:polygon(0 0,86% 0,100% 50%,86% 100%,0 100%)}#modal-line .train-car--hsr-mid{border-radius:1px}#modal-line .train-car:after{content:"";position:absolute;top:2px;left:2px;right:2px;height:40%;background:#0006;border-radius:1px}#modal-line .train-car--hsr:after{top:1px;left:1px;right:1px;height:38%}#modal-line .train-car--hsr-head:after{left:22%;right:1px;border-radius:0 1px 1px 0}#modal-line .train-car--hsr-tail:after{left:1px;right:22%;border-radius:1px 0 0 1px}#modal-line .train-car--hsr-head:before,#modal-line .train-car--hsr-tail:before{content:"";position:absolute;top:50%;width:0;height:0;transform:translateY(-50%);border-top:2px solid transparent;border-bottom:2px solid transparent;opacity:.55}#modal-line .train-car--hsr-head:before{left:1px;border-right:3px solid rgba(0,0,0,.35)}#modal-line .train-car--hsr-tail:before{right:1px;border-left:3px solid rgba(0,0,0,.35)}@keyframes lineModalFadeIn{0%{opacity:0}to{opacity:1}}.hsr-pick-station{display:flex;flex-direction:row;align-items:center;pointer-events:auto;white-space:nowrap}.hsr-pick-station-name{font-size:11px;font-weight:600;line-height:1.2;white-space:nowrap;text-align:left;pointer-events:auto;cursor:pointer;touch-action:manipulation;padding:4px 6px;border-radius:4px}.hsr-pick-station-name--selected{font-weight:700;color:#ef4444!important}.china-city-pop-canvas-layer{pointer-events:none}.hsr-place-hint{position:fixed;top:14px;left:50%;right:auto;transform:translate(-50%);z-index:2300;max-width:min(520px,calc(100vw - 32px));padding:10px 14px;background:#000000d1;border:1px solid #333;border-radius:12px;box-shadow:0 6px 20px #00000059;pointer-events:none}.hsr-place-hint-text{margin:0;font-size:13px;line-height:1.45;font-weight:500;color:#f4f4f5}body.ui-light .hsr-place-hint{background:#000000d1;border-color:#333;box-shadow:0 6px 20px #00000059}body.ui-light .hsr-place-hint-text{color:#f4f4f5}.panel-hsr-schedule{display:none;flex-direction:column;position:fixed;top:12px;left:12px;transform:none;width:320px;max-width:min(320px,calc(100vw - 24px));max-height:calc(100vh - 96px);background:transparent;border:none;box-shadow:none;padding:0;z-index:2350;overflow:visible}.hsr-sched-close,.hsr-sched-action{position:absolute;top:8px;z-index:3;display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:none;border-radius:50%;background:#0000004d;color:#fff;font-size:0;line-height:0;cursor:pointer}.hsr-sched-close{right:8px}.hsr-sched-add-station{right:44px;color:#86efac}.hsr-sched-delete-route{right:80px;color:#fca5a5}.hsr-sched-close:before,.hsr-sched-close:after{content:"";position:absolute;left:50%;top:50%;width:12px;height:2.5px;border-radius:999px;background:currentColor;transform:translate(-50%,-50%) rotate(45deg)}.hsr-sched-close:after{transform:translate(-50%,-50%) rotate(-45deg)}.hsr-sched-add-station:before{content:"";position:absolute;left:50%;top:50%;width:13px;height:2.4px;border-radius:999px;background:currentColor;transform:translate(-50%,-50%)}.hsr-sched-add-station:after{content:"";position:absolute;left:50%;top:50%;width:2.4px;height:13px;border-radius:999px;background:currentColor;transform:translate(-50%,-50%)}.hsr-sched-delete-route:before{content:"";position:absolute;left:8px;top:10px;width:12px;height:10px;border:2px solid currentColor;border-top:0;border-radius:1px 1px 3px 3px}.hsr-sched-delete-route:after{content:"";position:absolute;left:7px;top:7px;width:14px;height:2px;border-radius:999px;background:currentColor;box-shadow:4px -3px 0 -1px currentColor}.hsr-sched-close:hover,.hsr-sched-action:hover{background:#00000080}.hsr-sched-add-station:hover{color:#bbf7d0}.hsr-sched-delete-route:hover{color:#fecaca}.hsr-sched-card{display:flex;flex-direction:column;max-height:calc(100vh - 96px);background:#252628;border:1px solid rgba(255,255,255,.13);border-radius:20px;color:#e4e4e7;box-shadow:0 12px 34px #0000006b,inset 0 1px #ffffff0d;overflow:hidden}.hsr-sched-header{flex:none;padding:18px 44px 12px 18px;border-bottom:1px solid rgba(255,255,255,.13)}.hsr-sched-route-tabs{display:flex;flex-direction:column;gap:6px}.hsr-sched-route-tab{margin:0;padding:0;border:none;background:transparent;font-size:14px;font-weight:700;line-height:1.35;color:#71717a;cursor:pointer;text-align:left}.hsr-sched-route-tab.is-active{color:#fff}.hsr-sched-route-tab:hover:not(.is-active){color:#a1a1aa}.hsr-sched-table-wrap{flex:1;min-height:100px;overflow:auto;padding:0 10px;scroll-padding-top:32px}.hsr-sched-table{width:100%;border-collapse:separate;border-spacing:0;font-size:11px;table-layout:fixed}.hsr-sched-table th{position:sticky;top:0;z-index:8;text-align:center;padding:10px 4px 8px;font-weight:600;font-size:10px;color:#fde68a;border-bottom:1px solid rgba(253,230,138,.28);background:#252628;background-color:#252628;box-shadow:0 -10px #252628,0 1px #fde68a29}.hsr-sched-sort-th{cursor:pointer;user-select:none}.hsr-sched-sort-th:hover{color:#d4d4d8}.hsr-sched-sort-th.is-sort-active{color:#fff}.hsr-sched-table th:nth-child(1){width:22%}.hsr-sched-table th:nth-child(2){width:20%}.hsr-sched-table th:nth-child(3){width:20%}.hsr-sched-table th:nth-child(4){width:26%}.hsr-sched-table th:nth-child(5){width:12%}.hsr-sched-table td{padding:8px 4px;border-bottom:1px solid #222;vertical-align:middle;text-align:center}.hsr-sched-row{cursor:pointer}.hsr-sched-row:hover{background:#ffffff0a}.hsr-sched-row.is-expanded{background:#ffffff0f}.hsr-sched-empty{text-align:center;color:#71717a;padding:20px 6px!important;font-size:11px}.hsr-sched-trainno-inp,.hsr-sched-time-inp,.hsr-sched-dwell-inp{width:100%;max-width:none;padding:4px 5px;border:1px solid rgba(255,255,255,.13);border-radius:8px;background:#303133;color:#fff;font-size:11px}.hsr-sched-duration{color:#d4d4d8;font-size:11px;white-space:nowrap}.hsr-sched-row-del{width:auto;height:auto;padding:0;border:none;border-radius:0;background:transparent;color:#fca5a5;font-size:15px;line-height:1;cursor:pointer}.hsr-sched-row-del:hover{color:#fecaca}.hsr-sched-col-del{text-align:center}.hsr-sched-detail{padding:6px 0 10px}.hsr-sched-detail-table{width:100%;font-size:10px;border-collapse:separate;border-spacing:0}.hsr-sched-detail-table th{position:sticky;top:0;z-index:4;padding:5px 3px;color:#fde68a;border-bottom:1px solid rgba(253,230,138,.24);background:#252628;background-color:#252628;font-weight:600}.hsr-sched-detail-table td{padding:6px 3px;border-bottom:1px solid #1a1a1a;vertical-align:middle}.hsr-sched-detail-table tbody tr:last-child td{padding-bottom:8px}.hsr-sched-cell-muted{color:#71717a;text-align:center;font-size:10px}.hsr-sched-time-read{display:inline-block;font-variant-numeric:tabular-nums;color:#d4d4d8;font-size:10px}.hsr-sched-stop-actions{white-space:nowrap}.hsr-sched-stop-del,.hsr-sched-stop-add{width:auto;height:auto;padding:0;margin-left:4px;border:none;border-radius:0;background:transparent;color:#fca5a5;cursor:pointer;font-size:14px;line-height:1}.hsr-sched-stop-add{color:#86efac}.hsr-sched-stop-add:hover{color:#bbf7d0}.hsr-sched-stop-del:hover{color:#fecaca}.hsr-sched-stop-pick-select{width:100%;max-width:none;padding:4px 5px;font-size:10px;background:#303133;color:#fff;border:1px solid rgba(255,255,255,.13);border-radius:8px}.hsr-sched-pending-stop td{background:#ffffff08}.hsr-sched-pending-cancel{width:auto;height:auto;padding:0;border:none;border-radius:0;background:transparent;color:#a1a1aa;cursor:pointer;font-size:14px;line-height:1}.hsr-sched-pending-cancel:hover{color:#e4e4e7}.hsr-sched-auto-freq{flex:0 0 auto;min-width:0}.hsr-sched-auto-freq-cols{display:grid;grid-template-columns:minmax(74px,1fr);gap:4px}.hsr-sched-auto-freq-item{display:flex;flex-direction:column;align-items:center;gap:3px;min-width:0}.hsr-sched-auto-freq-editor{display:flex;align-items:center;justify-content:center;gap:0;width:100%}.hsr-sched-auto-freq-step{width:18px;height:18px;border:none;background:transparent;color:#e4e4e7;padding:0;line-height:1;font-size:15px;font-weight:300;cursor:pointer;opacity:.95;transition:color .12s ease,opacity .12s ease,transform .12s ease}.hsr-sched-auto-freq-step:hover{color:#fff;opacity:1;transform:scale(1.06)}.hsr-sched-auto-freq-val{width:30px;min-width:30px;border:none;background:transparent;color:#fff;padding:0 1px;outline:none;font-size:13px;line-height:1;font-weight:700;text-align:center;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.hsr-sched-auto-freq-tag{font-size:9px;color:#71717a;line-height:1.1;white-space:nowrap}.hsr-sched-toolbar{flex:none;display:flex;justify-content:space-between;align-items:center;gap:8px;padding:10px 14px;border-top:1px solid #222}.hsr-sched-toolbar-left,.hsr-sched-toolbar-right{display:flex;align-items:center;min-width:0}.hsr-sched-toolbar-left{flex:0 0 auto}.hsr-sched-toolbar-right{justify-content:flex-end;gap:10px;flex:1 1 auto}.hsr-sched-icon-btn{width:auto;height:auto;padding:0;border:none;border-radius:0;background:transparent;color:#fff;font-size:20px;font-weight:700;cursor:pointer;line-height:1}.hsr-sched-icon-btn:hover{color:#e4e4e7}.hsr-sched-text-btn{padding:5px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.13);background:#303133;color:#e5e7eb;font-size:11px;font-weight:600;cursor:pointer}.hsr-sched-text-btn:hover{border-color:#444;color:#fff}.hsr-sched-foot{flex:none;display:flex;justify-content:flex-end;gap:8px;padding:0 14px 14px}.hsr-sched-foot-btn{padding:8px 14px;border-radius:999px;border:1px solid #27272a;background:#303133;color:#d9dde3;font-size:12px;cursor:pointer;transition:all .15s}.hsr-sched-foot-btn:hover{border-color:#444;color:#e5e7eb}.hsr-sched-foot-btn--pri{background:#f9fafb;border-color:#f9fafb;color:#000;font-weight:600}.hsr-sched-foot-btn--pri:hover{background:#e5e7eb}.panel-flight{display:none;flex-direction:column;position:fixed;top:12px;left:12px;transform:none;width:360px;max-width:min(360px,calc(100vw - 24px));max-height:calc(100vh - 96px);background:transparent;border:none;box-shadow:none;padding:0;z-index:2345;overflow:visible}.flight-panel-close,.flight-panel-edit-btn{position:absolute;top:8px;right:8px;z-index:3;display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:none;border-radius:50%;background:#0000004d;color:#fff;font-size:0;line-height:0;cursor:pointer}.flight-panel-edit-btn{right:44px}.flight-panel-close:before,.flight-panel-close:after{content:"";position:absolute;left:50%;top:50%;width:12px;height:2.5px;border-radius:999px;background:currentColor;transform:translate(-50%,-50%) rotate(45deg)}.flight-panel-close:after{transform:translate(-50%,-50%) rotate(-45deg)}.flight-panel-edit-btn:before{content:"\270e";position:absolute;left:50%;top:50%;width:auto;height:auto;border:0;border-radius:0;background:transparent;font-size:18px;font-weight:900;line-height:1;transform:translate(-50%,-50%)}.flight-panel-edit-btn:after{content:none}.flight-panel-close:hover,.flight-panel-edit-btn:hover,.flight-panel-edit-btn.is-active{background:#00000080}.flight-panel-card{position:relative;display:flex;flex-direction:column;max-height:calc(100vh - 96px);background:#000000d1;border:1px solid #334155;border-radius:20px;color:#e2e8f0;box-shadow:0 8px 24px #0006,inset 0 1px #ffffff0a;overflow:hidden}.flight-panel-base-btn{position:absolute;top:9px;right:44px;z-index:4;width:26px;height:26px;padding:0;border:1px solid transparent;border-radius:50%;background:#fff;color:#020617;cursor:pointer;box-shadow:0 8px 18px #0000006b}.flight-panel-base-btn:before{content:"";position:absolute;left:50%;top:50%;width:12px;height:12px;border:3px solid currentColor;border-radius:50% 50% 50% 0;transform:translate(-50%,-58%) rotate(-45deg)}.flight-panel-base-btn:after{content:"";position:absolute;left:50%;top:50%;width:4px;height:4px;border-radius:50%;background:currentColor;transform:translate(-50%,-73%)}.flight-panel-base-btn.is-base{background:#fbbf24;border-color:transparent}.panel-flight .flight-panel-close,.panel-flight .flight-panel-edit-btn{width:28px;height:28px;padding:0;font-size:0;line-height:0}.panel-flight .flight-panel-base-btn{top:9px;width:26px;height:26px;padding:0;right:44px}.flight-panel-header{flex:none;padding:18px 82px 12px 18px;border-bottom:1px solid #334155}.flight-panel-title{margin:0;font-family:Futura,Futura PT,Avenir Next,Century Gothic,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:38px;font-weight:900;color:#fff;line-height:1;letter-spacing:0}.flight-panel-title.is-route-toggle{cursor:pointer}.flight-panel-title.is-route-toggle:hover{color:#fbbf24}.flight-panel-title.is-route-pair{display:flex;align-items:flex-start;gap:14px;max-width:100%;white-space:normal}.flight-panel-subtitle.is-route-pair{display:none}.flight-panel-title.is-route-pair em{flex:0 0 auto;font-style:normal;line-height:1}.flight-panel-route-stop{display:flex;flex:0 0 min-content;flex-direction:column;align-items:flex-start;min-width:0;max-width:92px}.flight-panel-route-code-token{display:block;white-space:nowrap}.flight-panel-route-name-token{display:block;margin-top:9px;color:#e5e7eb;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Microsoft YaHei,sans-serif;font-size:14px;font-weight:800;line-height:1.35;white-space:normal;overflow-wrap:anywhere}.flight-panel-subtitle{margin:9px 0 0;font-size:14px;font-weight:800;color:#e5e7eb}.flight-panel-meta{display:grid;grid-template-columns:1fr 1fr;column-gap:14px;row-gap:2px;padding:10px 16px;border-bottom:1px solid #1e293b;font-size:11px}.flight-panel-meta-row{display:flex;justify-content:space-between;gap:12px;padding:4px 0;border-bottom:1px solid rgba(255,255,255,.05)}.flight-panel-meta-row span:first-child{color:#64748b}.flight-panel-meta-row span:last-child{color:#f8fafc;font-weight:800;text-align:right}.flight-panel-meta-pop span:last-child{color:#fbbf24;font-weight:600}.flight-panel-facility-row{grid-column:auto}#flight-panel-facility-more-row{grid-column:2;justify-content:flex-end}#flight-panel-facility-more-row>span{display:none}.flight-panel-facility-link{min-width:0;padding:0;border:0;border-bottom:1px solid rgba(251,191,36,.78);border-radius:0;background:transparent;color:#f8fafc;font:inherit;font-weight:900;line-height:1.25;text-align:right;cursor:pointer}.flight-panel-facility-link:hover,.flight-panel-facility-link:focus-visible{color:#fbbf24;outline:none}.flight-panel-facility-detail{position:fixed;top:12px;left:min(384px,calc(100vw - 372px));z-index:2352;width:360px;max-width:calc(100vw - 24px);max-height:calc(100vh - 44px);display:none;flex-direction:column;border:1px solid #334155;border-radius:20px;background:#000000d1;color:#e2e8f0;box-shadow:0 8px 24px #0006,inset 0 1px #ffffff0a;overflow:hidden}.flight-panel-facility-detail.is-open{display:flex}.flight-panel-facility-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:22px 56px 16px 18px;border-bottom:1px solid #334155}.flight-panel-facility-detail h2{margin:0;color:#fff;font-family:Futura,Futura PT,Avenir Next,Century Gothic,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:30px;font-weight:900;line-height:1;letter-spacing:0}.flight-panel-facility-detail-close{position:absolute;top:8px;right:8px;z-index:3;display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:none;border-radius:50%;background:#0000004d;color:#fff;font-size:0;line-height:0;cursor:pointer}.flight-panel-facility-detail-close:before,.flight-panel-facility-detail-close:after{content:"";position:absolute;left:50%;top:50%;width:12px;height:2.5px;border-radius:999px;background:currentColor;transform:translate(-50%,-50%) rotate(45deg)}.flight-panel-facility-detail-close:after{transform:translate(-50%,-50%) rotate(-45deg)}.flight-panel-facility-detail-close:hover{background:#00000080}.flight-panel-edit-drawer{position:fixed;top:12px;left:min(384px,calc(100vw - 372px));z-index:2353;width:360px;max-width:calc(100vw - 24px);max-height:calc(100vh - 44px);display:none;flex-direction:column;border:1px solid #334155;border-radius:20px;background:#000000d1;color:#e2e8f0;box-shadow:0 8px 24px #0006,inset 0 1px #ffffff0a;overflow:hidden}.flight-panel-edit-drawer.is-open{display:flex}.panel-flight.is-route-editing-flight .flight-panel-edit-drawer{left:min(756px,calc(100vw - 372px))}.flight-panel-edit-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:22px 56px 16px 18px;border-bottom:1px solid #334155}.flight-panel-edit-head h2{margin:0;color:#fff;font-family:Futura,Futura PT,Avenir Next,Century Gothic,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:30px;font-weight:900;line-height:1;letter-spacing:0}.flight-panel-edit-close{position:absolute;top:8px;right:8px;z-index:3;display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:none;border-radius:50%;background:#0000004d;color:#fff;font-size:0;line-height:0;cursor:pointer}.flight-panel-edit-close:before,.flight-panel-edit-close:after{content:"";position:absolute;left:50%;top:50%;width:12px;height:2.5px;border-radius:999px;background:currentColor;transform:translate(-50%,-50%) rotate(45deg)}.flight-panel-edit-close:after{transform:translate(-50%,-50%) rotate(-45deg)}.flight-panel-edit-close:hover{background:#00000080}.flight-panel-edit-body{display:flex;flex-direction:column;gap:10px;overflow:auto;padding:12px 16px 14px}.flight-panel-edit-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.flight-panel-edit-field{position:relative;display:flex;flex-direction:column;gap:6px;min-width:0;color:#e2e8f0;font-size:11px;font-weight:900}.flight-panel-edit-field span{color:#64748b;line-height:1.1}.flight-panel-edit-field input{width:100%;min-width:0;height:34px;padding:0 10px;border:1px solid rgba(255,255,255,.16);border-radius:8px;background:#181818;color:#fff;font:inherit;font-size:13px;font-weight:900;outline:none;text-transform:uppercase}.flight-panel-edit-field input[type=time]{text-transform:none}.flight-panel-edit-field input:focus{border-color:#fbbf24;box-shadow:0 0 0 2px #fbbf241f}.flight-panel-edit-choice{width:100%;min-width:0;height:34px;padding:0 10px;border:1px solid rgba(255,255,255,.16);border-radius:8px;background:#181818;color:#fff;font-size:13px;font-weight:900;line-height:1;text-align:left;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flight-panel-edit-choice.is-empty{color:#8a8a8a}.flight-panel-edit-choice:hover,.flight-panel-edit-choice:focus-visible{border-color:#fbbf24;outline:none}.flight-panel-edit-picker{display:none;position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:4;max-height:250px;overflow:auto;padding:8px;border:1px solid rgba(255,255,255,.16);border-radius:8px;background:#121212;box-shadow:0 12px 26px #0006}.flight-panel-edit-picker.is-open{display:block}.flight-panel-edit-airline-picker{max-height:330px}.flight-panel-edit-airport-field{z-index:2}.flight-panel-edit-airport-field:focus-within{z-index:5}.flight-panel-edit-airport-option{display:flex;align-items:center;gap:9px;width:100%;min-height:32px;margin-bottom:6px;border:1px solid rgba(255,255,255,.14);border-radius:7px;background:#181818;color:#e5e7eb;padding:0 10px;font-size:12px;font-weight:800;text-align:left;cursor:pointer}.flight-panel-edit-airport-option:last-child{margin-bottom:0}.flight-panel-edit-airport-option strong{flex:0 0 36px;color:#fff}.flight-panel-edit-airport-option span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flight-panel-edit-airport-option:hover,.flight-panel-edit-airport-option:focus-visible{border-color:#ffffffd1;background:#ffffff14;color:#fff;outline:none}.flight-panel-edit-days{display:inline-flex;flex-wrap:nowrap;gap:8px;min-height:34px;align-items:center;align-self:flex-start;width:max-content;max-width:100%;padding:0;border-radius:0;background:transparent;box-shadow:none}.flight-panel-edit-frequency-field,.flight-panel-edit-weekly-frequency-field{z-index:1}.flight-panel-edit-stepper{display:grid;grid-template-columns:34px minmax(0,1fr) 34px;width:150px;max-width:100%;height:34px;overflow:hidden;border:1px solid rgba(255,255,255,.16);border-radius:8px;background:#181818}.flight-panel-edit-stepper button{display:flex;align-items:center;justify-content:center;border:0;background:#ffffff0f;color:#e2e8f0;font-size:18px;font-weight:900;line-height:1;cursor:pointer}.flight-panel-edit-stepper button:hover,.flight-panel-edit-stepper button:focus-visible{background:#fbbf24;color:#111827;outline:none}.flight-panel-edit-stepper input{height:32px;padding:0 4px;border:0;border-left:1px solid rgba(255,255,255,.12);border-right:1px solid rgba(255,255,255,.12);border-radius:0;background:transparent;text-align:center}.flight-panel-edit-stepper input:focus{box-shadow:inset 0 0 0 2px #fbbf243d}.flight-panel-edit-day{position:relative;flex:0 0 28px;width:28px;min-width:28px;height:28px;border:0;border-radius:50%;background:#111;color:#777;padding:0;font-size:11px;font-weight:900;cursor:pointer;transition:background .18s,color .18s}.flight-panel-edit-day:hover{color:#bdbdbd}.flight-panel-edit-day.is-active{background:#fbbf24!important;color:#111!important;box-shadow:none}.flight-panel-edit-day:after{content:attr(data-tip);position:absolute;left:50%;bottom:calc(100% + 8px);z-index:10;transform:translate(-50%) translateY(2px);padding:4px 7px;border-radius:6px;background:#0a0a0af5;color:#fff;font-size:11px;font-weight:700;line-height:1;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .12s,transform .12s}.flight-panel-edit-day:hover:after,.flight-panel-edit-day:focus-visible:after{opacity:1;transform:translate(-50%) translateY(0)}.flight-panel-edit-aircraft-picker{position:fixed;top:176px;left:min(754px,calc(100vw - 318px));z-index:2354;display:none;width:294px;max-width:calc(100vw - 24px);max-height:min(520px,calc(100vh - 48px));flex-direction:column;border:1px solid #333;border-radius:20px;background:#000c;color:#e5e7eb;box-shadow:0 16px 38px #0000006b;overflow:visible}.flight-panel-edit-aircraft-picker.is-open{display:flex}.flight-panel-edit-aircraft-picker .flight-route-picker-head{flex:0 0 auto}.flight-panel-edit-aircraft-picker .flight-route-picker-list{display:flex;flex:1 1 auto;flex-direction:column;min-height:0;overflow:hidden;padding:8px}.flight-panel-edit-aircraft-picker .flight-route-picker-head button{font-size:18px;font-weight:900;line-height:1}.flight-panel-edit-actions{display:flex;justify-content:space-between;gap:10px;padding:12px 16px 16px;border-top:1px solid #334155}.flight-panel-edit-actions button{min-width:0;height:34px;padding:0 14px;border:0;border-radius:8px;font-size:12px;font-weight:900;line-height:1;cursor:pointer}.flight-panel-edit-save{background:#fbbf24;color:#020617}.flight-panel-edit-delete{background:#ef44442e;color:#fecaca}.flight-panel-edit-save:hover{background:#f59e0b}.flight-panel-edit-delete:hover{background:#ef44444d}.flight-panel-route-edit-drawer{position:fixed;top:12px;left:min(384px,calc(100vw - 372px));z-index:2352;display:none;width:360px;max-width:calc(100vw - 24px);max-height:calc(100vh - 44px);flex-direction:column;border:1px solid #334155;border-radius:20px;background:#000000d1;color:#e2e8f0;box-shadow:0 8px 24px #0006,inset 0 1px #ffffff0a;overflow:hidden}.flight-panel-route-edit-drawer.is-open{display:flex}.flight-panel-route-edit-drawer.is-calendar-view{width:690px}.panel-flight.is-route-calendar-view.is-route-editing-flight .flight-panel-edit-drawer{left:min(1088px,calc(100vw - 372px))}.flight-panel-route-edit-head{position:relative;display:flex;justify-content:space-between;gap:12px;padding:22px 56px 14px 18px;border-bottom:1px solid #334155}.flight-panel-route-edit-head h2{margin:0;color:#fff;font-family:Futura,Futura PT,Avenir Next,Century Gothic,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:30px;font-weight:900;line-height:1;letter-spacing:0}.flight-panel-route-edit-head p{margin:6px 0 0;color:#94a3b8;font-size:12px;font-weight:800}.flight-panel-route-edit-close{position:absolute;top:8px;right:8px;z-index:3;width:28px;height:28px;padding:0;border:0;border-radius:50%;background:#0000004d;color:#fff;font-size:0;cursor:pointer}.flight-panel-route-edit-close:before,.flight-panel-route-edit-close:after{content:"";position:absolute;left:50%;top:50%;width:12px;height:2.5px;border-radius:999px;background:currentColor;transform:translate(-50%,-50%) rotate(45deg)}.flight-panel-route-edit-close:after{transform:translate(-50%,-50%) rotate(-45deg)}.flight-panel-route-edit-close:hover{background:#00000080}.flight-panel-route-edit-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 16px 12px 22px;border-bottom:1px solid #334155}.flight-panel-route-edit-view-toggle{display:none;align-items:center;gap:2px;height:30px;padding:2px;border:1px solid rgba(255,255,255,.14);border-radius:8px;background:#ffffff0f}.flight-panel-route-edit-view-toggle button{height:24px;min-width:42px;padding:0 8px;border:0;border-radius:6px;background:transparent;color:#94a3b8;font-size:12px;font-weight:900;cursor:pointer}.flight-panel-route-edit-view-toggle button.is-active{background:#fbbf24;color:#111827}.flight-panel-route-edit-select-all{display:inline-flex;align-items:center;gap:8px;color:#cbd5e1;font-size:12px;font-weight:900;cursor:pointer}.flight-panel-route-edit-select-all input{width:15px;height:15px;accent-color:#fbbf24}.flight-panel-route-edit-batch-delete{height:30px;padding:0 12px;border:0;border-radius:8px;background:#ef44442e;color:#fecaca;font-size:12px;font-weight:900;cursor:pointer}.flight-panel-route-edit-add{margin-left:auto;height:30px;padding:0 12px;border:0;border-radius:8px;background:#fbbf24;color:#111827;font-size:12px;font-weight:900;cursor:pointer}.flight-panel-route-edit-add:hover,.flight-panel-route-edit-add:focus-visible{background:#f59e0b;outline:none}.flight-panel-route-edit-batch-delete:disabled{cursor:default;opacity:.45}.flight-panel-route-edit-content{min-height:0;overflow:auto}.flight-panel-route-edit-list{display:flex;flex-direction:column;gap:8px;padding:12px 14px 14px}.flight-panel-route-edit-empty{padding:24px 10px;color:#94a3b8;font-size:13px;font-weight:800;text-align:center}.flight-panel-route-edit-item{display:grid;grid-template-columns:24px minmax(0,1fr) auto;gap:10px;align-items:center;min-height:66px;padding:8px 10px 8px 4px;border:1px solid rgba(255,255,255,.12);border-radius:10px;background:#181818}.flight-panel-route-edit-item.is-selected{border-color:#fbbf24a6;box-shadow:0 0 0 1px #fbbf242e}.flight-panel-route-edit-check{display:flex;align-items:center;justify-content:center}.flight-panel-route-edit-check input{width:16px;height:16px;accent-color:#fbbf24}.flight-panel-route-edit-main{min-width:0;display:grid;gap:6px}.flight-panel-route-edit-line{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0}.flight-panel-route-edit-line strong{min-width:0;overflow:hidden;color:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:13px;font-weight:900;line-height:1.1;text-overflow:ellipsis;white-space:nowrap}.flight-panel-route-edit-main strong{color:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:13px;font-weight:900;line-height:1.1}.flight-panel-route-edit-main span,.flight-panel-route-edit-main small,.flight-panel-route-edit-main em{overflow:hidden;color:#94a3b8;font-size:11px;font-style:normal;font-weight:800;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}.flight-panel-route-edit-main small,.flight-panel-route-edit-main em{justify-self:end;text-align:right}.flight-panel-route-edit-main em{color:#fbbf24}.flight-panel-route-edit-actions{display:flex;flex-direction:column;gap:7px}.flight-panel-route-edit-actions button{width:48px;height:28px;border:0;border-radius:8px;background:#ffffff1f;color:#fff;font-size:12px;font-weight:900;cursor:pointer}.flight-panel-route-edit-actions button:hover{background:#fff3}.flight-panel-route-edit-actions button.is-danger{background:#ef44442e;color:#fecaca}.flight-panel-route-edit-actions button.is-danger:hover{background:#ef44444d}.flight-panel-route-edit-calendar{min-width:640px;padding:10px 12px 14px}.flight-panel-route-edit-calendar-head{display:grid;grid-template-columns:44px repeat(7,minmax(0,1fr));gap:0;position:sticky;top:0;z-index:3;background:#000000d1;border-bottom:1px solid rgba(255,255,255,.14)}.flight-panel-route-edit-calendar-head strong{height:30px;color:#cbd5e1;font-size:11px;font-weight:900;line-height:30px;text-align:center}.flight-panel-route-edit-calendar-body{display:grid;grid-template-columns:44px 1fr;height:min(560px,calc(100vh - 224px));min-height:360px;overflow:auto;border:1px solid rgba(255,255,255,.12);border-top:0;background:#101010}.flight-panel-route-edit-calendar-hours{position:relative;height:1056px;border-right:1px solid rgba(255,255,255,.12)}.flight-panel-route-edit-calendar-hours span{position:absolute;left:0;right:6px;top:calc(var(--hour, 0) * 44px);height:44px;color:#64748b;font-size:10px;font-weight:800;line-height:1;text-align:right}.flight-panel-route-edit-calendar-hours span:nth-child(1){--hour:0}.flight-panel-route-edit-calendar-hours span:nth-child(2){--hour:1}.flight-panel-route-edit-calendar-hours span:nth-child(3){--hour:2}.flight-panel-route-edit-calendar-hours span:nth-child(4){--hour:3}.flight-panel-route-edit-calendar-hours span:nth-child(5){--hour:4}.flight-panel-route-edit-calendar-hours span:nth-child(6){--hour:5}.flight-panel-route-edit-calendar-hours span:nth-child(7){--hour:6}.flight-panel-route-edit-calendar-hours span:nth-child(8){--hour:7}.flight-panel-route-edit-calendar-hours span:nth-child(9){--hour:8}.flight-panel-route-edit-calendar-hours span:nth-child(10){--hour:9}.flight-panel-route-edit-calendar-hours span:nth-child(11){--hour:10}.flight-panel-route-edit-calendar-hours span:nth-child(12){--hour:11}.flight-panel-route-edit-calendar-hours span:nth-child(13){--hour:12}.flight-panel-route-edit-calendar-hours span:nth-child(14){--hour:13}.flight-panel-route-edit-calendar-hours span:nth-child(15){--hour:14}.flight-panel-route-edit-calendar-hours span:nth-child(16){--hour:15}.flight-panel-route-edit-calendar-hours span:nth-child(17){--hour:16}.flight-panel-route-edit-calendar-hours span:nth-child(18){--hour:17}.flight-panel-route-edit-calendar-hours span:nth-child(19){--hour:18}.flight-panel-route-edit-calendar-hours span:nth-child(20){--hour:19}.flight-panel-route-edit-calendar-hours span:nth-child(21){--hour:20}.flight-panel-route-edit-calendar-hours span:nth-child(22){--hour:21}.flight-panel-route-edit-calendar-hours span:nth-child(23){--hour:22}.flight-panel-route-edit-calendar-hours span:nth-child(24){--hour:23}.flight-panel-route-edit-calendar-grid{position:relative;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));height:1056px;min-width:0}.flight-panel-route-edit-calendar-day{grid-column:calc(var(--route-day) + 1);grid-row:1;border-right:1px solid rgba(255,255,255,.08)}.flight-panel-route-edit-calendar-row{position:absolute;left:0;right:0;top:calc(var(--route-hour) * 44px);height:44px;border-top:1px solid rgba(255,255,255,.08)}.flight-panel-route-edit-calendar-block{position:absolute;left:calc((100% / 7) * var(--route-day) + 4px);top:var(--route-top);width:calc(100% / 7 - 8px);height:var(--route-height);min-height:18px;padding:4px 5px;border:0;border-radius:6px;background:#fbbf24;color:#111827;box-shadow:0 6px 14px #fbbf243d;cursor:grab;overflow:hidden;text-align:left;touch-action:none}.flight-panel-route-edit-calendar-block.is-dragging{z-index:4;cursor:grabbing;box-shadow:0 10px 24px #fbbf245c}.flight-panel-route-edit-calendar-block strong,.flight-panel-route-edit-calendar-block span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flight-panel-route-edit-calendar-block strong{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:10px;font-weight:900;line-height:1.05}.flight-panel-route-edit-calendar-block span{margin-top:2px;font-size:9px;font-weight:900;line-height:1}.flight-panel-facility-detail-body{overflow:auto;padding:10px 16px 14px}.flight-panel-facility-detail-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:14px;row-gap:2px;padding-bottom:4px}.flight-panel-facility-detail-row{display:flex;justify-content:space-between;gap:12px;padding:4px 0;border-bottom:1px solid rgba(255,255,255,.05);font-size:11px}.flight-panel-facility-detail-row span:first-child{color:#64748b}.flight-panel-facility-detail-row strong{color:#f8fafc;font-weight:800;text-align:right}.flight-panel-facility-detail-list{margin-top:14px}.flight-panel-facility-detail-list-title{margin:0 0 6px;color:#fbbf24;font-size:12px;font-weight:900}.flight-panel-facility-detail-list-item{padding:6px 0;border-bottom:1px solid rgba(255,255,255,.06);color:#f8fafc;font-size:12px;font-weight:800;line-height:1.35}.flight-panel-terminal-area-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:14px}.flight-panel-gate-diagram{display:flex;align-items:flex-end;gap:8px;margin:0 -2px;padding:0 2px 8px;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-ms-overflow-style:none;cursor:grab;user-select:none;-webkit-user-select:none}.flight-panel-gate-diagram::-webkit-scrollbar{display:none}.flight-panel-gate-diagram.is-dragging{cursor:grabbing}.flight-panel-gate-card-wrap{position:relative;display:flex;flex-direction:column;align-items:stretch;flex:0 0 calc(58px * var(--gate-scale));width:calc(58px * var(--gate-scale));min-width:44px;color:#e2e8f0;text-align:center}.flight-panel-gate-card{position:relative;width:100%;height:calc(72px * var(--gate-scale));padding:0;border:1px solid rgba(148,163,184,.72);border-radius:3px;background:#ffffff08;color:#e5e7eb;text-align:center;overflow:hidden}.flight-panel-gate-card-wrap.is-empty{opacity:.46}.flight-panel-gate-aircraft{position:absolute;top:5%;right:6%;max-width:48%;color:#cbd5e1;font-size:max(4px,calc(6px * var(--gate-scale)));font-weight:700;line-height:1.05;text-align:right}.flight-panel-gate-plane-icon{position:absolute;left:7%;top:12%;width:40%;height:34%;fill:#bfbfbf}.flight-panel-gate-grade{position:absolute;left:0;right:0;bottom:8%;color:#f8fafc;font-size:calc(22px * var(--gate-scale));font-weight:900;line-height:1}.flight-panel-gate-count{margin-top:4px;color:#94a3b8;font-size:max(9px,calc(10px * var(--gate-scale)));font-weight:800;line-height:1}.flight-panel-gate-hover-tooltip{position:fixed;z-index:2400;max-width:180px;padding:7px 8px;border:1px solid rgba(148,163,184,.58);border-radius:6px;background:#020617f5;color:#e5e7eb;font-size:11px;font-weight:800;line-height:1.3;text-align:left;box-shadow:0 10px 22px #0000006b;opacity:0;pointer-events:none;transform:translateY(4px);transition:opacity .12s ease,transform .12s ease}.flight-panel-gate-hover-tooltip.is-open{opacity:1;transform:translateY(0)}.flight-panel-gate-hover-tooltip strong{display:block;margin-bottom:3px;color:#fbbf24;font-size:12px}.flight-panel-gate-hover-tooltip span{display:block;color:#cbd5e1;white-space:normal}.flight-panel-runway-diagram{display:flex;flex-direction:column;gap:10px}.flight-panel-runway-row{display:grid;grid-template-columns:56px minmax(0,1fr);gap:12px;align-items:center;padding:6px 0 8px;border-bottom:1px solid rgba(255,255,255,.06)}.flight-panel-runway-id{color:#f8fafc;font-size:12px;font-weight:900;line-height:1.15;align-self:center;transform:translateY(7px)}.flight-panel-runway-wrap{position:relative;width:calc((100% - 52px) * var(--runway-length));min-width:82px;margin:0}.flight-panel-runway-length{width:100%;min-width:0;margin:0 0 3px;color:#94a3b8;font-size:10px;font-weight:800;text-align:center;line-height:1.1}.flight-panel-runway-strip{position:relative;width:100%;min-width:0;height:calc(22px + 14px * var(--runway-width));margin:0;border:1px solid rgba(226,232,240,.78);background-color:transparent;background-image:repeating-linear-gradient(90deg,transparent 0 18px,rgba(255,255,255,.94) 18px 30px,transparent 30px 50px),linear-gradient(#ffffffdb,#ffffffdb),linear-gradient(#ffffffdb,#ffffffdb);background-repeat:no-repeat;background-size:calc(100% - 44px) 2px,calc(100% - 10px) 2px,calc(100% - 10px) 2px;background-position:center center,5px 4px,5px calc(100% - 4px);box-shadow:inset 0 0 0 1px #00000029;overflow:hidden}.flight-panel-runway-strip:before,.flight-panel-runway-strip:after{content:"";position:absolute;top:50%;width:26px;height:calc(100% - 16px);transform:translateY(-50%);background:repeating-linear-gradient(180deg,rgba(255,255,255,.94) 0 3px,transparent 3px 8px)}.flight-panel-runway-strip:before{left:10px}.flight-panel-runway-strip:after{right:10px}.flight-panel-runway-width{position:absolute;left:calc(100% - 4px);top:calc(50% + 7px);color:#94a3b8;font-size:10px;font-weight:800;text-align:center;line-height:1;transform:translateY(-50%) rotate(90deg);transform-origin:center;white-space:nowrap}@media(max-width:980px){.flight-panel-facility-detail,.flight-panel-edit-drawer,.flight-panel-route-edit-drawer{left:12px;right:12px;top:76px;width:auto;max-height:calc(100vh - 120px)}.flight-panel-route-edit-drawer.is-calendar-view{width:auto}.panel-flight.is-route-editing-flight .flight-panel-edit-drawer{left:12px;right:12px;top:112px;max-height:calc(100vh - 144px)}.panel-flight.is-route-calendar-view.is-route-editing-flight .flight-panel-edit-drawer{left:12px;right:12px}.flight-panel-edit-aircraft-picker{left:12px;right:12px;top:calc(76px + min(360px,48vh));width:auto;max-height:calc(100vh - 96px - min(360px,48vh))}}.flight-panel-chart-section{padding:10px 14px 8px;border-bottom:1px solid #1e293b}.flight-panel-chart-title{margin-bottom:8px;color:#fbbf24;font-size:12px;font-weight:800}.flight-panel-hour-chart{display:grid;grid-template-columns:repeat(24,1fr);align-items:end;gap:2px;height:76px;padding:4px 0 0;overflow:visible}.flight-panel-hour-chart.is-frequency{display:block;height:auto;min-height:36px}.flight-panel-hour-bar{position:relative;min-width:0;height:100%;border-radius:3px 3px 0 0;background:#ffffff14;overflow:visible}.flight-panel-hour-bar span{position:absolute;left:0;right:0;bottom:0;height:var(--h,0%);min-height:2px;border-radius:3px 3px 0 0;background:#fbbf24}.flight-panel-hour-bar.is-now span{background:#fff}.flight-panel-hour-bar:after{content:attr(data-tip);position:absolute;left:50%;bottom:calc(100% + 8px);transform:translate(-50%);z-index:8;width:max-content;max-width:180px;padding:5px 7px;border:1px solid rgba(251,191,36,.42);border-radius:6px;background:#020617f5;color:#f8fafc;font-size:10px;font-weight:700;line-height:1.35;box-shadow:0 8px 18px #00000059;opacity:0;pointer-events:none;white-space:nowrap}.flight-panel-hour-bar:hover:after{opacity:1}.flight-panel-hour-bar:nth-child(-n+7):after{left:0;right:auto;transform:none}.flight-panel-hour-bar:nth-last-child(-n+7):after{left:auto;right:0;transform:none}.flight-panel-frequency-chart{display:flex;align-items:flex-start;justify-content:flex-start;gap:8px;min-height:36px;padding:2px 0 0;overflow:visible}.flight-panel-frequency-day{display:flex;flex-direction:column;align-items:center;gap:5px;min-width:22px}.flight-panel-frequency-dot{position:relative;display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:999px;background:#4b5563;color:#fff;font-size:11px;font-weight:900;line-height:1;box-shadow:inset 0 0 0 1px #ffffff1f}.flight-panel-frequency-dot.is-active{background:#fbbf24;color:#000!important;box-shadow:inset 0 0 0 1px #fff3}.flight-panel-frequency-dot:after{content:attr(data-tip);position:absolute;left:50%;bottom:calc(100% + 8px);transform:translate(-50%);z-index:8;width:max-content;max-width:180px;padding:5px 7px;border:1px solid rgba(251,191,36,.42);border-radius:6px;background:#020617f5;color:#f8fafc;font-size:10px;font-weight:700;line-height:1.35;box-shadow:0 8px 18px #00000059;opacity:0;pointer-events:none;white-space:nowrap}.flight-panel-frequency-dot:hover:after{opacity:1}.flight-panel-week-bars{display:flex;flex-direction:column;gap:6px;padding:2px 0 0}.flight-panel-week-bar-row{display:grid;grid-template-columns:34px minmax(0,1fr) 34px;align-items:center;gap:8px;color:#f8fafc;font-size:10px;font-weight:900}.flight-panel-week-bar-track{height:8px;border-radius:999px;background:#ffffff1a;overflow:hidden}.flight-panel-week-bar-fill{display:block;height:100%;min-width:3px;border-radius:999px;background:#fbbf24}.flight-panel-week-bar-row.is-empty .flight-panel-week-bar-fill{min-width:0;background:transparent}.flight-panel-top-od-section{padding:10px 14px 8px;border-bottom:1px solid #1e293b}.flight-panel-top-od-title{margin:0 0 7px;color:#fbbf24;font-size:12px;font-weight:900;line-height:1.2}.flight-panel-top-od-title:not(:first-child){margin-top:10px}.flight-panel-top-od-list{display:flex;flex-direction:column;gap:5px;min-height:18px}.flight-panel-top-od-empty{color:#94a3b8;font-size:11px;font-weight:800;line-height:1.2}.flight-panel-top-od-item{position:relative;display:grid;grid-template-columns:42px minmax(0,1fr) 54px;align-items:center;gap:8px;min-height:18px;color:#f8fafc;font-size:11px;font-weight:900;outline:none}.flight-panel-top-od-code{position:relative;justify-self:start;min-width:0;max-width:100%;color:#e5e7eb;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:help;outline:none}.flight-panel-top-od-bar-wrap{position:relative;height:8px;min-width:0;border-radius:999px;background:#94a3b82e;overflow:hidden}.flight-panel-top-od-bar{position:absolute;left:0;top:0;bottom:0;min-width:3px;border-radius:999px;background:#fbbf24;box-shadow:0 0 10px #fbbf2442}.flight-panel-top-od-val{color:#fbbf24;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flight-panel-top-od-code:after{content:attr(data-tip);position:absolute;left:0;bottom:calc(100% + 7px);z-index:9;width:max-content;max-width:260px;padding:6px 8px;border:1px solid rgba(251,191,36,.46);border-radius:6px;background:#020617f7;color:#f8fafc;font-size:10px;font-weight:800;line-height:1.35;box-shadow:0 10px 22px #00000061;opacity:0;pointer-events:none;transform:translateY(4px);transition:opacity .12s ease,transform .12s ease;white-space:pre-line}.flight-panel-top-od-code:hover:after,.flight-panel-top-od-code:focus-visible:after{opacity:1;transform:translateY(0)}.flight-panel-route-filter-btn{flex:0 0 auto;margin-left:auto}.flight-panel-route-filter-pop{padding:0 10px 8px;border-bottom:1px solid #1e293b}.flight-panel-route-filter-pop .flight-search-filter-strip{flex-wrap:wrap}.flight-panel-route-filter-pop .flight-search-filter-menu{top:auto;bottom:30px;z-index:20;max-height:min(260px,calc(100dvh - 180px));overflow:auto}.flight-panel-board-section{flex:1;min-height:0;display:flex;flex-direction:column}.flight-panel-board-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px 6px 14px}.flight-panel-board-title{font-size:12px;font-weight:800;color:#fbbf24}.flight-panel-board-tabs{display:inline-flex;gap:4px;padding:3px;border-radius:999px;background:#111}.flight-panel-board-tab{height:24px;border:none;border-radius:999px;background:transparent;color:#94a3b8;padding:0 9px;font-size:11px;font-weight:800;cursor:pointer}.flight-panel-board-tab.is-active{background:#f9fafb;color:#000}.flight-panel-board-wrap{overflow:auto;max-height:210px;padding:0 8px 12px}.flight-panel-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:10px}.flight-panel-col-flight{width:18%}.flight-panel-col-code{width:36%}.flight-panel-col-time{width:15%}.flight-panel-col-aircraft{width:14%}.flight-panel-col-status{width:17%}.flight-panel-table th{color:#fbbf24;font-weight:600;padding:6px 3px;text-align:left;border-bottom:1px solid #334155}.flight-panel-table td{padding:5px 3px;border-bottom:1px solid #1e293b;color:#f8fafc;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flight-panel-table tr.is-user-flight td{color:#f8fafc;font-weight:800}.flight-panel-table tr.is-real-flight td{color:#f8fafc;font-weight:600}.flight-panel-table tr.is-clickable-flight{cursor:pointer}.flight-panel-table tr.is-clickable-flight:hover td,.flight-panel-table tr.is-clickable-flight:focus-visible td{background:#fbbf241a}.flight-panel-table tr.is-clickable-flight:focus-visible{outline:1px solid rgba(251,191,36,.58);outline-offset:-1px}.flight-panel-airport-cell{min-width:0}.flight-airport-name{position:relative;display:block;height:18px;min-width:0;overflow:hidden}.flight-airport-name-pane{position:absolute;inset:0;display:flex;align-items:center;min-width:0;opacity:0;animation:flightAirportLangSwap 6.4s linear infinite}.flight-airport-name-pane.is-en{animation-delay:3.2s}.flight-airport-name-track{display:inline-block;min-width:max-content;padding-right:18px;line-height:18px;white-space:nowrap;animation:flightAirportNameMarquee 7.2s linear infinite}.flight-panel-table th:first-child,.flight-panel-table td:first-child{padding-left:8px}.flight-panel-table th:last-child,.flight-panel-table td:last-child{padding-right:0}@keyframes flightAirportLangSwap{0%,46%{opacity:1}50%,96%{opacity:0}to{opacity:1}}@keyframes flightAirportNameMarquee{0%,18%{transform:translate(0)}82%,to{transform:translate(min(0px,calc(180px - 100%)))}}.flight-route-search-panel{left:12px;width:360px;z-index:2346}.flight-search-card{min-height:min(360px,calc(100vh - 96px));max-height:calc(100vh - 96px);border-color:#333;background:#000000d1}.flight-search-header .flight-panel-title{font-size:28px;line-height:1.05}.flight-search-header{padding:14px 44px 10px 18px}.flight-search-form{padding:10px 12px;border-bottom:1px solid #222}.flight-search-route-row{display:grid;grid-template-columns:minmax(0,1fr) 28px minmax(0,1fr) 52px 28px;gap:6px;align-items:center}.flight-search-route-row label{position:relative;min-width:0;display:flex;flex-direction:column}.flight-search-route-row input{min-width:0;height:30px;border:1px solid #333;border-radius:6px;background:#111;color:#fff;font-size:12px;font-weight:800;outline:none;padding:0 9px}.flight-search-route-row input::placeholder{color:#777}.flight-search-route-row input:focus{border-color:#fbbf24}.flight-search-swap{width:28px;height:28px;border:1px solid #444;border-radius:50%;background:#111;color:#fff;font-size:16px;font-weight:900;cursor:pointer}.flight-search-swap:hover,.flight-search-filter-btn:hover{border-color:#fbbf24;color:#fbbf24}.flight-search-route-row .flight-planner-btn.is-primary{height:30px;padding:0 10px;border-color:#fff!important;background:#fff!important;color:#000!important}.flight-search-filter-btn{width:28px;height:28px;border:1px solid #444;border-radius:50%;background:#111;color:#fff;font-size:16px;font-weight:900;cursor:pointer;line-height:1;display:grid;place-items:center;padding:0}.flight-search-filter-btn svg{display:block}.flight-search-filter-btn.is-active{border-color:#fbbf24;color:#fbbf24}.flight-search-suggestions{display:none;position:absolute;left:0;right:0;top:34px;z-index:24;max-height:180px;overflow-y:auto;padding:4px;border:1px solid #333;border-radius:6px;background:#090909;box-shadow:0 12px 24px #00000073}.flight-search-suggestions.is-open{display:flex;flex-direction:column}.flight-search-suggestions button{min-width:0;border:none;border-radius:4px;background:transparent;color:#ddd;font-size:10px;font-weight:800;line-height:1.25;text-align:left;padding:6px;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flight-search-suggestions button:hover{background:#222;color:#fff}.flight-search-filter-pop{display:none;padding:8px 10px 9px;border-bottom:1px solid #222}.flight-search-filter-pop.is-open{display:block}.flight-search-filter-strip{display:flex;align-items:center;gap:5px;min-width:0}.flight-search-filter-chip{position:relative;min-width:0}.flight-search-filter-chip>button{height:24px;display:flex;align-items:center;justify-content:center;gap:3px;max-width:54px;border:1px solid #333;border-radius:999px;background:#111;color:#aaa;padding:0 6px;font-size:9px;font-weight:900;cursor:pointer;line-height:1}.flight-search-filter-chip>button strong{display:none}.flight-search-filter-chip>button em{color:#777;font-style:normal;display:inline-flex;align-items:center;line-height:1;transform:translateY(-1px)}.flight-search-filter-chip.is-open>button,.flight-search-filter-chip.is-active>button,.flight-search-filter-chip>button:hover{border-color:#fbbf24;color:#fbbf24}.flight-search-filter-chip.is-active>button strong,.flight-search-filter-chip.is-active>button span,.flight-search-filter-chip.is-active>button em{color:#fbbf24}.flight-search-filter-menu{position:absolute;top:30px;left:0;z-index:9;min-width:88px;padding:4px;border:1px solid #333;border-radius:6px;background:#090909;box-shadow:0 12px 24px #00000073}.flight-search-filter-menu button{display:block;width:100%;border:none;border-radius:4px;background:transparent;color:#ddd;font-size:10px;font-weight:800;text-align:left;padding:6px 7px;cursor:pointer;white-space:nowrap}.flight-search-filter-menu button:hover,.flight-search-filter-menu button.is-selected{background:#222;color:#fbbf24}.flight-search-filter-menu button.is-selected{box-shadow:inset 0 0 0 1px #fbbf24b8}.flight-search-results{flex:1;min-height:0;overflow:auto;padding:8px}.flight-search-empty,.flight-search-result-head{padding:10px 8px;color:#9a9a9a;font-size:11px;font-weight:800}.flight-search-result{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 30px;gap:6px;margin-bottom:6px;border:1px solid #333;border-radius:8px;background:#111;overflow:hidden}.flight-search-result.is-user-flight{border-color:#333;background:#111}.flight-search-main{min-width:0;display:grid;grid-template-columns:minmax(0,1.65fr) minmax(84px,.85fr) minmax(76px,.7fr);gap:14px;align-items:start;border:none;background:transparent;color:#f8fafc;padding:12px 0 12px 14px;text-align:left;cursor:pointer}.flight-search-summary{min-width:0;display:flex;flex-direction:column;gap:4px}.flight-search-summary strong,.flight-search-summary em{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-style:normal}.flight-search-summary strong{color:#fff;font-size:14px;font-weight:900;line-height:1.15}.flight-search-summary em{color:#9a9a9a;font-size:11px;font-weight:700;line-height:1.2}.flight-search-summary-main strong{color:#fff}.flight-search-result.is-user-flight .flight-search-summary strong,.flight-search-result.is-user-flight .flight-search-summary em{color:#fff;font-weight:900}.flight-search-add{align-self:stretch;width:30px;border:none;border-left:none;background:transparent;color:#fbbf24;font-size:20px;font-weight:900;cursor:pointer}.flight-search-add:hover{background:transparent;color:#fff}.flight-search-user-actions{display:grid;grid-template-rows:1fr 1fr;width:30px;border-left:1px solid rgba(251,191,36,.34)}.flight-search-edit,.flight-search-delete{width:30px;border:none;background:#fbbf2424;color:#fbbf24;font-size:11px;font-weight:900;cursor:pointer;display:flex;align-items:center;justify-content:center}.flight-search-edit{border-bottom:1px solid rgba(251,191,36,.24)}.flight-search-edit svg{width:15px;height:15px;display:block}.flight-search-delete{color:#fecaca;background:#7f1d1d38;font-size:16px}.flight-search-edit:hover{background:#fbbf24;color:#020617}.flight-search-delete:hover{background:#ef4444;color:#fff}.flight-search-detail{grid-column:1 / -1;display:block;padding:14px 18px 16px;border-top:1px solid #333;background:#0a0a0a}.flight-search-segment{display:block}.flight-search-segment-core{display:grid;grid-template-columns:22px minmax(0,1fr);column-gap:12px}.flight-search-segment-line{position:relative;display:flex;flex-direction:column;align-items:center;padding-top:3px;padding-bottom:3px}.flight-search-segment-line i{width:10px;height:10px;border:2px solid #d1d5db;border-radius:50%;background:#0a0a0a}.flight-search-segment-line span{flex:1;min-height:38px;margin:4px 0;border-left:4px dotted #d1d5db;opacity:.75}.flight-search-segment-body{min-width:0}.flight-search-segment-point{display:flex;gap:8px;align-items:baseline;min-width:0;color:#f8fafc;font-size:14px;font-weight:900;line-height:1.3}.flight-search-segment-point strong{flex:0 0 auto;color:#fff;font-size:14px;font-weight:900}.flight-search-segment-point span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flight-search-segment-duration{margin:12px 0;color:#9a9a9a;font-size:12px;font-weight:800}.flight-search-segment-meta{display:flex;flex-wrap:wrap;gap:8px;align-items:baseline;margin:18px 0 12px 34px;color:#8f949c;font-size:12px;font-weight:800;line-height:1.35;overflow-wrap:anywhere}.flight-search-segment-meta span{color:#d9dde4}.flight-search-segment-meta em{color:#9a9a9a;font-style:normal;font-size:12px;font-weight:800;white-space:nowrap}.flight-search-layover{margin:0 0 14px 34px;padding:12px 0;border-top:1px solid #333;border-bottom:1px solid #333;color:#f8fafc;font-size:13px;font-weight:900}body.map-theme-dark{--map-panel-bg:#2D2D2D;--map-panel-surface:#212121;--map-panel-text:#E0E0E0;--map-panel-border:rgba(224,224,224,.22)}body.map-theme-dark :where(.panel:not(#panel-flow-dashboard),[id^=panel-]:not(#panel-flow-dashboard),[id^=modal-],.map-layer-panel,.flight-panel-card,.flight-panel-facility-detail,.flight-panel-edit-drawer,.flight-panel-route-edit-drawer,.flight-panel-edit-aircraft-picker,.flight-search-card,.flight-search-add-control,.flight-route-control,.hsr-sched-card,.hsr-train-card,.hsr-station-card,.line-info-side-panel,#panel-station .panel-container){background:#2d2d2d!important;color:#e0e0e0!important;border-color:#e0e0e038!important}body.map-theme-dark :where(.map-layer-panel,.flight-panel-card,.flight-panel-facility-detail,.flight-panel-edit-drawer,.flight-panel-route-edit-drawer,.flight-panel-edit-aircraft-picker,.flight-search-card,.flight-search-add-control,.flight-route-control) :where(h1,h2,h3,h4,h5,h6,p,span,strong,em,small,label,div,button,input,select,textarea,th,td,li,a){color:#e0e0e0!important}body.map-theme-dark :where(.map-layer-panel,.flight-panel-card,.flight-panel-facility-detail,.flight-panel-edit-drawer,.flight-panel-route-edit-drawer,.flight-panel-edit-aircraft-picker,.flight-search-card,.flight-search-add-control,.flight-route-control) :where(input,select,textarea){background:#212121!important;border-color:#212121!important}body.map-theme-dark :where(.map-layer-panel,.flight-panel-card,.flight-panel-facility-detail,.flight-panel-edit-drawer,.flight-panel-route-edit-drawer,.flight-panel-edit-aircraft-picker,.flight-search-card,.flight-search-add-control,.flight-route-control) :where(button,.mapstyle-btn,.mapstyle-toggle-btn,.flight-search-result,.flight-search-detail,.flight-search-filter-chip>button,.flight-search-filter-menu,.flight-search-filter-menu button,.flight-search-suggestions,.flight-search-suggestions button,.flight-panel-board-tab,.flight-panel-table th,.flight-panel-table td,.ridership-item,.flow-dashboard-theme-btn){background-color:#212121!important}body.map-theme-dark .flight-panel-card .flight-panel-board-tab.is-active{background-color:#fff!important;color:#000!important}body.map-theme-dark .flight-panel-card .flight-panel-base-btn{background-color:#fff!important;color:#374151!important}body.map-theme-dark .flight-panel-card .flight-panel-base-btn.is-base{background-color:#fbbf24!important;border-color:transparent;color:#374151!important}body.map-theme-dark .flight-route-visual{background:#212121!important;border-color:#3a3a3a!important}body.map-theme-dark :where(.map-layer-panel,.flight-panel-card,.flight-panel-facility-detail,.flight-panel-edit-drawer,.flight-panel-route-edit-drawer,.flight-search-card,.flight-search-add-control,.flight-route-control,.flight-airport-legend,.map-overlay-legend) :where(.ph,.flight-panel-header,.flight-panel-facility-detail-head,.flight-search-header,.flight-search-form,.flight-search-result,.flight-search-detail,.flight-search-layover,.flight-panel-table th,.flight-panel-table td,.map-layer-panel-head,.ridership-header,.ridership-hsr-table th,.ridership-hsr-table td,hr){border-color:#212121!important}.flight-search-add-card{display:none;position:fixed;top:12px;left:384px;z-index:2347;width:320px;max-width:min(320px,calc(100vw - 24px));max-height:calc(100vh - 96px);flex-direction:column;color:#fff;background:transparent;overflow:visible}.flight-search-add-control{display:flex;flex-direction:column;gap:8px;padding:12px;border:1px solid #333;border-radius:8px;background:#000000d1;box-shadow:0 8px 24px #0000005c,inset 0 1px #ffffff0a}.flight-search-add-control .flight-route-field-row strong{min-width:0;color:#fff;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flight-search-edit-input{min-width:0;height:28px;border:1px solid rgba(255,255,255,.16);border-radius:6px;background:#151515;color:#fff;font-size:12px;font-weight:800;padding:0 8px;outline:none}.flight-search-edit-input:focus{border-color:#fbbf24}.flight-search-airline-picker{max-height:260px;overflow:auto;padding:8px;border:1px solid rgba(255,255,255,.16);border-radius:8px;background:#121212}.flight-planner-panel{display:none;position:fixed;top:12px;right:12px;z-index:2344;width:360px;max-width:min(360px,calc(100vw - 24px));max-height:calc(100vh - 96px);flex-direction:column;color:#e2e8f0;background:#020617e6;border:1px solid rgba(51,65,85,.95);border-radius:8px;box-shadow:0 10px 28px #0000005c,inset 0 1px #ffffff0d;overflow:hidden}.flight-base-mode-dialog{display:none;position:fixed;inset:0;z-index:2360;align-items:center;justify-content:center;padding:28px;color:#fff;background:#07123a;overflow:hidden;isolation:isolate}.flight-base-mode-dialog:before,.flight-base-mode-dialog:after{content:"";position:absolute;inset:0;pointer-events:none}.flight-base-mode-dialog:before{z-index:0;background:linear-gradient(180deg,#064dbc,#2f8fe3 40%,#b7d7ef,#ffe8b3)}.flight-base-mode-dialog:after{z-index:1;backdrop-filter:blur(16px) saturate(.82);-webkit-backdrop-filter:blur(16px) saturate(.82);background:#ffffff03}.flight-base-mode-dialog.sky-clear:before{background:linear-gradient(180deg,#0650bd,#1f7fdc 38%,#8bc4ef 68%,#e8f5ff)}.flight-base-mode-dialog.sky-sunset:before{background:linear-gradient(180deg,#0b46b4,#378beb 36%,#ef7d22 66%,#111834)}.flight-base-mode-dialog.sky-dusk:before{background:linear-gradient(180deg,#04093b,#223f83 34%,#cc6579 66%,#ffb046)}.flight-base-mode-dialog.sky-cruise:before{background:linear-gradient(180deg,#05285f,#0759b1 44%,#5ba6dc,#d3e8f6)}.flight-base-mode-dialog.sky-afterglow:before{background:linear-gradient(180deg,#000836,#094ca6 35%,#f15b2a 62%,#f8c76a 82%,#0b102a)}.flight-base-mode-dialog.sky-polar:before{background:linear-gradient(180deg,#102f63,#6ca6c7 36%,#e7f3f6 66%,#c9b5ad)}.flight-base-mode-dialog.sky-cyan:before{background:linear-gradient(180deg,#178f99,#1bb8c9 42%,#82dce6 72%,#e5f7f7)}.flight-base-mode-dialog.sky-rose:before{background:linear-gradient(180deg,#252b6f,#8e5a83 36%,#ff7664 63%,#ffb743)}.flight-base-mode-dialog.sky-haze:before{background:linear-gradient(180deg,#14334b,#506f7d 42%,#b9c9ca 72%,#e2b09b)}.flight-base-mode-dialog.sky-nightfall:before{background:linear-gradient(180deg,#00042d,#003b8f 42%,#006fc7 65%,#f1c6a2)}.flight-base-mode-dialog.is-open{display:flex}.flight-base-mode-card{position:relative;z-index:2;width:min(560px,100%);height:min(380px,calc(100vh - 56px));overflow:visible;background:none;border:0;border-radius:0;box-shadow:none;padding:0;backdrop-filter:none;-webkit-backdrop-filter:none;filter:none}.flight-base-mode-layout{display:grid;grid-template-columns:minmax(118px,.8fr) minmax(0,2fr);gap:14px;align-items:stretch;box-sizing:border-box;height:100%;padding:0;background:none;backdrop-filter:none;-webkit-backdrop-filter:none}.flight-base-mode-main{display:grid;grid-template-rows:1fr auto;gap:16px;min-width:0;min-height:0;box-sizing:border-box;padding:0;border-left:0;background:none;backdrop-filter:none;-webkit-backdrop-filter:none}.flight-base-mode-intro{min-height:168px;box-sizing:border-box;padding:22px 24px;color:#111827;background:#f8fafc70;border:1px solid rgba(255,255,255,.62);border-radius:22px;backdrop-filter:blur(22px) saturate(.82);-webkit-backdrop-filter:blur(22px) saturate(.82);box-shadow:0 18px 38px #0000001f,inset 0 1px #ffffff7a}.flight-base-mode-title{margin:0 0 14px;color:#0b0f16;font-family:Frutiger,Avenir Next,Avenir,Helvetica,Arial,-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif;max-width:9em;font-size:clamp(24px,2.45vw,30px);line-height:1.1;font-weight:400;letter-spacing:0}.flight-base-mode-copy{margin:0;max-width:380px;color:#111827c2;font-size:11px;font-weight:300;line-height:1.85}.flight-base-mode-airports{display:flex;flex-direction:column;justify-content:flex-start;gap:18px;min-width:0;height:100%;min-height:0;overflow-y:auto;overscroll-behavior:contain;box-sizing:border-box;padding:24px 17px;margin:0;background:#06070ac7;border:1px solid rgba(255,255,255,.24);border-radius:22px;backdrop-filter:blur(22px) saturate(.8);-webkit-backdrop-filter:blur(22px) saturate(.8);box-shadow:0 18px 38px #00000029,inset 0 1px #ffffff1a;scrollbar-width:none}.flight-base-mode-airports::-webkit-scrollbar{display:none}.flight-base-mode-airport-item{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-width:0}.flight-base-mode-airport-code{display:block;color:#fff;font-family:Frutiger,Avenir Next,Avenir,Helvetica,Arial,-apple-system,BlinkMacSystemFont,sans-serif;font-size:clamp(34px,4.2vw,50px);line-height:.95;font-weight:400;letter-spacing:0}.flight-base-mode-airport-name{display:block;max-width:100%;color:#ffffff94;font-family:Frutiger,Avenir Next,Avenir,Helvetica,Arial,-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif;font-size:12px;line-height:1.25;font-weight:300;overflow-wrap:anywhere}.flight-base-mode-options{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:0;align-items:stretch}.flight-base-mode-option{position:relative;display:flex;flex-direction:column;align-items:flex-start;min-height:118px;padding:20px 52px 18px 20px;text-align:left;color:#111827;background:#e5e7eb6b;border:1px solid rgba(255,255,255,.56);border-radius:20px;cursor:pointer;backdrop-filter:blur(20px) saturate(.82);-webkit-backdrop-filter:blur(20px) saturate(.82);box-shadow:0 14px 30px #0000001a,inset 0 1px #ffffff61;transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease}.flight-base-mode-option:hover{transform:translateY(-1px);border-color:#ffffffc7;background:#ffffff9e}.flight-base-mode-option:not(.is-creative){border-color:#ffffffc7;background:#ffffff9e}.flight-base-mode-option:not(.is-creative):hover{border-color:#ffffff8f;background:#e5e7eb6b}.flight-base-mode-option-title{display:block;width:100%;margin:0 0 12px;color:#0b0f16;font-family:Frutiger,Avenir Next,Avenir,Helvetica,Arial,-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif;font-size:14px;line-height:1.25;font-weight:400;letter-spacing:0}.flight-base-mode-option-copy{display:block;width:100%;color:#111827ad;font-size:10.5px;font-weight:300;line-height:1.7}.flight-base-mode-arrow{position:absolute;right:16px;bottom:16px;width:36px;height:36px;border:0;border-radius:999px;background:#f6b21a;box-shadow:0 6px 14px #00000029,inset 0 1px #ffffff47}.flight-base-mode-arrow:before{content:none}.flight-base-mode-arrow:after{content:none}.flight-base-mode-arrow svg{position:absolute;inset:8px;width:20px;height:20px;fill:none;stroke:#050505;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.flight-base-sky-credit{position:absolute;right:28px;bottom:24px;z-index:2;max-width:min(340px,calc(100vw - 56px));color:#ffffffc7;font-family:Frutiger,Avenir Next,Avenir,Helvetica,Arial,-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif;text-align:right;pointer-events:none}.flight-base-sky-credit.is-onesky-hidden{display:none!important}.flight-base-sky-credit-head{position:relative;display:flex;align-items:center;justify-content:flex-end;gap:8px;pointer-events:auto}.flight-base-sky-credit-title{color:#ffffffd6;font-size:15px;line-height:1.15;font-weight:300;letter-spacing:0}.flight-base-sky-help{width:18px;height:18px;border:1px solid rgba(255,255,255,.48);border-radius:999px;background:#00000029;color:#ffffffc7;padding:0;font-size:11px;font-weight:400;line-height:16px;text-align:center;cursor:pointer}.flight-base-sky-help:hover,.flight-base-sky-help:focus{border-color:#ffffffdb;color:#fff;outline:none}.flight-base-sky-popover{position:absolute;right:0;bottom:calc(100% + 10px);width:min(280px,calc(100vw - 56px));padding:12px 13px;border:1px solid rgba(255,255,255,.22);border-radius:10px;background:#080c18c7;color:#ffffffdb;box-shadow:0 12px 30px #00000047;backdrop-filter:blur(12px) saturate(.9);-webkit-backdrop-filter:blur(12px) saturate(.9);font-size:11px;font-weight:300;line-height:1.7;text-align:left;opacity:0;transform:translateY(4px);pointer-events:none;transition:opacity .16s ease,transform .16s ease}.flight-base-sky-help:hover+.flight-base-sky-popover,.flight-base-sky-help:focus+.flight-base-sky-popover{opacity:1;transform:translateY(0);pointer-events:auto}.flight-base-sky-credit-byline{margin-top:5px;color:#ffffff9e;font-size:10.5px;line-height:1.35;font-weight:300;letter-spacing:0;pointer-events:none}.flight-planner-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:14px 14px 10px;border-bottom:1px solid rgba(51,65,85,.85)}.flight-planner-kicker{color:#94a3b8;font-size:10px;letter-spacing:.14em}.flight-planner-title{margin-top:3px;color:#fff;font-size:16px;font-weight:800}.flight-planner-close{width:28px;height:28px;border:none;border-radius:999px;background:#0f172ae6;color:#cbd5e1;cursor:pointer}.flight-planner-close:hover{background:#1e293bf2;color:#fff}.flight-planner-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:10px 12px 0}.flight-planner-tab{height:30px;border:1px solid rgba(71,85,105,.8);border-radius:6px;background:#0f172ab8;color:#94a3b8;font-size:12px;font-weight:700;cursor:pointer}.flight-planner-tab.is-active{color:#fff;background:#0ea5e92e;border-color:#38bdf89e}.flight-planner-body{min-height:0;overflow:auto;padding:12px}.flight-planner-section{display:none}.flight-planner-section.is-active{display:block}.flight-planner-route-row{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px}.flight-planner-arrow{color:#64748b;font-size:13px}.flight-planner-input{width:100%;min-width:0;height:32px;border:1px solid rgba(71,85,105,.82);border-radius:6px;background:#0f172ac2;color:#e2e8f0;padding:0 9px;font-size:12px;outline:none}.flight-planner-input:focus{border-color:#38bdf8;box-shadow:0 0 0 2px #38bdf824}.flight-planner-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}.flight-planner-actions{display:flex;gap:8px;margin-top:10px}.flight-planner-btn{height:32px;padding:0 12px;border:1px solid rgba(71,85,105,.82);border-radius:6px;background:#0f172ac2;color:#cbd5e1;font-size:12px;font-weight:800;cursor:pointer}.flight-planner-btn.is-primary{border-color:#38bdf8b8;background:#0284c75c;color:#fff}.flight-planner-btn:hover{border-color:#e2e8f0cc;color:#fff}.flight-planner-results,.flight-planner-current{margin-top:12px;border-top:1px solid rgba(51,65,85,.75);padding-top:10px}.flight-planner-result-head,.flight-planner-current-summary{margin-bottom:6px;color:#fbbf24;font-size:11px;font-weight:800}.flight-planner-result-row,.flight-planner-current-row{display:grid;grid-template-columns:70px 1fr 54px 48px;gap:6px;min-height:26px;align-items:center;border-bottom:1px solid rgba(30,41,59,.9);color:#cbd5e1;font-size:10px}.flight-planner-current-row{grid-template-columns:1fr auto}.flight-planner-empty{padding:10px 0;color:#64748b;font-size:12px;text-align:center}.flight-planner-subhead{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;color:#e2e8f0;font-size:12px;font-weight:800}.flight-planner-linkbtn{border:none;background:transparent;color:#38bdf8;font-size:12px;cursor:pointer}.flight-airport-legend{position:fixed;right:14px;top:86px;z-index:996;width:176px;padding:10px 11px;border:1px solid rgba(51,65,85,.78);border-radius:8px;background:#020617b8;color:#cbd5e1;box-shadow:0 8px 22px #00000047;pointer-events:none}.flight-airport-legend-title{margin-bottom:6px;color:#fff;font-size:11px;font-weight:800}.flight-airport-legend-row{display:flex;align-items:center;gap:7px;min-height:18px;font-size:10px}.flight-airport-dot{display:inline-block;border:1px solid #334155;border-radius:999px;flex:0 0 auto}.flight-airport-dot.is-mega{width:15px;height:15px;background:#ef4444}.flight-airport-dot.is-large{width:13px;height:13px;background:#f97316}.flight-airport-dot.is-regional{width:11px;height:11px;background:#facc15}.flight-airport-dot.is-medium{width:9px;height:9px;background:#22c55e}.flight-airport-dot.is-small{width:7px;height:7px;background:#38bdf8}.flight-route-legend-line{display:inline-block;width:30px;height:0;border-top:3px solid #d1d5db;border-radius:999px;opacity:.72;flex:0 0 auto}.flight-route-legend-line.is-candidate{border-top-color:#d1d5db}.flight-route-editor-panel{display:none;position:fixed;top:12px;left:12px;z-index:2346;width:320px;max-width:min(320px,calc(100vw - 24px));max-height:calc(100vh - 96px);flex-direction:column;color:#fff;background:transparent;border:none;box-shadow:none;overflow:visible}.flight-route-close{position:absolute;top:8px;right:8px;z-index:3;width:28px;height:28px;border:none;border-radius:50%;background:#0000004d;color:#fff;font-size:16px;line-height:1;cursor:pointer}.flight-route-close:hover{background:#00000080}.flight-route-card{display:flex;flex-direction:column;gap:8px;width:100%}.flight-route-visual{position:relative;min-height:168px;padding:24px;border:1px solid #333;border-radius:20px;background:#000c;overflow:hidden}.flight-route-visual:before{content:"";position:absolute;top:0;left:0;right:0;height:5px;background:var(--flight-route-accent,#fff);border-radius:20px 20px 0 0}.flight-route-kicker{font-size:10px;font-weight:700;opacity:.6;text-transform:uppercase;letter-spacing:.1em;margin-bottom:6px}.flight-route-code{position:relative;display:flex;align-items:flex-start;justify-content:flex-start;gap:10px;font-family:Futura,Futura PT,Avenir Next,Century Gothic,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:30px;font-weight:900;line-height:1.12;letter-spacing:0;color:#fff;overflow-wrap:normal}.flight-route-stop{display:flex;flex-direction:column;align-items:flex-start;flex:0 0 min-content;min-width:0;max-width:82px}.flight-route-code-token{display:block;white-space:nowrap}.flight-route-name-token{display:block;margin-top:10px;color:#b8b8b8;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Microsoft YaHei,sans-serif;font-size:12px;font-weight:600;line-height:1.45;white-space:normal;overflow-wrap:anywhere}.flight-route-sep{flex:0 0 auto;color:#fff;line-height:1.12;margin:0 2px}.flight-route-names{display:none}.flight-route-control{padding:20px;border:1px solid #333;border-radius:20px;background:#000c}.flight-route-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0;border-bottom:1px solid #222}.flight-route-row:first-child{padding-top:0}.flight-route-row:last-child{border-bottom:none;padding-bottom:0}.flight-route-row--stack{flex-direction:column;align-items:stretch}.flight-route-row-main{display:flex;align-items:center;justify-content:space-between;gap:10px}.flight-route-row-label{color:#9a9a9a;font-size:12px;font-weight:500}.flight-route-row-hint{margin-top:4px;color:#777;font-size:10px;line-height:1.35}.flight-route-option{display:flex;flex-direction:column;gap:12px;padding:14px 0;border-bottom:1px solid #222}.flight-route-option:first-child{padding-top:0}.flight-route-option:last-child{border-bottom:none;padding-bottom:0}.flight-route-amount-line{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:32px;color:#a3a3a3;font-size:11px;font-weight:600}.flight-route-frequency-line{display:grid;grid-template-columns:72px minmax(0,1fr);align-items:center;gap:10px;color:#a3a3a3;font-size:11px;font-weight:700}.flight-route-day-toggle-group{display:inline-flex;flex-wrap:nowrap;justify-self:end;min-width:0;gap:2px;padding:3px;border-radius:10px;background:#222;box-shadow:inset 0 1px 2px #0000004d}.flight-route-day-toggle{position:relative;flex:0 0 auto;min-width:0;width:24px;height:24px;border:0;border-radius:8px;background:#111;color:#777;padding:0;font-size:11px;font-weight:800;cursor:pointer;transition:background .18s,color .18s,box-shadow .18s}.flight-route-day-toggle:hover{color:#bdbdbd}.flight-route-day-toggle.is-active{background:#444;color:#fff;box-shadow:0 2px 6px #0000004d}.flight-route-day-toggle:after{content:attr(data-tip);position:absolute;left:50%;bottom:calc(100% + 8px);z-index:10;transform:translate(-50%) translateY(2px);padding:4px 7px;border-radius:6px;background:#0a0a0af5;color:#fff;font-size:11px;font-weight:700;line-height:1;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .12s,transform .12s}.flight-route-day-toggle:hover:after,.flight-route-day-toggle:focus-visible:after{opacity:1;transform:translate(-50%) translateY(0)}.flight-route-fields{display:grid;grid-template-columns:1fr;gap:9px}.flight-route-field-row{display:grid;grid-template-columns:72px minmax(0,1fr);align-items:center;gap:10px}.flight-route-field-row span{color:#a3a3a3;font-size:11px;font-weight:700}.flight-route-choice{width:100%;min-width:0;height:32px;border:1px solid rgba(255,255,255,.18);border-radius:8px;background:#181818;color:#e8e8e8;padding:0 9px;font-size:12px;font-weight:700;text-align:left;outline:none;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flight-route-choice:after{content:"\203a";float:right;color:#9a9a9a;font-size:16px;line-height:1}.flight-route-choice:hover,.flight-route-choice:focus{border-color:#ffffffd1;box-shadow:0 0 0 1px #ffffff14}.flight-route-choice.is-empty{color:#9a9a9a}.flight-route-action-line{display:flex;justify-content:flex-end}.flight-route-icon-btn{width:28px;height:28px;border:1px solid rgba(255,255,255,.16);border-radius:999px;background:#f9fafb;color:#000;font-size:18px;font-weight:800;line-height:1;cursor:pointer}.flight-route-text-btn{height:28px;border:none;border-radius:9px;background:#222;color:#e5e7eb;padding:0 10px;font-size:11px;font-weight:700;cursor:pointer}.flight-route-text-btn:hover{background:#333;color:#fff}.flight-route-text-btn.is-primary{background:#f9fafb;color:#020617}.flight-route-text-btn.is-primary:hover{background:#fff;color:#000}.flight-route-stepper{align-self:flex-end;display:inline-grid;grid-template-columns:28px 46px 28px;align-items:center;gap:4px;padding:3px;border-radius:10px;background:#202020}.flight-route-step{height:24px;border:none;border-radius:8px;background:#2b2b2b;color:#e5e7eb;font-size:16px;line-height:1;cursor:pointer}.flight-route-count{width:46px;height:24px;border:none;border-radius:7px;background:#111;color:#fff;text-align:center;font-size:12px;font-weight:800;outline:none}.flight-route-picker{display:none;position:absolute;top:176px;left:calc(100% + 10px);width:294px;max-height:min(520px,calc(100vh - 48px));border:1px solid #333;border-radius:20px;background:#000c;box-shadow:0 16px 38px #0000006b;overflow:visible}.flight-route-picker.is-open{display:flex;flex-direction:column}.flight-route-picker.is-aircraft{border-color:#333;background:#000c;box-shadow:0 16px 38px #0000006b}.flight-route-picker-head{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:38px;padding:0 10px 0 12px;border-bottom:1px solid #2c2c2c;color:#e5e7eb;font-size:12px;font-weight:800}.flight-route-picker-head button{width:24px;height:24px;border:none;border-radius:999px;background:#202020;color:#d4d4d4;cursor:pointer}.flight-route-picker.is-aircraft .flight-route-picker-head{border-bottom:none}.flight-route-picker.is-aircraft .flight-route-picker-list{display:flex;flex:1 1 auto;flex-direction:column;overflow:hidden}.flight-route-picker-list{min-height:0;overflow:auto;padding:8px;border-radius:0 0 8px 8px;background:transparent}.flight-route-picker.is-airline .flight-route-picker-list{overflow:visible}.flight-route-picker.is-airline .flight-route-airline-list{max-height:300px;overflow:auto;padding-right:2px}.flight-route-picker-item{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:32px;margin-bottom:6px;border:1px solid rgba(255,255,255,.14);border-radius:7px;background:#181818;color:#e5e7eb;padding:0 10px;font-size:12px;font-weight:800;text-align:left;cursor:pointer}.flight-route-picker-item:hover,.flight-route-picker-item.is-selected{border-color:#ffffffd1;background:#ffffff14;color:#fff}.flight-route-picker-empty{padding:18px 10px;color:#9a9a9a;font-size:12px}.flight-route-airline-list{display:flex;flex-direction:column;gap:6px}.flight-route-airline-row{display:grid;grid-template-columns:minmax(0,1fr) 26px;gap:6px;align-items:center}.flight-route-airline-row.is-default .flight-route-airline-item{border-color:#fb923c9e}.flight-route-airline-row:not(.is-selected) .flight-route-airline-check{opacity:.82}.flight-route-airline-row .flight-route-airline-item{margin-bottom:0}.flight-route-airline-item{min-height:34px}.flight-route-airline-item span{display:block;min-width:0}.flight-route-airline-item strong{display:inline-block;min-width:30px;margin-right:8px;color:#fff}.flight-route-airline-item em{display:inline-flex;align-items:center;min-height:18px;margin-left:9px;padding:0 6px;border-radius:5px;background:#0000007a;color:#fbbf24;font-size:10px;font-style:normal;font-weight:900;vertical-align:middle}.flight-route-airline-check{width:22px;height:22px;border:1px solid rgba(255,255,255,.16);border-radius:6px;background:#181818;cursor:pointer}.flight-route-airline-check.is-checked{border-color:#ffffffdb;background:#f9fafb;box-shadow:inset 0 0 0 4px #181818}.flight-route-airline-check.is-default-toggle.is-checked{border-color:#f97316;background:#f97316;box-shadow:inset 0 0 0 4px #181818}.flight-route-airline-check.is-disabled{opacity:.28;cursor:not-allowed}.flight-route-picker-divider{margin:7px 0 4px;color:#8a8a8a;font-size:10px;font-weight:800}.flight-route-airline-tools{margin-top:8px;padding-top:8px;border-top:1px solid rgba(255,255,255,.14)}.flight-route-airline-tool-row{display:flex;align-items:center;gap:7px}.flight-route-tool-btn{height:28px;min-width:28px;border:1px solid rgba(255,255,255,.16);border-radius:999px;background:#181818;color:#e5e7eb;font-size:13px;font-weight:900;cursor:pointer}.flight-route-tool-btn.is-wide{padding:0 10px;font-size:11px}.flight-route-tool-btn.is-active{border-color:#ffffffd1;background:#ffffff14;color:#fff}.flight-route-tool-btn.is-danger{color:#fecaca;border-color:#f871717a}.flight-route-tool-btn:hover{border-color:#ffffffd1;color:#fff}.flight-route-help{position:relative;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border:1px solid rgba(255,255,255,.16);border-radius:999px;color:#a3a3a3;font-size:12px;font-weight:900;cursor:help}.flight-route-help-pop{display:none;position:absolute;left:30px;bottom:-4px;z-index:30;width:268px;padding:10px;border:1px solid #333;border-radius:8px;background:#111;color:#e5e7eb;box-shadow:0 12px 28px #0000005c;font-size:10px;font-weight:600;line-height:1.55;pointer-events:none}.flight-route-help-pop strong{display:block;margin-bottom:5px;color:#fff;font-size:11px}.flight-route-help:hover .flight-route-help-pop,.flight-route-help:focus .flight-route-help-pop{display:block}.flight-route-airline-form{display:grid;grid-template-columns:58px minmax(0,1fr);gap:8px;margin:9px 0 8px}.flight-route-airline-form label{display:flex;flex-direction:column;gap:4px;color:#a3a3a3;font-size:10px;font-weight:700}.flight-route-airline-form label.is-code{grid-column:1 / 2;grid-row:1 / 2}.flight-route-airline-form label.is-name{grid-column:2 / 3;grid-row:1 / 2}.flight-route-airline-form label.is-en{grid-column:1 / 3;grid-row:2 / 3}.flight-route-airline-form input{width:100%;min-width:0;height:30px;border:1px solid rgba(255,255,255,.16);border-radius:7px;background:#181818;color:#fff;padding:0 8px;font-size:12px;outline:none}.flight-route-airline-form label.is-code input{text-align:center;font-size:14px;font-weight:900}.flight-route-airline-form input:focus{border-color:#ffffffd1;box-shadow:0 0 0 1px #ffffff14}.flight-route-airline-form-foot{grid-column:1 / 3;display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:28px}.flight-route-airline-form-foot span{min-width:0;color:#fca5a5;font-size:10px;line-height:1.3}.flight-route-aircraft-card{margin-bottom:7px;border:1px solid rgba(255,255,255,.14);border-radius:8px;background:#ffffff0a;overflow:hidden}.flight-route-aircraft-card:hover{background:#ffffff12}.flight-route-aircraft-tools{flex:0 0 auto;margin:0 0 8px;padding:0;border-bottom:none;background:transparent}.flight-route-aircraft-scroll{flex:1 1 auto;min-height:0;overflow:auto;padding-right:2px}.flight-route-aircraft-search{width:100%;height:36px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:#ffffff0a;color:#fff;padding:0 14px;font-size:12px;font-weight:700;outline:none}.flight-route-aircraft-search::placeholder{color:#8f8f8f}.flight-route-aircraft-search:focus{border-color:#ffffffd1;box-shadow:0 0 0 1px #ffffff14}.flight-route-aircraft-filters{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}.flight-route-aircraft-filters label{display:flex;flex-direction:column;gap:5px;min-width:0;color:#a8a8a8;font-size:10px;font-weight:800}.flight-route-aircraft-filters select{width:100%;height:30px;border:1px solid rgba(255,255,255,.16);border-radius:8px;background:#ffffff0a;color:#f5f5f5;padding:0 8px;font-size:11px;font-weight:800;outline:none}.flight-route-aircraft-filters select:focus{border-color:#ffffffd1;box-shadow:0 0 0 1px #ffffff14}.flight-route-aircraft-card.is-selected{border-color:#ffffffd1;background:#ffffff14;box-shadow:inset 0 0 0 1px #ffffff14}.flight-route-aircraft-card.is-disabled{border-color:#ffffff14;background:#ffffff08;opacity:.58}.flight-route-aircraft-card.is-disabled .flight-route-aircraft-select{cursor:not-allowed}.flight-route-aircraft-card.is-disabled .flight-route-aircraft-select span,.flight-route-aircraft-card.is-disabled .flight-route-aircraft-select small{color:#8a8a8a}.flight-route-aircraft-main{display:grid;grid-template-columns:minmax(0,1fr) 40px;align-items:stretch}.flight-route-aircraft-select{min-width:0;min-height:40px;border:none;background:transparent;color:#fff;padding:7px 10px;text-align:left;cursor:pointer}.flight-route-aircraft-select span{display:block;font-size:12px;font-weight:900;line-height:1.15}.flight-route-aircraft-select small{display:block;margin-top:3px;color:#b8b8b8;font-size:10px;font-weight:600;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flight-route-aircraft-toggle{position:relative;display:flex;align-items:center;justify-content:center;width:40px;min-width:40px;min-height:40px;border:none;background:transparent;color:#a8a8a8;font-size:13px;font-weight:700;line-height:1;cursor:pointer;padding:0}.flight-route-aircraft-toggle:before{content:"";width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-2px) rotate(45deg);transform-origin:center}.flight-route-aircraft-toggle.is-expanded:before{transform:translateY(2px) rotate(225deg)}.flight-route-aircraft-toggle:hover{color:#f5f5f5}.flight-route-aircraft-details{display:grid;grid-template-columns:1fr;gap:1px;padding:7px 10px 9px;border-top:1px solid rgba(255,255,255,.14);background:#181818b8}.flight-route-aircraft-details div{display:grid;grid-template-columns:96px minmax(0,1fr);gap:8px;color:#cbd5e1;font-size:10px;line-height:1.35}.flight-route-aircraft-details span{color:#9a9a9a}.flight-route-aircraft-details strong{min-width:0;color:#e5e7eb;font-weight:700;overflow-wrap:anywhere}@media(max-width:768px){.flight-base-mode-dialog{align-items:center;padding:14px}.flight-base-mode-card{width:100%;height:min(560px,calc(100dvh - 24px))}.flight-base-mode-layout{display:grid;grid-template-columns:1fr;grid-template-rows:minmax(116px,150px) minmax(0,1fr);gap:12px;box-sizing:border-box;height:100%}.flight-base-mode-main{min-height:0;display:grid;grid-template-rows:minmax(0,1fr) auto;gap:12px;padding:0;border-left:0;border-top:0}.flight-base-mode-intro{min-height:0;padding:20px 18px;border-radius:20px}.flight-base-mode-title{font-size:23px;line-height:1.18}.flight-base-mode-copy{font-size:11px;line-height:1.72}.flight-base-mode-airports{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));justify-content:start;min-height:0;height:auto;max-height:150px;overflow-y:auto;gap:12px;padding:16px;margin:0;border-radius:20px}.flight-base-mode-airport-code{font-size:30px}.flight-base-mode-airport-name{font-size:10px}.flight-base-mode-options{grid-template-columns:1fr;gap:10px;margin-top:0}.flight-base-mode-option{min-height:104px;padding:15px 54px 15px 16px;border-radius:18px}.flight-base-sky-credit{right:16px;bottom:12px;max-width:calc(100vw - 32px)}.flight-base-sky-credit-title{font-size:13px}.flight-base-sky-credit-byline{font-size:9.5px}.flight-base-mode-arrow{right:14px;bottom:14px;width:32px;height:32px}.flight-base-mode-arrow svg{inset:7px;width:18px;height:18px}.flight-planner-panel{top:8px;right:8px;left:8px;width:auto;max-width:none;max-height:calc(100dvh - 92px)}.flight-route-search-panel{top:8px;left:8px;width:auto;max-width:none;max-height:calc(100dvh - 92px)}.flight-search-route-row{grid-template-columns:minmax(0,1fr) 28px minmax(0,1fr) 48px 28px}.flight-search-filter-strip{flex-wrap:wrap}.flight-search-main{grid-template-columns:minmax(0,1fr);gap:6px}.flight-search-summary{padding-right:8px}.flight-search-summary strong,.flight-search-summary em,.flight-search-segment-point span{white-space:normal}.flight-search-add-card{inset:auto 8px 76px;width:auto;max-width:none;max-height:52dvh}.flight-airport-legend{inset:72px 8px auto auto;width:164px}.flight-route-editor-panel{top:8px;left:8px;width:320px;transform:scale(.88);transform-origin:top left}.flight-route-picker{left:0;top:calc(100% + 8px);width:320px;max-height:44vh}}.panel-hsr-station{display:none;flex-direction:column;position:fixed;top:12px;left:12px;transform:none;width:320px;max-width:min(320px,calc(100vw - 24px));max-height:calc(100vh - 96px);background:transparent;border:none;box-shadow:none;padding:0;z-index:2345;overflow:visible}.hsr-station-close{position:absolute;top:8px;right:8px;z-index:3;width:28px;height:28px;border:none;border-radius:50%;background:#0000004d;color:#fff;font-size:16px;line-height:1;cursor:pointer}.hsr-station-close:hover{background:#00000080}.hsr-station-card{display:flex;flex-direction:column;max-height:calc(100vh - 96px);background:#252628;border:1px solid rgba(255,255,255,.13);border-radius:20px;color:#e4e4e7;box-shadow:0 12px 34px #0000006b,inset 0 1px #ffffff0d;overflow:hidden}.hsr-station-header{flex:none;padding:18px 44px 12px 18px;border-bottom:1px solid rgba(255,255,255,.13)}.hsr-station-name{margin:0;font-size:18px;font-weight:700;color:#fff;line-height:1.35}.hsr-station-meta{margin-top:10px;display:flex;flex-direction:column;gap:4px;font-size:11px;color:#d4d4d8}.hsr-station-meta-row{display:grid;grid-template-columns:64px minmax(0,1fr);gap:8px;align-items:start}.hsr-station-meta-row span:first-child{color:#71717a}.hsr-station-meta-row span:last-child{color:#e5e7eb;overflow:hidden;text-overflow:ellipsis}.hsr-station-board-section{flex:none;padding:0 0 8px}.hsr-station-board-title{padding:10px 14px 6px;font-size:12px;font-weight:600;color:#fde68a}.hsr-station-board-wrap{max-height:220px;padding:0 8px;scroll-padding-top:30px}.hsr-board-table th{position:sticky;top:0;z-index:8;background:#252628!important;background-color:#252628!important;box-shadow:0 -10px #252628,0 1px #fde68a29}.hsr-board-table th{color:#fde68a!important;font-size:9px;padding:8px 2px 6px}.hsr-board-table th:nth-child(1){width:16%}.hsr-board-table th:nth-child(2){width:18%}.hsr-board-table th:nth-child(3){width:18%}.hsr-board-table th:nth-child(4){width:14%}.hsr-board-table th:nth-child(5){width:12%}.hsr-board-table th:nth-child(6){width:22%}.hsr-board-table td{font-size:10px;padding:7px 2px;line-height:1.25}.hsr-board-row,.hsr-board-row--alt{color:#fff!important}.hsr-board-row--clickable{cursor:pointer}.hsr-board-row--clickable:hover{background:#facc1514}.hsr-board-status{font-weight:600}.hsr-station-charts{flex:none;padding:8px 14px 4px;border-top:1px solid rgba(255,255,255,.13)}.hsr-station-chart-unit{margin-bottom:10px}.hsr-station-chart-label{font-size:10px;color:#a1a1aa;margin-bottom:6px}.hsr-station-chart-bars{display:flex;align-items:flex-end;gap:2px;height:56px}.hsr-station-bar-wrap{flex:1;height:100%;display:flex;align-items:flex-end;min-width:0}.hsr-station-bar{width:100%;border-radius:2px 2px 0 0;min-height:2px;opacity:.92}.hsr-station-chart-axis{display:flex;justify-content:space-between;font-size:9px;color:#71717a;padding:0 2px 4px}.hsr-station-foot{flex:none;display:flex;justify-content:flex-end;align-items:baseline;gap:6px;padding:10px 16px 14px;border-top:1px solid rgba(255,255,255,.13)}.hsr-station-daily-flow-label{font-size:11px;color:#a1a1aa}.hsr-station-daily-flow-val{font-size:16px;font-weight:700;color:#fff}.panel-hsr-train{display:none;flex-direction:column;position:fixed;top:12px;left:12px;transform:none;width:390px;max-width:min(390px,calc(100vw - 24px));max-height:calc(100vh - 96px);background:transparent;border:none;box-shadow:none;padding:0;z-index:2346;overflow:visible}.hsr-train-close,.hsr-train-action{position:absolute;top:8px;z-index:3;display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:none;border-radius:50%;background:#0000004d;color:#fff;font-size:0;line-height:0;cursor:pointer}.hsr-train-close{right:8px}.hsr-train-add-station{right:44px;color:#86efac}.hsr-train-delete{right:80px;color:#fca5a5}.hsr-train-close:before,.hsr-train-close:after{content:"";position:absolute;left:50%;top:50%;width:12px;height:2.5px;border-radius:999px;background:currentColor;transform:translate(-50%,-50%) rotate(45deg)}.hsr-train-close:after{transform:translate(-50%,-50%) rotate(-45deg)}.hsr-train-add-station:before{content:"";position:absolute;left:50%;top:50%;width:13px;height:2.4px;border-radius:999px;background:currentColor;transform:translate(-50%,-50%)}.hsr-train-add-station:after{content:"";position:absolute;left:50%;top:50%;width:2.4px;height:13px;border-radius:999px;background:currentColor;transform:translate(-50%,-50%)}.hsr-train-delete:before{content:"";position:absolute;left:8px;top:10px;width:12px;height:10px;border:2px solid currentColor;border-top:0;border-radius:1px 1px 3px 3px}.hsr-train-delete:after{content:"";position:absolute;left:7px;top:7px;width:14px;height:2px;border-radius:999px;background:currentColor;box-shadow:4px -3px 0 -1px currentColor}.hsr-train-close:hover,.hsr-train-action:hover{background:#00000080}.hsr-train-add-station:hover{color:#bbf7d0}.hsr-train-delete:hover{color:#fecaca}.hsr-train-card{display:flex;flex-direction:column;max-height:calc(100vh - 96px);background:#252628;border:1px solid rgba(255,255,255,.13);border-radius:20px;color:#e4e4e7;box-shadow:0 12px 34px #0000006b,inset 0 1px #ffffff0d;overflow:hidden}.hsr-train-header{flex:none;padding:18px 78px 18px 18px;border-bottom:1px solid rgba(255,255,255,.13)}.hsr-train-name{margin:0;font-size:26px;font-weight:800;color:#fff;line-height:1.18}.hsr-train-route{display:none;margin-top:4px;font-size:12px;color:#fde68a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hsr-train-meta{margin-top:18px;margin-left:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:clamp(14px,3vw,26px);row-gap:7px;align-items:baseline;max-width:100%}.hsr-train-meta-row{display:grid;grid-template-columns:4.4em minmax(4.8em,1fr);column-gap:clamp(8px,1.8vw,14px);align-items:baseline;min-width:0}.hsr-train-meta-row span{color:#7b7d84;font-size:12px;font-weight:700;line-height:1.35;white-space:nowrap}.hsr-train-meta-row strong{min-width:0;color:#fff;font-size:clamp(11px,1.65vw,13px);font-weight:800;line-height:1.35;overflow:visible;white-space:nowrap}.hsr-train-meta-row:nth-child(3) strong{color:#fde68a}.hsr-train-station-link{appearance:none;border:0;background:transparent;padding:0;margin:0;color:inherit;font:inherit;font-weight:inherit;text-align:left;cursor:pointer;border-radius:4px}.hsr-train-station-link:hover,.hsr-train-station-link:focus-visible{color:#fde68a;text-decoration:underline;outline:none}.hsr-train-stops-wrap{flex:1 1 auto;min-height:0;overflow:auto;padding:0 18px 14px;scroll-padding-top:30px}.hsr-train-stops-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;color:#f8fafc;font-size:11px;font-variant-numeric:tabular-nums}.hsr-train-stops-table th{position:sticky;top:0;z-index:8;background:#252628;background-color:#252628;color:#fde68a;font-size:10px;font-weight:700;text-align:left;padding:10px 3px 7px;border-bottom:1px solid rgba(253,230,138,.38);box-shadow:0 -10px #252628,0 1px #fde68a29;white-space:nowrap}.hsr-train-stops-table th:nth-child(1){width:30%}.hsr-train-stops-table th:nth-child(n+2){width:14%;text-align:center}.hsr-train-stops-table td{padding:9px 3px;border-bottom:1px solid rgba(255,255,255,.11);vertical-align:middle}.hsr-train-stops-table td:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hsr-train-stops-table td:nth-child(n+2){text-align:center;white-space:nowrap}.hsr-train-stops-table tr.is-alt{color:#f8e7a1}#modal-line .visual-header{position:absolute;top:24px;left:24px;right:24px;display:flex;justify-content:space-between;align-items:flex-start;z-index:20}#modal-line .visual-header .line-config-lbl{font-size:10px;font-weight:700;opacity:.6;text-transform:uppercase;letter-spacing:.1em;margin-bottom:4px;color:#fff}#modal-line .visual-header .line-name-inp{-webkit-appearance:none;appearance:none;background:transparent!important;background-color:transparent!important;font-size:1.875rem;font-weight:900;color:#fff;outline:none;width:8em;border:none;border-bottom:1px solid rgba(255,255,255,.28);padding:0 0 4px;letter-spacing:.02em;box-shadow:none!important}#modal-line .visual-header .line-name-inp:hover,#modal-line .visual-header .line-name-inp:focus,#modal-line .visual-header .line-name-inp:active,#modal-line .visual-header .line-name-inp:-webkit-autofill{background:transparent!important;background-color:transparent!important;border-bottom-color:#ffffff8c;box-shadow:none!important}#modal-line .visual-header .line-name-inp::placeholder{color:#ffffff80}#modal-line .visual-capacity{position:absolute;bottom:24px;right:24px;z-index:20;color:#fff;text-align:right}#modal-line .visual-capacity .cap-lbl{font-size:10px;opacity:.6;font-weight:700;margin-bottom:2px}#modal-line .visual-capacity .cap-val{font-size:14px;font-weight:700}#modal-line .control-card{background:#252628;border:1px solid rgba(255,255,255,.13);border-radius:20px;padding:20px;color:#fff;box-shadow:none}#modal-line .list-row{display:flex;align-items:center;justify-content:space-between;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.13)}#modal-line .list-row.list-row--stack{display:flex;flex-direction:column;align-items:stretch}#modal-line .list-row .list-row-main{display:flex;align-items:center;justify-content:flex-start;gap:12px}#modal-line .list-row--stack .list-row-main{display:grid;grid-template-columns:auto 1fr;align-items:center;column-gap:12px}#modal-line .list-row:last-child{border-bottom:none;padding-bottom:0}#modal-line .list-row:first-child{padding-top:0}#modal-line .row-label{font-size:12px;color:#e4e6eb;font-weight:700}#modal-line .list-row--stack .row-label{flex-shrink:0;white-space:nowrap}#modal-line .line-row-right{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0}#modal-line .list-row--stack .line-row-right{margin-left:0;flex:1 1 auto;min-width:0;justify-content:flex-end}#modal-line #line-type-row .list-row-main,#modal-line #line-cars-row-wrap .list-row-main,#modal-line #line-speed-row-wrap .list-row-main{display:flex;align-items:center;justify-content:flex-start;width:100%;gap:10px;min-width:0}#modal-line #line-type-row .row-label,#modal-line #line-cars-row-wrap .row-label,#modal-line #line-speed-row-wrap .row-label{flex:0 0 auto}#modal-line #line-type-row .line-row-right,#modal-line #line-cars-row-wrap .line-row-right,#modal-line #line-speed-row-wrap .line-row-right{margin-left:auto;flex:1 1 auto;min-width:0;justify-content:flex-end}#modal-line #line-type-capsule-main,#modal-line #line-type-capsule-extra{flex:0 0 auto;width:max-content;max-width:calc(100% - 30px);display:inline-flex;flex-wrap:nowrap}#modal-line #line-type-capsule-main .toggle-item,#modal-line #line-type-capsule-extra .toggle-item{padding:4px 7px;font-size:10px;white-space:nowrap;flex:0 0 auto}#modal-line #line-cars-capsule-main,#modal-line #line-cars-capsule-extra{flex:0 0 auto;display:inline-flex;flex-wrap:nowrap}#modal-line #line-cars-capsule-main .toggle-item,#modal-line #line-cars-capsule-extra .toggle-item{flex:0 0 auto;white-space:nowrap;padding:4px 10px;font-size:11px}#modal-line #line-speed-capsule-main{flex:0 0 auto;display:inline-flex;flex-wrap:nowrap}#modal-line #line-speed-capsule-main .toggle-item{flex:0 0 auto;white-space:nowrap}#modal-line .toggle-capsule{background:#303133;border-radius:10px;padding:3px;display:inline-flex;gap:2px;box-shadow:inset 0 1px #ffffff0d;flex-wrap:nowrap}#modal-line .toggle-capsule.line-official-city-tabs-row--cols4,#modal-line .toggle-capsule.line-official-city-tabs-row--cols2{display:flex!important;flex-wrap:nowrap;justify-content:flex-start;gap:10px;width:100%;box-sizing:border-box}#modal-line .toggle-capsule--speed-extra{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px}#modal-line .toggle-item{padding:4px 10px;font-size:11px;color:#d6d9df;border-radius:8px;cursor:pointer;transition:all .2s;font-weight:700;flex:0 0 auto;white-space:nowrap}#modal-line .toggle-item:hover{color:#fff;background:#38393b}#modal-line .toggle-item.active{background:#55575a;color:#fff;box-shadow:inset 0 1px #ffffff14}#modal-line .line-color-row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}#modal-line .line-row-arrow-btn,#modal-line .line-row-arrow-placeholder{width:22px;min-width:22px;height:22px}#modal-line .line-row-arrow-btn{border:none;border-radius:6px;background:#303133;color:#e1e5eb;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0;box-shadow:none;opacity:1;transition:opacity .15s,color .15s,transform .15s}#modal-line .line-row-arrow-btn:hover{opacity:1;color:#fff;background:#3a3b3e}#modal-line .line-stock-ref-btn{color:#9ca3af}#modal-line .line-stock-ref-btn:hover{color:#e5e7eb}#modal-line .line-stock-ref-btn svg{transform:rotate(-90deg)}#modal-line .line-stock-ref-btn.is-open svg{transform:rotate(-90deg)}#modal-line .line-row-arrow-btn.is-open svg{transform:rotate(180deg)}#modal-line .line-row-arrow-btn svg{display:block;transition:transform .15s}#modal-line .line-row-arrow-placeholder{display:inline-block;border-radius:6px;border:1px solid transparent}#modal-line .line-extra-panel{display:none;width:100%;box-sizing:border-box;clear:both;margin-top:8px;padding-top:8px;border-top:none}#modal-line .line-extra-panel.is-open{display:block;text-align:right}#modal-line .line-extra-panel.line-extra-panel--speed{text-align:right}#modal-line #line-speed-extra-panel{display:none;width:100%;text-align:right}#modal-line #line-speed-extra-panel.is-open{display:block;text-align:right}#modal-line .line-extra-panel .toggle-capsule{margin-left:auto;display:inline-flex;margin-right:30px}#modal-line #line-type-extra-panel .toggle-capsule--madrid-stock-extra,#modal-line-edit #line-edit-type-extra-panel .toggle-capsule--madrid-stock-extra{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:auto;gap:2px;flex-wrap:unset;width:auto;max-width:min(100%,252px);margin-left:auto;margin-right:30px;box-sizing:border-box}#modal-line #line-type-extra-panel .toggle-capsule--madrid-stock-extra .toggle-item,#modal-line-edit #line-edit-type-extra-panel .toggle-capsule--madrid-stock-extra .toggle-item{flex:unset;min-width:0;text-align:center;padding:4px 6px}#modal-line .line-stock-drawer{display:none}#modal-line.modal-line--stock-open .line-stock-drawer{display:flex;flex-direction:column}#modal-line .line-stock-drawer-body{display:flex;flex-direction:column;gap:8px}#modal-line .line-stock-item{display:grid;grid-template-columns:1fr;gap:8px;align-items:center;padding:10px 12px;border-radius:14px;background:#ffffff0a;border:1px solid transparent;cursor:pointer}#modal-line .line-stock-item:hover{border-color:#60a5fa47;background:#ffffff0f}#modal-line .line-stock-code{font-size:12px;font-weight:800;color:#fff}#modal-line .line-stock-brand{margin-left:8px;font-size:11px;font-weight:600;color:#fff}#modal-line #line-type-row .line-row-right,#modal-line #line-cars-row-wrap .line-row-right,#modal-line #line-speed-row-wrap .line-row-right{position:relative;box-sizing:border-box;padding-right:30px}#modal-line #line-type-row .line-row-right>.line-row-arrow-btn,#modal-line #line-cars-row-wrap .line-row-right>.line-row-arrow-btn,#modal-line #line-speed-row-wrap .line-row-right>.line-row-arrow-btn,#modal-line #line-type-row .line-row-right>.line-stock-ref-btn{position:absolute;right:0;top:50%;margin-top:-11px}#modal-line #line-speed-row-wrap #line-speed-capsule-main{margin-right:0;flex:0 1 auto}#modal-line .line-stock-apply{border:1px solid rgba(96,165,250,.32);background:#2563eb2e;color:#dbeafe;border-radius:8px;padding:5px 9px;font-size:10px;font-weight:700;cursor:pointer}#modal-line .line-stock-apply:hover{background:#2563eb4d}body.sg-font-stroudley #modal-line,body.sg-font-stroudley #modal-line button,body.sg-font-stroudley #modal-line input,body.sg-font-stroudley #modal-line select,body.sg-font-stroudley #modal-line .row-label,body.sg-font-stroudley #modal-line .toggle-item,body.sg-font-stroudley #modal-line .line-stock-code,body.sg-font-stroudley #modal-line .line-stock-brand{font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif!important}#modal-line .line-extra-panel .toggle-capsule--speed-extra{display:grid;grid-template-columns:repeat(3,1fr);column-gap:8px;row-gap:6px;width:168px;max-width:168px;min-width:0;padding:4px 8px;margin-left:auto;margin-right:30px;justify-items:center}#modal-line #line-speed-capsule-extra{display:grid!important;grid-template-columns:repeat(3,1fr)!important;column-gap:8px;row-gap:6px;width:168px!important;max-width:168px!important;min-width:0;margin-left:auto!important;margin-right:30px!important;padding:4px 8px;box-sizing:border-box;justify-content:stretch}#modal-line .line-extra-panel .toggle-capsule--speed-extra .toggle-item{min-width:0;text-align:center;padding:3px 4px;font-size:10px}#modal-line .color-selector{width:16px;height:16px;border-radius:4px;cursor:pointer;transition:transform .2s,opacity .2s,box-shadow .2s;opacity:.4}#modal-line .color-selector:hover{opacity:.8}#modal-line .color-selector.preset-swatch.active{opacity:1;transform:scale(1.2) rotate(45deg);box-shadow:0 0 10px var(--theme-color)}#modal-line .action-btn{margin-top:16px;width:100%;background:transparent!important;border:none;padding:0;cursor:pointer;display:flex;justify-content:flex-end;align-items:center}#modal-line .action-btn span{font-weight:700;font-size:12px;letter-spacing:2px;color:#e5e7eb;margin-right:12px}#modal-line .action-btn .start-pill{width:32px;height:32px;border-radius:999px;background:var(--theme-color,#3b82f6);display:flex;align-items:center;justify-content:center;box-shadow:0 6px 18px #0006;color:#000}#modal-line .action-btn:hover .start-pill{transform:translateY(-1px);box-shadow:0 10px 24px #00000080}#modal-line .line-freq-row-wrap{display:none}#modal-line .line-freq-row-wrap.show{display:flex;align-items:center;justify-content:space-between;padding:14px 0;border-bottom:1px solid #222}.form-row{margin-bottom:10px}.form-lbl{font-size:8px;color:var(--t4);letter-spacing:1.5px;text-transform:uppercase;margin-bottom:4px}.form-input{width:100%;padding:7px 0;background:transparent;border:none;border-bottom:1px solid var(--bd3);color:var(--t1);font-size:13px;outline:none;letter-spacing:1px;transition:border-color .12s}.form-input:focus{border-bottom-color:var(--t3)}.type-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin-top:4px}.type-card{padding:8px;background:var(--bg3);border:1px solid var(--bd3);cursor:pointer;transition:all .12s;text-align:center}.type-card:hover,.type-card.sel{border-color:var(--t3);background:var(--bg4)}.type-card .tc-name{font-size:10px;color:var(--t1);margin-bottom:2px}.type-card .tc-sub{font-size:8px;color:var(--t3)}.cars-row{display:flex;gap:4px;margin-top:4px}.car-btn{flex:1;padding:6px;background:var(--bg3);border:1px solid var(--bd3);color:var(--t3);font-size:9px;cursor:pointer;transition:all .12s;text-align:center}.car-btn:hover,.car-btn.sel{border-color:var(--t3);color:var(--t1);background:var(--bg4)}.freq-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:4px}.freq-item{padding:8px;background:var(--bg3);border:1px solid var(--bd3)}.freq-lbl{font-size:8px;color:var(--t4);letter-spacing:1px;margin-bottom:5px}.freq-ctrl{display:flex;align-items:center;gap:6px}.freq-ctrl button{width:20px;height:20px;background:none;border:1px solid var(--bd3);color:var(--t3);cursor:pointer;font-size:12px;line-height:1;transition:all .12s}.freq-ctrl button:hover{border-color:var(--t3);color:var(--t1)}.freq-val{font-size:13px;color:var(--t1);min-width:28px;text-align:center}.freq-ctrl .freq-input{width:56px;min-width:56px;padding:2px 6px;border:1px solid var(--bd3);border-radius:6px;background:#00000073;color:var(--t1);font-size:13px;text-align:center;outline:none}.freq-ctrl .freq-input:focus{border-color:var(--t3)}.color-row{display:flex;flex-wrap:wrap;gap:5px;margin-top:4px}.csw{width:22px;height:22px;cursor:pointer;border:2px solid transparent;transition:all .12s;border-radius:50%}.csw:hover,.csw.sel{border-color:#fff9}.m-btns{display:flex;gap:6px;margin-top:12px}.m-btn{flex:1;padding:7px;background:transparent;border:1px solid var(--bd3);color:var(--t3);font-size:9px;letter-spacing:1px;cursor:pointer;transition:all .12s;border-radius:10px;box-shadow:0 1px 3px #0003}.m-btn.pri{background:var(--t1);color:var(--bg);border-color:var(--t1);box-shadow:0 2px 8px #00000040}.m-btn:hover{border-color:var(--t3);color:var(--t1);box-shadow:0 2px 6px #0000004d}.m-btn.pri:hover{background:#ddd;box-shadow:0 4px 12px #0000004d}#modal-station-edit{top:12px;left:12px;transform:none;width:320px}#modal-line-edit.panel,#modal-line-delete.panel{display:none;flex-direction:column;position:fixed;top:12px;left:12px;right:auto;width:min(360px,calc(100vw - 24px));max-height:calc(100vh - 96px);background:#252628;border-radius:20px;border:1px solid rgba(255,255,255,.13);box-shadow:0 12px 34px #0000006b,inset 0 1px #ffffff0d;padding:0;overflow:hidden;z-index:2200}#modal-line-edit .line-edit-header,#modal-line-delete .line-edit-header{position:relative;padding:18px 20px 10px;color:#f9fafb;background:#252628}#modal-line-edit .line-edit-title,#modal-line-delete .line-edit-title{font-size:18px;font-weight:700;margin-bottom:4px}#modal-line-edit .line-edit-close,#modal-line-delete .line-edit-close{position:absolute;top:12px;right:16px;background:none;border:none;color:#6b7280;font-size:18px;cursor:pointer;line-height:1}#modal-line-edit .line-edit-close:hover,#modal-line-delete .line-edit-close:hover{color:#fff}#modal-line-edit .line-edit-body,#modal-line-delete .line-edit-body{padding:12px 20px 16px;color:#e5e7eb;font-size:12px;background:#252628}#modal-line-edit .line-edit-body .line-edit-lbl{font-size:11px;color:#9ca3af;margin-bottom:6px;display:block}#modal-line-edit .line-edit-body .line-edit-hint{font-size:10px;color:#6b7280;margin-top:4px}#modal-line-edit .line-edit-body input[type=text]{width:100%;padding:8px 12px;font-size:13px;background:#303133;border:1px solid rgba(255,255,255,.13);border-radius:8px;color:#f9fafb;box-sizing:border-box}#modal-line-edit .line-edit-body input[type=text]::placeholder{color:#6b7280}#modal-line-edit .line-edit-color-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:4px}#modal-line-edit .line-edit-color-swatch{width:28px;height:28px;border-radius:6px;cursor:pointer;border:2px solid transparent;transition:transform .15s,box-shadow .15s}#modal-line-edit .line-edit-color-swatch:hover{transform:scale(1.1);box-shadow:0 0 10px #ffffff4d}#modal-line-edit .line-edit-color-swatch.active{border-color:#fff;box-shadow:0 0 10px #fff6}#modal-line-edit .line-color-palette-toggle{width:28px;height:28px;min-width:28px;border-radius:8px;border:1px solid rgba(255,255,255,.13);background:#303133;color:#d9dde3;display:inline-flex;align-items:center;justify-content:center;padding:0;cursor:pointer;flex-shrink:0;opacity:.9;transition:opacity .15s,border-color .15s,color .15s,background .15s}#modal-line-edit .line-color-palette-toggle:hover{opacity:1;color:#fff;border-color:#ffffff3d;background:#3a3b3e}#modal-line-edit .line-color-palette-toggle svg{display:block}#modal-line-edit .line-edit-color-custom-wrap{margin-top:8px;display:flex;align-items:center;gap:8px}#modal-line-edit .line-edit-color-custom-wrap input[type=color]{width:36px;height:36px;padding:0;border:1px solid rgba(255,255,255,.13);border-radius:8px;cursor:pointer;background:#303133}#modal-line-edit .line-edit-body .line-edit-row{margin-bottom:14px}#modal-line-edit .line-edit-name-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-items:start}#modal-line-edit .line-edit-name-row.line-edit-name-row--sg{grid-template-columns:1fr}#modal-line-edit .line-edit-name-col{min-width:0}#modal-line-edit .line-edit-name-col .line-edit-lbl{margin-bottom:6px}#modal-line-edit .line-edit-name-col input[type=text]{width:100%;padding:8px 10px;font-size:12px;background:#303133;border:1px solid rgba(255,255,255,.13);border-radius:8px;color:#f9fafb;box-sizing:border-box}#modal-line-edit .line-edit-name-col input[type=text]::placeholder{color:#6b7280;font-size:11px}#modal-line-edit .line-edit-body .line-edit-btns{display:flex;gap:8px;margin-top:18px}#modal-line-edit .line-edit-body .line-edit-btn{flex:1;padding:8px 12px;font-size:12px;border-radius:999px;border:1px solid #27272a;background:#303133;color:#d9dde3;cursor:pointer;transition:all .15s}#modal-line-edit .line-edit-body .line-edit-btn:hover{border-color:#444;color:#e5e7eb}#modal-line-edit .line-edit-body .line-edit-btn.pri{background:#f9fafb;color:#000;border-color:#f9fafb}#modal-line-edit .line-edit-body .line-edit-btn.pri:hover{background:#e5e7eb}#modal-line-edit .line-edit-body .line-edit-delete-wrap{margin-top:12px;padding-top:0;border-top:none}#modal-line-edit .line-edit-body .line-edit-btn.danger{width:100%;border-color:#7f1d1d;background:transparent;color:#fca5a5}#modal-line-edit .line-edit-body .line-edit-btn.danger:hover{background:#7f1d1d;color:#fff}#modal-line-edit .line-edit-train-settings{margin-top:4px;padding-top:12px;border-top:1px solid #27272a}#modal-line-edit .line-edit-train-settings .list-row{display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid #222}#modal-line-edit .line-edit-train-settings .list-row.list-row--stack{display:flex;flex-direction:column;align-items:stretch}#modal-line-edit .line-edit-train-settings .list-row .list-row-main{display:flex;align-items:center;justify-content:flex-start;gap:12px}#modal-line-edit .line-edit-train-settings .list-row--stack .list-row-main{display:grid;grid-template-columns:auto 1fr;align-items:center;column-gap:12px}#modal-line-edit .line-edit-train-settings .list-row:last-child{border-bottom:none;padding-bottom:0}#modal-line-edit .line-edit-train-settings .row-label{font-size:12px;color:#888;font-weight:500}#modal-line-edit .line-edit-train-settings .list-row--stack .row-label{flex-shrink:0;white-space:nowrap}#modal-line-edit .line-edit-train-settings .line-row-right{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0}#modal-line-edit .line-edit-train-settings .list-row--stack .line-row-right{margin-left:0;flex:1 1 auto;min-width:0;justify-content:flex-end}#modal-line-edit #line-edit-type-row .list-row-main,#modal-line-edit #line-edit-speed-row-wrap .list-row-main{display:flex;align-items:center;justify-content:flex-start;width:100%;gap:10px;min-width:0}#modal-line-edit #line-edit-type-row .row-label,#modal-line-edit #line-edit-speed-row-wrap .row-label{flex:0 0 auto}#modal-line-edit #line-edit-type-row .line-row-right,#modal-line-edit #line-edit-speed-row-wrap .line-row-right{margin-left:auto;flex:1 1 auto;min-width:0;justify-content:flex-end;position:relative;box-sizing:border-box;padding-right:30px}#modal-line-edit #line-edit-type-capsule-main,#modal-line-edit #line-edit-type-capsule-extra{flex:0 0 auto;width:max-content;max-width:calc(100% - 30px);display:inline-flex;flex-wrap:nowrap}#modal-line-edit #line-edit-type-capsule-main .toggle-item,#modal-line-edit #line-edit-type-capsule-extra .toggle-item{padding:4px 7px;font-size:10px;white-space:nowrap;flex:0 0 auto}#modal-line-edit #line-edit-speed-capsule-main{flex:0 0 auto;display:inline-flex;flex-wrap:nowrap}#modal-line-edit #line-edit-speed-capsule-main .toggle-item{flex:0 0 auto;white-space:nowrap}#modal-line-edit #line-edit-type-row .line-row-right>.line-row-arrow-btn,#modal-line-edit #line-edit-speed-row-wrap .line-row-right>.line-row-arrow-btn,#modal-line-edit #line-edit-type-row .line-row-right>.line-stock-ref-btn{position:absolute;right:0;top:50%;margin-top:-11px}#modal-line-edit #line-edit-speed-capsule-main{flex:0 1 auto;margin-right:0}#modal-line-edit .line-edit-train-settings .toggle-capsule{background:#303133;border-radius:10px;padding:3px;display:inline-flex;gap:2px;box-shadow:inset 0 1px #ffffff0d;flex-wrap:nowrap}#modal-line-edit .line-edit-train-settings .toggle-capsule--speed-extra{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px}#modal-line-edit .line-edit-train-settings .toggle-item{padding:4px 10px;font-size:11px;color:#d6d9df;border-radius:8px;cursor:pointer;transition:all .2s;font-weight:700}#modal-line-edit .line-edit-train-settings .toggle-item:hover{color:#fff;background:#38393b}#modal-line-edit .line-edit-train-settings .toggle-item.active{background:#55575a;color:#fff;box-shadow:inset 0 1px #ffffff14}#modal-line-edit .line-edit-train-settings .line-row-arrow-btn{width:22px;min-width:22px;height:22px;border:none;border-radius:6px;background:#303133;color:#e1e5eb;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0}#modal-line-edit .line-edit-train-settings .line-row-arrow-btn:hover{color:#fff;background:#3a3b3e}#modal-line-edit .line-edit-train-settings .line-row-arrow-btn.is-open svg{transform:rotate(180deg)}#modal-line-edit .line-edit-train-settings .line-row-arrow-btn svg{display:block;transition:transform .15s}#modal-line-edit .line-edit-train-settings .line-stock-ref-btn svg{transform:rotate(-90deg)}#modal-line-edit .line-edit-train-settings .line-extra-panel{display:none;width:100%;box-sizing:border-box;clear:both;margin-top:8px;padding-top:8px}#modal-line-edit .line-edit-train-settings .line-extra-panel.is-open{display:block;text-align:right}#modal-line-edit .line-edit-train-settings .line-extra-panel .toggle-capsule{margin-left:auto;display:inline-flex;margin-right:30px}#modal-line-edit #line-edit-speed-extra-panel.is-open{display:block;text-align:right}#modal-line-edit #line-edit-speed-capsule-extra{display:grid!important;grid-template-columns:repeat(3,1fr)!important;column-gap:8px;row-gap:6px;width:168px!important;max-width:168px!important;margin-left:auto!important;margin-right:30px!important;padding:4px 8px;box-sizing:border-box}#modal-line-edit #line-edit-speed-capsule-extra .toggle-item{min-width:0;text-align:center;padding:3px 4px;font-size:10px}#modal-line.panel.modal-line--stock-overlay{display:flex!important;width:240px!important;max-width:min(240px,calc(100vw - 24px));background:transparent!important;border:none!important;box-shadow:none!important;overflow:visible!important;z-index:2100;pointer-events:none}#modal-line.panel.modal-line--stock-overlay .line-stock-drawer{pointer-events:auto}#modal-line.panel.modal-line--stock-overlay .modal-line-layout{gap:0}#modal-line.panel.modal-line--stock-overlay .modal-line-main,#modal-line.panel.modal-line--stock-overlay .modal-line-close{display:none}#modal-line.panel.modal-line--stock-overlay .line-color-palette-drawer{display:none!important}#modal-line.modal-line--stock-overlay .line-stock-drawer{display:flex;flex-direction:column}#modal-line-delete .line-edit-body .line-edit-msg{font-size:12px;color:#9ca3af;line-height:1.6;margin-bottom:16px}#modal-line-delete .line-edit-body .line-edit-btns{display:flex;gap:8px}#modal-line-delete .line-edit-body .line-edit-btn{flex:1;padding:8px 12px;font-size:12px;border-radius:999px;border:1px solid rgba(255,255,255,.13);background:#303133;color:#d9dde3;cursor:pointer;transition:all .15s}#modal-line-delete .line-edit-body .line-edit-btn.line-delete-confirm{background:#fff;color:#b91c1c;border-color:#fecaca;font-weight:600}#modal-line-delete .line-edit-body .line-edit-btn.line-delete-confirm:hover{background:#fef2f2;border-color:#fca5a5;color:#991b1b}.m-btn.station-delete-confirm{background:#fff!important;color:#b91c1c!important;border:1px solid #fecaca!important;box-shadow:none!important;font-weight:600}.m-btn.station-delete-confirm:hover{background:#fef2f2!important;border-color:#fca5a5!important;color:#991b1b!important}#modal-station-actions.panel.station-actions-side-modal{width:min(280px,calc(100vw - 24px));max-width:280px;background:#000000d1;border:1px solid #333;box-shadow:0 8px 24px #00000073,inset 0 1px #ffffff0a;padding:20px 18px 16px;overflow:hidden}#modal-station-actions .station-actions-scroll{flex:1;min-height:0;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch}#modal-station-actions .line-info-side-close{top:8px;right:8px}#modal-station-actions .line-info-side-title{padding-right:32px}#modal-station-actions .station-actions-intro{margin-bottom:12px}#modal-station-actions .station-actions-line-row{display:flex;flex-direction:column;gap:10px;margin-bottom:14px}#modal-station-actions .station-actions-line-row+.station-actions-line-row{padding-top:14px;border-top:1px solid #27272a}#modal-station-actions .station-actions-line-label{font-size:13px;font-weight:700;color:#f4f4f5;line-height:1.35}#modal-station-actions .station-actions-line-btns{display:flex;gap:10px;align-items:stretch}#modal-station-actions .station-actions-bulk{margin-top:2px;padding-top:14px;border-top:1px solid #27272a;display:flex;flex-direction:column;gap:10px}#modal-station-actions .station-actions-btn{flex:1;min-width:0;padding:6px 12px;border-radius:9px;font-size:11px;font-weight:700;cursor:pointer;border:1px solid #52525b;transition:background .15s ease,border-color .15s ease,color .15s ease,opacity .15s ease;font-family:inherit}#modal-station-actions .station-actions-btn--block{flex:none;width:100%}#modal-station-actions .station-actions-btn--primary{background:#27272a;color:#fff;border-color:#52525b}#modal-station-actions .station-actions-btn--primary:hover{background:#3f3f46;border-color:#71717a}#modal-station-actions .station-actions-btn--danger{background:#7f1d1d33;color:#fecaca;border-color:#7f1d1d}#modal-station-actions .station-actions-btn--danger:hover{background:#991b1b73;border-color:#991b1b;color:#fff}#modal-band-add-choice.panel.station-actions-side-modal.modal-band-add-choice{position:fixed;top:12px;left:12px;right:auto;width:min(360px,calc(100vw - 24px));min-width:min(320px,calc(100vw - 24px));min-height:170px;height:auto;max-width:360px;max-height:calc(100vh - 96px);box-sizing:border-box;border-radius:20px;background:#000000d1;border:1px solid #333;box-shadow:0 8px 24px #00000073,inset 0 1px #ffffff0a;padding:20px 18px 16px;overflow:hidden;color:#e4e4e7;visibility:visible;opacity:1;transform:none;pointer-events:auto;z-index:100000}#modal-band-add-choice .station-actions-scroll{flex:0 0 auto;min-height:auto;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch}#modal-band-add-choice .line-info-side-close{top:8px;right:8px}#modal-band-add-choice .line-info-side-title{font-size:16px;font-weight:700;color:#fff;padding-right:32px;margin-bottom:10px}#modal-band-add-choice .station-actions-intro{margin-bottom:14px;font-size:12px;color:#a1a1aa;line-height:1.6}#modal-band-add-choice .station-actions-line-btns{display:flex;gap:10px;align-items:stretch}#modal-band-add-choice .station-actions-line-btns--stack{flex-direction:column}#modal-band-add-choice .station-actions-btn{flex:1;min-width:0;padding:9px 14px;border-radius:10px;font-size:12px;font-weight:700;cursor:pointer;border:1px solid #52525b;transition:background .15s ease,border-color .15s ease,color .15s ease,opacity .15s ease;font-family:inherit}#modal-band-add-choice .station-actions-btn--block{flex:none;width:100%}#modal-band-add-choice .station-actions-btn--primary{background:#27272a;color:#fff;border-color:#52525b}#modal-band-add-choice .station-actions-btn--primary:hover{background:#3f3f46;border-color:#71717a}.station-transfer-modal{display:none;flex-direction:column;position:fixed;top:12px;left:12px;right:auto;width:320px;max-height:calc(100vh - 96px);background:#000c;border-radius:20px;border:1px solid #222;box-shadow:0 12px 40px #00000080,0 0 0 1px #ffffff0a;padding:0;overflow:hidden}.station-transfer-modal .ph{background:#000c;padding:16px 20px 8px}.station-transfer-modal .pb{padding:12px 20px 16px}.station-transfer-modal .m-btns{display:flex;gap:8px}.station-transfer-modal .m-btn{flex:1}.station-transfer-modal .m-btn.pri,.station-transfer-modal .m-btn.pri:hover{color:#000!important}#panel-station,#panel-line{top:12px;left:12px;right:auto;width:320px;max-height:calc(100vh - 96px)}#panel-station.panel{background:transparent;border:none;box-shadow:none;padding:0}#panel-station.panel-station--band-edit-hidden{display:none!important;visibility:hidden!important;pointer-events:none!important}#panel-train.panel{display:none;flex-direction:column;position:fixed;top:12px;left:12px;right:auto;width:320px;max-height:calc(100vh - 96px);background:#252628;border-radius:20px;border:1px solid rgba(255,255,255,.13);box-shadow:0 12px 34px #0000006b,inset 0 1px #ffffff0d;padding:0;overflow:hidden}#panel-train .train-panel-header{position:relative;padding:18px 20px 10px;color:#f9fafb;background:#252628}#panel-train .train-panel-title{font-size:18px;font-weight:700;margin-bottom:4px}#panel-train .train-panel-close{position:absolute;top:12px;right:16px;background:none;border:none;color:#6b7280;font-size:18px;cursor:pointer;line-height:1}#panel-train .train-panel-close:hover{color:#fff}#panel-train .train-panel-body{padding:12px 20px 16px;color:#e5e7eb;font-size:12px;background:#252628}#panel-train .train-panel-body .ti-row{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px}#panel-train .train-panel-body .ti-l{font-size:11px;color:#9ca3af}#panel-train .train-panel-body .ti-v{font-size:13px;font-weight:600;color:#f9fafb}#panel-train .train-panel-body .sec-lbl{font-size:11px;color:#9ca3af;margin-top:12px;margin-bottom:6px}#panel-train .train-panel-body .pax-bar-bg{height:8px;background:#27272a;border-radius:999px;overflow:hidden}#panel-train .train-panel-body .pax-bar-fill{height:100%;border-radius:999px;background:#f9fafb;transition:width .2s}#panel-train .train-panel-body .train-panel-follow{margin-top:14px}#panel-train .train-panel-body .train-panel-btn{padding:8px 14px;font-size:12px;border-radius:999px;border:1px solid #27272a;background:#303133;color:#d9dde3;cursor:pointer;transition:all .15s;width:100%}#panel-train .train-panel-body .train-panel-btn:hover{border-color:#444;color:#e5e7eb}#panel-train .train-panel-body .train-panel-btn.pri{background:#f9fafb;color:#000;border-color:#f9fafb}#panel-train .train-panel-body .train-panel-btn.pri:hover{background:#e5e7eb}#panel-train .train-panel-body .train-panel-btn.danger{border-color:#8b3333;color:#c66}#panel-train .train-panel-body .train-panel-btn.danger:hover{background:#8b333333;border-color:#a33;color:#e88}#panel-train .train-panel-body .train-panel-follow .train-panel-btn{margin-top:8px}#panel-train .train-panel-body .train-panel-follow .train-panel-btn:first-child{margin-top:0}body.transport-mode-hsr #panel-line-info{display:none!important}#panel-ridership.panel{display:none;flex-direction:column;width:320px;top:12px;left:12px;right:auto;background:#252628;height:auto;max-height:calc(100vh - 96px);padding:0;overflow:hidden;border-radius:20px;border:1px solid rgba(255,255,255,.13);box-shadow:0 12px 34px #0000006b,inset 0 1px #ffffff0d}#panel-ridership.panel.ridership-panel--hsr-services,#panel-ridership.panel.ridership-panel--hsr-stations,#panel-ridership.panel.ridership-panel--hsr-routes,#panel-ridership.panel.ridership-panel--hsr-real{width:320px;border-radius:10px;--ridership-hsr-inline-pad:24px}#panel-ridership.panel.ridership-panel--control-center{width:384px;border-radius:10px}#panel-ridership .ridership-close{position:absolute;top:12px;right:12px;z-index:30;background:none;border:none;color:#71717a;font-size:20px;cursor:pointer;line-height:1}#panel-ridership .ridership-close:hover{color:#fff}#panel-ridership .ridership-header{flex:none;padding:24px;background:#252628;z-index:20}#panel-ridership .ridership-tabs{display:flex;align-items:baseline;gap:16px;margin-bottom:8px}#panel-ridership .ridership-tab{position:relative;background:transparent!important;border:none;padding:0;cursor:pointer;font-family:system-ui,sans-serif;font-size:2.25rem;font-weight:900;letter-spacing:-.05em;transition:color .3s;color:#d9dde3;box-shadow:none!important}#panel-ridership .ridership-tab:hover,#panel-ridership .ridership-tab.active{color:#fff}#panel-ridership .ridership-tab.active:after{content:"";position:absolute;bottom:-8px;left:0;right:0;height:4px;background:#fff}body.transport-mode-hsr #panel-ridership .ridership-tabs{gap:14px}body.transport-mode-hsr #panel-ridership .ridership-tab{font-size:1.72rem}#panel-ridership.ridership-panel--control-center .ridership-header{padding:22px 20px 14px}#panel-ridership.ridership-panel--control-center .ridership-tabs{margin-bottom:14px}#panel-ridership.ridership-panel--control-center .ridership-tab{font-size:2rem;letter-spacing:0}#panel-ridership .control-center-controls{display:flex;align-items:center;gap:8px}#panel-ridership .control-center-select,#panel-ridership .control-center-filter-btn,#panel-ridership .control-center-filter-panel select,#panel-ridership .control-center-filter-panel input{height:32px;border-radius:7px;border:1px solid rgba(255,255,255,.14);background:#1d1f22;color:#eef2f7;font-size:12px;outline:none}#panel-ridership .control-center-select{flex:1;min-width:0;padding:0 10px}#panel-ridership .control-center-filter-btn{flex:0 0 auto;padding:0 11px;cursor:pointer}#panel-ridership .control-center-filter-btn:hover{border-color:#ffffff52;color:#fff}#panel-ridership .control-center-filter-panel{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px;padding:10px;border-radius:8px;background:#0a0c1052;border:1px solid rgba(255,255,255,.08)}#panel-ridership .control-center-filter-panel label{display:flex;flex-direction:column;gap:4px;min-width:0}#panel-ridership .control-center-filter-panel span{font-size:10px;color:#e2e8f08c}#panel-ridership .control-center-filter-panel select,#panel-ridership .control-center-filter-panel input{width:100%;padding:0 8px}#panel-ridership .control-center-summary{padding:0 20px 10px;color:#e2e8f094;font-size:11px;display:flex;justify-content:space-between;gap:16px}#panel-ridership .control-center-empty{padding:22px 20px;color:#e2e8f094;font-size:13px}#panel-ridership .ridership-item.control-center-item{height:64px;cursor:default;padding-left:20px;padding-right:20px}#panel-ridership .ridership-item.control-center-item.control-center-item--clickable{cursor:pointer}#panel-ridership .ridership-item.control-center-item.hovered{height:64px}#panel-ridership .ridership-item.control-center-item .ridership-item-name{max-width:260px}#panel-ridership .ridership-item.control-center-item .ridership-item-sub{color:#e2e8f07a;height:auto;opacity:1;text-transform:none;letter-spacing:0}#panel-ridership .ridership-item.control-center-item.hovered .ridership-item-sub{color:#e2e8f07a}#panel-ridership .ridership-item.control-center-item .ridership-item-body{justify-content:flex-start;gap:12px}#panel-ridership .ridership-item.control-center-item .ridership-item-rank{flex:0 0 34px;color:#e2e8f0b8;font-family:monospace;font-size:14px;font-weight:800;line-height:1;text-align:left}#panel-ridership .ridership-item.control-center-item .ridership-item-left{flex:1 1 auto;min-width:0;align-items:flex-start}#panel-ridership .ridership-item.control-center-item .ridership-item-top,#panel-ridership .ridership-item.control-center-item .ridership-item-sub{width:100%;margin-left:0}#panel-ridership .ridership-item.control-center-item .ridership-item-right{flex:0 0 104px}#panel-ridership .control-center-badge{display:inline-flex;align-items:center;height:16px;padding:0 5px;border-radius:4px;background:#ffffff14;color:#e2e8f0b8;font-size:9px;font-weight:700}#panel-ridership .ridership-item.hovered .control-center-badge{background:#ffffff14;color:#e2e8f0b8}#panel-ridership .ridership-scroll{flex:1;overflow-y:auto;padding-bottom:48px;width:100%;background:#252628;scroll-padding-top:40px}#panel-ridership .ridership-scroll::-webkit-scrollbar{width:0;background:transparent}#panel-ridership .ridership-item{position:relative;width:100%;cursor:pointer;transition:all .3s ease-out;display:flex;align-items:center;height:52px;opacity:1;transform:scale(1);padding-left:24px;padding-right:24px;z-index:1;background:#252628}#panel-ridership .ridership-list.has-hover .ridership-item:not(.hovered){opacity:.2}#panel-ridership .ridership-list.has-hover .ridership-item.control-center-item:not(.hovered){opacity:1}#panel-ridership .ridership-item.hovered{height:96px;transform:scale(1.02);z-index:10}#panel-ridership .ridership-item.control-center-item.hovered{transform:none;z-index:1}#panel-ridership .ridership-item-bar{position:absolute;left:0;top:0;bottom:0;z-index:0;width:4px;background:#252628;transition:width .5s cubic-bezier(.16,1,.3,1),background-color .5s}#panel-ridership .ridership-item.hovered .ridership-item-bar{width:100%;background:var(--item-color)}#panel-ridership .ridership-item.control-center-item.hovered .ridership-item-bar{width:4px;background:#252628}#panel-ridership .ridership-item-body{position:relative;z-index:10;width:100%;display:flex;justify-content:space-between;align-items:center}#panel-ridership .ridership-item-left{display:flex;flex-direction:column;justify-content:center}#panel-ridership .ridership-item-top{display:flex;align-items:center;gap:8px;overflow:hidden}#panel-ridership .ridership-item-index{font-family:monospace;font-weight:700;font-size:12px;color:#444;width:0;opacity:0;overflow:hidden;transition:all .3s}#panel-ridership .ridership-item.hovered .ridership-item-index{width:auto;opacity:1;color:#00000080;transform:translate(0)}#panel-ridership .ridership-item-name{font-weight:700;font-size:15px;line-height:1;color:#eee;letter-spacing:0;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:all .3s;display:inline-flex;align-items:center;flex-wrap:nowrap}#panel-ridership .ridership-item.hovered .ridership-item-name{font-size:28px;color:#000;letter-spacing:-1px}#panel-ridership .ridership-item.control-center-item.hovered .ridership-item-name{font-size:15px;color:#eee;letter-spacing:0}#panel-ridership .ridership-item-sub{font-size:10px;font-weight:500;letter-spacing:.05em;text-transform:uppercase;margin-top:4px;color:transparent;height:0;opacity:0;overflow:hidden;transition:all .3s}#panel-ridership .ridership-item.hovered .ridership-item-sub{color:#0009;height:auto;opacity:1}#panel-ridership .ridership-item.control-center-item.hovered .ridership-item-sub{color:#e2e8f07a;height:auto;opacity:1}#panel-ridership .ridership-item-right{display:flex;flex-direction:column;align-items:flex-end;justify-content:center}#panel-ridership .ridership-item-row2{display:flex;align-items:center;gap:8px}#panel-ridership .ridership-item-arrow{width:28px;height:28px;opacity:0;transform:rotate(0) scale(0);transition:all .3s}#panel-ridership .ridership-item.hovered .ridership-item-arrow{opacity:1;transform:rotate(45deg)}#panel-ridership .ridership-item-arrow svg{width:100%;height:100%;stroke:#000}#panel-ridership .ridership-item-num{font-weight:700;font-size:15px;color:#666;font-family:Impact,sans-serif;letter-spacing:.5px;font-variant-numeric:tabular-nums;transition:all .3s}#panel-ridership .ridership-item.hovered .ridership-item-num{font-size:36px;color:#000}#panel-ridership .ridership-item.control-center-item.hovered .ridership-item-num{font-size:15px;color:#666}#panel-ridership .ridership-item-prog{height:2px;background:#ffffff14;margin-top:8px;border-radius:999px;width:80px;overflow:hidden;transition:all .3s;box-sizing:border-box}#panel-ridership .ridership-item.hovered .ridership-item-prog{opacity:0;transform:translate(20px)}#panel-ridership .ridership-item.control-center-item.hovered .ridership-item-prog{opacity:1;transform:none}#panel-ridership .ridership-item-prog-inner{display:block;height:100%;width:100%;border-radius:0;box-sizing:border-box}#panel-ridership .ridership-item-prog-fill{display:block;height:100%;min-height:2px;flex:0 0 auto;border-radius:0;box-sizing:border-box;margin:0;padding:0}#panel-ridership .station-line-chips-wrap{display:inline-flex;align-items:center;justify-content:center;height:14px;gap:4px;flex-shrink:0;margin-left:4px;vertical-align:middle}#panel-ridership .station-line-chip{display:inline-flex;align-items:center;justify-content:center;height:14px;flex-shrink:0;font-size:9px;font-weight:800;color:#000!important;border-radius:3px;box-sizing:border-box;line-height:1;white-space:nowrap;padding:0;background:var(--line-chip-color,#8a8f98);background-color:var(--line-chip-color,#8a8f98)!important;text-shadow:none!important;box-shadow:none!important}#panel-ridership .station-line-chip-num{width:14px}#panel-ridership .station-line-chip-text{width:auto;min-width:14px;padding:0 5px}#panel-ridership .ridership-item.hovered .station-line-chip{display:none!important}#panel-ridership .ridership-foot{height:96px;display:flex;align-items:center;justify-content:center;gap:4px;background:#252628}#panel-ridership .ridership-foot span{width:4px;height:4px;background:#ffffff14;border-radius:50%}#panel-ridership .ridership-24h-foot{position:absolute;bottom:12px;right:16px;z-index:25;font-size:11px;color:#d9dde3;display:none;flex-direction:row;align-items:center;gap:4px}#panel-ridership .ridership-24h-foot.visible{display:flex}#panel-ridership .ridership-24h-foot .ridership-24h-value{color:#f1f3f5;font-variant-numeric:tabular-nums}#panel-ridership .ridership-hsr-search-wrap{margin-top:18px;position:relative}#panel-ridership .ridership-hsr-search-row{display:grid;grid-template-columns:minmax(0,1fr) 34px;gap:8px;align-items:center}#panel-ridership .ridership-hsr-search{width:100%;height:34px;border:1px solid rgba(255,255,255,.16);border-radius:6px;background:#ffffff14;color:#f8fafc;font-size:13px;outline:none;padding:0 11px;letter-spacing:0}#panel-ridership .ridership-hsr-search::placeholder{color:#e2e8f06b}#panel-ridership .ridership-hsr-search:focus{border-color:#facc158c;background:#ffffff1c}#panel-ridership .ridership-hsr-filter-btn{width:34px;height:34px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.16);border-radius:6px;background:#ffffff14;color:#f8fafc;cursor:pointer}#panel-ridership .ridership-hsr-filter-btn:hover,#panel-ridership .ridership-hsr-filter-btn.is-active{border-color:#facc158c;background:#facc1524;color:#fde68a}#panel-ridership .ridership-hsr-filter-panel{margin-top:10px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:10px;border:1px solid rgba(255,255,255,.13);border-radius:8px;background:#101216b8;box-shadow:0 10px 28px #00000040}#panel-ridership .ridership-hsr-filter-panel label{display:flex;flex-direction:column;gap:4px;min-width:0}#panel-ridership .ridership-hsr-filter-panel label span{color:#9ca3af;font-size:10px;font-weight:700}#panel-ridership .ridership-hsr-filter-panel select,#panel-ridership .ridership-hsr-filter-panel input{width:100%;height:28px;min-width:0;border:1px solid rgba(255,255,255,.14);border-radius:6px;background:#ffffff14;color:#f8fafc;font-size:11px;outline:none;padding:0 8px}#panel-ridership .ridership-hsr-filter-panel select:focus,#panel-ridership .ridership-hsr-filter-panel input:focus{border-color:#facc158c;background:#ffffff1c}#panel-ridership .ridership-hsr-filter-panel select option{background:#202124;color:#f8fafc}#panel-ridership .ridership-hsr-filter-panel [data-hsr-filter-station],#panel-ridership .ridership-hsr-filter-panel [data-hsr-filter-route],#panel-ridership .ridership-hsr-filter-panel [data-hsr-filter-realworld],#panel-ridership .ridership-hsr-filter-panel.is-realworld [data-hsr-filter-status]{display:none}#panel-ridership .ridership-hsr-filter-panel.is-realworld [data-hsr-filter-realworld]{display:flex}#panel-ridership .ridership-hsr-filter-panel.is-station [data-hsr-filter-train]{display:none}#panel-ridership .ridership-hsr-filter-panel.is-station [data-hsr-filter-station]{display:flex}#panel-ridership .ridership-hsr-filter-panel.is-route [data-hsr-filter-train],#panel-ridership .ridership-hsr-filter-panel.is-route [data-hsr-filter-station]{display:none}#panel-ridership .ridership-hsr-filter-panel.is-route [data-hsr-filter-route]{display:flex}#panel-ridership .ridership-hsr-range-filter{grid-column:1 / -1;flex-direction:column;gap:6px;min-width:0}#panel-ridership .ridership-hsr-range-head{display:flex;justify-content:space-between;gap:10px;align-items:baseline;color:#9ca3af;font-size:10px;font-weight:700}#panel-ridership .ridership-hsr-range-head strong{color:#fde68a;font-size:10px;font-weight:800}#panel-ridership .ridership-hsr-range-hist{display:flex;align-items:end;gap:2px;height:34px;padding:0 2px}#panel-ridership .ridership-hsr-range-bar{flex:1 1 0;min-width:0;height:4px;border-radius:2px 2px 0 0;background:#ffffff29}#panel-ridership .ridership-hsr-range-bar.is-active{background:#fde68a}#panel-ridership .ridership-hsr-range-track{position:relative;height:28px}#panel-ridership .ridership-hsr-range-track input[type=range]{position:absolute;left:0;top:4px;width:100%;height:20px;padding:0;border:0;background:transparent;pointer-events:none;appearance:none;-webkit-appearance:none}#panel-ridership .ridership-hsr-range-track input[type=range]::-webkit-slider-runnable-track{height:4px;border-radius:999px;background:#ffffff29}#panel-ridership .ridership-hsr-range-track input[type=range]::-webkit-slider-thumb{width:14px;height:14px;margin-top:-5px;border:2px solid #252628;border-radius:50%;background:#fde68a;pointer-events:auto;appearance:none;-webkit-appearance:none;cursor:pointer}#panel-ridership .ridership-hsr-range-track input[type=range]::-moz-range-track{height:4px;border-radius:999px;background:#ffffff29}#panel-ridership .ridership-hsr-range-track input[type=range]::-moz-range-thumb{width:14px;height:14px;border:2px solid #252628;border-radius:50%;background:#fde68a;pointer-events:auto;cursor:pointer}#panel-ridership .ridership-hsr-real-search{display:grid;grid-template-columns:minmax(0,1fr) 32px minmax(0,1fr) 34px;gap:8px;align-items:end}#panel-ridership .ridership-hsr-real-filter-btn{align-self:end;height:36px}#panel-ridership .ridership-hsr-real-field{position:relative;min-width:0}#panel-ridership .ridership-hsr-real-input{width:100%;height:36px;min-width:0;border:1px solid rgba(255,255,255,.18);border-radius:12px;background:#303133;color:#f8fafc;font-size:13px;font-weight:500;outline:none;padding:0 12px;letter-spacing:0}#panel-ridership .ridership-hsr-real-input::placeholder{color:#e2e8f06b}#panel-ridership .ridership-hsr-real-input:focus{border-color:#facc15d1;background:#303133}#panel-ridership .ridership-hsr-real-arrow{align-self:end;width:32px;height:36px;border:none;border-radius:0;background:transparent!important;color:#f8fafc;cursor:pointer;display:flex;align-items:center;justify-content:center}#panel-ridership .ridership-hsr-real-arrow:hover{color:#fff;background:transparent!important}#panel-ridership .ridership-hsr-real-arrow svg{width:16px;height:16px;display:block}#panel-ridership .ridership-hsr-real-suggest{display:none;position:absolute;left:0;right:0;top:38px;z-index:40;max-height:168px;overflow-y:auto;border:1px solid rgba(255,255,255,.16);border-radius:6px;background:#070709f7;box-shadow:0 12px 28px #00000061}#panel-ridership .ridership-hsr-real-suggest.is-open{display:block}#panel-ridership .ridership-hsr-real-suggest button{width:100%;min-height:32px;border:none;border-bottom:1px solid rgba(255,255,255,.08);background:transparent;color:#f8fafc;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 10px;font-size:12px;text-align:left;cursor:pointer}#panel-ridership .ridership-hsr-real-suggest button:hover{background:#facc151a}#panel-ridership .ridership-hsr-real-suggest span:last-child{color:#71717a;font-size:10px;white-space:nowrap}#panel-ridership .ridership-hsr-table-wrap{padding:0 var(--ridership-hsr-inline-pad,24px) 28px;overflow:visible}#panel-ridership.ridership-panel--hsr-services .ridership-foot,#panel-ridership.ridership-panel--hsr-stations .ridership-foot,#panel-ridership.ridership-panel--hsr-routes .ridership-foot,#panel-ridership.ridership-panel--hsr-real .ridership-foot{display:none}#panel-ridership .ridership-hsr-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;color:#f8fafc;font-size:12px;font-variant-numeric:tabular-nums}#panel-ridership .ridership-hsr-table th{position:sticky;top:0;z-index:12;background:#252628;background-color:#252628;color:#fde68a;font-size:11px;font-weight:700;text-align:left;padding:9px 4px;border-bottom:1px solid rgba(253,230,138,.38);box-shadow:0 -12px #252628,0 1px #fde68a29;cursor:pointer;white-space:nowrap}#panel-ridership .ridership-hsr-table th.is-sort-active{color:#fff2b8}#panel-ridership .ridership-hsr-table th:nth-child(1){width:50px}#panel-ridership .ridership-hsr-table th:nth-child(2){width:62px}#panel-ridership .ridership-hsr-table th:nth-child(3){width:62px}#panel-ridership .ridership-hsr-table th:nth-child(4){width:48px;text-align:left}#panel-ridership .ridership-hsr-table th:nth-child(5){width:48px;text-align:right}#panel-ridership .ridership-hsr-service-table th:nth-child(1){width:58px}#panel-ridership .ridership-hsr-service-table th:nth-child(2){width:86px}#panel-ridership .ridership-hsr-service-table th:nth-child(3){width:86px}#panel-ridership .ridership-hsr-service-table th:nth-child(4){width:52px;text-align:left}#panel-ridership .ridership-hsr-service-table td:nth-child(4){text-align:left;white-space:nowrap}#panel-ridership .ridership-hsr-table td{padding:10px 4px;border-bottom:1px solid rgba(255,255,255,.11);vertical-align:middle}#panel-ridership .ridership-hsr-row{cursor:pointer;color:#f8fafc;background:transparent!important;background-color:transparent!important}#panel-ridership .ridership-hsr-row.is-alt{color:#f8e7a1}#panel-ridership .ridership-hsr-row:hover,#panel-ridership .ridership-hsr-row.is-expanded{background:#facc1514}#panel-ridership .ridership-hsr-row.is-selected{color:#fff2b8;background:#facc1524!important}#panel-ridership .ridership-hsr-row.is-selected td{border-bottom-color:#facc1547}#panel-ridership .ridership-hsr-trainno{font-weight:800;letter-spacing:0}#panel-ridership .ridership-hsr-route{display:flex;flex-direction:column;gap:3px;min-width:0}#panel-ridership .ridership-hsr-route span,#panel-ridership .ridership-hsr-station-cell{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#panel-ridership .ridership-hsr-status{display:inline-block;color:inherit;white-space:nowrap}#panel-ridership .ridership-hsr-status.is-late{color:#f87171}#panel-ridership .ridership-hsr-table td:nth-child(3){text-align:left;white-space:nowrap}#panel-ridership .ridership-hsr-table td:nth-child(4){text-align:left;white-space:nowrap}#panel-ridership .ridership-hsr-table td:nth-child(5){text-align:right;white-space:nowrap}#panel-ridership .ridership-hsr-route-table th:nth-child(1){width:64px}#panel-ridership .ridership-hsr-route-table th:nth-child(2){width:64px}#panel-ridership .ridership-hsr-route-table th:nth-child(3){width:42px;text-align:right}#panel-ridership .ridership-hsr-route-table th:nth-child(4){width:56px;text-align:right}#panel-ridership .ridership-hsr-route-table th:nth-child(5){width:48px;text-align:right}#panel-ridership .ridership-hsr-route-table td:nth-child(1),#panel-ridership .ridership-hsr-route-table td:nth-child(2){text-align:left}#panel-ridership .ridership-hsr-route-table td:nth-child(3),#panel-ridership .ridership-hsr-route-table td:nth-child(4),#panel-ridership .ridership-hsr-route-table td:nth-child(5){text-align:right;white-space:nowrap}#panel-ridership .ridership-hsr-real-summary{padding:0 var(--ridership-hsr-inline-pad,24px) 10px;color:#a1a1aa;font-size:11px;line-height:1.5;display:flex;align-items:center;gap:4px;position:relative}#panel-ridership .ridership-hsr-real-note{color:#71717a;display:block;margin-bottom:3px}#panel-ridership .ridership-hsr-real-summary strong{color:#fff;font-weight:800}#panel-ridership .ridership-hsr-real-info{position:relative;display:inline-flex;align-items:center;justify-content:center;width:13px;height:13px;margin-left:3px;padding:0;appearance:none;background:transparent;border:1px solid rgba(255,255,255,.35);border-radius:50%;color:#d4d4d8;font-size:9px;font-weight:800;line-height:1;cursor:help;outline:none}#panel-ridership .ridership-hsr-real-info:hover,#panel-ridership .ridership-hsr-real-info:focus-visible,#panel-ridership .ridership-hsr-real-info.is-open{background:#ffffff1f;color:#fff}#panel-ridership .ridership-hsr-real-tooltip{position:absolute;left:calc(var(--ridership-hsr-inline-pad,24px) + 86px);top:20px;width:202px;padding:7px 9px;border:1px solid rgba(255,255,255,.12);border-radius:6px;background:#070709f5;color:#e5e7eb;font-size:10px;font-weight:600;line-height:1.45;text-align:left;white-space:normal;box-shadow:0 10px 24px #00000059;transform:translateY(-3px);opacity:0;pointer-events:none;transition:opacity .12s ease,transform .12s ease;z-index:80}#panel-ridership .ridership-hsr-real-info:hover+.ridership-hsr-real-tooltip,#panel-ridership .ridership-hsr-real-info:focus-visible+.ridership-hsr-real-tooltip,#panel-ridership .ridership-hsr-real-info.is-open+.ridership-hsr-real-tooltip{opacity:1;transform:translateY(0)}.ridership-hsr-real-actions{position:fixed;z-index:2355;width:230px;padding:14px;border:1px solid rgba(255,255,255,.14);border-radius:24px;background:#212224fa;color:#f8fafc;box-shadow:0 18px 48px #00000052}.ridership-hsr-real-actions-title{font-size:18px;font-weight:900;line-height:1.2;margin-bottom:8px}.ridership-hsr-real-actions-count{color:#a1a1aa;font-size:12px;font-weight:700;margin-bottom:12px}.ridership-hsr-real-actions-count strong{color:#fef3c7;font-size:16px}.ridership-hsr-real-actions button{width:100%;min-height:42px;padding:9px 11px;border:1px solid rgba(250,204,21,.45);border-radius:14px;background:#facc151f;color:#fff7c2;font-size:12px;font-weight:800;line-height:1.25;text-align:center;white-space:nowrap;cursor:pointer}.ridership-hsr-real-actions button:hover{background:#facc1533}#panel-ridership .ridership-hsr-real-filters{padding:0 var(--ridership-hsr-inline-pad,24px) 12px;display:flex;flex-direction:column;gap:8px}#panel-ridership .ridership-hsr-real-filter-block{min-width:0}#panel-ridership .ridership-hsr-real-filter-title{color:#a1a1aa;font-size:11px;font-weight:700;margin-bottom:5px}#panel-ridership .ridership-hsr-real-filter-options{display:flex;flex-wrap:wrap;gap:6px}#panel-ridership .ridership-hsr-real-check{display:inline-flex;align-items:center;gap:4px;max-width:100%;min-height:24px;padding:0 7px;border:1px solid rgba(255,255,255,.13);border-radius:999px;background:#ffffff0f;color:#d4d4d8;font-size:11px;cursor:pointer}#panel-ridership .ridership-hsr-real-check:hover{border-color:#facc1566}#panel-ridership .ridership-hsr-real-check input{width:12px;height:12px;margin:0;accent-color:#facc15}#panel-ridership .ridership-hsr-real-check span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#panel-ridership .ridership-hsr-real-table th:nth-child(1){width:54px}#panel-ridership .ridership-hsr-real-table th:nth-child(2){width:70px}#panel-ridership .ridership-hsr-real-table th:nth-child(3){width:70px}#panel-ridership .ridership-hsr-real-table th:nth-child(4){width:44px;text-align:right}#panel-ridership .ridership-hsr-real-table th:nth-child(5){width:52px;text-align:right}#panel-ridership .ridership-hsr-real-table{table-layout:auto}#panel-ridership .ridership-hsr-real-table th:nth-child(1),#panel-ridership .ridership-hsr-real-table th:nth-child(2),#panel-ridership .ridership-hsr-real-table th:nth-child(3),#panel-ridership .ridership-hsr-real-table th:nth-child(4),#panel-ridership .ridership-hsr-real-table th:nth-child(5),#panel-ridership .ridership-hsr-real-table td:nth-child(1),#panel-ridership .ridership-hsr-real-table td:nth-child(2),#panel-ridership .ridership-hsr-real-table td:nth-child(3),#panel-ridership .ridership-hsr-real-table td:nth-child(4),#panel-ridership .ridership-hsr-real-table td:nth-child(5){width:unset}#panel-ridership .ridership-hsr-real-table th:nth-child(1),#panel-ridership .ridership-hsr-real-table td:nth-child(1){width:18%}#panel-ridership .ridership-hsr-real-table th:nth-child(2),#panel-ridership .ridership-hsr-real-table td:nth-child(2){width:29%}#panel-ridership .ridership-hsr-real-table th:nth-child(3),#panel-ridership .ridership-hsr-real-table td:nth-child(3){width:29%}#panel-ridership .ridership-hsr-real-table th:nth-child(4),#panel-ridership .ridership-hsr-real-table td:nth-child(4){width:17%}#panel-ridership .ridership-hsr-real-table th:nth-child(5),#panel-ridership .ridership-hsr-real-table td:nth-child(5){width:15%}#panel-ridership .ridership-hsr-real-table td:nth-child(4),#panel-ridership .ridership-hsr-real-table td:nth-child(5){text-align:right;white-space:nowrap}#panel-ridership .ridership-hsr-real-table td:nth-child(5){padding-right:10px}#panel-ridership .ridership-hsr-real-table th.is-sort-active{color:#fff2b8}#panel-ridership .ridership-hsr-real-table .ridership-hsr-row{color:#f8fafc}#panel-ridership .ridership-hsr-real-table .ridership-hsr-row.is-alt{color:#f8e7a1}#panel-ridership .ridership-hsr-real-more{padding:0 var(--ridership-hsr-inline-pad,24px) 28px}#panel-ridership .ridership-hsr-real-more button{width:100%;height:34px;border:1px solid rgba(255,255,255,.16);border-radius:6px;background:#ffffff14;color:#e5e7eb;font-size:12px;font-weight:700;cursor:pointer}#panel-ridership .ridership-hsr-real-more button:hover{border-color:#facc1570;background:#facc151a}#panel-ridership .ridership-hsr-real-meta{padding:8px 8px 0;color:#d4d4d8;font-size:11px;line-height:1.7}#panel-ridership .ridership-hsr-real-meta-row{display:grid;grid-template-columns:64px minmax(0,1fr);gap:8px;border-bottom:1px solid rgba(255,255,255,.08);padding:5px 0}#panel-ridership .ridership-hsr-real-meta-label{color:#a1a1aa}#panel-ridership .ridership-hsr-expand-row td{padding:0 0 12px;background:transparent}#panel-ridership .ridership-hsr-stops{padding:8px 8px 0;overflow:visible}#panel-ridership .ridership-hsr-stops table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;font-size:11px;color:#d4d4d8}#panel-ridership .ridership-hsr-stops th:nth-child(1),#panel-ridership .ridership-hsr-stops td:nth-child(1){width:42%}#panel-ridership .ridership-hsr-stops th:nth-child(2),#panel-ridership .ridership-hsr-stops td:nth-child(2){width:20%}#panel-ridership .ridership-hsr-stops th:nth-child(3),#panel-ridership .ridership-hsr-stops td:nth-child(3){width:20%}#panel-ridership .ridership-hsr-stops th:nth-child(4),#panel-ridership .ridership-hsr-stops td:nth-child(4){width:18%;text-align:right}#panel-ridership .ridership-hsr-stops th,#panel-ridership .ridership-hsr-stops td{padding:6px 5px;border-bottom:1px solid rgba(255,255,255,.08);text-align:left}#panel-ridership .ridership-hsr-stops th{color:#fde68a;font-weight:700;background:#252628;background-color:#252628;position:sticky;top:0;z-index:4;box-shadow:0 -8px #252628,0 1px #fde68a1f;cursor:default}#panel-ridership .ridership-hsr-stops-empty,#panel-ridership .ridership-hsr-empty{color:#71717a;text-align:center;padding:28px 8px}#panel-ridership .ridership-hsr-station-table-wrap{padding:0 var(--ridership-hsr-inline-pad,24px) 28px}#panel-ridership .ridership-hsr-station-head{display:grid;grid-template-columns:minmax(0,1fr) 104px;align-items:center;gap:8px;position:sticky;top:0;z-index:12;background:#252628!important;background-color:#252628!important;border-bottom:1px solid rgba(255,255,255,.18);padding:9px 0;box-shadow:0 -12px #252628,0 1px #fde68a1f}#panel-ridership .ridership-hsr-station-head button,#panel-ridership .ridership-hsr-station-head-name{border:none;background:transparent!important;background-color:transparent!important;color:#a1a1aa;padding:0;font-size:11px;font-weight:700;letter-spacing:0}#panel-ridership .ridership-hsr-station-head-name{text-align:left;cursor:default}#panel-ridership .ridership-hsr-station-metric{display:inline-flex;align-items:center;justify-content:flex-end;gap:5px;text-align:right;cursor:pointer}#panel-ridership .ridership-hsr-station-sort{display:inline-flex;align-items:center;justify-content:center;min-width:12px;color:#e5e7eb;font-size:12px;line-height:1}#panel-ridership .ridership-hsr-station-list{display:flex;flex-direction:column}#panel-ridership .ridership-hsr-station-row{display:grid;grid-template-columns:minmax(0,1fr) 104px;gap:8px;align-items:center;min-height:40px;border-bottom:1px solid rgba(255,255,255,.11);color:#f8fafc;cursor:pointer;background:transparent!important;background-color:transparent!important}#panel-ridership .ridership-hsr-station-row.is-alt{color:#fde68a}#panel-ridership .ridership-hsr-station-row:hover,#panel-ridership .ridership-hsr-station-row.hovered{background:#facc1514}#panel-ridership .ridership-hsr-station-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:800}#panel-ridership .ridership-hsr-station-value{text-align:right;font-size:13px;font-weight:800;font-variant-numeric:tabular-nums;white-space:nowrap}#panel-flow-dashboard.panel.flow-dashboard-metrics-layout{--flow-dashboard-chord-bg:#f9fafb;--flow-dashboard-page-bg:#f9fafb;--flow-dashboard-button-bg:#f3f4f6;--flow-dashboard-button-active-bg:#111827;position:fixed;inset:0;width:100%;height:100vh;min-height:100vh;padding:0;background:#f9fafb!important;color:#111827!important;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;z-index:9500;display:none;will-change:transform,opacity}#panel-flow-dashboard .flow-dashboard-top-actions{position:fixed;top:24px;right:32px;z-index:12;display:flex;align-items:center;gap:12px}#panel-flow-dashboard .flow-dashboard-theme-toggle{display:inline-flex;align-items:center;padding:3px;border-radius:999px;border:1px solid #111827;background:#f3f4f6!important;gap:2px}#panel-flow-dashboard .flow-dashboard-theme-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:28px;padding:0;border:none;border-radius:999px;background:transparent!important;color:#6b7280!important;cursor:pointer;transition:background .18s ease,color .18s ease,box-shadow .18s ease}#panel-flow-dashboard .flow-dashboard-theme-btn:hover{color:#111827}#panel-flow-dashboard .flow-dashboard-theme-btn.active{background:#111827!important;color:#f8fafc!important;box-shadow:0 1px 3px #0f172a29}#panel-flow-dashboard .flow-dashboard-close{padding:10px 4px;background:none!important;border:none;outline:none;font-size:.8rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:#6b7280;cursor:pointer}#panel-flow-dashboard .flow-dashboard-close:hover{color:#111827!important}#panel-flow-dashboard .flow-dashboard-shell{position:relative;z-index:1;min-height:100vh}#panel-flow-dashboard .flow-dashboard-inner{position:relative;z-index:1;margin:28px 80px 0;padding:0;max-width:none;width:auto}#panel-flow-dashboard .flow-dashboard-title{margin:0 0 .5rem;margin-right:-.34em;font-weight:900;font-size:clamp(2rem,3vw,3.2rem);letter-spacing:.34em;text-transform:uppercase;color:#111827!important}#panel-flow-dashboard .flow-dashboard-filters{display:grid;grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:8px;margin-top:1rem;margin-bottom:1.75rem;width:100%}#panel-flow-dashboard .flow-dashboard-filter-btn{border:1px solid #111827;border-radius:6px;padding:8px 14px;background:#fff!important;color:#111827!important;box-shadow:none!important;cursor:pointer;font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;transition:background .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease}#panel-flow-dashboard .flow-dashboard-filter-btn:hover{background:#fff!important;color:#111827!important;border-color:#111827!important}#panel-flow-dashboard .flow-dashboard-filter-btn.active{color:#111827!important;background:#fff!important;border-color:#111827!important}#panel-flow-dashboard .flow-dashboard-scroll{position:relative;z-index:1;margin:.5rem 80px 0;padding:0 0 2.5rem;max-width:none;width:auto;display:flex;flex-direction:column;align-items:stretch}#panel-flow-dashboard .flow-dashboard-scroll::-webkit-scrollbar{width:6px}#panel-flow-dashboard .flow-dashboard-scroll::-webkit-scrollbar-thumb{background:#94a3b8;border-radius:999px}#panel-flow-dashboard .flow-dashboard-section{display:block;width:100%;max-width:100%;margin-top:0;box-sizing:border-box}#panel-flow-dashboard .flow-dashboard-scroll>.flow-dashboard-section:first-child{margin-top:0}#panel-flow-dashboard .flow-dashboard-chord-section{margin-top:0;padding-top:.5rem;padding-bottom:2.75rem;border-bottom:1px solid #d1d5db;overflow:visible}#panel-flow-dashboard .flow-dashboard-line-metrics-section{padding-top:2.75rem;padding-bottom:2.75rem;border-bottom:1px solid #d1d5db}#panel-flow-dashboard .flow-dashboard-chord-section #app{display:block;width:100%;max-width:100%;margin:0 auto;min-height:780px;height:780px;overflow:visible;background:var(--flow-dashboard-chord-bg,#f9fafb)}#panel-flow-dashboard .flow-dashboard-line-metrics-section,#panel-flow-dashboard .flow-dashboard-metrics-block{width:100%;max-width:100%}#panel-flow-dashboard .flow-dashboard-section-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:.75rem}#panel-flow-dashboard .flow-dashboard-block-title,#panel-flow-dashboard .flow-dashboard-section-title{margin:0;font-size:18px;font-weight:700;letter-spacing:.02em;text-transform:none;color:#374151!important}#panel-flow-dashboard .flow-dashboard-line-bar-sub{margin:.35rem 0 0;font-size:.82rem;line-height:1.55;color:#4b5563!important;letter-spacing:normal;text-transform:none}#panel-flow-dashboard .flow-dashboard-line-metrics-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3rem 3.5rem;margin-top:1.75rem;width:100%}#panel-flow-dashboard .flow-dashboard-line-metric-panel{min-width:0;padding:20px 24px 24px;box-sizing:border-box}#panel-flow-dashboard .flow-dashboard-line-metric-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:.75rem}#panel-flow-dashboard .flow-dashboard-line-metric-title{margin:0;font-size:14px;font-weight:600;letter-spacing:.04em;text-transform:none;color:#374151!important}#panel-flow-dashboard .flow-dashboard-line-sort-group{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}#panel-flow-dashboard .flow-dashboard-line-sort-btn{border:1px solid #111827;border-radius:6px;padding:5px 10px;background:#ffffffd9!important;color:#374151!important;font-size:.6875rem;font-weight:700;letter-spacing:.08em;text-transform:none;cursor:pointer;transition:background .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease}#panel-flow-dashboard .flow-dashboard-line-sort-btn:hover{background:#fff!important;color:#111827!important;border-color:#111827!important}#panel-flow-dashboard .flow-dashboard-line-sort-btn.active{color:#111827!important;background:#fff!important;border-color:#111827!important;box-shadow:0 1px 3px #0f172a14!important}#panel-flow-dashboard .flow-dashboard-line-metric-panel .flow-dashboard-line-bar-chart{margin:0;padding:0;background:transparent;border:none;border-radius:0;max-height:none;overflow:visible}#panel-flow-dashboard .flow-dashboard-line-bar-row{display:grid;grid-template-columns:minmax(72px,120px) 1fr minmax(56px,88px);align-items:center;gap:12px;min-height:28px;padding:5px 0}#panel-flow-dashboard .flow-dashboard-line-bar-row+.flow-dashboard-line-bar-row{border-top:none}#panel-flow-dashboard .flow-dashboard-line-bar-row--total{margin-top:8px;padding-top:10px;border-top:1px solid #d1d5db}#panel-flow-dashboard .flow-dashboard-line-bar-row--total .flow-dashboard-line-bar-barcol{height:0;min-height:0}#panel-flow-dashboard .flow-dashboard-line-bar-swatch--total{background:transparent;box-shadow:none}#panel-flow-dashboard .flow-dashboard-line-bar-row--total .flow-dashboard-line-bar-label{font-weight:700;color:#111827!important}#panel-flow-dashboard .flow-dashboard-line-bar-label{display:flex;align-items:center;gap:8px;min-width:0;font-size:.88rem;font-weight:600;color:#111827!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#panel-flow-dashboard .flow-dashboard-line-bar-swatch{width:10px;height:10px;border-radius:2px;flex-shrink:0;box-shadow:0 0 0 1px #d1d5db}#panel-flow-dashboard .flow-dashboard-line-bar-barcol{position:relative;display:flex;align-items:stretch;height:12px;min-width:0}#panel-flow-dashboard .flow-dashboard-line-bar-fill{display:block;height:100%;border-radius:0;min-width:0;transition:width .28s ease}#panel-flow-dashboard .flow-dashboard-line-bar-value{font-size:.88rem;font-weight:600;color:#111827!important;text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}#panel-flow-dashboard .flow-dashboard-line-bar-empty{padding:28px 12px;text-align:center;color:#6b7280;font-size:.88rem}#panel-flow-dashboard .flow-dashboard-station-section{margin:0;padding:2.75rem 0 48px;background:#f9fafb;color:#374151!important;width:100%;max-width:100%}#panel-flow-dashboard .flow-dashboard-station-section .flow-dashboard-section-head-with-legend{align-items:center}#panel-flow-dashboard .flow-dashboard-station-section-title{margin:0 0 0 10px}#panel-flow-dashboard .flow-dashboard-station-section .flow-dashboard-line-title{color:#111827!important}#panel-flow-dashboard .flow-dashboard-station-section .flow-dashboard-line-block{border-bottom-color:#e5e7eb}#panel-flow-dashboard .flow-dashboard-station-section .flow-dashboard-wheel-name{color:#111827!important}#panel-flow-dashboard .flow-dashboard-station-section-tools{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-left:auto}#panel-flow-dashboard .flow-dashboard-station-flow-sub{margin:.35rem 0 0 10px}#panel-flow-dashboard .flow-dashboard-station-section .flow-dashboard-hour-legend{flex-shrink:0;margin-left:0}#panel-flow-dashboard .flow-dashboard-station-section .flow-dashboard-hour-legend-svg{display:block;height:28px;width:auto}#panel-flow-dashboard .flow-dashboard-lines{display:flex;flex-direction:column;gap:24px;margin-top:24px;min-height:120px;padding-bottom:32px}#panel-flow-dashboard .flow-dashboard-line-block{padding:20px 0;border-bottom:1px solid #e5e7eb}#panel-flow-dashboard .flow-dashboard-line-block:last-child{border-bottom:none}#panel-flow-dashboard .flow-dashboard-line-head{display:flex;align-items:center;gap:10px;margin-bottom:14px}#panel-flow-dashboard .flow-dashboard-line-title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-left:10px}#panel-flow-dashboard .flow-dashboard-line-badge{width:18px;height:18px;border-radius:3px;display:inline-flex;align-items:center;justify-content:center;color:var(--flow-dashboard-line-badge-color,#111827);font-size:11px;font-weight:700;line-height:1;font-family:inherit;border:none;box-shadow:none;text-shadow:none}#panel-flow-dashboard .flow-dashboard-line-title{font-size:1.1rem;font-weight:900;letter-spacing:.06em;color:#111827!important}#panel-flow-dashboard .flow-dashboard-station-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:16px}#panel-flow-dashboard .flow-dashboard-station-wheel{position:relative;min-height:132px;padding:6px 6px 4px;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease}#panel-flow-dashboard .flow-dashboard-station-flow-value{margin-top:2px;text-align:center;font-size:.6875rem;font-weight:700;letter-spacing:.02em;color:#4b5563!important;font-variant-numeric:tabular-nums;line-height:1.35;pointer-events:none}#panel-flow-dashboard .flow-dashboard-station-wheel:hover{transform:translateY(-2px);box-shadow:0 12px 28px #00000059}#panel-flow-dashboard .flow-dashboard-station-svg{width:100%;height:88px;display:block}#panel-flow-dashboard .flow-dashboard-wheel-center{position:absolute;left:0;right:0;top:6px;height:88px;pointer-events:none}#panel-flow-dashboard .flow-dashboard-wheel-name{position:absolute;inset:0 auto 0 50%;width:70px;margin-left:-35px;display:flex;align-items:center;justify-content:center;text-align:center;max-width:70px;box-sizing:border-box;color:#111827!important;font-size:.75rem;font-weight:800;line-height:1.2;word-break:break-word;letter-spacing:.02em}#panel-flow-dashboard .flow-dashboard-wheel-transfer{position:absolute;bottom:27px;left:0;right:0;text-align:center;font-size:.55rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#7dd3fce6}#panel-flow-dashboard .flow-dashboard-wheel-footer{display:none}#panel-flow-dashboard .flow-dashboard-tooltip{position:fixed;z-index:3200;pointer-events:none;opacity:0;transform:translate(-50%,-12px);transition:opacity .12s ease,transform .12s ease;padding:8px 12px;border-radius:8px;border:none;background:#0f172aeb;color:#f8fafc;font-size:12px;line-height:1.45;box-shadow:0 4px 14px #0f172a2e;white-space:nowrap;max-width:min(320px,calc(100vw - 24px))}#panel-flow-dashboard .flow-dashboard-tooltip.is-visible{opacity:1;transform:translate(-50%,-18px)}#panel-flow-dashboard.flow-dashboard-theme-dark.panel.flow-dashboard-metrics-layout{--flow-dashboard-chord-bg:#202124;--flow-dashboard-page-bg:#202124;--flow-dashboard-button-bg:#242629;--flow-dashboard-button-active-bg:#ffffff;background:#202124!important;color:#e2e8f0}#panel-flow-dashboard.flow-dashboard-theme-dark .flow-dashboard-theme-toggle{border-color:#3f3f46;background:#242629!important}#panel-flow-dashboard.flow-dashboard-theme-dark .flow-dashboard-theme-btn{color:#cbd5e1}#panel-flow-dashboard.flow-dashboard-theme-dark .flow-dashboard-theme-btn:hover{color:#e2e8f0}#panel-flow-dashboard.flow-dashboard-theme-dark .flow-dashboard-theme-btn.active{background:#fff!important;color:#16161d!important;box-shadow:none}#panel-flow-dashboard.flow-dashboard-theme-dark .flow-dashboard-close{background:transparent!important;color:#e2e8f0}#panel-flow-dashboard.flow-dashboard-theme-dark .flow-dashboard-close:hover{color:#f8fafc}#panel-flow-dashboard.flow-dashboard-theme-dark .flow-dashboard-title{color:#e2e8f0!important}#panel-flow-dashboard.flow-dashboard-theme-dark .flow-dashboard-filter-btn{border-color:#cbd5e1!important;background:#242629!important;color:#e5e7eb!important;box-shadow:none!important}#panel-flow-dashboard.flow-dashboard-theme-dark .flow-dashboard-filter-btn:hover{background:#32363d!important;color:#e2e8f0!important;border-color:#e2e8f0!important}#panel-flow-dashboard.flow-dashboard-theme-dark .flow-dashboard-filter-btn.active{color:#f1f5f9!important;background:#242629!important;border-color:var(--flow-dashboard-filter-line-color,#f1f5f9)!important;box-shadow:none!important}#panel-flow-dashboard.flow-dashboard-theme-dark .flow-dashboard-scroll::-webkit-scrollbar-thumb{background:#52525b}#panel-flow-dashboard.flow-dashboard-theme-dark .flow-dashboard-chord-section,#panel-flow-dashboard.flow-dashboard-theme-dark .flow-dashboard-line-metrics-section{border-bottom-color:#34363a}#panel-flow-dashboard.flow-dashboard-theme-dark .flow-dashboard-block-title,#panel-flow-dashboard.flow-dashboard-theme-dark .flow-dashboard-section-title,#panel-flow-dashboard.flow-dashboard-theme-dark .flow-dashboard-line-metric-title{color:#e2e8f0!important}#panel-flow-dashboard.flow-dashboard-theme-dark .flow-dashboard-line-bar-sub{color:#cbd5e1!important}#panel-flow-dashboard.flow-dashboard-theme-dark .flow-dashboard-line-sort-btn{border-color:#cbd5e1!important;background:#242629!important;color:#e5e7eb!important;box-shadow:none!important}#panel-flow-dashboard.flow-dashboard-theme-dark .flow-dashboard-line-sort-btn:hover{background:#32363d!important;color:#e2e8f0!important;border-color:#e2e8f0!important}#panel-flow-dashboard.flow-dashboard-theme-dark .flow-dashboard-line-sort-btn.active{color:#f1f5f9!important;background:#242629!important;border-color:#e2e8f0!important;box-shadow:none!important}#panel-flow-dashboard.flow-dashboard-theme-dark .flow-dashboard-line-bar-row--total{border-top-color:#34363a}#panel-flow-dashboard.flow-dashboard-theme-dark .flow-dashboard-line-bar-row--total .flow-dashboard-line-bar-label,#panel-flow-dashboard.flow-dashboard-theme-dark .flow-dashboard-line-bar-label,#panel-flow-dashboard.flow-dashboard-theme-dark .flow-dashboard-line-bar-value{color:#e2e8f0!important}#panel-flow-dashboard.flow-dashboard-theme-dark .flow-dashboard-line-bar-swatch{box-shadow:0 0 0 1px #ffffff24}#panel-flow-dashboard.flow-dashboard-theme-dark .flow-dashboard-line-bar-empty{color:#e2e8f08c}#panel-flow-dashboard.flow-dashboard-theme-dark .flow-dashboard-station-section{background:#202124;color:#e2e8f0!important}#panel-flow-dashboard.flow-dashboard-theme-dark .flow-dashboard-station-section .flow-dashboard-line-title,#panel-flow-dashboard.flow-dashboard-theme-dark .flow-dashboard-station-section .flow-dashboard-wheel-name{color:#e2e8f0!important}#panel-flow-dashboard.flow-dashboard-theme-dark .flow-dashboard-station-section .flow-dashboard-line-block{border-bottom-color:#34363a}#panel-flow-dashboard.flow-dashboard-theme-dark .flow-dashboard-station-flow-value{color:#cbd5e1!important}#panel-flow-dashboard.flow-dashboard-theme-dark .flow-dashboard-line-block{border-bottom-color:#34363a}#panel-flow-dashboard.flow-dashboard-theme-dark .flow-dashboard-station-flow-sub{color:#cbd5e1!important}.metro-flow-overlay-tooltip{position:fixed;z-index:25000;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .12s ease;padding:8px 10px;border-radius:8px;border:1px solid rgba(255,255,255,.14);background:#0f172af0;color:#f3f4f6;font-size:11px;line-height:1.45;box-shadow:0 10px 28px #00000073;max-width:min(280px,calc(100vw - 24px))}.metro-flow-overlay-tooltip.is-visible{opacity:1;visibility:visible}.metro-flow-overlay-tooltip__title{font-weight:600;color:#fff;margin-bottom:4px}.metro-flow-overlay-tooltip__row{color:#d1d5db;white-space:nowrap}@media(max-width:768px){#panel-flow-dashboard .flow-dashboard-top-actions{top:18px;right:20px}#panel-flow-dashboard .flow-dashboard-inner{margin:24px 30px 0;max-width:none}#panel-flow-dashboard .flow-dashboard-scroll{margin:.5rem 30px 0;max-width:none}#panel-flow-dashboard .flow-dashboard-chord-section #app{min-height:640px;height:640px}#panel-flow-dashboard .flow-dashboard-line-metrics-grid{grid-template-columns:1fr;gap:2rem}#panel-flow-dashboard .flow-dashboard-line-metric-panel{padding:16px 18px 20px}#panel-flow-dashboard .flow-dashboard-line-metric-head{flex-direction:column;align-items:flex-start}#panel-flow-dashboard .flow-dashboard-filters{grid-template-columns:repeat(auto-fill,minmax(72px,1fr))}#panel-flow-dashboard .flow-dashboard-station-section{margin-top:1.5rem;padding:20px 0 36px}#panel-flow-dashboard .flow-dashboard-station-grid{grid-template-columns:repeat(auto-fill,minmax(88px,1fr))}#panel-flow-dashboard .flow-dashboard-station-section .flow-dashboard-section-head-with-legend{flex-wrap:wrap}#panel-flow-dashboard .flow-dashboard-line-bar-row{grid-template-columns:minmax(64px,96px) 1fr minmax(48px,72px);gap:8px}}#panel-poptravel.panel{display:none;flex-direction:column;position:fixed;top:12px;left:12px;right:auto;width:320px;max-height:calc(100vh - 96px);background:#000c;border-radius:20px;border:1px solid #222;box-shadow:0 12px 40px #00000080,0 0 0 1px #ffffff0a;padding:0;overflow:hidden}#panel-poptravel .poptravel-header{position:relative;padding:18px 20px 10px;color:#f9fafb;background:transparent}#panel-poptravel .poptravel-title{font-size:18px;font-weight:700;margin-bottom:4px}#panel-poptravel .poptravel-sub{font-size:11px;color:#9ca3af}#panel-poptravel .poptravel-tabs{display:flex;gap:8px;margin-top:12px}#panel-poptravel .poptravel-tab{flex:1;padding:6px 10px;font-size:12px;border-radius:999px;border:1px solid #27272a;background:#111;color:#a1a1aa;cursor:pointer;transition:all .15s;white-space:nowrap}#panel-poptravel .poptravel-tab.active{background:#f9fafb;color:#000;border-color:#f9fafb}#panel-poptravel .poptravel-close{position:absolute;top:12px;right:16px;background:none;border:none;color:#6b7280;font-size:18px;cursor:pointer;line-height:1}#panel-poptravel .poptravel-close:hover{color:#fff}#panel-poptravel .poptravel-body{padding:12px 20px 16px;color:#e5e7eb;font-size:12px;background:transparent}#panel-poptravel .poptravel-chongqing-notice{display:none;flex-shrink:0;margin:0;padding:10px 20px 14px;font-size:10px;line-height:1.45;color:#6b7280;border-top:1px solid rgba(255,255,255,.06)}#panel-poptravel .poptravel-desc{font-size:11px;color:#9ca3af;margin-bottom:10px}#panel-poptravel .poptravel-legend{margin-top:8px;font-size:10px;color:#9ca3af}#panel-poptravel .poptravel-legend-bar{display:flex;align-items:center;gap:4px;margin-top:4px}#panel-poptravel .poptravel-legend-swatch{width:18px;height:10px;border-radius:3px;background:red}#panel-poptravel .poptravel-legend-caption{font-size:10px;color:#6b7280;margin-top:4px}#panel-poptravel .poptravel-legend-pop{background:transparent;margin-top:10px}#panel-poptravel .poptravel-legend-pop .poptravel-legend-title{display:block;font-size:11px;color:#e5e7eb;margin-bottom:6px}#panel-poptravel .poptravel-legend-pop-list{display:flex;flex-direction:column;gap:2px}#panel-poptravel .poptravel-legend-pop-row{display:flex;align-items:center;gap:8px;font-size:10px;color:#9ca3af}#panel-poptravel .poptravel-legend-pop-row .poptravel-legend-swatch{width:14px;height:10px;flex-shrink:0;border-radius:2px}.map-overlay-legends-stack{position:fixed;top:16px;right:16px;z-index:9288;display:flex;flex-direction:column;align-items:flex-end;gap:8px;max-width:min(240px,calc(100vw - 32px));pointer-events:none}.map-overlay-legends-stack.map-overlay-legends-stack--below-hex{top:200px}.map-overlay-legend{background:#000000bf;padding:8px 10px;border-radius:8px;font-size:11px;color:#e5e7eb;border:1px solid rgba(255,255,255,.08);backdrop-filter:blur(8px);min-width:148px;box-sizing:border-box;pointer-events:auto}.map-overlay-legend-title{margin-bottom:6px;font-weight:500;color:#f3f4f6}.map-overlay-legend-row{display:flex;align-items:center;gap:8px;margin-bottom:3px;font-size:10px;color:#d1d5db}#legend-station-daily-flow .map-overlay-legend-row{display:grid;grid-template-columns:16px auto;column-gap:8px;align-items:center}#legend-station-daily-flow .map-overlay-legend-row:last-child{margin-bottom:0}#legend-station-daily-flow .map-overlay-legend-dot{justify-self:center}.map-overlay-legend-dot{display:inline-block;border-radius:50%;background:#ef44446b;border:1px solid rgba(239,68,68,.55);flex-shrink:0;box-sizing:border-box}.map-overlay-legend-dot--daily-sm{width:8px;height:8px}.map-overlay-legend-dot--daily-lg{width:16px;height:16px}.map-overlay-legend-gradient{height:10px;border-radius:4px;margin:2px 0 4px;border:none;overflow:hidden;box-sizing:border-box;background-repeat:no-repeat;background-size:100% 100%}.map-overlay-legend-gradient--od{background-image:linear-gradient(90deg,#1e3a8a,#38bdf8,#22c55e,#eab308,#dc2626)}.map-overlay-legend-gradient--section{background-image:linear-gradient(90deg,#e3f2fd,#0d47a1)}.map-overlay-legend-gradient--intensity{background-image:linear-gradient(90deg,#e8f5e9,#1b5e20)}.map-overlay-legend-gradient--line-daily{background-image:linear-gradient(90deg,#ffedd5,#c2410c)}.map-overlay-legend-gradient--hsr-speed{background-image:linear-gradient(90deg,#a5d6a7,#66bb6a 40%,#43a047,#2e7d32,#0b4a28)}.map-overlay-legend-gradient--hsr-station-flow{background-image:linear-gradient(90deg,#dbeafe,#bfdbfe 12%,#93c5fd 25%,#60a5fa,#3b82f6 65%,#2563eb 80%,#172554)}.map-overlay-legend-scale{display:flex;justify-content:space-between;font-size:10px;color:#9ca3af;margin-bottom:0}.map-overlay-legend-caption{font-size:10px;color:#9ca3af;line-height:1.35}.map-overlay-legend-row .map-overlay-legend-swatch{width:10px;height:10px;border-radius:2px;flex-shrink:0;border:1px solid rgba(255,255,255,.28);box-sizing:border-box}.map-overlay-legend-row .map-overlay-legend-line{width:16px;height:2px;border-radius:2px;opacity:.9;flex-shrink:0}.map-overlay-legend-opacity-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:8px;font-size:10px;color:#9ca3af}.map-overlay-legend-opacity-label{opacity:.95}.map-overlay-legend-opacity-val{font-weight:700;color:#e5e7eb;white-space:nowrap}.map-overlay-legend-opacity-range{display:block;width:100%;max-width:220px;height:22px;margin:4px 0 0;padding:0;cursor:pointer;pointer-events:auto;touch-action:none;-webkit-appearance:none;appearance:none;background:transparent}.map-overlay-legend-opacity-range::-webkit-slider-runnable-track{height:6px;border-radius:999px;background:#ffffff38}.map-overlay-legend-opacity-range::-webkit-slider-thumb{-webkit-appearance:none;width:16px;height:16px;margin-top:-5px;border-radius:50%;background:#f3f4f6;border:2px solid rgba(0,0,0,.35);box-shadow:0 1px 4px #00000059}.map-overlay-legend-opacity-range::-moz-range-track{height:6px;border-radius:999px;background:#ffffff38}.map-overlay-legend-opacity-range::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:#f3f4f6;border:2px solid rgba(0,0,0,.35);box-shadow:0 1px 4px #00000059}.map-overlay-legend-gradient--hk-pop{background-image:linear-gradient(90deg,#e3f2fd,#08306b)}.map-overlay-legend-gradient--hk-poi-density{margin-top:6px}body.map-theme-dark .map-overlay-legend,body.map-theme-dark .flight-airport-legend{background:#000000bf!important;color:#e0e0e0!important;border-color:#ffffff14!important}body.map-theme-dark .map-overlay-legend-gradient{background-color:transparent!important;background-repeat:no-repeat!important;background-size:100% 100%!important}body.map-theme-dark .map-overlay-legend-gradient--od{background-image:linear-gradient(90deg,#1e3a8a,#38bdf8,#22c55e,#eab308,#dc2626)!important}body.map-theme-dark .map-overlay-legend-gradient--section{background-image:linear-gradient(90deg,#e3f2fd,#0d47a1)!important}body.map-theme-dark .map-overlay-legend-gradient--intensity{background-image:linear-gradient(90deg,#e8f5e9,#1b5e20)!important}body.map-theme-dark .map-overlay-legend-gradient--line-daily{background-image:linear-gradient(90deg,#ffedd5,#c2410c)!important}body.map-theme-dark .map-overlay-legend-gradient--hsr-speed{background-image:linear-gradient(90deg,#a5d6a7,#66bb6a 40%,#43a047,#2e7d32,#0b4a28)!important}body.map-theme-dark .map-overlay-legend-gradient--hsr-station-flow{background-image:linear-gradient(90deg,#dbeafe,#bfdbfe 12%,#93c5fd 25%,#60a5fa,#3b82f6 65%,#2563eb 80%,#172554)!important}body.map-theme-dark .map-overlay-legend-gradient--hk-pop{background-image:linear-gradient(90deg,#e3f2fd,#08306b)!important}.map-overlay-legend-hk-poi-row .map-overlay-legend-scale{margin-bottom:4px}.map-overlay-legend-hk-swatch-grid{display:flex;flex-wrap:wrap;gap:6px 8px;margin-top:6px;pointer-events:auto}.map-overlay-legend-hk-swatch-item{display:flex;align-items:center;gap:6px;max-width:210px;font-size:10px;color:#d1d5db}.map-overlay-legend-hk-swatch-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:170px}.map-overlay-legend-hk-poi-list{display:flex;flex-direction:column;gap:10px;margin-top:8px;pointer-events:auto}.map-overlay-legend-hk-poi-row{display:flex;flex-direction:column}.map-overlay-legend-hk-poi-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.map-overlay-legend-hk-poi-left{display:flex;align-items:center;gap:8px;min-width:0;color:#d1d5db;font-size:10px}.map-overlay-legend-hk-poi-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:170px}#poptravel-city-filter-list{display:flex;flex-wrap:wrap;gap:6px}#poptravel-opacity-widget #poptravel-city-filter-list .poptravel-city-pill{-webkit-appearance:none;appearance:none;padding:4px 10px;font-size:11px;border-radius:999px;border:1px solid #27272a!important;background:#111!important;color:#a1a1aa!important;cursor:pointer;transition:all .15s;white-space:nowrap;outline:none}#poptravel-opacity-widget #poptravel-city-filter-list .poptravel-city-pill:not(.active){background:#111!important;color:#a1a1aa!important;border-color:#27272a!important}#poptravel-opacity-widget #poptravel-city-filter-list .poptravel-city-pill.active{background:#f9fafb!important;color:#000!important;border-color:#f9fafb!important}#panel-mapstyle.panel{display:none;flex-direction:column;position:fixed;top:12px;left:12px;right:auto;width:320px;max-height:calc(100vh - 96px);background:#252628;border-radius:20px;border:1px solid rgba(255,255,255,.13);box-shadow:0 12px 34px #0000006b;padding:0;overflow:hidden;background-clip:padding-box;clip-path:inset(0 round 20px)}#panel-mapstyle .poptravel-header{position:relative;padding:18px 20px 10px;color:#f9fafb;background:transparent}#panel-mapstyle .poptravel-title{font-size:18px;font-weight:700;margin-bottom:4px}#panel-mapstyle .poptravel-sub{font-size:11px;color:#9ca3af}#panel-mapstyle .poptravel-tabs{display:flex;gap:8px;margin-top:12px}#panel-mapstyle .poptravel-tab{flex:1;padding:6px 10px;font-size:12px;border-radius:999px;border:1px solid transparent;background:#303133!important;color:#e5e7eb;cursor:pointer;transition:all .15s;white-space:nowrap}#panel-mapstyle .poptravel-tab.active{background:#303133!important;color:#f9fafb;border-color:#fff}#panel-mapstyle .poptravel-tab:hover{background:#38393b}#panel-mapstyle .poptravel-tab.active:hover{background:#303133}#panel-mapstyle .poptravel-close{position:absolute;top:12px;right:16px;background:none;border:none;color:#6b7280;font-size:18px;cursor:pointer;line-height:1}#panel-mapstyle .poptravel-close:hover{color:#fff}#panel-mapstyle .poptravel-body{padding:12px 20px 16px;color:#e5e7eb;font-size:12px;background:transparent}#panel-mapstyle .poptravel-desc{font-size:11px;color:#9ca3af;margin-bottom:10px}#panel-mapstyle .mapstyle-engine-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:28px}#panel-mapstyle .mapstyle-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:0}#panel-mapstyle .mapstyle-btn{padding:10px;border-radius:14px;background:#303133!important;border:1px solid transparent!important;color:#e5e7eb;cursor:pointer;transition:all .15s;text-align:left;line-height:1.25}#panel-mapstyle .mapstyle-btn:hover{background:#38393b!important;transform:translateY(-1px)}#panel-mapstyle .mapstyle-btn.active{background:#303133!important;border-color:#fff!important;color:#f9fafb;box-shadow:none}#panel-mapstyle .mapstyle-btn .ms-name{font-size:12px;font-weight:700;color:#f9fafb}#panel-mapstyle .mapstyle-btn.active .ms-name{color:#f9fafb}#panel-mapstyle .mapstyle-btn .ms-id{font-size:10px;color:#94a3b8;margin-top:4px;word-break:break-all}#panel-mapstyle .mapstyle-btn.active .ms-id{color:#cbd5e1}#panel-mapstyle .mapstyle-input-row{display:flex;gap:8px;margin-top:10px}#panel-mapstyle input[type=text].mapstyle-input{flex:1;padding:8px 10px;border-radius:12px;border:1px solid transparent;background:#303133;color:#f9fafb;font-size:12px;outline:none}#panel-mapstyle input[type=text].mapstyle-input:focus{border-color:#fbbf24b8}#panel-mapstyle .mapstyle-apply{padding:8px 12px;border-radius:999px;border:1px solid transparent;background:#fbbf24;color:#111113;cursor:pointer;font-size:12px;font-weight:700;white-space:nowrap}#panel-mapstyle .mapstyle-apply:hover,#panel-mapstyle .mapstyle-apply.active{background:#facc15}#panel-mapstyle .mapstyle-opt-row{display:flex;gap:8px;margin-top:14px;padding-top:10px;border-top:1px solid rgba(255,255,255,.13)}#panel-mapstyle .mapstyle-toggle-btn{flex:1;padding:8px 12px;border-radius:12px;background:#303133!important;border:1px solid transparent!important;color:#e5e7eb;font-size:12px;font-weight:600;cursor:pointer;transition:all .15s}#panel-mapstyle .mapstyle-toggle-btn:hover{background:#38393b!important}#panel-mapstyle .mapstyle-toggle-btn.active{border-color:#fff!important;background:#303133!important;color:#f9fafb}#panel-mapstyle .mapstyle-poi-row{margin-top:14px;padding-top:10px;border-top:1px solid rgba(255,255,255,.13)}#panel-mapstyle .mapstyle-poi-label{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:#e5e7eb;cursor:pointer}#panel-mapstyle .mapstyle-poi-label input[type=checkbox]{width:14px;height:14px;margin:0;border-radius:3px;border:1px solid transparent;background:#212121!important;background-color:#212121!important;-webkit-appearance:none;appearance:none;display:inline-block;flex-shrink:0;cursor:pointer}#panel-mapstyle .mapstyle-poi-label input[type=checkbox]:checked{background:#fbbf24!important;background-color:#fbbf24!important;border-color:transparent}#panel-mapstyle .mapstyle-poi-label input[type=checkbox]:focus-visible{outline:2px solid rgba(251,191,36,.45);outline-offset:2px}#panel-poptravel .timeline-row{display:flex;align-items:center;gap:8px;margin-top:8px}#panel-poptravel .timeline-row input[type=range]{flex:1}#panel-poptravel .timeline-time{font-family:monospace;font-size:13px;min-width:40px;text-align:right}#panel-poptravel .timeline-btn{width:28px;height:28px;border-radius:999px;border:1px solid #374151;background:#111;color:#e5e7eb;cursor:pointer;font-size:13px;display:flex;align-items:center;justify-content:center}#panel-poptravel .timeline-btn.playing{background:#f9fafb;color:#000;border-color:#f9fafb}.pop-grid-tooltip{background:#000000d1;color:#fff;padding:6px 10px;font-size:11px;line-height:1.4;min-width:100px;max-width:180px;border-radius:6px;border:1px solid rgba(255,255,255,.12);box-shadow:0 4px 12px #0006}.pop-grid-tooltip .pop-grid-tooltip-name{font-weight:700;color:#fff;margin-bottom:4px}.pop-grid-tooltip .pop-grid-tooltip-row{color:#fffffff2;font-size:10px}.amap-info-contentContainer:has(.pop-grid-tooltip),.amap-info-content:has(.pop-grid-tooltip){background:transparent!important;border:none!important;box-shadow:none!important}.maplibregl-popup.metro-pop-maplibre-popup .maplibregl-popup-content{background:transparent!important;box-shadow:none!important;padding:0!important}.maplibregl-popup.metro-pop-maplibre-popup.maplibregl-popup-anchor-top .maplibregl-popup-tip,.maplibregl-popup.metro-pop-maplibre-popup.maplibregl-popup-anchor-top-left .maplibregl-popup-tip,.maplibregl-popup.metro-pop-maplibre-popup.maplibregl-popup-anchor-top-right .maplibregl-popup-tip{border-bottom-color:#000000d1!important}.maplibregl-popup.metro-pop-maplibre-popup.maplibregl-popup-anchor-bottom .maplibregl-popup-tip,.maplibregl-popup.metro-pop-maplibre-popup.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip,.maplibregl-popup.metro-pop-maplibre-popup.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{border-top-color:#000000d1!important}.maplibregl-popup.metro-pop-maplibre-popup.maplibregl-popup-anchor-left .maplibregl-popup-tip{border-right-color:#000000d1!important}.maplibregl-popup.metro-pop-maplibre-popup.maplibregl-popup-anchor-right .maplibregl-popup-tip{border-left-color:#000000d1!important}.amap-logo,.amap-scalecontrol{display:none!important}.amap-copyright{bottom:48px!important;left:12px!important}#panel-line-info.panel{display:none;flex-direction:column;position:fixed;top:12px;left:12px;width:480px;max-height:calc(100vh - 96px);height:auto;background:#252628;border:1px solid rgba(255,255,255,.13);border-radius:20px;box-shadow:0 12px 34px #0000006b,inset 0 1px #ffffff0d;color:#e4e4e7;overflow:hidden;z-index:2200}#panel-line-info .line-info-close{position:absolute;top:8px;right:8px;z-index:30;background:#0000004d;border:none;color:#fff;width:28px;height:28px;border-radius:50%;cursor:pointer;font-size:16px;line-height:1}#panel-line-info .line-info-close:hover{background:#00000080}#panel-line-info .line-info-header{flex:none;padding:24px 44px 20px 24px;background:#252628;border-bottom:1px solid rgba(255,255,255,.13);display:flex;align-items:center;justify-content:space-between;gap:16px}#panel-line-info .line-info-header-main{display:flex;align-items:center;justify-content:space-between;gap:16px;flex:1;min-width:0}#panel-line-info .line-info-header-setting{flex:1;min-width:0;padding-right:8px}#panel-line-info.line-info-mode-express .line-info-header-main{display:none!important}#panel-line-info.line-info-mode-express .line-info-header-setting{display:block!important;width:100%;padding-right:44px}#panel-line-info.line-info-mode-express .line-info-row--express-edit-leg .line-info-node.express-edit-off,#panel-line-info.line-info-mode-express .line-info-row--express-edit-outside .line-info-node.express-edit-off{visibility:hidden;width:0;height:0;margin:0;border-width:0;padding:0}#panel-line-info.line-info-mode-express .line-info-row--express-edit-dim .line-info-name.express-edit-dim,#panel-line-info.line-info-mode-express .line-info-row--express-edit-dim .line-info-en,#panel-line-info.line-info-mode-express .line-info-row--express-edit-dim .line-info-crowd,#panel-line-info.line-info-mode-express .line-info-row--express-edit-outside .line-info-name.express-edit-dim,#panel-line-info.line-info-mode-express .line-info-row--express-edit-outside .line-info-en,#panel-line-info.line-info-mode-express .line-info-row--express-edit-outside .line-info-crowd{opacity:.38}#panel-line-info.line-info-mode-express .line-info-row--express-edit-via .line-info-name,#panel-line-info.line-info-mode-express .line-info-row--express-edit-via .line-info-en,#panel-line-info.line-info-mode-express .line-info-row--express-edit-via .line-info-crowd{opacity:1}#panel-line-info.line-info-mode-express .line-info-express-mark--draft{border-style:solid;opacity:1}#panel-line-info .line-info-title.line-info-title-mode{font-size:1.25rem;font-weight:700;color:#fff;line-height:1.25;letter-spacing:-.02em}#panel-line-info .line-info-header-inner{display:flex;align-items:center;gap:16px;cursor:pointer;user-select:none;flex:1;min-width:0}#panel-line-info .line-info-badge{flex-shrink:0;display:flex;align-items:center;gap:6px;padding:8px 14px;background:var(--line-info-color,#a3e635);border-radius:10px;color:#fff}#panel-line-info .line-info-badge.line-info-badge--madrid{gap:0;padding:0;border-radius:0;box-sizing:border-box}#panel-line-info .line-info-badge.line-info-badge--madrid .line-info-badge-num{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0 4px}#panel-line-info .line-info-badge-num{font-size:2.25rem;font-weight:800;line-height:1}.line-info-badge-num.line-info-badge-num-text{display:flex;flex-direction:column;align-items:flex-start;font-size:1rem;line-height:1}#panel-line-info .line-info-badge-right{display:flex;flex-direction:column;align-items:flex-start;line-height:1.2}#panel-line-info .line-info-badge-txt{font-size:13px;font-weight:700}#panel-line-info .line-info-badge-en{font-size:10px;font-weight:600;opacity:.95}.line-info-badge-num.line-info-badge-num-text .line-info-badge-en{margin-top:4px}.line-info-badge-num.line-info-badge-bilingual{align-items:center;text-align:center;gap:2px;max-width:100%}.line-info-badge-num.line-info-badge-bilingual .line-info-badge-zh{font-size:17px;font-weight:800;line-height:1.15;color:#fff;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.line-info-badge-en-wrap{display:block;max-width:100%;line-height:1.1}.line-info-badge-en-wrap .line-info-badge-en{display:block;font-size:10px;font-weight:600;letter-spacing:.04em;color:#ffffffeb;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.line-info-badge-en-wrap.is-marquee{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}.line-info-badge-en-wrap.is-marquee .line-info-badge-en-track{display:inline-flex;align-items:center;gap:1.5rem;white-space:nowrap;animation:line-info-badge-en-marquee 10s linear infinite}.line-info-badge-en-wrap.is-marquee .line-info-badge-en-track span{font-size:10px;font-weight:600;letter-spacing:.04em;color:#ffffffeb}@keyframes line-info-badge-en-marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}#panel-line-info .line-info-header-inner:hover .line-info-arrow{opacity:.9}#panel-line-info .line-info-arrow{flex-shrink:0;display:block;transition:transform .2s ease;stroke:var(--line-info-color,#a3e635)}#panel-line-info.line-info-direction-down .line-info-arrow{transform:rotate(180deg)}#panel-line-info .line-info-header-inner,#panel-line-info .line-info-arrow,#panel-line-info .line-info-title,#panel-line-info .line-info-subtitle,#panel-line-info .line-info-name,#panel-line-info .line-info-en,#panel-line-info .line-info-capacity-lbl,#panel-line-info .line-info-capacity-lbl-main,#panel-line-info .line-info-capacity-lbl-line--kind,#panel-line-info .line-info-capacity-tag,#panel-line-info .line-info-capacity-meta,#panel-line-info .line-info-capacity-editor,#panel-line-info .line-info-capacity-val,#panel-line-info .line-info-capacity-input,#panel-line-info .line-info-capacity-step-btn,#panel-line-info .line-info-capacity-headway{background:transparent!important;background-color:transparent!important;box-shadow:none!important}#panel-line-info .line-info-title{font-size:1.875rem;font-weight:700;color:#fff;letter-spacing:-.02em;line-height:1.1}#panel-line-info .line-info-subtitle{font-size:12px;font-weight:700;color:#71717a;font-family:monospace;margin-top:4px}#panel-line-info .line-info-capacity-wrap{margin:0 0 6px;background:#303133;border:1px solid rgba(255,255,255,.13);box-shadow:none}#panel-line-info .line-info-capacity-wrap--multi:not(.is-expanded) .line-info-capacity-row--extra{display:none}.metro-cap-live-debug{font:11px/1.45 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:#a1a1aa;background:#0a0c12f0;border:1px solid rgba(200,151,58,.35);border-radius:6px;padding:8px 10px;max-width:100%;box-sizing:border-box}.metro-cap-live-debug--hud{position:absolute;left:0;top:100%;margin-top:4px;z-index:100020;min-width:280px;max-width:min(420px,92vw);pointer-events:none}.metro-cap-live-debug--panel{margin:0 0 8px;border-color:#4a9e6a59}.metro-cap-live-debug-title{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#e4e4e7;margin-bottom:6px}.metro-cap-live-debug-tag{font-size:9px;color:var(--peak,#c8973a);margin-left:6px}.metro-cap-live-debug-row{margin:3px 0}.metro-cap-live-debug-row em{font-style:normal;color:#f4f4f5;font-weight:700}.metro-cap-live-debug-slot em{color:var(--peak,#c8973a)}.metro-cap-live-debug-muted{color:#71717a;font-size:10px}.metro-cap-live-debug-warn{color:#fbbf24;font-size:10px}#time-display{position:relative}#panel-line-info .line-info-capacity-expand-btn{flex-shrink:0;width:28px;height:28px;margin-left:4px;margin-right:4px;padding:0;border-radius:0;border:none;background:transparent;color:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:opacity .15s ease,transform .15s ease;box-shadow:none}#panel-line-info .line-info-capacity-expand-btn:hover{opacity:.85}#panel-line-info .line-info-capacity-expand-btn.is-expanded .line-info-capacity-expand-ico{transform:rotate(180deg)}#panel-line-info .line-info-capacity-expand-ico{display:block;transition:transform .2s ease}#panel-line-info .line-info-capacity-expand-slot{flex-shrink:0;width:28px;height:28px;margin-left:4px;margin-right:4px;display:inline-block;pointer-events:none}#panel-line-info .line-info-capacity-wrap .line-info-capacity-row{display:grid;grid-template-columns:108px minmax(0,1fr) 32px;align-items:center;column-gap:10px;row-gap:0;padding:8px 12px;margin:0;background:transparent;border:none;border-radius:0;box-shadow:none}#panel-line-info .line-info-capacity-wrap .line-info-capacity-row+.line-info-capacity-row{border-top:1px solid rgba(255,255,255,.06)}#panel-line-info .line-info-capacity-wrap .line-info-capacity-expand-btn,#panel-line-info .line-info-capacity-wrap .line-info-capacity-expand-slot{margin:0;justify-self:center}#panel-line-info .line-info-capacity-row{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px;margin:0 0 6px;background:#0a0c12;border-radius:0;border:1px solid rgba(255,255,255,.08);box-shadow:none}#panel-line-info .line-info-capacity-lbl{display:grid;grid-template-columns:auto auto;column-gap:10px;row-gap:0;align-items:baseline;justify-content:start;flex-shrink:0;width:108px;min-width:108px;max-width:108px;text-align:left;line-height:1.15;margin-left:0;box-sizing:border-box}#panel-line-info .line-info-capacity-lbl-main,#panel-line-info .line-info-capacity-lbl-line--kind{font-size:10px;font-weight:600;color:#9ca3af;letter-spacing:.1em;white-space:nowrap}#panel-line-info .line-info-capacity-lbl-main--spacer{visibility:hidden;user-select:none;pointer-events:none}#panel-line-info .line-info-capacity-wrap .line-info-capacity-cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;width:100%;min-width:0;margin-left:0;align-items:stretch}#panel-line-info .line-info-capacity-cols{display:flex;gap:0;width:auto;flex:1;justify-content:space-between;min-width:0;margin-left:18px}#panel-line-info .line-info-capacity-wrap .line-info-capacity-item{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:2px;padding:0 4px;border-radius:0;background:transparent;border:none;flex:none;min-width:0;width:100%;box-sizing:border-box}#panel-line-info .line-info-capacity-item{display:flex;flex-direction:column;align-items:center;gap:2px;padding:0 6px;border-radius:0;background:transparent;border:none;flex:1 1 0;min-width:74px}#panel-line-info .line-info-capacity-item-top{display:flex;align-items:center;justify-content:center;gap:4px;width:100%}#panel-line-info .line-info-capacity-tag{font-size:11px;color:#a1a1aa;font-weight:700;white-space:nowrap;letter-spacing:.01em;line-height:1}#panel-line-info .line-info-capacity-wrap .line-info-capacity-meta{display:flex;align-items:center;justify-content:center;gap:4px;width:100%;min-width:0;max-width:100%;margin:0;line-height:1.1}#panel-line-info .line-info-capacity-meta{display:flex;align-items:center;justify-content:center;gap:6px;width:fit-content;min-width:56px;max-width:100%;margin:0 auto;line-height:1.1}#panel-line-info .line-info-capacity-wrap .line-info-capacity-btns{width:100%;justify-content:center}#panel-line-info .line-info-capacity-wrap .line-info-capacity-editor{display:inline-flex;align-items:center;justify-content:center;gap:3px;min-width:0;width:auto;max-width:none;margin:0 auto}#panel-line-info .line-info-capacity-wrap .line-info-capacity-item-top{width:100%;justify-content:center}#panel-line-info .line-info-capacity-val{font-size:12px;font-weight:700;color:#fff;min-width:18px;text-align:center}#panel-line-info .line-info-capacity-input{width:24px;min-width:24px;border:none;background:transparent;color:#fff;border-radius:0;padding:0 1px;outline:none;-webkit-appearance:none;appearance:none;font-size:12px;line-height:1;font-weight:700;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}#panel-line-info .line-info-capacity-editor{display:flex;align-items:center;justify-content:space-between;border:none;border-radius:0;background:transparent;padding:0;min-width:56px;backdrop-filter:none}#panel-line-info .line-info-capacity-step-btn{width:10px;height:10px;border:none;background:transparent;color:#e4e4e7;padding:0;line-height:1;font-size:12px;font-weight:300;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;opacity:.95;transition:color .12s ease,opacity .12s ease,transform .12s ease}#panel-line-info .line-info-capacity-step-btn:hover{color:#fff;opacity:1;transform:scale(1.06)}#panel-line-info .line-info-capacity-wrap .line-info-capacity-step-btn--left,#panel-line-info .line-info-capacity-wrap .line-info-capacity-step-btn--right{margin:0}#panel-line-info .line-info-capacity-step-btn--left{margin-right:1px}#panel-line-info .line-info-capacity-step-btn--right{margin-left:1px}#panel-line-info .line-info-capacity-btns{display:flex;align-items:center;justify-content:center;gap:0;width:100%}#panel-line-info .line-info-capacity-headway{font-size:10px;color:#7a7a86;text-align:center;width:auto;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;line-height:1.1;white-space:nowrap}#panel-line-info .line-info-pipeline-wrap{flex:1 1 auto;min-height:0;overflow-y:auto;position:relative}#panel-line-info .line-info-pipeline-wrap::-webkit-scrollbar{width:0}#panel-line-info .line-info-list{position:relative;z-index:10;padding:0 0 48px;min-height:0}#panel-line-info .line-info-pipeline-bar{position:absolute;left:174px;top:0;height:100%;width:12px;background:var(--line-info-color,#a3e635);z-index:0;pointer-events:none}#panel-line-info .line-info-floating-train{position:absolute;left:0;width:160px;display:flex;align-items:center;justify-content:flex-end;padding-right:24px;gap:8px;transform:translateY(-50%);will-change:top}#panel-line-info .line-info-row{display:flex;align-items:center;min-height:60px;padding:0 24px 0 0}#panel-line-info .line-info-name-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}#panel-line-info .line-info-express-mark{flex-shrink:0;width:14px;height:14px;display:inline-flex;align-items:center;justify-content:center;border:1.5px solid #fff;border-radius:2px;box-sizing:border-box;color:#fff;line-height:1}#panel-line-info .line-info-express-mark-char{font-size:10px;font-weight:800;font-family:system-ui,-apple-system,BlinkMacSystemFont,sans-serif;transform:translateY(-.5px)}#panel-line-info .line-info-ring-wrap{position:relative;display:inline-flex;width:32px;height:32px;align-items:center;justify-content:center}#panel-line-info .line-info-ring-badge{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;color:#fff;line-height:1;pointer-events:none;font-family:system-ui,-apple-system,BlinkMacSystemFont,sans-serif;transform:translateY(-1px)}.line-info-express-via-block{margin:4px 0 8px}.line-info-express-via-block>.line-info-side-lbl{display:block;margin-bottom:8px}#panel-line-info .line-info-train{width:160px;display:flex;align-items:center;justify-content:flex-end;padding-right:24px;gap:8px}#panel-line-info .line-info-train-nums{text-align:right;display:flex;flex-direction:column;align-items:flex-end}#panel-line-info .line-info-train-nums .n{font-size:10px;font-family:monospace;font-weight:700}#panel-line-info .line-info-train-nums .n.hi{color:#ef4444}#panel-line-info .line-info-train-nums .n.lo{color:#fff}#panel-line-info .line-info-train-nums .id{font-size:9px;color:#71717a;font-family:monospace}#panel-line-info .line-info-train-nums .extra{font-size:9px;color:#a1a1aa;margin-left:4px}#panel-line-info .line-info-node-wrap{width:40px;flex-shrink:0;display:flex;align-items:center;justify-content:center;position:relative}#panel-line-info .line-info-node{position:relative;width:24px;height:24px;border-radius:50%;background:#18181b;border:5px solid var(--line-info-color,#a3e635);box-sizing:border-box}#panel-line-info .line-info-transfer-bar{position:absolute;left:50%;top:50%;transform:translateY(-50%);height:8px;width:20px;z-index:0}#panel-line-info .line-info-station{flex:1;padding-left:16px;display:flex;align-items:center;justify-content:space-between}#panel-line-info .line-info-name{font-size:16px;font-weight:700;color:#fff}#panel-line-info .line-info-tag{font-size:10px;font-weight:800;width:18px;height:18px;padding:0;border-radius:2px;margin-left:0;display:inline-flex;align-items:center;justify-content:center;line-height:1}#panel-line-info .line-info-tag.line-info-tag-text{width:auto;min-width:18px;padding:0 6px}#panel-line-info .line-info-en{font-size:10px;color:#71717a;font-weight:700;margin-top:4px}#panel-line-info .line-info-crowd{font-size:14px;font-weight:700;color:#a1a1aa;font-variant-numeric:tabular-nums}#panel-line-info .line-info-foot{height:48px;flex:none;background:linear-gradient(to top,#252628,#25262800);pointer-events:auto;display:flex;align-items:flex-end;justify-content:space-between;padding:0 12px 10px;gap:12px}#panel-line-info .line-info-length-signature{font-size:10px;font-family:monospace;color:#a1a1aa;letter-spacing:.18em;opacity:.9;flex-shrink:0;pointer-events:none}.line-info-foot-tools{display:flex;align-items:center;gap:8px;flex-shrink:0;isolation:isolate;transform:translateZ(0);backface-visibility:hidden}.line-info-foot-btn{width:28px;height:28px;padding:0;border-radius:999px;border:1px solid rgba(249,250,251,.85);background:transparent;color:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:background .15s ease,border-color .15s ease,opacity .15s ease;box-shadow:0 4px 14px #00000059}.line-info-foot-btn:hover{border-color:#fff;background:#0f172abf}.line-info-foot-btn.is-active{border-color:#fff;background:#27272ae6}.line-info-foot-btn .line-info-foot-ico{display:block;flex-shrink:0;shape-rendering:geometricPrecision}.line-info-side-stack{display:none;position:fixed;z-index:2300;top:12px;left:504px;width:280px;max-height:calc(100vh - 96px);pointer-events:auto}.line-info-side-stack.is-open{display:block}.line-info-side-panel{position:relative;background:#252628;border:1px solid rgba(255,255,255,.13);border-radius:20px;box-shadow:0 12px 34px #0000006b,inset 0 1px #ffffff0d;color:#e4e4e7;padding:20px 18px 16px}.line-info-side-close{position:absolute;top:8px;right:8px;z-index:2;width:28px;height:28px;border-radius:50%;border:none;background:#00000059;color:#fff;font-size:16px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}.line-info-side-close:hover{background:#0000008c}.line-info-side-title{font-size:15px;font-weight:700;color:#fff;padding-right:28px;margin-bottom:8px}.line-info-side-desc{font-size:11px;color:#71717a;line-height:1.45;margin-bottom:14px}.line-info-side-placeholder{font-size:12px;color:#a1a1aa;line-height:1.5}.line-info-side-field{margin-bottom:12px}.line-info-side-toggle{display:flex;align-items:center;gap:8px;font-size:10px;color:#d4d4d8;line-height:1.35;cursor:pointer;user-select:none}.line-info-side-toggle input[type=checkbox]{position:absolute;opacity:0;pointer-events:none}.line-info-side-toggle-pill{position:relative;width:34px;height:20px;border-radius:999px;background:#3f3f46;border:1px solid #52525b;box-shadow:inset 0 1px 2px #00000059;transition:background .2s ease,border-color .2s ease,box-shadow .2s ease;flex:0 0 auto}.line-info-side-toggle-knob{position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #00000059;transition:transform .2s ease}.line-info-side-toggle-text{font-size:10px;font-weight:700;color:#888;letter-spacing:.06em}.line-info-side-toggle input[type=checkbox]:checked+.line-info-side-toggle-pill{background:var(--line-info-accent,#a3e635);border-color:var(--line-info-accent,#a3e635);box-shadow:inset 0 1px 1px #0003,0 0 0 2px #a3e6352e}.line-info-side-toggle input[type=checkbox]:checked+.line-info-side-toggle-pill .line-info-side-toggle-knob{transform:translate(14px)}.line-info-side-toggle input[type=checkbox]:focus-visible+.line-info-side-toggle-pill{outline:2px solid rgba(163,230,53,.45);outline-offset:2px}.line-info-side-time-row{display:flex;align-items:center;gap:6px}.line-info-side-time-sep{font-size:14px;font-weight:700;color:#71717a;flex:0 0 auto;user-select:none}.line-info-side-time-row .line-info-side-select-hm{flex:1 1 0;min-width:0;width:auto;max-width:none}.line-info-side-lbl{display:block;font-size:10px;font-weight:700;color:#888;text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px}.line-info-side-select{width:100%;max-width:100%;padding:8px 32px 8px 10px;border-radius:8px;border:1px solid #3f3f46;background:#18181b;color:#fff;font-size:13px;font-weight:600;font-variant-numeric:tabular-nums;cursor:pointer;-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23a1a1aa' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.line-info-side-select:focus{outline:none;border-color:var(--line-info-accent,#a3e635);box-shadow:0 0 0 1px var(--line-info-accent,#a3e635)}.line-info-side-hint{font-size:10px;color:#52525b;margin-top:6px;line-height:1.35}.line-info-side-error{min-height:18px;font-size:11px;color:#f87171;margin:8px 0 4px;line-height:1.35}.line-info-side-error:empty{display:none}.line-info-side-actions{display:flex;justify-content:flex-end;align-items:center;gap:10px;margin-top:12px}.line-info-side-cancel{padding:8px 16px;border-radius:10px;border:1px solid #52525b;background:transparent;color:#e4e4e7;font-size:12px;font-weight:700;cursor:pointer;transition:background .15s ease,border-color .15s ease}.line-info-side-cancel:hover{background:#27272ad9;border-color:#71717a}.line-info-side-apply-all{padding:8px 12px;border-radius:10px;border:1px solid #52525b;background:transparent;color:#e4e4e7;font-size:12px;font-weight:700;cursor:pointer;transition:background .15s ease,opacity .15s ease,border-color .15s ease}.line-info-side-apply-all:hover:not(:disabled){background:#27272ad9;border-color:#71717a}.line-info-side-apply-all:disabled{opacity:.45;cursor:not-allowed}.line-info-side-confirm{padding:8px 20px;border-radius:10px;border:1px solid #52525b;background:#27272a;color:#fff;font-size:12px;font-weight:700;cursor:pointer;transition:background .15s ease,opacity .15s ease}.line-info-side-confirm:hover:not(:disabled){background:#3f3f46;border-color:#71717a}.line-info-side-confirm:disabled{opacity:.45;cursor:not-allowed}.line-info-side-actions-service{justify-content:space-between;gap:8px}.line-info-side-actions-service .line-info-side-icon-btn{width:40px;height:40px;padding:0;border-radius:999px;border:1px solid rgba(113,113,122,.9);background:#18181be6;color:#f4f4f5;display:inline-flex;align-items:center;justify-content:center;flex:0 0 40px;transition:background .15s ease,border-color .15s ease,opacity .15s ease,transform .15s ease}.line-info-side-actions-service .line-info-side-icon-btn:hover:not(:disabled){background:#27272af2;border-color:#a1a1aaf2;transform:translateY(-1px)}.line-info-side-actions-service .line-info-side-icon{display:block;pointer-events:none}.line-info-side-actions-service .line-info-side-apply-all{flex:1;min-width:0;height:40px;padding:0 12px;border-radius:999px;border:1px solid rgba(134,239,172,.58);background:#86efac3d;color:#dcfce7;font-size:12px;font-weight:700;letter-spacing:0}.line-info-side-actions-service .line-info-side-apply-all:hover:not(:disabled){background:#86efac57;border-color:#86efacbd}.line-info-side-actions-service .line-info-side-apply-all:disabled{opacity:.5;border-color:#86efac4d;background:#86efac24}.line-info-routing-icon-btn{width:32px;height:32px;border-radius:999px;border:1px solid #52525b;background:#27272a;color:#fff;font-size:16px;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .15s ease,border-color .15s ease}.line-info-routing-icon-btn .line-info-routing-act-svg{display:block;pointer-events:none}.line-info-routing-icon-btn:hover{border-color:#71717a;background:#3f3f46}.line-info-routing-icon-btn-add{color:#86efac}.line-info-routing-icon-btn-del{color:#fca5a5}.line-info-express-stops{display:flex;flex-direction:column;gap:8px;margin-bottom:6px;max-height:220px;overflow-y:auto}.line-info-express-row{display:flex;align-items:center;gap:8px}.line-info-express-row .line-info-side-select{flex:1;min-width:0}.line-info-express-toolbar{display:flex;justify-content:flex-end;margin-top:4px;margin-bottom:4px}.line-info-express-icon-btn{flex-shrink:0;width:auto;height:auto;min-width:0;padding:2px 4px;border:none;border-radius:0;background:transparent;box-shadow:none;color:#d4d4d8;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;opacity:.92;transition:color .12s ease,opacity .12s ease}.line-info-express-icon-btn:hover{color:#fff;opacity:1;background:transparent;border:none}.line-info-express-icon-btn .line-info-express-act-svg{display:block;pointer-events:none}.line-info-express-row .line-info-express-icon-btn-del{margin-left:2px;color:#fca5a5}.line-info-express-row .line-info-express-icon-btn-del:hover{color:#fecaca}.line-info-side-actions-express{justify-content:space-between;gap:8px}.line-info-side-actions-express .line-info-side-icon-btn{width:40px;height:40px;padding:0;border-radius:999px;border:1px solid rgba(113,113,122,.9);background:#18181be6;color:#f4f4f5;display:inline-flex;align-items:center;justify-content:center;flex:0 0 40px;transition:background .15s ease,border-color .15s ease,opacity .15s ease,transform .15s ease}.line-info-side-actions-express .line-info-side-icon-btn:hover:not(:disabled){background:#27272af2;border-color:#a1a1aaf2;transform:translateY(-1px)}.line-info-side-actions-express .line-info-side-icon{display:block;pointer-events:none}.line-info-side-actions-express .line-info-express-disable-btn{flex:1;min-width:0;height:40px;padding:0 12px;border-radius:999px;border:1px solid rgba(248,113,113,.5);background:#ef444447;color:#fecaca;font-size:12px;font-weight:700;letter-spacing:0}.line-info-side-actions-express .line-info-express-disable-btn:hover:not(:disabled){background:#ef44446b;border-color:#f87171b8;color:#fff}.line-info-routing-legs{display:flex;flex-direction:column;gap:14px;margin-bottom:8px;max-height:min(48vh,320px);overflow-y:auto}.line-info-route-leg{padding:10px 10px 8px;border-radius:12px;border:1px solid rgba(82,82,91,.65);background:#18181b8c}.line-info-route-leg-title{font-size:12px;font-weight:700;color:#f4f4f5;margin-bottom:8px}.line-info-route-leg-row{display:flex;align-items:center;gap:8px;margin-bottom:8px}.line-info-route-leg-row:last-child{margin-bottom:0}.line-info-route-leg-row .line-info-side-lbl{flex:0 0 36px;margin:0;font-size:11px;color:#a1a1aa}.line-info-route-leg-row .line-info-side-select{flex:1;min-width:0}.line-info-route-leg-row .line-info-side-select:disabled{opacity:.55;cursor:not-allowed;color:#71717a;background:#27272ad9;border-color:#3f3f46}.line-info-routing-toolbar{display:flex;justify-content:flex-end;gap:8px;margin-bottom:4px}#line-info-cap-target-wrap{margin:0 0 8px;padding:0 24px}#line-info-cap-target-wrap .line-info-side-lbl{margin-bottom:6px}#line-info-cap-target-wrap .line-info-side-select{padding:6px 10px;font-size:12px}@media(max-width:768px){.line-info-side-stack{inset:auto 8px 88px;width:auto;max-height:min(42vh,320px)}}.ti-row{display:flex;justify-content:space-between;margin-bottom:6px;font-size:11px}.ti-l{color:var(--t3)}.ti-v{color:var(--t1);font-weight:500}.sec-lbl{font-size:7px;color:var(--t4);letter-spacing:2px;text-transform:uppercase;margin:9px 0 5px}.pax-bar-bg{height:2px;background:var(--bg4);margin:5px 0 8px}.pax-bar-fill{height:2px;background:var(--t2);transition:width .3s}.ctrl-row{display:flex;gap:3px;margin-bottom:7px}.ctrl-btn{flex:1;padding:4px;background:transparent;border:1px solid var(--bd3);color:var(--t4);font-size:8px;cursor:pointer;transition:all .12s;text-align:center;border-radius:10px;box-shadow:0 1px 2px #0003}.ctrl-btn:hover,.ctrl-btn.on{border-color:var(--t3);color:var(--t2);background:var(--bg3);box-shadow:0 2px 4px #00000040}#notif-box{position:fixed;top:16px;right:16px;z-index:10060;display:flex;flex-direction:column;gap:4px;align-items:flex-end;pointer-events:none;visibility:visible;opacity:1;transform:none;min-width:0;min-height:0}#notif-box .notif{pointer-events:auto;flex-shrink:0}body.flow-dashboard-open #notif-box{visibility:hidden!important;pointer-events:none!important}.notif{padding:7px 10px;background:#fff;border-radius:0;border-left:3px solid #ef4444;font-size:11px;line-height:1.25;color:#111827;box-shadow:0 8px 20px #0f172a40;max-width:220px;animation:nIn .2s ease}.notif-compact{width:min(320px,calc(100vw - 32px));min-width:min(180px,calc(100vw - 32px));box-sizing:border-box}.notif-main{display:flex;align-items:flex-start;gap:8px;cursor:default}.notif-text{flex:1;min-width:0;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2}.notif-actions{display:flex;align-items:center;gap:6px;padding-top:1px}.notif-more{font-size:12px;line-height:1;color:#dc2626;font-weight:700;min-width:20px;text-align:right}.notif-toggle{border:none;background:transparent;color:#111827;font-size:12px;line-height:1;padding:0;cursor:pointer}.notif-list{margin-top:8px;padding-top:8px;border-top:1px solid rgba(17,24,39,.15);display:flex;flex-direction:column;gap:6px;max-height:180px;overflow:auto}.notif-item{font-size:12px;line-height:1.35;color:#374151}@keyframes nIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.nav-tooltip{position:fixed;z-index:3100;padding:4px 8px;background:#000000e6;border:1px solid rgba(255,255,255,.15);border-radius:4px;font-size:9px;color:#fff;white-space:nowrap;pointer-events:none;animation:navTipIn .15s ease}@keyframes navTipIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.nav-add-line-menu{position:fixed;z-index:3200;min-width:168px;padding:6px;border-radius:14px;border:1px solid rgba(255,255,255,.14);background:#0f172af5;box-shadow:0 12px 32px #00000073,0 0 0 1px #ffffff0a;display:none;flex-direction:column;gap:4px;animation:navTipIn .15s ease}.nav-add-line-menu-item{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;padding:10px 12px;border:none;border-radius:10px;background:transparent;color:#f9fafb;cursor:pointer;text-align:left;transition:background .12s ease,color .12s ease}.nav-add-line-menu-item:hover,.nav-add-line-menu-item:focus-visible{background:#ffffff14;outline:none}.nav-add-line-menu-label{font-size:13px;font-weight:600;line-height:1.2}.nav-add-line-menu-desc{font-size:10px;line-height:1.3;color:#e2e8f0b8}#pax-canvas{position:fixed;inset:0;pointer-events:none;z-index:500}#peak-bar{position:fixed;left:0;top:0;right:0;height:2px;z-index:999;background:transparent;transition:background .5s}#peak-bar.peak{background:#c8973a80}#peak-bar.offpeak{background:#4a9e6a4d}.map-interactive:focus{outline:none}::-webkit-scrollbar{width:3px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--bd3);border-radius:2px}#mode-badge{position:fixed;left:50%;bottom:88px;transform:translate(-50%);z-index:1001;background:#080808e6;border:1px solid var(--bd3);padding:4px 12px;font-size:9px;color:var(--t3);letter-spacing:1px;display:none}#mode-badge.show{display:block}#tutorial-overlay{position:fixed;inset:0;z-index:12000;pointer-events:none;display:flex;align-items:center;justify-content:center}#tutorial-overlay.show{display:flex}#tutorial-backdrop{position:absolute;inset:0;background:transparent;pointer-events:none}#tutorial-card{position:fixed;max-width:320px;padding:1rem 1.25rem;border-radius:8px;box-shadow:0 4px 20px #0006;background:var(--bg3);color:var(--t1);pointer-events:auto;z-index:12001}#tutorial-card .tutorial-card-title{font-size:1rem;font-weight:700;margin-bottom:8px}#tutorial-card .tutorial-card-body{font-size:13px;line-height:1.5;color:var(--t2);margin-bottom:14px}#tutorial-card .tutorial-card-actions{display:flex;gap:8px;flex-wrap:wrap}#tutorial-card .tutorial-btn{padding:6px 12px;font-size:12px;border:1px solid var(--bd2);background:var(--bg4);color:var(--t1);border-radius:4px;cursor:pointer}#tutorial-card .tutorial-btn:hover{background:var(--bd2)}#tutorial-card .tutorial-btn-primary{background:var(--accent);border-color:var(--accent);color:#fff}#tutorial-card .tutorial-btn-primary:hover{opacity:.9}#tutorial-card .tutorial-btn-skip{color:var(--t3)}#tutorial-card.arrow-bottom:before{content:"";position:absolute;left:50%;bottom:-8px;margin-left:-8px;border:8px solid transparent;border-top-color:var(--bg3)}#tutorial-card.arrow-top:before{content:"";position:absolute;left:50%;top:-8px;margin-left:-8px;border:8px solid transparent;border-bottom-color:var(--bg3)}#tutorial-card .tutorial-btn[disabled]{opacity:.7;cursor:not-allowed}.tutorial-highlight{outline:3px solid var(--accent);outline-offset:2px;position:relative;z-index:10}#tutorial-card .tutorial-key{display:inline-block;padding:3px 10px;margin-right:6px;border-radius:6px;background:var(--bg4);border:1px solid var(--bd2);font-size:12px;font-weight:700;font-family:inherit;color:var(--t1)}#tutorial-card .tutorial-shortcut-row{margin-bottom:8px;line-height:1.5}#tutorial-card .tutorial-shortcut-row:last-child{margin-bottom:0}#panel-station .flex{display:flex}#panel-station .flex-1{flex:1}#panel-station .flex-col{flex-direction:column}#panel-station .flex-shrink-0{flex-shrink:0}#panel-station .justify-between{justify-content:space-between}#panel-station .items-start{align-items:flex-start}#panel-station .items-center{align-items:center}#panel-station .items-baseline{align-items:baseline}#panel-station .space-x-1>*+*{margin-left:.25rem}#panel-station .space-x-2>*+*{margin-left:.5rem}#panel-station .space-y-2>*+*{margin-top:.5rem}#panel-station .space-y-4>*+*{margin-top:1rem}#panel-station .text-xs{font-size:.75rem}#panel-station .text-sm{font-size:.875rem}#panel-station .text-base{font-size:1rem}#panel-station .text-xl{font-size:1.25rem;line-height:1}#panel-station .leading-none{line-height:1}#panel-station .font-medium{font-weight:500}#panel-station .font-semibold{font-weight:600}#panel-station .text-gray-400{color:var(--text-muted,#a0a0a0)}#panel-station .text-gray-500{color:#6b7280}#panel-station .text-gray-300{color:#d1d5db}#panel-station .text-white{color:#fff}#panel-station .text-green-500{color:var(--highlight-green,#34C759)}#panel-station .hover\:text-white:hover{color:#fff}#panel-station .mr-1{margin-right:.25rem}#panel-station .mr-2{margin-right:.5rem}#panel-station .mb-1{margin-bottom:.25rem}#panel-station .mb-2{margin-bottom:.5rem}#panel-station .mb-3{margin-bottom:.75rem}#panel-station .mb-4{margin-bottom:1rem}#panel-station .mt-2{margin-top:.5rem}#panel-station .py-3{padding-top:.75rem;padding-bottom:.75rem}#panel-station .pb-4{padding-bottom:1rem}#panel-station .px-1{padding-left:.25rem;padding-right:.25rem}#panel-station .text-right{text-align:right}#panel-station .block{display:block}#panel-station .hidden{display:none}#panel-station .relative{position:relative}#panel-station .h-28{height:7rem}#panel-station .h-full{height:100%}#panel-station .w-full{width:100%}#panel-station .bg-gray-700{background-color:#374151}#panel-station .rounded-lg{border-radius:.5rem}#panel-station .overflow-hidden{overflow:hidden}#panel-station .border{border-width:1px}#panel-station .border-gray-600{border-color:#4b5563}#panel-station .station-train-eta-min,#panel-station .station-train-eta-kind,#panel-station .station-waiting-count,#panel-station .occupancy-display{color:#d4d4d8}#panel-station .station-train-dir-list{gap:0}#panel-station .station-train-dir-block{display:flex;flex-direction:column;gap:6px;margin-bottom:16px;padding-bottom:2px}#panel-station .station-train-dir-block:last-child{margin-bottom:0}#panel-station .station-train-dir-top{font-weight:700;color:#f4f4f5;line-height:1.35}#panel-station .station-train-dir-bottom{display:grid;grid-template-columns:4.5em 2.25em minmax(0,1fr) 9.5ch;column-gap:.4em;align-items:baseline;margin-top:2px;min-width:0}#panel-station .station-train-eta-min{white-space:nowrap;text-align:left;font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}#panel-station .station-train-eta-kind{white-space:nowrap;font-weight:600;text-align:left}#panel-station .station-waiting-count{white-space:nowrap;text-align:right;justify-self:end;min-width:0;font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}#panel-station .occupancy-display{white-space:nowrap;justify-self:end;text-align:right;font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}:root{--bg-dark: #1A1A1A;--panel-bg: #222222;--section-bg: #2A2A2A;--text-light: #E0E0E0;--text-heading: #FFFFFF;--text-muted: #A0A0A0;--border-dark: #3A3A3A;--accent-blue: #007AFF;--accent-blue-hover: #005BC0;--highlight-green: #34C759;--accent-red: #FF3B30;--accent-yellow: #FFD60A}#panel-station .panel-container{font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:#252628;color:var(--text-light);width:100%;max-width:100%;height:92vh;overflow-y:auto;position:relative;border-radius:16px;border:1px solid rgba(255,255,255,.13);box-shadow:0 12px 34px #0000006b,inset 0 1px #ffffff0d;display:flex;flex-direction:column;box-sizing:border-box;--station-panel-title-font-size: 1rem;--station-panel-content-font-size: .8125rem}#panel-station #panel-station-flow-adjust{display:block;border-top:1px solid rgba(255,255,255,.13);padding-top:10px}#panel-station #panel-station-flow-adjust .poptravel-header{position:relative;padding:0 0 8px;color:#f9fafb;background:transparent}#panel-station #panel-station-flow-adjust .poptravel-title{font-size:var(--station-panel-title-font-size);font-weight:600}#panel-station #panel-station-flow-adjust .poptravel-body{padding:4px 0 2px;color:#e5e7eb;font-size:12px}#panel-station-flow-adjust .poptravel-desc{font-size:var(--station-panel-content-font-size);color:#9ca3af;margin-bottom:10px;line-height:1.45}.station-flow-adj-section{margin-top:10px}.station-flow-adj-section:first-of-type{margin-top:0}.station-flow-adj-section-title{font-size:var(--station-panel-content-font-size);color:#e5e7eb;margin-bottom:6px;font-weight:650}.station-flow-adj-chart-wrap{position:relative;border-radius:8px;overflow:hidden;border:1px solid rgba(255,255,255,.1);background:#303133}#station-flow-adj-canvas-in,#station-flow-adj-canvas-out{display:block;width:100%;height:auto;vertical-align:top}.station-flow-adj-chart-wrap canvas{touch-action:none;user-select:none}.station-flow-adj-axis{display:flex;justify-content:space-between;padding:4px 2px 0;font-size:10px;color:#6b7280}.station-flow-adj-actions{display:flex;align-items:center;gap:8px;margin-top:12px;flex-wrap:wrap;justify-content:flex-end}.station-flow-adj-icon-btn{width:28px;height:28px;padding:0;border-radius:999px;border:1px solid rgba(31,41,55,.7);background:#0f172ab3;cursor:pointer;color:#f9fafbeb;display:flex;align-items:center;justify-content:center;transition:background .16s ease-out,border-color .16s ease-out,color .16s ease-out;flex:0 0 auto}.station-flow-adj-icon-btn:hover{border-color:#f9fafbe6;background:#0f172af2;color:#fff}.station-flow-adj-icon-btn.is-active{border-color:#38bdf8f2;background:#0c4a6e8c;color:#fff}.station-flow-adj-delta{position:absolute;top:14px;right:14px;padding:4px 8px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.2px;background:#00000073;border:1px solid rgba(255,255,255,.08);color:#f9fafb;display:none;pointer-events:none;z-index:2}.station-flow-adj-delta.pos{color:#86efacfa}.station-flow-adj-delta.neg{color:#ff5c5c}.station-flow-adj-bar-tip{position:absolute;top:6px;left:8px;right:auto;z-index:2;padding:2px 6px;border-radius:999px;font-size:10px;font-weight:700;letter-spacing:.2px;background:#0000008c;border:1px solid rgba(255,255,255,.08);color:#f9fafb;display:none;pointer-events:none}.station-flow-adj-bar-tip.pos{color:#86efacfa}.station-flow-adj-bar-tip.neg{color:#ff5c5c}#panel-station #panel-station-flow-adjust.is-disabled{opacity:.5}#panel-station #panel-station-flow-adjust.is-disabled canvas{pointer-events:none}#panel-station .panel-container{scrollbar-width:none;-ms-overflow-style:none}#panel-station .panel-container::-webkit-scrollbar{width:0;height:0;background:transparent}#panel-station .station-name-input-wrap{position:relative;padding-right:34px}#panel-station .form-input{height:40px;padding:0;border:none!important;border-bottom:1px solid rgba(255,255,255,.32)!important;border-radius:0;-webkit-appearance:none;appearance:none;background:transparent!important;background-color:transparent!important;color:#f7f7f8;letter-spacing:0;box-sizing:border-box;box-shadow:none}#panel-station .form-input:focus{background:transparent!important;background-color:transparent!important;border-bottom-color:#ffffffa8!important;box-shadow:none}#panel-station .form-input:hover,#panel-station .form-input:active,#panel-station .form-input:-webkit-autofill{background:transparent!important;background-color:transparent!important;box-shadow:none!important}#panel-station .station-name-en-input-wrap .station-name-en-input{color:#b8bec9}#panel-station .station-name-en-input-wrap .station-name-en-input::placeholder{color:#858b96}#panel-station .station-name-refresh-btn{position:absolute;right:4px;top:50%;transform:translateY(-50%);width:24px;height:24px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:#333436;color:#d7dce3;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease}#panel-station .station-name-refresh-btn svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}#panel-station .station-name-refresh-btn:hover{color:#fff;border-color:#ffffff59;background:#3d3e41}#panel-station .station-name-refresh-btn:disabled{opacity:.6;cursor:default}#panel-station .station-name-refresh-btn.is-loading svg{animation:station-name-spin .8s linear infinite}@keyframes station-name-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}#panel-station .station-header-lines{display:none}#panel-station .station-header-lines.is-empty{min-height:0}#panel-station .station-header-lines-page{display:flex;align-items:center;gap:6px;width:100%;white-space:nowrap}#panel-station .station-header-line-chip{display:inline-flex;align-items:center;justify-content:center;height:20px;padding:0 8px;font-size:11px;font-weight:700;line-height:1;color:#111827;white-space:nowrap;flex-shrink:0;border-radius:4px;border:none}#panel-station .station-header-line-chip-num{min-width:20px;padding:0 6px}.interactive-btn{background-color:transparent;border:none;padding:6px 10px;border-radius:6px;font-size:.8rem;color:var(--text-muted);transition:background-color .2s ease,color .2s ease,transform .2s ease}.interactive-btn:hover{background-color:#333;color:var(--text-heading);transform:translateY(-1px)}.status-dot{width:9px;height:9px;border-radius:50%;background-color:var(--highlight-green);box-shadow:0 0 6px #34c75999;animation:pulse-dot 2s infinite alternate}@keyframes pulse-dot{0%{transform:scale(.9);opacity:.7}50%{transform:scale(1.1);opacity:1}to{transform:scale(.9);opacity:.7}}@keyframes fade-in-up{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.occupancy-number{animation:fade-in-up .5s ease-out forwards;display:inline-block}.line-indicator-block{display:inline-flex;align-items:center;justify-content:center;padding:4px 8px;border-radius:6px;color:var(--text-heading);font-weight:600;min-width:55px;text-align:center;font-size:.9rem;height:28px}.line-1-bg{background-color:var(--accent-red)}.line-2-bg{background-color:var(--accent-blue)}#panel-station .station-setting-row{display:flex;align-items:center;justify-content:space-between;gap:10px}#panel-station .station-settings-list{display:flex;flex-direction:column;gap:10px}#panel-station .station-setting-transfer-block{display:none}#panel-station .station-transfer-mode-rows{display:flex;flex-direction:column;gap:8px}#panel-station .station-transfer-mode-row{display:flex;align-items:center;justify-content:space-between;gap:10px}#panel-station .station-transfer-line-pairs{display:inline-flex;align-items:center;gap:4px;min-width:60px;flex-shrink:0}#panel-station .station-transfer-link{font-size:10px;color:#71717a;line-height:1}#panel-station .station-line-chip{display:inline-flex;align-items:center;justify-content:center;height:14px;min-width:14px;padding:0 4px;border-radius:0;border:none;font-size:9px;font-weight:700;line-height:1;color:#000;white-space:nowrap;box-sizing:border-box;flex-shrink:0}#panel-station .station-line-chip-num{width:14px;padding:0}#panel-station .station-setting-label{flex-shrink:0;font-size:var(--station-panel-content-font-size);color:var(--text-muted);letter-spacing:.01em}#panel-station .section-block>h2{font-size:var(--station-panel-title-font-size);font-weight:600}#panel-station .station-setting-label-row{display:flex;align-items:center;justify-content:space-between;gap:8px}#panel-station .station-transfer-clear-all-btn{appearance:none;border:1px solid rgba(239,68,68,.55);background:#7f1d1d2e;color:#fecaca;font-size:11px;line-height:1;padding:5px 8px;border-radius:6px;cursor:pointer;white-space:nowrap}#panel-station .station-transfer-clear-all-btn:hover{border-color:#fca5a5e6;background:#7f1d1d52;color:#fee2e2}#panel-station .station-icon-group{display:inline-flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:nowrap}#panel-station .station-icon-option{width:28px;height:28px;padding:0;border-radius:999px;border:1px solid rgba(255,255,255,.12);background:#303133;cursor:pointer;color:#f9fafbe6;display:inline-flex;align-items:center;justify-content:center;transition:background .16s ease-out,border-color .16s ease-out,color .16s ease-out;user-select:none}#panel-station .station-icon-option:hover{border-color:#f9fafbe6;background:#3a3b3e;color:#fff}#panel-station .station-icon-glyph{width:17px;height:17px;display:inline-flex;align-items:center;justify-content:center}#panel-station .station-icon-glyph svg{width:17px;height:17px;display:block;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}#panel-station .station-icon-glyph svg .station-icon-fill{stroke:none;fill:currentColor}#panel-station input[type=radio].hidden:checked+.station-icon-option{border-color:#f9fafbf2;background:#2f3844;color:#fff}#panel-station .station-icon-option.is-selected{border-color:#f9fafbf2;background:#2f3844;color:#fff}#panel-station .station-icon-option-static{-webkit-appearance:none;appearance:none}#panel-station input[type=radio].hidden:focus-visible+.station-icon-option{box-shadow:0 0 0 2px #ffffff3d}#panel-station .station-icon-option-static:focus-visible{box-shadow:0 0 0 2px #ffffff3d}.traffic-bar{transition:transform .15s ease,filter .15s ease;border-radius:2px;height:100%}.traffic-bar.peak{opacity:1}.traffic-bar:hover{transform:scaleY(1.05);filter:brightness(1.15)}#panel-station .traffic-overview-block{padding-bottom:1.25rem}#panel-station .traffic-overview-title{font-size:var(--station-panel-title-font-size);font-weight:600;color:#f4f4f5;margin:0 0 .25rem;letter-spacing:.02em}#panel-station .traffic-overview-subtitle{font-size:var(--station-panel-content-font-size);color:#a1a1aa;margin:0 0 .75rem}#panel-station .traffic-charts-card{background:transparent;border:none;border-radius:0;padding:.25rem 0 0;display:flex;flex-direction:column;gap:.75rem}#panel-station .traffic-chart-unit{display:flex;flex-direction:column;gap:.35rem}#panel-station .traffic-chart-header{display:flex;align-items:center;gap:.4rem}#panel-station .traffic-chart-dot{width:6px;height:6px;border-radius:50%}#panel-station .traffic-chart-dot-in,#panel-station .traffic-chart-dot-total{background:#3b82f6;box-shadow:0 0 8px #3b82f666}#panel-station .traffic-chart-dot-transfer{background:#a855f7;box-shadow:0 0 8px #a855f759}#panel-station .traffic-chart-name{font-size:var(--station-panel-content-font-size);font-weight:600;color:#d4d4d8}#panel-station .traffic-chart-canvas{height:48px;display:flex;align-items:flex-end;justify-content:space-between;gap:2px}#panel-station .traffic-axis{display:flex;justify-content:space-between;margin-top:.5rem;padding:0 2px;font-size:.6875rem;color:#71717a;letter-spacing:.02em}#panel-station .traffic-bar-wrap{flex:1;min-width:0;max-width:24px;height:100%;display:flex;align-items:flex-end;position:relative}#panel-station .traffic-bar.traffic-bar-total{background:#3b82f6!important;border-radius:3px 3px 0 0;min-height:6px;box-shadow:0 -1px #00000026}#panel-station .traffic-bar.traffic-bar-transfer{background:#a855f7!important;border-radius:3px 3px 0 0;min-height:6px;box-shadow:0 -1px #00000026}#panel-station .traffic-tooltip{position:fixed;z-index:9999;padding:6px 10px;font-size:12px;line-height:1.35;color:#fafafa;background:#2a2b2dfa;border:1px solid rgba(255,255,255,.16);border-radius:6px;box-shadow:0 4px 12px #0006;pointer-events:none;opacity:0;transform:translate(-50%);transition:opacity .12s ease,transform .12s ease;white-space:nowrap}#panel-station .traffic-tooltip.is-visible{opacity:1;transform:translate(-50%,-8px)}#panel-station .traffic-hourly-table-note{margin:.5rem 0 .35rem;font-size:.6875rem;line-height:1.4;color:#71717a}#panel-station .traffic-hourly-table-wrap{margin-top:.25rem;max-height:220px;overflow:auto;border:1px solid rgba(255,255,255,.12);border-radius:8px;background:#303133}#panel-station .traffic-hourly-table{width:100%;border-collapse:collapse;font-size:.6875rem;font-variant-numeric:tabular-nums}#panel-station .traffic-hourly-table th,#panel-station .traffic-hourly-table td{padding:.28rem .45rem;text-align:right;border-bottom:1px solid rgba(63,63,70,.45)}#panel-station .traffic-hourly-table th:first-child,#panel-station .traffic-hourly-table td:first-child{text-align:left;position:sticky;left:0;background:#18181bfa;z-index:1}#panel-station .traffic-hourly-table thead th{position:sticky;top:0;background:#27272afa;color:#a1a1aa;font-weight:600;z-index:2}#panel-station .traffic-hourly-table tfoot td{font-weight:600;color:#e4e4e7;border-bottom:none;background:#27272ad9}#panel-station .traffic-hourly-table tr.is-peak td{color:#fafafa}#panel-station .traffic-hourly-table tr.is-closed td{color:#52525b}#panel-station .section-block{padding:20px;border-bottom:1px solid rgba(255,255,255,.13);background:#252628}#panel-station .section-block:last-child{border-bottom:none}#panel-station .section-block h2{color:var(--text-heading);margin-bottom:1rem}#panel-station .section-block label{color:var(--text-muted)}.flow-error-toast{position:fixed;bottom:92px;left:50%;transform:translate(-50%) translateY(16px);z-index:1015;display:flex;align-items:center;gap:8px;padding:9px 28px 9px 14px;background:#fff;border-radius:999px;box-shadow:0 4px 24px #00000024,0 1px 6px #00000014,0 0 0 1px #0000000d;pointer-events:none;opacity:0;transition:opacity .3s cubic-bezier(.34,1.56,.64,1),transform .3s cubic-bezier(.34,1.56,.64,1);white-space:nowrap;will-change:transform,opacity}.flow-error-toast-close{position:absolute;top:5px;right:8px;width:16px;height:16px;border:none;background:transparent;color:#64748b;font-size:14px;line-height:16px;padding:0;cursor:pointer;border-radius:999px;transition:background .15s,color .15s}.flow-error-toast-close:hover{background:#64748b29;color:#334155}.flow-error-toast[aria-hidden=false]{opacity:1;transform:translate(-50%) translateY(0);pointer-events:auto}.flow-error-toast-text{font-size:13px;font-weight:500;color:#1e293b;letter-spacing:.01em;line-height:1}.flow-error-toast-btn{padding:6px 14px;font-size:12px;font-weight:600;letter-spacing:.05em;color:#fff;background:#1e293b;border:none;border-radius:999px;cursor:pointer;flex-shrink:0;line-height:1;transition:background .15s,transform .12s,opacity .15s}.flow-error-toast-btn:hover:not(:disabled){background:#334155;transform:scale(1.05)}.flow-error-toast-btn:active:not(:disabled){transform:scale(.96)}.flow-error-toast-btn:disabled{opacity:.55;cursor:wait}
