@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-sans-latin-ext-400-normal-BtiwyxMk.woff2)format("woff2"),url(/assets/dm-sans-latin-ext-400-normal-BjWJ59Pq.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-sans-latin-400-normal-CW0RaeGs.woff2)format("woff2"),url(/assets/dm-sans-latin-400-normal-BwCSEQnW.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/dm-sans-latin-ext-500-normal-BJfUCQsA.woff2)format("woff2"),url(/assets/dm-sans-latin-ext-500-normal-DR84L5F-.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/dm-sans-latin-500-normal-B9HHJjqV.woff2)format("woff2"),url(/assets/dm-sans-latin-500-normal-Dr3UlScf.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/dm-sans-latin-ext-600-normal-4vooXBpG.woff2)format("woff2"),url(/assets/dm-sans-latin-ext-600-normal-DRtaDpgU.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/dm-sans-latin-600-normal-Aqo67rzb.woff2)format("woff2"),url(/assets/dm-sans-latin-600-normal-BmdmIIQ2.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/dm-sans-latin-ext-700-normal-CJIcxD6K.woff2)format("woff2"),url(/assets/dm-sans-latin-ext-700-normal-BLI3TTWz.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/dm-sans-latin-700-normal-DvUfVpUG.woff2)format("woff2"),url(/assets/dm-sans-latin-700-normal-CUSSCpQX.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-xuaO2J-f.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-DMdlQ8Kv.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-400-normal-BSMlKf0J.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-400-normal-CEL4l2ZJ.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-vietnamese-400-normal-BulugwFq.woff2)format("woff2"),url(/assets/ibm-plex-mono-vietnamese-400-normal-DDuiU_S-.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-ext-400-normal-BmRBH3aV.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-400-normal-D3D2R8hC.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BqneJy0T.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BIfNGwUT.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-500-normal-Bq9vWWag.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-500-normal-Ael50iVv.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-vietnamese-500-normal-DZ4AoWbu.woff2)format("woff2"),url(/assets/ibm-plex-mono-vietnamese-500-normal-C8zxqsMH.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-ext-500-normal-CAhNIIs5.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-500-normal-CZ70TYgx.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}*{box-sizing:border-box}body{background:#fff;margin:0}button,input{font:inherit}button{color:inherit;cursor:pointer;background:0 0;border:0}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible{outline-offset:3px;outline:2px solid #1747b1}button,a,input{-webkit-tap-highlight-color:transparent}input{min-width:0}svg{font-family:inherit}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}.rail-filters{gap:3px;display:flex}.rail-filters button{color:#7b8794;border-radius:4px;gap:9px;padding:7px 10px;font-size:11px;display:flex}.rail-filters button.active{color:#172a3c;background:#eaf0f5}.rail-filters button span{opacity:.7;font:10px IBM Plex Mono,monospace}.rail-search{border:1px solid #e1e7eb;border-radius:5px;align-items:center;gap:8px;width:208px;height:30px;margin-left:auto;padding:0 9px;display:flex}.rail-search>span{color:#98a4af;font-size:21px}.rail-search input{color:#26394b;background:0 0;border:0;outline:none;width:100%;font-size:11px}.rail-search input::placeholder{color:#94a0ab}.rail-search button{color:#94a0ab;padding:0;font-size:18px}.rail-surface{touch-action:none;background:#fff;flex:1;min-height:0;position:relative;overflow:hidden}.rail-map{cursor:grab;-webkit-user-select:none;user-select:none;display:block}.rail-map:active{cursor:grabbing}.rail-map [data-route-track]{cursor:pointer}.rail-station{cursor:pointer;outline:none}.rail-station:focus-visible>circle{stroke:#1747b1;stroke-width:2px}.rail-ticket-name{fill:#273748;letter-spacing:-.1px;font-size:13px;font-weight:600}.rail-ticket-meta{fill:#9aa3ad;letter-spacing:.3px;font-family:IBM Plex Mono,monospace;font-size:8px;font-weight:400}.rail-ticket-meta.blocked{fill:#c24436}.rail-ticket-meta.active{fill:#3973a8}.rail-ticket-meta.review{fill:#9f7c2b}.all-gate text{letter-spacing:.3px;fill:#606a76;font:8px IBM Plex Mono,monospace}.rail-zoom{background:#fff;border:1px solid #e1e7eb;border-radius:5px;align-items:center;height:33px;display:flex;position:absolute;top:20px;right:25px;box-shadow:0 2px 10px #152b4010}.rail-zoom button{color:#577087;width:33px;height:31px;padding:0;font-size:19px}.rail-zoom span{text-align:center;color:#95a3af;width:40px;font:9px IBM Plex Mono,monospace}.floating-panel{z-index:3;touch-action:pan-y;background:#fff;border:1px solid #dce3e8;border-radius:8px;position:absolute;box-shadow:0 8px 30px #1d3c5514}.panel-heading{align-items:center;gap:10px;font-size:12px;display:flex}.panel-heading button{color:#91a0ad;margin-left:auto;padding:0;font-size:21px}.panel-heading small{color:#9aa5b0;font:9px IBM Plex Mono,monospace}.panel-heading strong span{color:#9aa5b0;margin-left:6px;font:10px IBM Plex Mono,monospace}.independent-panel{width:290px;max-height:65%;padding:18px;top:66px;right:25px}.independent-panel>p{color:#8797a5;margin:8px 0 12px;font-size:10px;line-height:1.6}.independent-list{scrollbar-width:thin;max-height:360px;overflow:auto}.independent-list>button{text-align:left;border-top:1px solid #edf0f3;align-items:start;gap:9px;width:100%;padding:12px 0;font-size:11px;line-height:1.5;display:flex}.independent-list i{border-radius:50%;flex-shrink:0;width:5px;height:5px;margin-top:5px}.independent-list span{flex:1}.independent-list small{color:#9cabb7;margin-top:4px;font:8px IBM Plex Mono,monospace;display:block}.independent-list>p{color:#8797a5;font-size:11px}.rail-detail{max-height:48%;padding:19px 22px;bottom:18px;left:26px;right:26px;overflow:auto}.condition{color:#5c768b;background:#ecf1f5;border-radius:3px;padding:4px 7px;font-size:10px}.condition.blocked{color:#b94635;background:#faeae6}.rail-detail h2{letter-spacing:-.3px;margin:11px 0 16px;font-size:18px;font-weight:600;line-height:1.4}.detail-grid{grid-template-columns:1.2fr 1fr 1fr;gap:27px;display:grid}.detail-grid>div+div{border-left:1px solid #e9edf1;padding-left:24px}.detail-description>p{color:#8395a5;margin:0;font-size:11px;line-height:1.7}.detail-grid h3{color:#7e91a2;justify-content:space-between;margin:0 0 5px;font-size:10px;font-weight:500;display:flex}.detail-grid h3 span{color:#9aabb9;font:9px IBM Plex Mono,monospace}.relation-row{text-align:left;color:#3d566e;border-bottom:1px solid #edf0f3;align-items:center;gap:8px;width:100%;padding:8px 0;font-size:11px;line-height:1.5;display:flex}.relation-row>span{flex:1}.relation-row small{color:#91a3b1;margin-top:3px;font:8px IBM Plex Mono,monospace;display:block}.relation-row i{border-radius:50%;flex-shrink:0;width:5px;height:5px}.relation-row .satisfied{background:#80a197}.relation-row .unmet{background:#c75543}.no-relation{color:#a3b0ba;font-size:11px;line-height:1.5}.route-summary{gap:17px;max-height:35%;padding:18px 22px;display:flex;bottom:20px;left:27px;right:27px;overflow:auto}.route-summary>button{color:#91a3b1;font-size:23px;position:absolute;top:10px;right:16px}.route-summary>i{border-radius:4px;flex-shrink:0;width:5px}.route-summary h2{margin:0 0 7px;font-size:16px;font-weight:600}.route-summary p{color:#7c91a2;margin:0 0 10px;font-size:11px}.external-prereqs{color:#a08166;margin-top:10px;font-size:10px}.external-prereqs button{color:#b45c46;text-underline-offset:3px;padding:0 0 0 9px;font-size:10px;text-decoration:underline}.rail-empty{color:#8395a5;place-items:center;font-size:13px;display:grid;position:absolute;inset:0}.routes-caption{letter-spacing:.8px;color:#a0adb8;margin-right:10px;font:9px IBM Plex Mono,monospace}.tick-symbol{background:#6c7d8e;width:2px;height:9px}.interchange-symbol{border:1.3px solid #6c7d8e;border-radius:5px;width:7px;height:14px}.join-symbol{border:1.3px solid #6c7d8e;border-radius:50%;width:10px;height:10px}.status-symbol{background:#ce382b;border-radius:50%;width:5px;height:5px}.rail-app{color:#172a3c;background:#fff;flex-direction:column;height:100dvh;min-height:480px;font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;display:flex}.boot{background:#fff;height:100dvh}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.metro-header{z-index:4;background:#fff;border-bottom:1px solid #e5e9ed;flex-shrink:0;align-items:center;gap:18px;height:56px;padding:0 20px;display:flex;position:relative}.brand{flex-shrink:0;align-items:center;gap:9px;display:flex}.brand strong{letter-spacing:-.5px;font-size:16px;font-weight:700}.scope-picker select{appearance:none;color:#172a3c;text-overflow:ellipsis;cursor:pointer;background:#f2f4f6 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%237b8794' stroke-width='1.4'/%3E%3C/svg%3E") right 10px center no-repeat;border:0;border-radius:6px;max-width:300px;height:32px;padding:0 30px 0 12px;font:500 12px DM Sans,sans-serif}.scope-picker select:disabled{cursor:default;opacity:1}.scope-picker select:focus-visible{outline-offset:2px;outline:2px solid #1747b1}.rail-search{width:220px;margin-left:auto}.rail-search kbd{color:#98a4af;border:1px solid #e1e7eb;border-radius:3px;padding:1px 5px;font:9px IBM Plex Mono,monospace}.header-end{flex-shrink:0;align-items:center;gap:12px;display:flex}.sync-chip{color:#6f7f8d;white-space:nowrap;border-radius:5px;align-items:center;gap:7px;padding:6px 8px;font-size:11px;display:flex}.sync-chip:hover:not(:disabled),.sync-chip[aria-expanded=true]{background:#f2f4f6}.sync-chip:disabled{cursor:default}.sync-chip i{background:#80a197;border-radius:50%;flex-shrink:0;width:7px;height:7px}.sync-chip.partial i{background:#c98438}.sync-chip.error i{background:#ce382b}.sync-chip.busy i{background:#2164ab;animation:1s ease-in-out infinite alternate pulse}@keyframes pulse{0%{opacity:.35}to{opacity:1}}.account-button{color:#31495e;background:#e8eef3;border-radius:50%;place-items:center;width:28px;height:28px;padding:0;font-size:12px;font-weight:600;display:grid;overflow:hidden}.account-button img{object-fit:cover;width:100%;height:100%}.notice-bar{color:#6d5520;background:#fbf5e6;border-bottom:1px solid #f0e4c4;flex-shrink:0;align-items:center;gap:10px;padding:8px 20px;font-size:12px;display:flex}.notice-bar.warning{color:#8f3326;background:#fbefec;border-color:#f2d6cf}.notice-bar a,.notice-bar button{text-underline-offset:3px;color:inherit;padding:0;font-weight:600;text-decoration:underline}.rail-station.outside .rail-ticket-name{fill:#7b8a97;font-weight:500}.map-caption{pointer-events:none;color:#6f7f8d;background:#ffffffe8;gap:10px;padding:6px 10px 6px 0;font-size:11px;display:flex;position:absolute;top:16px;left:20px}.map-caption span{color:#9aa5b0;padding-top:1px;font:10px IBM Plex Mono,monospace}.rail-zoom{top:16px;right:20px}.rail-zoom button+button,.rail-zoom span+button{border-left:1px solid #edf0f3}.rail-zoom button.active{color:#172a3c;background:#eaf0f6}.rail-zoom button:last-child{font-size:13px;font-weight:600}.rail-empty{pointer-events:none}.empty-copy{pointer-events:auto;text-align:center;color:#8395a5;flex-direction:column;align-items:center;gap:8px;max-width:420px;font-size:12px;line-height:1.6;display:flex}.empty-copy b{color:#26394b;font-size:15px;font-weight:600}.empty-copy a,.empty-copy button{color:#fff;background:#172a3c;border-radius:6px;margin-top:6px;padding:8px 14px;font-size:12px;font-weight:600;text-decoration:none}.loading-line{background:linear-gradient(90deg,#1f5fae 0 30%,#e8eef3 30% 100%) 0 0/200% 100%;border-radius:2px;width:120px;height:4px;margin-bottom:8px;animation:1.3s linear infinite travel}@keyframes travel{0%{background-position:100% 0}to{background-position:-100% 0}}.lines-strip{z-index:2;scrollbar-width:none;background:linear-gradient(#fff0,#fff 35%);align-items:center;gap:6px;padding:10px 20px 12px;display:flex;position:absolute;bottom:0;left:0;right:0;overflow-x:auto}.lines-strip::-webkit-scrollbar{display:none}.routes-caption{flex-shrink:0;margin:0 4px 0 8px}.lines-strip button{color:#64788b;white-space:nowrap;background:#f5f7f9;border-radius:4px;flex-shrink:0;align-items:center;gap:7px;padding:6px 9px;font-size:10px;display:flex}.lines-strip button.active,.lines-strip button:hover{color:#172a3c;background:#eaf0f6}.lines-strip button.finished{opacity:.55}.lines-strip button>i{background:var(--route);border-radius:1px;flex-shrink:0;width:20px;height:4px}.lines-strip button>small{color:#a1aeb9;font:9px IBM Plex Mono,monospace}.lines-strip .unconnected-button{color:#4f6477;background:#fff;border:1px solid #e1e7eb}.lines-strip .unconnected-button>i{background:#8b8994;border-radius:50%;width:6px;height:6px}.independent-panel{flex-direction:column;max-height:none;display:flex;top:62px;bottom:64px;right:20px}.independent-list{flex:1;max-height:none}.independent-list>button.selected{background:#f2f6fa}.key-panel,.status-panel,.account-panel{width:340px;padding:18px;top:62px;right:20px}.status-panel{max-height:calc(100% - 140px);top:64px;overflow:auto}.account-panel{flex-direction:column;gap:2px;width:260px;display:flex;top:64px}.key-panel ul{gap:10px;margin:12px 0;padding:0;list-style:none;display:grid}.key-panel li{color:#4f6477;align-items:center;gap:10px;font-size:11px;line-height:1.5;display:flex}.key-panel li>i{flex-shrink:0}.key-panel li>i:first-child{margin:0 3px}.key-panel b{font:9px IBM Plex Mono,monospace}.key-panel p,.status-panel p,.account-panel p{color:#8194a5;margin:8px 0;font-size:11px;line-height:1.65}.status-symbol.active{background:#2164ab}.status-symbol.review{background:#a77814}.crossing-symbol{background:linear-gradient(#1f5fae,#1f5fae) 50%/3px 100% no-repeat,linear-gradient(#c64c43,#c64c43) 50%/100% 3px no-repeat;width:14px;height:14px;display:inline-block;position:relative}.facts{gap:6px;margin:12px 0 0;display:grid}.facts>div{gap:10px;font-size:11px;line-height:1.5;display:flex}.facts dt{color:#9aabb9;flex-shrink:0;width:76px}.facts dd{color:#3d566e;overflow-wrap:anywhere;min-width:0;margin:0}.warning-copy{color:#8f6a1f!important}.fine-print{color:#a5b0bb!important;font-size:10px!important}.status-actions{gap:8px;margin:12px 0 4px;display:flex}.status-actions button{color:#fff;background:#172a3c;border-radius:5px;padding:7px 11px;font-size:11px;font-weight:600}.status-actions button+button{color:#172a3c;background:#eaf0f6}.status-actions button:disabled{opacity:.5;cursor:default}.account-who{border-bottom:1px solid #edf0f3;flex-direction:column;gap:2px;margin-bottom:6px;padding-bottom:10px;display:flex}.account-who strong{font-size:13px}.account-who span{color:#8194a5;font-size:11px}.account-panel>a,.account-panel>button{text-align:left;color:#26394b;padding:7px 0;font-size:12px;text-decoration:none}.account-panel>button.danger{color:#b0402f}.rail-detail{z-index:3;bottom:16px;left:20px;right:20px}.condition.active{color:#2164ab;background:#e6eef7}.condition.review{color:#8a6514;background:#f7f0e1}.condition.done{color:#5e7c72;background:#eef3f1}.outside-note{font:9px IBM Plex Mono,monospace;color:#9a7b4f!important}.open-linear{color:#526f86;text-underline-offset:3px;margin-left:auto;font-size:11px}.open-linear+button{margin-left:8px!important}.detail-links{flex-direction:column;gap:0;margin-top:12px}.link-row{color:#3d566e;border-top:1px solid #edf0f3;align-items:baseline;gap:8px;padding:7px 0;font-size:11px;text-decoration:none;display:flex}.link-row:hover .link-title{text-underline-offset:3px;text-decoration:underline}.link-kind{color:#7e91a2;flex-shrink:0;min-width:52px;font:9px IBM Plex Mono,monospace}.link-title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.link-title small{color:#9cabb7;margin-top:2px;font:8px IBM Plex Mono,monospace;display:block}.pr-state{color:#5c768b;background:#ecf1f5;border-radius:3px;flex-shrink:0;padding:2px 6px;font-size:9px;font-weight:600}.pr-state.merged{color:#6f4aa0;background:#efe9f7}.pr-state.inReview,.pr-state.open{color:#2164ab;background:#e6eef7}.pr-state.approved{color:#2f7a52;background:#e7f3ec}.pr-state.changesRequested{color:#b94635;background:#faeae6}.pr-state.closed{color:#85878c;background:#f1f1f2}.pr-state.draft{color:#6c7179;background:#f1f1f2}.route-summary{max-height:42%;bottom:16px;left:20px;right:20px}.route-stops{flex-wrap:wrap;gap:4px 6px;margin:4px 0 0;padding:0;list-style:none;display:flex}.route-stops li{align-items:center;display:flex}.route-stops li+li:before{content:"→";color:#b4c0ca;margin-right:6px;font-size:10px}.route-stops button{color:#3d566e;text-align:left;padding:3px 0;font-size:11px}.route-stops button b{color:#8194a5;font:500 9px IBM Plex Mono,monospace}.route-stops button.done{color:#94a3ae}.route-stops button.blocked b{color:#c24436}.route-stops button.active b{color:#2164ab}.route-stops button.review b{color:#9f7c2b}.route-stops button:hover{text-underline-offset:3px;text-decoration:underline}.sign-in{color:#172a3c;background:#fff;place-items:center;min-height:100dvh;padding:24px;font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;display:grid}.sign-in-card{flex-direction:column;gap:14px;width:min(460px,100%);display:flex}.sign-in-brand{align-items:center;gap:10px;display:flex}.sign-in-brand strong{letter-spacing:-.6px;font-size:19px}.sign-in h1{letter-spacing:-.7px;margin:18px 0 0;font-size:26px;font-weight:600;line-height:1.25}.sign-in p{color:#5d6f80;margin:0;font-size:14px;line-height:1.65}.sign-in-art{width:100%;height:auto;margin:10px 0}.art-text{fill:#606a76;font:8px IBM Plex Mono,monospace}.sign-in-button{color:#fff;background:#172a3c;border-radius:8px;justify-content:center;align-items:center;height:44px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}.sign-in-button:hover{background:#22394f}.sign-in small{color:#8d9aa6;font-size:11px;line-height:1.6}.sign-in-error{background:#fbefec;border-radius:6px;padding:10px 12px;color:#b0402f!important;font-size:13px!important}.sign-in-setup{color:#5d6f80;background:#f5f7f9;border-radius:8px;flex-direction:column;gap:4px;padding:12px;font-size:12px;display:flex}.sign-in-setup b{color:#26394b;font-size:13px}@media (width<=980px){.brand strong{display:none}.rail-search{width:170px}.sync-chip{font-size:10px}.detail-grid{gap:17px}.detail-grid>div+div{padding-left:16px}}@media (width<=720px){.metro-header{flex-wrap:wrap;gap:8px 10px;height:auto;padding:10px 12px}.scope-picker{flex:1;min-width:0}.scope-picker select{width:100%;max-width:none}.header-end{gap:6px}.sync-chip{padding:6px 4px}.rail-filters{order:3}.rail-filters button{gap:6px;padding:6px 8px;font-size:10px}.rail-search{flex:1;order:4;width:auto;min-width:120px;margin-left:0}.rail-search kbd{display:none}.rail-zoom{height:29px;top:12px;right:12px}.rail-zoom button{width:27px;height:27px;font-size:17px}.rail-zoom span{width:34px;font-size:8px}.lines-strip{padding:8px 12px 10px}.rail-detail,.route-summary{max-height:62%;padding:14px;bottom:8px;left:8px;right:8px}.rail-detail h2{margin-bottom:10px;font-size:16px}.detail-grid{grid-template-columns:1fr;gap:12px}.detail-grid>div+div{border-top:1px solid #edf0f3;border-left:0;padding-top:10px;padding-left:0}.independent-panel,.key-panel,.status-panel,.account-panel{width:auto;top:52px;left:8px;right:8px}.independent-panel{bottom:56px}.map-caption{flex-direction:column;gap:2px;max-width:calc(100% - 180px);top:12px;left:12px}}.detail-description>p{white-space:pre-line;max-height:150px;overflow:auto}.lines-strip{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 40px),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 40px),#0000)}.lines-strip .line-origin{color:#8797a5;font-family:DM Sans,sans-serif;font-size:9px}.line-id{color:#8194a5;letter-spacing:.2px;margin-bottom:4px;font:500 9px IBM Plex Mono,monospace;display:block}.line-group{background:#f5f7f9;border-radius:5px;flex-shrink:0;align-items:center;gap:3px;padding:3px 3px 3px 9px;display:flex}.line-group>span{color:#64788b;white-space:nowrap;margin-right:4px;font-size:10px}.lines-strip .line-group button{background:#fff;gap:5px;padding:4px 7px}.lines-strip .line-group button.active,.lines-strip .line-group button:hover{background:#eaf0f6}.lines-strip button.compact>i{width:14px}@media (width<=720px){.sync-text{display:none}.sync-chip{padding:10px 6px}.brand{display:none}}
