.loader{z-index:50;transition:opacity var(--slow) var(--ease), visibility 0s;background:#000;place-items:center;display:grid;position:absolute;inset:0}.loader.is-hidden{opacity:0;visibility:hidden;transition:opacity var(--slow) var(--ease), visibility 0s var(--slow)}.loader__dots{width:44px;height:44px;animation:1.1s linear infinite loader-spin;position:relative}.loader__dots span{background:#fff;border-radius:50%;width:14px;height:14px;position:absolute}.loader__dots span:first-child{top:0;left:15px}.loader__dots span:nth-child(2){top:15px;right:0}.loader__dots span:nth-child(3){bottom:0;left:15px}.loader__dots span:nth-child(4){top:15px;left:0}@keyframes loader-spin{to{transform:rotate(360deg)}}.route-error{text-align:center;background:radial-gradient(circle at 50% 40%,#222,#000 70%);place-content:center;justify-items:center;gap:12px;padding:24px;display:grid}.route-error h1{margin:0;font-size:24px}.route-error p{color:var(--text-dim);margin:0}.route-error a{color:#111;background:#fff;border-radius:999px;margin-top:8px;padding:8px 20px;font-weight:500;text-decoration:none}:root{--panel:#000000db;--panel-raised:#1a1a1a;--panel-inset:#363636;--chip:#5e5e5e;--chip-hover:#767676;--chip-active:#e9e9e9;--text:#fff;--text-dim:#bdbdbd;--text-on-light:#111;--gold:#ad8045;--gold-soft:#c9974f;--pin:#e2a622;--accent:#4a9b8e;--metro:#89cbd6;--focus:#ffd27a;--radius:10px;--radius-sm:6px;--shadow:0 8px 24px #00000073;--ease:cubic-bezier(.2, .7, .2, 1);--fast:.15s;--slow:.45s;--font:"Roboto", system-ui, -apple-system, "Segoe UI", sans-serif;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;overscroll-behavior:none;background:#000;font-size:14px;overflow:hidden}button{font:inherit;color:inherit;cursor:pointer}a{color:inherit}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.page{position:fixed;inset:0}.page:after{content:"";z-index:100;pointer-events:none;animation:veil-out var(--slow) var(--ease) forwards;background:#000;position:fixed;inset:0}@keyframes veil-out{to{opacity:0;visibility:hidden}}@keyframes page-in{0%{opacity:0}}@keyframes road-draw{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}
