:root {
  --docs-bg: #f4f2ec;
  --docs-surface: #fffef9;
  --docs-ink: #15151b;
  --docs-muted: #68686f;
  --docs-line: #cfccc3;
  --docs-accent: #3152ff;
}

:root[data-theme="dark"] {
  --docs-bg: #0b0b10;
  --docs-surface: #131319;
  --docs-ink: #f1f0eb;
  --docs-muted: #aaaab2;
  --docs-line: #33333d;
  --docs-accent: #8191ff;
}

* { box-sizing: border-box; }
body { margin: 0; color: var(--docs-ink); background: var(--docs-bg); font-family: Arial, sans-serif; }
.docs-header { position: sticky; top: 0; z-index: 20; min-height: 72px; padding: 0 max(24px, calc((100vw - 1240px) / 2)); display: flex; align-items: center; justify-content: space-between; gap: 24px; background: color-mix(in srgb, var(--docs-bg), transparent 8%); border-bottom: 1px solid var(--docs-line); backdrop-filter: blur(18px); }
.docs-identity { display: grid; grid-template-columns: 30px 1fr; column-gap: 11px; color: var(--docs-ink); text-decoration: none; }
.docs-identity > span { grid-row: 1 / 3; width: 30px; height: 30px; border: 1px solid var(--docs-accent); border-radius: 50%; position: relative; }
.docs-identity > span::before, .docs-identity > span::after { content: ""; position: absolute; width: 6px; height: 6px; border-radius: 50%; background: var(--docs-accent); top: 11px; }
.docs-identity > span::before { left: 5px; }
.docs-identity > span::after { right: 5px; }
.docs-identity b { font-size: 13px; }
.docs-identity small { color: var(--docs-muted); font-size: 10px; }
.docs-tools { display: flex; align-items: center; gap: 18px; }
.docs-tools a { color: var(--docs-muted); font-size: 12px; text-underline-offset: 4px; }
#swagger-ui { max-width: 1240px; margin: 0 auto; padding: 28px 0 80px; }
.swagger-ui { color: var(--docs-ink); }
.swagger-ui .info .title, .swagger-ui .info p, .swagger-ui .info li, .swagger-ui .info table, .swagger-ui .opblock-tag, .swagger-ui .parameter__name, .swagger-ui .parameter__type, .swagger-ui .response-col_status, .swagger-ui table thead tr td, .swagger-ui table thead tr th, .swagger-ui .model-title, .swagger-ui .model { color: var(--docs-ink); }
.swagger-ui .info a, .swagger-ui .opblock-tag small, .swagger-ui .parameter__in, .swagger-ui .response-col_links { color: var(--docs-muted); }
.swagger-ui .scheme-container { background: var(--docs-surface); box-shadow: none; border: 1px solid var(--docs-line); border-radius: 12px; }
.swagger-ui .opblock, .swagger-ui section.models { background: var(--docs-surface); border-radius: 10px; box-shadow: none; }
.swagger-ui section.models, .swagger-ui section.models .model-container { border-color: var(--docs-line); }
.swagger-ui section.models .model-container { background: var(--docs-surface); }
.swagger-ui input[type=text], .swagger-ui textarea, .swagger-ui select { color: var(--docs-ink); background: var(--docs-surface); border-color: var(--docs-line); }
.swagger-ui .topbar { display: none; }

@media (max-width: 760px) {
  .docs-header { padding: 12px 14px; }
  .docs-tools a { display: none; }
  #swagger-ui { padding: 18px 8px 60px; }
  .swagger-ui .info { margin: 28px 12px; }
}

