:root {
  --bs-body-bg: #f5f5f5;
}

.card {
  --bs-card-bg: #ffffff;

  &.borderless {
    border: none !important;
  }
}

body {
  font-family: 'Kanit', sans-serif;
}

.bg-primary-dark {
  background-color: #012340;
}

.bg-secondary-light {
  background-color: #78b2bf;
}

.text-primary-dark {
  color: #012340;
}

.text-secondary-light {
  color: #78b2bf;
}

.btn-secondary-light {
  background-color: #78b2bf;
  border-color: #78b2bf;
  color: #012340;
}

.btn-secondary-light:hover {
  background-color: #5a99a8;
  border-color: #5a99a8;
  color: #012340;
}

.nav-link {
  color: #012340;
}

.nav-link.active {
  background-color: #012340;
  color: #fff;
}

.hero-section {
  background-image: url('/static/image/bg-api.png') !important;
  background-size: cover;
  background-position: center;
  min-height: 490px;
}

.hero-section-org {
  min-height: 200px;
  align-items: center;
  display: flex;
  background: #031e36;
}

.hero-subtitle-org-list {
  font-size: 48px;
  letter-spacing: 3.2px;
  font-weight: 600;
  color: #78b2bf;
  margin-top: 24px;
}

.hero-project-section {
  min-height: 208px;
  display: flex;
  padding: 50px 80px;
  background-color: #06203c;

  & > .project-item {
    display: flex;
    gap: 20px;

    & > .project-image {
      display: flex;
      align-items: center;
      justify-content: center;
      position: relative;
      width: 100%;
      max-width: 200px;
      margin: 0 auto;
    }

    & > .api-content {
      & > .api-title,
      & > .api-description {
        color: #fff !important;
      }
    }
  }
}

.swagger-container > .topbar {
  display: none !important;
}

.footer-icon {
  width: 28px;
  height: 28px;
}

.bg-white-blue {
  background: linear-gradient(to right, #ffffff 30%, #78b2be) !important;
}

.mainheader {
  .nav-link.active {
    background-color: #012340;
    color: #fff !important;
    border-radius: 6px !important;
    padding: 7px !important;
  }
}

.org_img {
  height: 100px !important;
  width: 100px !important;
  object-fit: contain;

  position: relative;
  z-index: 2;
}

.org-body {
  background: #012340 !important;
  color: #b2ffff !important;
}

.border-bottom-radius {
  border-bottom-left-radius: 5px !important;
  border-bottom-right-radius: 5px !important;
}

.overlay-img {
  position: absolute;

  width: 100% !important;
  z-index: 1;
  opacity: 0.5;
  padding: 20px !important;

  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.card-body {
  position: relative;
  z-index: 3;
}

.org_title {
  color: #012340 !important;
  font-size: 22px !important;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  height: 150px !important;
}

.api_title {
  color: #012340 !important;
  font-size: 22px !important;
  height: 100px !important;
  z-index: 3 !important;
}

.page-link {
  height: 38px !important;
}

.btn-icon {
  width: 100% !important;
  height: 100% !important;
}

.btn-icon:hover {
  opacity: 0.8 !important;
}

.pagination {
  --bs-pagination-color: #012340 !important;
  --bs-pagination-active-bg: #012340 !important;
  --bs-pagination-hover-color: #012340 !important;
  --bs-pagination-active-border-color: #012340 !important;
  --bs-pagination-bg: #f8f9fa !important;
}

.min-h-set {
  min-height: 500px !important;
}

.min-h-login {
  min-height: 600px !important;
  background: #e5e8ee !important;
}
.min-h-404{
   min-height: 600px !important;
  background: #e5e8ee !important;
}

.main-center {
  display: flex;
  align-items: center; /* Vertical centering */
  justify-content: center; /* Horizontal centering */
  min-height: 100vh; /* Ensure it takes the full height of the viewport */
}

.align-c-center{
  align-content: center !important;
}

.login-set {
  min-height: 300px !important;
  background: white !important;
  width: 100%;
  max-width: 800px;
  margin: 20px !important;
  border: none !important;
}

.logo-container {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1.5rem !important;
}

.logo-login {
  height: 75px !important;
  max-width: 100% !important;
  object-fit: contain !important;
  margin-right: 1rem !important;
}

.set_digi {
  max-height: 30px !important;
  color: white !important;
}

.img-digi {
  background: #78b2bf !important;
  z-index: 0 !important;
  width: 60px !important;
}

.text-digi {
  background: #03223d !important;
  color: white !important;
  width: 300px !important;
}

.set_thaid {
  max-height: 30px !important;
  color: white !important;
}

.img-thaid {
  background: #030650 !important;
  z-index: 0 !important;
  width: 60px !important;
}

.text-thaid {
  background: #78b2bf !important;
  color: white !important;
  width: 300px !important;
}

.fs-18 {
  font-size: 18px !important;
}

.btn-container {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 1rem !important;
}

.hero-section-s {
  background-image: url('/static/image/bg-api.png') !important;
  background-size: cover;
  background-position: center;
  min-height: 208px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  color: var(--secondary-color);
  padding: 50px 80px;
}

.hero-title {
  font-size: 52px;
  letter-spacing: 2.6px;
  font-weight: 600;
  color: #78b2bf;
}

.hero-subtitle {
  font-size: 64px;
  letter-spacing: 3.2px;
  font-weight: 600;
  color: #78b2bf;

  margin-top: 24px;
}

.hero-subtitle-org {
  font-size: 48px;
  letter-spacing: 3.2px;
  font-weight: 600;
  color: white;

  margin-top: 24px;
}

.search-input {
  flex-grow: 1;
  display: flex;
  align-items: center;
  border: 1px solid var(--border-color);
  border-radius: 5px;
}

.search-container {
  display: flex;
  width: 100%;
  max-width: 1242px;
  gap: 16px;
}

.filter-button {
  width: 60px;
  height: 60px;
  border: none;
  background-color: var(--primary-color);
  border-radius: 5px;
}

.results-info {
  display: flex;
  justify-content: space-between;
  align-items: start;
  width: 100%;
  max-width: 1242px;
  margin-top: 25px;
}

.results-count {
  font-size: 38px;
  font-weight: 600;
  margin-bottom: 0;
}

.results-total {
  font-size: 20px;
  font-weight: 500;
}

.view-controls {
  display: flex;
  gap: 10px;
  z-index: 99;
}

.view-button {
  width: 50px;
  height: 50px;
  background-color: var(--primary-color);
  border: none;
  border-radius: 5px;
}

.api-list {
  margin-top: 37px;
  width: 100%;
  max-width: 1242px;
}

.api-item {
  display: flex;
  gap: 20px;
  margin-bottom: 25px;
  border-bottom: 1px solid rgb(201, 201, 201);
  padding-bottom: 25px;
}

.api-image {
  width: 279px;
  height: auto;
  border-radius: 5px;
  box-shadow: 0 10px 60px rgba(226, 236, 249, 0.5);
}

.api-portal-content-wrapper {
  min-height: calc(100vh - 480px);
}

.api-content {
  flex-grow: 1;
}


.api-content {
  max-width: 100% !important;          
  overflow: hidden !important;       
  word-wrap: break-word !important;    
  word-break: break-word !important;  
}

.api-title {
  display: block !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  max-width: 100% !important;
}

.api-title {
  font-size: 22px;
  font-weight: 500;
  margin-bottom: 11px;
  text-decoration: none;
  color: var(--text-color);
}

.api-description {
  font-size: 18px;
  color: var(--text-color);
  line-height: 26px;
  margin-bottom: 23px;
}

.api-meta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 14px;
}

.api-provider {
  display: inline-block;
  max-width: 100%;
  padding: 7px 10px;
  background-color: rgba(207, 228, 232, 1);
  border-radius: 5px;
}

.api-stats {
  display: flex;
}

.stat-item {
  display: flex;
  align-items: center;
  gap: 8px;
}

.api-image-s {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  width: 100%;
  max-width: 300px; /* Adjust this as needed */

  margin: 0 auto; /* Center the container */
}

.api-image-s img.org_img-s {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 10px;
}

.api-image-s img.overlay-img-s {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 80%; /* Adjust overlay size */
  height: auto;
  opacity: 0.5; /* Adjust the transparency */
  pointer-events: none; /* Prevent overlay from blocking interactions */
}

.api-image-s:hover img.overlay-img-s {
  opacity: 0.7; /* Change opacity on hover for effect */
}

.api-image-list {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  width: 100%;
  max-width: 300px; /* Adjust this as needed */
  min-width: 300px;
  margin: 0 auto; /* Center the container */
}

.api-image-list img.org_img-s {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 10px;
}

.api-image-list img.overlay-img-s {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 80%; /* Adjust overlay size */
  height: auto;
  opacity: 0.5; /* Adjust the transparency */
  pointer-events: none; /* Prevent overlay from blocking interactions */
}

.api-image-list:hover img.overlay-img-s {
  opacity: 0.7; /* Change opacity on hover for effect */
}

.my-n2 {
  margin-bottom: -0.3rem !important;
  margin-top: -0.3rem !important;
}

.avatar-img {
  border-radius: inherit;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  width: 32px;
}

.text-theme {
  color: #012340 !important;
}
.h90px {
  height: 90px !important;
}

.user-login {
  border: 1px solid #6c757d;
  border-radius: 6px !important;
  margin: 0.5rem !important;
}

.wx-100 {
  width: 100px !important;
}

.imageContainer {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  height: 100% !important;
  width: 100% !important;
  padding-right: 10px !important;
  padding-left: 10px !important;
}

.custom-modal-width {
  width: 900px !important;
}

.popup-event {
  .modal-header {
    border-bottom: none !important;
  }

  .modal-footer {
    justify-content: space-between !important;
    border-top: none !important;
  }
}

.popup-img {
  max-width: 100%;
  height: auto;
}

.footer-logo {
  height: 90px !important;
  max-width: 100% !important;
  padding: 10px !important;
  background: transparent !important;
}

.footer-gd-logo {
  height: 90px !important;
  max-width: 100% !important;
  padding: 24px 10px 24px 0px !important;
  background: transparent !important;
}

.footer-gd-logo-org {
  height: 90px !important;
  max-width: 100% !important;
  padding: 10px !important;
  background: transparent !important;
}

.gd-logo {
  border-top-right-radius: 6px !important;
  border-bottom-right-radius: 6px !important;
}

.api-logo {
  border-top-left-radius: 6px !important;
  border-bottom-left-radius: 6px !important;
}


.footer-usam-logo {
  height: 90px !important;
  max-width: 100% !important;
  padding: 20px !important;
  background: transparent !important;
}

.d-flex-ft {
  display: flex;
  /* justify-content: center; */
}

.custom-card {
  width: 100% !important;
}

.custom-card-api {
  width: 100% !important;
  height: 100%;
}

/* ปุ่มทั้งหมดมีขนาดเท่ากัน */
.btn-approved,
.btn-rejected,
.btn-request {
  display: inline-block;
  padding: 5px 10px;
  color: white;
  border-radius: 5px;
  cursor: default; /* ไม่ให้แสดง pointer เมื่อ hover */
  text-align: center;
  width: 120px; /* ความกว้างที่เท่ากัน */
  line-height: 30px; /* ปรับให้ข้อความกลางแนวตั้ง */
}

/* ปุ่มที่แสดงเมื่อสถานะ APPROVED */
.btn-approved {
  background-color: #28a745;
}

/* ปุ่มที่แสดงเมื่อสถานะ REJECTED */
.btn-rejected {
  background-color: #dc3545;
}

.btn-request {
  background-color: #ffc107;
}

.btn-requested {
  display: inline-block;
  border-radius: 5px;
  cursor: default; /* ไม่ให้แสดง pointer เมื่อ hover */
  text-align: center;
  line-height: 30px; /* ปรับให้ข้อความกลางแนวตั้ง */
  background-color: #ffc107;
  padding: 10px 10px !important;
  font-size: 1.25rem !important;
}

.btn-reject {
  display: inline-block;
  color: white;
  border-radius: 5px;
  cursor: default; /* ไม่ให้แสดง pointer เมื่อ hover */
  text-align: center;
  line-height: 30px; /* ปรับให้ข้อความกลางแนวตั้ง */
  background-color: #dc3545;
  padding: 10px 10px !important;
  font-size: 1.25rem !important;
}

.center-content {
  display: flex;
  justify-content: center;
  align-items: center;
}

.w-80 {
  width: 80% !important;
}

.f-16 {
  font-size: 16px !important;
}

.color-api-set {
  color: #012340 !important;
}

.color-key-set {
  color: #a36cc2 !important;
}

.key-api {
  padding: 2px 5px;
  background-color: rgb(219, 207, 232);
  border-radius: 5px;
  font-size: 14px;
}

.key-api-grid {
  padding: 2px 5px;
  background-color: rgb(219, 207, 232);
  border-radius: 5px;
  font-size: 14px;
}

.key-api-grid-none {
  padding: 2px 5px;
  background-color: transparent;
  border-radius: 5px;
  font-size: 14px;
}

.btn-menu-view {
  border: #d8dee3 solid 1px;
  border-radius: 4px;
  padding: 0.5rem;
  color: #3d5a73;
  background: #d8dee3;
  font-size: 20px;
}

.active_view {
  background-color: #012340 !important;
  border: #012340 solid 1px;
  color: #78b2bf;
}

.wx-400 {
  width: 400px !important;
}

.text-bg-api {
  background-color: #d8dee3;

  & > a {
    color: #3d5a73;
  }

  &:hover,
  &.active {
    background-color: #3d5a73;

    & > a {
      color: #d8dee3;
    }
  }
}

.text-bg-number {
  color: white !important;
  background-color: #686868 !important;
}

.fs-16 {
  font-size: 16px !important;
}

.fs-24 {
  font-size: 24px !important;
}

.fs-18 {
  font-size: 18px !important;
}
.filter-box-shadow {
  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px !important;
}

.sc_icon {
  width: 40px !important;
  height: 100% !important;
}

a {
  text-decoration: none !important;
}

/* COOKIE */
.container-cookie {
  padding: 20px;
}

.drawer-content {
  padding: 20px;
  width: 450px;
  height: 100%;
  z-index: 9999;
}

.drawer-backdrop {
  position: fixed;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.5);
}

.cookie-position {
  position: fixed;
  bottom: 0;
  width: 100%;
  background: white;
  z-index: 9998;
}

#analyticsCookies:checked {
  background-color: #28a745;
  border-color: #28a745;
}

#analyticsCookies {
  background-color: #6c757d;
  border-color: #6c757d;
}

#analyticsCookies:checked:focus {
  box-shadow: 0 0 0 0.25rem rgba(40, 167, 69, 0.25);
}

#analyticsCookies:focus {
  box-shadow: 0 0 0 0.25rem rgba(108, 117, 125, 0.25);
}

/* COOKIE */

.text-max-line-3 {
  display: -webkit-box !important;
  -webkit-line-clamp: 3 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}

.grid-footer-color {
  border-top: none !important;
  background: none !important;
}

.text-max-line-1 {
  display: -webkit-box !important;
  -webkit-line-clamp: 1 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  line-height: 2;
}

a.group-tag {
  margin-right: 5px;
  border-radius: 21px;
  display: inline-block;
  height: 21px;
  line-height: 21px;
  color: #fff;
  background: #488477;
  font-size: 14px;
  font-weight: 300;
  padding: 0 12px;
  margin-left: 10px;
}

.summary-banner {
  background-size: 100%;
  padding: 30px 20px;

  &.summary-org-banner {
    background: url('/static/image/dashboard/org-dashboard-banner.png') no-repeat center;
  }

  &.summary-api-banner {
    background: url('/static/image/dashboard/api-dashboard-banner.png') no-repeat center;
  }
}

.text-blue {
  color: #78b2bf;
}

.font-14 {
  font-size: 14px;
}

.font-16 {
  font-size: 16px;
}

.font-18 {
  font-size: 18px;
}

.font-20 {
  font-size: 20px;
}

.font-24 {
  font-size: 24px;
}

.font-32 {
  font-size: 32px;
}

.font-40 {
  font-size: 40px;
}

.font-64 {
  font-size: 64px;
}

.tbl-custom {
  width: 100%;

  & th,
  & td {
    padding: 10px;
    border: 1px solid #012340;
  }

  & th {
    color: #fff;
    font-weight: normal;
    background: #012340;
  }
}

.nocode-footer {
  background: linear-gradient(92.91deg, rgba(61, 90, 115, 0) -19.23%, rgba(61, 90, 115, 0.2) 98.64%);
}

.form-control {
  background-color: #fff;
}

.nav-cursor {
  cursor: pointer !important;
}

.s_org {
  z-index: 9 !important;
}

.dashboard-card-main {
  padding: 20px !important;

  background: transparent !important;
}

.max-w-500 {
  max-width: 500px !important;
}

.min-h-600 {
  min-height: 600px !important;
}

.block-nav {
  background-color: #fff;
}

.navbar-nav {
  --bs-nav-link-color: #000;
  --bs-nav-link-hover-color: #000;
}

.navbar {
  --bs-navbar-active-color: #000;
  --bs-navbar-toggler-border-color: 0;
  margin: 0;
  padding: 0;
}
.navbar .navbar-toggler {
  background-color: #fff;
}
.navbar .main-menu .nav-link {
  padding: 10px 35px;
}
@media (max-width: 991.98px) {
  .navbar .main-menu .nav-link {
    padding: 10px 15px;
  }
}
@media (min-width: 992px) {
  .navbar .main-menu .nav-link {
    height: 90px;
    display: flex;
    align-items: center;
  }
}

.navbar .main-menu .nav-link.active,
.navbar .main-menu .nav-link:hover {
  background: #012340;
  color: #fff;
}
.navbar .main-menu .scale-menu .nav-link {
  padding: 10px 15px;
}
@media (max-width: 991.98px) {
  .navbar .main-menu .scale-menu .nav-link {
    height: 50px;
    display: flex;
    align-items: center;
  }
}
.navbar .main-menu .scale-menu .nav-link.active,
.navbar .main-menu .scale-menu .nav-link:hover {
  background: rgba(1, 35, 64, 0.1);
  color: #012340;
}

.set-btn-login{
  max-width: 350px !important;
  width: 100% !important;
}


@media (max-width: 768px) {
  
  .api-image-list {
    display: none !important;
  }
  }
  


.project_min_height{
  min-height: 400px !important;
  align-content: center !important;
}

.set-pd{
  padding: 24px !important;
}

.login-text-shadow {
  font-weight: 600;
  font-size: 32px;
  line-height: 1.23;
  color: #03223d !important;
}