:root{color-scheme:dark;--navy:#061923;--gold:#dfbd79;--text:#f0eee7;--muted:#abbec4}
*{box-sizing:border-box}
body{margin:0;min-height:100vh;min-height:100svh;background:radial-gradient(ellipse at 50% 15%,#143340 0,var(--navy) 65%,#031018 100%);color:var(--text);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
a{color:inherit;text-decoration:none}
button{font:inherit}
button,a{-webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible{outline:3px solid #76d6e8;outline-offset:5px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.welcome{min-height:100vh;min-height:100svh;width:min(1180px,100%);margin:auto;padding:clamp(20px,4vh,44px) 20px 28px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:24px}
.welcome-art{width:100%;margin:0;box-shadow:0 24px 75px #0007}
.welcome-art img{display:block;width:100%;height:auto;object-fit:contain}
.welcome-controls{width:min(640px,100%);text-align:center}
#welcome-message{margin:0 0 13px;color:var(--muted);font-size:15px}
#countdown{color:var(--gold);font-variant-numeric:tabular-nums;font-weight:700}
.welcome-progress{height:2px;width:180px;max-width:60%;margin:0 auto 19px;background:#264651;overflow:hidden}
.welcome-progress span{display:block;height:100%;width:100%;background:var(--gold);transform-origin:left;transform:scaleX(0)}
.welcome-actions{display:flex;justify-content:center;align-items:center;gap:14px;flex-wrap:wrap}
.enter-button{display:inline-flex;align-items:center;gap:24px;min-height:46px;padding:12px 26px;background:var(--gold);color:#08202c;border:1px solid var(--gold);font-size:14px;font-weight:700;border-radius:5px;transition:background .2s,transform .2s}
.enter-button:hover{background:#f0d6a0;transform:translateY(-2px)}
.pause-button{padding:11px 15px;min-height:46px;cursor:pointer;border:1px solid #53646a;color:var(--muted);background:transparent;border-radius:5px;font-size:13px}
.pause-button:hover{color:white;border-color:var(--gold)}
.route-label{margin:26px 0 12px;color:var(--muted);font-size:12px;letter-spacing:.04em}
.service-routes{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.service-routes>a{min-width:0;display:flex;align-items:center;gap:13px;text-align:left;padding:15px 17px;background:#12313d77;border:1px solid #34505b;border-radius:6px;transition:border-color .2s,background .2s}
.service-routes>a:hover{border-color:var(--gold);background:#183d4b}
.route-icon{font-size:12px;letter-spacing:.1em;color:var(--gold);flex-shrink:0}
.service-routes strong{display:block;font-size:14px;font-weight:600}
.service-routes small{display:block;font-size:11px;color:var(--muted);line-height:1.5;margin-top:3px}
.route-arrow{margin-left:auto;color:var(--gold)}
.noscript-note{max-width:620px;font-size:13px;text-align:center;line-height:1.6;color:var(--muted)}
[hidden]{display:none!important}
@media(max-width:520px){.welcome{padding:22px 14px;gap:22px}.service-routes{grid-template-columns:1fr}.service-routes>a{padding:14px 17px}.welcome-art{width:100%}.enter-button{padding-inline:22px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important}.enter-button:hover{transform:none}}
