/* Dark-Mode Override fuer Swagger UI (XXBILLION-Look).
   Wird NACH dem Standard-Swagger-CSS geladen und ueberschreibt Farben. */

body { background: #0a0a0f !important; color: #e0e0e8 !important; }

/* Top bar */
.swagger-ui .topbar { background: #12121a !important; border-bottom: 1px solid #1e1e2e; }
.swagger-ui .topbar .download-url-wrapper .select-label { color: #e0e0e8 !important; }
.swagger-ui .topbar .download-url-wrapper input[type=text] { background: #0a0a0f; color: #e0e0e8; border-color: #1e1e2e; }

/* Info block */
.swagger-ui, .swagger-ui .info, .swagger-ui .info .title,
.swagger-ui .info h1, .swagger-ui .info h2, .swagger-ui .info h3,
.swagger-ui .info p, .swagger-ui .info li, .swagger-ui .info a,
.swagger-ui .scheme-container, .swagger-ui .wrapper,
.swagger-ui .opblock-tag, .swagger-ui .opblock-tag small,
.swagger-ui section h4, .swagger-ui .opblock-section-header h4,
.swagger-ui .opblock .opblock-summary-operation-id,
.swagger-ui .opblock .opblock-summary-path,
.swagger-ui .opblock .opblock-summary-path__deprecated,
.swagger-ui .opblock .opblock-summary-description,
.swagger-ui .opblock-description-wrapper p,
.swagger-ui .opblock-external-docs-wrapper p,
.swagger-ui .opblock-title_normal p,
.swagger-ui table thead tr th,
.swagger-ui table thead tr td,
.swagger-ui .parameter__name, .swagger-ui .parameter__type,
.swagger-ui .parameter__deprecated, .swagger-ui .parameter__in,
.swagger-ui .parameters-col_description,
.swagger-ui .response-col_status, .swagger-ui .response-col_description,
.swagger-ui .responses-inner h4, .swagger-ui .responses-inner h5,
.swagger-ui .tab li, .swagger-ui label,
.swagger-ui .model-title, .swagger-ui .model, .swagger-ui .model .property,
.swagger-ui .btn, .swagger-ui .markdown p,
.swagger-ui .renderedMarkdown p { color: #e0e0e8 !important; }

.swagger-ui .info .title small { background: #f59e0b; color: #000 !important; }
.swagger-ui .info a { color: #f59e0b !important; }

/* Opblock (jeder Endpoint-Block) */
.swagger-ui .opblock { background: #12121a !important; border: 1px solid #1e1e2e !important; border-radius: 4px; }
.swagger-ui .opblock .opblock-section-header { background: #0a0a0f !important; border-bottom: 1px solid #1e1e2e; }
.swagger-ui .opblock .opblock-summary { border-bottom: 1px solid #1e1e2e; }

/* Method badges */
.swagger-ui .opblock.opblock-get .opblock-summary-method { background: #3b82f6; }
.swagger-ui .opblock.opblock-post .opblock-summary-method { background: #22c55e; }
.swagger-ui .opblock.opblock-put .opblock-summary-method { background: #f59e0b; }
.swagger-ui .opblock.opblock-delete .opblock-summary-method { background: #ef4444; }
.swagger-ui .opblock.opblock-patch .opblock-summary-method { background: #8b5cf6; }

.swagger-ui .opblock.opblock-get { background: rgba(59,130,246,0.05) !important; border-color: rgba(59,130,246,0.3) !important; }
.swagger-ui .opblock.opblock-post { background: rgba(34,197,94,0.05) !important; border-color: rgba(34,197,94,0.3) !important; }
.swagger-ui .opblock.opblock-put { background: rgba(245,158,11,0.05) !important; border-color: rgba(245,158,11,0.3) !important; }
.swagger-ui .opblock.opblock-delete { background: rgba(239,68,68,0.05) !important; border-color: rgba(239,68,68,0.3) !important; }

/* Tables + Models */
.swagger-ui table { background: #12121a !important; }
.swagger-ui table thead tr { background: #0a0a0f; border-color: #1e1e2e; }
.swagger-ui table tbody tr td { border-color: #1e1e2e !important; }

/* Code-Highlight / Bodies */
.swagger-ui .highlight-code,
.swagger-ui .microlight,
.swagger-ui pre,
.swagger-ui .body-param__text,
.swagger-ui textarea,
.swagger-ui input[type=text],
.swagger-ui input[type=email],
.swagger-ui input[type=password],
.swagger-ui input[type=search],
.swagger-ui input[type=file],
.swagger-ui select {
    background: #0a0a0f !important;
    color: #e0e0e8 !important;
    border-color: #1e1e2e !important;
}
.swagger-ui .microlight * { color: #e0e0e8 !important; }

/* Response sample */
.swagger-ui .response-col_description__inner div.markdown,
.swagger-ui .response-col_description__inner div.renderedMarkdown,
.swagger-ui .responses-inner > div { background: transparent !important; }

/* Buttons */
.swagger-ui .btn { background: #1e1e2e; color: #e0e0e8; border-color: #1e1e2e; }
.swagger-ui .btn.authorize, .swagger-ui .btn.execute { background: #f59e0b; color: #000 !important; border-color: #f59e0b; }
.swagger-ui .btn.cancel { background: #ef4444; color: #fff !important; border-color: #ef4444; }
.swagger-ui .btn.try-out__btn { background: #3b82f6; color: #fff !important; border-color: #3b82f6; }

/* Models (Schemas) */
.swagger-ui section.models { background: #12121a !important; border-color: #1e1e2e !important; }
.swagger-ui section.models h4 { color: #e0e0e8 !important; }
.swagger-ui .model-box { background: #0a0a0f !important; }

/* Scheme container (server-dropdown etc.) */
.swagger-ui .scheme-container { background: #0a0a0f !important; box-shadow: none !important; border-bottom: 1px solid #1e1e2e; }

/* Dividers + borders */
.swagger-ui .parameters-col_description select,
.swagger-ui .response-control-media-type__accept-message { color: #8888aa !important; }
.swagger-ui hr { border-color: #1e1e2e; }

/* Scrollbars */
.swagger-ui *::-webkit-scrollbar { width: 8px; height: 8px; }
.swagger-ui *::-webkit-scrollbar-track { background: #0a0a0f; }
.swagger-ui *::-webkit-scrollbar-thumb { background: #1e1e2e; border-radius: 4px; }
.swagger-ui *::-webkit-scrollbar-thumb:hover { background: #2e2e3e; }

/* SVG icons (arrows etc.) */
.swagger-ui svg:not(:root) { fill: #e0e0e8; }
