/* Shared public-page shell, aligned with the homepage. */
.api-home.public-dark {
  color-scheme: dark;
  --paper: #111111; --api-paper: #111111;
  --ink: #e8e6e1; --api-ink: #e8e6e1;
  --muted: #b1b2ac; --api-muted: #b1b2ac;
  --line: #303030; --api-line: #303030;
  --surface: #191919; --accent: #b5cec1;
  background: var(--paper); color: var(--ink);
}
.public-dark ::selection { background: #526357; color: white; }
.public-dark :focus-visible { outline: 2px solid var(--accent); outline-offset: 4px; }
.public-dark .wrap { max-width: 1200px; width: calc(100% - 96px); }
.public-dark .header { height: 88px; border: 0; }
.public-dark .header .brand { font-size: 25px; letter-spacing: -.035em; }
.public-dark .brand-mark { filter: saturate(.55) brightness(1.6); }
.public-dark .header nav { color: #c5c2ba; font-size: 14px; }
.public-dark .header nav a:hover { color: #fff; }
.public-dark .header .nav-cta { background: #282a27; border: 1px solid #454842; color: #edeee8; border-radius: 8px; }
.public-dark .header .nav-cta:hover { background: #343730; }
.public-dark .header nav [aria-current="page"] { text-decoration-color: var(--accent); }
.public-dark .menu-toggle { color: var(--ink); background: var(--surface); border-color: var(--line); }
.public-dark h1, .public-dark h2, .public-dark h3 { font-family: "DM Sans", sans-serif; font-weight: 450; letter-spacing: -.03em; }
.public-dark h1 em, .public-dark h2 em { font: inherit; color: inherit; }
.public-dark .api-footer { border-color: var(--line); }
.public-dark .api-footer-identity p, .public-dark .api-footer-group a, .public-dark .api-footer-bottom { color: var(--muted); }
.public-dark .api-footer-group a:hover, .public-dark .api-footer-bottom a:hover { color: var(--ink); }
.public-dark .api-footer-identity p { font-size: 15px; }
.public-dark .api-footer-group a { font-size: 14px; }
@media(max-width:760px) {
  .public-dark .wrap { width: calc(100% - 40px); }
  .public-dark .header { height: 76px; }
  .public-dark .header .brand { font-size: 23px; }
  .public-dark .header nav { top: 75px; left: -20px; right: -20px; background: #1c1f1b; border-color: var(--line); }
}

/* Reading pages share the same quiet hierarchy as the product pages. */
.public-dark .page-hero { padding-block: 88px 76px; }
.public-dark .page-hero h1 { font-size: clamp(44px, 6vw, 80px); line-height: 1.07; margin-top: 24px; }
.public-dark .page-hero p { color: var(--muted); line-height: 1.75; max-width: 650px; }
.public-dark .eyebrow, .public-dark .green { color: var(--accent); }
.public-dark .button.dark { background: #dce7df; color: #17231b; border: 1px solid #dce7df; border-radius: 8px; }
.public-dark .button.dark:hover { background: #eef3ef; }
.public-dark .docs-layout { gap: 72px; padding-block: 30px 100px; border-top: 1px solid var(--line); }
.public-dark .docs-layout aside { font: 14px/1.6 "DM Sans", sans-serif; color: var(--muted); gap: 20px; }
.public-dark .docs-layout aside a:hover { color: var(--ink); }
.public-dark .docs-body article { padding-block: 24px 40px; border-bottom: 1px solid var(--line); }
.public-dark .docs-body article:first-child { padding-top: 8px; }
.public-dark .docs-body article:last-child { border-bottom: 0; }
.public-dark .docs-body h2 { font-size: 28px; }
.public-dark .docs-body p, .public-dark .docs-body li { color: var(--muted); font-size: 16px; line-height: 1.8; }
.public-dark .docs-body a { color: var(--accent); text-underline-offset: 4px; }
.public-dark .callout { background: var(--surface); border-color: #6f8d7b; color: #c2c8c0; line-height: 1.8; border-radius: 0 8px 8px 0; }
.public-dark .information-body { color: #c0c1bb; }
.public-dark .information-body h1, .public-dark .information-body h2, .public-dark .information-body th { color: var(--ink); }
.public-dark .information-body h1 { font-weight: 450; margin-bottom: 36px; }
.public-dark .information-body h2 { margin-top: 48px; }
.public-dark .information-nav summary, .public-dark .information-nav a { color: var(--muted); }
.public-dark .information-nav a:hover, .public-dark .information-nav a[aria-current], .public-dark .information-body a { color: var(--accent); }
.public-dark .information-nav, .public-dark .information-body td, .public-dark .information-body th { border-color: var(--line); }
.public-dark .information-body pre { background: #1b1e1b; border-color: var(--line); color: #d1dfd4; margin-block: 24px; }
.public-dark .information-body :not(pre) > code { color: #d1dfd4; background: #222822; padding: 2px 5px; border-radius: 4px; }
.public-dark .information-body th { background: #1b1e1b; }
.public-dark .information-body a:focus-visible { outline-color: var(--accent); }
.public-dark.about-page .about-hero { padding-block: 88px 110px; }
.public-dark.about-page .about-hero h1 { font-size: clamp(44px, 5vw, 70px); line-height: 1.1; letter-spacing: -.045em; }
.public-dark .about-lead, .public-dark .about-story, .public-dark .about-contact-copy p { color: var(--muted); }
.public-dark .about-eyebrow, .public-dark .about-number { color: var(--accent); }
.public-dark .about-eyebrow > span { background: var(--accent); }
.public-dark .about-art { background: radial-gradient(ellipse at center, #263028, #191c19 70%); border-color: var(--line); border-radius: 20px; padding-block: 32px 24px; }
.public-dark .about-art-label, .public-dark .about-art figcaption { color: var(--muted); }
.public-dark .about-purpose { border-color: var(--line); padding-block: 88px 100px; }
.public-dark .about-beliefs { background: #191c19; border-block: 1px solid var(--line); padding-block: 88px; }
.public-dark .about-principles article { border-color: #3b433c; }
.public-dark .about-principles p { color: var(--muted); font-size: 15px; }
.public-dark .about-contact { padding-block: 100px; }
.public-dark .about-contact-link { background: #dce7df; color: #17231b; border-radius: 8px; }
.public-dark .about-contact-link:hover { background: #eef3ef; }
.public-dark .about-contact-copy p a { color: var(--accent); text-decoration: underline; text-underline-offset: 4px; }
.public-dark.error-page main { min-height: 65vh; }
.public-dark.error-page .footer { border-color: var(--line); color: var(--muted); }
.public-dark.error-page .error-recovery { position:static; display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-start; gap:16px 24px; width:100%; margin:28px 0 0; padding:0; border:0; background:none; box-shadow:none; }
.public-dark.error-page .error-recovery a { display:inline-flex; align-items:center; min-height:44px; font-size:14px; }
.public-dark.error-page .error-recovery a:not(.button) { color:var(--accent); text-decoration:underline; text-underline-offset:5px; }
@media(max-width:760px) {
  .public-dark .page-hero { padding-block: 48px 56px; }
  .public-dark .docs-layout { grid-template-columns: minmax(0, 1fr); gap: 36px; padding-bottom: 60px; }
  .public-dark .docs-layout aside { gap: 16px; }
  .public-dark .information-body h1 { font-size: clamp(34px, 8vw, 50px); }
  .public-dark.about-page .about-hero, .public-dark .about-purpose, .public-dark .about-contact { padding-block: 48px 60px; }
  .public-dark .about-beliefs { padding-block: 56px; }
}
