/* GhostSEO V245 — final public light/dark contrast layer.
   Loaded last so newer marketing/Pro surfaces cannot repaint dark-mode text
   white while leaving their cards white. */

:root,
html[data-theme="light"]{
  --g-bg:#f6f8fb;
  --g-paper:#ffffff;
  --g-paper-2:#f8fafc;
  --g-paper-3:#eef2f6;
  --g-ink:#101828;
  --g-ink-2:#344054;
  --g-muted:#667085;
  --g-faint:#98a2b3;
  --g-line:#e4e7ec;
  --g-line-strong:#d0d5dd;
  --g-primary:#5b4fe5;
  --g-primary-dark:#4338ca;
  --g-primary-soft:#eef2ff;
  --g-card-shadow:0 14px 38px rgba(16,24,40,.07);
}

html[data-theme="dark"]{
  --g-bg:#090e18;
  --g-paper:#111827;
  --g-paper-2:#161f2f;
  --g-paper-3:#0d1523;
  --g-ink:#f3f6fb;
  --g-ink-2:#d8e0eb;
  --g-muted:#a6b1c2;
  --g-faint:#7f8da3;
  --g-line:#28364a;
  --g-line-strong:#3a4a61;
  --g-primary:#8b7cff;
  --g-primary-dark:#7566ef;
  --g-primary-soft:#211d43;
  --g-card-shadow:0 18px 45px rgba(0,0,0,.24);
}

html[data-theme="light"] body.public-page,
html[data-theme="dark"] body.public-page{
  background:var(--g-bg)!important;
  color:var(--g-ink)!important;
}

/* Header/navigation: explicit in both themes. */
html[data-theme="light"] .v14-public-header{
  background:rgba(255,255,255,.94)!important;
  border-bottom-color:var(--g-line)!important;
}
html[data-theme="dark"] .v14-public-header{
  background:rgba(9,14,24,.95)!important;
  border-bottom-color:var(--g-line)!important;
}
.v14-public-header :is(.v14-brand,.v14-public-nav a,.v14-public-actions>a:first-of-type){
  color:var(--g-ink-2)!important;
}
.v14-public-header .v14-brand strong{color:var(--g-ink)!important}
.v14-public-header .v14-brand small{color:var(--g-muted)!important}

/* General public controls. Do not touch deliberately purple primary CTAs. */
body.public-page .v14-secondary:not(.v14-cta-button),
body.public-page .btn-secondary{
  background:var(--g-paper)!important;
  border-color:var(--g-line)!important;
  color:var(--g-ink-2)!important;
}
body.public-page .v14-secondary:not(.v14-cta-button):hover,
body.public-page .btn-secondary:hover{
  background:var(--g-paper-2)!important;
  border-color:var(--g-line-strong)!important;
  color:var(--g-ink)!important;
}

/* ================= HOME / INDEX ================= */
.gs-home-v171{
  background:var(--g-bg)!important;
  color:var(--g-ink)!important;
}
.gs-home-v171 .v14-hero{
  color:var(--g-ink)!important;
}
html[data-theme="light"] .gs-home-v171 .v14-hero{
  background:radial-gradient(circle at 80% 0,#eef2ff 0,transparent 35%),linear-gradient(#fff,#f8fafc)!important;
}
html[data-theme="dark"] .gs-home-v171 .v14-hero{
  background:radial-gradient(circle at 82% 0,rgba(91,79,229,.19) 0,transparent 38%),linear-gradient(#0b1220,#0d1523)!important;
}
.gs-home-v171 :is(.v14-hero h1,.v14-section h2,.v14-section h3,.v14-title){
  color:var(--g-ink)!important;
}
.gs-home-v171 :is(.v14-hero-copy,.v14-section-head p,.v14-section-copy,.v14-feature p,.v14-service-tile small){
  color:var(--g-muted)!important;
}
.gs-home-v171 .v14-proof{color:var(--g-ink-2)!important}
.gs-home-v171 .v14-section{
  background:var(--g-bg)!important;
  color:var(--g-ink)!important;
}
html[data-theme="light"] .gs-home-v171 .v14-section:not(.alt){background:#ffffff!important}
.gs-home-v171 .v14-section.alt{background:var(--g-paper-3)!important}
.gs-home-v171 :is(.v14-feature,.v14-service-tile){
  background:var(--g-paper)!important;
  border-color:var(--g-line)!important;
  color:var(--g-ink)!important;
  box-shadow:var(--g-card-shadow)!important;
}
.gs-home-v171 .v14-feature .num{color:var(--g-faint)!important}
.gs-home-v171 .v14-feature .iconwrap{
  background:var(--g-primary-soft)!important;
  color:var(--g-primary)!important;
}
.gs-home-v171 .v14-service-tile>span{
  background:var(--g-paper-2)!important;
  color:var(--g-ink-2)!important;
}

/* The GhostSEO + Phantom pricing block was added after the old theme layer.
   It now has its own complete two-theme contract. */
.gs-home242-pro{
  background:linear-gradient(180deg,transparent,rgba(111,79,255,.055))!important;
  color:var(--g-ink)!important;
}
html[data-theme="dark"] .gs-home242-pro{
  background:linear-gradient(180deg,rgba(139,124,255,.025),rgba(139,124,255,.075))!important;
}
.gs-home242-pro-head h2{color:var(--g-ink)!important}
.gs-home242-pro-head p{color:var(--g-muted)!important}
.gs-home242-tier-grid article{
  background:var(--g-paper)!important;
  border-color:var(--g-line)!important;
  color:var(--g-ink)!important;
  box-shadow:var(--g-card-shadow)!important;
}
.gs-home242-tier-grid article.pro{
  border-color:rgba(139,113,255,.72)!important;
  box-shadow:0 18px 45px rgba(110,80,255,.14)!important;
}
.gs-home242-tier-grid :is(h3,strong){color:var(--g-ink)!important}
.gs-home242-tier-grid h3 span,
.gs-home242-tier-grid ul{color:var(--g-muted)!important}
.gs-home242-tier-grid a{
  background:#7657f4!important;
  color:#ffffff!important;
}
.gs-home242-tier-grid a:hover{background:#6042dc!important;color:#ffffff!important}

/* Example workflow intentionally remains a dark product preview. */
.gs-home-v171 .v14-demo,
.gs-home-v171 .v14-demo-step,
.gs-home-v171 .v14-demo-top,
.gs-home-v171 .v14-demo-bottom{
  color:#ffffff!important;
}

/* Final CTA intentionally remains dark in both themes. */
.gs-home-v171 .v14-cta{background:#111827!important;color:#ffffff!important}
.gs-home-v171 .v14-cta h2{color:#ffffff!important}
.gs-home-v171 .v14-cta p{color:#cbd5e1!important}
.gs-home-v171 .v14-cta-button{background:#ffffff!important;border-color:#ffffff!important;color:#172033!important}

/* ================= BUY PRO ================= */
.gs-buy242{color:var(--g-ink)!important}
.gs-buy242__hero h1{color:var(--g-ink)!important}
.gs-buy242__hero p{color:var(--g-muted)!important}
.gs-buy242__plans article{
  background:var(--g-paper)!important;
  border-color:var(--g-line)!important;
  color:var(--g-ink)!important;
  box-shadow:var(--g-card-shadow)!important;
}
.gs-buy242__plans article.featured{border-color:#8064ff!important}
.gs-buy242__plans :is(h2,strong){color:var(--g-ink)!important}
.gs-buy242__plans h2 span,
.gs-buy242__plans p{color:var(--g-muted)!important}
.gs-buy242__badge{
  background:var(--g-primary-soft)!important;
  color:var(--g-primary)!important;
}
.gs-buy242__button{background:#7657f4!important;color:#ffffff!important}
.gs-buy242__button:hover{background:#6042dc!important;color:#ffffff!important}
.gs-buy242__button.secondary{
  background:var(--g-primary-soft)!important;
  color:var(--g-primary)!important;
}
.gs-buy242__limits div{
  background:var(--g-paper)!important;
  border-color:var(--g-line)!important;
  color:var(--g-ink)!important;
}
.gs-buy242__limits strong{color:var(--g-ink)!important}
.gs-buy242__limits span,
.gs-buy242__fine{color:var(--g-muted)!important}

/* ================= PRICING / PHANTOM CALLOUT ================= */
.gs-pricing243-phantom{
  background:linear-gradient(135deg,rgba(118,87,244,.10),rgba(118,87,244,.025))!important;
  border-color:rgba(118,87,244,.34)!important;
  color:var(--g-ink)!important;
}
.gs-pricing243-phantom strong{color:var(--g-ink)!important}
.gs-pricing243-phantom span{color:var(--g-muted)!important}
.gs-pricing243-phantom a{background:#7657f4!important;color:#ffffff!important}

/* Existing price/pro components: keep their structure, close any cascade gaps. */
body.public-page .gs-price68,
body.public-page .gs-pro67{color:var(--g-ink)!important}
body.public-page .gs-price68 :is(h1,h2,strong),
body.public-page .gs-pro67 :is(h1,h2,h3,strong,.gs-pro67__planname){color:var(--g-ink)!important}
body.public-page .gs-price68 :is(p,small,.gs-price68__muted),
body.public-page .gs-pro67 :is(p,small,.gs-pro67__billed,.gs-pro67__fine){color:var(--g-muted)!important}

/* Footer remains legible after every later marketing stylesheet. */
.v14-footer{
  background:var(--g-paper)!important;
  border-top-color:var(--g-line)!important;
  color:var(--g-ink-2)!important;
}
.v14-footer :is(strong,a){color:var(--g-ink-2)!important}
.v14-footer span{color:var(--g-muted)!important}

/* Accessibility/readability guards. */
body.public-page :is(a,button,input,select,textarea){-webkit-tap-highlight-color:transparent}
body.public-page :focus-visible{outline:3px solid rgba(139,124,255,.42)!important;outline-offset:2px}

@media(max-width:760px){
  .gs-home242-pro{padding:54px 0!important}
  .gs-home242-tier-grid{grid-template-columns:1fr!important}
  .gs-buy242{padding:52px 16px!important}
}
