/* Copper Ledger — last-loaded override. Neutralize Polar/neon page skins. */

:root,
html,
body,
body.bespoke,
body.a94-store,
body.ledger,
body.page-chrome,
body[class*="page-"] {
  --font-display: "Literata", "Iowan Old Style", Georgia, serif !important;
  --font-body: "DM Sans", "Segoe UI", sans-serif !important;
  --font-mono: "DM Sans", "Segoe UI", sans-serif !important;
  --color-bg: #F3F1EC !important;
  --color-bg-deep: #E8E4DC !important;
  --color-surface: #FFFCF7 !important;
  --color-text: #12151A !important;
  --color-text-muted: #5C6168 !important;
  --color-primary: #B54A2E !important;
  --color-primary-hover: #943C25 !important;
  --color-secondary: #1C3D4A !important;
  --color-secondary-hover: #152F39 !important;
  --color-accent: #C4A574 !important;
  --color-border: rgba(18, 21, 26, 0.12) !important;
  --color-border-strong: rgba(18, 21, 26, 0.28) !important;
  --color-focus: #B54A2E !important;
  --color-on-primary: #FFFCF7 !important;
  --color-on-secondary: #F3F1EC !important;
  --radius-sm: 2px !important;
  --radius-lg: 2px !important;
  --rule: 1px solid var(--color-border) !important;
}

body.bespoke,
body.a94-store,
body.ledger,
body.page-chrome,
body[class*="page-"] {
  background: var(--color-bg) !important;
  color: var(--color-text) !important;
  font-family: "DM Sans", "Segoe UI", sans-serif !important;
}


/* Force light ledger surfaces on dark Polar skins */
.page-shop,
.page-product,
.page-cart,
.page-checkout,
.page-account,
.page-orders,
.page-help,
.page-contact,
.page-catalog,
.page-company,
.page-track,
.page-order-status,
.page-order-success,
.page-policy,
.page-payment-return,
.page-gateway,
.a94-shop,
.a94-pdp,
.a94-slate,
.a94-runway,
.a94-split,
.a94-orders,
.a94-ledger,
.a94-help,
.a94-catalog,
.a94-comb,
.a94-company,
.a94-topo,
.a94-tel,
.a94-stub,
.a94-status,
.a94-route,
.bc-canvas,
.ks-stage,
.site-main,
.section-page,
.page-hero {
  background: transparent !important;
  background-image: none !important;
  color: var(--color-text) !important;
  box-shadow: none !important;
  text-shadow: none !important;
  filter: none !important;
  backdrop-filter: none !important;
}

/* Typography */
body :where(h1, h2, h3, .panel-head, .ks-title, .a94-mason-title, .a94-axis-wordmark, .a94-axis-brand-sub) {
  font-family: "Literata", "Iowan Old Style", Georgia, serif !important;
  color: var(--color-text) !important;
}
body :where(p, li, label, span, dd, dt, small, button, input, select, textarea, a) {
  font-family: "DM Sans", "Segoe UI", sans-serif !important;
}

/* Dark panels → ledger surface */
.a94-comb-cell,
.a94-comb-totals,
.a94-topo-map,
.a94-topo-legend,
.a94-topo-survey,
.a94-topo-viz,
.a94-topo-panel,
.a94-stub-ticket,
.a94-stub-admit,
.a94-stub-strip,
.a94-ledger-paper,
.a94-ladder-rung,
.a94-runway-ledger,
.a94-slate-summary,
.a94-slate-line,
.a94-shop-filters,
.a94-help-search,
.a94-help-chapter,
.bc-form-block,
.bc-aside,
.panel,
.gateway-card,
.ks-controls,
.a94-split-pane--right {
  background: var(--color-surface) !important;
  color: var(--color-text) !important;
  border-color: var(--color-border) !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}

.a94-split-pane--left,
.a94-comb-hero,
.a94-topo-hero,
.a94-stub-marquee,
.a94-topo-viz-bg {
  background: var(--color-secondary) !important;
  color: var(--color-on-secondary) !important;
  background-image: none !important;
}
.a94-split-pane--left :where(h1, h2, h3, p, a, span, strong, small),
.a94-comb-hero :where(h1, h2, p, a, span, strong),
.a94-topo-hero :where(h1, h2, p, a, span, strong),
.a94-stub-marquee :where(h1, h2, p, a, span, strong) {
  color: var(--color-on-secondary) !important;
}

/* Neon / acid accents → copper / teal */
.a94-axis-btn--acid,
.ks-btn--buy,
.a94-comb-btn--primary,
.a94-ladder-btn--primary,
.a94-seal-btn--primary,
.a94-radar-btn--primary,
.a94-view-btn.is-active,
.btn--primary,
button[type="submit"].btn {
  background: var(--color-primary) !important;
  border-color: var(--color-primary) !important;
  color: var(--color-on-primary) !important;
  border-radius: var(--radius-sm) !important;
  box-shadow: none !important;
  filter: none !important;
}
.a94-axis-btn--acid:hover,
.ks-btn--buy:hover,
.a94-ladder-btn--primary:hover,
.a94-seal-btn--primary:hover,
.a94-radar-btn--primary:hover,
.btn--primary:hover {
  background: var(--color-primary-hover) !important;
  border-color: var(--color-primary-hover) !important;
}

.a94-axis-btn--ghost,
.a94-ladder-btn--ghost,
.a94-seal-btn--ghost,
.a94-radar-btn--ghost,
.btn--ghost,
.ks-btn:not(.ks-btn--buy):not([name="buy_now"]) {
  background: transparent !important;
  border: 1px solid var(--color-border-strong) !important;
  color: var(--color-text) !important;
  border-radius: var(--radius-sm) !important;
}

/* Links + prices (exclude buttons — e.g. .a94-price-apply) */
a { color: var(--color-primary); }
a:hover { color: var(--color-primary-hover); }
.a94-product-price,
.a94-shop-card-price,
.ks-price strong,
[class*="price"]:not(button):not(.a94-price-apply):not(.btn):not([type="submit"]) {
  color: var(--color-primary) !important;
}

/* Forms */
input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="submit"]):not([type="button"]),
select,
textarea {
  background: var(--color-bg) !important;
  color: var(--color-text) !important;
  border: 1px solid var(--color-border-strong) !important;
  border-radius: var(--radius-sm) !important;
  font-family: var(--font-body) !important;
  box-shadow: none !important;
}
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
button:focus-visible,
a:focus-visible {
  outline: 2px solid var(--color-focus) !important;
  outline-offset: 2px !important;
}

/* Hide decorative Polar chrome */
.a94-mason-wash,
.a94-comb-watermark,
.a94-topo-watermark,
.a94-stub-watermark,
.a94-comb-hero-grid,
.a94-comb-hex-bg,
.a94-comb-hero-arch,
.a94-topo-hero-grid,
.a94-topo-contours,
.a94-topo-hero-arch,
.a94-stub-marquee-grid,
.a94-stub-marquee-lights,
.a94-stub-marquee-arch,
.a94-axis-hero-chroma,
.a94-footer-grid-bg,
.a94-topo-compass,
.a94-stub-admit-ring,
.a94-stub-admit-star,
.a94-ledger-perf,
.a94-ribbon-cap,
.a94-ribbon-cap-sub,
.bc-strips {
  display: none !important;
}

/* Catalog / company / success light type on secondary heroes already handled;
   keep body text dark on light sections */
.a94-comb-lede,
.a94-topo-tagline,
.a94-stub-lede { opacity: 0.9; }

.a94-comb-cell h3,
.a94-comb-cell p,
.a94-comb-cell-cta,
.a94-topo-marker strong,
.a94-topo-marker span,
.a94-stub-ticket h2,
.a94-stub-ticket p,
.a94-ledger-mast h1,
.a94-tel-hero h1 {
  color: var(--color-text) !important;
}

.a94-comb-cell {
  border: var(--rule) !important;
  border-radius: var(--radius-lg) !important;
}

/* Timeline markers */
.a94-timeline-step.is-current .a94-timeline-marker,
.a94-timeline-step.is-done .a94-timeline-marker,
.a94-ribbon-node.is-current,
.a94-ribbon-node.is-done {
  border-color: var(--color-primary) !important;
  background: var(--color-primary) !important;
  color: var(--color-on-primary) !important;
}

/* Page content: never sticky/fixed — scroll with the document.
   Site chrome (.a94-top / .a94-ribbon) and overlays keep their own rules. */
main .ks-focal,
main .a94-slate-macro,
main .a94-runway-ledger,
main .a94-kinetic-sheet--stamp,
main .a94-policy-rail,
.page-cart .a94-slate-macro,
.page-checkout .a94-runway-ledger,
.page-help .a94-kinetic-sheet--stamp,
.page-product .ks-focal,
.a94-policy-rail {
  position: relative !important;
  top: auto !important;
}
@media (min-width: 901px) {
  .page-shop .a94-shop-filters,
  main .a94-shop-filters {
    position: relative !important;
    top: auto !important;
  }
}
