/* --- Maintella Swagger UI Custom Theme --- */

/* General background and font */
body, .swagger-ui {
  background: #fafbfc !important;
  font-family: 'Nunito Sans', 'Inter', sans-serif !important;
  color: #161c24;
}

.swagger-ui label {
  font-family: 'Nunito Sans', 'Inter', sans-serif !important;
}

.swagger-ui .servers > label {
  font-family: 'Nunito Sans', 'Inter', sans-serif !important;
}

.renderedMarkdown p{
  font-family: 'Nunito Sans', 'Inter', sans-serif;
}

/* Top nav bar */
.topbar {
  background: #fff !important;
  border-bottom: 1px solid #e7eaef;
  min-height: 58px;
  box-shadow: 0 1px 8px rgba(23, 43, 77, 0.03);
  padding-left: 28px;
}
.topbar-wrapper {
  display: flex !important;
  align-items: center;
  height: 58px;
}
.topbar .link img {
  height: 36px !important;
}
.topbar .topbar-wrapper span, .topbar .topbar-wrapper a {
  font-family: 'Nunito Sans', 'Inter', sans-serif;
  font-size: 20px;
  font-weight: 700;
  color: #1a2948;
  margin-left: 14px;
  letter-spacing: 0.03em;
}
.topbar .download-url-wrapper { display: none !important; }


.swagger-ui .col-12.col-md-3 {
  background: #f6f8fa;
  border-right: 1px solid #e7eaef;
  min-width: 260px;
  padding: 0 0 30px 0 !important;
}
.swagger-ui .opblock-tag-section {
  margin-bottom: 20px !important;
}
.swagger-ui .opblock-tag.no-desc span {
  color: #1a2948 !important;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 0.01em;
  padding-top: 22px;
  padding-bottom: 8px;
  display: block;
}

/* Sidebar endpoint buttons */
.swagger-ui .opblock-tag .arrow {
  display: none !important;
}
.swagger-ui .opblock-tag-section .opblock-tag {
  padding-left: 24px;
}
.swagger-ui .opblock-summary-get {
  background: #eaf6fd !important;
  color: #0080ff !important;
  font-weight: 700;
  border-radius: 8px;
  margin-bottom: 8px;
  padding: 4px 18px !important;
  border: none !important;
}
.swagger-ui .opblock-summary-post {
  background: #e3fbee !important;
  color: #27ae60 !important;
  font-weight: 700;
  border-radius: 8px;
  margin-bottom: 8px;
  padding: 4px 18px !important;
  border: none !important;
}
.swagger-ui .opblock-summary-put {
  background: #fff7e7 !important;
  color: #e9ab00 !important;
  font-weight: 700;
  border-radius: 8px;
  margin-bottom: 8px;
  padding: 4px 18px !important;
  border: none !important;
}
.swagger-ui .opblock-summary-delete {
  background: #ffeaea !important;
  color: #eb5757 !important;
  font-weight: 700;
  border-radius: 8px;
  margin-bottom: 8px;
  padding: 4px 18px !important;
  border: none !important;
}
.swagger-ui .opblock-summary {
  transition: background 0.2s, box-shadow 0.2s;
}
.swagger-ui .opblock-summary:hover {
  box-shadow: 0 4px 18px 0 rgba(56,119,238,0.06);
  background: #d4eafd !important;
}

/* Main docs area container */
.swagger-ui .col-12.col-md-9 {
  background: #fafbfc;
  padding: 32px 40px 50px 40px !important;
}

/* Operation block card */
.swagger-ui .opblock {
  border-radius: 16px !important;
  box-shadow: 0 6px 32px 0 rgba(33, 43, 54, 0.07);
  border: 1px solid #e7eaef !important;
  margin-bottom: 30px !important;
  background: #fff !important;
  padding: 0 !important;
}
.swagger-ui .opblock .opblock-summary {
  border-radius: 16px 16px 0 0 !important;
  background: #f6f8fa !important;
  font-size: 18px !important;
  min-height: 56px;
  padding: 18px 30px !important;
  font-weight: 700;
}

/* Parameters table styling */
.swagger-ui .parameters {
  background: #f6f8fa !important;
  border-radius: 10px;
  padding: 22px 26px !important;
  margin-bottom: 16px;
  border: 1px solid #e7eaef;
}
.swagger-ui .parameters h4 {
  color: #161c24;
  font-size: 18px;
  margin-bottom: 14px;
}
.swagger-ui .parameters tr {
  border: none !important;
}
.swagger-ui .parameters td, .swagger-ui .parameters th {
  background: none !important;
  font-size: 15px;
  color: #232a33;
  padding: 8px 12px !important;
}
.swagger-ui .parameters th {
  font-weight: 700 !important;
}
.swagger-ui .parameter__name {
  font-family: 'Source Code Pro', monospace;
  color: #1962d8;
  font-size: 15px;
}
.swagger-ui .parameter__type {
  color: #757575 !important;
}

/* Try it out button */
.swagger-ui .btn.try-out__btn {
  background: #0080ff !important;
  color: #fff !important;
  border-radius: 8px !important;
  font-weight: 700;
  font-size: 16px;
  box-shadow: 0 1px 6px rgba(56,119,238,0.10);
  margin-bottom: 18px;
  padding: 9px 32px !important;
}
.swagger-ui .btn.try-out__btn:hover {
  background: #0063b3 !important;
}

/* Response example box */
.swagger-ui .responses-table .response-col_status {
  background: #eaf6fd !important;
  color: #0080ff !important;
  font-weight: 700 !important;
  border-radius: 8px;
  min-width: 70px;
}
.swagger-ui .responses-inner, .swagger-ui .response, .swagger-ui .responses-table {
  background: none !important;
  border: none !important;
}
.swagger-ui .response-controls {
  display: none !important;
}
.swagger-ui .opblock-body pre, .swagger-ui .microlight {
  background: #131927 !important;
  color: #dbeafe !important;
  border-radius: 10px;
  padding: 24px !important;
  font-family: 'Source Code Pro', monospace !important;
  font-size: 16px !important;
  margin-bottom: 20px;
  box-shadow: 0 3px 14px 0 rgba(27, 37, 61, 0.13);
}
.swagger-ui .responses-inner .response {
  background: #f6f8fa !important;
  border-radius: 14px;
  margin-bottom: 16px;
  border: 1px solid #e7eaef;
  padding: 18px 22px;
}

/* Schema tables */
.swagger-ui .model-box, .swagger-ui .model, .swagger-ui .responses-table {
  background: #f6f8fa !important;
  border-radius: 10px !important;
  border: 1px solid #e7eaef !important;
  padding: 14px !important;
  margin-bottom: 18px !important;
  box-shadow: none !important;
}

/* Misc UI tweaks */
.swagger-ui .response-col_links, .swagger-ui .response-col_description {
  color: #1a2948 !important;
  font-size: 15px !important;
}
.swagger-ui .markdown, .swagger-ui .renderedMarkdown {
  font-size: 16px !important;
  color: #24292f !important;
  font-family: 'Nunito Sans', 'Inter', sans-serif !important;
}
.swagger-ui h4, .swagger-ui h3, .swagger-ui h2, .swagger-ui h1 {
  font-weight: 700 !important;
  color: #1a2948 !important;
}
.swagger-ui .tab li {
  color: #0080ff !important;
  font-weight: 600 !important;
}
.swagger-ui .tab li.active {
  border-bottom: 2px solid #0080ff !important;
}

/* Scrollbar styling */
::-webkit-scrollbar {
  width: 10px;
  background: #f6f8fa;
}
::-webkit-scrollbar-thumb {
  background: #e7eaef;
  border-radius: 10px;
}
