/* A single fixed, decorative canvas; every page scrolls above it. */
body[data-topic] { background: #07130f; }
body[data-topic]::before {
  content: "";
  display: block;
  position: fixed;
  inset: 0;
  width: auto;
  height: auto;
  z-index: 0;
  pointer-events: none;
  background: url("unified-market-background-blazer.webp") center center / cover no-repeat;
  opacity: .43;
  filter: saturate(.7);
}
body[data-topic]::after { display: none; }

/* No second image or scrolling illustration in the content viewport. */
body[data-topic] .site-scroll,
body[data-topic] .window,
body[data-topic] .reader-window {
  position: relative;
  z-index: 1;
  background: rgba(4, 15, 10, .25);
}
body[data-topic] .masthead,
body[data-topic] main > section:not(.fresh-materials),
body[data-topic] .contact,
body[data-topic] .directory {
  background: rgba(5, 20, 13, .32);
}
body[data-topic] .fresh-materials {
  background: linear-gradient(135deg, rgba(15, 38, 24, .58), rgba(5, 20, 13, .52));
}
/* Reading cards retain solid contrast but permit a hint of the fixed scene. */
body[data-topic] .page .panel,
body[data-topic] .reader .contents,
body[data-topic] .reader .cta {
  background-color: rgba(18, 44, 28, .65);
}
/* Card fills use alpha, never element opacity: text and buttons stay fully solid. */
body[data-topic] .news-card,
body[data-topic] .directory-card,
body[data-topic] .oil-forecast-card {
  background: linear-gradient(135deg, rgba(29, 57, 36, .68), rgba(7, 25, 17, .71));
}
body[data-topic] .principle,
body[data-topic] .learning-card,
body[data-topic] .plan { background-color: rgba(14, 35, 22, .68); }

/* Remove the old topic-specific orbit/book diagram decorations. */
body[data-topic] .inner-page .book::before,
body[data-topic] .hero::before,
body[data-topic] .news-card::before,
body[data-topic] .reader .contents::before,
body[data-topic] .reader .cta::before,
body[data-topic] .page .panel::before,
body[data-topic] .earn-step::before { display: none; }

@media (max-width: 760px) {
  body[data-topic]::before {
    background-position: center center;
    opacity: .24;
  }
  body[data-topic] .site-scroll,
  body[data-topic] .window,
  body[data-topic] .reader-window { background: rgba(4, 15, 10, .50); }
  body[data-topic] .masthead,
  body[data-topic] main > section:not(.fresh-materials),
  body[data-topic] .contact,
  body[data-topic] .directory { background: rgba(5, 20, 13, .50); }
}
