/* GreenOrb Statistics documentation — typography layer.
   Inherits Divi's Raleway / #666 body / #2ea3f2 link tokens and adds the
   documentation furniture Divi has no styling for: code, tables, callouts,
   figure framing and a readable measure. Scoped to .greenorb-docs so nothing
   else on the site is touched. */

.greenorb-docs .entry-content{
  --go-text:#666; --go-head:#333; --go-link:#2ea3f2; --go-green:#34c421;
  --go-rule:#e6e8eb; --go-tint:#f6f8fa; --go-measure:820px;
  font-size:16px; line-height:1.7; color:var(--go-text);
}
/* Readable measure for prose; tables, figures and code may use the full width. */
.greenorb-docs .entry-content > p,
.greenorb-docs .entry-content > ul,
.greenorb-docs .entry-content > ol,
.greenorb-docs .entry-content > h2,
.greenorb-docs .entry-content > h3,
.greenorb-docs .entry-content > h4,
.greenorb-docs .entry-content > blockquote{ max-width:var(--go-measure); }

/* Divi puts padding-bottom:1em on p/ul/ol, which compounds with the margins
   below and blows the gap before a heading out to roughly 4.5em. Zero it and
   own the vertical rhythm here. */
.greenorb-docs .entry-content p,
.greenorb-docs .entry-content ul,
.greenorb-docs .entry-content ol,
.greenorb-docs .entry-content li{ padding-bottom:0; }
.greenorb-docs .entry-content p{ font-size:16px; line-height:1.7; margin:0 0 1.15em; }
.greenorb-docs .entry-content > *:first-child{ margin-top:0; }

/* Divi collapses heading margins to zero, which runs sections together. */
.greenorb-docs .entry-content h2{
  font-size:27px; line-height:1.3; font-weight:700; color:var(--go-head);
  margin:1.9em 0 .6em; padding-bottom:.35em; border-bottom:1px solid var(--go-rule);
}
.greenorb-docs .entry-content h3{
  font-size:21px; line-height:1.35; font-weight:600; color:var(--go-head); margin:1.6em 0 .45em;
}
.greenorb-docs .entry-content h4{
  font-size:17px; line-height:1.4; font-weight:700; color:var(--go-head); margin:1.7em 0 .4em;
}
.greenorb-docs .entry-content a{ color:var(--go-link); text-decoration:none; font-weight:600; }
.greenorb-docs .entry-content a:hover{ text-decoration:underline; }
.greenorb-docs .entry-content strong{ color:var(--go-head); font-weight:700; }

.greenorb-docs .entry-content ul,
.greenorb-docs .entry-content ol{ margin:0 0 1.15em; padding-left:1.4em; }
.greenorb-docs .entry-content li{ font-size:16px; line-height:1.7; margin:0 0 .35em; }
.greenorb-docs .entry-content li > ul,
.greenorb-docs .entry-content li > ol{ margin:.35em 0 .35em; }

/* Code — Divi ships Courier New on a transparent background. */
.greenorb-docs .entry-content code{
  font-family:ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,"Liberation Mono",monospace;
  font-size:.88em; background:var(--go-tint); color:#24292f;
  padding:.15em .4em; border-radius:4px; border:1px solid var(--go-rule);
}
.greenorb-docs .entry-content pre,
.greenorb-docs .entry-content .wp-block-code{
  background:var(--go-tint); border:1px solid var(--go-rule); border-radius:6px;
  padding:14px 16px; overflow-x:auto; margin:0 0 1.4em; line-height:1.55;
}
.greenorb-docs .entry-content pre code,
.greenorb-docs .entry-content .wp-block-code code{
  background:none; border:0; padding:0; font-size:14px; white-space:pre;
}

/* Tables — the Settings and Bot-detection chapters lean on these. */
.greenorb-docs .entry-content .wp-block-table{ margin:0 0 1.6em; overflow-x:auto; }
.greenorb-docs .entry-content table{
  width:100%; border-collapse:collapse; font-size:15px; border:1px solid var(--go-rule);
}
.greenorb-docs .entry-content thead th{
  background:var(--go-tint); color:var(--go-head); font-weight:700;
  text-align:left; padding:10px 14px;
  /* Divi gives th a dark #555 bottom border; override all four sides. */
  border:1px solid var(--go-rule) !important;
}
.greenorb-docs .entry-content td{
  padding:9px 14px; border:1px solid var(--go-rule); color:var(--go-text); vertical-align:top;
}
.greenorb-docs .entry-content tbody tr:nth-child(even){ background:#fbfcfd; }
/* Divi puts a dark rule on the row/section elements, not just the cells. */
.greenorb-docs .entry-content thead,
.greenorb-docs .entry-content tbody,
.greenorb-docs .entry-content tfoot,
.greenorb-docs .entry-content tr{ border-color:var(--go-rule) !important; }

/* Callouts — brand green rather than Divi blue. */
.greenorb-docs .entry-content blockquote{
  margin:0 0 1.4em; padding:.9em 1.2em; background:#f6fbf4;
  border-left:4px solid var(--go-green); font-style:normal; color:var(--go-text);
}
.greenorb-docs .entry-content blockquote p:last-child{ margin-bottom:0; }

/* Screenshots are UI panels on white — they need an edge to sit on. */
.greenorb-docs .entry-content img{
  max-width:100%; height:auto; border:1px solid var(--go-rule); border-radius:6px;
}
.greenorb-docs .entry-content figure{ margin:0 0 1.6em; }
.greenorb-docs .entry-content figcaption{
  font-size:14px; color:#8a8f94; margin-top:.5em; text-align:left;
}
.greenorb-docs .entry-content hr{ border:0; border-top:1px solid var(--go-rule); margin:2.4em 0; }

@media (max-width:980px){
  .greenorb-docs .entry-content h2{ font-size:24px; }
  .greenorb-docs .entry-content h3{ font-size:19px; }
}

/* ─────────────────────────────────────────────────────────────────────────
   Marketing components, ported from the retired bespoke theme's site.css.

   Two things had to change on the way over. The original referenced
   var(--wp--preset--font-family--jakarta), a theme.json preset that does not
   exist under Divi — those declarations are dropped so everything inherits
   Raleway. And the palette was WordPress-admin blue (#2271b1) and green
   (#1d7917); it is re-tinted here to Green Orb's own accent (#2ea3f2) and
   brand green (#34c421).

   Header, footer, navigation and the docs sidebar are deliberately NOT
   ported: Divi supplies those, and the prose rules above already cover what
   .paj-doc-content used to do.
   ───────────────────────────────────────────────────────────────────────── */

.greenorb-docs .entry-content{
  --go-primary:#2ea3f2; --go-primary-dark:#1a7fc1; --go-primary-soft:#e3f1fb;
  --go-accent:#c64d2f;  --go-accent-soft:#f7e4de;
  --go-ok:#2e9e1f;      --go-ok-soft:#ddf3d8;
  --go-muted:#8a8f94;
}

/* Feature / pillar cards */
.greenorb-docs .entry-content .greenorb-card{
  background:#fff; border:1px solid var(--go-rule); border-radius:12px;
  padding:1.75rem; height:100%;
}
.greenorb-docs .entry-content .greenorb-card h3{ margin-top:.75rem; }
.greenorb-docs .entry-content .greenorb-card-icon{
  display:inline-flex; align-items:center; justify-content:center;
  width:44px; height:44px; border-radius:10px;
  background:var(--go-primary-soft); color:var(--go-primary-dark); font-size:22px;
}
.greenorb-docs .entry-content .greenorb-card-icon--accent{ background:var(--go-accent-soft); color:var(--go-accent); }
.greenorb-docs .entry-content .greenorb-card-icon--success{ background:var(--go-ok-soft); color:var(--go-ok); }

/* Framed screenshot with lift */
.greenorb-docs .entry-content .greenorb-shot img{
  border:1px solid var(--go-rule); border-radius:12px;
  box-shadow:0 20px 45px -20px rgba(29,35,39,.25);
}
.greenorb-docs .entry-content .greenorb-band{ background:var(--go-tint); }
.greenorb-docs .entry-content .greenorb-kicker{
  font-size:.8rem; font-weight:700; letter-spacing:.08em;
  text-transform:uppercase; color:var(--go-accent);
}

/* Ask AI chat mock */
.greenorb-docs .entry-content .greenorb-chat{
  background:#fff; border:1px solid var(--go-rule); border-radius:14px;
  padding:1.5rem; box-shadow:0 20px 45px -24px rgba(29,35,39,.25);
}
.greenorb-docs .entry-content .greenorb-chat-q,
.greenorb-docs .entry-content .greenorb-chat-a{
  border-radius:12px; padding:.9rem 1.1rem; margin:0 0 .9rem;
  font-size:.95rem; line-height:1.55;
}
.greenorb-docs .entry-content .greenorb-chat-q{
  background:var(--go-primary); color:#fff; margin-left:15%; border-bottom-right-radius:4px;
}
.greenorb-docs .entry-content .greenorb-chat-a{
  background:var(--go-tint); border:1px solid var(--go-rule); margin-right:8%; border-bottom-left-radius:4px;
}
.greenorb-docs .entry-content .greenorb-chat-a ul{ margin:.5rem 0 .25rem 1.1rem; padding:0; }
.greenorb-docs .entry-content .greenorb-chat-meta{ font-size:.8rem; color:var(--go-muted); margin:0; text-align:center; }

/* Honest-numbers comparison */
.greenorb-docs .entry-content .greenorb-compare{
  border:1px solid var(--go-rule); border-radius:12px; padding:1.75rem;
  text-align:center; height:100%;
}
.greenorb-docs .entry-content .greenorb-compare--them{ background:var(--go-tint); }
.greenorb-docs .entry-content .greenorb-compare--us{ background:#fff; border-color:var(--go-green); border-width:2px; }
.greenorb-docs .entry-content .greenorb-compare-big{
  font-weight:700; font-size:3rem; line-height:1; letter-spacing:-.03em; margin:.5rem 0 .25rem;
}
.greenorb-docs .entry-content .greenorb-compare--them .greenorb-compare-big{ color:#9ca3af; }
.greenorb-docs .entry-content .greenorb-compare--us .greenorb-compare-big{ color:var(--go-ok); }
.greenorb-docs .entry-content .greenorb-compare-label{ font-weight:600; font-size:.9rem; margin:0; }
.greenorb-docs .entry-content .greenorb-compare-sub{ font-size:.875rem; color:var(--go-muted); margin:.25rem 0 0; }

/* Everything-included mini grid */
.greenorb-docs .entry-content .greenorb-mini{
  background:#fff; border:1px solid var(--go-rule); border-radius:10px; padding:1rem 1.1rem; height:100%;
}
.greenorb-docs .entry-content .greenorb-mini p{ margin:0; }
.greenorb-docs .entry-content .greenorb-mini-title{ font-weight:600; font-size:.95rem; }
.greenorb-docs .entry-content .greenorb-mini-sub{ font-size:.85rem; color:var(--go-muted); margin-top:.15rem; }

/* Privacy checklist */
.greenorb-docs .entry-content .greenorb-check{
  list-style:none; padding:0; margin:1.5rem 0 0; max-width:none;
  display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:.6rem 2rem;
}
.greenorb-docs .entry-content .greenorb-check li{ padding-left:1.75rem; position:relative; }
.greenorb-docs .entry-content .greenorb-check li::before{
  content:"\2713"; position:absolute; left:0; top:0; color:var(--go-ok); font-weight:700;
}

/* Pro pill and pricing cards */
.greenorb-docs .entry-content .greenorb-pro-pill{
  display:inline-block; background:var(--go-accent-soft); color:var(--go-accent);
  font-size:.68rem; font-weight:700; letter-spacing:.05em; text-transform:uppercase;
  border-radius:4px; padding:1px 7px; margin-left:6px; vertical-align:middle;
}
.greenorb-docs .entry-content .greenorb-price-card{
  display:flex; flex-direction:column; background:#fff; border:1px solid var(--go-rule);
  border-radius:14px; padding:1.75rem; text-align:center; height:100%;
}
.greenorb-docs .entry-content .greenorb-price-card--featured{ border:2px solid var(--go-primary); }
.greenorb-docs .entry-content .greenorb-price-tier{ font-weight:600; font-size:1rem; margin:0; }
.greenorb-docs .entry-content .greenorb-price-big{
  font-weight:700; font-size:2.75rem; letter-spacing:-.03em; line-height:1; margin:.5rem 0 .15rem;
}
.greenorb-docs .entry-content .greenorb-price-per{ font-size:.85rem; color:var(--go-muted); margin:0; }
.greenorb-docs .entry-content .greenorb-price-life{ font-size:.85rem; color:var(--go-muted); margin:.6rem 0 0; }
.greenorb-docs .entry-content .greenorb-price-life strong{ color:var(--go-head); }
.greenorb-docs .entry-content .greenorb-badge-popular{
  display:inline-block; background:var(--go-primary-soft); color:var(--go-primary-dark);
  font-size:.72rem; font-weight:700; letter-spacing:.05em; text-transform:uppercase;
  border-radius:4px; padding:2px 9px; margin-bottom:.6rem;
}
.greenorb-docs .entry-content .greenorb-price-block[hidden]{ display:none; }
.greenorb-docs .entry-content .greenorb-buy-wrap{ margin:auto 0 0; padding-top:1.35rem; }
.greenorb-docs .entry-content .greenorb-buy{
  display:block; box-sizing:border-box; width:100%; background:var(--go-primary);
  border:1px solid var(--go-primary); border-radius:8px; padding:.7rem 1.2rem;
  font-size:.95rem; font-weight:600; color:#fff; text-align:center;
  text-decoration:none; cursor:pointer;
}
.greenorb-docs .entry-content .greenorb-buy:hover,
.greenorb-docs .entry-content .greenorb-buy:focus{
  background:var(--go-primary-dark); border-color:var(--go-primary-dark); color:#fff; text-decoration:none;
}
.greenorb-docs .entry-content .greenorb-cycle-toggle{
  display:flex; justify-content:center; gap:.25rem; width:max-content;
  margin:2.5rem auto -.75rem; padding:.25rem; background:var(--go-tint);
  border:1px solid var(--go-rule); border-radius:999px;
}
.greenorb-docs .entry-content .greenorb-cycle-toggle[hidden]{ display:none; }
.greenorb-docs .entry-content .greenorb-cycle-option{
  padding:.45rem 1.5rem; background:none; border:0; border-radius:999px;
  font-size:.9rem; font-weight:600; color:var(--go-muted); cursor:pointer;
}
.greenorb-docs .entry-content .greenorb-cycle-option.is-active{
  background:#fff; color:var(--go-head); box-shadow:0 1px 3px rgba(0,0,0,.12);
}
.greenorb-docs .entry-content .greenorb-pricing-table th:nth-child(2),
.greenorb-docs .entry-content .greenorb-pricing-table th:nth-child(3),
.greenorb-docs .entry-content .greenorb-pricing-table td:nth-child(2),
.greenorb-docs .entry-content .greenorb-pricing-table td:nth-child(3){ text-align:center; width:110px; }
.greenorb-docs .entry-content .greenorb-tick{ color:var(--go-ok); font-weight:700; }
.greenorb-docs .entry-content .greenorb-dash{ color:#9ca3af; }

/* Secondary (outline) button */
.greenorb-docs .entry-content .greenorb-btn-ghost .wp-block-button__link{
  background:transparent; color:var(--go-primary); border:1.5px solid var(--go-primary);
}
.greenorb-docs .entry-content .greenorb-btn-ghost .wp-block-button__link:hover{
  background:var(--go-primary-soft); color:var(--go-primary-dark);
}

/* ── Font-size presets ──────────────────────────────────────────────────
   The ported pages were authored against the old block theme's theme.json
   scale (large = 1.25rem). Divi's scale is much larger (large = 36px), so
   every has-large-font-size lede arrived about 80% oversized. Restore the
   original values inside the product tree only, and declare the utility
   classes explicitly because core's block-library stylesheet is not loaded
   on this site. */
.greenorb-docs .entry-content{
  --wp--preset--font-size--small:.875rem;
  --wp--preset--font-size--medium:1rem;
  --wp--preset--font-size--large:1.25rem;
  --wp--preset--font-size--x-large:1.75rem;
  --wp--preset--font-size--xx-large:2.5rem;
  --wp--preset--font-size--huge:3.25rem;
}
.greenorb-docs .entry-content .has-small-font-size{ font-size:.875rem !important; }
.greenorb-docs .entry-content .has-medium-font-size{ font-size:1rem !important; }
.greenorb-docs .entry-content .has-large-font-size{ font-size:1.25rem !important; line-height:1.6 !important; }
.greenorb-docs .entry-content .has-x-large-font-size{ font-size:1.75rem !important; line-height:1.35 !important; }
.greenorb-docs .entry-content .has-xx-large-font-size{ font-size:2.5rem !important; line-height:1.2 !important; }
.greenorb-docs .entry-content .has-huge-font-size{ font-size:3.25rem !important; line-height:1.1 !important; }
@media (max-width:980px){
  .greenorb-docs .entry-content .has-huge-font-size{ font-size:2.25rem !important; }
  .greenorb-docs .entry-content .has-xx-large-font-size{ font-size:1.9rem !important; }
}
/* Core block-library is dequeued here, so these layout classes have no rules. */
.greenorb-docs .entry-content .has-text-align-center{ text-align:center; }
.greenorb-docs .entry-content .has-text-align-right{ text-align:right; }
/* Centred hero text should not be pinned to the 820px prose measure. */
.greenorb-docs .entry-content > .has-text-align-center{ max-width:none; }

/* ── Colour palette classes ─────────────────────────────────────────────
   Same story as the font sizes: the pages reference the old theme.json
   palette (has-muted-color and friends), which Divi does not define, so the
   de-emphasised text was rendering at full strength. Re-tinted to Green Orb
   where there is an equivalent, otherwise carried over unchanged. */
.greenorb-docs .entry-content .has-muted-color{ color:#646970 !important; }
.greenorb-docs .entry-content .has-ink-color{ color:#1d2327 !important; }
.greenorb-docs .entry-content .has-primary-color{ color:var(--go-primary) !important; }
.greenorb-docs .entry-content .has-primary-dark-color{ color:var(--go-primary-dark) !important; }
.greenorb-docs .entry-content .has-accent-color{ color:var(--go-accent) !important; }
.greenorb-docs .entry-content .has-success-color{ color:var(--go-ok) !important; }
.greenorb-docs .entry-content .has-white-color{ color:#fff !important; }
.greenorb-docs .entry-content .has-surface-background-color{ background-color:var(--go-tint) !important; }
.greenorb-docs .entry-content .has-primary-light-background-color{ background-color:var(--go-primary-soft) !important; }
.greenorb-docs .entry-content .has-accent-light-background-color{ background-color:var(--go-accent-soft) !important; }
.greenorb-docs .entry-content .has-white-background-color{ background-color:#fff !important; }
/* Core's separator rule ships in block-library, which is dequeued here. */
.greenorb-docs .entry-content .wp-block-separator.has-alpha-channel-opacity{ opacity:1; }
