/* ============================================
   ApisDom Dark Theme for Swagger UI 5.x
   Based on SwaggerDark by Amoenus
   Adapted for ApisDom brand colors
   ============================================
   Palette:
   - Background:  #40464f
   - Panel:       #555b63
   - Border:      #666c75
   - Text:        #e2e8f0
   - Text dim:    #a0aec0
   - Text bright: #fff
   - Accent 1:    #ff5c00 (orange)
   - Accent 2:    #ffb347 (amber)
   ============================================ */

/* --- Body & General --- */
body { background-color: #40464f !important; }
#swagger-ui { background-color: #40464f !important; }
html { background-color: #40464f !important; color: #e2e8f0 !important; }

/* --- Topbar --- */
#swagger-ui .topbar { background-color: #40464f !important; border-bottom: 1px solid #555b63; }
#swagger-ui .topbar a { color: #fff !important; }
#swagger-ui .topbar .download-url-wrapper .select-label { color: #e2e8f0 !important; }
#swagger-ui .topbar .download-url-wrapper .select-label select { background: #555b63 !important; color: #e2e8f0 !important; border-color: #666c75 !important; }
#swagger-ui .topbar .download-url-wrapper input[type=text] { background: #555b63 !important; color: #e2e8f0 !important; border-color: #666c75 !important; }
#swagger-ui .topbar .download-url-wrapper .download-url-button { background: #ff5c00 !important; color: #fff !important; }

/* --- General Text --- */
#swagger-ui,
#swagger-ui p,
#swagger-ui span,
#swagger-ui li,
#swagger-ui td,
#swagger-ui th,
#swagger-ui label { color: #e2e8f0 !important; }

/* --- Headings --- */
#swagger-ui .info h1,
#swagger-ui .info h2,
#swagger-ui .info h3,
#swagger-ui .info h4,
#swagger-ui .info h5 { color: #fff !important; }

/* --- Info Title (orange) --- */
#swagger-ui .info .title { color: #ff5c00 !important; }
#swagger-ui .info .title small { background: #ff5c00 !important; color: #fff !important; }
#swagger-ui .info .title small.version-stamp { background: #ff5c00 !important; }
#swagger-ui .info .title small pre { color: #fff !important; }
#swagger-ui .info .base-url { color: #a0aec0 !important; }

/* --- Description Markdown --- */
#swagger-ui .info .description p,
#swagger-ui .info .description li,
#swagger-ui .info .description td,
#swagger-ui .info .description th,
#swagger-ui .info .description code { color: #e2e8f0 !important; }
#swagger-ui .info .description h2,
#swagger-ui .info .description h3 { color: #ff5c00 !important; }
#swagger-ui .info li,
#swagger-ui .info p,
#swagger-ui .info table { color: #e2e8f0 !important; }

/* --- Links --- */
#swagger-ui a,
#swagger-ui .info a,
#swagger-ui .info a:hover { color: #ffb347 !important; }
#swagger-ui a:hover { color: #ff5c00 !important; }
#swagger-ui .nested-links a { color: #ffb347 !important; }
#swagger-ui .nested-links a:focus,
#swagger-ui .nested-links a:hover { color: #ff5c00 !important; }

/* --- POST (orange) --- */
#swagger-ui .opblock.opblock-post,
#swagger-ui .opblock-post { background: rgba(255,92,0,.1) !important; border-color: #ff5c00 !important; }
#swagger-ui .opblock.opblock-post .opblock-summary-method,
#swagger-ui .opblock-post .opblock-summary-method { background: #ff5c00 !important; color: #fff !important; }
#swagger-ui .opblock.opblock-post .opblock-summary,
#swagger-ui .opblock-post .opblock-summary { border-color: #ff5c00 !important; }
#swagger-ui .opblock.opblock-post .tab-header .tab-item.active h4 span::after { background: #ff5c00 !important; }

/* --- GET (amber) --- */
#swagger-ui .opblock.opblock-get,
#swagger-ui .opblock-get { background: rgba(255,179,71,.1) !important; border-color: #ffb347 !important; }
#swagger-ui .opblock.opblock-get .opblock-summary-method,
#swagger-ui .opblock-get .opblock-summary-method { background: #ffb347 !important; color: #40464f !important; }
#swagger-ui .opblock.opblock-get .opblock-summary,
#swagger-ui .opblock-get .opblock-summary { border-color: #ffb347 !important; }
#swagger-ui .opblock.opblock-get .tab-header .tab-item.active h4 span::after { background: #ffb347 !important; }

/* --- PUT (orange) --- */
#swagger-ui .opblock.opblock-put { background: rgba(255,92,0,.08) !important; border-color: #ff5c00 !important; }
#swagger-ui .opblock.opblock-put .opblock-summary-method { background: #ff5c00 !important; color: #fff !important; }
#swagger-ui .opblock.opblock-put .opblock-summary { border-color: #ff5c00 !important; }
#swagger-ui .opblock.opblock-put .tab-header .tab-item.active h4 span::after { background: #ff5c00 !important; }

/* --- DELETE (red-orange) --- */
#swagger-ui .opblock.opblock-delete { background: rgba(255,92,0,.06) !important; border-color: #c83232 !important; }
#swagger-ui .opblock.opblock-delete .opblock-summary-method { background: #c83232 !important; color: #fff !important; }
#swagger-ui .opblock.opblock-delete .opblock-summary { border-color: #c83232 !important; }
#swagger-ui .opblock.opblock-delete .tab-header .tab-item.active h4 span::after { background: #c83232 !important; }

/* --- PATCH (amber) --- */
#swagger-ui .opblock.opblock-patch { background: rgba(255,179,71,.08) !important; border-color: #ffb347 !important; }
#swagger-ui .opblock.opblock-patch .opblock-summary-method { background: #ffb347 !important; color: #40464f !important; }
#swagger-ui .opblock.opblock-patch .opblock-summary { border-color: #ffb347 !important; }
#swagger-ui .opblock.opblock-patch .tab-header .tab-item.active h4 span::after { background: #ffb347 !important; }

/* --- HEAD (orange) --- */
#swagger-ui .opblock.opblock-head { background: rgba(255,92,0,.06) !important; border-color: #ff5c00 !important; }
#swagger-ui .opblock.opblock-head .opblock-summary-method { background: #ff5c00 !important; color: #fff !important; }
#swagger-ui .opblock.opblock-head .opblock-summary { border-color: #ff5c00 !important; }
#swagger-ui .opblock.opblock-head .tab-header .tab-item.active h4 span::after { background: #ff5c00 !important; }

/* --- OPTIONS (amber) --- */
#swagger-ui .opblock.opblock-options { background: rgba(255,179,71,.06) !important; border-color: #ffb347 !important; }
#swagger-ui .opblock.opblock-options .opblock-summary-method { background: #ffb347 !important; color: #40464f !important; }
#swagger-ui .opblock.opblock-options .opblock-summary { border-color: #ffb347 !important; }
#swagger-ui .opblock.opblock-options .tab-header .tab-item.active h4 span::after { background: #ffb347 !important; }

/* --- DEPRECATED --- */
#swagger-ui .opblock.opblock-deprecated { background: rgba(160,174,192,.1) !important; border-color: #a0aec0 !important; }
#swagger-ui .opblock.opblock-deprecated .opblock-summary-method { background: #a0aec0 !important; color: #40464f !important; }
#swagger-ui .opblock.opblock-deprecated .opblock-summary { border-color: #a0aec0 !important; }
#swagger-ui .opblock.opblock-deprecated .tab-header .tab-item.active h4 span::after { background: #a0aec0 !important; }

/* --- Operation Summary --- */
#swagger-ui .opblock-summary-description { color: #a0aec0 !important; }
#swagger-ui .opblock-summary-path,
#swagger-ui .opblock-summary-path__deprecated { color: #e2e8f0 !important; }
#swagger-ui .opblock-summary-operation-id { color: #a0aec0 !important; }

/* --- Operation Body --- */
#swagger-ui .opblock .opblock-section-header { background: rgba(85,91,99,.5) !important; }
#swagger-ui .opblock .opblock-section-header h4 { color: #fff !important; }
#swagger-ui .opblock .opblock-section-header > label { color: #e2e8f0 !important; }
#swagger-ui .opblock .opblock-section-header > label > span { color: #e2e8f0 !important; }
#swagger-ui .opblock-body { background: #555b63 !important; }
#swagger-ui .opblock-description-wrapper,
#swagger-ui .opblock-external-docs-wrapper,
#swagger-ui .opblock-title_normal { color: #e2e8f0 !important; }
#swagger-ui .opblock-description-wrapper h4,
#swagger-ui .opblock-description-wrapper p,
#swagger-ui .opblock-external-docs-wrapper h4,
#swagger-ui .opblock-external-docs-wrapper p,
#swagger-ui .opblock-title_normal h4,
#swagger-ui .opblock-title_normal p { color: #e2e8f0 !important; }

/* --- Tags --- */
#swagger-ui .opblock-tag { color: #fff !important; border-bottom: 1px solid #555b63 !important; }
#swagger-ui .opblock-tag small { color: #a0aec0 !important; }
#swagger-ui .opblock-tag:hover { background: rgba(85,91,99,.3) !important; }
#swagger-ui .opblock-tag svg { fill: #e2e8f0 !important; }
#swagger-ui .opblock-tag:hover svg { fill: #fff !important; }
#swagger-ui .expand-methods svg { fill: #e2e8f0 !important; }
#swagger-ui .expand-methods:hover svg { fill: #fff !important; }

/* --- Buttons --- */
#swagger-ui .btn { color: #e2e8f0 !important; border-color: #666c75 !important; }
#swagger-ui .btn:hover { color: #fff !important; }
#swagger-ui .btn.authorize { border-color: #ff5c00 !important; color: #ff5c00 !important; }
#swagger-ui .btn.authorize:hover { background: #ff5c00 !important; color: #fff !important; }
#swagger-ui .btn.authorize svg { fill: #ff5c00 !important; }
#swagger-ui .btn.execute { background: #ff5c00 !important; border-color: #ff5c00 !important; color: #fff !important; }
#swagger-ui .btn.cancel { border-color: #a0aec0 !important; color: #a0aec0 !important; }
#swagger-ui .btn.cancel:hover { border-color: #e2e8f0 !important; color: #e2e8f0 !important; }
#swagger-ui .btn-group .btn { border-color: #666c75 !important; color: #e2e8f0 !important; }
#swagger-ui .try-out__btn { border-color: #ff5c00 !important; color: #ff5c00 !important; }
#swagger-ui .copy-to-clipboard { background: #555b63 !important; border: none !important; }
#swagger-ui .copy-to-clipboard button { background: #555b63 !important; color: #e2e8f0 !important; }
#swagger-ui .download-contents { background: #555b63 !important; color: #e2e8f0 !important; }

/* --- Scheme Container --- */
#swagger-ui .scheme-container { background: #555b63 !important; box-shadow: none !important; }
#swagger-ui .scheme-container label { color: #e2e8f0 !important; }
#swagger-ui .servers > label { color: #e2e8f0 !important; }
#swagger-ui .scheme-container .schemes > label { color: #e2e8f0 !important; }

/* --- Tables --- */
#swagger-ui table thead tr td,
#swagger-ui table thead tr th { color: #fff !important; border-color: #555b63 !important; }
#swagger-ui table tbody tr td { color: #e2e8f0 !important; }
#swagger-ui table.headers td { color: #e2e8f0 !important; }
#swagger-ui table.headers .header-example { color: #a0aec0 !important; }
#swagger-ui .markdown table { border-color: #555b63 !important; }
#swagger-ui .markdown table tr { background: transparent !important; }
#swagger-ui .markdown table tr:nth-child(2n) { background: rgba(85,91,99,.3) !important; }

/* --- Parameters --- */
#swagger-ui .parameter__name { color: #e2e8f0 !important; }
#swagger-ui .parameter__name.required::after { color: #ff5c00 !important; }
#swagger-ui .parameter__name.required span { color: #ff5c00 !important; }
#swagger-ui .parameter__type { color: #ffb347 !important; }
#swagger-ui .parameter__in { color: #a0aec0 !important; }
#swagger-ui .parameter__extension,
#swagger-ui .parameter__deprecated { color: #a0aec0 !important; }
#swagger-ui .parameters-col_description input,
#swagger-ui .parameters-col_description textarea,
#swagger-ui .parameters-col_description select { background: #555b63 !important; color: #e2e8f0 !important; border-color: #666c75 !important; }

/* --- Responses --- */
#swagger-ui .response-col_status { color: #e2e8f0 !important; }
#swagger-ui .response-col_description { color: #e2e8f0 !important; }
#swagger-ui .response-col_links { color: #e2e8f0 !important; }
#swagger-ui .response-col_links .response-undocumented { color: #a0aec0 !important; }
#swagger-ui .response-col_status .response-undocumented { color: #a0aec0 !important; }
#swagger-ui .responses-inner h4,
#swagger-ui .responses-inner h5 { color: #e2e8f0 !important; }
#swagger-ui .response-control-media-type__accept-message { color: #ffb347 !important; }
#swagger-ui .response-control-media-type--accept-controller select { background: #555b63 !important; color: #e2e8f0 !important; border-color: #666c75 !important; }

/* --- Models / Schemas --- */
#swagger-ui section.models * { color: #e2e8f0 !important; }
#swagger-ui section.models .prop-type { color: #ffb347 !important; }
#swagger-ui section.models h4 { color: #fff !important; }
#swagger-ui .opblock-body * { color: #e2e8f0 !important; }
#swagger-ui .opblock-body .prop-type { color: #ffb347 !important; }
#swagger-ui .opblock-body .opblock-summary-method { color: #fff !important; }
#swagger-ui section.models { border-color: #555b63 !important; }
#swagger-ui section.models.is-open h4 { border-bottom: 1px solid #555b63 !important; }
#swagger-ui section.models h4 { color: #fff !important; }
#swagger-ui section.models h4 svg { fill: #e2e8f0 !important; }
#swagger-ui section.models h4:hover { background: rgba(85,91,99,.3) !important; }
#swagger-ui section.models h5 { color: #e2e8f0 !important; }
#swagger-ui section.models .model-container { background: rgba(85,91,99,.3) !important; }
#swagger-ui section.models .model-container:hover { background: rgba(85,91,99,.5) !important; }
#swagger-ui .model { color: #e2e8f0 !important; }
#swagger-ui .model-box { background: rgba(0,0,0,.2) !important; }
#swagger-ui .model-title { color: #e2e8f0 !important; }
#swagger-ui .model .property { color: #e2e8f0 !important; }
#swagger-ui .model .property.primitive { color: #e2e8f0 !important; }
#swagger-ui .model .deprecated span,
#swagger-ui .model .deprecated td { color: #a0aec0 !important; }
#swagger-ui .prop-type { color: #ffb347 !important; }
#swagger-ui .prop-format { color: #a0aec0 !important; }
#swagger-ui .model-toggle::after,
#swagger-ui .model-toggle:after { filter: invert(1) !important; }
#swagger-ui .model-hint { background: rgba(0,0,0,.7) !important; color: #e2e8f0 !important; }
#swagger-ui .model-deprecated-warning { color: #ff5c00 !important; }
#swagger-ui table.model tr.description { color: #e2e8f0 !important; }
#swagger-ui table.model tr.extension { color: #e2e8f0 !important; }
#swagger-ui table.model tr.property-row .star { color: #ff5c00 !important; }

/* --- Code Blocks --- */
#swagger-ui pre { background: #555b63 !important; color: #e2e8f0 !important; }
#swagger-ui code { color: #ff5c00 !important; background: rgba(255,92,0,.1) !important; }
#swagger-ui .highlight-code { background: #555b63 !important; }
#swagger-ui .opblock-body pre.microlight { background: #555b63 !important; color: #e2e8f0 !important; border-radius: 4px; }
#swagger-ui textarea.curl { background: #555b63 !important; color: #e2e8f0 !important; border-color: #666c75 !important; }
#swagger-ui .markdown code,
#swagger-ui .renderedmarkdown code { background: rgba(0,0,0,.2) !important; color: #ffb347 !important; }
#swagger-ui .markdown pre,
#swagger-ui .renderedmarkdown pre { background: #555b63 !important; color: #e2e8f0 !important; }
#swagger-ui span.token-string { color: #ffb347 !important; }
#swagger-ui span.token-not-formatted { color: #e2e8f0 !important; }

/* --- Forms & Inputs --- */
input[type=email],
input[type=file],
input[type=password],
input[type=search],
input[type=text] { background: #555b63 !important; color: #e2e8f0 !important; border-color: #666c75 !important; }
textarea { background: #555b63 !important; color: #e2e8f0 !important; border-color: #666c75 !important; }
select { background: #555b63 !important; color: #e2e8f0 !important; border-color: #666c75 !important; }
select[multiple] { background: #555b63 !important; color: #e2e8f0 !important; }
input[disabled],
select[disabled],
textarea[disabled] { background: #40464f !important; color: #a0aec0 !important; }
button.invalid,
input[type=email].invalid,
input[type=file].invalid,
input[type=password].invalid,
input[type=search].invalid,
input[type=text].invalid,
select.invalid,
textarea.invalid { border-color: #ff5c00 !important; }
#swagger-ui .checkbox input[type=checkbox] + label > .item { background: #555b63 !important; border-color: #666c75 !important; }
#swagger-ui .checkbox input[type=checkbox]:checked + label > .item { background: #ff5c00 !important; }
#swagger-ui .checkbox p { color: #e2e8f0 !important; }
#swagger-ui select { background: #555b63 !important; color: #e2e8f0 !important; border-color: #666c75 !important; }

/* --- Filter --- */
#swagger-ui .filter-container input { background: #555b63 !important; color: #e2e8f0 !important; border-color: #666c75 !important; }
#swagger-ui .filter .operation-filter-input { background: #555b63 !important; color: #e2e8f0 !important; border-color: #666c75 !important; }

/* --- Auth / Authorize Dialog --- */
#swagger-ui .auth-container { background: transparent !important; color: #e2e8f0 !important; }
#swagger-ui .auth-container .errors { color: #ff5c00 !important; }
#swagger-ui .scopes h2 { color: #e2e8f0 !important; }
#swagger-ui .scopes h2 a { color: #ffb347 !important; }

/* --- Modal Dialog --- */
.swagger-ui .dialog-ux .backdrop-ux { background: rgba(0,0,0,.7) !important; }
.swagger-ui .dialog-ux .modal-ux { background: #555b63 !important; border: 1px solid #666c75 !important; }
.swagger-ui .dialog-ux .modal-ux-header { background: #40464f !important; border-bottom: 1px solid #666c75 !important; }
.swagger-ui .dialog-ux .modal-ux-header h3 { color: #ff5c00 !important; }
.swagger-ui .dialog-ux .modal-ux-header .close-modal { fill: #fff !important; }
.swagger-ui .dialog-ux .modal-ux-content { color: #e2e8f0 !important; }
.swagger-ui .dialog-ux .modal-ux-content p { color: #e2e8f0 !important; }
.swagger-ui .dialog-ux .modal-ux-content h4 { color: #fff !important; }
.swagger-ui .dialog-ux .modal-ux-content label { color: #fff !important; }
.swagger-ui .dialog-ux .modal-ux-content input { background: #40464f !important; color: #fff !important; border-color: #ff5c00 !important; }
.swagger-ui .dialog-ux .modal-ux .btn-done { background: #ff5c00 !important; border-color: #ff5c00 !important; color: #fff !important; }
.swagger-ui .dialog-ux { background: rgba(0,0,0,.7) !important; }

/* --- Errors --- */
#swagger-ui .errors-wrapper { background: #40464f !important; border: 1px solid #ff5c00 !important; }
#swagger-ui .errors-wrapper .errors h4,
#swagger-ui .errors-wrapper hgroup h4 { color: #ff5c00 !important; }
#swagger-ui .errors-wrapper .errors small { color: #a0aec0 !important; }
#swagger-ui .version-pragma__message code { color: #ff5c00 !important; }

/* --- Loading --- */
#swagger-ui .loading-container .loading::before { color: #ff5c00 !important; }
#swagger-ui .loading-container .loading::after { color: #e2e8f0 !important; }
#swagger-ui .filter .loading { color: #ff5c00 !important; }
#swagger-ui .filter .failed { color: #ff5c00 !important; }
#swagger-ui .download-url-wrapper .loading { color: #ff5c00 !important; }
#swagger-ui .download-url-wrapper .failed { color: #ff5c00 !important; }

/* --- Tabs --- */
#swagger-ui .tab li { color: #a0aec0 !important; }
#swagger-ui .tab li:first-of-type::after { background: #666c75 !important; }

/* --- Scrollbar --- */
::-webkit-scrollbar { width: 8px; background: #40464f; }
::-webkit-scrollbar-thumb { background: #666c75; border-radius: 4px; }
::-webkit-scrollbar-track { background: #40464f; }
::-webkit-scrollbar-track-piece { background: #40464f; }

/* --- SVG Arrows --- */
#swagger-ui .arrow { fill: #e2e8f0 !important; }
#swagger-ui #large-arrow-up { fill: #e2e8f0 !important; }
#swagger-ui #unlocked { fill: #ff5c00 !important; }
#swagger-ui #locked { fill: #ff5c00 !important; }

/* ============================================
   Color Utility Classes Override
   These override Swagger's built-in color
   classes to prevent green/blue/red from
   showing on the dark theme.
   ============================================ */

/* --- Text Colors --- */
.swagger-ui .green,
.swagger-ui .dark-green,
.swagger-ui .light-green { color: #ffb347 !important; }

.swagger-ui .blue,
.swagger-ui .dark-blue,
.swagger-ui .light-blue,
.swagger-ui .lightest-blue,
.swagger-ui .washed-blue,
.swagger-ui .navy { color: #ffb347 !important; }

.swagger-ui .red,
.swagger-ui .dark-red,
.swagger-ui .light-red,
.swagger-ui .washed-red { color: #ff5c00 !important; }

.swagger-ui .orange { color: #ff5c00 !important; }

.swagger-ui .gold,
.swagger-ui .yellow,
.swagger-ui .light-yellow,
.swagger-ui .washed-yellow { color: #ffb347 !important; }

.swagger-ui .purple,
.swagger-ui .light-purple { color: #a0aec0 !important; }

.swagger-ui .dark-pink,
.swagger-ui .hot-pink,
.swagger-ui .pink,
.swagger-ui .light-pink { color: #a0aec0 !important; }

.swagger-ui .washed-green { color: #ffb347 !important; }

.swagger-ui .moon-gray { color: #a0aec0 !important; }
.swagger-ui .light-gray { color: #a0aec0 !important; }
.swagger-ui .near-white { color: #e2e8f0 !important; }
.swagger-ui .silver { color: #a0aec0 !important; }
.swagger-ui .mid-gray { color: #a0aec0 !important; }
.swagger-ui .gray { color: #a0aec0 !important; }
.swagger-ui .color-inherit { color: inherit !important; }

.swagger-ui .black-90,
.swagger-ui .black-80,
.swagger-ui .black-70,
.swagger-ui .black-60,
.swagger-ui .black-50 { color: #e2e8f0 !important; }
.swagger-ui .black-40,
.swagger-ui .black-30,
.swagger-ui .black-20,
.swagger-ui .black-10,
.swagger-ui .black-05 { color: #a0aec0 !important; }

.swagger-ui .white-90,
.swagger-ui .white-80,
.swagger-ui .white-70,
.swagger-ui .white-60 { color: #fff !important; }
.swagger-ui .white-50,
.swagger-ui .white-40,
.swagger-ui .white-30,
.swagger-ui .white-20,
.swagger-ui .white-10 { color: #e2e8f0 !important; }

/* --- Background Colors --- */
.swagger-ui .bg-black,
.swagger-ui .bg-near-black,
.swagger-ui .bg-dark-gray { background: #40464f !important; }

.swagger-ui .bg-mid-gray,
.swagger-ui .bg-gray { background: #555b63 !important; }

.swagger-ui .bg-silver,
.swagger-ui .bg-light-silver,
.swagger-ui .bg-moon-gray,
.swagger-ui .bg-light-gray,
.swagger-ui .bg-near-white,
.swagger-ui .bg-white { background: #555b63 !important; }

.swagger-ui .bg-transparent { background: transparent !important; }
.swagger-ui .bg-inherit { background: inherit !important; }

.swagger-ui .bg-dark-red,
.swagger-ui .bg-red,
.swagger-ui .bg-light-red,
.swagger-ui .bg-washed-red { background: rgba(255,92,0,.1) !important; }

.swagger-ui .bg-orange { background: rgba(255,92,0,.1) !important; }

.swagger-ui .bg-gold,
.swagger-ui .bg-yellow,
.swagger-ui .bg-light-yellow,
.swagger-ui .bg-washed-yellow { background: rgba(255,179,71,.1) !important; }

.swagger-ui .bg-dark-green,
.swagger-ui .bg-green,
.swagger-ui .bg-light-green,
.swagger-ui .bg-washed-green { background: rgba(255,179,71,.1) !important; }

.swagger-ui .bg-navy,
.swagger-ui .bg-dark-blue,
.swagger-ui .bg-blue,
.swagger-ui .bg-light-blue,
.swagger-ui .bg-lightest-blue,
.swagger-ui .bg-washed-blue { background: rgba(255,179,71,.1) !important; }

.swagger-ui .bg-purple,
.swagger-ui .bg-light-purple { background: rgba(85,91,99,.3) !important; }

.swagger-ui .bg-dark-pink,
.swagger-ui .bg-hot-pink,
.swagger-ui .bg-pink,
.swagger-ui .bg-light-pink { background: rgba(85,91,99,.3) !important; }

.swagger-ui .bg-black-90,
.swagger-ui .bg-black-80,
.swagger-ui .bg-black-70,
.swagger-ui .bg-black-60,
.swagger-ui .bg-black-50,
.swagger-ui .bg-black-40,
.swagger-ui .bg-black-30,
.swagger-ui .bg-black-20,
.swagger-ui .bg-black-10,
.swagger-ui .bg-black-05 { background: #40464f !important; }

.swagger-ui .bg-white-90,
.swagger-ui .bg-white-80,
.swagger-ui .bg-white-70,
.swagger-ui .bg-white-60,
.swagger-ui .bg-white-50,
.swagger-ui .bg-white-40,
.swagger-ui .bg-white-30,
.swagger-ui .bg-white-20,
.swagger-ui .bg-white-10 { background: #555b63 !important; }

/* --- Border Colors --- */
.swagger-ui .b--black,
.swagger-ui .b--near-black,
.swagger-ui .b--dark-gray,
.swagger-ui .b--mid-gray,
.swagger-ui .b--gray { border-color: #555b63 !important; }

.swagger-ui .b--silver,
.swagger-ui .b--light-silver,
.swagger-ui .b--moon-gray,
.swagger-ui .b--light-gray,
.swagger-ui .b--near-white,
.swagger-ui .b--white { border-color: #666c75 !important; }

.swagger-ui .b--transparent { border-color: transparent !important; }

.swagger-ui .b--dark-red,
.swagger-ui .b--red,
.swagger-ui .b--light-red { border-color: #ff5c00 !important; }

.swagger-ui .b--orange { border-color: #ff5c00 !important; }

.swagger-ui .b--gold,
.swagger-ui .b--yellow,
.swagger-ui .b--light-yellow,
.swagger-ui .b--washed-yellow { border-color: #ffb347 !important; }

.swagger-ui .b--dark-green,
.swagger-ui .b--green,
.swagger-ui .b--light-green,
.swagger-ui .b--washed-green { border-color: #ffb347 !important; }

.swagger-ui .b--navy,
.swagger-ui .b--dark-blue,
.swagger-ui .b--blue,
.swagger-ui .b--light-blue,
.swagger-ui .b--lightest-blue,
.swagger-ui .b--washed-blue { border-color: #ffb347 !important; }

.swagger-ui .b--purple,
.swagger-ui .b--light-purple { border-color: #666c75 !important; }

.swagger-ui .b--dark-pink,
.swagger-ui .b--hot-pink,
.swagger-ui .b--pink,
.swagger-ui .b--light-pink,
.swagger-ui .b--washed-red { border-color: #666c75 !important; }

/* --- Shadows --- */
.swagger-ui .shadow-1,
.swagger-ui .shadow-2,
.swagger-ui .shadow-3,
.swagger-ui .shadow-4,
.swagger-ui .shadow-5 { box-shadow: 0 2px 8px rgba(0,0,0,.3) !important; }
.swagger-ui .shadow-hover::after { box-shadow: 0 2px 8px rgba(0,0,0,.3) !important; }

/* --- Hover states for backgrounds --- */
.swagger-ui .hover-bg-black-10:focus,
.swagger-ui .hover-bg-black-10:hover,
.swagger-ui .stripe-dark:nth-child(2n+1) { background: rgba(0,0,0,.1) !important; }

.swagger-ui .hover-bg-white-10:focus,
.swagger-ui .hover-bg-white-10:hover,
.swagger-ui .stripe-light:nth-child(2n+1) { background: rgba(255,255,255,.05) !important; }

.swagger-ui .bg-animate { transition: background-color .15s ease-in-out; }

/* ============================================
   Nuclear: catch-all for any text Swagger
   renders that no specific rule covers.
   More specific rules above override this.
   ============================================ */
#swagger-ui * { color: #e2e8f0 !important; }
#swagger-ui svg { fill: #e2e8f0 !important; }

/* Restore specific colors after catch-all */
#swagger-ui .info .title { color: #ff5c00 !important; }
#swagger-ui .info .description h2,
#swagger-ui .info .description h3 { color: #ff5c00 !important; }
#swagger-ui a { color: #ffb347 !important; }
#swagger-ui a:hover { color: #ff5c00 !important; }
#swagger-ui .opblock-post .opblock-summary-method { color: #fff !important; }
#swagger-ui .opblock-get .opblock-summary-method { color: #40464f !important; }
#swagger-ui .opblock-delete .opblock-summary-method { color: #fff !important; }
#swagger-ui .opblock-put .opblock-summary-method { color: #fff !important; }
#swagger-ui .opblock-patch .opblock-summary-method { color: #40464f !important; }
#swagger-ui .opblock-tag small { color: #a0aec0 !important; }
#swagger-ui .opblock-summary-description { color: #a0aec0 !important; }
#swagger-ui .opblock-summary-operation-id { color: #a0aec0 !important; }
#swagger-ui .prop-type { color: #ffb347 !important; }
#swagger-ui .parameter__type { color: #ffb347 !important; }
#swagger-ui .parameter__in { color: #a0aec0 !important; }
#swagger-ui .info .base-url { color: #a0aec0 !important; }
#swagger-ui .btn.authorize { color: #ff5c00 !important; }
#swagger-ui .btn.authorize:hover { color: #fff !important; }
#swagger-ui .btn.execute { color: #fff !important; }
#swagger-ui .btn.cancel { color: #a0aec0 !important; }
#swagger-ui .try-out__btn { color: #ff5c00 !important; }
#swagger-ui .model-deprecated-warning { color: #ff5c00 !important; }
#swagger-ui .parameter__name.required::after { color: #ff5c00 !important; }
#swagger-ui .parameter__name.required span { color: #ff5c00 !important; }
#swagger-ui table.model tr.property-row .star { color: #ff5c00 !important; }
#swagger-ui .dialog-ux .modal-ux-header h3 { color: #ff5c00 !important; }
#swagger-ui .errors-wrapper .errors h4 { color: #ff5c00 !important; }
#swagger-ui .version-pragma__message code { color: #ff5c00 !important; }
#swagger-ui span.token-string { color: #ffb347 !important; }
#swagger-ui .markdown code,
#swagger-ui .renderedmarkdown code { color: #ffb347 !important; }
#swagger-ui code { color: #ff5c00 !important; }
#swagger-ui .loading-container .loading::before { color: #ff5c00 !important; }

/* ============================================
   JSON Schema 2020-12 (Swagger UI 5.x)
   New schema renderer classes not covered
   by legacy .model-box / .model-container
   ============================================ */
.swagger-ui button[class*="json-schema-2020-12-accordion"] {
    background: transparent !important;
    border: none !important;
}
.swagger-ui [class*="json-schema-2020-12__title"] {
    background: transparent !important;
}
.swagger-ui [class*="json-schema-2020-12-expand-deep-button"] {
    background: #ff5c00 !important;
    color: #fff !important;
    border: 1px solid #ff5c00 !important;
    border-radius: 3px;
    padding: 2px 6px;
}
.swagger-ui [class*="json-schema-2020-12-head"] {
    background: transparent !important;
}
.swagger-ui [class*="json-schema-2020-12-body"] {
    background: transparent !important;
}
.swagger-ui [class*="json-schema-2020-12__attribute"] {
    color: #ffb347 !important;
}
.swagger-ui [class*="json-schema-2020-12-accordion_icon"] {
    filter: invert(1) !important;
}
