/**
 * 2mbet design v2 — deposit tab strip (Auto Deposit + Hot badge + horizontal scroll).
 * Loaded from title_2mbet.php when $design_v2 is set.
 *
 * Rules target .depo-menu (only loaded when design v2 stylesheet is linked).
 */

.depo-menu {
  position: relative;
  display: flex!important;
  flex-wrap: nowrap;
  align-items: center;
  gap: 8px;
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  padding-top: 14px;
  padding-bottom: 4px;
  scrollbar-width: thin;
}

.depo-menu > h6 {
  flex: 0 0 auto;
  border-radius: 4px;
}

/* .depo-menu .bg-dark.active {
  background: linear-gradient(90deg, #9b3496 0%, #e82b38 50%, #f97837 100%) !important;
} */

.depo-menu .depo-tab-auto-hot {
  position: relative;
}

.depo-menu .depo-hot-badge {
  position: absolute;
  top: -10px;
  right: 8px;
  z-index: 2;
  line-height: 0;
  pointer-events: none;
}

.depo-menu .depo-hot-badge img {
  display: block;
  height: 25px;
  width: auto;
  filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.35));
}
.online-depo {
  max-width: 480px;
  margin-left: auto;
  margin-right: auto;
}

.online-depo .form-group {
  margin-bottom: 1.25rem;
}
.online-depo .input-group-text {
 border: 0!important;
}
.online-depo .form-control-feedback {
  display: block;
  margin-top: 0.35rem;
  font-size: 0.85rem!important;
  color: #0877D3;
}

.online-depo .input-prepend {
  position: relative;
}
.online-depo .input-prepend-text {
  position: absolute;
  top: 50%;
  left: 10px;
  transform: translateY(-50%);
  color:#181818;
  font-size: .875rem;

}
.online-depo .form-control {
    padding-left: 1.2rem;
    color:#181818;
    font-size: .875rem!important;
}
.online-depo .btn {
    padding-top: 8px;
    padding-bottom: 8px;
}

/* —— KHQR + result popups: same structure as mod/member/deposit/online/depo_2mbet_index.php —— */
.online-payment-popup {
  position: fixed;
  z-index: 9999;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: none;
  align-items: center;
  justify-content: center;
  background: rgba(0, 5, 20, 0.82);
}
.online-payment-modal {
  width: 374px;
  min-height: 690px;
  max-width: calc(100% - 18px);
  background: #fff;
  border-radius: 7px;
  padding: 25px 22px 20px;
  text-align: center;
  color: #2b2b2b;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12);
}
.online-payment-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 28px;
  font-size: 20px;
  margin-bottom: 40px;
  line-height: 28px;
}
.online-payment-header strong {
  font-size: 20px;
  font-weight: 700;
  letter-spacing: -0.2px;
}
.online-payment-countdown {
  display: flex;
  align-items: center;
  gap: 9px;
  font-size: 16px;
  color: #222;
  font-weight: normal;
  margin-left: auto;
  margin-right: 20px;
}
.online-payment-spinner {
  width: 28px;
  height: 28px;
  border: 3px solid #d4eaf8;
  border-top-color: #0c7fbd;
  border-radius: 50%;
  display: inline-block;
  animation: online-payment-spin 1s linear infinite;
}
.online-payment-close {
  border: 0;
  background: transparent;
  color: #969696;
  font-size: 36px;
  line-height: 28px;
  cursor: pointer;
  padding: 0;
  font-weight: 300;
}
.online-payment-card {
  width: 290px;
  max-width: 100%;
  margin: 0 auto;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 5px 16px rgba(0, 0, 0, 0.16);
  background: #fff;
  position: relative;
}
.online-payment-card-top {
  position: relative;
  height: 56px;
  line-height: 56px;
  background: #ed1b24;
  color: #fff;
  font-size: 22px;
  font-weight: bold;
  padding: 0;
  letter-spacing: -0.5px;
}
.online-payment-card-top:after {
  content: "";
  position: absolute;
  right: 0;
  bottom: -35px;
  width: 0;
  height: 0;
  border-top: 35px solid #ed1b24;
  border-left: 35px solid transparent;
}
.online-payment-card-body {
  padding: 19px 0 25px;
}
.online-payment-merchant {
  font-size: 12px;
  color: #4a4a4a;
  text-align: left;
  padding-left: 40px;
  line-height: 16px;
}
.online-payment-amount {
  font-size: 25px;
  font-weight: bold;
  text-align: left;
  padding-left: 40px;
  line-height: 31px;
  letter-spacing: -0.5px;
}
.online-payment-amount small {
  font-size: 12px;
  font-weight: normal;
  margin-left: 5px;
  vertical-align: 5px;
}
.online-payment-divider {
  border-top: 1px dashed #cfcfcf;
  margin: 18px 0 29px;
}
.online-payment-qr-wrap {
  width: 235px;
  height: 235px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
}
.online-payment-qr-wrap #onlinePaymentQr {
  width: 235px;
  height: 235px;
  object-fit: contain;
  display: block;
}
.online-payment-qr-wrap #Qrcode canvas {
  width: 235px !important;
  height: 235px !important;
  display: block;
}
.online-payment-note {
  color: #9b9b9b;
  font-size: 15px;
  line-height: 1.42;
  margin: 30px auto 26px;
  width: 260px;
  max-width: 100%;
}
.online-payment-status {
  display: none;
  color: #23956b;
  font-size: 13px;
  margin-bottom: 6px;
  text-transform: capitalize;
}
.online-payment-download {
  border: 0;
  background: transparent;
  color: #44b985;
  font-weight: bold;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-size: 14px;
  padding: 0;
  line-height: 24px;
}
@keyframes online-payment-spin {
  to { transform: rotate(360deg); }
}
.online-payment-result-popup {
  position: fixed;
  z-index: 10000;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: none;
  align-items: center;
  justify-content: center;
  background: rgba(0, 5, 20, 0.82);
}
.online-payment-result-modal {
  width: 342px;
  max-width: calc(100% - 58px);
  background: #fff;
  border-radius: 7px;
  overflow: hidden;
  text-align: center;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12);
}
.online-payment-result-hero {
  height: 169px;
  background: #d8f5fb;
  overflow: hidden;
  position: relative;
}
.online-payment-result-sky {
  position: relative;
  height: 100%;
  background: linear-gradient(#d9f8fc 0%, #d9f8fc 55%, #bdeef8 56%, #bdeef8 100%);
}
.online-payment-cloud {
  position: absolute;
  width: 78px;
  height: 23px;
  background: #fff;
  border-radius: 20px;
  opacity: 0.9;
}
.online-payment-cloud:before,
.online-payment-cloud:after {
  content: "";
  position: absolute;
  background: #fff;
  border-radius: 50%;
}
.online-payment-cloud:before {
  width: 40px;
  height: 40px;
  left: 12px;
  top: -18px;
}
.online-payment-cloud:after {
  width: 30px;
  height: 30px;
  right: 12px;
  top: -12px;
}
.online-payment-cloud-left {
  left: -16px;
  top: 55px;
}
.online-payment-cloud-right {
  right: -18px;
  top: 50px;
}
.online-payment-hill {
  position: absolute;
  bottom: 0;
  width: 230px;
  height: 76px;
  background: rgba(111, 200, 225, 0.42);
  border-radius: 50% 50% 0 0;
}
.online-payment-hill-left {
  left: -45px;
}
.online-payment-hill-right {
  right: -65px;
  bottom: -9px;
}
.online-payment-cactus {
  position: absolute;
  bottom: 29px;
  width: 5px;
  height: 51px;
  background: #5591d0;
  border-radius: 4px;
}
.online-payment-cactus:before,
.online-payment-cactus:after {
  content: "";
  position: absolute;
  width: 4px;
  height: 25px;
  border: 4px solid #5591d0;
  border-top: 0;
  border-radius: 0 0 9px 9px;
}
.online-payment-cactus:before {
  left: -15px;
  top: 17px;
  border-left: 0;
}
.online-payment-cactus:after {
  right: -15px;
  top: 6px;
  border-right: 0;
}
.online-payment-cactus-left {
  left: 61px;
}
.online-payment-cactus-right {
  right: 64px;
  height: 31px;
  opacity: 0.25;
  transform: scale(0.68);
  transform-origin: bottom center;
}
.online-payment-flag {
  position: absolute;
  left: 122px;
  bottom: 25px;
  width: 2px;
  height: 101px;
  background: #2586c7;
}
.online-payment-flag:before {
  content: "";
  position: absolute;
  top: 0;
  left: -3px;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-top: 11px solid #2586c7;
}
.online-payment-result-icon {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 50px;
  height: 50px;
  margin-left: -25px;
  margin-top: -25px;
  border-radius: 50%;
  background: #39b54a;
  color: #fff;
  font-size: 40px;
  line-height: 47px;
  font-weight: 300;
}
.online-payment-result-modal.error .online-payment-result-icon {
  background: #e60012;
  font-size: 48px;
  line-height: 45px;
}
.online-payment-result-body {
  padding: 25px 21px 20px;
}
.online-payment-result-body h3 {
  margin: 0;
  color: #111;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.3;
}
.online-payment-result-body p {
  margin: 17px 0 24px;
  color: #8d8d8d;
  font-size: 14px;
  line-height: 1.7;
}
.online-payment-result-body p strong,
.online-payment-result-body p .depo-val-highlight {
  color: #1688d3;
  font-weight: 700;
}
#onlinePaymentResultButton {
  width: 100%;
  height: 40px;
  border: 0;
  border-radius: 2px;
  background: #1388d8;
  color: #fff;
  font-size: 16px;
  font-weight: 700;
  cursor: pointer;
}
