/* Shared code surface for API examples and structured reports. */
.doc-code{border:1px solid var(--vs-line2);border-radius:12px;overflow:hidden;margin:1.1rem 0;background:var(--code-bg);color:var(--code-text)}.doc-code-bar{display:flex;align-items:center;justify-content:space-between;padding:.6rem .9rem;background:var(--code-bar);gap:1rem;border-bottom:1px solid var(--code-line);font-size:.72rem;color:var(--code-muted)}.doc-copy{padding:.3rem .6rem;border:1px solid var(--code-line);border-radius:5px;background:transparent;color:var(--code-text);cursor:pointer}.doc-code pre{overflow:auto;margin:0;padding:1.2rem;font-family:var(--vs-font-mono);font-size:.78rem;line-height:1.75;tab-size:2}.doc-code pre code{font-size:inherit;overflow-wrap:normal}
/* Syntax colors are scoped to the shared code container. */
:root { --code-bg:#10131D; --code-bar:#191D2A; --code-line:#343A4C; --code-text:#E2E8F3; --code-muted:#9AA7BE; --code-keyword:#CBACFF; --code-string:#9DDBB0; --code-number:#F0BE91; --code-function:#8CCCED; --code-variable:#E9D094; }
:root[data-theme-preset=virussign_light] { --code-bg:#19202D; --code-bar:#242D3E; --code-line:#465269; --code-text:#F0F3FA; --code-muted:#AFBBD0; --code-keyword:#D5BAFF; --code-string:#A6E0BB; --code-number:#F4C59B; --code-function:#9DD8F5; --code-variable:#EFDAA3; }
:root[data-theme-preset=cyber_dark] { --code-bg:#0B1319; --code-bar:#152029; --code-line:#30414D; --code-text:#E4EDF3; --code-muted:#9CACBB; --code-keyword:#70DBAD; --code-string:#C4D99A; --code-number:#EDBE96; --code-function:#8AD4E6; --code-variable:#E4CD97; }
.doc-code pre,.doc-code pre code { color:var(--code-text); white-space:pre; text-shadow:none; }
.doc-code pre { color-scheme:dark; }
.doc-code-bar>span::before { content:""; display:inline-block; width:6px; height:6px; border-radius:50%; margin-right:9px; background:var(--vs-button-start); }
.doc-copy:hover { border-color:var(--code-muted); background:var(--code-bg); }
.doc-copy:focus-visible { outline:2px solid var(--code-function); }
.doc-code .token:is(.comment,.prolog,.doctype,.cdata) { color:var(--code-muted); }
.doc-code .token:is(.keyword,.boolean,.atrule) { color:var(--code-keyword); }
.doc-code .token:is(.string,.char,.attr-value) { color:var(--code-string); }
.doc-code .token:is(.number,.constant) { color:var(--code-number); }
.doc-code .token:is(.function,.class-name,.property,.builtin) { color:var(--code-function); }
.doc-code .token:is(.variable,.parameter,.operator) { color:var(--code-variable); }
.doc-code .token.punctuation { color:var(--code-text); }

.doc-code #structured-data { max-height:700px; }
.doc-code-bar .code-actions { display:flex; gap:8px; align-items:center; flex-wrap:wrap; }
@media(max-width:700px){.doc-code pre{font-size:.72rem}.doc-code-bar{flex-wrap:wrap;gap:.5rem}}
