/* Interior review: retain the original typefaces and animation assets. */
html:has(main:not(.mystery-home)) main:not(.mystery-home) .v59-section :is(h1, h2) {
  font-weight: 300;
}

/* Remove decorative separators, preserving control outlines and portal geometry. */
html:has(main:not(.mystery-home)) main:not(.mystery-home) :is(
  .content-section, .inner-content, .section-kicker, .site-header, .music-header,
  .signal-header, .site-footer, .release-footer, .stardust-footer,
  .observatory-next-page, .album-next, .episode-grid, .episode-card,
  .system-layers, .system-layer, .signal-specs, .signal-specs > div,
  .field-index-card__copy, .field-meta, .transmission-card > div:last-child,
  .future-episode-list, .future-episode-list article, .v59-event,
  .v59-timeline > *, .v59-map > div, .v59-chart-grid article,
  .v59-results, .v59-results > div, .pillar-grid article, .program-card,
  .manifestation-card figure, .intro-note, .vinyl-note, .program-guest,
  .program-card ul, .schedule-list, .schedule-list li,
  .music-chapters .orbit-players__grid article, .sequence, .sequence-row,
  .mast-meta, .mast-meta > *, .field-data-grid, .field-data-grid article,
  .architecture-grid, .architecture-grid article, .artifact-credit dl,
  .artifact-credit dl > *, .vinyl-sequence-credits, .vinyl-sequence-credits > *,
  .rnc-archive__meta, .universe-map__rows, .universe-map__rows article,
  .press-card, .stardust-section, .system-callouts > a,
  .orbit-press-card, .press-orbit-card, .orbit-press-card > div,
  .creator-stats > div, .v61-career-result, .v61-credentials > div,
  .rnc-divisions__grid article, .series-card, .subscribe-box,
  #vinyl-edition ul > li, #complete-tracklist ol > li
) {
  border-color: transparent !important;
}

html:has(main:not(.mystery-home)) main:not(.mystery-home) hr {
  visibility: hidden;
}

/* Static ornament between chapter index numbers; retain the original spacing. */
html:has(main:not(.mystery-home)) .stardust-page .section-index > i {
  background: transparent;
}

/* The existing green portal treatment, with the current button dimensions. */
html:has(main:not(.mystery-home)) #next-manifestation .v59-button {
  color: #f4f7ef;
  border-color: rgba(183, 255, 53, .94);
  background: linear-gradient(90deg, rgba(183, 255, 53, .16), rgba(7, 13, 5, .92));
  box-shadow: inset 0 0 28px rgba(183, 255, 53, .08), 0 0 22px rgba(183, 255, 53, .20);
  font-family: var(--font-geist-mono, StardustMono), monospace;
  transition: background .25s ease, box-shadow .25s ease;
}

html:has(main:not(.mystery-home)) #next-manifestation .v59-button:hover {
  background: linear-gradient(90deg, rgba(183, 255, 53, .26), rgba(7, 13, 5, .92));
  box-shadow: inset 0 0 28px rgba(183, 255, 53, .13), 0 0 26px rgba(183, 255, 53, .28);
}

html:has(main:not(.mystery-home)) footer:has(.review-social-links) {
  flex-wrap: wrap;
  row-gap: 28px;
  border-color: transparent !important;
}

html:has(main:not(.mystery-home)) .review-social-links {
  --footer-link-ink: #9fa59b;
  --footer-link-shine: #d8ff9a;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 112px));
  flex: 0 0 100%;
  grid-column: 1 / -1;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 100%;
  margin: 16px 0 0;
  font-family: var(--font-geist-mono, StardustMono), monospace;
  font-size: 10px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: .06em;
  text-transform: none;
}

html:has(main:not(.mystery-home)) .signal-page .review-social-links {
  --footer-link-ink: #555c4d;
  --footer-link-shine: #3b580f;
}

html:has(main:not(.mystery-home)) .review-social-links a {
  position: relative;
  isolation: isolate;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  min-width: 0;
  min-height: 44px;
  padding: 10px 12px;
  border: 1px solid rgba(183, 255, 53, .42);
  color: var(--footer-link-ink);
  font: inherit;
  text-decoration: none;
  letter-spacing: inherit;
  text-transform: none;
  background-image: linear-gradient(105deg, var(--footer-link-ink) 38%, var(--footer-link-shine) 50%, var(--footer-link-ink) 62%);
  background-size: 260% 100%;
  background-position: 150% 0;
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: footer-letter-shine 9s ease-in-out infinite;
  transition: border-color .2s ease, box-shadow .2s ease;
}

/* Keep the animated letters separate from each translucent button surface. */
html:has(main:not(.mystery-home)) .review-social-links a::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background: rgba(183, 255, 53, .018);
  transition: background-color .2s ease;
}

html:has(main:not(.mystery-home)) .review-social-links a:nth-child(2) { animation-delay: .2s; }
html:has(main:not(.mystery-home)) .review-social-links a:nth-child(3) { animation-delay: .4s; }
html:has(main:not(.mystery-home)) .review-social-links a:nth-child(4) { animation-delay: .6s; }
html:has(main:not(.mystery-home)) .review-social-links a:is(:hover, :focus-visible) {
  border-color: rgba(183, 255, 53, .9);
  box-shadow: inset 0 0 20px rgba(183, 255, 53, .025);
  text-shadow: 0 0 12px rgba(183, 255, 53, .32);
}
html:has(main:not(.mystery-home)) .review-social-links a:is(:hover, :focus-visible)::before {
  background-color: rgba(183, 255, 53, .055);
}
html:has(main:not(.mystery-home)) .review-social-links a:focus-visible { outline: 1px solid #b7ff35; outline-offset: 5px; }

@keyframes footer-letter-shine {
  0%, 72% { background-position: 150% 0; }
  91%, 100% { background-position: -150% 0; }
}

@media (max-width: 700px) {
  html:has(main:not(.mystery-home)) .review-social-links { gap: 10px; padding-bottom: 42px; }
}

@media (max-width: 540px) {
  html:has(main:not(.mystery-home)) .review-social-links {
    grid-template-columns: repeat(2, minmax(0, 112px));
  }
}

@media (prefers-reduced-motion: reduce) {
  html:has(main:not(.mystery-home)) .review-social-links a { animation: none; transition: none; }
  html:has(main:not(.mystery-home)) .review-social-links a::before { transition: none; }
}

@media (forced-colors: active) {
  html:has(main:not(.mystery-home)) .review-social-links a {
    color: LinkText;
    background: none;
    -webkit-text-fill-color: currentColor;
    text-shadow: none;
    animation: none;
    border-color: LinkText;
    box-shadow: none;
  }
  html:has(main:not(.mystery-home)) .review-social-links a::before { background: none; }
}
