/* A place to enter, with a crew to meet. */
body:has(.vw-world)>header,body:has(.vw-world)>footer{display:none!important}body:has(.vw-world) #main{max-width:none;padding:0;margin:0}.vw-world{height:100dvh;min-height:700px;position:relative;isolation:isolate;overflow:hidden;background:#102d38;color:#fff0d4}.vw-world *{box-sizing:border-box}.vw-landscape{position:absolute;inset:0;z-index:-3;background:url('assets/art/velora-outpost-v1.webp') center/cover}.vw-world:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#082b37c9,transparent 68%),linear-gradient(0deg,#071d29 0%,transparent 60%,#10242d60)}.vw-clouds{position:absolute;inset:0;z-index:-2;background:radial-gradient(ellipse at 55% 20%,#fff4d722,transparent 36%);animation:vw-drift 16s ease-in-out infinite alternate}.vw-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 4vw;letter-spacing:3px;font-size:13px;font-weight:900}.vw-header small{font-size:8px;display:block;letter-spacing:4px;color:#e5be7e;margin-top:4px}.vw-location{font-size:8px;letter-spacing:3px;color:#e8e3cb}.vw-header button{border:1px solid #f2dab45c;background:#0a273788;border-radius:50%;height:38px;width:38px;padding:0}.vw-title{position:absolute;left:6vw;top:18%;pointer-events:none}.vw-title>small{font-size:9px;letter-spacing:3px;color:#edc38d}.vw-title h1{font-family:Georgia,serif;font-size:clamp(46px,6vw,88px);font-weight:500;line-height:.96;letter-spacing:-3px;margin:18px 0;color:#fff1d5;text-shadow:0 6px 30px #032030}.vw-title p{font-size:12px;color:#d4e1d8}.vw-beacon{position:absolute;left:70%;top:26%;display:flex;gap:10px;align-items:center;text-align:left;padding:9px 13px;border:1px solid #f8de9b66;border-radius:8px;background:#133746b3;backdrop-filter:blur(10px);color:#fff0c5;box-shadow:0 0 30px #edcd7733}.vw-beacon i{font-size:32px;font-style:normal;animation:vw-glow 3s infinite alternate}.vw-beacon span{font-size:9px;letter-spacing:2px}.vw-beacon small{display:block;font-size:9px;color:#cddbd3;letter-spacing:0;margin-top:5px}.vw-crew{position:absolute;left:45%;right:4%;top:31%;height:32%;display:flex;align-items:end;justify-content:center}.vw-crew button{padding:0;border:0;background:none;width:34%;height:100%;position:relative;filter:drop-shadow(0 12px 6px #06233166);animation:vw-arrive .9s calc(var(--seat)*.13s) both}.vw-crew button:nth-child(2){height:87%;margin-bottom:20px}.vw-crew button>svg{width:100%;height:100%;overflow:visible;transition:transform .25s}.vw-crew button:hover>svg,.vw-crew button:focus-visible>svg{transform:translateY(-9px) scale(1.07)}.vw-crew button>span{position:absolute;bottom:-12px;left:50%;transform:translateX(-50%);white-space:nowrap;font-size:10px;padding:5px 12px;border:1px solid #e1c39877;border-radius:20px;background:#123545e8;color:#f4e4bf}.vw-dialogue{position:absolute;left:6vw;right:6vw;bottom:113px;display:flex;gap:24px;padding:24px 30px;background:linear-gradient(110deg,#0d2939f5,#0f303ee8);border:1px solid #c4b78c66;border-top:2px solid #e9c98f99;border-radius:3px 22px 22px 22px;box-shadow:0 24px 70px #071d2866;backdrop-filter:blur(12px)}.vw-speaker{width:100px;flex-shrink:0;text-align:center}.vw-speaker img{width:90px;height:100px;object-fit:cover;border-radius:50% 50% 38% 38%;border:2px solid #e5c494}.vw-speaker>span{display:block;font-size:8px;letter-spacing:3px;color:#ebca95;margin-top:10px}.vw-story{flex:1;min-width:0}.vw-story>small{font-size:8px;letter-spacing:2px;color:#adc8c7}.vw-story h2{font-size:clamp(20px,2.1vw,30px);font-family:Georgia,serif;font-weight:500;margin:8px 0;color:#fff0cf}.vw-story p{font-size:13px;line-height:1.65;max-width:800px;color:#d0ded9;margin:6px 0 14px}.vw-actions{display:flex;align-items:center;gap:15px;flex-wrap:wrap}.vw-actions button{font-size:11px;padding:11px 18px}.vw-actions>button:not(.primary){background:transparent;border:0;color:#bed3cc}.vw-actions .primary{background:#efcf93;color:#112f3b;border:1px solid #ffe6b5;border-radius:5px;box-shadow:0 3px 0 #9c8054}.vw-chapters{position:absolute;right:22px;top:18px;display:flex;gap:5px}.vw-chapters button{font-size:8px;border:1px solid #819e9944;border-radius:50%;height:21px;width:21px;padding:0;background:transparent;color:#a9c2bd}.vw-chapters [aria-pressed=true]{background:#e5ca98;color:#153846}.vw-places{display:flex;position:absolute;bottom:40px;left:6vw;right:6vw;gap:20px;justify-content:center}.vw-places button{display:flex;gap:10px;align-items:center;background:#143342a8;border:1px solid #a6c4b733;border-radius:7px;padding:10px 20px;font-size:21px;color:#e8cca0;min-width:160px;text-align:left}.vw-places span{font-size:11px;color:#ece7d3}.vw-places small{display:block;font-size:8px;color:#a9c4c2;margin-top:4px}.vw-save-note{position:absolute;bottom:13px;left:0;right:0;text-align:center;font-size:7px;letter-spacing:2px;color:#91abae}.vw-motes i{position:absolute;left:calc(var(--i)*10%);top:calc(15% + var(--i)*4%);width:3px;height:3px;background:#f8d59c;box-shadow:0 0 12px #ffe8ab;border-radius:50%;animation:vw-mote calc(5s + var(--i)*.4s) calc(var(--i)*-.6s) infinite alternate;pointer-events:none}.vw-world button:focus-visible{outline:3px solid #fff0b4;outline-offset:4px}.vw-world+.fe-crew-chooser{margin:25px auto;max-width:1180px;padding:20px}
@keyframes vw-drift{to{transform:translateX(4%);opacity:.55}}@keyframes vw-glow{to{filter:drop-shadow(0 0 15px #ffe6ad)}}@keyframes vw-mote{to{transform:translate(20px,-50px);opacity:.2}}@keyframes vw-arrive{from{opacity:0;transform:translateX(30px)}to{opacity:1;transform:none}}
/* The route is now a travelling camera, with the simulation as its only clock. */
.rc-field.gc-race-layout{grid-template-columns:minmax(0,1fr) 220px}.rc-track .jr-race.arena-stage{padding:0!important;border-radius:12px;background:var(--jr-sky)!important;position:relative;isolation:isolate}.rc-track .jr-race:before{display:none}.jr-scene{display:block;width:100%;height:100%;overflow:hidden}.jr-letterbox{position:absolute;left:22px;top:16px;color:#12333e;text-shadow:0 1px 5px #eee7c644;pointer-events:none}.jr-letterbox>small{font-size:7px;letter-spacing:3px;display:block;color:#294c53}.jr-call{display:block;font-family:Georgia,serif;font-size:24px;font-weight:600;line-height:1.2;margin:5px 0}.jr-detail{display:block;font-size:10px;max-width:360px}.jr-name rect{fill:#12313ddb;stroke:var(--rider);stroke-width:1}.jr-name text{fill:#fff2d6;font:600 11px system-ui}.jr-wake{fill:none;stroke:var(--rider);stroke-width:3;opacity:0;stroke-linecap:round}.jr-active .jr-wake{opacity:.7;animation:jr-wake .25s infinite alternate}.jr-active .jr-body{animation:jr-bump .18s infinite alternate}.jr-combo .jr-active{filter:drop-shadow(0 0 9px #f8d98b)}.jr-rider .cs-evolution{stroke:var(--rider);fill:none;opacity:.7}.jr-distance{position:absolute;bottom:15px;left:22px;right:22px;height:22px;border-top:1px solid #efdab855;pointer-events:none}.jr-distance>span{position:absolute;top:-3px;left:clamp(0%,var(--distance),94%);display:flex;gap:5px;align-items:center;color:var(--rider);transform:translateY(-2px)}.jr-distance>span:nth-child(2){top:10px}.jr-distance i{width:7px;height:7px;border-radius:50%;background:var(--rider);box-shadow:0 0 9px var(--rider)}.jr-distance b{font-size:7px;white-space:nowrap}.jr-distance em{font-style:normal}.jr-distance>small{position:absolute;right:0;top:3px;color:#e9d4af;font-size:9px}.jr-result{position:absolute;right:18px;top:18px;display:flex;gap:10px;align-items:center;max-width:280px;color:#13333e;pointer-events:none}.jr-result>b{font-size:40px;line-height:1;font-weight:900}.jr-result>span{font-size:11px;font-weight:800}.jr-result small{display:block;font-size:8px;font-weight:500;line-height:1.6;max-width:160px;margin-top:3px}.jr-moving:after{content:'';position:absolute;inset:0;border:2px solid #f7deb522;border-radius:inherit;pointer-events:none;box-shadow:inset 0 0 40px #fff3cf22}.jr-pass:after{animation:jr-pass .5s ease-out}.jr-cloudbank{animation:vw-drift 25s ease-in-out infinite alternate}.rc-core .gc-projection{pointer-events:none}.rc-core .gc-callout strong{font-size:24px}.rc-core .gc-callout strong span{font-size:9px}.rc-core .gc-combo{max-height:60px;overflow:hidden}.rc-track .rc-boss-intent{top:37px;left:10px;right:10px;max-width:calc(100% - 20px);z-index:5}.rc-track:has(.rc-boss-intent) .jr-letterbox{top:70px}.rc-track:has(.rc-boss-intent) .jr-result{top:75px}.rc-turn-cue{min-height:36px}.rc-guide-progress{display:flex;gap:7px;font-size:7px;color:#bdd1c6;align-items:center;justify-content:center}.rc-guide-progress b{color:#f2d29c}.rc-guide-progress i{font-style:normal;color:#778f89}.rc-route-bar[data-learning=true]{visibility:hidden;pointer-events:none}.rc-track .jr-race{grid-row:2}.rc-arena .rc-inspector>summary{font-size:10px}.rc-arena .rc-inspector>summary:before{content:'? ';color:#e7c692}
@keyframes jr-wake{to{opacity:.35;transform:scaleX(.8)}}@keyframes jr-bump{to{transform:translateY(-1.5px)}}@keyframes jr-pass{0%{box-shadow:inset 0 0 80px #ffe1a280}100%{box-shadow:inset 0 0 0 #ffe1a200}}
@media(max-width:950px){.vw-beacon{left:auto;right:5%;top:23%}.vw-title{top:17%}.vw-dialogue{left:4%;right:4%;padding:20px;gap:18px}.vw-crew{left:41%;top:32%;height:29%}.vw-places{gap:8px;left:4%;right:4%}.vw-places button{min-width:0;flex:1;padding:10px}.vw-story p{font-size:12px}.rc-field.gc-race-layout{grid-template-columns:minmax(0,1fr) 185px}.jr-result{max-width:180px}.jr-result small{max-width:105px}.jr-letterbox{left:15px}.jr-call{font-size:20px}.jr-detail{max-width:220px;font-size:9px}}
@media(max-width:700px){.vw-world{min-height:800px}.vw-header{padding:17px 20px}.vw-location{display:none}.vw-title{left:6%;top:12%}.vw-title h1{font-size:45px;letter-spacing:-2px;margin:10px 0}.vw-title>small{font-size:6px;letter-spacing:2px}.vw-title p{font-size:9px;max-width:180px;line-height:1.5}.vw-beacon{top:29%;right:6%;padding:7px}.vw-beacon span{font-size:7px;letter-spacing:1px}.vw-beacon small{font-size:7px}.vw-beacon i{font-size:22px}.vw-crew{left:8%;right:5%;top:30%;height:22%}.vw-crew button>span{font-size:7px;padding:4px 8px;bottom:-3px}.vw-dialogue{bottom:140px;gap:12px;padding:16px;min-height:240px}.vw-speaker{width:45px;margin-top:24px}.vw-speaker img{width:45px;height:60px}.vw-speaker>span{font-size:6px;letter-spacing:1px}.vw-story>small{font-size:6px;letter-spacing:1px}.vw-story h2{font-size:21px;margin-top:10px}.vw-story p{font-size:11px;line-height:1.55}.vw-chapters{right:12px;top:9px;gap:3px}.vw-chapters button{height:16px;width:16px;font-size:6px}.vw-actions{gap:5px}.vw-actions button{font-size:10px;padding:9px 11px}.vw-places{bottom:36px;display:grid;grid-template-columns:1fr 1fr;gap:6px}.vw-places button{padding:7px 12px;font-size:16px}.vw-places span{font-size:9px}.vw-places small{font-size:7px;margin-top:2px}.vw-save-note{font-size:6px;letter-spacing:1px}.rc-field.gc-race-layout{grid-template-columns:1fr}.jr-letterbox{left:12px;top:13px}.jr-call{font-size:19px;max-width:210px}.jr-detail{font-size:8px;max-width:210px}.jr-letterbox>small{font-size:6px;letter-spacing:2px}.jr-result{top:auto;bottom:50px;left:12px;right:auto;max-width:170px;color:#ffe7c0;text-shadow:0 2px 4px #102c39}.jr-result>b{font-size:27px}.jr-result>span{font-size:9px}.jr-result small{font-size:6px;max-width:95px}.jr-distance{bottom:12px;left:12px;right:12px}.rc-guide-progress{font-size:6px;gap:4px}.rc-track:has(.rc-boss-intent) .jr-letterbox{top:60px}.rc-track:has(.rc-boss-intent) .jr-result{top:auto}.rc-inspector>summary{font-size:0!important}.rc-arena .rc-inspector>summary:before{display:none}}
@media(max-height:700px) and (min-width:701px){.vw-world{min-height:610px}.vw-title{top:16%}.vw-title h1{font-size:62px}.vw-dialogue{bottom:100px;padding:16px 24px}.vw-speaker img{width:72px;height:82px}.vw-speaker{width:80px}.vw-story h2{font-size:23px}.vw-story p{font-size:11px}.vw-places{bottom:31px}.vw-crew{top:27%;height:29%}.vw-beacon{top:19%}.vw-save-note{bottom:9px}}
@media(max-width:700px) and (max-height:650px){.vw-world{height:auto;min-height:750px}.vw-title{top:10%}.vw-crew{top:28%}.vw-beacon{top:24%}.jr-call{font-size:15px}.jr-detail{font-size:7px;max-width:180px}.jr-result{bottom:39px;max-width:160px}.jr-result>b{font-size:22px}.rc-guide-progress{display:none}}
@media(prefers-reduced-motion:reduce){.vw-world *,.jr-race *{animation:none!important;transition:none!important}}html[data-motion=quick] .vw-world *,html[data-motion=quick] .jr-race *{animation:none!important;transition:none!important}

.jr-letterbox{color:#fff0d0;text-shadow:0 2px 8px #092b36}.jr-letterbox>small{color:#ead3a6}.jr-result{color:#fff0d0;text-shadow:0 2px 8px #092b36}.jr-letterbox:before{content:"";position:absolute;inset:-16px -32px -20px -22px;background:radial-gradient(ellipse at top left,#092734b3,transparent 80%);z-index:-1}.jr-letterbox{isolation:isolate}.jr-scene [data-jr-panorama]{filter:saturate(.85)}.jr-race[data-course=grove] [data-jr-panorama]{filter:hue-rotate(22deg) saturate(.7)}.jr-race[data-course=ridge] [data-jr-panorama]{filter:hue-rotate(330deg) saturate(.7)}

.jr-aura{opacity:0;fill:none;stroke:var(--rider);stroke-width:3;stroke-linecap:round;transform:scale(1.35);filter:drop-shadow(0 0 5px var(--rider))}.jr-powered .jr-aura{opacity:.8;animation:vw-glow 1s infinite alternate}.jr-race .bt-track{opacity:.6}.jr-race .bt-track-intent{display:none}.jr-letterbox,.jr-result,.jr-distance{z-index:4}

button.jm-traveler{padding:0;background:none;border:none;cursor:pointer;color:inherit}button.jm-traveler:focus-visible{outline:3px solid #ffe6af;outline-offset:5px}.jm-route-lit{filter:drop-shadow(0 0 5px #eacb9266)}

/* Crew assists ride alongside the lead; every label comes from resolved telemetry. */
.jr-assist-cast{pointer-events:none;animation:jr-crew-arrive .65s ease-out both}.jr-helper{filter:drop-shadow(0 0 7px #b8ffe688)}.jr-helper text{fill:#fff3d1;paint-order:stroke;stroke:#143d43;stroke-width:3px;font:700 10px system-ui}.jr-assist-link{fill:none;stroke:#c3ffe3;stroke-width:4;stroke-dasharray:9 12;animation:jr-team-flow .5s linear infinite;filter:drop-shadow(0 0 5px #b9ffd7)}.jr-team-ring{fill:none;stroke:#ffe5a8;stroke-width:2;stroke-dasharray:3 18;transform-origin:0 -40px;animation:jr-team-ring 1.5s ease-out infinite}.jr-combo .jr-wake{stroke:#ffe5a8;stroke-width:5}.jr-crew-call{flex-basis:100%;padding-top:4px;border-top:1px solid #ffe1ab66}.jr-crew-call small{max-width:250px;font-size:10px!important}.jr-result{flex-wrap:wrap}.jr-crew-receipt{position:absolute;left:18px;bottom:48px;max-width:min(480px,75%);padding:9px 13px;border-left:2px solid #f5cf8c;background:linear-gradient(90deg,#0c303ee8,#0c303e99);color:#fff0d1;pointer-events:none}.jr-crew-receipt small{display:block;font-size:7px;letter-spacing:2px;color:#b9e3d4}.jr-crew-receipt b{display:block;font-size:13px;margin:3px 0}.jr-crew-receipt span{display:block;font-size:10px;line-height:1.5}.jr-moving .jr-crew-receipt{visibility:hidden}
@keyframes jr-crew-arrive{from{opacity:0;translate:-100px 25px}to{opacity:1;translate:0 0}}@keyframes jr-team-flow{to{stroke-dashoffset:-42}}@keyframes jr-team-ring{from{scale:.6;opacity:1}to{scale:1.8;opacity:0}}
@media(max-width:700px){.jr-crew-receipt{left:12px;bottom:45px;max-width:75%;padding:6px 9px}.jr-crew-receipt span{font-size:8px}.jr-race:not(.jr-moving) .jr-result:has(.jr-crew-call){display:none}.jr-crew-call small{font-size:8px!important}.jr-helper text{font-size:9px}}
@media(prefers-reduced-motion:reduce){.jr-assist-cast,.jr-assist-link,.jr-team-ring{animation:none!important}}html[data-motion=quick] .jr-assist-cast,html[data-motion=quick] .jr-assist-link,html[data-motion=quick] .jr-team-ring{animation:none!important}
