/* The etailinsights brand guide (November 2026): its palette, Plus Jakarta Sans (served with
     this page from /assets by the self-serve service; the system font where it is not) and
     its type scale, code in the system monospace. tests/test_selfserve_page.py holds every
     colour here to the guide's palette. */
  @font-face { font-family: "Plus Jakarta Sans"; src: url(/assets/plus-jakarta-sans.woff2) format("woff2");
               font-weight: 200 800; font-style: normal; font-display: swap; }
  :root { --ink: #101828; --muted: #4A5565; --heading: #22405F; --rule: #E5E7EB; --tint: #F9FAFB;
          --callout: #EEF3F8; --link: #0369A1;
          --sans: "Plus Jakarta Sans", ui-sans-serif, system-ui, sans-serif;
          --mono: ui-monospace, "SF Mono", Menlo, Consolas, monospace; }
  body { margin: 0; color: var(--ink); font: 400 16px/26px var(--sans); -webkit-font-smoothing: antialiased; }
  /* The document column. On /docs the self-serve service puts its site header and footer around it;
     every rule below is scoped to the column so none reaches that chrome (reviewed 2026-11-09). */
  main.doc { box-sizing: content-box; max-width: 920px; margin: 0 auto; padding: 32px 20px 64px; }
  main.doc a { color: var(--link); text-underline-offset: 2px; }
  main.doc h1, main.doc h2, main.doc h3, main.doc .endpoint { color: var(--heading); }
  main.doc h1 { font: 700 40px/48px var(--sans); letter-spacing: -.015em; margin: 0 0 8px; }
  main.doc h2 { font: 600 30px/38px var(--sans); letter-spacing: -.01em; margin: 48px 0 12px; padding-top: 24px; border-top: 1px solid var(--rule); }
  main.doc h3 { font: 600 22px/30px var(--sans); margin: 32px 0 8px; }
  main.doc p.lede { font: 400 19px/30px var(--sans); color: var(--muted); margin-top: 0; }
  main.doc code, main.doc pre { font: 400 14px/20px var(--mono); }
  main.doc code { background: var(--tint); padding: 1px 5px; border-radius: 4px; }
  main.doc pre { background: var(--tint); padding: 12px 16px; border-radius: 8px; overflow-x: auto; }
  main.doc pre code { background: none; padding: 0; }
  main.doc table { border-collapse: collapse; width: 100%; margin: 12px 0 24px; font: 400 14px/20px var(--sans); font-variant-numeric: tabular-nums; }
  main.doc th, main.doc td { text-align: left; vertical-align: top; padding: 8px 12px; border-bottom: 1px solid var(--rule); }
  main.doc th { background: var(--tint); font-weight: 600; }
  main.doc td:first-child { white-space: nowrap; }
  main.doc .endpoint { font: 600 16px/26px var(--sans); margin: 24px 0 4px; }
  main.doc .note { border-left: 4px solid var(--heading); border-radius: 4px; padding: 8px 16px; background: var(--callout); margin: 12px 0; }
  main.doc .note a { color: var(--heading); }
  /* Body lines under 70 characters: Plus Jakarta Sans averages 0.46em a character. */
  main.doc p, main.doc li { max-width: 30em; }
  main.doc nav ul { columns: 2; padding-left: 18px; }
  main.doc footer { color: var(--muted); font: 400 13px/18px var(--sans); margin-top: 48px; }
  /* Phones (GET /docs on the self-serve service): a wide table scrolls inside itself. */
  @media (max-width: 700px) { main.doc table { display: block; overflow-x: auto; } main.doc nav ul { columns: 1; } }
