/* Doura Developer Docs. Palette and fonts follow the doura.ca brand
   (doura.brand_css): ink #0c1618, paper #f5f0f6, teal #1A9BAA, gold #d7b377. */
.dd-docs {
    --dd-ink: #0c1618;
    --dd-ink-2: #121f22;
    --dd-ink-3: #1a2c30;
    --dd-paper: #f5f0f6;
    --dd-text: rgba(245, 240, 246, 0.86);
    --dd-muted: rgba(245, 240, 246, 0.62);
    --dd-line: rgba(26, 155, 170, 0.28);
    --dd-line-soft: rgba(26, 155, 170, 0.14);
    --dd-teal: #1A9BAA;
    --dd-teal-bright: #3ecfdc;
    --dd-gold: #d7b377;
    --dd-orange: #e0592f;
    --dd-mono: 'Roboto Mono', ui-monospace, SFMono-Regular, Menlo, monospace;
    --dd-cond: 'Roboto Condensed', 'Roboto', system-ui, sans-serif;
    background: var(--dd-ink);
    color: var(--dd-text);
    font-family: 'Roboto', system-ui, sans-serif;
    font-size: 16px;
    line-height: 1.7;
    min-height: 70vh;
}

/* ------------------------------------------------------------------ chrome */
.dd-docs .dd-topbar {
    display: flex; align-items: center; justify-content: space-between; gap: 1rem;
    padding: .9rem 2rem; border-bottom: 1px solid var(--dd-line);
    background: var(--dd-ink-2);
}
.dd-docs .dd-brand {
    font-family: var(--dd-cond); font-weight: 700; font-size: 1.15rem; letter-spacing: .02em;
    color: var(--dd-paper); text-decoration: none;
}
.dd-docs .dd-brand span { color: var(--dd-teal); font-weight: 400; margin-left: .35rem; }
.dd-docs .dd-version {
    font-family: var(--dd-mono); font-size: .68rem; letter-spacing: .14em; text-transform: uppercase;
    color: var(--dd-gold); border: 1px solid rgba(215, 179, 119, .4); padding: .15rem .55rem; border-radius: 2px;
}
.dd-docs .dd-shell {
    display: grid; grid-template-columns: 270px minmax(0, 1fr) 230px;
    max-width: 1500px; margin: 0 auto;
}
.dd-docs .dd-sidebar { border-right: 1px solid var(--dd-line-soft); }
.dd-docs .dd-nav-desktop {
    position: sticky; top: 0; max-height: 100vh; overflow-y: auto; padding: 1.5rem 1rem 3rem 1.5rem;
}
.dd-docs .dd-nav-mobile { display: none; }
.dd-docs .dd-nav-section + .dd-nav-section { margin-top: 1.3rem; }
.dd-docs .dd-nav-title, .dd-docs .dd-toc-title {
    font-family: var(--dd-mono); font-size: .64rem; letter-spacing: .18em; text-transform: uppercase;
    color: var(--dd-teal); margin-bottom: .4rem;
}
.dd-docs .dd-nav-list, .dd-docs .dd-toc ul { list-style: none; margin: 0; padding: 0; }
.dd-docs .dd-nav-link {
    display: block; padding: .28rem .6rem; border-radius: 3px; font-size: .9rem; line-height: 1.4;
    color: var(--dd-muted); text-decoration: none; border-left: 2px solid transparent;
}
.dd-docs .dd-nav-link:hover { color: var(--dd-paper); background: var(--dd-line-soft); }
.dd-docs .dd-nav-link.active { color: var(--dd-paper); background: var(--dd-ink-3); border-left-color: var(--dd-gold); }
.dd-docs .dd-depth-1 { padding-left: .9rem; }
.dd-docs .dd-nav-label {
    padding: .5rem .6rem .15rem; font-size: .78rem; color: var(--dd-paper); opacity: .75; font-weight: 500;
}
.dd-docs .dd-main { padding: 2.2rem 3rem 4rem; min-width: 0; }
.dd-docs .dd-article { max-width: 860px; }
.dd-docs .dd-toc { padding: 2.2rem 1.2rem; }
.dd-docs .dd-toc > ul { position: sticky; top: 1.5rem; max-height: calc(100vh - 3rem); overflow-y: auto; }
.dd-docs .dd-toc a {
    display: block; font-size: .8rem; line-height: 1.35; padding: .22rem 0; color: var(--dd-muted); text-decoration: none;
}
.dd-docs .dd-toc a:hover { color: var(--dd-paper); }
.dd-docs .dd-toc ul ul { padding-left: .8rem; }

/* ---------------------------------------------------------------- content */
.dd-docs .dd-article h1, .dd-docs .dd-article h2, .dd-docs .dd-article h3, .dd-docs .dd-article h4 {
    font-family: var(--dd-cond); color: var(--dd-paper); line-height: 1.2; scroll-margin-top: 1.5rem;
}
.dd-docs .dd-article h1 { font-size: 2.6rem; font-weight: 700; margin: 0 0 .6rem; }
.dd-docs .dd-article h1 + p { font-size: 1.12rem; color: var(--dd-muted); margin-bottom: 2rem; }
.dd-docs .dd-article h2 {
    font-size: 1.65rem; font-weight: 700; margin: 2.8rem 0 .9rem; padding-top: 1.4rem;
    border-top: 1px solid var(--dd-line-soft);
}
.dd-docs .dd-article h3 { font-size: 1.25rem; font-weight: 600; margin: 2rem 0 .6rem; }
.dd-docs .dd-article h4 { font-size: 1.05rem; font-weight: 600; margin: 1.5rem 0 .5rem; }
.dd-docs .dd-article p, .dd-docs .dd-article ul, .dd-docs .dd-article ol { margin: 0 0 1rem; }
.dd-docs .dd-article li + li { margin-top: .25rem; }
.dd-docs .dd-article a { color: var(--dd-teal-bright); text-decoration: underline; text-decoration-color: rgba(62, 207, 220, .35); text-underline-offset: 2px; }
.dd-docs .dd-article a:hover { text-decoration-color: currentColor; }
.dd-docs .dd-article strong { color: var(--dd-paper); }
.dd-docs .dd-article code {
    font-family: var(--dd-mono); font-size: .84em; color: var(--dd-gold);
    background: rgba(215, 179, 119, .09); padding: .1em .35em; border-radius: 3px; word-break: break-word;
}
.dd-docs .dd-article pre code, .dd-docs .dd-hl code { background: none; padding: 0; color: inherit; word-break: normal; }
.dd-docs .dd-article .dd-hl {
    background: #0d1117; border: 1px solid var(--dd-line-soft); border-radius: 6px; margin: 0 0 1.2rem;
}
.dd-docs .dd-article .dd-hl pre {
    margin: 0; padding: 1rem 1.1rem; overflow-x: auto; font-family: var(--dd-mono); font-size: .82rem; line-height: 1.6;
    background: transparent; color: #e6edf3; border: 0;
}
.dd-docs .dd-article blockquote {
    margin: 0 0 1rem; padding: .2rem 1rem; border-left: 3px solid var(--dd-line); color: var(--dd-muted);
}
.dd-docs .dd-article hr { border: 0; border-top: 1px solid var(--dd-line-soft); margin: 2rem 0; }
.dd-docs .dd-article table {
    width: 100%; border-collapse: collapse; margin: 0 0 1.4rem; font-size: .9rem; display: block; overflow-x: auto;
}
.dd-docs .dd-article th {
    text-align: left; font-family: var(--dd-mono); font-size: .66rem; letter-spacing: .14em; text-transform: uppercase;
    font-weight: 500; color: var(--dd-teal); background: rgba(26, 155, 170, .08); padding: .65rem .9rem;
    border-bottom: 1px solid var(--dd-line);
}
.dd-docs .dd-article td { padding: .6rem .9rem; border-bottom: 1px solid var(--dd-line-soft); vertical-align: top; }
.dd-docs .dd-article td p:last-child { margin-bottom: 0; }
.dd-docs .dd-article figure { margin: 1.5rem 0; }
.dd-docs .dd-article figure img, .dd-docs .dd-article p img {
    max-width: 100%; height: auto; border-radius: 6px; border: 1px solid var(--dd-line-soft); background: #fff;
}
/* Upstream screenshots are full-resolution phone-height captures. */
.dd-docs .dd-article figure img { max-height: 620px; width: auto; display: block; }
.dd-docs .dd-article figcaption, .dd-docs .dd-article figcaption p { font-size: .82rem; color: var(--dd-muted); margin-top: .4rem; }
.dd-docs .dd-diagram { margin: 1.5rem 0; padding: 1rem; background: var(--dd-ink-2); border: 1px solid var(--dd-line-soft); border-radius: 6px; overflow-x: auto; }
.dd-docs .dd-diagram svg { max-width: 100%; height: auto; }

/* hints */
.dd-docs .dd-hint {
    margin: 0 0 1.2rem; padding: .85rem 1.1rem; border-radius: 4px; border-left: 3px solid var(--dd-teal);
    background: rgba(26, 155, 170, .09);
}
.dd-docs .dd-hint > :last-child { margin-bottom: 0; }
.dd-docs .dd-hint-warning { border-left-color: var(--dd-gold); background: rgba(215, 179, 119, .09); }
.dd-docs .dd-hint-danger { border-left-color: var(--dd-orange); background: rgba(224, 89, 47, .1); }
.dd-docs .dd-hint-success { border-left-color: #3ecf8e; background: rgba(62, 207, 142, .08); }

/* steppers */
.dd-docs .dd-stepper { counter-reset: ddstep; margin: 0 0 1.5rem; }
.dd-docs .dd-step { counter-increment: ddstep; position: relative; padding: 0 0 .6rem 2.8rem; border-left: 1px solid var(--dd-line); margin-left: .95rem; }
.dd-docs .dd-step:last-child { border-left-color: transparent; }
.dd-docs .dd-step::before {
    content: counter(ddstep); position: absolute; left: -.95rem; top: 0; width: 1.9rem; height: 1.9rem; border-radius: 50%;
    display: flex; align-items: center; justify-content: center; font-family: var(--dd-mono); font-size: .8rem;
    background: var(--dd-ink-3); color: var(--dd-gold); border: 1px solid rgba(215, 179, 119, .45);
}
.dd-docs .dd-step > h3:first-child, .dd-docs .dd-step > h4:first-child, .dd-docs .dd-step > p:first-child { margin-top: .2rem; }

/* tabs and columns */
.dd-docs .dd-tabs { margin: 0 0 1.4rem; }
.dd-docs .dd-tabs .nav-tabs { border-bottom: 1px solid var(--dd-line); gap: .25rem; }
.dd-docs .dd-tabs .nav-link {
    color: var(--dd-muted); background: transparent; border: 0; border-bottom: 2px solid transparent;
    border-radius: 0; padding: .45rem .9rem; font-size: .88rem;
}
.dd-docs .dd-tabs .nav-link:hover { color: var(--dd-paper); }
.dd-docs .dd-tabs .nav-link.active { color: var(--dd-paper); border-bottom-color: var(--dd-gold); background: transparent; }
.dd-docs .dd-tabs .tab-content { padding-top: 1rem; }
.dd-docs .dd-columns { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 1.2rem; margin: 0 0 1.2rem; }

/* ------------------------------------------------------------ API reference */
.dd-docs .dd-op, .dd-docs .dd-model { margin-bottom: 1rem; }
.dd-docs .dd-endpoint {
    display: flex; align-items: center; flex-wrap: wrap; gap: .6rem; margin: 0 0 1rem; padding: .6rem .8rem;
    background: var(--dd-ink-2); border: 1px solid var(--dd-line-soft); border-radius: 4px;
}
.dd-docs .dd-endpoint code { background: none; color: var(--dd-paper); font-size: .88rem; padding: 0; }
.dd-docs .dd-method {
    font-family: var(--dd-mono); font-size: .7rem; font-weight: 600; letter-spacing: .08em; padding: .15rem .5rem; border-radius: 3px;
    background: rgba(26, 155, 170, .2); color: var(--dd-teal-bright);
}
.dd-docs .dd-method-post { background: rgba(62, 207, 142, .16); color: #5be0a2; }
.dd-docs .dd-method-delete { background: rgba(224, 89, 47, .18); color: #ff8a65; }
.dd-docs .dd-method-put, .dd-docs .dd-method-patch { background: rgba(215, 179, 119, .18); color: var(--dd-gold); }
.dd-docs .dd-muted { color: var(--dd-muted); font-size: .85rem; }
.dd-docs .dd-article h3.dd-sub {
    font-family: var(--dd-mono); font-size: .7rem; letter-spacing: .16em; text-transform: uppercase; color: var(--dd-teal);
    font-weight: 500; margin: 1.6rem 0 .6rem;
}
.dd-docs .dd-ctype { font-size: .85rem; color: var(--dd-muted); margin-bottom: .5rem; }
.dd-docs .dd-fields { border-top: 1px solid var(--dd-line-soft); margin-bottom: 1rem; }
.dd-docs .dd-field { padding: .65rem 0; border-bottom: 1px solid var(--dd-line-soft); }
.dd-docs .dd-field-head { display: flex; flex-wrap: wrap; align-items: baseline; gap: .5rem; }
.dd-docs .dd-article .dd-fname { color: var(--dd-paper); background: none; padding: 0; font-weight: 600; font-size: .86rem; }
.dd-docs .dd-ftype { font-family: var(--dd-mono); font-size: .76rem; color: var(--dd-muted); }
.dd-docs .dd-article .dd-type-ref { color: var(--dd-teal-bright); }
.dd-docs .dd-format { opacity: .8; }
.dd-docs .dd-field-body { font-size: .9rem; margin-top: .3rem; }
.dd-docs .dd-field-body p { margin-bottom: .45rem; }
.dd-docs .dd-enum, .dd-docs .dd-constraints, .dd-docs .dd-example { font-size: .82rem; color: var(--dd-muted); }
.dd-docs .dd-badge {
    font-family: var(--dd-mono); font-size: .62rem; letter-spacing: .08em; text-transform: uppercase; padding: .05rem .4rem;
    border-radius: 2px; border: 1px solid rgba(245, 240, 246, .25); color: var(--dd-muted);
}
.dd-docs .dd-badge-req { border-color: rgba(224, 89, 47, .55); color: #ff8a65; }
.dd-docs .dd-badge-dep { border-color: rgba(215, 179, 119, .5); color: var(--dd-gold); }
.dd-docs details > summary { cursor: pointer; }
.dd-docs .dd-children, .dd-docs .dd-variant { margin-top: .5rem; padding: .3rem .8rem; border-left: 2px solid var(--dd-line); }
.dd-docs .dd-children > summary, .dd-docs .dd-variant > summary { font-size: .8rem; color: var(--dd-teal-bright); }
.dd-docs .dd-response { margin: 0 0 .5rem; padding: .5rem .9rem; background: var(--dd-ink-2); border: 1px solid var(--dd-line-soft); border-radius: 4px; }
.dd-docs .dd-response > summary { font-family: var(--dd-mono); font-size: .85rem; }
.dd-docs .dd-response[open] > summary { margin-bottom: .6rem; }
.dd-docs .dd-response-ok .dd-status { color: #5be0a2; }
.dd-docs .dd-response-err .dd-status { color: #ff8a65; }
.dd-docs .dd-example-block { margin: .6rem 0 1rem; }
.dd-docs .dd-example-title { font-size: .78rem; color: var(--dd-muted); margin-bottom: .3rem; }
.dd-docs .dd-example-block .dd-hl pre { max-height: 420px; }
.dd-docs .dd-table-wrap { overflow-x: auto; margin-bottom: 1rem; }

/* ----------------------------------------------------------------- footer */
.dd-docs .dd-pager { display: flex; justify-content: space-between; gap: 1rem; max-width: 860px; margin-top: 3.5rem; }
.dd-docs .dd-pager a {
    flex: 1 1 0; display: flex; flex-direction: column; gap: .2rem; padding: .9rem 1.1rem; text-decoration: none;
    border: 1px solid var(--dd-line); border-radius: 4px; color: var(--dd-paper);
}
.dd-docs .dd-pager a:hover { border-color: var(--dd-teal); }
.dd-docs .dd-pager span { font-family: var(--dd-mono); font-size: .62rem; letter-spacing: .16em; text-transform: uppercase; color: var(--dd-teal); }
.dd-docs .dd-pager-next { text-align: right; margin-left: auto; }
.dd-docs .dd-help { max-width: 860px; margin-top: 2rem; font-size: .88rem; color: var(--dd-muted); }
.dd-docs .dd-help a { color: var(--dd-teal-bright); }

/* -------------------------------------------------------------- responsive */
@media (max-width: 1199.98px) {
    .dd-docs .dd-shell { grid-template-columns: 250px minmax(0, 1fr); }
    .dd-docs .dd-toc { display: none; }
}
@media (max-width: 991.98px) {
    .dd-docs .dd-shell { grid-template-columns: minmax(0, 1fr); }
    .dd-docs .dd-sidebar { border-right: 0; border-bottom: 1px solid var(--dd-line-soft); }
    .dd-docs .dd-nav-desktop { display: none; }
    .dd-docs .dd-nav-mobile { display: block; padding: .6rem 16px; }
    .dd-docs .dd-nav-mobile > summary {
        font-family: var(--dd-mono); font-size: .72rem; letter-spacing: .14em; text-transform: uppercase; color: var(--dd-paper);
        padding: .4rem 0;
    }
    .dd-docs .dd-nav-mobile[open] .dd-nav-inner { padding: .8rem 0 1rem; }
    .dd-docs .dd-main { padding: 1.6rem 16px 3rem; }
    .dd-docs .dd-topbar { padding: .8rem 16px; }
    .dd-docs .dd-article h1 { font-size: 2rem; }
    .dd-docs .dd-pager { flex-direction: column; }
    .dd-docs .dd-pager-next { text-align: left; margin-left: 0; }
}

/* Card grids on section landing pages */
.dd-docs .dd-article table.dd-cards th:empty { display: none; }
.dd-docs .dd-article table.dd-cards thead { display: none; }
.dd-docs .dd-icon { color: var(--dd-gold); font-size: 1.1rem; }

/* Agent links (Markdown twin, llms.txt) in the top bar */
.dd-docs .dd-topbar-links { display: flex; align-items: center; gap: .9rem; }
.dd-docs .dd-agent-link {
    font-family: var(--dd-mono); font-size: .68rem; letter-spacing: .12em; text-transform: uppercase;
    color: var(--dd-muted); text-decoration: none;
}
.dd-docs .dd-agent-link:hover { color: var(--dd-paper); }
@media (max-width: 575.98px) { .dd-docs .dd-agent-link { display: none; } }
