/**
 * AstroPrecise — site-wide polish layer (2026).
 * Injected on all app.js pages; linked eagerly on index.html.
 * Scoped overrides only — does not replace page-specific design systems.
 */

/* ── Readable body ink — silver on jet ── */
html.ap-enchanted,
body.ap-enchanted {
  color: var(--ap-text-primary, #E8EBF0);
}

body.ap-enchanted .section-header__sub,
body.ap-enchanted .compat-overview,
body.ap-enchanted .shopc-card__blurb,
body.ap-enchanted .ap-ai-panel__sub {
  color: var(--ap-text-secondary, #C8CDD6);
}

/* ── Primary actions: silver-aurora gradient ── */
body.ap-enchanted .btn--primary:not(.shopc-card__cta):not(.ap-ai-tab) {
  background: linear-gradient(135deg, #4A90E0 0%, #7EC8E8 48%, #C8D8E8 100%);
  border-color: transparent;
  color: #050508;
}
body.ap-enchanted .btn--primary:not(.shopc-card__cta):not(.ap-ai-tab):hover,
body.ap-enchanted .btn--primary:not(.shopc-card__cta):not(.ap-ai-tab):focus-visible {
  background: linear-gradient(135deg, #5CA0F0 0%, #A8DCF2 50%, #E0E8F0 100%);
  border-color: transparent;
  color: #050508;
}

/* ── Chapter hierarchy (homepage + long tool pages) ── */
.ap-chapter--tier2 {
  padding-block: clamp(2.5rem, 6vw, 4rem);
}
.ap-chapter--tier2 .ap-chapter-title {
  font-size: clamp(1.55rem, 3.2vw, 2.15rem);
}
.ap-chapter--tier2 .ap-display-kicker {
  opacity: 0.82;
}

/* ── Footer zodiac strip — backup eager flex ── */
.footer-zodiac-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem 0.5rem;
  align-items: center;
  justify-content: flex-start;
  min-height: 2.75rem;
  line-height: 0;
}
.footer-zodiac-strip > span {
  display: inline-flex;
}

/* ── Collapsed live-panel void guards ── */
#compat-loading:not(.hidden) { min-height: 12rem; }
#shopc-grid { min-height: 20rem; }
#ap-horoscope-sky-bridge { min-height: 8rem; }
#daily-transit-card { min-height: 10rem; }

/* ── Shop dormant / PDF-only: honest catalogue, no affiliate noise ── */
body.shop--dormant #shop-affiliate-editorial,
body.shop--dormant #shop-curated,
body.shop--pdf-only #shop-affiliate-editorial,
body.shop--pdf-only #shop-curated {
  display: none;
}
body.shop--dormant .shop-sticky-nav a[href="#shop-affiliate-editorial"],
body.shop--dormant .shop-sticky-nav a[href="#shop-curated"] {
  display: none;
}
body.shop--dormant .shopc-featured .shopc-card__price,
body.shop--dormant .shopc-card__price:not(.shopc-card__price--soon) {
  color: var(--silver, #9A9A9A);
  font-size: 0.82rem;
}
body.shop--dormant .shopc-featured .shopc-card__price::after,
body.shop--dormant .shopc-card__price:not(.shopc-card__price--soon)::after {
  content: ' · Opening soon';
  font-size: 0.72rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--gold, #C4920A);
}

/* ── AI panel spacing on tool pages ── */
.ap-ai-panel {
  margin: var(--space-6, 2rem) auto;
  max-width: 920px;
}