/* Used exclusively by .local-preview/play-router.php. */
html[data-visual-theme="galaxy"] body.game-active { background:#050c21 !important; }
html[data-visual-theme="galaxy"] .game-bg { display:none !important; }
#local-cosmos { position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none;isolation:isolate;background:#07122d url('/images/bubbles/galaxy/cosmos-background.png') center/cover no-repeat; }
#local-cosmos::after { content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent 12%,#050d2438 37%,#050d2438 63%,transparent 88%),radial-gradient(ellipse at center,transparent 35%,#0205195c 100%); }
html[data-visual-theme="galaxy"] #root { position:relative;z-index:1; }
.cosmos-stars { position:absolute;inset:0; }
.cosmos-star { position:absolute;border-radius:50%;background:#e5fcff;box-shadow:0 0 7px #a3f6ff;animation:cosmos-twinkle var(--duration) ease-in-out infinite alternate;animation-delay:var(--delay); }
.cosmos-ship { position:absolute;left:-230px;top:var(--altitude);width:var(--size);animation:cosmos-cross var(--travel) linear infinite;animation-delay:var(--start);will-change:transform;filter:drop-shadow(0 0 9px #50ff9a60); }
.cosmos-ship img { display:block;width:100%;height:auto;animation:cosmos-hover 3.7s ease-in-out infinite; }
.cosmos-ship.reverse { animation-name:cosmos-cross-back;filter:drop-shadow(0 0 8px #a980ff70); }
.cosmos-ship.reverse img { scale:-1 1; }
.cosmos-orbit { position:absolute;border-radius:50%;width:180px;height:230px;border:2px solid #bcff5566;box-shadow:inset 0 0 20px #92ff4320,0 0 24px #92ff4320;left:4%;top:40%;transform:rotate(-22deg);opacity:.55; }
.cosmos-orbit::before,.cosmos-orbit::after { content:'';position:absolute;inset:8px;border-radius:48% 52% 44% 56%;border:4px dashed #a2ff53aa;animation:cosmos-spin 22s linear infinite; }
.cosmos-orbit::after { inset:20px;border-width:2px;animation-direction:reverse;animation-duration:16s; }
.cosmos-orbit.far { left:auto;right:2%;top:72%;width:110px;height:145px;opacity:.32; }
html[data-visual-theme="galaxy"] .bubble-canvas { background:#040c246e;border:1px solid #7ceeff36;border-radius:18px;box-shadow:0 0 28px #41caff12,inset 0 0 30px #040c2430; }
html[data-visual-theme="galaxy"] .bb-hud { background:linear-gradient(180deg,#070f2fbd,#091b3350);border:1px solid #88ffbf24;border-radius:14px;backdrop-filter:blur(8px); }
html[data-visual-theme="galaxy"] .bb-hud-progress { overflow:visible;margin-top:9px;margin-bottom:5px; }
html[data-visual-theme="galaxy"] .bb-hud-progress-fill { position:relative;background:linear-gradient(90deg,#5aff7d,#45f4ee);box-shadow:0 0 8px #49ffe166; }
html[data-visual-theme="galaxy"] .bb-hud-progress-fill::after { content:'';position:absolute;z-index:2;right:-20px;top:50%;width:40px;height:30px;transform:translateY(-50%);background:url('/images/bubbles/galaxy/progress-rocket.svg') center/contain no-repeat;filter:drop-shadow(0 0 4px #64f7ff99);pointer-events:none; }
html[data-visual-theme="galaxy"] .bb-hud-progress.complete::after { display:none; }
html[data-visual-theme="galaxy"] .bb-hud-progress-fill.complete::after { filter:drop-shadow(0 0 7px #ffe47d); }
@keyframes cosmos-cross { from { transform:translate3d(-30px,0,0) rotate(-5deg); } to { transform:translate3d(calc(100vw + 470px),-55px,0) rotate(4deg); } }
@keyframes cosmos-cross-back { from { transform:translate3d(calc(100vw + 470px),0,0) rotate(3deg); } to { transform:translate3d(-30px,50px,0) rotate(-4deg); } }
@keyframes cosmos-hover { 0%,100% { transform:translateY(-5px) rotate(-2deg); } 50% { transform:translateY(5px) rotate(2deg); } }
@keyframes cosmos-spin { to { rotate:360deg; } }
@keyframes cosmos-twinkle { from { opacity:.25;scale:.8; } to { opacity:.9;scale:1.2; } }
.cosmos-paused #local-cosmos * { animation-play-state:paused !important; }
@media(min-width:600px) { #local-cosmos { background-size:100% 100%; } }
@media(max-width:600px) { #local-cosmos { background-position:center; }.cosmos-orbit { left:-90px;opacity:.3; }.cosmos-orbit.far { right:-60px; }.cosmos-ship { width:calc(var(--size) * .7); } }
@media(prefers-reduced-motion:reduce) { #local-cosmos * { animation:none !important; }.cosmos-ship { left:4%;top:32%;transform:rotate(-8deg); }.cosmos-ship.reverse { left:auto;right:1%;top:75%; }.cosmos-ship.distant { display:none; } }
