/* Public partner API documentation (/{lang}/partners/api-docs).
   Plain CSS, no script: the page has to read the same with JavaScript off. */

.vt-docs { --vt-docs-code-bg: #0f1b2d; --vt-docs-code-fg: #e6edf7; --vt-docs-line: rgba(0, 0, 0, .12); }

/* Opening block ------------------------------------------------------- */
.vt-docs-hero { padding: 2.25rem 0 1.5rem; }
.vt-docs-eyebrow { text-transform: uppercase; letter-spacing: .08em; font-size: .78rem; font-weight: 600; color: #b3470a; }
.vt-docs-hero h1 { font-size: clamp(1.75rem, 4vw, 2.6rem); font-weight: 700; margin: .25rem 0 1rem; }
.vt-docs-hero .lead { max-width: 52rem; }
.vt-docs-note { font-size: .9rem; color: #5b6573; max-width: 52rem; }
.vt-docs-highlights { display: grid; grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr)); gap: .75rem; margin: 1.5rem 0 0; padding: 0; list-style: none; }
.vt-docs-highlights li { border: 1px solid var(--vt-docs-line); border-radius: .5rem; padding: .85rem 1rem; background: #fff; font-weight: 500; }

/* Two columns: contents + body ---------------------------------------- */
.vt-docs-toc { font-size: .92rem; }
.vt-docs-toc ol { list-style: none; margin: 0; padding: 0; }
.vt-docs-toc li { margin: 0; }
.vt-docs-toc a { display: block; padding: .28rem .5rem; border-radius: .3rem; color: inherit; text-decoration: none; }
.vt-docs-toc a:hover, .vt-docs-toc a:focus { background: rgba(0, 0, 0, .06); }
.vt-docs-toc ol ol { padding-inline-start: 1rem; font-size: .86rem; }
.vt-docs-toc-sticky { position: sticky; top: 1rem; max-height: calc(100vh - 2rem); overflow-y: auto; }
.vt-docs-toc-mobile { border: 1px solid var(--vt-docs-line); border-radius: .5rem; padding: .5rem .85rem; background: #fff; }
.vt-docs-toc-mobile summary { cursor: pointer; font-weight: 600; }

/* Sections ------------------------------------------------------------ */
.vt-docs-section { margin-bottom: 3rem; scroll-margin-top: 1rem; }
.vt-docs-section > h2 { font-size: 1.55rem; font-weight: 700; padding-bottom: .5rem; border-bottom: 2px solid var(--vt-docs-line); margin-bottom: 1.25rem; }
.vt-docs-tech { text-align: left; }
.vt-docs-tech h3 { font-size: 1.2rem; font-weight: 700; margin: 2rem 0 .6rem; scroll-margin-top: 1rem; }
.vt-docs-tech h4 { font-size: 1.02rem; margin: 0; }
.vt-docs-tech p, .vt-docs-tech li { line-height: 1.6; }
.vt-docs-tech code { font-size: .88em; background: rgba(0, 0, 0, .06); padding: .08rem .3rem; border-radius: .25rem; word-break: break-word; }
.vt-docs-tech pre code { background: none; padding: 0; word-break: normal; }

/* Code ---------------------------------------------------------------- */
.vt-code { background: var(--vt-docs-code-bg); color: var(--vt-docs-code-fg); border-radius: .5rem; padding: .85rem 1rem; margin: .5rem 0 1rem; overflow-x: auto; font-size: .82rem; line-height: 1.5; max-width: 100%; }
.vt-code code { color: inherit; white-space: pre; }
.vt-docs-label { font-size: .74rem; text-transform: uppercase; letter-spacing: .06em; font-weight: 700; color: #5b6573; margin: 1rem 0 .15rem; }
.vt-docs-details { margin: .25rem 0 1rem; }
.vt-docs-details > summary { cursor: pointer; font-weight: 600; font-size: .92rem; }

/* Tables: wrapped so a wide one scrolls on its own, not the page -------- */
.vt-docs-table { overflow-x: auto; margin: .5rem 0 1.25rem; }
.vt-docs-table table { width: 100%; font-size: .9rem; border-collapse: collapse; }
.vt-docs-table th, .vt-docs-table td { padding: .45rem .65rem; border-bottom: 1px solid var(--vt-docs-line); vertical-align: top; text-align: left; }
.vt-docs-table th { background: rgba(0, 0, 0, .04); font-weight: 600; white-space: nowrap; }
.vt-docs-table td code { white-space: normal; }

/* Endpoint cards ------------------------------------------------------ */
.vt-ep { border: 1px solid var(--vt-docs-line); border-radius: .6rem; padding: 1rem 1.15rem; margin: 0 0 1.5rem; background: #fff; scroll-margin-top: 1rem; }
.vt-ep h4 { display: flex; flex-wrap: wrap; gap: .5rem; align-items: baseline; }
.vt-ep h4 code { background: none; padding: 0; font-size: 1rem; word-break: break-all; }
.vt-method { display: inline-block; min-width: 4.2rem; text-align: center; padding: .12rem .5rem; border-radius: .3rem; font-size: .76rem; font-weight: 700; color: #fff; }
.vt-m-get { background: #1d6fb8; }
.vt-m-post { background: #2f8f4e; }
.vt-m-put { background: #b3730a; }
.vt-m-patch { background: #7a4fb3; }
.vt-m-delete { background: #b83a3a; }
.vt-ep-meta { font-size: .85rem; color: #5b6573; margin: .25rem 0 .5rem; }
.vt-ep ul { padding-inline-start: 1.2rem; }
.vt-status { display: inline-block; min-width: 2.4rem; font-weight: 700; }

/* Small screens ------------------------------------------------------- */
@media (max-width: 575.98px) {
    .vt-docs-hero { padding-top: 1.25rem; }
    .vt-ep { padding: .8rem; }
    .vt-code { font-size: .76rem; padding: .7rem .75rem; }
    .vt-docs-section > h2 { font-size: 1.3rem; }
}
