/* =====================================================================
   Open Culture brand colors — applied inside the Swagger UI iframe
   on docs/habitat/api/try-it/.
   Tokens mirror the four brand accents:
     blue     #3381d5  GET   (read)
     sage     #97b367  POST  (create)
     orange   #e28e5b  PUT   (modify)
     purple   #9b60bc  DELETE (destroy)
     forest   #536e3c  PATCH (partial modify)
   ===================================================================== */

:root {
  --oc-forest:      #536e3c;
  --oc-forest-dark: #3f5421;
  --oc-sage:        #97b367;
  --oc-pale-sage:   #cadfa6;
  --oc-cream:       #f8f5ec;
  --oc-warm-black:  #2e2e25;
  --oc-blue:        #3381d5;
  --oc-orange:      #e28e5b;
  --oc-purple:      #9b60bc;
}

/* Body / typography to match the docs page. */
body { background: var(--oc-cream); color: var(--oc-warm-black); }
.swagger-ui {
  font-family: "Arial", "Helvetica Neue", Helvetica, sans-serif;
  color: var(--oc-warm-black);
}
.swagger-ui .info .title,
.swagger-ui .info p,
.swagger-ui .info li,
.swagger-ui .opblock-tag {
  color: var(--oc-warm-black);
}

/* Tag (section) headings. */
.swagger-ui .opblock-tag {
  border-bottom-color: var(--oc-pale-sage);
}
.swagger-ui .opblock-tag:hover {
  background: rgba(83, 110, 60, 0.05);
}

/* ---------------- METHOD PILLS + OPBLOCK COLORS --------------------- */

/* GET — blue */
.swagger-ui .opblock.opblock-get {
  border-color: var(--oc-blue);
  background: rgba(51, 129, 213, 0.06);
}
.swagger-ui .opblock.opblock-get .opblock-summary-method {
  background: var(--oc-blue);
}
.swagger-ui .opblock.opblock-get .opblock-summary {
  border-color: var(--oc-blue);
}

/* POST — sage */
.swagger-ui .opblock.opblock-post {
  border-color: var(--oc-sage);
  background: rgba(151, 179, 103, 0.08);
}
.swagger-ui .opblock.opblock-post .opblock-summary-method {
  background: var(--oc-sage);
}
.swagger-ui .opblock.opblock-post .opblock-summary {
  border-color: var(--oc-sage);
}

/* PUT — orange */
.swagger-ui .opblock.opblock-put {
  border-color: var(--oc-orange);
  background: rgba(226, 142, 91, 0.08);
}
.swagger-ui .opblock.opblock-put .opblock-summary-method {
  background: var(--oc-orange);
}
.swagger-ui .opblock.opblock-put .opblock-summary {
  border-color: var(--oc-orange);
}

/* PATCH — forest */
.swagger-ui .opblock.opblock-patch {
  border-color: var(--oc-forest);
  background: rgba(83, 110, 60, 0.08);
}
.swagger-ui .opblock.opblock-patch .opblock-summary-method {
  background: var(--oc-forest);
}
.swagger-ui .opblock.opblock-patch .opblock-summary {
  border-color: var(--oc-forest);
}

/* DELETE — purple */
.swagger-ui .opblock.opblock-delete {
  border-color: var(--oc-purple);
  background: rgba(155, 96, 188, 0.08);
}
.swagger-ui .opblock.opblock-delete .opblock-summary-method {
  background: var(--oc-purple);
}
.swagger-ui .opblock.opblock-delete .opblock-summary {
  border-color: var(--oc-purple);
}

/* HEAD / OPTIONS — fall back to forest. */
.swagger-ui .opblock.opblock-head,
.swagger-ui .opblock.opblock-options {
  border-color: var(--oc-forest-dark);
  background: rgba(63, 84, 33, 0.06);
}
.swagger-ui .opblock.opblock-head .opblock-summary-method,
.swagger-ui .opblock.opblock-options .opblock-summary-method {
  background: var(--oc-forest-dark);
}

/* ---------------- BUTTONS ------------------------------------------- */

/* "Execute" button — forest green primary */
.swagger-ui .btn.execute {
  background-color: var(--oc-forest);
  border-color: var(--oc-forest);
  color: var(--oc-cream);
}
.swagger-ui .btn.execute:hover {
  background-color: var(--oc-forest-dark);
  border-color: var(--oc-forest-dark);
}

/* "Try it out" button — light forest outline */
.swagger-ui .try-out__btn,
.swagger-ui .btn.try-out__btn {
  color: var(--oc-forest);
  border-color: var(--oc-forest);
}
.swagger-ui .try-out__btn:hover {
  background: rgba(83, 110, 60, 0.08);
}

/* Cancel button — orange */
.swagger-ui .btn.cancel {
  color: var(--oc-orange);
  border-color: var(--oc-orange);
}
.swagger-ui .btn.cancel:hover {
  background: rgba(226, 142, 91, 0.08);
}

/* Authorize / Authorize lock button */
.swagger-ui .btn.authorize {
  color: var(--oc-forest);
  border-color: var(--oc-forest);
}
.swagger-ui .btn.authorize svg {
  fill: var(--oc-forest);
}

/* ---------------- LINKS, MISC --------------------------------------- */

.swagger-ui a,
.swagger-ui .info a,
.swagger-ui .opblock-summary-path a {
  color: var(--oc-blue);
}
.swagger-ui a:hover { color: #2563b3; }

/* Schema "required" star color */
.swagger-ui .parameter__name.required:after,
.swagger-ui .required {
  color: var(--oc-orange);
}

/* Response code coloring stays semantic — no override. */
