@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700;800&display=swap');

:root {
  --teal-900: #052e28;
  --teal-800: #0a423a;
  --teal-700: #105049;
  --teal-600: #155a57;
  --teal-500: #007f6d;
  --teal-400: #00a991;
  --teal-100: #e6f6f4;
  --teal-50: #f3fbf9;
  --ink: #0b1f1b;
  --ink-secondary: #475467;
  --canvas: #f5f9f8;
  --hairline: #e4ece9;
}

html, body { background: var(--canvas) !important; }

body, .swagger-ui, .swagger-ui .info .title, .swagger-ui .opblock-tag {
  font-family: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
}

/* Kill the stock green topbar; we ship our own brand header above it. */
.swagger-ui .topbar { display: none; }

.piax-topbar {
  position: sticky;
  top: 0;
  z-index: 20;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 14px 28px;
  background: linear-gradient(120deg, var(--teal-900), var(--teal-700));
  color: #fff;
  font-family: 'Poppins', sans-serif;
}

.piax-topbar a.piax-brand {
  display: flex;
  align-items: center;
  gap: 9px;
  color: #fff;
  text-decoration: none;
  font-weight: 800;
  font-size: 16px;
  letter-spacing: -0.2px;
}

.piax-topbar img { width: 22px; height: 22px; }

.piax-topbar .piax-links { display: flex; gap: 18px; align-items: center; }

.piax-topbar a.piax-link {
  color: rgba(255, 255, 255, 0.82);
  text-decoration: none;
  font-size: 13px;
  font-weight: 600;
}

.piax-topbar a.piax-link:hover { color: #fff; }

.swagger-ui .info { margin: 32px 0; }

.swagger-ui .info .title {
  color: var(--ink);
  font-weight: 800;
  letter-spacing: -0.4px;
}

.swagger-ui .info .title small.version-stamp {
  background: var(--teal-500);
}

.swagger-ui .scheme-container {
  background: transparent;
  box-shadow: none;
  padding: 0 0 12px;
}

.swagger-ui .btn.authorize {
  background: var(--teal-500);
  color: #fff;
  border-color: var(--teal-500);
  border-radius: 100px;
  font-weight: 600;
  box-shadow: none;
}

.swagger-ui .btn.authorize svg { fill: #fff; }
.swagger-ui .btn.authorize:hover { background: var(--teal-600); }

.swagger-ui .opblock {
  border-radius: 14px;
  box-shadow: 0 2px 10px -4px rgba(11, 42, 36, 0.12);
  border-width: 1px;
  margin-bottom: 12px;
}

.swagger-ui .opblock .opblock-summary {
  border-radius: 14px;
}

.swagger-ui .opblock-summary-method {
  border-radius: 8px;
  font-weight: 700;
  min-width: 74px;
}

.swagger-ui .opblock.opblock-get { background: rgba(0, 169, 145, 0.06); border-color: var(--teal-400); }
.swagger-ui .opblock.opblock-get .opblock-summary-method { background: var(--teal-400); }

.swagger-ui .opblock.opblock-post { background: rgba(0, 127, 109, 0.06); border-color: var(--teal-500); }
.swagger-ui .opblock.opblock-post .opblock-summary-method { background: var(--teal-500); }

.swagger-ui .opblock.opblock-patch { background: rgba(156, 140, 196, 0.08); border-color: #9c8cc4; }
.swagger-ui .opblock.opblock-patch .opblock-summary-method { background: #9c8cc4; }

.swagger-ui .opblock.opblock-put { background: rgba(247, 144, 9, 0.06); border-color: #f79009; }
.swagger-ui .opblock.opblock-put .opblock-summary-method { background: #f79009; }

.swagger-ui .opblock.opblock-delete { background: rgba(196, 114, 78, 0.07); border-color: #c4724e; }
.swagger-ui .opblock.opblock-delete .opblock-summary-method { background: #c4724e; }

.swagger-ui .opblock-tag {
  border-bottom: 1px solid var(--hairline);
  color: var(--teal-800);
  font-weight: 700;
}

.swagger-ui .btn.execute {
  background: var(--teal-600);
  border-color: var(--teal-600);
  border-radius: 100px;
  font-weight: 600;
}

.swagger-ui select, .swagger-ui input[type=text], .swagger-ui textarea {
  border-radius: 8px;
  border-color: var(--hairline);
}

.swagger-ui table tbody tr td { border-color: var(--hairline); }

.swagger-ui .response-col_status { color: var(--teal-700); font-weight: 700; }

.swagger-ui ::-webkit-scrollbar { width: 10px; height: 10px; }
.swagger-ui ::-webkit-scrollbar-thumb { background: var(--teal-100); border-radius: 100px; }
