/* PixelDeck 95: a richly populated pixel sky with a bounded animation budget. */
.v94-site {
  --cosmos-sky: var(--theme-sky, color-mix(in srgb, #070b1c 94%, var(--pd-bg, #0b1512)));
}
.v94-site:not(.museum-page):not(.pixel-workspace):not(.v90-account) {
  background: radial-gradient(ellipse at 8% 16%, var(--cosmos-cloud-a, #653ea540), transparent 44rem), radial-gradient(ellipse at 95% 44%, var(--cosmos-cloud-b, #176d8138), transparent 46rem), radial-gradient(ellipse at 24% 96%, var(--cosmos-cloud-c, #5b31723d), transparent 45rem), var(--cosmos-sky);
  background-attachment: scroll;
}
.v94-site .bg-grid { display: none; }
.v94-site #pixelBackground.pixel-cosmos {
  position: fixed; inset: 0; overflow: hidden; z-index: 0; pointer-events: none;
  contain: strict; isolation: isolate; opacity: 1; user-select: none;
}
.v94-site #pixelBackground.pixel-cosmos::before,
.v94-site #pixelBackground.pixel-cosmos::after { content: none; animation: none; }
.v94-site #pixelBackground.pixel-cosmos[hidden],
.v94-site .cosmos-motion-toggle[hidden] { display: none !important; }
.pixel-cosmos .cosmos-starfield {
  position: absolute; inset: 0; z-index: 2; display: block; width: 100%; height: 100%;
  overflow: hidden; shape-rendering: crispEdges;
}
.pixel-cosmos .cosmos-star {
  position: absolute; z-index: 4; width: 2px; height: 2px;
  color: var(--star-color, #ffe2b5); background: currentColor; opacity: .78;
}
.pixel-cosmos .cosmos-star--near:nth-child(3n) { width: 3px; height: 3px; }
.pixel-cosmos .cosmos-sparkle { box-shadow: -3px 0 currentColor, 3px 0 currentColor, 0 -3px currentColor, 0 3px currentColor; }
.pixel-cosmos .cosmos-twinkle { animation: pd95-near-star var(--star-duration, 13s) ease-in-out var(--star-delay, 0s) infinite paused; }
@keyframes pd95-near-star { 0%, 100% { opacity: .4; transform: translateY(0); } 50% { opacity: .95; transform: translateY(-6px); } }

.pixel-cosmos .cosmos-art { position: absolute; }
.pixel-cosmos .cosmos-parallax { transition: transform .7s cubic-bezier(.2,.7,.2,1); }
.pixel-cosmos .cosmos-art img { display: block; width: 100%; height: auto; image-rendering: pixelated; }
.pixel-cosmos .cosmos-nebula { z-index: 1; aspect-ratio: 3 / 2; }
.pixel-cosmos .cosmos-nebula--rift { top: -11%; left: -19%; width: clamp(680px, 86vw, 1440px); opacity: var(--cosmos-rift-opacity, .84); }
.pixel-cosmos .cosmos-nebula--rose { bottom: -40%; right: -20%; width: clamp(760px, 88vw, 1560px); opacity: calc(var(--cosmos-rift-opacity, .84) * .73); }
.pixel-cosmos .cosmos-nebula--rose img { transform: rotate(174deg); }
.pixel-cosmos .cosmos-nebula--cyan { top: 18%; right: -24%; width: min(66vw, 960px); opacity: var(--cosmos-cyan-opacity, .64); }
.pixel-cosmos .cosmos-nebula--haze { bottom: -5%; left: -12%; width: min(54vw, 900px); opacity: calc(var(--cosmos-cyan-opacity, .64) * .66); }
.pixel-cosmos .cosmos-nebula--haze img { transform: rotate(-32deg); }
/* Only these two cloud layers drift. The other clouds and starfield stay static. */
.pixel-cosmos .cosmos-nebula--rift img { animation: pd95-nebula-rift 88s ease-in-out -18s infinite paused; }
.pixel-cosmos .cosmos-nebula--cyan img { animation: pd95-nebula-cyan 104s ease-in-out -31s infinite paused; }
@keyframes pd95-nebula-rift { 0%, 100% { transform: translate3d(-8px, 0, 0) rotate(-4deg); } 50% { transform: translate3d(14px, 12px, 0) rotate(-1deg); } }
@keyframes pd95-nebula-cyan { 0%, 100% { transform: translate3d(0, 0, 0) rotate(165deg); } 50% { transform: translate3d(-18px, -12px, 0) rotate(169deg); } }
.pixel-cosmos .cosmos-planet { z-index: 3; width: clamp(120px, 12vw, 196px); opacity: .85; }
.pixel-cosmos .cosmos-planet--one { top: 23%; right: max(-44px, calc((100vw - 1440px) / 4 - 24px)); }
.pixel-cosmos .cosmos-planet--two { bottom: 13%; left: max(-20px, calc((100vw - 1440px) / 6)); width: clamp(74px, 7vw, 114px); opacity: .6; }
.pixel-cosmos .cosmos-planet img { animation: pd94-planet 26s ease-in-out -9s infinite paused; }
.pixel-cosmos .cosmos-planet--two img { animation-duration: 39s; animation-delay: -17s; }
@keyframes pd94-planet { 0%, 100% { transform: translate3d(0, 3px, 0) rotate(-3deg); } 50% { transform: translate3d(3px, -9px, 0) rotate(1deg); } }

.pixel-cosmos .cosmos-comet {
  position: absolute; z-index: 4; left: 3%; top: 31%; width: 3px; height: 3px;
  color: var(--pd-accent, #ffdc8a); background: currentColor; opacity: 0;
  box-shadow: -4px -2px currentColor, -8px -4px color-mix(in srgb, currentColor 65%, transparent), -12px -6px color-mix(in srgb, currentColor 40%, transparent), -16px -8px color-mix(in srgb, currentColor 20%, transparent);
  animation: pd94-comet 23s linear -18s infinite paused;
}
.pixel-cosmos .cosmos-comet--2 { left: 81%; top: 61%; color: var(--pd-accent-2, #8ae0ca); animation-duration: 37s; animation-delay: -13s; }
.pixel-cosmos .cosmos-comet--3 { left: 47%; top: 8%; color: var(--cosmos-star-2, #c9b8ff); animation-duration: 31s; animation-delay: -4s; }
@keyframes pd94-comet { 0%, 78% { transform: translate3d(0, 0, 0); opacity: 0; } 80% { opacity: .75; } 86% { transform: translate3d(164px, 82px, 0); opacity: 0; } 100% { transform: translate3d(164px, 82px, 0); opacity: 0; } }
.pixel-cosmos .cosmos-reading-veil {
  position: absolute; z-index: 5; inset: 0;
  background: linear-gradient(90deg, transparent 6%, color-mix(in srgb, var(--cosmos-sky) 14%, transparent) 20%, color-mix(in srgb, var(--cosmos-sky) 45%, transparent) 42%, color-mix(in srgb, var(--cosmos-sky) 35%, transparent) 63%, color-mix(in srgb, var(--cosmos-sky) 15%, transparent) 84%, transparent);
}

html[data-pixel-motion=running] .pixel-cosmos :is(.cosmos-twinkle, .cosmos-nebula img, .cosmos-planet img, .cosmos-comet) { animation-play-state: running; }
html[data-pixel-motion=paused] .pixel-cosmos .cosmos-parallax { transition: none; }
html[data-cosmos-focus=quiet] .v94-site:not(.museum-page):not(.pixel-workspace) { background: var(--pd-bg); }

.v94-site .cosmos-motion-toggle {
  position: fixed; z-index: 45; bottom: max(16px, env(safe-area-inset-bottom)); left: 16px;
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  min-height: 40px; padding: 8px 11px; border: 1px solid var(--pd-line, #778bb54a); border-radius: 3px;
  background: var(--pd-bg, #0b1425ed); color: var(--pd-muted, #becae3); font: 600 .875rem/1.35 var(--px-mono, monospace);
  box-shadow: 2px 2px 0 #0004; cursor: pointer;
}
.v94-site .cosmos-motion-toggle:hover { border-color: var(--pd-accent-2); color: var(--pd-text); }
.v94-site .cosmos-motion-toggle[aria-pressed=true] { border-color: var(--pd-accent); color: var(--pd-accent); }
.v94-site .cosmos-motion-toggle:disabled { opacity: .7; cursor: default; }
.v94-site .cosmos-motion-icon { font-size: 1rem; width: 16px; flex: none; }

/* Two static cloud textures on compact devices; only six tiny stars drift. */
html[data-pixel-density=low] .pixel-cosmos .cosmos-nebula--rift { width: min(158vw, 1000px); left: max(-56vw, -230px); top: -4%; opacity: var(--cosmos-rift-opacity, .76); }
html[data-pixel-density=low] .pixel-cosmos .cosmos-nebula--rift img { transform: rotate(22deg); }
html[data-pixel-density=low] .pixel-cosmos .cosmos-nebula--cyan { width: min(135vw, 900px); left: auto; right: max(-46vw, -260px); top: auto; bottom: -2%; opacity: var(--cosmos-cyan-opacity, .64); }
html[data-pixel-density=low] .pixel-cosmos .cosmos-nebula--cyan img { transform: rotate(165deg); }
html[data-pixel-density=low] .pixel-cosmos .cosmos-nebula img { animation: none; }
html[data-pixel-density=low] .pixel-cosmos .cosmos-planet { width: 112px; right: -33px; top: 18%; opacity: .65; }
html[data-pixel-density=low] .pixel-cosmos .cosmos-planet img { animation: none; }
html[data-pixel-density=low] .pixel-cosmos .cosmos-reading-veil { background: linear-gradient(90deg, color-mix(in srgb, var(--cosmos-sky) 8%, transparent), color-mix(in srgb, var(--cosmos-sky) 40%, transparent) 45%, color-mix(in srgb, var(--cosmos-sky) 20%, transparent)); }
@media (max-width: 700px) {
  .v94-site .cosmos-motion-toggle { left: 12px; bottom: calc(82px + env(safe-area-inset-bottom)); min-height: 44px; padding: 10px; font-size: .875rem; }
}
@media (prefers-reduced-motion: reduce) {
  .pixel-cosmos *, .pixel-cosmos *::before, .pixel-cosmos *::after { animation: none !important; transition: none !important; }
}
@media (forced-colors: active) {
  .v94-site #pixelBackground.pixel-cosmos, .v94-site .cosmos-motion-toggle { display: none; }
}
