/* Match the landing page's type, open sections, and fine rules. */
.docs-page {
    --docs-ink: #e8e9e4;
    --docs-muted: #a0a39b;
    --docs-line: #292c28;
    --docs-accent: #5ab9a9;
    background: #030303;
    color: var(--docs-ink);
    font-family: 'IBM Plex Sans', sans-serif;
    line-height: 1.7;
    -webkit-font-smoothing: antialiased;
}

.docs-page a:focus-visible,
.docs-page button:focus-visible,
.docs-page summary:focus-visible {
    outline: 2px solid var(--docs-accent);
    outline-offset: 4px;
}

.docs-page .docs-nav {
    background: #030303;
    border-bottom: 1px solid var(--docs-line);
}
.docs-nav > div { height: 76px; max-width: 1440px; padding-inline: 32px; }
.docs-page .docs-layout { padding-top: 76px; }
.docs-page .docs-sidebar {
    width: 264px;
    top: 76px;
    height: calc(100dvh - 76px);
    background: transparent;
    border-right: 1px solid var(--docs-line);
    scrollbar-width: thin;
    scrollbar-color: var(--docs-line) transparent;
}
.docs-sidebar > div { padding: 32px 24px; }
.docs-sidebar h3,
.docs-page .docs-eyebrow {
    color: var(--docs-muted);
    font: 400 11px/1.6 'JetBrains Mono', monospace;
    text-transform: uppercase;
    letter-spacing: 0.1em;
}
.docs-page .sidebar-link {
    padding: 6px 12px;
    border-radius: 0;
    color: var(--docs-muted);
    line-height: 1.5;
    transition: color 150ms, background-color 150ms;
}
.docs-page .sidebar-link.pl-8 { padding-left: 24px; }
.docs-page .sidebar-link:hover,
.docs-page .sidebar-link.active {
    color: var(--docs-accent);
    background: rgb(90 185 169 / 10%);
}
.docs-page .docs-content { min-width: 0; }
.docs-page .docs-article { max-width: 960px; padding: 56px 48px 64px; }
.docs-content section { scroll-margin-top: 108px; }
.docs-content section + section {
    margin-top: 48px;
    padding-top: 40px;
    border-top: 1px solid var(--docs-line);
}
.docs-content h1,
.docs-content h2,
.docs-content h3 { text-wrap: balance; overflow-wrap: anywhere; }
.docs-content h1 {
    max-width: 680px;
    font-size: clamp(32px, 4vw, 46px);
    font-weight: 400;
    letter-spacing: -0.04em;
    line-height: 1.15;
}
.docs-content h2 {
    font-size: clamp(25px, 3vw, 32px);
    font-weight: 400;
    letter-spacing: -0.03em;
    line-height: 1.25;
}
.docs-content h3 { font-weight: 500; letter-spacing: -0.015em; }
.docs-content p { text-wrap: pretty; }
.docs-content .text-neutral-400,
.docs-footer .text-neutral-500 { color: var(--docs-muted); }
.docs-content .text-brand-400 { color: var(--docs-accent); }
.docs-page .docs-eyebrow { display: block; padding: 0; margin-bottom: 20px; }
.docs-page .docs-block {
    min-width: 0;
    padding: 22px 0;
    border: 0;
    border-top: 1px solid var(--docs-line);
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}
.docs-page .docs-icon {
    width: 24px;
    height: 24px;
    border-radius: 0;
    background: transparent;
}
.docs-page .docs-note {
    padding: 8px 0 8px 20px;
    border: 0;
    border-left: 1px solid var(--docs-accent);
    border-radius: 0;
    background: transparent;
}
.docs-page .docs-note-warning { border-left-color: #dfb47b; }
.docs-page .docs-note-danger { border-left-color: #f87171; }
.docs-page .docs-label { font-weight: 400; letter-spacing: 0.02em; }
.docs-block .font-mono { overflow-wrap: anywhere; }
.docs-page .docs-detail {
    padding: 16px 0;
    border-top: 1px solid var(--docs-line);
    background: transparent;
    border-radius: 0;
}
.docs-page #lang-tabs { gap: 24px; border-bottom: 1px solid var(--docs-line); }
.docs-page .tab-btn {
    padding: 10px 0;
    margin-bottom: -1px;
    border-bottom: 1px solid transparent;
    border-radius: 0;
    background: transparent;
    color: var(--docs-muted);
    font: 400 12px/1.6 'JetBrains Mono', monospace;
}
.docs-page .tab-btn:hover,
.docs-page .tab-btn.active { color: var(--docs-ink); border-bottom-color: var(--docs-accent); }
.docs-page pre[class*="language-"] {
    padding: 48px 20px 24px;
    margin: 20px 0;
    border: 0;
    border-block: 1px solid var(--docs-line);
    border-radius: 0;
    background: #0a0b0a;
    font: 400 13px/1.85 'JetBrains Mono', monospace;
    tab-size: 4;
}
.docs-page code[class*="language-"] {
    font-family: 'JetBrains Mono', monospace;
    font-size: inherit;
    line-height: inherit;
}
.docs-content :not(pre) > code {
    padding: 0;
    border-radius: 0;
    background: transparent;
    font-family: 'JetBrains Mono', monospace;
    font-size: 0.85em;
    overflow-wrap: anywhere;
}
.docs-page .copy-btn {
    position: absolute;
    top: 10px;
    right: 16px;
    padding: 4px;
    border: 0;
    background: transparent;
    color: var(--docs-muted);
    font: 400 11px/1.5 'JetBrains Mono', monospace;
    cursor: pointer;
}
.docs-page .copy-btn:hover { color: var(--docs-accent); }
.docs-page .docs-table { overflow-x: auto; }
.docs-content table { min-width: 460px; line-height: 1.6; }
.docs-content th { color: var(--docs-muted); font-weight: 400; font-size: 12px; }
.docs-content th,
.docs-content td { padding-right: 20px; vertical-align: top; }
.docs-content tr { border-color: var(--docs-line); }
.docs-page .docs-cta { padding-block: 40px; text-align: left; }
.docs-page .docs-button {
    display: inline-flex;
    align-items: center;
    padding: 10px 18px;
    border: 1px solid var(--docs-line);
    border-radius: 3px;
    background: transparent;
    color: var(--docs-ink);
    font-size: 14px;
    font-weight: 400;
    transition: border-color 150ms, color 150ms;
}
.docs-page .docs-button:hover { border-color: var(--docs-accent); color: var(--docs-accent); }
.docs-page .docs-footer { border-top: 1px solid var(--docs-line); }
.docs-page .docs-mobile-nav { display: none; }

@media (min-width: 1024px) {
    .docs-page .docs-content,
    .docs-page .docs-footer { margin-left: 264px; }
}
@media (max-width: 1023px) {
    .docs-page .docs-article { padding: 32px 28px 48px; }
    .docs-page .docs-mobile-nav { display: block; margin-bottom: 32px; border-bottom: 1px solid var(--docs-line); }
    .docs-mobile-nav summary { padding-block: 12px; color: var(--docs-muted); font: 12px/1.6 'JetBrains Mono', monospace; cursor: pointer; }
    .docs-mobile-nav nav { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px 20px; padding-block: 12px 24px; font-size: 13px; }
    .docs-mobile-nav a { color: var(--docs-muted); }
    .docs-mobile-nav a:hover { color: var(--docs-accent); }
}
@media (max-width: 600px) {
    .docs-nav > div { padding-inline: 20px; }
    .docs-nav .dr-brand { width: 128px; }
    .docs-page .docs-article { padding-inline: 20px; }
    .docs-page .docs-button { padding: 8px 12px; font-size: 13px; }
    .docs-content section + section { margin-top: 36px; padding-top: 32px; }
    .docs-page pre[class*="language-"] { padding-inline: 14px; font-size: 12px; }
    .docs-page .docs-mobile-nav nav { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    .docs-page *, .docs-page *::before, .docs-page *::after { transition: none !important; }
}
