.docs-page .header-inner, .docs-page .site-footer { width: min(100% - 40px, 1320px); }
.docs-layout { display: grid; grid-template-columns: 240px minmax(0, 1fr); align-items: start; gap: 48px; width: min(100% - 40px, 1320px); margin: 0 auto; }
.docs-layout main { width: 100%; min-width: 0; padding: 48px 0; }
.docs-layout h1 { font-size: clamp(2rem, 4vw, 3.1rem); }
.docs-layout .lede { margin-bottom: 18px; }
.docs-toc { position: sticky; top: 24px; max-height: calc(100vh - 48px); overflow-y: auto; padding: 28px 0; font-size: .88rem; }
.docs-toc h2 { font-size: .85rem; text-transform: uppercase; letter-spacing: .06em; }
.docs-toc ol { padding: 0; margin: 14px 0 0; list-style: none; }
.docs-toc li { margin: 0; }
.docs-toc a { display: block; padding: 6px 8px; border-radius: 5px; color: var(--secondary); text-decoration: none; }
.docs-toc a:hover { background: #eaf1ff; color: var(--primary); }
.docs-section { scroll-margin-top: 24px; margin-top: 36px; padding: 28px; background: var(--surface); border: 1px solid var(--line); border-radius: 10px; overflow-wrap: anywhere; }
.docs-section h2 { font-size: 1.45rem; }
.docs-section h3 { margin-top: 26px; }
.docs-section li + li { margin-top: 10px; }
.docs-section code { font-size: .86em; color: #1e3a8a; background: #eff6ff; padding: 2px 4px; border-radius: 3px; }
.docs-section pre { max-width: 100%; overflow-x: auto; padding: 16px; border-radius: 6px; background: #0f172a; line-height: 1.65; }
.docs-section pre code { color: #e2e8f0; background: none; padding: 0; }
.table-scroll { max-width: 100%; overflow-x: auto; margin: 22px 0; }
.docs-section table { width: 100%; border-collapse: collapse; font-size: .9rem; text-align: left; }
.docs-section caption { text-align: left; font-weight: 700; padding-bottom: 10px; }
.docs-section th, .docs-section td { padding: 12px; border: 1px solid var(--line); vertical-align: top; }
.docs-section th { background: var(--surface-subtle); }
.docs-section td:first-child { width: 35%; }
.docs-section td { color: var(--secondary); }
.docs-section dt { font-weight: 700; margin-top: 22px; }
.docs-section dd { margin: 5px 0 0; color: var(--secondary); }
.docs-page :focus-visible { outline: 3px solid var(--primary); outline-offset: 3px; }
.skip-link { position: absolute; left: 20px; top: -100px; padding: 10px; background: white; z-index: 10; }
.skip-link:focus { top: 10px; }
@media (max-width: 960px) {
  .docs-layout { grid-template-columns: minmax(0, 1fr); gap: 0; }
  .docs-toc { position: static; max-height: none; padding: 24px 0 0; }
  .docs-toc ol { columns: 2; column-gap: 24px; }
  .docs-toc li { break-inside: avoid; }
  .docs-layout main { padding-top: 28px; }
}
@media (max-width: 540px) {
  .docs-section { padding: 18px; }
  .docs-toc ol { columns: 1; }
  .docs-section th, .docs-section td { padding: 8px; }
}
@media print {
  .site-header, .docs-toc, .site-footer, .skip-link { display: none; }
  body { background: white; font-size: 10pt; }
  .docs-layout { display: block; width: 100%; }
  .docs-layout main { padding: 0; }
  .docs-section { border: 0; border-radius: 0; padding: 0; margin-top: 24px; }
  .docs-section h2, .docs-section h3, .docs-section dt { break-after: avoid; }
  .docs-section tr { break-inside: avoid; }
  .table-scroll { overflow: visible; }
  .docs-section pre { white-space: pre-wrap; overflow-wrap: anywhere; background: #f1f5f9; }
  .docs-section pre code { color: #0f172a; }
  a { color: inherit; text-decoration: underline; }
}
