/* ============================================================================
   doc.css — Nexora CLEAN PAGE render (Pages category / alias `site-pages`).
   Loaded by html/com_content/article/default.php only when $nxIsPage is true
   (marketing/info articles: Solutions, Documentation, Careers, Customers,
   Roadmap, Status). Renders a clean masthead (H1) + reading-width prose with
   NO blog chrome (no breadcrumb / byline / author card / tags / hero).
   All values token-driven so light + dark flip with no darkmode.css change.
   Mirrors the .nx-single / canvas-page aesthetic. addCustomTag-loaded so T4
   optimize cannot bundle/reorder it; filemtime() cache-busts on edit.
   ============================================================================ */

/* Full-bleed break-out (the component renders inside T4's
   .t4-section-inner.container ~1200 centred — break to the full viewport so the
   bg band spans edge-to-edge, then re-constrain the reading column inside). */
body.view-article .nx-page-doc {
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  background: var(--color-bg);
}

/* shared reading column (matches .nx-single 720 measure) */
body.view-article .nx-page-doc__mast-inner,
body.view-article .nx-page-doc__body {
  width: 760px;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
}

/* ---- Masthead: title H1 only (no category word / byline / date / read-time) ---- */
body.view-article .nx-page-doc__mast {
  padding: 88px 48px 48px;
  background: var(--color-bg);
  display: flex;
  justify-content: center;
}
body.view-article .nx-page-doc__mast-inner {
  display: flex;
  flex-direction: column;
  gap: 18px;
}
body.view-article .nx-page-doc__title {
  margin: 0;
  font-family: Geist, sans-serif;
  font-size: clamp(36px, 5vw, 48px);
  font-weight: 700;
  letter-spacing: -1.5px;
  line-height: 1.08;
  color: var(--color-heading);
}

/* ---- Reading column / prose (Inter, site reading rhythm) ---- */
body.view-article .nx-page-doc__body {
  padding: 8px 48px 88px;
  background: var(--color-bg);
}
body.view-article .nx-page-doc__prose {
  display: flex;
  flex-direction: column;
  gap: 22px;
}
body.view-article .nx-page-doc__prose > * { margin: 0; }
body.view-article .nx-page-doc__prose p {
  font-family: Inter, sans-serif;
  font-size: 17.5px;
  line-height: 1.7;
  color: var(--color-muted);
}
body.view-article .nx-page-doc__prose h2 {
  font-family: Geist, sans-serif;
  font-size: 30px;
  font-weight: 700;
  letter-spacing: -0.8px;
  line-height: 1.2;
  color: var(--color-heading);
  margin-top: 16px;
}
body.view-article .nx-page-doc__prose h3 {
  font-family: Geist, sans-serif;
  font-size: 22px;
  font-weight: 600;
  letter-spacing: -0.4px;
  line-height: 1.25;
  color: var(--color-heading);
  margin-top: 8px;
}
body.view-article .nx-page-doc__prose a {
  color: var(--color-primary);
  text-decoration: underline;
  text-underline-offset: 2px;
}
body.view-article .nx-page-doc__prose a:hover { color: var(--color-primary-hover); }
body.view-article .nx-page-doc__prose strong { color: var(--color-heading); font-weight: 600; }
body.view-article .nx-page-doc__prose ul,
body.view-article .nx-page-doc__prose ol {
  margin: 0;
  padding-left: 1.4rem;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
body.view-article .nx-page-doc__prose ul { list-style: disc; }
body.view-article .nx-page-doc__prose ol { list-style: decimal; }
body.view-article .nx-page-doc__prose li {
  font-family: Inter, sans-serif;
  font-size: 17.5px;
  line-height: 1.7;
  color: var(--color-muted);
}
body.view-article .nx-page-doc__prose li::marker { color: var(--color-muted); }
body.view-article .nx-page-doc__prose blockquote {
  margin: 0;
  background: var(--color-surface);
  border-radius: 10px;
  padding: 24px 28px;
  border-left: 3px solid var(--color-primary);
}
body.view-article .nx-page-doc__prose blockquote p {
  font-family: Geist, sans-serif;
  font-size: 21px;
  font-weight: 500;
  font-style: italic;
  line-height: 1.5;
  color: var(--color-heading);
}
body.view-article .nx-page-doc__prose img {
  max-width: 100%;
  height: auto;
  border-radius: 12px;
}
body.view-article .nx-page-doc__prose pre {
  background: #0d1018;
  color: #e7eaf5;
  border: 1px solid #23263a;
  border-radius: 12px;
  padding: 18px 20px;
  overflow-x: auto;
  font: 13.5px/1.65 ui-monospace, SFMono-Regular, Menlo, monospace;
}
body.view-article .nx-page-doc__prose pre code {
  background: none;
  color: inherit;
  padding: 0;
  font-size: inherit;
  border: 0;
}

/* ---- Mobile ---- */
@media (max-width: 575.98px) {
  body.view-article .nx-page-doc__mast { padding: 56px 20px 32px; }
  body.view-article .nx-page-doc__body { padding: 8px 20px 64px; }
  body.view-article .nx-page-doc__title { letter-spacing: -1px; }
}
