/* ============================================================================
   Swagger UI — оформление под бренд REGEX.

   Палитра и обе темы живут в tokens.css; здесь только правила под
   `.swagger-ui …` — наружу ничего не течёт. Своих цветов файл не заводит:
   всё, что раньше было литералами, теперь ссылки на семантику, поэтому
   playground переключается вместе с документацией.
   ========================================================================= */

/* ─── Фон страницы: чёрный + едва заметный grid + subtle noise ─────────── */
html, body {
  background-color: var(--docs-page-bg);
  color: var(--text-default);
  min-height: 100vh;
  overflow-x: hidden;
}
body {
  /* Сетка 24px + два мягких свечения. Растровых картинок нет — только
     градиенты, поэтому подложка одинаково живёт в обеих темах. */
  background-image:
    linear-gradient(to right,  var(--docs-grid-line) 1px, transparent 1px),
    linear-gradient(to bottom, var(--docs-grid-line) 1px, transparent 1px),
    radial-gradient(ellipse at 15% -10%, var(--docs-glow-primary), transparent 60%),
    radial-gradient(ellipse at 95% 105%, var(--docs-glow-accent), transparent 55%);
  background-size: 24px 24px, 24px 24px, 100% 100%, 100% 100%;
  background-attachment: fixed;
  background-position: -0.5px -0.5px, -0.5px -0.5px, center, center;
}

/* Canvas-фон с частицами: инжектится через /theme/particles.js */
canvas#theme-bg {
  position: fixed;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  opacity: 0.6;
}

/* Весь Swagger — над фоном */
.swagger-ui,
.swagger-ui .wrapper {
  position: relative;
  z-index: 1;
  background: transparent;
}
.swagger-ui .wrapper {
  max-width: 1200px;
  padding: 0 24px;
}


/* ─── Базовые тексты ─────────────────────────────────────────────────────── */
.swagger-ui,
.swagger-ui .info,
.swagger-ui .opblock-summary-path,
.swagger-ui .opblock-summary-description,
.swagger-ui .opblock-tag,
.swagger-ui .parameter__name,
.swagger-ui .parameter__type,
.swagger-ui .response-col_status,
.swagger-ui table,
.swagger-ui .responses-inner,
.swagger-ui .opblock-title_normal,
.swagger-ui .btn,
.swagger-ui select,
.swagger-ui input,
.swagger-ui textarea,
.swagger-ui h1,
.swagger-ui h2,
.swagger-ui h3,
.swagger-ui h4,
.swagger-ui h5,
.swagger-ui label,
.swagger-ui p,
.swagger-ui li,
.swagger-ui td,
.swagger-ui th {
  font-family: var(--font-sans);
  color: var(--color-white);
}


/* ─── Топбар — убираем стоковую белую полосу ────────────────────────────── */
.swagger-ui .topbar {
  background: transparent;
  border-bottom: 1px solid var(--color-hairline);
  padding: 10px 24px;
}


/* ─── Шапка (title + version + description) ─────────────────────────────── */
.swagger-ui .info { margin: 40px 0 32px; }

.swagger-ui .info .title {
  color: var(--color-white);
  font-family: var(--font-mono);        /* технический моно для главного тайтла */
  font-size: var(--text-4xl);
  font-weight: 700;
  letter-spacing: -0.02em;
  text-shadow: var(--shadow-text-soft);
  margin: 0 0 12px;
  line-height: 1.05;
}

/* Компактные бейджи версии рядом с тайтлом */
.swagger-ui .info .title small,
.swagger-ui .info .title .version-stamp,
.swagger-ui .info .title small pre,
.swagger-ui .info .version {
  background: var(--color-bg-1) !important;
  color: var(--color-white) !important;
  border: 1px solid var(--color-hairline-strong) !important;
  border-radius: var(--radius-md);
  font-family: var(--font-mono);
  font-size: var(--text-xs);
  font-weight: 600;
  padding: 4px 10px;
  margin-left: 10px;
  vertical-align: middle;
  box-shadow: none;
}
/* OAS-бейдж — лаймовый */
.swagger-ui .info .title small.version-stamp,
.swagger-ui .info .title .version-stamp {
  background: var(--color-accent-lime) !important;
  color: var(--color-black) !important;
  border: 1px solid var(--color-accent-lime) !important;
}
.swagger-ui .info .title small.version-stamp pre {
  background: transparent !important;
  color: var(--color-black) !important;
  font-family: var(--font-mono);
  padding: 0;
  border: 0 !important;
}

.swagger-ui .info .description,
.swagger-ui .info .description p,
.swagger-ui .info .description li {
  color: var(--color-text-mute);
  font-size: var(--text-base);
  line-height: 1.6;
}
.swagger-ui .info .description code,
.swagger-ui .info .description pre {
  background: var(--color-bg-1);
  color: var(--color-white);
  border: 1px solid var(--color-hairline);
  font-family: var(--font-mono);
  font-size: var(--text-sm);
  border-radius: var(--radius-sm);
  padding: 2px 8px;
}

.swagger-ui .info a,
.swagger-ui .info .link,
.swagger-ui .info .description a {
  color: var(--color-accent-violet);
  text-decoration: none;
}
.swagger-ui .info a:hover,
.swagger-ui .info .description a:hover {
  text-decoration: underline;
}


/* ─── Schemes-picker (сервер) ────────────────────────────────────────────── */
.swagger-ui .scheme-container {
  background: transparent;
  box-shadow: none;
  border-bottom: 1px solid var(--color-hairline);
  padding: 16px 0 20px;
  margin: 0 0 24px;
}


/* ─── Заголовки тегов ────────────────────────────────────────────────────── */
.swagger-ui .opblock-tag {
  background: transparent;
  border: 0;
  border-bottom: 1px solid var(--color-hairline);
  padding: 18px 4px;
  margin: 28px 0 12px;
  transition: color var(--duration-fast) var(--ease-in-out);
}
.swagger-ui .opblock-tag:hover { color: var(--color-white); }
.swagger-ui .opblock-tag,
.swagger-ui .opblock-tag a,
.swagger-ui .opblock-tag span {
  color: var(--color-white);
  font-family: var(--font-mono);
  font-size: var(--text-2xl);
  font-weight: 600;
  letter-spacing: -0.03em;
}
.swagger-ui .opblock-tag small {
  color: var(--color-text-mute);
  font-family: var(--font-sans);
  font-size: var(--text-sm);
  font-weight: 400;
  letter-spacing: 0;
}
.swagger-ui .opblock-tag svg,
.swagger-ui .expand-operation svg {
  fill: var(--color-text-mute);
}


/* ─── Карточки операций ─────────────────────────────────────────────────── */
.swagger-ui .opblock {
  background: var(--color-bg-1);
  border: 1px solid var(--color-hairline-strong);
  border-radius: var(--radius-md);
  box-shadow: none;
  margin: 0 0 10px;
  overflow: hidden;
  transition:
    border-color var(--duration-fast) var(--ease-in-out),
    box-shadow  var(--duration-fast) var(--ease-in-out),
    transform   var(--duration-fast) var(--ease-in-out);
}
.swagger-ui .opblock:hover {
  border-color: var(--color-accent-violet);
  box-shadow: 0 0 0 1px var(--color-accent-violet-10),
              0 0 24px -6px var(--color-accent-violet-glow);
}
.swagger-ui .opblock .opblock-summary {
  border-bottom: 0;
  padding: 8px 16px;
  gap: 12px;
  background: transparent;
}
.swagger-ui .opblock .opblock-summary:hover {
  background: transparent;
}


/* ─── Бейджи методов (плотный, моно) ────────────────────────────────────── */
.swagger-ui .opblock .opblock-summary-method {
  font-family: var(--font-mono) !important;
  font-size: var(--text-xs) !important;
  font-weight: 700 !important;
  min-width: 70px;
  padding: 5px 10px !important;
  border-radius: var(--radius-sm) !important;
  text-shadow: none !important;
  box-shadow: none !important;
  letter-spacing: 0.04em;
  text-align: center;
}
.swagger-ui .opblock.opblock-get                        { border-color: var(--color-hairline-strong); }
.swagger-ui .opblock.opblock-get .opblock-summary-method    { background: var(--color-accent-blue) !important; color: var(--color-black) !important; }
.swagger-ui .opblock.opblock-post .opblock-summary-method   { background: var(--color-accent-lime) !important; color: var(--color-black) !important; }
.swagger-ui .opblock.opblock-put .opblock-summary-method    { background: var(--warning-500) !important; color: var(--color-black) !important; }
.swagger-ui .opblock.opblock-delete .opblock-summary-method { background: var(--color-danger) !important; color: var(--color-white) !important; }
.swagger-ui .opblock.opblock-patch .opblock-summary-method  { background: var(--color-accent-violet) !important; color: var(--color-white) !important; }


/* ─── Путь и описание в шапке операции ──────────────────────────────────── */
.swagger-ui .opblock .opblock-summary-path,
.swagger-ui .opblock .opblock-summary-path__deprecated,
.swagger-ui .opblock .opblock-summary-path a {
  color: var(--color-white);
  font-family: var(--font-mono);
  font-size: var(--text-sm);
  font-weight: 500;
}
.swagger-ui .opblock .opblock-summary-description {
  color: var(--color-text-mute);
  font-family: var(--font-sans);
  font-size: var(--text-sm);
}
.swagger-ui .opblock-summary-control:focus {
  outline: 2px solid var(--color-accent-violet);
  outline-offset: 2px;
}


/* ─── Раскрытое тело операции ───────────────────────────────────────────── */
.swagger-ui .opblock .opblock-body,
.swagger-ui .opblock .opblock-section,
.swagger-ui .opblock .opblock-section-header {
  background: var(--color-bg-2);
  color: var(--color-white);
}
.swagger-ui .opblock .opblock-body { padding: 0; }
.swagger-ui .opblock .opblock-section-header {
  background: transparent;
  border-top: 1px solid var(--color-hairline);
  border-bottom: 1px solid var(--color-hairline);
  padding: 12px 24px;
  box-shadow: none;
}
.swagger-ui .opblock .opblock-section-header h4,
.swagger-ui .opblock .opblock-section-header .tab-header,
.swagger-ui .opblock .opblock-title,
.swagger-ui .opblock h4 {
  color: var(--color-white);
  font-family: var(--font-sans);
  font-size: var(--text-md);
  font-weight: 600;
  letter-spacing: -0.01em;
}
.swagger-ui .opblock-description-wrapper,
.swagger-ui .opblock-external-docs-wrapper,
.swagger-ui .opblock .opblock-section > div {
  padding: 20px 24px;
  color: var(--color-white);
}
.swagger-ui .opblock-description-wrapper p,
.swagger-ui .responses-wrapper > div > p,
.swagger-ui .response-col_description__inner p {
  color: var(--color-white);
  font-size: var(--text-sm);
  line-height: 1.6;
  margin: 0 0 8px;
}


/* ─── Таблицы параметров и ответов ──────────────────────────────────────── */
.swagger-ui table {
  border-collapse: separate;
  border-spacing: 0;
  width: 100%;
}
.swagger-ui table thead tr td,
.swagger-ui table thead tr th {
  color: var(--color-text-mute);
  font-family: var(--font-sans);
  font-size: var(--text-xs);
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border-bottom: 1px solid var(--color-hairline-strong);
  padding: 10px 12px;
  background: transparent;
}
.swagger-ui table tbody tr td {
  border-bottom: 1px solid var(--color-hairline);
  padding: 10px 12px;
  vertical-align: top;
  color: var(--color-white);
  font-size: var(--text-sm);
}
.swagger-ui table.parameters tbody tr:nth-child(even) td,
.swagger-ui table.responses-table tbody tr:nth-child(even) td {
  background: rgb(255 255 255 / 0.015);
}
.swagger-ui .parameter__name {
  color: var(--color-white);
  font-family: var(--font-mono);
  font-weight: 600;
  font-size: var(--text-sm);
}
.swagger-ui .parameter__name.required::after {
  color: var(--color-danger);
}
.swagger-ui .parameter__type {
  color: var(--color-accent-violet);
  font-family: var(--font-mono);
  font-size: var(--text-xs);
}
.swagger-ui .parameter__in,
.swagger-ui .parameter__deprecated,
.swagger-ui .response-col_description small,
.swagger-ui .response-col_links {
  color: var(--color-text-mute);
  font-family: var(--font-mono);
  font-size: var(--text-xs);
}


/* ─── Инпуты / textarea / select ────────────────────────────────────────── */
.swagger-ui input[type="text"],
.swagger-ui input[type="email"],
.swagger-ui input[type="password"],
.swagger-ui input[type="search"],
.swagger-ui input[type="url"],
.swagger-ui input[type="number"],
.swagger-ui textarea,
.swagger-ui select {
  background: var(--color-bg-1);
  color: var(--color-white);
  border: 1px solid var(--color-hairline-strong);
  border-radius: var(--radius-sm);
  font-family: var(--font-mono);
  font-size: var(--text-sm);
  padding: 8px 12px;
  box-shadow: none;
  transition: border-color var(--duration-fast) var(--ease-in-out),
              box-shadow  var(--duration-fast) var(--ease-in-out);
}
.swagger-ui input[type="text"]:focus,
.swagger-ui input[type="email"]:focus,
.swagger-ui input[type="password"]:focus,
.swagger-ui input[type="search"]:focus,
.swagger-ui input[type="url"]:focus,
.swagger-ui input[type="number"]:focus,
.swagger-ui textarea:focus,
.swagger-ui select:focus {
  outline: 0;
  border-color: var(--color-accent-violet);
  box-shadow: 0 0 0 3px var(--color-accent-violet-10);
}
.swagger-ui textarea { min-height: 140px; }


/* ─── Кнопки: outline → filled on hover ─────────────────────────────────── */
.swagger-ui .btn {
  font-family: var(--font-sans);
  font-size: var(--text-sm);
  font-weight: 600;
  border-radius: var(--radius-sm);
  box-shadow: none;
  padding: 6px 14px;
  transition: background var(--duration-fast) var(--ease-in-out),
              color      var(--duration-fast) var(--ease-in-out),
              border-color var(--duration-fast) var(--ease-in-out),
              box-shadow var(--duration-fast) var(--ease-in-out);
}

.swagger-ui .btn.try-out__btn,
.swagger-ui .try-out .btn {
  background: transparent;
  color: var(--color-accent-violet);
  border: 1px solid var(--color-accent-violet);
}
.swagger-ui .btn.try-out__btn:hover,
.swagger-ui .try-out .btn:hover {
  background: var(--color-accent-violet);
  color: var(--color-white);
  box-shadow: 0 0 24px -6px var(--color-accent-violet-glow);
}

.swagger-ui .btn.execute {
  background: transparent;
  color: var(--color-accent-lime);
  border: 1px solid var(--color-accent-lime);
  font-weight: 700;
  padding: 8px 18px;
}
.swagger-ui .btn.execute:hover {
  background: var(--color-accent-lime);
  color: var(--color-black);
  box-shadow: 0 0 24px -6px var(--color-accent-lime-glow);
}

.swagger-ui .btn.cancel {
  background: transparent;
  color: var(--color-danger);
  border: 1px solid var(--color-danger);
}
.swagger-ui .btn.cancel:hover {
  background: var(--color-danger);
  color: var(--color-white);
}

.swagger-ui .btn.authorize {
  background: transparent;
  color: var(--color-accent-lime);
  border: 1px solid var(--color-accent-lime);
}
.swagger-ui .btn.authorize:hover {
  background: var(--color-accent-lime);
  color: var(--color-black);
  box-shadow: 0 0 24px -6px var(--color-accent-lime-glow);
}
.swagger-ui .btn.authorize svg { fill: currentColor; }

/* Верхняя утилитарная строка ссылок (тип «Base URL:», «/openapi.json») */
.swagger-ui .scheme-container .info__extensions,
.swagger-ui .info .base-url,
.swagger-ui .info .link {
  color: var(--color-accent-violet);
  font-family: var(--font-mono);
  font-size: var(--text-sm);
}


/* ─── Блоки кода / примеры ──────────────────────────────────────────────── */
.swagger-ui .highlight-code,
.swagger-ui .highlight-code > .microlight,
.swagger-ui pre,
.swagger-ui code,
.swagger-ui .microlight,
.swagger-ui .example,
.swagger-ui .response .highlight-code {
  background: var(--docs-code-bg) !important;
  color: var(--docs-code-text) !important;
  font-family: var(--font-mono) !important;
  font-size: var(--text-sm) !important;
  border-radius: var(--radius-sm);
  border: 1px solid var(--color-hairline);
  padding: 14px 18px;
  line-height: 1.55;
}
.swagger-ui .curl-command,
.swagger-ui .curl {
  background: var(--docs-code-bg);
  color: var(--docs-code-text);
  font-family: var(--font-mono);
  font-size: var(--text-sm);
  border-radius: var(--radius-sm);
  border: 1px solid var(--color-hairline);
  padding: 14px 18px;
}
.swagger-ui .copy-to-clipboard {
  background: transparent;
  border: 1px solid var(--color-hairline-strong);
  border-radius: var(--radius-sm);
}
.swagger-ui .copy-to-clipboard:hover {
  border-color: var(--color-accent-violet);
}
.swagger-ui .copy-to-clipboard button {
  background: transparent;
  color: var(--color-white);
}


/* ─── Ссылки ────────────────────────────────────────────────────────────── */
.swagger-ui a,
.swagger-ui .opblock-external-docs-wrapper a {
  color: var(--color-accent-violet);
  text-decoration: none;
}
.swagger-ui a:hover { text-decoration: underline; }


/* ─── Раздел Schemas ────────────────────────────────────────────────────── */
.swagger-ui .models,
.swagger-ui section.models {
  background: var(--color-bg-1);
  border: 1px solid var(--color-hairline-strong);
  border-radius: var(--radius-md);
  box-shadow: none;
  padding: 8px 20px 16px;
  margin-top: 28px;
}
.swagger-ui section.models h4,
.swagger-ui section.models .model-title {
  color: var(--color-white);
  font-family: var(--font-mono);
  font-size: var(--text-md);
  font-weight: 600;
  letter-spacing: -0.01em;
}
.swagger-ui section.models .model-container {
  background: transparent;
  border: 1px solid var(--color-hairline);
  border-radius: var(--radius-sm);
  margin: 6px 0;
  transition: border-color var(--duration-fast) var(--ease-in-out);
}
.swagger-ui section.models .model-container:hover {
  border-color: var(--color-accent-violet);
}
/* ⛑ Стоковая серая полоса под названием модели — убираем background и padding */
.swagger-ui section.models .model-container .model-box,
.swagger-ui .model-box,
.swagger-ui section.models .models-control,
.swagger-ui section.models .model-title,
.swagger-ui .model .model-title {
  background: transparent !important;
  color: var(--color-white) !important;
}
.swagger-ui .model-toggle {
  background: transparent !important;
  color: var(--color-text-mute) !important;
  padding: 0 !important;
  border: 0 !important;
}
/* «Expand all» серая пилюля возле имени модели → outline-стиль */
.swagger-ui .expand-methods,
.swagger-ui .models-control,
.swagger-ui .model-toggle.collapsed,
.swagger-ui button.expand-operation {
  background: transparent !important;
  color: var(--color-accent-violet) !important;
  border: 1px solid transparent !important;
  border-radius: var(--radius-sm);
  padding: 2px 8px !important;
  font-family: var(--font-mono);
  font-size: var(--text-xs);
  font-weight: 500;
  cursor: pointer;
  transition: color var(--duration-fast) var(--ease-in-out),
              border-color var(--duration-fast) var(--ease-in-out);
}
.swagger-ui .expand-methods:hover,
.swagger-ui .models-control:hover,
.swagger-ui .model-toggle:hover {
  color: var(--color-white) !important;
  border-color: var(--color-accent-violet) !important;
}
.swagger-ui .model,
.swagger-ui .model .property,
.swagger-ui .model .prop-type,
.swagger-ui .model .prop-name,
.swagger-ui .model .prop-format,
.swagger-ui .model .model-title,
.swagger-ui .model-title__text {
  color: var(--color-white);
  font-family: var(--font-mono);
  font-size: var(--text-sm);
}
.swagger-ui .prop-type   { color: var(--color-accent-violet); }
.swagger-ui .prop-format { color: var(--color-text-mute); }
.swagger-ui .property.primitive { color: var(--color-white); }
.swagger-ui .model .prop { color: var(--color-white); }


/* ─── microlight (подсветка JSON) ───────────────────────────────────────── */
.swagger-ui .microlight span[style*="color"] { color: inherit !important; }
.swagger-ui .microlight .token.keyword,
.swagger-ui .microlight .hljs-attr,
.swagger-ui .microlight .hljs-selector-tag {
  color: var(--color-accent-violet) !important;
}
.swagger-ui .microlight .token.string,
.swagger-ui .microlight .hljs-string {
  color: var(--color-accent-lime) !important;
}
.swagger-ui .microlight .token.number,
.swagger-ui .microlight .hljs-number {
  color: var(--color-accent-blue) !important;
}
.swagger-ui .microlight .token.boolean,
.swagger-ui .microlight .token.null,
.swagger-ui .microlight .hljs-literal {
  color: var(--color-danger) !important;
}


/* ─── Responses ─────────────────────────────────────────────────────────── */
.swagger-ui .responses-inner {
  background: transparent;
  padding: 20px 24px;
}
.swagger-ui .response-col_status {
  color: var(--color-white);
  font-family: var(--font-mono);
  font-weight: 600;
}
.swagger-ui .response-col_status .response-undocumented {
  color: var(--color-text-mute);
}
.swagger-ui .response-controls { color: var(--color-text-mute); }


/* ─── Табы (Example Value / Schema) ─────────────────────────────────────── */
.swagger-ui .tab-header .tab-item {
  color: var(--color-text-mute);
  font-family: var(--font-mono);
  font-size: var(--text-xs);
  letter-spacing: 0.04em;
  text-transform: uppercase;
  padding: 8px 12px;
  border-bottom: 2px solid transparent;
  cursor: pointer;
}
.swagger-ui .tab-header .tab-item.active {
  color: var(--color-white);
  border-bottom-color: var(--color-accent-violet);
}


/* ─── Auth-модалка ──────────────────────────────────────────────────────── */
.swagger-ui .dialog-ux .modal-ux {
  background: var(--color-bg-1);
  border: 1px solid var(--color-hairline-strong);
  border-radius: var(--radius-md);
  box-shadow:
    0 0 0 1px var(--color-accent-violet-10),
    0 12px 40px rgb(0 0 0 / 0.6);
}
.swagger-ui .dialog-ux .modal-ux-header {
  background: transparent;
  border-bottom: 1px solid var(--color-hairline);
}
.swagger-ui .dialog-ux .modal-ux-header h3,
.swagger-ui .dialog-ux .modal-ux-content h4 {
  color: var(--color-white);
  font-family: var(--font-sans);
  font-weight: 600;
}
.swagger-ui .dialog-ux .backdrop-ux {
  background: rgb(0 0 0 / 0.7);
  backdrop-filter: blur(4px);
}


/* ─── Скроллбар страницы ────────────────────────────────────────────────── */
* { scrollbar-width: thin; scrollbar-color: var(--color-hairline-strong) transparent; }
*::-webkit-scrollbar        { width: 8px; height: 8px; }
*::-webkit-scrollbar-track  { background: transparent; }
*::-webkit-scrollbar-thumb  { background: var(--color-hairline-strong); border-radius: 4px; }
*::-webkit-scrollbar-thumb:hover { background: var(--color-accent-violet); }


/* ─── Мобильные ширины (< 640px) ────────────────────────────────────────── */
@media (max-width: 640px) {
  .swagger-ui .wrapper { padding: 0 12px; }
  .swagger-ui .info .title { font-size: var(--text-3xl); }
  .swagger-ui .opblock-tag,
  .swagger-ui .opblock-tag a { font-size: var(--text-xl); }

  .swagger-ui .opblock .opblock-body { overflow-x: auto; }
  .swagger-ui table,
  .swagger-ui .highlight-code,
  .swagger-ui pre,
  .swagger-ui .curl-command { min-width: 0; overflow-x: auto; }

  .swagger-ui .opblock .opblock-summary { flex-wrap: wrap; row-gap: 6px; }
  .swagger-ui .opblock-summary-description {
    width: 100%;
    padding-left: 82px;
  }
}


/* ─── Filter input (если включён) ───────────────────────────────────────── */
.swagger-ui .filter .operation-filter-input {
  background: var(--color-bg-1);
  color: var(--color-white);
  border: 1px solid var(--color-hairline-strong);
  border-radius: var(--radius-sm);
  padding: 8px 12px;
  font-family: var(--font-mono);
  font-size: var(--text-sm);
}
.swagger-ui .filter .operation-filter-input:focus {
  border-color: var(--color-accent-violet);
  box-shadow: 0 0 0 3px var(--color-accent-violet-10);
}


/* ─── Прочие мелочи, которые Swagger любит красить в белое ──────────────── */
.swagger-ui svg:not(:root)   { fill: currentColor; }
.swagger-ui .arrow           { fill: var(--color-text-mute); }
.swagger-ui section.models svg { fill: var(--color-text-mute); }
.swagger-ui .opblock-tag:hover svg,
.swagger-ui section.models h4:hover svg { fill: var(--color-accent-violet); }
