.api-page { font-size: 15px; line-height: 1.7; }
.api-top { display: flex; gap: 24px; align-items: center; padding: 24px 40px; border-bottom: 1px solid #252725; }
.api-top > a:first-child { color: #efefeb; letter-spacing: .12em; font-weight: 600; }
.api-top > span { color: #a3a6a0; font-size: 13px; }
.api-top > a:last-child { margin-left: auto; font-size: 13px; }
.api-layout { display: grid; grid-template-columns: 245px minmax(0, 850px); gap: 64px; max-width: 1280px; margin: 0 auto; padding: 56px 40px 80px; }
.api-sidebar { position: sticky; top: 24px; align-self: start; max-height: calc(100dvh - 48px); overflow-y: auto; padding: 0 12px 20px 0; scrollbar-width: thin; }
.api-search { margin: 0 0 20px; }
.api-search label { display: block; color: #b1b4ad; font-size: 13px; margin-bottom: 8px; }
.api-search input { width: 100%; min-width: 0; padding: 10px 12px; border: 1px solid #454840; border-radius: 4px; background: #111310; color: #efefeb; font: inherit; font-size: 14px; }
.api-search input::placeholder { color: #a0a398; opacity: 1; }
.api-search p { font-size: 12px; margin: 6px 0 0; color: #a3a6a0; }
.api-sidebar nav { display: flex; flex-direction: column; gap: 2px; }
.api-sidebar nav a { display: block; font-size: 13px; padding: 5px 8px; border-left: 1px solid transparent; text-decoration: none; color: #aeb2a8; line-height: 1.5; }
.api-sidebar nav a:hover, .api-sidebar nav a[aria-current] { color: #f0f1ec; border-color: #abb59c; background: #141711; }
.api-main { min-width: 0; color: #c5c8bf; }
.api-main h1 { font-size: clamp(32px, 5vw, 44px); font-weight: 400; line-height: 1.2; margin: 12px 0 20px; letter-spacing: -.035em; color: #f1f2ed; }
.api-eyebrow { color: #a9b29d; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; }
.api-meta { color: #a3a79c; font-size: 13px; margin-top: 24px; }
.api-main p { margin: 16px 0; }
.api-main ul, .api-main ol { padding-left: 24px; margin: 18px 0; }
.api-main li { margin: 8px 0; }
.api-section { padding-top: 40px; margin-top: 40px; border-top: 1px solid #30332c; overflow-wrap: anywhere; }
.api-main h2 { margin: 0 0 22px; font-size: 26px; font-weight: 400; line-height: 1.3; color: #edeee8; letter-spacing: -.025em; }
.api-main h3 { margin: 36px 0 16px; font-size: 19px; font-weight: 500; color: #e1e4db; line-height: 1.4; }
.api-main h4 { margin: 28px 0 12px; font-size: 16px; font-weight: 500; color: #e1e4db; }
.api-heading { text-decoration: none; color: inherit; }
.api-heading:hover { text-decoration: underline; text-underline-offset: 5px; }
.api-main :is(h2,h3,h4,section) { scroll-margin-top: 28px; }
.api-main code { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: .88em; color: #e0e5d6; background: #171a14; border-radius: 3px; padding: .1em .3em; }
.api-code { position: relative; margin: 22px 0; }
.api-code pre { max-width: 100%; overflow-x: auto; padding: 46px 20px 20px; margin: 0; border: 1px solid #34382e; border-radius: 4px; background: #10120e; line-height: 1.65; tab-size: 4; white-space: pre; overflow-wrap: normal; }
.api-code pre code { background: none; padding: 0; border-radius: 0; font-size: 13px; }
.api-copy { position: absolute; top: 8px; right: 10px; padding: 4px 9px; font: inherit; font-size: 12px; line-height: 1.5; color: #d1d6c7; border: 1px solid #454b3b; border-radius: 3px; background: #171b12; cursor: pointer; }
.api-table { max-width: 100%; overflow-x: auto; margin: 24px 0; border: 1px solid #34382e; border-radius: 4px; }
.api-table table { width: 100%; border-collapse: collapse; font-size: 13px; line-height: 1.7; text-align: left; }
.api-table th { color: #e1e5d8; font-weight: 500; background: #151811; }
.api-table :is(td,th) { padding: 12px 14px; border-bottom: 1px solid #30342a; vertical-align: top; min-width: 110px; }
.api-table tr:last-child td { border-bottom: 0; }
.api-table code { font-size: 12px; }
.api-main blockquote { margin: 24px 0; padding-left: 20px; border-left: 2px solid #879477; }
.api-main strong { color: #e1e5d8; font-weight: 600; }
.api-main a { text-underline-offset: 3px; }
.api-footer { margin-top: 60px; padding-top: 24px; border-top: 1px solid #30332c; display: flex; gap: 24px; flex-wrap: wrap; font-size: 13px; }
.api-page [hidden] { display: none !important; }
.api-page :focus-visible { outline: 2px solid #c8d9b3; outline-offset: 4px; }
@media (max-width: 1000px) { .api-layout { grid-template-columns: 200px minmax(0, 1fr); gap: 32px; padding: 40px 24px; } .api-top { padding: 20px 24px; } }
@media (max-width: 700px) {
  .api-top { padding: 18px 20px; gap: 12px; flex-wrap: wrap; }
  .api-top > span { display: none; }
  .api-layout { display: block; padding: 28px 20px 60px; }
  .api-sidebar { position: static; max-height: none; overflow: visible; padding: 0; margin-bottom: 36px; }
  .api-sidebar nav { max-height: 180px; overflow-y: auto; border-block: 1px solid #30342a; padding: 8px 0; }
  .api-code pre { padding-left: 14px; padding-right: 14px; }
  .api-section { padding-top: 30px; margin-top: 30px; }
}
@media print {
  .api-top, .api-sidebar, .api-copy, .api-footer { display: none !important; }
  .api-layout { display: block; max-width: none; padding: 0; }
  .api-page, .api-main, .api-main :is(h1,h2,h3,h4,code,strong) { color: #000; background: #fff; }
  .api-page .api-section[hidden] { display: block !important; }
  .api-code pre { white-space: pre-wrap; overflow-wrap: anywhere; padding: 12px; }
  .api-table { overflow: visible; } .api-table :is(th,td) { min-width: 0; }
}
