/* Swagger UI in Celestia's colours. Loaded after swagger-ui.css, on /api only.
   Verdigris for reading and actions, Dusk for edits, Rust for deletes; never brass. */

#swagger .swagger-ui,
#swagger .swagger-ui .info .title,
#swagger .swagger-ui .opblock-tag,
#swagger .swagger-ui .opblock .opblock-summary-description,
#swagger .swagger-ui .opblock .opblock-summary-path,
#swagger .swagger-ui .opblock-description-wrapper p,
#swagger .swagger-ui .opblock-section-header h4,
#swagger .swagger-ui .parameter__name,
#swagger .swagger-ui .parameter__type,
#swagger .swagger-ui .response-col_status,
#swagger .swagger-ui .response-col_description,
#swagger .swagger-ui .responses-inner h4,
#swagger .swagger-ui .responses-inner h5,
#swagger .swagger-ui table thead tr th,
#swagger .swagger-ui table thead tr td,
#swagger .swagger-ui label,
#swagger .swagger-ui .tab li,
#swagger .swagger-ui .model,
#swagger .swagger-ui .model-title,
#swagger .swagger-ui section.models h4,
#swagger .swagger-ui .scheme-container .schemes > label,
#swagger .swagger-ui .dialog-ux .modal-ux-header h3,
#swagger .swagger-ui .dialog-ux .modal-ux-content p,
#swagger .swagger-ui .dialog-ux .modal-ux-content h4,
#swagger .swagger-ui .markdown p,
#swagger .swagger-ui .renderedMarkdown p {
    color: var(--text);
    font-family: var(--font-sans);
}

#swagger .swagger-ui { font-size: var(--fs-small); }
#swagger .swagger-ui .wrapper { padding: 0; max-width: none; }
#swagger .swagger-ui .information-container,
#swagger .swagger-ui .info { display: none; }

#swagger .swagger-ui .scheme-container {
    background: var(--surface);
    border: 1px solid var(--line);
    border-radius: var(--r-md);
    box-shadow: none;
    margin: 0 0 var(--s-5);
    padding: var(--s-4);
}

#swagger .swagger-ui .opblock-tag {
    border-bottom: 1px solid var(--line);
    font-family: var(--font-serif);
    font-size: var(--fs-h3);
}
#swagger .swagger-ui .opblock-tag small { color: var(--muted); font-family: var(--font-sans); }

#swagger .swagger-ui .opblock {
    background: var(--surface);
    border: 1px solid var(--line);
    border-radius: var(--r-md);
    box-shadow: none;
}
#swagger .swagger-ui .opblock .opblock-summary { border-color: var(--line); }
#swagger .swagger-ui .opblock .opblock-summary-method {
    background: transparent;
    border: 1px solid currentColor;
    border-radius: var(--r-round);
    font-family: var(--font-mono);
    min-width: 72px;
}
#swagger .swagger-ui .opblock.opblock-get .opblock-summary-method,
#swagger .swagger-ui .opblock.opblock-post .opblock-summary-method { color: var(--accent); }
#swagger .swagger-ui .opblock.opblock-patch .opblock-summary-method { color: var(--pending); }
#swagger .swagger-ui .opblock.opblock-delete .opblock-summary-method { color: var(--danger); }
#swagger .swagger-ui .opblock.opblock-get,
#swagger .swagger-ui .opblock.opblock-post,
#swagger .swagger-ui .opblock.opblock-patch,
#swagger .swagger-ui .opblock.opblock-delete { background: var(--surface); border-color: var(--line); }
#swagger .swagger-ui .opblock.is-open { border-color: var(--line-strong); }
#swagger .swagger-ui .opblock .opblock-section-header {
    background: var(--surface-2);
    box-shadow: none;
}

#swagger .swagger-ui input[type=text],
#swagger .swagger-ui input[type=password],
#swagger .swagger-ui input[type=search],
#swagger .swagger-ui input[type=file],
#swagger .swagger-ui textarea,
#swagger .swagger-ui select {
    background: var(--bg);
    border: 1px solid var(--line-strong);
    border-radius: var(--r-sm);
    color: var(--text);
    font-family: var(--font-sans);
}
#swagger .swagger-ui textarea.curl,
#swagger .swagger-ui .highlight-code pre,
#swagger .swagger-ui .microlight,
#swagger .swagger-ui pre {
    background: var(--bg);
    border: 1px solid var(--line);
    border-radius: var(--r-sm);
    color: var(--text);
    font-family: var(--font-mono);
}

#swagger .swagger-ui .btn {
    background: transparent;
    border: 1px solid var(--line-strong);
    border-radius: var(--r-sm);
    box-shadow: none;
    color: var(--text);
    font-family: var(--font-sans);
    font-weight: 700;
}
#swagger .swagger-ui .btn:hover { border-color: var(--muted); }
#swagger .swagger-ui .btn.execute,
#swagger .swagger-ui .btn.authorize {
    background: var(--accent);
    border-color: var(--accent);
    color: var(--accent-ink);
}
#swagger .swagger-ui .btn.authorize svg { fill: var(--accent-ink); }
#swagger .swagger-ui .btn.cancel { border-color: var(--danger); color: var(--danger); }

#swagger .swagger-ui svg:not(:root) { fill: var(--muted); }
#swagger .swagger-ui .opblock-summary-control:focus,
#swagger .swagger-ui .btn:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }

#swagger .swagger-ui .parameter__name.required::after,
#swagger .swagger-ui .parameter__name.required span { color: var(--danger); }
#swagger .swagger-ui .response-col_status { font-family: var(--font-mono); }
#swagger .swagger-ui table tbody tr td { border-color: var(--line); }

#swagger .swagger-ui .dialog-ux .modal-ux {
    background: var(--surface);
    border: 1px solid var(--line-strong);
    box-shadow: none;
}
#swagger .swagger-ui .dialog-ux .modal-ux-header { border-color: var(--line); }
#swagger .swagger-ui .dialog-ux .backdrop-ux { background: rgb(0 0 0 / 0.6); }

#swagger .swagger-ui section.models {
    border: 1px solid var(--line);
    border-radius: var(--r-md);
}
#swagger .swagger-ui section.models .model-container { background: var(--surface); }
#swagger .swagger-ui .prop-type { color: var(--accent); }
#swagger .swagger-ui .prop-format { color: var(--muted); }
#swagger .swagger-ui a.nostyle,
#swagger .swagger-ui .info a { color: var(--accent); }
#swagger .swagger-ui .loading-container .loading::after { color: var(--muted); }
