/* docs.css — page styles for the API reference and the platform handbook (Phase 3; loaded by
   base.html after wy.css, tokens only). .wy-docs is the page column (one card per section);
   .wy-prose is the reading typography inside a card body: paragraphs, lists, inline code,
   and the spacing around the code, key-value, table and notice primitives. The join page
   reuses .wy-prose for the expectations list. */
.wy-docs { display: flex; flex-direction: column; gap: var(--wy-space-4); max-width: calc(var(--wy-space-16) * 13); /* 832 */ }
.wy-prose { color: var(--wy-text); font-size: var(--wy-text-md); line-height: var(--wy-leading); }
.wy-prose > :first-child { margin-top: 0; }
.wy-prose > :last-child { margin-bottom: 0; }
.wy-prose p, .wy-prose ul, .wy-prose ol { margin: 0 0 var(--wy-space-3); }
.wy-prose ul, .wy-prose ol { padding-left: var(--wy-space-6); }
.wy-prose li { margin: 0 0 var(--wy-space-1); }
.wy-prose li::marker { color: var(--wy-text-muted); }
.wy-prose h3 { margin: var(--wy-space-4) 0 var(--wy-space-2); color: var(--wy-text); font-size: var(--wy-text-md); font-weight: var(--wy-weight-semibold); line-height: var(--wy-leading-tight); }
.wy-prose b, .wy-prose strong { color: var(--wy-text); font-weight: var(--wy-weight-semibold); }
.wy-prose code { padding: 0 var(--wy-space-1); border: 1px solid var(--wy-border); border-radius: var(--wy-radius-sm); background: var(--wy-surface-sunken); color: var(--wy-text); font-family: var(--wy-font-mono); font-size: var(--wy-text-sm); overflow-wrap: anywhere; }
.wy-prose .wy-code code, .wy-prose .wy-cmd code { padding: 0; border: 0; background: transparent; font-size: inherit; }
.wy-prose .wy-code, .wy-prose .wy-kv, .wy-prose .wy-table-wrap, .wy-prose .wy-notice { margin: var(--wy-space-3) 0; }
.wy-prose .wy-kv { border-top: 1px solid var(--wy-border); }
.wy-prose .wy-kv__row > dd { color: var(--wy-text-muted); }
.wy-prose .wy-kv__row > dd b, .wy-prose .wy-kv__row > dd code { color: var(--wy-text); }
.wy-prose--muted { color: var(--wy-text-muted); }
.wy-prose--sm { font-size: var(--wy-text-sm); }
/* Tables inside a padded card body get their own frame; the rounded wrap clips the sticky
   header's corners. Method and description cells wrap, the path column never does. */
.wy-docs .wy-table-wrap { border: 1px solid var(--wy-border); border-radius: var(--wy-radius-lg); }
.wy-docs .wy-table td { vertical-align: top; padding-top: var(--wy-space-2); padding-bottom: var(--wy-space-2); }
.wy-docs .wy-table td.wy-docs__path { white-space: nowrap; }
.wy-docs .wy-table td.wy-docs__desc { color: var(--wy-text-muted); }
.wy-docs .wy-table td.wy-docs__desc code { padding: 0 var(--wy-space-1); border: 1px solid var(--wy-border); border-radius: var(--wy-radius-sm); background: var(--wy-surface-sunken); color: var(--wy-text); font-family: var(--wy-font-mono); font-size: var(--wy-text-xs); }
.wy-docs .wy-card__body > .wy-prose + .wy-table-wrap { margin-top: var(--wy-space-3); }
@media (max-width: 639px) {
  .wy-docs .wy-table--stack td.wy-docs__path { white-space: normal; text-align: left; }
  .wy-docs .wy-table--stack td.wy-docs__desc { text-align: left; }
}
