@font-face{font-family:Rajdhani;src:url(/assets/fonts/rajdhani-600.ttf)format("truetype");font-style:normal;font-weight:600;font-display:swap}@font-face{font-family:Rajdhani;src:url(/assets/fonts/rajdhani-700.ttf)format("truetype");font-style:normal;font-weight:700;font-display:swap}@font-face{font-family:Roboto Condensed;src:url(/assets/fonts/roboto-condensed-400.ttf)format("truetype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Roboto Condensed;src:url(/assets/fonts/roboto-condensed-600.ttf)format("truetype");font-style:normal;font-weight:600;font-display:swap}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink:#e7edf1;--muted:#9ba8b2;--panel:#121e28eb;--panel-strong:#162431;--line:#bccfdc33;--accent:#e7b64a;--accent-cool:#6dc6e5;--danger:#e16f67;--background:#091119;--content-width:96rem;--fog:#8796a3;--fog-bright:#b9c5cc;--steel:#172633;--steel-2:#203442;--steel-3:#314956;--gold:#d5a83a;--gold-bright:#f2d06b;--display:"Rajdhani", "Arial Narrow", "Avenir Next Condensed", sans-serif;--body:"Roboto Condensed", "Arial Narrow", "Segoe UI", sans-serif;--ease-out:cubic-bezier(.2, .75, .2, 1);--z-background:0;--z-content:2;--z-overlay:4;font-family:var(--body)}*{box-sizing:border-box}html{background:var(--background);min-width:20rem}body{min-height:100dvh;color:var(--ink);background:linear-gradient(180deg, #091119bd, #091119f7), radial-gradient(circle at 30% 0%, #263d4c 0, transparent 42%), var(--background);font-family:var(--body);margin:0;line-height:1.35}button,input{font:inherit}button{color:inherit}button,a,label,input[type=range]{-webkit-tap-highlight-color:transparent}.skip-link{z-index:100;top:.5rem;left:max(.5rem, env(safe-area-inset-left));color:#10150c;background:var(--gold-bright);padding:.6rem .9rem;font-weight:700;transition:transform .16s;position:fixed;transform:translateY(-180%)}.skip-link:focus{transform:translateY(0)}.platform-shell{isolation:isolate;background:linear-gradient(#070f1652,#040a0fa8),linear-gradient(90deg,#10232e57,#0000 43%,#101c2452),url(/assets/backgrounds/industrial-yard.png) 50%/cover no-repeat;grid-template-rows:3.65rem minmax(0,1fr);min-height:100dvh;padding-bottom:1.7rem;display:grid;position:relative;overflow-x:clip}.platform-shell:before{z-index:var(--z-background);pointer-events:none;content:"";background:radial-gradient(circle at 62% 34%,#ddb55d1a,#0000 24%),radial-gradient(#0000 32%,#02070b85 100%),linear-gradient(#5470801f,#060d1333);position:absolute;inset:0}.platform-shell:after{z-index:var(--z-overlay);pointer-events:none;content:"";mix-blend-mode:soft-light;opacity:.13;background-image:repeating-linear-gradient(0deg,#0000 0 3px,#ffffff06 3px 4px),repeating-linear-gradient(117deg,#0000 0 29px,#0000000a 29px 30px);position:absolute;inset:0}.topbar,.platform-main,.system-bar{z-index:var(--z-content);position:relative}.topbar{z-index:20;background:linear-gradient(180deg, #1f303cfa, #0c171ffa), var(--steel);border-bottom:1px solid #899ea994;align-items:stretch;min-width:0;display:flex;position:sticky;top:0;box-shadow:0 .25rem 1.4rem #0000006b,inset 0 -1px #000000b8,inset 0 1px #c1d2da24}.brand-lockup{border-right:1px solid #000000b8;flex:0 0 clamp(12.5rem,14vw,16.5rem);align-items:center;gap:.75rem;min-width:0;padding:0 1.1rem;display:flex;position:relative;box-shadow:inset -1px 0 #94aab529}.brand-lockup:after{background:var(--gold);content:"";opacity:.62;width:2.2rem;height:.125rem;position:absolute;bottom:.45rem;right:.5rem}.brand-mark{background:linear-gradient(145deg,#dfb64b,#7d5b19);border:1px solid #8a7135;flex:0 0 1.65rem;place-items:center;width:1.65rem;height:1.65rem;display:grid;position:relative;transform:rotate(45deg);box-shadow:inset 0 0 0 .18rem #171c185c,0 0 0 1px #0000008f}.brand-mark:before,.brand-mark:after,.brand-mark i{content:"";background:#17212a;border-radius:50%;width:.32rem;height:.32rem;position:absolute}.brand-mark:before{transform:translate(-.45rem)}.brand-mark:after{transform:translate(.45rem)}.brand-mark i{transform:rotate(-45deg)}.brand-title{font-family:var(--display);letter-spacing:.08em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font-size:clamp(1.1rem,1.45vw,1.45rem);font-weight:700;line-height:1;overflow:hidden}.platform-nav{min-width:0;display:flex}.nav-section,.platform-nav .nav-tab{color:#a7b5bd;min-width:clamp(5.4rem,6.7vw,8rem);font-family:var(--display);letter-spacing:.1em;text-align:center;text-transform:uppercase;white-space:nowrap;border-right:1px solid #00000094;place-items:center;padding:0 .8rem;font-size:.79rem;font-weight:600;text-decoration:none;display:grid;position:relative;box-shadow:inset -1px 0 #8ca1ac1c}.nav-section{color:#71828c}.platform-nav .nav-tab{transition:color .16s var(--ease-out), background-color .16s var(--ease-out), box-shadow .16s var(--ease-out)}.platform-nav .nav-tab:hover,.platform-nav .nav-tab:focus-visible{color:#edf1f2;background:#4e5c632e}.platform-nav .nav-tab.active,.platform-nav .nav-tab[aria-current=page]{color:#edf1f2;background:linear-gradient(#4e5c634d,#0b141b14)}.platform-nav .nav-tab.active:after,.platform-nav .nav-tab[aria-current=page]:after{background:var(--gold);content:"";height:.18rem;position:absolute;bottom:-1px;left:0;right:0;box-shadow:0 -.12rem .5rem #d5a83a47}.topbar-actions,.audio-controls,.session-controls{align-items:stretch;min-width:0;display:flex}.topbar-actions{margin-left:auto}.volume{color:var(--muted);font-family:var(--display);letter-spacing:.1em;text-transform:uppercase;border-left:1px solid #00000080;align-items:center;gap:.45rem;padding:0 .8rem;font-size:.7rem;display:flex}.volume input[type=range]{appearance:none;background:linear-gradient(90deg, var(--gold) var(--volume-fill,5%), #70848f52 var(--volume-fill,5%));cursor:pointer;border-radius:0;width:clamp(4rem,5vw,6rem);height:.2rem}.volume input[type=range]::-webkit-slider-thumb{appearance:none;background:#c89d36;border:1px solid #f3d36f;border-radius:50%;width:.75rem;height:.75rem;box-shadow:0 0 .6rem #d5a83a73}.volume input[type=range]::-moz-range-thumb{background:#c89d36;border:1px solid #f3d36f;border-radius:50%;width:.75rem;height:.75rem}.volume output{color:#c6d0d5;font-variant-numeric:tabular-nums;text-align:right;min-width:2.2rem}.nav-button,.session-controls button{cursor:pointer;background:linear-gradient(#32424d52,#040a0f33);border:0;border-left:1px solid #000000a8;border-radius:0;place-content:center;min-width:4.2rem;min-height:2.75rem;padding:0 .8rem;transition:color .16s,background-color .16s,box-shadow .16s;display:grid;box-shadow:inset 1px 0 #91a6b21f}.nav-button span{color:var(--gold);font-family:var(--display);letter-spacing:.12em;font-size:.68rem;font-weight:700}.nav-button b,.session-controls button{color:#b8c3c9;font-family:var(--display);letter-spacing:.08em;text-transform:uppercase;font-size:.62rem;font-weight:600}.nav-button:hover:not(:disabled),.session-controls button:hover:not(:disabled){color:#fff;box-shadow:inset 0 -.14rem var(--gold);background:#5c6f7a38}.nav-button:active:not(:disabled),.session-controls button:active:not(:disabled){box-shadow:inset 0 .16rem .4rem #0000007a}.nav-button[aria-pressed=true] span,.nav-button[aria-pressed=true] b{color:var(--danger)}.nav-button:disabled,.session-controls button:disabled{cursor:not-allowed;filter:grayscale(.8);opacity:.36}.session-controls{color:var(--muted);font-family:var(--display);letter-spacing:.06em;font-size:.7rem}.session-controls>span{text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;border-left:1px solid #00000080;align-items:center;max-width:9rem;padding:0 .75rem;display:flex;overflow:hidden}.sound-button{min-width:4.2rem}.topbar button:focus-visible,.topbar a:focus-visible,.topbar input:focus-visible{z-index:1;outline:.125rem solid var(--gold-bright);outline-offset:-.2rem}.platform-main{width:min(100%, var(--content-width));min-width:0;margin:0 auto;padding:clamp(1rem,2vw,2rem)}.platform-main:focus{outline:none}.route-stage{border:1px solid var(--line);background:linear-gradient(135deg, #6dc6e50f, transparent 48%), var(--panel);place-items:center;min-height:calc(100vh - 10rem);display:grid}.route-stage>div{width:min(42rem,100% - 2rem)}.route-stage h1{max-width:15ch;font-family:var(--display);letter-spacing:-.03em;text-transform:uppercase;margin:.45rem 0 1rem;font-size:clamp(2.6rem,7vw,6rem);line-height:.92}.route-stage p:not(.eyebrow){max-width:56ch;color:var(--muted);margin:0;font-size:1.05rem;line-height:1.55}.brand-kicker,.eyebrow{color:var(--accent);letter-spacing:.2em;text-transform:uppercase;font-size:.7rem;font-weight:700}.system-bar{z-index:20;min-height:1.7rem;padding-right:max(.85rem, env(safe-area-inset-right));padding-left:max(.85rem, env(safe-area-inset-left));color:#82939c;font-family:var(--display);letter-spacing:.09em;text-transform:uppercase;background:#050c11f2;border-top:1px solid #6e85915c;justify-content:space-between;align-items:center;gap:1rem;font-size:.62rem;display:flex;position:fixed;bottom:0;left:0;right:0}.system-bar>span:first-child{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.connection-status{text-overflow:ellipsis;white-space:nowrap;flex:0 auto;min-width:0;overflow:hidden}.connection-status:before{background:var(--muted);content:"";border-radius:50%;width:.45rem;height:.45rem;margin-right:.45rem;display:inline-block}.connection-status--online:before{background:#70c38a;box-shadow:0 0 .7rem #70c38a8c}.connection-status--offline:before{background:var(--danger)}.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:69rem){.nav-section,.volume{display:none}.brand-lockup{flex-basis:12.5rem}.platform-nav .nav-tab{min-width:clamp(5.2rem,9vw,6.8rem)}}@media (max-width:56.25rem){.platform-shell{grid-template-rows:auto minmax(0,1fr);padding-bottom:1.9rem}.topbar{grid-template-columns:minmax(0,1fr) auto;display:grid}.brand-lockup,.topbar-actions{border-bottom:1px solid #00000094;min-height:3.65rem}.platform-nav{overscroll-behavior-inline:contain;scrollbar-color:var(--gold) #050c11b8;scrollbar-width:thin;grid-area:2/1/auto/-1;overflow-x:auto}.platform-nav .nav-tab{flex:1 0 auto;min-width:max-content;min-height:3rem;padding-inline:1rem}.platform-main{padding:.8rem}.system-bar{min-height:1.9rem}}@media (max-width:40rem){.brand-lockup{flex-basis:auto;padding-inline:.85rem}.brand-title{font-size:1.05rem}.brand-lockup:after{width:1.4rem}.session-controls>span{display:none}.nav-button,.session-controls button{min-width:3.65rem;min-height:3.65rem;padding-inline:.65rem}.platform-nav .nav-tab{min-height:3.15rem;padding-inline:.82rem;font-size:.7rem}.platform-shell{padding-bottom:2.2rem}.system-bar{gap:.75rem;min-height:2.2rem;padding-block:.35rem}}@media (max-width:27rem){.sound-button b{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.sound-button{min-width:3.1rem}.session-controls button{min-width:4.7rem;padding-inline:.5rem}.system-bar>span:first-child{display:none}}@media (pointer:coarse){.platform-nav .nav-tab,.nav-button,.session-controls button{min-height:2.75rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}.login-shell{place-items:center;min-height:100vh;padding:1.25rem;display:grid}.login-panel{border:1px solid var(--line);background:#121e28f5;width:min(32rem,100%);padding:clamp(1.5rem,5vw,3.25rem)}.login-panel h1{text-transform:uppercase;margin:.55rem 0 1rem;font-family:Rajdhani,Arial Narrow,sans-serif;font-size:clamp(3rem,10vw,5.5rem);line-height:.9}.login-panel>p:not(.brand-kicker),.login-panel small{color:var(--muted);line-height:1.55}.login-form{gap:.75rem;margin:2rem 0 1.25rem;display:grid}.login-form label{letter-spacing:.1em;text-transform:uppercase;font-size:.75rem;font-weight:700}.login-form input{border:1px solid var(--line);min-height:3.25rem;color:var(--ink);background:#0b151d;border-radius:0;padding:.75rem .9rem}.login-form button{border:1px solid var(--accent);color:#111;background:var(--accent);cursor:pointer;min-height:3.25rem;font-weight:800}.login-form button:disabled{cursor:wait;opacity:.55}.login-error{margin:0;color:var(--danger)!important}
