/* A live current connects the whole galaxy. Gold stardust follows adventures enjoyed. */
.platform-badges img.pc-icon{width:27px;height:23px}.platform-badges.large img.pc-icon{width:36px;height:30px}.edition-pc-icon{width:36px;height:27px;display:block}
.timeline-sections{position:relative;isolation:isolate}.galaxy-route{position:absolute;inset:0;z-index:2;pointer-events:none;overflow:hidden;fill:none}.galaxy-route path{fill:none;stroke:var(--phase);stroke-linecap:round}.ride-track{mask-image:none}.phase-heading,.archive-card,.phase-transfer{z-index:3}.phase[data-direction=reverse] .ride-track{direction:rtl}.phase-cards{direction:ltr}.phase[data-direction=reverse] .phase-cards{flex-direction:row-reverse}
.current-direction{display:inline-flex;align-items:center;margin-top:20px;color:var(--phase);font-size:9px;letter-spacing:2px;opacity:.78;text-shadow:0 0 15px var(--phase)}
.journey-route .route-line,.galaxy-route .route-line{stroke-width:1.5;stroke-dasharray:none;opacity:.6}.journey-route .route-haze,.galaxy-route .route-haze{stroke-width:13;opacity:.14;filter:blur(5px)}
.journey-route .route-electric,.galaxy-route .route-electric{stroke-width:2.1;stroke-dasharray:2 9 27 180;opacity:.9;filter:drop-shadow(0 0 5px var(--phase));animation:galactic-current 7s linear infinite}.journey-route .route-electric.echo,.galaxy-route .route-electric.echo{stroke:#f4ffff;stroke-width:.8;stroke-dasharray:1 37 10 170;opacity:.65;animation:galactic-current 5s linear infinite;animation-delay:-2.3s}
.journey-route .route-completed-glow,.galaxy-route .route-completed-glow{stroke:#ffca78;stroke-width:4;opacity:.27;filter:drop-shadow(0 0 8px #ffbb55);stroke-dasharray:75 125;animation:ranger-stardust 12s linear infinite}.journey-route .route-completed-stars,.galaxy-route .route-completed-stars{stroke:#fff4d5;stroke-width:3;stroke-dasharray:1 16 1 90 7 130;opacity:1;filter:drop-shadow(0 0 5px #ffd789);animation:ranger-stardust 6s linear infinite}
.prismatic-galaxy .journey-route path{animation:none}.prismatic-galaxy .journey-route .route-electric{animation:galactic-current 7s linear infinite,prism-world 20s linear infinite}.prismatic-galaxy .journey-route .route-electric.echo{animation:galactic-current 5s linear infinite}.prismatic-galaxy .journey-route .route-completed-glow{animation:ranger-stardust 12s linear infinite}.prismatic-galaxy .journey-route .route-completed-stars{animation:ranger-stardust 6s linear infinite}
@keyframes galactic-current{to{stroke-dashoffset:-1090}}@keyframes ranger-stardust{to{stroke-dashoffset:-1200}}
.card-action-row{display:flex;align-items:stretch;gap:7px;margin-top:13px}.card-action-row .complete-button{margin:0;flex:1;min-width:0;padding:10px 9px}.route-options-button{width:44px;min-width:44px;min-height:46px;border-radius:8px;background:#15283bd9;color:#c5d4e1;font-size:22px;letter-spacing:1px;transition:background .2s,transform .2s}.route-options-button:hover{background:#29445a;transform:translateY(-2px)}.choice-caption{font-size:11px;line-height:1.5;color:#b9c9d6;margin-top:9px}.status-skipped .poster-wrap img{filter:saturate(.35) brightness(.75)}.status-skipped .station-orbit{opacity:.16}.status-skipped .station-label{color:#b2bdc7}.status-later .station-orbit{animation:station-orbit 22s linear infinite;opacity:.5}.hangar-phase .world-art{opacity:.38;background-position:70% 50%}.hangar-phase .world-atmosphere{background:linear-gradient(0deg,#070e1a,#122b4077,#070e1a)}
#stop-popover{position:fixed;inset:auto;margin:0;width:260px;max-width:calc(100vw - 24px);padding:24px 20px;border:0;border-radius:15px;background:linear-gradient(145deg,#183048f5,#101c30fc);color:#d6e7ed;box-shadow:0 20px 80px #000b;backdrop-filter:blur(25px);animation:modal-arrival .2s ease-out}#stop-popover::backdrop{background:transparent}#stop-popover h3{font:500 16px/1.4 Inter,sans-serif;margin:0 0 12px;color:#e1ebf0}#stop-popover button,.dossier-route-choices button{display:flex;flex-direction:column;align-items:flex-start;gap:5px;min-height:58px;width:100%;padding:12px 10px;text-align:left;color:#e0edf2;border-radius:8px;transition:background .2s}#stop-popover button:hover,.dossier-route-choices button:hover{background:#98c8eb12}#stop-popover button b,.dossier-route-choices button b{font-size:13px;font-weight:500}#stop-popover button small,.dossier-route-choices button small{font-size:11px;color:#99b0c4;line-height:1.5}.dossier-route-choices{margin:25px 0;padding:8px 0}.dossier-route-choices summary{display:flex;justify-content:space-between;align-items:center;cursor:pointer;min-height:44px;font-size:13px;color:#b7cfe2;list-style:none}.dossier-route-choices summary::-webkit-details-marker{display:none}.dossier-route-choices summary span{font-size:24px;letter-spacing:3px}.dossier-route-choices>div{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;background:#11223677;padding:10px;border-radius:10px}.choices-log{margin:28px 0}.choices-log>div{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:16px 0}.choices-log b,.choices-log small{display:block}.choices-log b{font-size:14px;color:#dce5e9}.choices-log small{font-size:12px;color:#98b1c4;margin-top:5px}.choices-log button{min-height:44px;padding:10px 14px;white-space:nowrap;background:#1a3043;color:#ffdcaa;border-radius:8px;font-size:12px}
/* One listening companion in the top bar; the full SoundCloud players remain offstage. */
#soundcloud-engine{position:fixed;left:-10000px;top:0;width:300px;height:166px;opacity:0;pointer-events:none}#soundcloud-engine iframe{position:absolute;inset:0;width:300px;height:166px;border:0}
.music-wave{display:flex;gap:2px;height:17px;align-items:center;min-width:13px}.music-wave i{width:2px;height:5px;background:#7ad9f0;border-radius:2px}.sound-hub[data-playback=playing] .music-wave i,.sound-hub[data-playback=fading] .music-wave i{animation:quiet-wave 1.7s ease-in-out infinite}.music-wave i:nth-child(2){animation-delay:-.6s!important;height:11px}.music-wave i:nth-child(3){animation-delay:-1.1s!important;height:15px}.music-wave i:nth-child(4){animation-delay:-.3s!important;height:8px}@keyframes quiet-wave{50%{height:3px;opacity:.5}}
@media(min-width:1000px){.phase .phase-cards{width:100%;gap:32px;padding-right:0;justify-content:space-evenly}.phase .material-card{width:calc((100% - (var(--row-count) - 1)*32px)/var(--row-count));flex-basis:calc((100% - (var(--row-count) - 1)*32px)/var(--row-count));max-width:250px}.phase[data-entry-count='1'] .material-card,.phase[data-entry-count='2'] .material-card,.phase[data-entry-count='3'] .material-card{width:250px;flex-basis:250px}.phase[data-entry-count='6'] .card-title{font-size:25px;min-height:78px}.phase[data-entry-count='6'] .card-action-row .complete-button{font-size:12px}.phase[data-entry-count='6'] .check-box{width:17px;height:17px;flex-shrink:0}.phase[data-entry-count='6'] .card-action-row{gap:4px}.phase[data-entry-count='6'] .route-options-button{width:38px;min-width:38px}.phase .ride-track{overflow:hidden}}
@media(max-width:999px){.phase .phase-cards{width:max-content;min-width:100%;justify-content:flex-start;gap:32px}.phase .material-card{width:232px;flex-basis:232px}.phase[data-direction=reverse] .phase-cards{padding-right:0;padding-left:24px}.phase[data-direction=reverse] .ride-track{scroll-padding-right:6%}.phase .ride-track{overflow-x:auto}.phase[data-entry-count='1'] .phase-cards{width:100%;justify-content:center;padding-right:0;padding-left:0}.music-dock{bottom:calc(88px + env(safe-area-inset-bottom));right:14px;width:345px}.current-direction{font-size:8px;margin-top:17px;letter-spacing:1.5px}}
@media(max-width:540px){.dossier-route-choices>div{grid-template-columns:1fr}.music-dock{padding:8px 10px;gap:4px;right:14px}.mix-title b{font-size:10px}.music-dock .mix-title{gap:7px}.music-wave{min-width:11px}.current-direction{margin-bottom:0}.galaxy-route .route-haze{stroke-width:8;opacity:.12}.galaxy-route .route-electric{opacity:.65}.choices-log b{font-size:13px}}
.pause-motion .route-electric,.pause-motion .route-completed-glow,.pause-motion .route-completed-stars,.pause-motion .music-wave i{animation:none!important}
@media(prefers-reduced-motion:reduce){.route-electric,.route-completed-glow,.route-completed-stars,.music-wave i{animation:none!important}}
/* The themed chapter rules share the same layout; keep the whole row in view. */
.journey-route .route-segment .route-line{stroke-dasharray:none;opacity:.6}.journey-route .route-segment.detour .route-line{stroke-dasharray:7 7}
@media(min-width:1000px){.phase[data-theme] .phase-cards{width:100%;gap:32px;padding-right:0;padding-left:0;justify-content:space-evenly}.phase[data-theme] .ride-track{overflow:hidden}}
@media(max-width:999px){.phase[data-theme] .phase-cards{width:max-content;gap:32px;justify-content:flex-start}.phase[data-entry-count='1'] .phase-cards{width:100%;justify-content:center}}

/* Dimensional descents curve through scenery, behind the adventure covers. */
.phase[data-theme]{isolation:auto}.phase .ride-track{z-index:3}.route-start .station-orbit,.route-finish .station-orbit{opacity:1}.route-start .station-button{box-shadow:0 0 30px color-mix(in srgb,var(--phase) 30%,transparent)}.route-finish .station-button{background:radial-gradient(circle,#b2e9fc16,#0a1728 70%);box-shadow:0 0 30px color-mix(in srgb,var(--phase) 30%,transparent)}.route-finish .station-orbit{background:conic-gradient(from 25deg,transparent 0 7%,#e2fbff 7% 18%,transparent 18% 32%,var(--phase) 32% 43%,transparent 43% 57%,#e2fbff 57% 68%,transparent 68% 82%,var(--phase) 82% 93%,transparent 93%)}
.galaxy-route .relay-halo{fill:var(--phase);fill-opacity:.025;stroke:var(--phase);stroke-width:1;stroke-opacity:.16}.galaxy-route .relay-orbit{stroke:var(--phase);stroke-width:1.2;stroke-dasharray:2 6 10 6;opacity:.6;transform-box:fill-box;transform-origin:center;animation:station-orbit 22s linear infinite}.galaxy-route .relay-core{stroke:none;fill:#d6f4ff;opacity:.85;filter:drop-shadow(0 0 7px var(--phase))}
/* Music and its settings share the top bar on every screen size. */
.topbar{position:sticky;top:0;z-index:12;backdrop-filter:blur(22px)}.phase-nav{top:84px}.phase{scroll-margin-top:153px}.sound-hub{display:flex;align-items:center;gap:3px;padding:3px;background:linear-gradient(120deg,#6aa7c513,#54779406);border-radius:22px;flex-shrink:0}.hub-play{display:grid;place-items:center;width:36px;height:38px;min-width:36px;border-radius:50%;color:#c8e9f2;font-size:12px;background:#7ad9f00c}.hub-play:hover{background:#7ad9f020}.hub-options{display:flex;align-items:center;gap:10px;min-height:38px;padding:3px 12px 3px 8px;text-align:left;color:#c8e9f2;border-radius:20px}.hub-track{width:137px;min-width:0}.hub-track b,.hub-track small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hub-track b{font-size:10px;font-weight:500;line-height:1.6;color:#d9e9ed}.hub-track small{font-size:8px;line-height:1.6;color:#8cabbc}.sound-hub[data-playback=playing],.sound-hub[data-playback=fading]{background:linear-gradient(120deg,#75b5cc1c,#5477940a)}.sound-popover{top:90px;right:max(22px,5%)}.sound-transport{display:flex;align-items:center;gap:9px;margin-top:16px}.sound-transport .button{flex:1;margin:0;min-height:44px;font-size:13px}.sound-transport>button:not(.button){display:grid;place-items:center;width:44px;height:44px;border-radius:8px;background:#85b9d30f;color:#c1dce8;font-size:20px}.sound-transport #music-stop{font-size:10px}.sound-transport button:disabled{opacity:.3;cursor:default}.sound-transport>button:hover:not(:disabled):not(.button){background:#85b9d322}.sound-status{min-height:30px;line-height:1.6}
@media(max-width:1400px){.brand-sub,.brand-divider{display:none}}
@media(max-width:1100px){.hub-track{display:none}.hub-options{width:36px;justify-content:center;padding:4px}.sound-hub{gap:0}.header-actions{gap:10px}}
@media(max-width:800px){.phase-nav{top:74px}.phase{scroll-margin-top:137px}.sound-popover{top:80px;right:14px}}
@media(max-width:540px){.phase-nav{top:68px}.phase{scroll-margin-top:122px}.sound-popover{top:74px;right:10px}.header-actions{gap:6px}.sound-hub{padding:2px}.hub-play,.hub-options{width:34px;min-width:34px;height:40px;min-height:40px}.sound-hub .music-wave{min-width:13px}.sound-transport .button{font-size:12px}}
@media(max-width:360px){.brand img{width:80px}.topbar{padding-left:4%;padding-right:4%;gap:5px}.header-actions{gap:4px}.hub-play,.hub-options{width:31px;min-width:31px}.progress-pill{padding:8px 6px;font-size:11px}.bolt-counter{min-width:27px}.icon-button{min-width:24px;width:24px}}
.pause-motion .relay-orbit{animation:none!important}@media(prefers-reduced-motion:reduce){.relay-orbit{animation:none!important}}
