/*
 * swagger-skin.css : habillage minimal de Swagger UI (/api-docs-ui), lot 423.
 *
 * EXCEPTION DOCUMENTEE : les selecteurs .swagger-ui ci-dessous sont des
 * classes TIERCES du bundle swagger-ui-dist (surface tierce, pas une surface
 * ERP+ native). Alignement minimal sur les tokens canoniques, AUCUNE
 * pretention d'integration complete au registre (refs #423, #364).
 * Perimetre ferme : topbar masquee, fonds creme, texte courant en encres,
 * liens et bouton Authorize en marine/terracotta. Amendement STOP 1
 * (arbitrage Remy) : code inline des descriptions, badges de methode et
 * conteneurs opblock (mapping canonique .http-method de doc-shell.css),
 * boutons Try it out et Execute au registre marine. Micro-extension
 * (arbitrage Remy) : asterisque required en terracotta, select Media type
 * neutralise. Cloture (arbitrage Remy) : badges d'en-tete (version, OAS),
 * fonds des blocs d'exemple JSON en marine-deep, balayage rouge/vert
 * exhaustif au DOM rendu.
 *
 * Version du bundle visee : swagger-ui-dist 5.32.5.
 * CHECKLIST RE-SMOKE a toute montee de version du bundle : (1) peau CSS
 * (selecteurs tiers .swagger-ui ci-dessous), (2) dependance au conteneur
 * #swagger-ui (injection customJs, cf. swagger-skin.js), (3) comportement
 * dark-mode du preset standalone : la classe html.dark-mode (posee au mount
 * selon prefers-color-scheme, bloc html.dark-mode du bundle) est neutralisee
 * nominativement par swagger-skin.js ; ce mecanisme peut changer entre
 * versions (refs #433).
 * PERIMETRE DEFINITIVEMENT GELE : le seul residuel documente est la
 * couleur des tokens du highlight JSON (styles inline microlight du
 * bundle, hors d'atteinte CSS propre). Toute extension supplementaire
 * exige un nouvel arbitrage Remy.
 * Extension arbitree lot 424 (verdict Claude Design consigne issue #424,
 * refs #424 #364) : lien retour "Documentation ERPplus" en tete de page,
 * element ERP+ natif injecte via public/js/swagger-skin.js (classes
 * .erp-swagger-backlink*, fin de fichier). Les selecteurs tiers
 * .swagger-ui restent geles.
 */
@import url("/css/erp-tokens.css");

/* Opt-out du VRAI Auto Dark Mode navigateur (Chrome/Edge, vecteur distinct
   du dark mode du preset, traite lui dans swagger-skin.js) : protege les
   verdicts couleur du lot 423 (refs #433). Place apres @import, qui doit
   preceder toute regle. */
:root {
  color-scheme: only light;
}

/* Selecteur tiers vise : .swagger-ui .topbar (bandeau sombre #1b1b1b du
   bundle, origine du theme sombre constate) : masquee. */
.swagger-ui .topbar {
  display: none;
}

/* Selecteurs tiers vises : body de la page generee par swagger-ui-express
   et racine .swagger-ui : fond de page creme dominant. */
body {
  background-color: var(--erp-cream);
}
.swagger-ui {
  background-color: var(--erp-cream);
}

/* Selecteur tiers vise : .swagger-ui .scheme-container (bloc principal
   servers et Authorize, fond blanc du bundle) : creme claire. */
.swagger-ui .scheme-container {
  background-color: var(--erp-cream-soft);
}

/* Selecteurs tiers vises : texte courant du bundle (racine, paragraphes et
   listes d'info, descriptions d'operations) : encres ERP+. */
.swagger-ui,
.swagger-ui .info p,
.swagger-ui .info li,
.swagger-ui .opblock-description-wrapper p {
  color: var(--erp-fg-2);
}

/* Selecteur tiers vise : .swagger-ui .info .title (titre de page) : encre
   de titre. */
.swagger-ui .info .title {
  color: var(--erp-fg-1);
}

/* Selecteurs tiers vises : liens du bundle (.swagger-ui a, .info a) :
   marine au repos, terracotta lisible sur clair au hover, focus ring
   doctrine au focus. */
.swagger-ui a,
.swagger-ui .info a {
  color: var(--erp-marine);
}
.swagger-ui a:hover,
.swagger-ui .info a:hover {
  color: var(--erp-terracotta-text);
}

/* Selecteur tiers vise : .swagger-ui .btn.authorize (bouton Authorize,
   vert par defaut dans le bundle) : contour et texte marine au repos,
   aplat marine au hover, focus ring doctrine au focus. */
.swagger-ui .btn.authorize {
  background-color: transparent;
  border-color: var(--erp-marine);
  color: var(--erp-marine);
}
.swagger-ui .btn.authorize svg {
  fill: currentColor;
}
.swagger-ui .btn.authorize:hover {
  background-color: var(--erp-marine);
  color: var(--erp-fg-on-marine);
}

/* Selecteurs tiers vises : .swagger-ui .markdown code et
   .swagger-ui .renderedMarkdown code (code inline violet #9012fe du
   bundle) : terracotta lisible sur puce creme claire (doc-shell.css n'a
   pas de fond de puce, --erp-cream-soft retenu par l'amendement). */
.swagger-ui .markdown code,
.swagger-ui .renderedMarkdown code {
  color: var(--erp-terracotta-text);
  background: var(--erp-cream-soft);
}

/* Selecteurs tiers vises : conteneurs .swagger-ui .opblock par verbe
   (teintes vert/bleu/orange/rouge du bundle, interdites doctrine) :
   fonds creme claire, bordures hairline doctrine. */
.swagger-ui .opblock,
.swagger-ui .opblock.opblock-get,
.swagger-ui .opblock.opblock-post,
.swagger-ui .opblock.opblock-put,
.swagger-ui .opblock.opblock-delete {
  background: var(--erp-cream-soft);
  border-color: var(--erp-rule);
}
.swagger-ui .opblock .opblock-summary,
.swagger-ui .opblock.opblock-get .opblock-summary,
.swagger-ui .opblock.opblock-post .opblock-summary,
.swagger-ui .opblock.opblock-put .opblock-summary,
.swagger-ui .opblock.opblock-delete .opblock-summary {
  border-color: var(--erp-rule);
}

/* Selecteurs tiers vises : souligne d'onglet actif par verbe
   (.tab-header .tab-item.active h4 span:after, bleu/vert/orange/rouge du
   bundle, teinte verbe du conteneur) : filet terracotta, registre onglet
   actif du doc-shell. */
.swagger-ui .opblock.opblock-get .tab-header .tab-item.active h4 span:after,
.swagger-ui .opblock.opblock-post .tab-header .tab-item.active h4 span:after,
.swagger-ui .opblock.opblock-put .tab-header .tab-item.active h4 span:after,
.swagger-ui .opblock.opblock-delete .tab-header .tab-item.active h4 span:after {
  background: var(--erp-terracotta);
}

/* Selecteurs tiers vises : badges .opblock-summary-method par verbe,
   alignes sur le mapping canonique .http-method de doc-shell.css :
   POST terracotta, GET marine-soft, PUT creme-deep encre, DELETE
   marine-deep liseret terracotta. */
.swagger-ui .opblock .opblock-summary-method {
  color: var(--erp-white);
  text-shadow: none;
}
.swagger-ui .opblock.opblock-post .opblock-summary-method {
  background: var(--erp-terracotta);
}
.swagger-ui .opblock.opblock-get .opblock-summary-method {
  background: var(--erp-marine-soft);
}
.swagger-ui .opblock.opblock-put .opblock-summary-method {
  background: var(--erp-cream-deep);
  color: var(--erp-fg-1);
}
.swagger-ui .opblock.opblock-delete .opblock-summary-method {
  background: var(--erp-marine-deep);
  border-left: 3px solid var(--erp-terracotta);
}

/* Selecteurs tiers vises : .swagger-ui .btn.try-out__btn et
   .swagger-ui .btn.execute (Execute bleu #4990e2 du bundle) : registre
   bouton marine, repos contour, hover aplat, focus ring doctrine,
   comme Authorize. */
.swagger-ui .btn.try-out__btn,
.swagger-ui .btn.execute {
  background-color: transparent;
  border-color: var(--erp-marine);
  color: var(--erp-marine);
}
.swagger-ui .btn.try-out__btn:hover,
.swagger-ui .btn.execute:hover {
  background-color: var(--erp-marine);
  color: var(--erp-fg-on-marine);
}

/* Selecteurs tiers vises : .swagger-ui .parameter__name.required span
   (asterisque rouge du bundle) et son :after "required"
   (rgba rouge) : accent terracotta, semantique "requis" coherente avec
   la puce requis du kit doc. */
.swagger-ui .parameter__name.required span {
  color: var(--erp-terracotta-text);
}
.swagger-ui .parameter__name.required:after {
  color: var(--erp-terracotta-text);
}

/* Selecteurs tiers vises : select Media type
   (.response-control-media-type--accept-controller select, lisere vert
   du bundle) et sa legende (.response-control-media-type__accept-message,
   texte vert) : bordure hairline doctrine, legende en encre secondaire. */
.swagger-ui .response-control-media-type--accept-controller select {
  border-color: var(--erp-rule);
}
.swagger-ui .response-control-media-type__accept-message {
  color: var(--erp-fg-3);
}

/* Selecteurs tiers vises : pilules de l'en-tete .swagger-ui .info .title
   small (version, fond gris stock) et small.version-stamp (OAS, vert
   #89bf04 stock) ; le texte est porte par un pre imbrique (blanc stock). */
.swagger-ui .info .title small {
  background: var(--erp-cream-deep);
}
.swagger-ui .info .title small pre {
  color: var(--erp-fg-1);
}
.swagger-ui .info .title small.version-stamp {
  background-color: var(--erp-marine);
}
.swagger-ui .info .title small.version-stamp pre {
  color: var(--erp-fg-on-marine);
}

/* Selecteur tiers vise : .swagger-ui .opblock-body pre.microlight (blocs
   d'exemple JSON) : marine-deep, convergence avec le pre.code-block du
   doc-shell. Le fond #333 stock est un style INLINE pose par le theme de
   highlight JS du bundle, d'ou le !important (seule derogation de la
   peau). Couleurs de tokens inline NON touchees (residuel gele documente
   en tete de fichier). */
.swagger-ui .opblock-body pre.microlight {
  background: var(--erp-marine-deep) !important;
}

/* Selecteurs tiers vises : explorateur d'URL de la topbar
   (.download-url-wrapper input vert et .download-url-button vert stock) :
   la topbar est masquee mais les elements restent au DOM, neutralises
   pour le balayage de cloture (bordure hairline, bouton marine). */
.swagger-ui .topbar .download-url-wrapper input[type=text] {
  border-color: var(--erp-rule);
}
.swagger-ui .topbar .download-url-wrapper .download-url-button {
  background: var(--erp-marine);
  color: var(--erp-fg-on-marine);
}

/* Selecteur tiers vise : .swagger-ui .parameter__deprecated (rouge stock,
   bordures heritees via currentColor) : accent terracotta, semantique
   d'avertissement alignee sur le registre required. */
.swagger-ui .parameter__deprecated {
  color: var(--erp-terracotta-text);
}

/* Lien retour "Documentation ERPplus" (lot 424, refs #424 #364). Elements
   ERP+ NATIFS injectes par public/js/swagger-skin.js au-dessus du
   conteneur #swagger-ui, hors gel des selecteurs tiers (cf. en-tete).
   Barre d'alignement : memes gabarits que .swagger-ui .wrapper du bundle
   (max-width 1460px, gouttiere 20px) pour caler le lien sur la colonne de
   contenu. Aucune declaration de famille de police : la peau #423 ne
   touche pas aux polices de la surface tierce, le lien herite du sans du
   bundle. */
.erp-swagger-backlink-bar {
  max-width: 1460px;
  margin: 0 auto;
  padding: 16px 20px 0;
}

/* Lien quiet du registre, coherent avec les liens traites au lot 423 :
   marine au repos, terracotta lisible sur clair au hover, focus ring
   doctrine. inline-block + padding vertical : cible cliquable suffisante
   sans etendre la zone a toute la barre. */
.erp-swagger-backlink {
  display: inline-block;
  padding: 4px 0;
  color: var(--erp-marine);
  font-size: 14px;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.erp-swagger-backlink:hover {
  color: var(--erp-terracotta-text);
}
