.documentation-body { min-height: 100vh; background: var(--surface); }
.documentation-topbar { position: sticky; z-index: 20; top: 0; height: 4rem; padding-inline: var(--space-5); border-bottom: 1px solid var(--border); background: color-mix(in srgb, var(--surface) 94%, transparent); backdrop-filter: blur(12px); display: flex; align-items: center; justify-content: space-between; gap: var(--space-5); }
.documentation-topbar__left, .documentation-topbar__identity, .documentation-topbar__sections, .documentation-topbar__actions { display: flex; align-items: center; gap: var(--space-4); }
.documentation-topbar__identity .wordmark__logo { height: 1.7rem; }
.documentation-topbar__identity > span { padding-left: var(--space-4); border-left: 1px solid var(--border); color: var(--text-secondary); font-size: 0.85rem; font-weight: 750; }
.documentation-topbar__sections a, .documentation-topbar__actions > a { color: var(--text-secondary); font-size: 0.85rem; font-weight: 700; text-decoration: none; }
.documentation-topbar__sections a:hover, .documentation-topbar__actions > a:hover { color: var(--text); }
.documentation-topbar__sections a[aria-current="page"] { color: var(--text); }
.documentation-language { margin-top: auto; padding-top: var(--space-5); border-top: 1px solid var(--border); }
.documentation-language > span { display: block; margin-bottom: var(--space-2); color: var(--text-secondary); font-size: 0.7rem; font-weight: 850; letter-spacing: 0.08em; text-transform: uppercase; }
.documentation-locales { padding: 0.2rem; border: 1px solid var(--border); border-radius: var(--radius); display: flex; }
.documentation-locales a { flex: 1; }
.documentation-locales a { min-width: 2.25rem; padding: 0.35rem 0.45rem; border-radius: calc(var(--radius) / 2); color: var(--text-secondary); font-size: 0.72rem; font-weight: 850; text-align: center; text-decoration: none; }
.documentation-locales a[aria-current="page"] { background: var(--text); color: var(--surface); }
.documentation-shell { min-height: calc(100vh - 4rem); display: grid; grid-template-columns: 16rem minmax(0, 1fr); }
.documentation-sidebar { position: sticky; top: 4rem; height: calc(100vh - 4rem); padding: var(--space-6) var(--space-5); overflow-y: auto; border-right: 1px solid var(--border); background: var(--background); display: flex; flex-direction: column; }
.documentation-navigation { display: grid; gap: var(--space-6); }
.documentation-navigation section { display: grid; gap: var(--space-1); }
.documentation-navigation h2 { margin: 0 0 var(--space-2); color: var(--text-secondary); font-size: 0.7rem; font-weight: 850; letter-spacing: 0.08em; text-transform: uppercase; }
.documentation-navigation a { margin-inline: calc(-1 * var(--space-2)); padding: 0.58rem var(--space-2); border-radius: var(--radius); color: var(--text-secondary); font-size: 0.9rem; font-weight: 650; text-decoration: none; }
.documentation-navigation a:hover { background: var(--surface-subtle); color: var(--text); }
.documentation-navigation a[aria-current="page"] { background: var(--text); color: var(--surface); }
.documentation-main { min-width: 0; width: min(76rem, 100%); margin-inline: auto; padding: var(--space-8) var(--space-6) 8rem; display: grid; grid-template-columns: minmax(0, 52rem) 12rem; gap: clamp(2rem, 5vw, 5rem); justify-content: center; }
.documentation-main--rich-reference { width: min(86rem, 100%); grid-template-columns: minmax(0, 1fr); }
.documentation-main--rich-reference .documentation-toc { display: none; }
.documentation-article { min-width: 0; }
.documentation-page-header { margin-bottom: var(--space-8); padding-bottom: var(--space-6); border-bottom: 1px solid var(--border); }
.documentation-page-header h1 { margin-bottom: var(--space-4); }
.documentation-page-header > div { max-width: 43rem; color: var(--text-secondary); font-size: 1.12rem; line-height: 1.55; }
.documentation-page-header__markdown { display: inline-block; margin-top: var(--space-4); color: var(--text-secondary); font-size: 0.8rem; font-weight: 700; }
.documentation-page-header__markdown:hover { color: var(--text); }
.documentation-prose { color: #30302d; }
.documentation-prose > p, .documentation-prose > ul, .documentation-prose > ol { max-width: 46rem; }
.documentation-prose p, .documentation-prose li { line-height: 1.7; }
.documentation-prose h2 { margin: 3.75rem 0 var(--space-4); padding-top: var(--space-4); scroll-margin-top: 5rem; }
.documentation-prose h3 { margin: var(--space-6) 0 var(--space-3); scroll-margin-top: 5rem; }
.documentation-prose a { color: #1748c7; font-weight: 650; }
.documentation-prose :not(pre) > code { padding: 0.12rem 0.32rem; border: 1px solid var(--border); border-radius: 0.2rem; background: var(--background); color: var(--text); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 0.88em; }
.documentation-prose pre { margin-block: var(--space-5); padding: var(--space-5); overflow-x: auto; border: 1px solid #343430; border-radius: var(--radius); background: #20201e; color: #f4f4ef; font-size: 0.86rem; line-height: 1.65; tab-size: 2; }
.documentation-prose pre code { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; }
.documentation-prose .highlight .c, .documentation-prose .highlight .c1, .documentation-prose .highlight .cm { color: #92928b; font-style: italic; }
.documentation-prose .highlight .k, .documentation-prose .highlight .kd, .documentation-prose .highlight .kn, .documentation-prose .highlight .kp, .documentation-prose .highlight .kr, .documentation-prose .highlight .kt { color: #f08d81; }
.documentation-prose .highlight .s, .documentation-prose .highlight .s1, .documentation-prose .highlight .s2, .documentation-prose .highlight .sa, .documentation-prose .highlight .sb, .documentation-prose .highlight .sc, .documentation-prose .highlight .sd, .documentation-prose .highlight .se, .documentation-prose .highlight .sh, .documentation-prose .highlight .si, .documentation-prose .highlight .sr, .documentation-prose .highlight .ss, .documentation-prose .highlight .sx { color: #a8d880; }
.documentation-prose .highlight .na, .documentation-prose .highlight .nc, .documentation-prose .highlight .nd, .documentation-prose .highlight .ne, .documentation-prose .highlight .nf, .documentation-prose .highlight .nx { color: #7ec8e8; }
.documentation-prose .highlight .m, .documentation-prose .highlight .mb, .documentation-prose .highlight .mf, .documentation-prose .highlight .mh, .documentation-prose .highlight .mi, .documentation-prose .highlight .mo, .documentation-prose .highlight .il { color: #d6b7f5; }
.documentation-prose .highlight .nt { color: #f08d81; }
.documentation-prose .highlight .nb, .documentation-prose .highlight .bp, .documentation-prose .highlight .no { color: #f0d574; }
.documentation-prose .highlight .o, .documentation-prose .highlight .ow { color: #ddd9cb; }
.documentation-prose table { width: 100%; margin-block: var(--space-5) var(--space-8); border: 1px solid var(--border); border-radius: var(--radius); border-collapse: separate; border-spacing: 0; font-size: 0.86rem; }
.documentation-prose th, .documentation-prose td { padding: var(--space-3); border-bottom: 1px solid var(--border); text-align: left; vertical-align: top; }
.documentation-prose th { background: var(--background); color: var(--text-secondary); font-size: 0.7rem; letter-spacing: 0.06em; text-transform: uppercase; }
.documentation-prose tr:last-child td { border-bottom: 0; }
.documentation-prose td:first-child { color: var(--text); font-weight: 700; }
.api-reference-section { margin-top: 4.75rem; padding-top: var(--space-4); scroll-margin-top: 5rem; }
.documentation-prose .api-reference-section > h2 { margin: 0 0 var(--space-5); padding: 0; }
.api-reference-grid { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(22rem, 0.92fr); gap: clamp(2rem, 5vw, 5rem); align-items: start; }
.api-reference-definition { min-width: 0; }
.api-reference-kicker { margin-bottom: var(--space-3); color: var(--text-secondary); font-size: 0.72rem; font-weight: 850; letter-spacing: 0.08em; text-transform: uppercase; }
.api-properties { border-top: 1px solid var(--border); }
.api-property { padding-block: var(--space-4); border-bottom: 1px solid var(--border); }
.api-property__signature { min-height: 1.5rem; display: flex; align-items: baseline; flex-wrap: wrap; gap: var(--space-2); }
.documentation-prose .api-property__signature > code { padding: 0; border: 0; background: transparent; font-size: 0.86rem; font-weight: 800; }
.api-property__type { color: var(--text-secondary); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 0.73rem; }
.api-property__required { padding: 0.12rem 0.38rem; border: 1px solid #e4b95d; border-radius: 999px; background: #fff8de; color: #76520b; font-size: 0.62rem; font-weight: 850; letter-spacing: 0.04em; text-transform: uppercase; }
.api-property__description { max-width: 42rem; margin-top: var(--space-2); color: #4b4b47; font-size: 0.88rem; line-height: 1.65; }
.api-property__description code, .api-enum-option code { font-size: 0.82em; }
.api-enum { margin-top: var(--space-4); border: 1px solid var(--border); border-radius: var(--radius); overflow: hidden; background: var(--surface); }
.api-enum__label { padding: 0.55rem var(--space-3); border-bottom: 1px solid var(--border); background: var(--background); color: var(--text-secondary); font-size: 0.67rem; font-weight: 850; letter-spacing: 0.06em; text-transform: uppercase; }
.api-enum-option { padding: 0.72rem var(--space-3); display: grid; grid-template-columns: minmax(15rem, 42%) minmax(0, 1fr); gap: var(--space-3); align-items: baseline; }
.api-enum-option + .api-enum-option { border-top: 1px solid var(--border); }
.documentation-prose .api-enum-option > code { width: max-content; padding: 0; border: 0; background: transparent; color: #1748c7; font-weight: 800; }
.api-enum-option > span { color: var(--text-secondary); font-size: 0.8rem; line-height: 1.5; }

@media (max-width: 32rem) {
  .api-enum-option { grid-template-columns: minmax(0, 1fr); gap: 0.25rem; align-items: start; }
  .documentation-prose .api-enum-option > code { width: auto; overflow-wrap: anywhere; }
}
.api-property__children { margin-top: var(--space-4); }
.api-property__children > summary { width: max-content; color: #1748c7; cursor: pointer; font-size: 0.76rem; font-weight: 750; list-style: none; }
.api-property__children > summary::-webkit-details-marker { display: none; }
.api-property__children > summary::before { content: "+"; width: 1rem; display: inline-block; color: var(--text-secondary); }
.api-property__children[open] > summary::before { content: "−"; }
.api-property__open-label { display: none; }
.api-property__children[open] .api-property__closed-label { display: none; }
.api-property__children[open] .api-property__open-label { display: inline; }
.api-properties--nested { margin: var(--space-3) 0 0 0.45rem; padding-left: var(--space-4); border-left: 2px solid var(--border); }
.api-properties--nested .api-property:last-child { border-bottom: 0; padding-bottom: 0; }
.api-property-variant + .api-property-variant { margin-top: var(--space-5); }
.api-property-variant__label { margin: var(--space-4) 0 var(--space-2) 0.45rem; color: var(--text-secondary); font-size: 0.68rem; font-weight: 850; letter-spacing: 0.06em; text-transform: uppercase; }
.api-reference-examples { min-width: 0; display: grid; gap: var(--space-4); position: sticky; top: 6rem; }
.api-code-panel { min-width: 0; overflow: hidden; border: 1px solid #343430; border-radius: var(--radius); background: #20201e; color: #f4f4ef; }
.api-code-panel > header { min-height: 2.8rem; padding: 0 var(--space-3); border-bottom: 1px solid #454540; display: flex; align-items: center; justify-content: space-between; gap: var(--space-3); }
.api-code-panel > header span { color: #cbc9c0; font-size: 0.72rem; font-weight: 800; }
.api-code-panel > header button { padding: 0.32rem 0.5rem; border: 1px solid #565650; border-radius: var(--radius); background: #2c2c29; color: #d8d8d1; cursor: pointer; font-size: 0.68rem; font-weight: 800; }
.api-code-panel > header button:hover { background: #3a3a35; color: #fff; }
.documentation-prose .api-code-panel pre { max-height: 34rem; margin: 0; border: 0; border-radius: 0; }
.documentation-prose .api-code-panel pre code { font-size: 0.78rem; }
.api-reference-route { width: max-content; max-width: 100%; margin-bottom: var(--space-4); padding: 0.38rem 0.65rem 0.38rem 0.38rem; border: 1px solid var(--border); border-radius: var(--radius); background: var(--background); display: flex; align-items: center; gap: var(--space-2); }
.api-reference-route > span { padding: 0.22rem 0.4rem; border-radius: calc(var(--radius) / 2); background: var(--text); color: var(--surface); font-size: 0.66rem; font-weight: 850; letter-spacing: 0.04em; }
.documentation-prose .api-reference-route > code { padding: 0; border: 0; background: transparent; font-size: 0.78rem; }
.documentation-prose .api-reference-description { max-width: 46rem; margin-bottom: var(--space-6); color: var(--text-secondary); }
.api-parameter-group + .api-parameter-group { margin-top: var(--space-6); }
.api-reference-response { margin-top: var(--space-6); }
.api-reference-response > p { margin: 0; padding-block: var(--space-3); border-top: 1px solid var(--border); font-size: 0.88rem; }
.api-reference-response > p:last-child { border-bottom: 1px solid var(--border); }
.documentation-prose .api-reference-response > p code { margin-right: var(--space-2); }
.api-reference-response__formats { margin-left: var(--space-2); color: var(--text-secondary); font-size: 0.76rem; }
.api-events { max-width: 46rem; margin-block: var(--space-4) var(--space-6); border-top: 1px solid var(--border); }
.api-event { padding-block: var(--space-4); border-bottom: 1px solid var(--border); }
.documentation-prose .api-event > h3 { margin: 0; }
.documentation-prose .api-event > h3 code { padding: 0; border: 0; background: transparent; font-size: 0.84rem; font-weight: 800; }
.documentation-prose .api-event > p { margin: var(--space-2) 0 0; color: var(--text-secondary); font-size: 0.88rem; }
.code-samples { margin-block: var(--space-6); overflow: hidden; border: 1px solid #343430; border-radius: var(--radius); background: #20201e; color: #f4f4ef; }
.api-code-panel.code-samples { margin-block: 0; }
.api-code-panel.code-samples > header { border-bottom: 0; }
.code-samples__tabs { min-height: 2.8rem; padding-inline: var(--space-3); border-bottom: 1px solid #454540; display: flex; align-items: end; gap: var(--space-1); }
.code-samples__tabs button { height: 2.8rem; padding-inline: var(--space-3); border: 0; border-bottom: 2px solid transparent; background: transparent; color: #aaa9a2; cursor: pointer; font-size: 0.78rem; font-weight: 800; }
.code-samples__tabs button[aria-selected="true"] { border-bottom-color: #f1d56b; color: #fff; }
.code-samples__panel { position: relative; }
.documentation-prose .code-samples pre { margin: 0; border: 0; border-radius: 0; }
.code-samples__copy { position: absolute; z-index: 1; top: var(--space-3); right: var(--space-3); padding: 0.4rem 0.55rem; border: 1px solid #565650; border-radius: var(--radius); background: #2c2c29; color: #d8d8d1; cursor: pointer; font-size: 0.72rem; font-weight: 800; }
.code-samples__copy:hover { background: #3a3a35; color: #fff; }
.documentation-toc { position: sticky; top: 6rem; height: max-content; display: grid; gap: var(--space-2); }
.documentation-toc strong { margin-bottom: var(--space-2); font-size: 0.78rem; }
.documentation-toc a { color: var(--text-secondary); font-size: 0.78rem; line-height: 1.35; text-decoration: none; }
.documentation-toc a:hover { color: var(--text); }
.documentation-toc__level-3 { padding-left: var(--space-3); }
.documentation-page-navigation { margin-top: 5rem; padding-top: var(--space-5); border-top: 1px solid var(--border); display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-4); }
.documentation-page-navigation a { min-width: 0; padding: var(--space-4); border: 1px solid var(--border); border-radius: var(--radius); color: var(--text); text-decoration: none; }
.documentation-page-navigation a:hover { border-color: var(--text-secondary); background: var(--background); }
.documentation-page-navigation span { display: block; margin-bottom: var(--space-2); color: var(--text-secondary); font-size: 0.72rem; font-weight: 800; letter-spacing: 0.06em; text-transform: uppercase; }
.documentation-page-navigation strong { display: block; font-size: 0.92rem; }
.documentation-page-navigation__previous { grid-column: 1; }
.documentation-page-navigation__next { grid-column: 2; text-align: right; }
.documentation-mobile-navigation { display: none; }
@media (max-width: 1050px) {
  .documentation-main { grid-template-columns: minmax(0, 48rem); }
  .documentation-main--rich-reference { grid-template-columns: minmax(0, 1fr); }
  .documentation-toc { display: none; }
  .api-reference-grid { grid-template-columns: minmax(0, 1fr); }
  .api-reference-examples { position: static; }
}

@media (max-width: 820px) {
  .documentation-topbar { padding-inline: var(--space-4); }
  .documentation-shell { display: block; }
  .documentation-sidebar { display: none; }
  .documentation-mobile-navigation { position: sticky; z-index: 10; top: 4rem; display: block; border-bottom: 1px solid var(--border); background: var(--background); }
  .documentation-mobile-navigation > summary { padding: var(--space-3) var(--space-4); cursor: pointer; font-size: 0.85rem; font-weight: 750; list-style-position: inside; }
  .documentation-mobile-navigation .documentation-navigation { max-height: calc(100vh - 8rem); padding: var(--space-3) var(--space-4) var(--space-5); overflow-y: auto; border-top: 1px solid var(--border); }
  .documentation-mobile-navigation .documentation-language { margin: 0 var(--space-4); padding-bottom: var(--space-4); }
  .documentation-main { padding: var(--space-6) var(--space-4) 6rem; }
  .documentation-page-header { margin-bottom: var(--space-6); }
  .documentation-prose h2 { margin-top: var(--space-8); }
  .documentation-prose table { display: block; overflow-x: auto; }
}

@media (max-width: 520px) {
  .documentation-topbar { height: 6.25rem; padding: var(--space-3); display: grid; grid-template-columns: minmax(0, 1fr) auto; grid-template-rows: auto auto; gap: var(--space-2) var(--space-3); }
  .documentation-topbar__left { display: contents; }
  .documentation-topbar__identity { grid-column: 1; grid-row: 1; gap: var(--space-3); }
  .documentation-topbar__identity > span { padding-left: var(--space-3); }
  .documentation-topbar__sections { grid-column: 1 / -1; grid-row: 2; gap: var(--space-4); }
  .documentation-topbar__actions { grid-column: 2; grid-row: 1; }
  .documentation-topbar__sections a, .documentation-topbar__actions > a { font-size: 0.75rem; }
  .documentation-mobile-navigation { top: 6.25rem; }
  .documentation-page-header h1 { font-size: 2.35rem; }
  .documentation-page-navigation { grid-template-columns: 1fr; }
  .documentation-page-navigation__previous, .documentation-page-navigation__next { grid-column: 1; text-align: left; }
}
