.dv-wordmark { font-weight: 600; font-size: 14px; padding-left: 16px; border-left: 1px solid var(--line-strong); }
.dv-actions { margin-left: auto; display: flex; align-items: center; gap: 14px; font-size: 13px; }
.dv-theme { padding: 6px 10px; background: var(--surface); color: var(--ink); border: 1px solid var(--line); border-radius: var(--radius-md); font: inherit; cursor: pointer; }
.dv-theme:hover { border-color: var(--accent-soft-line); }
.dv-settings { color: var(--accent-ink); font-weight: 500; }
.dv-nav a { display: block; padding: 7px 10px; border-radius: var(--radius-sm); color: var(--ink-2); font-size: 14px; }
.dv-nav a:hover { background: var(--hover); }
.dv-nav a[aria-current] { background: var(--accent-soft); color: var(--accent-ink); font-weight: 600; }
.dv-body pre { background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-md); padding: 16px; overflow-x: auto; font-size: 13px; line-height: 1.6; }
.dv-body pre code { background: transparent; padding: 0; white-space: pre; }
.dv-body h1, .dv-body h2, .dv-body h3, .dv-body p { overflow-wrap: anywhere; }
.dv-body table { display: block; overflow-x: auto; }
.dv-footer { display: flex; flex-wrap: wrap; gap: 16px; margin-top: 48px; padding-top: 20px; border-top: 1px solid var(--line); font-size: 13px; color: var(--ink-2); }
.dv-footer a:hover { color: var(--accent-ink); }
.dv-skip { position: fixed; left: 16px; top: -80px; z-index: 100; padding: 10px 16px; background: var(--surface); border: 1px solid var(--accent); border-radius: var(--radius-md); }
.dv-skip:focus { top: 8px; }
html[data-theme="dark"] .lnav .logo, html[data-theme="dark"] .dv-not-found img { filter: brightness(0) invert(1); }
@media (max-width: 820px) {
  .dv .mn-side .mn-nav { display: none; }
  .dv.is-nav-open .mn-side .mn-nav { display: block; }
  .dv .mn-head h1 { font-size: 32px; }
  .dv-actions { gap: 8px; }
  .dv-wordmark { padding-left: 10px; }
}
@media (max-width: 440px) {
  .dv-wordmark { font-size: 12px; }
  .dv-settings { font-size: 12px; }
  .dv .mn-head h1 { font-size: 28px; }
}
/* Developer navigation uses the shared brand tokens. */
.dv .mn-head h1 { font-size: clamp(28px, 3vw, 38px); line-height: 1.18; }
.dv .mn-head .lede { font-size: 16px; line-height: 1.6; }
.dv .mn-body { font-size: 15px; line-height: 1.65; }
.dv .mn-body h2 { font-size: 20px; }
.dv-version { margin-left: 8px; font-size: 11px; font-family: var(--font-mono); font-weight: 400; color: var(--ink-3); }
.dv-theme { display: inline-flex; align-items: center; justify-content: center; width: 34px; height: 34px; padding: 0; }
.dv-header-reference { color: var(--ink-2); }
.dv .mn-search { position: relative; }
.dv .mn-q { padding-right: 56px; font-size: 13px; }
.dv-search-shortcut { position: absolute; right: 10px; top: 9px; color: var(--ink-3); font: 11px var(--font-mono); border: 1px solid var(--line); border-radius: var(--radius-sm); padding: 0 4px; pointer-events: none; }
.dv-nav-section { margin: 0 0 24px; }
.dv-nav-section > h2 { font-size: 11px; font-weight: 600; letter-spacing: .07em; text-transform: uppercase; color: var(--ink-3); margin: 0 0 8px; padding: 0 10px; }
.dv-nav a { font-size: 13px; padding: 6px 10px; line-height: 1.45; }
.dv-nav details summary { cursor: pointer; color: var(--ink-2); font-size: 13px; padding: 6px 10px; border-radius: var(--radius-sm); }
.dv-nav details summary:hover { background: var(--hover); color: var(--ink); }
.dv-nav summary::marker { color: var(--ink-3); font-size: 10px; }
.dv-nav summary span { float: right; font: 11px var(--font-mono); color: var(--ink-3); }
.dv-nav-children { border-left: 1px solid var(--line); padding-left: 8px; margin-left: 14px; }
.dv-nav-resource > summary { font-size: 12px; }
.dv-nav-resource .dv-nav-children a { font-size: 12px; }
.dv .mn-side { scrollbar-width: thin; }
.dv .mn-crumbs span:last-child { display: inline; }
.dv-operation-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: -4px 0 16px; }
.dv-operation-meta code { font: 12px var(--font-mono); overflow-wrap: anywhere; color: var(--ink-2); }
.dv-badge { padding: 2px 7px; border: 1px solid var(--line); border-radius: var(--radius-sm); color: var(--ink-2); font-size: 11px; line-height: 1.5; }
.dv-endpoint { display: flex; align-items: start; gap: 12px; margin-top: 20px; padding: 12px 14px; border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--surface); }
.dv-endpoint > span { font: 11px var(--font-mono); color: var(--accent-ink); background: var(--accent-soft); border-radius: var(--radius-sm); padding: 3px 6px; white-space: nowrap; }
.dv-endpoint code { font: 12px var(--font-mono); line-height: 1.7; white-space: nowrap; overflow-x: auto; min-width: 0; flex: 1; scrollbar-width: thin; }
.dv-directory { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-bottom: 28px; }
.dv-body a.dv-directory-card { display: flex; flex-direction: column; gap: 6px; padding: 18px; border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--surface); text-decoration: none; color: var(--ink); }
.dv-directory-card:hover { border-color: var(--accent-soft-line); background: var(--hover); }
.dv-directory-card > small { font-size: 10px; letter-spacing: .06em; text-transform: uppercase; color: var(--ink-3); }
.dv-directory-card > strong { font-size: 15px; font-weight: 600; }
.dv-directory-card > span { color: var(--ink-2); font-size: 13px; line-height: 1.5; }
.dv-body pre { position: relative; padding-top: 40px; font-family: var(--font-mono); background: var(--surface-2); }
.dv-code-copy { position: absolute; top: 8px; right: 8px; border: 1px solid var(--line); border-radius: var(--radius-sm); background: var(--surface); color: var(--ink-2); font: 11px var(--font-sans); cursor: pointer; padding: 3px 8px; }
.dv-code-copy:hover { color: var(--accent-ink); border-color: var(--accent-soft-line); }
.dv-body table { font-size: 13px; }
.dv-body :focus-visible, .dv-nav :focus-visible, .dv-actions :focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }
@media (max-width: 820px) { .dv .mn-side { max-height: none; padding: 0; overflow: visible; } .dv.is-nav-open .mn-nav { max-height: 65vh; overflow: auto; padding: 16px 0; border-bottom: 1px solid var(--line); margin-bottom: 20px; } .dv .mn-main { margin-top: 20px; } }
@media (max-width: 520px) { .dv-directory { grid-template-columns: 1fr; } .dv-header-reference { display: none; } .dv .wrap { padding-left: 20px; padding-right: 20px; } }
.dv-schema { border: 1px solid var(--line); border-radius: var(--radius-md); margin: 20px 0 28px; background: var(--surface); }
.dv-schema > summary { cursor: pointer; padding: 12px 16px; font-size: 13px; font-weight: 500; color: var(--ink-2); }
.dv-schema > summary:hover { color: var(--accent-ink); }
.dv-schema pre { border: 0; border-radius: 0; border-top: 1px solid var(--line); margin: 0; }

/* The developer surface uses the available width; prose stays readable
   while field tables and examples can use the whole document column. */
body:has(.dv) .lnav .wrap { max-width: none; padding-inline: 32px; }
.dv .mn-main { min-width: 0; max-width: none; }
.dv .mn-head .lede, .dv-body > p { max-width: 80ch; }
.dv-body pre { margin-block: 20px; padding: 44px 20px 20px; }
.dv-body pre::before { content: attr(data-language); position: absolute; inset: 10px auto auto 20px; font: 11px var(--font-sans); color: var(--ink-3); }
.dv-body .dv-table-scroll { width: 100%; overflow-x: auto; margin-block: 20px; border: 1px solid var(--line); border-radius: var(--radius-md); }
.dv-body table { display: table; width: 100%; min-width: 560px; margin: 0; border-collapse: collapse; }
.dv-body th, .dv-body td { padding: 12px 16px; text-align: left; vertical-align: top; overflow-wrap: normal; }
.dv-body th { background: var(--surface); font-weight: 600; white-space: nowrap; }
.dv-body td:first-child { min-width: 120px; }
.dv-body td code { white-space: normal; overflow-wrap: anywhere; }
.dv-body h3 { scroll-margin-top: 96px; font-size: 16px; margin-top: 32px; }
.dv-directory { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.dv-search-open { display: flex; align-items: center; justify-content: space-between; width: 100%; gap: 8px; background: var(--surface); color: var(--ink-2); border: 1px solid var(--line-strong); border-radius: var(--radius-md); padding: 12px; margin-bottom: 24px; font: 12px var(--font-sans); cursor: pointer; text-align: left; }
.dv-search-open .dv-search-shortcut { position: static; white-space: nowrap; }
.dv-search-dialog { padding: 0; width: min(760px, calc(100vw - 32px)); max-height: min(680px, 85dvh); margin: 10dvh auto auto; border: 1px solid var(--line-strong); border-radius: 14px; background: var(--canvas); color: var(--ink); box-shadow: var(--shadow-lg); }
.dv-search-dialog::backdrop { background: rgba(40,42,38,.45); backdrop-filter: blur(3px); }
.dv-search-form { display: flex; align-items: center; gap: 12px; padding: 16px; border-bottom: 1px solid var(--line); }
.dv-search-form .mn-q { border: 0; background: transparent; padding: 8px; width: 100%; color: var(--ink); font-size: 16px; }
.dv-search-close { background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-sm); padding: 4px 8px; color: var(--ink-2); font: 12px var(--font-mono); cursor: pointer; }
.dv-search-results { overflow-y: auto; max-height: 58dvh; padding: 8px; }
.dv-search-results > p { padding: 16px; font-size: 14px; color: var(--ink-2); }
.dv-search-results a { display: flex; flex-direction: column; gap: 4px; padding: 12px 16px; border-radius: var(--radius-md); text-decoration: none; }
.dv-search-results a:hover, .dv-search-results a:focus { background: var(--accent-soft); }
.dv-search-results strong { color: var(--ink); font-size: 14px; font-weight: 600; }
.dv-search-results span { color: var(--ink-2); font-size: 13px; line-height: 1.5; }
.dv-search-hint { border-top: 1px solid var(--line); padding: 12px 24px; margin: 0; color: var(--ink-3); font-size: 12px; }
.dv-sample-tabs { display: flex; gap: 4px; padding: 4px; background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-md); width: fit-content; }
.dv-sample-tabs button { font: 12px var(--font-sans); padding: 8px 16px; border: 0; border-radius: var(--radius-sm); cursor: pointer; color: var(--ink-2); background: transparent; }
.dv-sample-tabs button[aria-selected="true"] { background: var(--accent-soft); color: var(--accent-ink); font-weight: 600; }
.dv-body .token.comment { color: var(--ink-3); }
.dv-body .token.string, .dv-body .token.attr-value { color: var(--accent-ink); }
.dv-body .token.property, .dv-body .token.function { color: var(--blue-ink, #315f8c); }
.dv-body .token.keyword, .dv-body .token.boolean, .dv-body .token.number { color: var(--violet-ink, #775299); }
.dv-body .token.operator, .dv-body .token.punctuation { color: var(--ink-2); }
html[data-theme="dark"] .dv-body { --blue-ink: #9bbfe0; --violet-ink: #c8a7eb; }
@media (max-width: 1200px) { .dv-directory { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 820px) { body:has(.dv) .lnav .wrap { padding-inline: 20px; } .dv-search-open { margin: 0 0 12px; font-size: 13px; } .dv .mn-side { position: static; } .dv-directory { grid-template-columns: 1fr; } }
@media (prefers-reduced-motion: reduce) { .dv *, .dv-search-dialog * { scroll-behavior: auto; transition: none; } }

.dv-not-found { max-width: 760px; margin: 12vh auto; padding: 32px; color: var(--ink); font-family: var(--font-sans); }
.dv-not-found h1 { font-size: 40px; }
.dv-not-found p { line-height: 1.6; }
.dv-not-found a { color: var(--accent-ink); }

@media (max-width: 620px) {
  .dv-body .dv-field-table table { min-width: 0; }
  .dv-body .dv-field-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
  .dv-body .dv-field-table tbody { display: block; }
  .dv-body .dv-field-table tr { display: grid; grid-template-columns: minmax(0, 1fr) auto; border-bottom: 1px solid var(--line); padding: 12px; gap: 6px 12px; }
  .dv-body .dv-field-table tr:last-child { border-bottom: 0; }
  .dv-body .dv-field-table td { display: block; min-width: 0; width: auto; padding: 0; border: 0; font-size: 13px; }
  .dv-body .dv-field-table td:nth-child(2) { max-width: 18ch; text-align: right; }
  .dv-body .dv-field-table td:nth-child(3) { grid-column: 1 / -1; color: var(--ink-3); font-size: 12px; }
  .dv-body .dv-field-table td:nth-child(3)::before { content: "Required: "; }
  .dv-body .dv-field-table td:last-child { grid-column: 1 / -1; line-height: 1.6; }
}

.dv-toc-mobile { display: none; border: 1px solid var(--line); border-radius: var(--radius-md); margin-bottom: 24px; background: var(--surface); font-size: 13px; }
.dv-toc-mobile summary { cursor: pointer; padding: 12px 16px; color: var(--ink-2); }
.dv-toc-mobile ol { list-style: none; margin: 0; padding: 0 16px 12px; }
.dv-toc-mobile a { display: block; padding: 6px 0; color: var(--accent-ink); text-decoration: none; }

.dv-title-row { display: flex; align-items: start; justify-content: space-between; gap: 20px; }
.dv-title-row h1 { flex: 1; }
.dv-markdown-copy { flex: none; margin-top: 8px; padding: 8px 12px; border: 1px solid var(--line-strong); border-radius: var(--radius-sm); background: var(--surface); color: var(--ink-2); font: 12px var(--font-sans); cursor: pointer; }
.dv-markdown-copy:hover { color: var(--accent-ink); border-color: var(--accent-ink); }
.dv-markdown-copy:disabled { opacity: .6; cursor: wait; }
.dv-markdown-status { margin: 0; font: 12px var(--font-sans); color: var(--ink-2); }
.dv-markdown-status:empty { display: none; }
@media (max-width: 700px) { .dv-title-row { flex-wrap: wrap; gap: 4px; } .dv-title-row h1 { flex-basis: 100%; } .dv-markdown-copy { margin: 0 0 12px; } }

/* One developer frame for guides, directories and operation reference.
   The manual keeps its own reading layout. */
.dv .wrap.mn-grid { width:100%; max-width:none; grid-template-columns:228px minmax(0,1fr); gap:40px; padding-inline:28px; }
.dv .mn-head { max-width:none; margin-bottom:32px; }
.dv .mn-head h1 { font-size:clamp(32px,3.5vw,46px); letter-spacing:-.035em; }
.dv .mn-head .lede { max-width:76ch; font-size:17px; line-height:1.7; }
.dv .dv-toc-mobile { display:none; }
.dv-side-toc { margin:0 0 24px; border-bottom:1px solid var(--line); padding-bottom:16px; }
.dv-side-toc summary { cursor:pointer; text-transform:uppercase; letter-spacing:.06em; font-size:10px; color:var(--ink-3); padding:6px 10px; }
.dv-side-toc ol { list-style:none; margin:8px 0 0; padding:0; }
.dv-side-toc a { display:block; padding:5px 10px; font-size:12px; color:var(--ink-2); border-radius:5px; }
.dv-side-toc a:hover { color:var(--accent-ink); background:var(--accent-soft); }
.dv-copy-endpoint { flex:none; margin-left:auto; border:0; background:transparent; color:var(--ink-2); cursor:pointer; font:11px var(--font-sans); padding:4px; }
.dv-reference-layout { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(330px,1fr); align-items:start; gap:40px; }
.dv-reference-content { min-width:0; }
.dv-reference-section { border-top:1px solid var(--line); padding:28px 0; scroll-margin-top:96px; }
.dv-reference-section:first-child { padding-top:0; border-top:0; }
.dv-body .dv-reference-section h2, .dv-body .dv-examples h2 { font-size:23px; padding:0; border:0; margin:0 0 18px; line-height:1.3; letter-spacing:-.025em; }
.dv-reference-section > p { font-size:14px; line-height:1.8; color:var(--ink-2); }
.dv-reference-section strong { color:var(--ink); }
.dv-section-heading { display:flex; align-items:baseline; justify-content:space-between; gap:16px; }
.dv-expand-fields { border:0; background:transparent; color:var(--accent-ink); font:11px var(--font-sans); cursor:pointer; white-space:nowrap; padding:4px 0; }
.dv-fields { min-width:0; }
.dv-field { border-top:1px solid var(--line); padding:17px 0; min-width:0; scroll-margin-top:100px; }
.dv-field-head { display:flex; align-items:baseline; flex-wrap:wrap; gap:8px; }
.dv-field-head > code { font-size:12px; font-weight:600; padding:0; background:none; overflow-wrap:anywhere; }
.dv-field-type { font:11px var(--font-mono); color:var(--ink-2); overflow-wrap:anywhere; }
.dv-field-required { font:11px var(--font-sans); color:var(--ink-2); margin-left:auto; }
.dv-field > p { margin:7px 0 0; color:var(--ink-2); font-size:14px; line-height:1.8; }
.dv-field-constraints { font-size:12px; color:var(--ink-2); margin-top:6px; }
.dv-field-constraints p { margin:0; }
.dv-model { border:1px solid var(--line); border-radius:8px; margin:12px 0 0; background:var(--canvas); }
.dv-model > summary { cursor:pointer; padding:11px 13px; font-size:12px; font-weight:500; color:var(--accent-ink); }
.dv-model > summary small { float:right; color:var(--ink-3); font:10px var(--font-mono); padding-top:3px; }
.dv-model-body { padding:0 13px; }
.dv-model-body > .dv-field:first-child { border-top:0; }
.dv-model-group > summary { background:var(--surface); color:var(--ink); border-radius:8px; }
.dv-model-group:last-child { margin-bottom:12px; }
.dv-variant-label { margin-top:12px!important; font-size:11px; color:var(--ink-3); }
.dv-examples { position:sticky; top:calc(var(--nav-h) + 24px); max-height:calc(100dvh - var(--nav-h) - 48px); overflow-y:auto; scrollbar-width:thin; padding-right:4px; min-width:0; }
.dv-body .dv-examples h2 { font-size:18px; margin-bottom:8px; }
.dv-sample-note, .dv-scenario-description { font-size:12px; line-height:1.7; color:var(--ink-2); }
.dv-scenario-description { margin-block:12px!important; color:var(--ink-2); }
.dv-scenario-label { display:block; font-size:11px; color:var(--ink-2); margin:14px 0 6px; }
#dv-scenario { width:100%; min-height:36px; font:12px var(--font-sans); color:var(--ink); background:var(--surface); border:1px solid var(--line-strong); border-radius:7px; padding:8px; }
.dv-delegation-control { display:flex; align-items:start; gap:9px; margin:16px 0; font-size:12px; cursor:pointer; }
.dv-delegation-control input { accent-color:var(--accent); margin-top:4px; }
.dv-delegation-control small { display:block; font-size:10px; color:var(--ink-3); margin-top:3px; }
.dv-delegation-note { margin:14px 0!important; font-size:11px; color:var(--ink-2); }
.dv-examples .dv-sample-tabs { width:100%; border-radius:8px; margin-bottom:12px; }
.dv-examples .dv-sample-tabs button { padding:8px 12px; }
.dv-body .dv-request-card h3, .dv-body .dv-response-card h3 { font-size:11px; font-weight:500; margin:0; padding:12px 14px; border-bottom:1px solid var(--line); background:var(--surface); }
.dv-request-card, .dv-response-card { border:1px solid var(--line); border-radius:9px; overflow:hidden; background:var(--surface-2); }
.dv-response-card { margin-top:20px; }
.dv-success { color:var(--accent-ink); font-family:var(--font-mono); margin-right:12px; }
.dv-examples pre { border:0; border-radius:0; margin:0; font-size:12px; line-height:1.8; max-height:410px; padding:42px 16px 16px; }
.dv-examples pre code { font-size:12px; }
.dv-response-card > .dv-sample-note { padding:10px 14px; border-top:1px solid var(--line); margin:0; background:var(--surface); font-size:10px; }
.dv-examples.is-enhanced .dv-language-fallback { display:none; }
.dv-reference-section .dv-table-scroll { margin:20px 0; }
.dv-reference-section table { min-width:400px; font-size:12px; }
.dv-reference-section td, .dv-reference-section th { padding:10px; }
.dv-reference-section td:first-child { min-width:70px; }
.dv-reference-section td code { white-space:nowrap; overflow-wrap:normal; }
.dv-reference-section pre { font-size:11px; }
.dv-reference-section pre code { font-size:11px; }
.dv-reference-section .dv-schema { margin-block:12px; }
.dv-reference-content [id]:target { scroll-margin-top:96px; }
@media(min-width:1700px) {
 .dv .wrap.mn-grid { padding-inline:40px; gap:56px; }
 .dv-reference-layout { grid-template-columns:minmax(0,1.2fr) minmax(430px,1fr); gap:64px; }
 .dv-field > p, .dv-reference-section > p { font-size:14px; }
}
@media(max-width:1150px) {
 .dv .wrap.mn-grid { grid-template-columns:205px minmax(0,1fr); gap:24px; padding-inline:24px; }
 .dv-reference-layout { gap:26px; grid-template-columns:minmax(0,1fr) minmax(280px,1fr); }
 .dv-section-heading { flex-wrap:wrap; gap:0 12px; margin-bottom:10px; }
 .dv-section-heading h2 { margin-bottom:4px!important; }
}
@media(max-width:1000px) {
 .dv-reference-layout { display:flex; flex-direction:column; gap:28px; }
 .dv-examples { position:static; max-height:none; overflow:visible; width:100%; order:-1; padding:0; }
 .dv-reference-content { width:100%; }
 .dv-examples.is-enhanced .dv-scenario:not([hidden]) { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:0 16px; align-items:start; }
 .dv-scenario-description { grid-column:1/-1; }
 .dv-response-card { margin-top:0; }
}
@media(max-width:820px) {
 .dv .wrap.mn-grid { display:block; padding-inline:20px; }
 .dv .dv-side-toc { display:none; }
 .dv.is-nav-open .dv-side-toc { display:block; }
 .dv .mn-head h1 { font-size:36px; }
 .dv .mn-head .lede { font-size:16px; }
 .dv .dv-toc-mobile { display:block; }
 .dv-copy-endpoint { font-size:10px; }
 .dv-operation-page .dv-endpoint { gap:8px; padding:10px; }
 .dv-operation-page .dv-endpoint code { font-size:12px; }
}
@media(max-width:560px) {
 .dv-examples.is-enhanced .dv-scenario:not([hidden]) { display:block; }
 .dv-response-card { margin-top:18px; }
 .dv-examples pre { max-height:330px; }
 .dv-title-row { gap:0; }
 .dv-reference-section table { min-width:560px; }
 .dv-reference-section td { overflow-wrap:normal; }
 .dv-examples .dv-sample-tabs button { flex:1; padding:8px; }
}
@media print { .dv-examples { position:static; max-height:none; } .dv-reference-layout { display:block; } .dv-model:not([open]) > .dv-model-body { display:block; } }
