/* Swagger UI Dark Theme */

body {
  background-color: #121212;
  color: #e0e0e0;
}

.swagger-ui {
  color: #e0e0e0;
}

.swagger-ui .info .title,
.swagger-ui .opblock-tag,
.swagger-ui .model-title {
  color: #ffffff;
}

.swagger-ui .scheme-container,
.swagger-ui .opblock,
.swagger-ui .model-box,
.swagger-ui .responses-inner,
.swagger-ui table,
.swagger-ui .parameters-container {
  background-color: #1e1e1e;
  color: #e0e0e0;
}

.swagger-ui input,
.swagger-ui textarea,
.swagger-ui select {
  background-color: #2a2a2a;
  color: #ffffff;
  border: 1px solid #555;
}

.swagger-ui .btn {
  background-color: #333;
  color: #fff;
  border-color: #666;
}

.swagger-ui .opblock-summary {
  background-color: #252525;
}

/* --- Readability overrides ---
   Swagger UI defaults most text to a dark slate-grey (#3b4151) that is
   unreadable on a dark background. Force light text everywhere the defaults
   leak through: endpoint paths, descriptions, parameters, schemas, tables. */

/* General body / link text */
.swagger-ui,
.swagger-ui .info p,
.swagger-ui .info li,
.swagger-ui .info table,
.swagger-ui .markdown p,
.swagger-ui .renderedMarkdown p,
.swagger-ui label,
.swagger-ui .tab li {
  color: #e0e0e0;
}

.swagger-ui .info a,
.swagger-ui a.nostyle,
.swagger-ui .info .base-url {
  color: #6cb6ff;
}

/* Operation rows: method label, path, and summary description */
.swagger-ui .opblock .opblock-summary-path,
.swagger-ui .opblock .opblock-summary-path__deprecated,
.swagger-ui .opblock .opblock-summary-operation-id,
.swagger-ui .opblock .opblock-summary-description {
  color: #ffffff;
}

.swagger-ui .opblock-summary-description {
  color: #b8b8b8;
}

/* Section headers and the expanded operation body */
.swagger-ui .opblock-tag,
.swagger-ui .opblock-tag small,
.swagger-ui .opblock .opblock-section-header h4,
.swagger-ui .opblock .opblock-section-header label,
.swagger-ui .opblock-description-wrapper p,
.swagger-ui .opblock-external-docs-wrapper p,
.swagger-ui .opblock-title_normal p {
  color: #e0e0e0;
}

.swagger-ui .opblock .opblock-section-header {
  background-color: #1e1e1e;
}

/* Parameters table */
.swagger-ui table thead tr th,
.swagger-ui table thead tr td,
.swagger-ui .parameter__name,
.swagger-ui .parameter__type,
.swagger-ui .parameter__in,
.swagger-ui .parameter__deprecated,
.swagger-ui .parameters-col_description p,
.swagger-ui .response-col_status,
.swagger-ui .response-col_links,
.swagger-ui .responses-inner h4,
.swagger-ui .responses-inner h5 {
  color: #e0e0e0;
}

.swagger-ui .parameter__name.required span {
  color: #ff7a7a;
}

/* Models / schemas */
.swagger-ui .model-title,
.swagger-ui .model,
.swagger-ui .model .property,
.swagger-ui .model .property.primitive,
.swagger-ui .prop-type,
.swagger-ui .prop-format,
.swagger-ui section.models h4,
.swagger-ui section.models h5,
.swagger-ui .model-toggle:after {
  color: #cdd9e5;
}

.swagger-ui section.models,
.swagger-ui section.models .model-container {
  background-color: #1e1e1e;
  border-color: #333;
}

/* Code / example blocks */
.swagger-ui .highlight-code,
.swagger-ui .microlight,
.swagger-ui .body-param__text,
.swagger-ui textarea.curl {
  background-color: #0d0d0d;
  color: #e0e0e0;
}

/* Servers dropdown and scheme labels */
.swagger-ui .scheme-container .schemes > label,
.swagger-ui .servers > label {
  color: #e0e0e0;
}

/* "Try it out" / Authorize buttons keep readable text */
.swagger-ui .topbar-wrapper,
.swagger-ui .btn.authorize,
.swagger-ui .btn.authorize span {
  color: #ffffff;
}