@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@300;400;500&family=Inter:wght@400;500;600&display=swap";.london-experience[data-quiet-map=true] .scene canvas{animation:7.3s linear infinite london-quiet-phosphor}.london-experience[data-quiet-map=true] .scene:after{content:"";pointer-events:none;mix-blend-mode:screen;background:linear-gradient(#0000,#89f7ff0e 48%,#ae9fe206 60%,#0000);width:100%;height:25%;animation:12s linear -4s infinite london-quiet-scan;position:absolute;top:-25%;left:0}.london-experience[data-quiet-map=true] .scanlines{opacity:.24;animation:2.4s steps(4,end) infinite london-quiet-raster}.london-experience[data-quiet-playing=false] .scene canvas,.london-experience[data-quiet-playing=false] .scene:after,.london-experience[data-quiet-playing=false] .scanlines{animation-play-state:paused}.london-status-card.is-quiet strong{color:#d1e4e8;font-size:1.35rem;font-weight:400}.london-status-card.is-quiet p{letter-spacing:0;text-transform:none;margin-top:10px;font-size:.65rem}.london-status-card.is-quiet small{white-space:normal;margin-top:6px;font-size:.57rem}@keyframes london-quiet-phosphor{0%,to{filter:brightness()saturate(1.04)}19%{filter:brightness(1.08)saturate(1.08)}37%{filter:brightness(.97)saturate(1.02)}43%{filter:brightness(1.04)saturate(1.06)}47%{filter:brightness(.99)saturate(1.04)}68%{filter:brightness(1.1)saturate(1.09)}84%{filter:brightness(1.02)saturate(1.04)}}@keyframes london-quiet-scan{to{transform:translateY(500%)}}@keyframes london-quiet-raster{to{background-position:0 4px}}@media (prefers-reduced-motion:reduce){.london-experience[data-quiet-map=true] .scene canvas,.london-experience[data-quiet-map=true] .scanlines{animation:none}.london-experience[data-quiet-map=true] .scene:after{display:none}}:root{color:var(--ink);background:var(--background);font-synthesis:none;text-rendering:optimizelegibility;--background:#050410;--ink:#f8f7ff;--muted:#e5e7ff94;--line:#c1ccff33;--cyan:#8dfaff;--pink:#ff5edb;--panel:#07071694;--air:#ff5edb;--road-light:#fff1cf;--road-heavy:#ff9d52;font-family:Inter,ui-sans-serif,system-ui,sans-serif}:where(.motion-study) *{box-sizing:border-box}:where(html.motion-study),:where(.motion-study) body,:where(.motion-study) #root{width:100%;min-width:320px;min-height:100%;margin:0}:where(html.motion-study){overscroll-behavior:none;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}:where(.motion-study) body{min-height:100vh;overflow:hidden}:where(.motion-study) button,:where(.motion-study) input{font:inherit}:where(.motion-study) button{-webkit-tap-highlight-color:transparent}:where(.motion-study) .experience{isolation:isolate;background:var(--background);width:100vw;height:100svh;min-height:600px;position:relative;overflow:hidden}:where(.motion-study) .scene,:where(.motion-study) .atmosphere,:where(.motion-study) .scanlines{position:absolute;inset:0}:where(.motion-study) .scene{z-index:-3}:where(.motion-study) .no-webgl{color:var(--ink);text-align:center;background:radial-gradient(circle at 50% 48%,#215b6c61,#0000 32%),linear-gradient(145deg,#050410,#0b0923);place-content:center;justify-items:center;padding:25vh 24px 18vh;display:grid;position:absolute;inset:0}:where(.motion-study) .no-webgl>span{color:var(--pink);text-shadow:0 0 28px var(--pink);font-size:clamp(2.6rem,8vw,5rem)}:where(.motion-study) .no-webgl h2{max-width:620px;margin:18px 0 8px;font-size:clamp(1.35rem,4vw,2.5rem)}:where(.motion-study) .no-webgl p{max-width:560px;color:var(--muted);line-height:1.55}:where(.motion-study) .no-webgl a,:where(.motion-study) .methodology-link{color:var(--cyan)}:where(.motion-study) .view-network .scene canvas{touch-action:none;cursor:grab;-webkit-user-select:none;user-select:none}:where(.motion-study) .view-network .scene canvas:active{cursor:grabbing}:where(.motion-study) .view-network.has-selection .scene canvas{cursor:default}:where(.motion-study) .atmosphere{z-index:-2;pointer-events:none;background:radial-gradient(circle at 52% 54%,#0000 0 22%,#05041057 68%,#050410 112%),linear-gradient(#070519c7 0%,#0000 23% 70%,#050410e0 100%)}:where(.motion-study) .scanlines{z-index:-1;opacity:.13;pointer-events:none;mix-blend-mode:screen;background:repeating-linear-gradient(#0000 0 3px,#aecbff1f 4px)}:where(.motion-study) .eyebrow,:where(.motion-study) footer{text-transform:uppercase;letter-spacing:.14em;font-family:DM Mono,ui-monospace,monospace}:where(.motion-study) .eyebrow{color:var(--cyan);margin:0 0 5px;font-size:.77rem;font-weight:500}:where(.motion-study) h1{letter-spacing:-.055em;max-width:520px;margin:0;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:clamp(1.75rem,4vw,4.2rem);font-weight:500;line-height:.96}@media (min-width:1100px){:where(.motion-study) h1{max-width:620px}:where(.motion-study) .experience .train-search{top:clamp(164px,20vh,190px)}}:where(.motion-study) .train-search{z-index:8;width:min(540px,100vw - 48px);position:absolute;top:clamp(112px,17vh,158px);left:50%;transform:translate(-50%)}:where(.motion-study) .train-search form{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#070716ad;border:1px solid #c1ccff40;align-items:center;min-height:46px;display:flex;position:relative}:where(.motion-study) .train-search:focus-within form{border-color:#8dfaffa3;box-shadow:0 0 28px #45599c29}:where(.motion-study) .search-mark{border:1px solid var(--cyan);opacity:.8;border-radius:50%;width:14px;height:14px;margin-left:15px;position:relative}:where(.motion-study) .search-mark:after{background:var(--cyan);content:"";width:6px;height:1px;position:absolute;bottom:-3px;right:-5px;transform:rotate(45deg)}:where(.motion-study) .train-search label{flex:1;min-width:0}:where(.motion-study) .train-search input[type=search]{width:100%;min-height:44px;color:var(--ink);appearance:none;background:0 0;border:0;outline:0;padding:0 14px;font-family:DM Mono,ui-monospace,monospace;font-size:.78rem}:where(.motion-study) .train-search input[type=search]::-webkit-search-cancel-button{display:none}:where(.motion-study) .train-search input::placeholder{color:#e5e7ff61}:where(.motion-study) .train-search input:disabled{color:#e5e7ff7a;cursor:default}:where(.motion-study) .clear-search{min-width:42px;min-height:42px;color:var(--muted);background:0 0;border:0;justify-content:center;padding:0;font-size:1.2rem}:where(.motion-study) .clear-search:hover{color:var(--cyan);background:0 0;border:0;transform:none}:where(.motion-study) .search-results{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#060614f0;border:1px solid #c1ccff3d;max-height:min(360px,52vh);position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto}:where(.motion-study) .search-results>button{text-align:left;background:0 0;border:0;border-bottom:1px solid #c1ccff1c;grid-template-columns:10px minmax(86px,auto) 1fr;gap:10px;width:100%;min-height:48px;padding:8px 12px;display:grid}:where(.motion-study) .search-results>button:hover,:where(.motion-study) .search-results>button:focus-visible,:where(.motion-study) .search-results>button.is-active{box-shadow:inset 2px 0 0 var(--cyan);background:#46488c47;transform:none}:where(.motion-study) .search-results>button[aria-selected=true]{color:#fff;box-shadow:inset 4px 0 0 var(--cyan), 0 0 22px #8dfaff1f;background:#46488c7a;transform:none}:where(.motion-study) .search-results p{color:var(--muted);margin:0;padding:16px;font-family:DM Mono,ui-monospace,monospace;font-size:.72rem}:where(.motion-study) .service-legend{color:#e5e7ff80;letter-spacing:.06em;text-transform:uppercase;z-index:2;justify-content:center;gap:8px 16px;max-width:720px;margin:auto;font-family:DM Mono,ui-monospace,monospace;font-size:.61rem;display:flex;position:absolute;bottom:clamp(190px,22vh,225px);left:clamp(24px,4vw,58px);right:clamp(24px,4vw,58px)}:where(.motion-study) .service-legend button{min-height:28px;color:inherit;font-family:inherit;font-size:inherit;letter-spacing:inherit;text-transform:inherit;background:0 0;border-color:#0000;align-items:center;gap:6px;padding:0 8px;display:inline-flex}:where(.motion-study) .service-legend button:hover,:where(.motion-study) .service-legend button[aria-pressed=true]{color:var(--ink);background:#1210309e;border-color:#c1ccff33;transform:none}:where(.motion-study) .service-legend button[aria-pressed=true]{border-color:var(--service-accent,var(--cyan));background:color-mix(in srgb, var(--service-accent,var(--cyan)) 22%, #09081de0);color:#fff;box-shadow:inset 0 -2px 0 var(--service-accent,var(--cyan)), 0 0 24px color-mix(in srgb, var(--service-accent,var(--cyan)) 30%, transparent);text-shadow:0 0 10px color-mix(in srgb, var(--service-accent,var(--cyan)) 58%, transparent)}:where(.motion-study) .service-legend.has-filter button:not([aria-pressed=true]){opacity:.14}:where(.motion-study) .service-legend i{border-radius:50%;width:6px;height:6px;transition:transform .18s,box-shadow .18s;box-shadow:0 0 8px}:where(.motion-study) .service-legend button[aria-pressed=true] i{box-shadow:0 0 4px #fff, 0 0 16px var(--service-accent,var(--cyan));transform:scale(1.45)}:where(.motion-study) input[type=range]{appearance:none;cursor:pointer;background:0 0;width:100%;height:22px;margin:0}:where(.motion-study) input[type=range]:disabled{cursor:wait;opacity:.35}:where(.motion-study) .view-network .atmosphere{background:radial-gradient(circle at 50% 52%,#0000 0 28%,#05041042 72%,#050410 120%),linear-gradient(#070519cc 0%,#0000 21% 72%,#050410e6 100%)}:where(.motion-study) .view-hub .atmosphere{background:radial-gradient(circle at 50% 53%,#0000 0 19%,#0a041b4d 60%,#050410 112%),linear-gradient(#070519d6 0%,#0000 25% 68%,#050410ed 100%)}:where(.motion-study) .has-selection .atmosphere{background:radial-gradient(circle at 55% 53%,#0000 0 18%,#0504103d 58%,#050410 110%),linear-gradient(#070519d6 0%,#0000 22% 68%,#050410eb 100%)}:where(.motion-study) input[type=range]::-webkit-slider-runnable-track{background:linear-gradient(90deg, var(--cyan), #a0afe157);height:1px}:where(.motion-study) input[type=range]::-webkit-slider-thumb{appearance:none;background:var(--pink);width:12px;height:12px;box-shadow:0 0 16px var(--pink);border:2px solid #fff;border-radius:50%;margin-top:-5.5px}:where(.motion-study) button{border:1px solid var(--line);min-height:42px;color:var(--ink);background:var(--panel);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);cursor:pointer;align-items:center;gap:10px;padding:0 13px;font-size:.78rem;transition:border-color .16s,background .16s,transform .16s;display:flex}:where(.motion-study) button:hover{background:#1a1740b8;border-color:#8dfaff9e;transform:translateY(-1px)}:where(.motion-study) button:focus-visible,:where(.motion-study) input:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}:where(.motion-study) kbd{border:1px solid var(--line);color:var(--muted);margin-left:5px;padding:2px 5px;font-family:DM Mono,ui-monospace,monospace;font-size:.58rem}:where(.motion-study) footer a{color:inherit;text-underline-offset:3px;text-decoration-color:#8dfaff59}:where(.motion-study) footer a:hover{color:var(--cyan)}:where(.motion-study) footer{color:#e1e0ff57;justify-content:space-between;font-size:.58rem;display:flex;position:absolute;bottom:22px;left:clamp(24px,4vw,58px);right:clamp(24px,4vw,58px)}:where(.motion-study) .sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (max-width:700px){:where(html.motion-study),:where(.motion-study) body,:where(.motion-study) #root{min-width:0;height:100%;min-height:0;overflow:hidden}:where(.motion-study) .experience{overscroll-behavior:none;height:100dvh;min-height:0}:where(.motion-study) .eyebrow{font-size:.67rem}:where(.motion-study) h1{max-width:148px;font-size:clamp(1.55rem,7vw,1.9rem)}:where(.motion-study) .train-search{top:calc(124px + env(safe-area-inset-top));width:auto;right:calc(16px + env(safe-area-inset-right));left:calc(16px + env(safe-area-inset-left));transform:none}:where(.motion-study) .train-search form{min-height:48px}:where(.motion-study) .search-mark{margin-left:12px}:where(.motion-study) .train-search input[type=search]{min-height:48px;padding-left:10px;padding-right:9px;font-size:1rem}:where(.motion-study) .clear-search{min-width:44px;min-height:44px;padding:0}:where(.motion-study) .search-results>button{grid-template-columns:10px 76px 1fr;min-height:52px}:where(.motion-study) .search-results{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;max-height:min(360px,100dvh - 190px);left:0;right:0}:where(.motion-study) .service-legend{right:calc(16px + env(safe-area-inset-right));bottom:calc(300px + env(safe-area-inset-bottom));left:calc(16px + env(safe-area-inset-left));overscroll-behavior-x:contain;scrollbar-width:none;touch-action:pan-x;-webkit-overflow-scrolling:touch;justify-content:flex-start;gap:4px;max-width:none;padding:0 2px;overflow-x:auto}:where(.motion-study) .service-legend::-webkit-scrollbar{display:none}:where(.motion-study) .service-legend button{flex:none;min-height:44px;padding:0 10px}:where(.motion-study) .view-network.has-selection .service-legend{display:none}:where(.motion-study) input[type=range]{height:44px}:where(.motion-study) input[type=range]::-webkit-slider-runnable-track{height:2px}:where(.motion-study) input[type=range]::-webkit-slider-thumb{width:24px;height:24px;margin-top:-11px}:where(.motion-study) button{justify-content:center;min-height:44px}:where(.motion-study) footer{right:calc(16px + env(safe-area-inset-right));bottom:calc(8px + env(safe-area-inset-bottom));left:calc(16px + env(safe-area-inset-left));justify-content:flex-start;font-size:.52rem}:where(.motion-study) footer>span:last-child,:where(.motion-study) kbd{display:none}}@media (max-width:700px) and (max-height:690px){:where(.motion-study) .service-legend{bottom:calc(292px + env(safe-area-inset-bottom))}}@media (max-width:360px){:where(.motion-study) h1{max-width:99px;font-size:1.25rem}:where(.motion-study) .search-mark{display:none}}@media (hover:none){:where(.motion-study) button:hover{transform:none}}@media (prefers-reduced-motion:reduce){:where(.motion-study) button{transition:none}}@media (max-width:700px){:where(.motion-study) .eyebrow{margin-bottom:2px;font-size:.58rem}:where(.motion-study) h1{max-width:172px;font-size:clamp(1.2rem,6vw,1.52rem);line-height:.94}:where(.motion-study) .train-search{top:calc(80px + env(safe-area-inset-top));right:calc(12px + env(safe-area-inset-right));left:calc(12px + env(safe-area-inset-left))}:where(.motion-study) .train-search form,:where(.motion-study) .train-search input[type=search]{min-height:44px}:where(.motion-study) .train-search input[type=search]{padding:0 8px;font-size:1rem}:where(.motion-study) .search-mark{width:12px;height:12px;margin-left:11px}:where(.motion-study) .clear-search{min-width:40px;min-height:42px}:where(.motion-study) .service-legend,:where(.motion-study) footer{display:none}}@media (max-width:360px){:where(.motion-study) .train-search{top:calc(76px + env(safe-area-inset-top))}:where(.motion-study) .search-mark{display:none}}[data-edition=london] body{background:#04040d}.london-experience{--london-gutter:clamp(20px, 3.4vw, 52px)}.london-experience .atmosphere{background:radial-gradient(circle at 48%,#0000 0 30%,#04040d38 68%,#04040d 118%),linear-gradient(#050510db,#0000 22% 73%,#04040deb)}.london-masthead{z-index:4;padding:var(--london-gutter);pointer-events:none;justify-content:space-between;align-items:flex-start;display:flex;position:absolute;top:0;left:0;right:0}.london-masthead p,.london-status-card p,.london-status-card small{margin:0}.london-masthead .eyebrow{color:var(--cyan);letter-spacing:.17em;text-transform:uppercase;margin-bottom:5px;font:500 .67rem/1 DM Mono,ui-monospace,monospace}.london-masthead h1{letter-spacing:-.072em;text-transform:uppercase;max-width:none;margin:0;font:500 clamp(2.35rem,4.8vw,5.2rem)/.86 Inter,Helvetica,Arial,sans-serif}.london-tagline{color:#fbf8ffb8;letter-spacing:.02em;font:400 clamp(.72rem,1vw,.88rem)/1.2 DM Mono,ui-monospace,monospace;margin-top:10px!important}.london-study-mark{color:#fbf8ffb8;letter-spacing:.1em;text-align:right;text-transform:uppercase;justify-items:end;gap:5px;font:400 .65rem/1.2 DM Mono,ui-monospace,monospace;display:grid}.london-study-mark small{color:var(--muted);font-size:.58rem}.london-layout-switch{top:calc(var(--london-gutter) + 48px);right:var(--london-gutter);z-index:7;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#070613c7;border:1px solid #d2c8e83d;padding:4px;display:flex;position:absolute}.london-layout-switch button{min-height:38px;color:var(--muted);letter-spacing:.08em;text-transform:uppercase;background:0 0;border-color:#0000;gap:8px;padding:0 13px;font:500 .64rem/1 DM Mono,ui-monospace,monospace}.london-layout-switch button[aria-pressed=true]{color:#fff;box-shadow:inset 0 -2px 0 var(--cyan), 0 0 18px #89f7ff1a;background:#252648c2;border-color:#89f7ff75}.london-layout-switch button:disabled{opacity:.42}.london-national-rail-toggle[aria-pressed=true]{color:#ffe3b8!important;box-shadow:inset 0 -2px #ffd392!important}.london-national-rail-board{z-index:6;top:calc(var(--london-gutter) + 164px);right:var(--london-gutter);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);color:#ffe3b8;background:#090916e6;border:1px solid #ffd39247;width:266px;max-height:calc(100dvh - 340px);padding:14px;font:400 .65rem/1.5 DM Mono,ui-monospace,monospace;position:absolute;overflow-y:auto}.london-national-rail-board summary{cursor:pointer}.london-national-rail-board summary span{color:var(--muted);text-transform:uppercase;margin-right:12px;font-size:.55rem}.london-national-rail-board summary strong{font-weight:500}.london-national-rail-directions{gap:6px;margin-top:12px;display:flex}.london-national-rail-board button{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000}.london-national-rail-directions button{flex:1;min-height:32px;padding:5px 8px}.london-national-rail-board button[aria-pressed=true]{color:#ffe3b8;background:#ffd39212;border-color:#ffd39240}.london-national-rail-board ol{margin:8px 0;padding:0;list-style:none}.london-national-rail-board li button{text-align:left;border-bottom-color:#ffd39221;grid-template-columns:44px 1fr 12px;align-items:center;gap:10px;width:100%;min-height:48px;padding:6px 4px;display:grid}.london-national-rail-board time{color:#ffe3b8}.london-national-rail-board li span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.london-national-rail-board small{color:var(--muted);font-size:.55rem;display:block}.london-national-rail-board p{color:var(--muted);margin:10px 0 0;font-size:.55rem}.london-national-rail-board a{color:#c4af91;font-size:.55rem}.london-national-rail-selection{border-bottom:1px solid #ffd3922e;padding:8px 0}.london-national-rail-selection button{color:#ffe3b8;border-color:#ffd39240;min-height:32px;margin:6px 8px 0 0;padding:4px 6px}.is-limited-chrome .london-national-rail-board{display:none}@media (max-width:760px){.london-national-rail-board{top:calc(206px + env(safe-area-inset-top));width:230px;padding:10px;right:12px}}.london-layout-switch button small{color:var(--pink);font-size:.48rem}.london-layout-switch button[aria-busy=true]{color:var(--cyan)}.london-switch-divider{background:#d2c8e838;width:1px;margin:5px 3px}.london-mobile-label{display:none}.london-day-status,.london-air-status,.london-road-status,.london-surface-status,.london-bus-status,.london-operations-status{width:max-content;color:var(--pink);letter-spacing:.06em;text-transform:uppercase;font:500 .55rem/1.2 DM Mono,ui-monospace,monospace;position:absolute;top:calc(100% + 6px);right:0}.london-operations-toggle[aria-pressed=true]{color:var(--cyan)!important;box-shadow:inset 0 -2px 0 var(--cyan), 0 0 18px #89f7ff29!important;border-color:#89f7ffa3!important}.london-operations-toggle[aria-busy=true]{animation:1.1s ease-in-out infinite alternate london-operations-breathe}@keyframes london-operations-breathe{to{color:#fff;text-shadow:0 0 10px #89f7ffc7}}.london-air-toggle[aria-pressed=true]{box-shadow:inset 0 -2px 0 var(--pink), 0 0 18px #ff63cf29!important;border-color:#ff63cf94!important}.london-air-toggle[aria-busy=true]{animation:1.1s ease-in-out infinite alternate london-air-breathe}.london-road-toggle[aria-pressed=true]{color:#fff1cf!important;border-color:#ff9d529e!important;box-shadow:inset 0 -2px #ff9d52,0 0 18px #ff9d5224!important}.london-road-toggle[aria-busy=true]{animation:1.1s ease-in-out infinite alternate london-road-breathe}.london-bus-toggle[aria-pressed=true]{color:#fff0d8!important;border-color:#ff9f43a8!important;box-shadow:inset 0 -2px #ff9f43,0 0 18px #ff9f4329!important}.london-bus-toggle[aria-busy=true]{animation:1.1s ease-in-out infinite alternate london-road-breathe}.london-surface-toggle[aria-pressed=true]{color:#bdfdf0!important;border-color:#76d0bd9e!important;box-shadow:inset 0 -2px #76d0bd,0 0 18px #76d0bd24!important}.london-surface-toggle[aria-busy=true]{animation:1.1s ease-in-out infinite alternate london-surface-breathe}@keyframes london-road-breathe{to{color:#ffbd82;text-shadow:0 0 10px #ff9d52b8}}@keyframes london-air-breathe{to{color:var(--pink);text-shadow:0 0 10px #ff63cfb8}}@keyframes london-surface-breathe{to{color:#bdfdf0;text-shadow:0 0 10px #76d0bdb8}}.london-layout-status{width:max-content;color:var(--pink);letter-spacing:.06em;text-transform:uppercase;font:500 .55rem/1.2 DM Mono,ui-monospace,monospace;position:absolute;top:calc(100% + 6px);right:0}.london-search.train-search{top:max(clamp(124px, 17vh, 158px), calc(var(--london-gutter) + 104px));width:min(570px,100vw - 48px)}.london-search .search-results>button{color:var(--ink);grid-template-columns:14px minmax(0,1fr) auto;align-items:center;font-family:DM Mono,ui-monospace,monospace}.london-search .search-results>button>span{color:var(--pink);text-shadow:0 0 10px var(--pink)}.london-search .search-results strong{text-overflow:ellipsis;white-space:nowrap;font-size:.74rem;font-weight:400;overflow:hidden}.london-search .search-results small{color:var(--muted);white-space:nowrap;font-size:.62rem}.london-status-card{top:clamp(202px,28vh,260px);left:var(--london-gutter);z-index:3;border:1px solid #d2c8e83d;border-left-color:var(--cyan);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:linear-gradient(135deg,#0d0d23d6,#0505108a);width:min(280px,100vw - 40px);padding:15px 17px 16px;position:absolute}.london-status-card>div{align-items:baseline;gap:9px;display:flex}.london-pulse-picker{color:var(--pink);letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid #d2c8e82e;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;margin:-5px -7px 11px;padding:0 0 8px;font:500 .52rem/1 DM Mono,ui-monospace,monospace;display:grid}.london-pulse-picker select{min-width:0;min-height:32px;color:var(--ink);background-color:#191635e0;border-color:#89f7ff4d;padding:0 26px 0 8px;font-size:.62rem}.london-pulse-next{margin-top:5px;display:block;color:var(--cyan)!important}.london-pulse-lenses{grid-template-columns:repeat(3,minmax(0,1fr));margin:0 -7px 11px;gap:4px!important;display:grid!important}.london-pulse-lenses button{min-width:0;min-height:30px;color:var(--muted);letter-spacing:.06em;text-transform:uppercase;background:#07061594;border:1px solid #d2c8e82e;justify-content:space-between;align-items:center;gap:4px;padding:0 7px;font:500 .48rem/1 DM Mono,ui-monospace,monospace;display:flex}.london-pulse-lenses button:nth-child(2)[aria-pressed=true]{color:var(--cyan);border-color:#8dfaffb3;box-shadow:inset 0 -2px #8dfaff9e,0 0 12px #8dfaff1a}.london-pulse-lenses button:nth-child(3)[aria-pressed=true]{color:var(--pink);border-color:#ff5edbb3;box-shadow:inset 0 -2px #ff5edb9e,0 0 12px #ff5edb1a}.london-pulse-lenses button:first-child[aria-pressed=true]{color:var(--ink);border-color:#e9feff8f;box-shadow:inset 0 -2px #e9feff80}.london-pulse-lenses button:disabled{opacity:.3}.london-pulse-lenses button span,.london-pulse-lenses button small{color:inherit;font-size:inherit;white-space:nowrap;margin:0;display:inline;overflow:visible}.london-status-card.is-pulse-selection{border-left-color:var(--pink);background:linear-gradient(135deg,#1f1131e6,#05051094)}.london-experience.is-pulse-night .london-status-card.is-pulse-selection{background:linear-gradient(135deg,#2b0c3aeb,#070315a8);border-color:#ff5edb75;box-shadow:0 0 30px #ff5edb14}.london-status-card strong{color:var(--cyan);text-shadow:0 0 18px #89f7ff57;font:300 2rem/1 DM Mono,ui-monospace,monospace}.london-status-card span{font-size:.78rem}.london-status-card p{color:var(--ink);letter-spacing:.05em;text-transform:uppercase;margin-top:10px;font:500 .7rem/1.2 DM Mono,ui-monospace,monospace}.london-status-card small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:5px;font:400 .62rem/1.35 DM Mono,ui-monospace,monospace;display:block;overflow:hidden}.london-status-card.is-air-selection{border-left-color:var(--pink)}.london-status-card.is-air-selection strong{color:#fff5ff;text-shadow:0 0 18px #ff63cf7a;font-size:1.35rem}.london-status-card.is-road-selection{border-left-color:#ff9d52}.london-status-card.is-road-selection strong{color:#fff1cf;text-shadow:0 0 18px #ff9d527a;font-size:1.35rem}.london-status-card.is-observed-operations{border-left-color:var(--cyan);background:linear-gradient(135deg,#141e30e6,#05051094);box-shadow:0 0 28px #89f7ff12}.london-air-category i{box-shadow:0 0 11px var(--pink);border-radius:0;transform:rotate(45deg)scale(.82)}.london-road-category i{box-shadow:0 0 11px #ff9d52}.london-service-legend.service-legend{font-size:.65rem;bottom:154px}.london-experience.view-network.has-selection .london-service-legend.has-filter{display:flex}.london-map-tools{top:50%;right:var(--london-gutter);z-index:5;gap:5px;display:grid;position:absolute;transform:translateY(-50%)}.london-map-tools button,.london-playback-actions button,.london-playback-actions select{min-width:42px;min-height:42px;color:var(--cyan);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#070613c7;border:1px solid #d2c8e840;justify-content:center;font:500 .68rem/1 DM Mono,ui-monospace,monospace}.london-map-tools button:hover,.london-playback-actions button:hover{border-color:var(--cyan);background:#1f1f41e6;transform:none}.london-transport{right:var(--london-gutter);bottom:44px;left:var(--london-gutter);z-index:5;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#060511d1;border:1px solid #d2c8e83d;width:min(720px,100vw - 40px);margin:auto;padding:12px 14px;position:absolute}.london-time-copy{color:var(--muted);letter-spacing:.12em;justify-content:space-between;align-items:center;margin-bottom:8px;font:400 .62rem/1 DM Mono,ui-monospace,monospace;display:flex}.london-time-copy strong{color:var(--cyan);font-weight:500}.london-transport>label{display:block}.london-transport input[type=range]{width:100%;height:20px;accent-color:var(--pink);margin:0}.london-playback-actions{justify-content:center;gap:6px;margin-top:7px;display:flex}.london-playback-actions select{appearance:auto;min-width:66px;padding:0 9px}.london-playback-actions button:last-child{padding:0 14px}.london-footer{right:var(--london-gutter);bottom:14px;left:var(--london-gutter);z-index:4;color:#ebe4f65c;letter-spacing:.11em;text-transform:uppercase;pointer-events:none;justify-content:space-between;font:400 .5rem/1 DM Mono,ui-monospace,monospace;display:flex;position:absolute}.london-masthead,.london-layout-switch,.london-search,.london-status-card,.london-service-legend,.london-map-tools,.london-footer{transition:opacity .22s,visibility .22s}.london-experience.is-limited-chrome .london-masthead,.london-experience.is-limited-chrome .london-layout-switch,.london-experience.is-limited-chrome .london-search,.london-experience.is-limited-chrome .london-status-card,.london-experience.is-limited-chrome .london-service-legend,.london-experience.is-limited-chrome .london-map-tools,.london-experience.is-limited-chrome .london-footer{visibility:hidden;opacity:0;pointer-events:none}.london-experience.is-limited-chrome .london-transport{background:#060511a3}.london-cinema-toggle[aria-pressed=true]{color:var(--pink);box-shadow:inset 0 -2px 0 var(--pink), 0 0 16px #ff63cf1f;border-color:#ff63cf85}.london-playback-actions .london-cinema-toggle{padding:0 12px}@media (max-width:700px){.london-layout-switch .london-tfl-toggle{display:none}.london-experience{--london-gutter:calc(12px + env(safe-area-inset-left))}.london-masthead{padding:calc(10px + env(safe-area-inset-top)) calc(12px + env(safe-area-inset-right)) 0 calc(12px + env(safe-area-inset-left))}.london-masthead .eyebrow{font-size:.52rem}.london-masthead h1{white-space:nowrap;font-size:clamp(1.35rem,5.8vw,1.55rem)}.london-tagline,.london-study-mark{display:none}.london-layout-switch{top:calc(54px + env(safe-area-inset-top));right:calc(12px + env(safe-area-inset-right));left:calc(12px + env(safe-area-inset-left));justify-content:space-between}.london-layout-switch button{min-width:30px;min-height:34px;padding:0 3px;font-size:.48rem}.london-wide-label{display:none}.london-mobile-label{display:inline}.london-layout-switch button small,.london-experience[data-spatial-layout=geographic] .london-layout-switch button[aria-label=Geography\ layout],.london-experience[data-spatial-layout=diagram] .london-layout-switch button[aria-label=Diagram\ layout]{display:none}.london-search.train-search{top:calc(108px + env(safe-area-inset-top));right:calc(12px + env(safe-area-inset-right));left:calc(12px + env(safe-area-inset-left));width:auto;transform:none}.london-search.train-search input[type=search]{font-size:.88rem}.london-search .search-results{max-height:min(300px,48dvh)}.london-search .search-results>button{grid-template-columns:14px minmax(0,1fr);min-height:46px}.london-search .search-results small{display:none}.london-status-card{top:calc(162px + env(safe-area-inset-top));left:calc(12px + env(safe-area-inset-left));background:#060511c2;width:max-content;max-width:calc(100vw - 84px);padding:6px 9px 7px}.london-status-card strong{font-size:1.08rem}.london-status-card span{font-size:.6rem}.london-status-card p,.london-status-card small{display:none}.london-status-card.is-observed-operations small{max-width:220px;margin-top:2px;font-size:.46rem;display:block}.london-status-card.is-air-selection{top:calc(166px + env(safe-area-inset-top));max-width:calc(100vw - 64px);padding:8px 10px}.london-status-card.is-pulse-selection{top:calc(162px + env(safe-area-inset-top));width:min(244px,100vw - 68px);max-width:none;padding:8px 10px}.london-status-card.is-pulse-selection p,.london-status-card.is-pulse-selection small{display:block}.london-status-card.is-pulse-selection p{margin-top:5px;font-size:.56rem}.london-status-card.is-pulse-selection small{margin-top:3px;font-size:.48rem}.london-pulse-picker,.london-pulse-lenses{margin-bottom:7px}.london-pulse-lenses button{min-height:27px;padding:0 5px;font-size:.43rem}.london-status-card.is-road-selection{top:calc(166px + env(safe-area-inset-top));max-width:calc(100vw - 64px);padding:8px 10px}.london-status-card.is-road-selection p,.london-status-card.is-road-selection small{display:block}.london-status-card.is-road-selection p{margin-top:6px;font-size:.56rem}.london-status-card.is-road-selection small{max-width:250px;margin-top:3px;font-size:.5rem}.london-status-card.is-air-selection p,.london-status-card.is-air-selection small{display:block}.london-status-card.is-air-selection p{margin-top:6px;font-size:.56rem}.london-status-card.is-air-selection small{max-width:250px;margin-top:3px;font-size:.5rem}.london-map-tools{top:calc(162px + env(safe-area-inset-top));right:calc(12px + env(safe-area-inset-right));grid-template-columns:repeat(4,38px);gap:3px;transform:none}.london-map-tools button{background:#060511c2;min-width:38px;min-height:38px}.london-service-legend.service-legend{right:12px;bottom:calc(142px + env(safe-area-inset-bottom));scrollbar-width:none;justify-content:flex-start;gap:4px;font-size:.56rem;display:flex;left:12px;overflow-x:auto}.london-service-legend.service-legend button{background:#060511b8;flex:none;min-height:36px;padding:0 7px}.london-transport{right:calc(12px + env(safe-area-inset-right));bottom:calc(12px + env(safe-area-inset-bottom));left:calc(12px + env(safe-area-inset-left));width:auto;padding:8px 9px}.london-time-copy{margin-bottom:3px;font-size:.55rem}.london-transport input[type=range]{height:18px}.london-playback-actions{justify-content:flex-end;margin-top:3px}.london-playback-actions button,.london-playback-actions select{min-height:38px}.london-playback-actions .london-cinema-toggle{min-width:38px;padding:0}.london-footer{display:none}}@media (prefers-reduced-motion:reduce){.london-layout-switch button,.london-experience *{scroll-behavior:auto}.london-air-toggle[aria-busy=true],.london-road-toggle[aria-busy=true],.london-bus-toggle[aria-busy=true],.london-surface-toggle[aria-busy=true],.london-operations-toggle[aria-busy=true]{animation:none}.london-masthead,.london-layout-switch,.london-search,.london-status-card,.london-service-legend,.london-map-tools,.london-footer{transition:none}}
