/* Restore pre-layout component visuals. Keep spacing/grid/typography refinements from portal-polish-v2.css. */
.release-card,
.account-card {
  border: 0;
  border-radius: 6px;
  box-shadow: none;
}

.utility-card {
  border: 0;
  border-radius: 6px;
  box-shadow: none;
}

.release-product-icon {
  width: 48px;
  height: 48px;
  border-radius: 12px;
}

.meta-item {
  border-radius: 6px;
}

.download-button {
  border-radius: 6px;
}

.login-form input {
  border-radius: 6px;
}

.login-button {
  border-radius: 6px;
}

.account-link-button {
  border-radius: 8px;
}

.account-status-panel {
  border-radius: 7px;
}

.flow-step {
  border-radius: 6px;
}

.utility-icon {
  width: 28px;
  height: 28px;
  border-radius: 8px;
}

.modal-card {
  border-radius: 6px;
}

.onboarding-field input {
  min-height: 42px;
}

.onboarding-submit {
  min-height: 43px;
}

@media (max-width: 650px) {
  .release-card,
  .account-card,
  .utility-card {
    border-radius: 6px;
  }
}

/* Scroll depth: foreground cards move at normal page speed; cosmic layers deliberately lag behind. */
.cosmos-glow,
.cosmos-nebula-cyan,
.cosmos-nebula-violet {
  will-change: transform;
  backface-visibility: hidden;
}

@supports (animation-timeline: scroll()) {
  .cosmos-glow {
    animation: portal-depth-glow linear both;
    animation-timeline: scroll(root block);
    animation-range: 0% 100%;
  }

  .cosmos-nebula-violet {
    animation: portal-depth-nebula-violet linear both;
    animation-timeline: scroll(root block);
    animation-range: 0% 100%;
  }

  .cosmos-nebula-cyan {
    animation: portal-depth-nebula-cyan linear both;
    animation-timeline: scroll(root block);
    animation-range: 0% 100%;
  }

  .parallax-layer-far {
    animation: portal-depth-stars-far linear both;
    animation-timeline: scroll(root block);
    animation-range: 0% 100%;
  }

  .parallax-layer-near {
    animation: portal-depth-stars-near linear both;
    animation-timeline: scroll(root block);
    animation-range: 0% 100%;
  }
}

@keyframes portal-depth-glow {
  from { transform: translate3d(0,0,0); }
  to { transform: translate3d(0,-10px,0); }
}

@keyframes portal-depth-nebula-violet {
  from { transform: translate3d(0,0,0); }
  to { transform: translate3d(0,-18px,0); }
}

@keyframes portal-depth-nebula-cyan {
  from { transform: translate3d(0,0,0); }
  to { transform: translate3d(0,-26px,0); }
}

@keyframes portal-depth-stars-far {
  from { transform: translate3d(0,0,0); }
  to { transform: translate3d(0,-82px,0); }
}

@keyframes portal-depth-stars-near {
  from { transform: translate3d(0,0,0); }
  to { transform: translate3d(0,-172px,0); }
}

@media (prefers-reduced-motion: reduce) {
  .cosmos-glow,
  .cosmos-nebula-cyan,
  .cosmos-nebula-violet,
  .parallax-layer-far,
  .parallax-layer-near {
    animation: none !important;
    transform: none !important;
  }
}

/* Give the release version a little more breathing room without changing the card layout. */
.version-large {
  gap: 22px;
}

.version-large strong {
  font-size: clamp(3.35rem, 5.2vw, 5.15rem);
  line-height: .98;
  letter-spacing: -.018em;
  font-weight: 560;
}

@media (max-width: 650px) {
  .version-large strong {
    font-size: clamp(3.1rem, 16vw, 4.35rem);
    letter-spacing: -.015em;
  }
}

/* Avoid painting the intentionally blurred intro frame on refresh. */
.release-shell {
  animation: none !important;
}

/* Brighter small stars; major stars keep only their directional star rays. */
.small-star {
  box-shadow:
    0 0 10px currentColor,
    0 0 24px color-mix(in srgb, currentColor 82%, transparent),
    0 0 42px color-mix(in srgb, currentColor 48%, transparent),
    0 0 68px color-mix(in srgb, currentColor 20%, transparent);
}

.major-star,
.hero-flare {
  box-shadow: none;
}

.major-star::before,
.major-star::after,
.hero-flare::before,
.hero-flare::after {
  filter:
    drop-shadow(0 0 4px rgba(var(--star-color), .82))
    drop-shadow(0 0 12px rgba(var(--star-color), .38));
}

.hero-dot {
  box-shadow:
    0 0 12px currentColor,
    0 0 28px rgba(255, 240, 208, .48),
    0 0 46px rgba(205, 235, 242, .18);
}
