/* font */
@font-face {
  font-family: font-sans-b;
  src: url("../../assets/fonts/Sukhumvit/IBMPlexSansThai-Bold.ttf");
}

@font-face {
  font-family: font-sans-m;
  src: url("../../assets/fonts/Sukhumvit/IBMPlexSansThai-Medium.ttf");
}

@font-face {
  font-family: font-sans-r;
  src: url("../../assets/fonts/Sukhumvit/IBMPlexSansThai-Regular.ttf");
}

@font-face {
  font-family: jer;
  src: url("../../assets/fonts/Sukhumvit/Jersey25-Regular.ttf");
}

@font-face {
  font-family: number;
  src: url("../../assets/fonts/digital-7.ttf");
}

.col-20 {
  flex: 0 0 20%;
  max-width: 20%;
}

.boxbg {
  height: 100%;
  background-color: #F4F4F9;
  background-size: cover;
}

.pointer {
  cursor: pointer;
}

.menu-main {
  filter: grayscale(0.6);
  opacity: 0.5;
}

.menu-main.active {
  filter: grayscale(0);
  opacity: 1;
}

:root {
  --font-primary: font-sans-r;
  --font-primary-medium: font-sans-m;
  --font-primary-bold: font-sans-b;
  --font-primary-number: number;
}

.font-regular {
  font-family: var(--font-primary);
}

.font-medium {
  font-family: var(--font-primary-medium);
}

.font-bold {
  font-family: var(--font-primary-bold);
}

.font-jer {
  font-family: jer;
}

.font-number {
  font-family: var(--font-primary-number);
}

.font-jer,
.font-regular,
.font-bold {
  color: #011846;
}

.font-medium.xxxxl,
.font-number.xxxxl,
.font-jer.xxxxl,
.font-regular.xxxxl,
.font-bold.xxxxl {
  font-size: min(12vw, 2.8rem) !important;
}

.font-medium.xxxl,
.font-number.xxxl,
.font-jer.xxxl,
.font-regular.xxxl,
.font-bold.xxxl {
  font-size: min(7vw, 1.8rem) !important;
}

.font-medium.xxl,
.font-number.xxl,
.font-jer.xxl,
.font-regular.xxl,
.font-bold.xxl {
  font-size: min(4.5vw, 1.3rem) !important;
}

.font-medium.xl,
.font-number.xl,
.font-jer.xl,
.font-regular.xl,
.font-bold.xl {
  font-size: min(4vw, 1rem) !important;
}

.font-medium.l,
.font-number.l,
.font-jer.l,
.font-regular.l,
.font-bold.l {
  font-size: min(3.5vw, 0.9rem) !important;
}

.font-medium.md,
.font-number.md,
.font-jer.md,
.font-regular.md,
.font-bold.md {
  font-size: min(2.9vw, 0.8rem) !important;
}

.font-medium.sm,
.font-number.sm,
.font-jer.sm,
.font-regular.sm,
.font-bold.sm {
  font-size: min(3.25vw, 0.7rem) !important;
}

.font-medium.xs,
.font-number.xs,
.font-jer.xs,
.font-regular.xs,
.font-bold.xs {
  font-size: min(2.2vw, 0.6rem) !important;
}

/* ------------------------------------------------ */
/* width */
.w-100 {
  width: 100% !important;
}

.w-98 {
  width: 98% !important;
}


.w-97 {
  width: 97% !important;
}

.w-95 {
  width: 95% !important;
}

.w-93 {
  width: 93% !important;
}

.w-90 {
  width: 90% !important;
}

.w-85 {
  width: 85% !important;
}

.w-80 {
  width: 80% !important;
}

.w-70 {
  width: 70% !important;
}

.w-60 {
  width: 60% !important;
}

.w-50 {
  width: 50% !important;
}

.w-40 {
  width: 40% !important;
}

.w-30 {
  width: 30% !important;
}

.w-20 {
  width: 20% !important;
}

.w-15 {
  width: 15% !important;
}

.w-10 {
  width: 13.5% !important;
}

.mar-auto {
  margin: auto;
}

/* ------------------------------------------------ */
.relative {
  position: relative;
}

.absolute {
  position: absolute;
}

.qr-container {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  max-width: 480px;
}

.qr-container .logo {
  position: absolute;
  z-index: 2;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  justify-content: center;
  align-items: center;
}

.qr-image-container {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  background: #fff;
  border-radius: 1rem;
  padding: 6;
}

.qr-payment-container {
  width: 100%;
  background: #0f3e68;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px 10px 0 0;
}

.qr-container img {
  width: 100%;
  height: 100%;
  object-fit: contain
}

.qr-countdown-container {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  background: #fff;
  border-radius: 1rem;
  padding: 8 4 0;
}

.container-desktop {
  display: block;
}

.container-mobile {
  display: none;
}

@media only screen and (max-width: 450px) {
  .container-desktop {
    display: none;
  }

  .container-mobile {
    display: block;
  }
}

.title-name {
  width: fit-content;
  height: fit-content;
  margin: auto;
  color: #2FA54D;
  font-size: 1.1rem;
  border-radius: 7px;
  padding: 2px 20px;
  background-image: linear-gradient(#FFFCF3, #FFFCF3);
  border: 1px solid #2FA54D;
}

.info-yiki {
  width: 23px;
  height: 16px;
  border-radius: 3px;
  background-image: linear-gradient(#56C252, #2FA54D);
}

.info-yiki-2 {
  width: 100%;
  height: fit-content;
  text-align: center;
  border-radius: 5px;
  box-shadow: #00000082 0 1px 5px;
  background-image: linear-gradient(#fffcf3, #fffcf3);
  border: 0;
}

.info-yiki-3 {
  width: 100%;
  height: fit-content;
  text-align: center;
  border-radius: 5px;
  box-shadow: #00000082 0 1px 5px;
  background-image: linear-gradient(#56C252, #2FA54D);
  border: 0;
}

.info-top {
  width: 100% !important;
  height: fit-content;
  text-align: center;
  border-radius: 0rem;
  background-color: #14595E;
}

.good-info {
  width: fit-content !important;
  background-color: #E1FBDD;
  border: 1px solid #57D92F;
  border-radius: 8px;
}

.info-1 {
  width: 100% !important;
  padding: 10px 0px 8px 0px;
  height: fit-content;
  text-align: center;
  background-image: linear-gradient(#FFFFFF, #FFFFFF);
  box-shadow: rgba(0, 0, 0, 0.2) 0 2px 4px;
}

.info-2 {
  width: 100%;
  height: fit-content;
  text-align: center;
  border-radius: 8px;
  background-image: linear-gradient(#E4DFE9, #E4DFE9);
  transition: all 0.3s ease;
}

.info-2.menu-btn {
  box-shadow: rgb(185 0 255 / 5%) 0 0 4px 8px inset;
}

.info-3 {
  width: 100%;
  padding: 10px 0px 8px 0px;
  height: fit-content;
  text-align: center;
  border-radius: 15px;
  background-image: linear-gradient(#FFFFFF, #FFFFFF);
  box-shadow: rgba(88, 88, 88, 25%) 0 1px 4px;
}

.info-4 {
  width: 100%;
  color: #000;
  padding: 5px 0px 3px 0px;
  height: fit-content;
  text-align: center;
  border-radius: 15px;
  background-image: linear-gradient(#FFFFFF, #EFF3FB);
  box-shadow: rgba(88, 88, 88, 25%) 0 1px 4px;
}

.info-4.active {
  box-shadow: rgba(88, 88, 88, 25%) 0 2px 2px inset, rgba(88, 88, 88, 25%) 0px -2px 8px inset;
}

.info-3000 {
  width: 100%;
  position: relative;
}

.info-3000::after {
  content: '';
  box-shadow: rgb(255, 255, 255) 2px 0px 4px inset, rgb(255, 255, 255) -2px 0px 4px inset;
}

.info-3000>.fade {
  position: absolute;
  z-index: 2;
  background: linear-gradient(to right, #ffffffdf, #ffffff30, #ffffff00);
  height: 100%;
  width: 2rem;
  top: -8px;
  left: 0;
  opacity: 1 !important;
}

.info-3000>.fade.right {
  left: auto;
  right: 0;
  top: calc(50% - 8px);
  transform: translate(0%, -50%);
  background: linear-gradient(to left, #ffffffdf, #ffffff30, #ffffff00);
}

.button-1 {
  width: fit-content;
  padding: 5px 15px;
  height: fit-content;
  /* height: 50px; */
  text-align: center;
  border-radius: 5px;
  /* border-radius: 1rem; */
  background-image: linear-gradient(#D7071C, #D7071C);
  box-shadow: 0 2px 10px 5px #00000020;
  cursor: pointer;

  display: flex;
  align-items: center;
  justify-content: center;
  border: 0;
}



.button-2 {
  width: fit-content;
  padding: 0px 1px;
  height: fit-content;
  text-align: center;
  border-radius: 5px;
  background-image: linear-gradient(#FFFFFF, #FFFFFF);
  box-shadow: rgb(88 88 88 / 44%) 0 2px 4px;
  cursor: pointer;
}

.button-3 {
  width: fit-content;
  height: fit-content;
  text-align: center;
  border-radius: 5px;
  background-image: linear-gradient(#39CD00, #39CD00);
  box-shadow: #2B9A00 0 3px 0;
  cursor: pointer;
}

button.disabled {
  filter: grayscale(1) opacity(0.5);
  cursor: not-allowed;
}

.button-4 {
  width: 100%;
  padding: 5px 0px 1px 0px;
  height: fit-content;
  text-align: center;
  border-radius: 20rem;
  text-shadow: #777777 0px 2px 4px;
  background-image: linear-gradient(#A5A5A5, #A5A5A5);
  box-shadow: rgba(255, 255, 255, 0.661) 0 1px 0 inset;
  cursor: pointer;
}

.button-5 {
  width: 95%;
  height: fit-content;
  text-align: center;
  border-radius: 8px;
  background: linear-gradient(#EEFCED, #EEFCED);
  border: 1px solid #50DD4D;
  cursor: pointer;
}

.button-5.disabled {
  filter: grayscale(1) opacity(0.75);
  cursor: not-allowed;
}

.button-5.error {
  background: linear-gradient(#E32225, #E32225);
  box-shadow: #840e10 0 2px 0;
}

.button-6 {
  width: fit-content;
  height: fit-content;
  text-align: center;
  border-radius: 5px;
  background-image: linear-gradient(#fff, #fff);
  border: 1px solid #BFC5D1;
  cursor: pointer;
}

.button-7 {
  width: 100%;
  margin: auto;
  height: fit-content;
  text-align: center;
  border-radius: 5px;
  background-image: linear-gradient(#fff, #fff);
  border: 1px solid #14595E;
  cursor: pointer;
}

.button-8 {
  width: 95%;
  height: fit-content;
  text-align: center;
  border-radius: 12px;
  background: linear-gradient(#280539, #280539);
  cursor: pointer;
}

.button-8.disabled.countdown {
  filter: none !important;
  background: linear-gradient(#28053940, #28053940);
  border: 2px solid #280539;
}

.button-8.countdown .countdown-text {
  color: #280539 !important;
}

.button-8.error {
  background: linear-gradient(#E8282B40, #E8282B40);
  border: 2px solid #E8282B;
}

.button-8.error .countdown-text {
  color: #E8282B !important;
}

.button-8.disabled {
  filter: grayscale(1) opacity(0.5);
  cursor: not-allowed;
}

.divied {
  height: 1px;
  width: 100%;
  background-image: linear-gradient(#BBBBBB, #BBBBBB);
}

.divied2 {
  height: 1px;
  width: 100%;
  background-image: linear-gradient(#E7E4DB, #E7E4DB);
}

.summit-b {
  width: 100%;
  height: fit-content;
  margin: auto;
  color: #fff;
  font-size: 1.1rem;
  border-radius: 5px;
  padding: 5px 20px;
  background-image: linear-gradient(#D61D18, #D61D18);
}

.cancel-b {
  width: 100%;
  height: fit-content;
  margin: auto;
  color: #fff;
  font-size: 1.1rem;
  border-radius: 5px;
  padding: 5px 20px;
  background-image: linear-gradient(#50DD4D, #50DD4D);
}

.search-box {
  width: 95%;
  margin: auto;
  padding: 2px 0px;
  border-radius: 500px;
  background-image: linear-gradient(90deg, #FB94E5, #FFBDF1);
  box-shadow: rgba(255, 255, 255, 0.661) 0 1px 0 inset;
}

.border-1 {
  width: fit-content;
  height: fit-content;
  background: transparent;
  border-radius: 5px;
  border: 1px solid #D8D5CE;
  cursor: pointer;
}

.border-2 {
  width: fit-content;
  height: fit-content;
  background: transparent;
  border-radius: 5px;
  border: 0.2px solid #2FA54D;
  cursor: pointer;
}

.border-2.cream-bg {
  background-image: linear-gradient(#fffcf3, #fffcf3);
}

.border-2.white-bg {
  border: 0 solid #2FA54D;
}

.border-3 {
  width: fit-content;
  height: fit-content;
  background: transparent;
  border-radius: 5px;
  border: 0.2px solid #FB1410;
  cursor: pointer;
}

.border-2 .title-text {
  font-size: min(3svw, 0.85rem) !important;
  text-wrap-mode: nowrap;
}

.border-2 .wallet-text {
  font-size: min(3.5svw, 1rem) !important;
  text-wrap-mode: nowrap;
}

.border-2 .input-text,
.border-2 .btn-text {
  font-size: min(3svw, 0.6rem) !important;
  text-wrap-mode: nowrap;
}

.border-2 .wallet-icon {
  width: 100%;
  height: 100%;
  aspect-ratio: 1;
  object-fit: contain;
  margin: 0;
}

@media only screen and (min-width: 450px) {
  /* .border-2 .title-text {
    font-size: 0.8rem !important
  }
  .border-2 .wallet-text {
    font-size: 1.25rem !important;
  }
  .border-2 .btn-text {
    font-size: 1rem !important;
  } */
}

@media only screen and (min-width: 1024px) {
  .border-2 .title-text {
    font-size: 1rem !important;
  }

  .border-2 .wallet-text {
    font-size: 1.5rem !important;
  }

  .border-2 .btn-text {
    font-size: 0.7rem !important;
  }
}

.receive-btn {
  padding: 0 5px;
  width: 100%;
  height: calc(100% - 4px);
  display: flex;
  position: relative;
  top: 2px;
  justify-content: center;
  align-items: center;
}

.coupon-input-style {
  width: calc(100% - 0.25rem);
  height: calc(100% - 4px);
  position: relative;
  top: 2px;
  font-size: min(2.6vw, 0.5rem);
  display: block;
  cursor: text;
  text-align: center;
}

/* announce - marquee */
.announce-textbox {
  /* background-color: #4D4AE8;
  background-image: linear-gradient(#29093E,#3c0064, #29093E);
  box-shadow: rgba(255, 255, 255, 0.661) 0 1px 0 inset,#9115E3 0 0px 4px;
  border-radius: 5px;
  padding: 0.25rem 0.5rem; */
  line-height: 1;
  /* margin-top: -3px; */
}

.marquee-m-container,
.marquee-container {
  height: 1.25rem;
  overflow: hidden;
  margin-left: 0.5rem;
}

.marquee-m-text,
.marquee-text {
  position: absolute;
  z-index: 1;
}

.link-ref {
  display: block;
  overflow: hidden !important;
  text-overflow: ellipsis;
  white-space: nowrap;
  padding: 0 2vw;
  text-align: left;
}

.wd-button {
  width: 100%;
  /* height: fit-content; */
  height: 50px;
  margin: auto;
  color: #fff;
  font-size: 1.1rem;
  border-radius: 5px;
  padding: 5px 20px;
  background: linear-gradient(#FF2D2D, #FF2D2D);
  box-shadow: #BF2222 0 5px 0;
  cursor: pointer;
}

.dp-button {
  width: 100%;
  /* height: fit-content; */
  height: 50px;
  margin: auto;
  color: #fff;
  font-size: 1.1rem;
  border-radius: 10px;
  padding: 5px 20px;
  background: linear-gradient(90deg, #D7071C 50%, #03256A 50%);
  box-shadow: 0 0 10px 5px #00000020;
  cursor: pointer;
}

.dp-box {
  width: 90%;
  height: fit-content;
  margin: auto;
  padding: 15px 0px;
  border-radius: 20px;
  border: 1px solid #ffffff;
}

.ref-box {
  width: 100%;
  border-radius: 15px;
  padding: 5px 8px;
  background: linear-gradient(#f2f2f242, #f2f2f242);
  box-shadow: rgba(255, 255, 255, 0.661) 0 1px 1px 1px inset, rgba(255, 234, 166, 0.4) 0px -3px 4px -1px inset;
}

.ref-box-copy {
  position: absolute !important;
  top: 0;
  right: 0;
  width: fit-content;
  height: 100%;
  border-radius: 20rem;
  padding: 5px 8px;
  background: linear-gradient(#FFFFFF, #FFFFFF);
  box-shadow: rgba(255, 255, 255, 0.661) 0 1px 1px 1px inset, rgba(255, 234, 166, 0.4) 0px -3px 4px -1px inset;

  display: flex;
  justify-content: center;
  align-items: center;
}

.input-box {
  width: 100%;
  border-radius: 15px;
  padding: 5px 8px;
  background: linear-gradient(#f2f2f242, #f2f2f242);
  box-shadow: rgba(255, 255, 255, 0.661) 0 1px 1px 1px inset, rgba(255, 234, 166, 0.4) 0px -3px 4px -1px inset;
}

.appContainer {
  position: relative;
  width: 100%;
  min-height: 100vh;
  max-width: 450px;
  margin: auto;
  box-shadow: 0 3px 1px -2px #0003, 0 2px 2px #00000024, 0 1px 5px #0000001f !important;
  overflow-x: auto;
}

.box-announce {
  background: linear-gradient(#56C252, #2FA54D);
  border-radius: 5px;
}

.sidemenu-box {
  width: 100%;
  height: fit-content;
  border-radius: 8px;
  background: linear-gradient(#FFFCF3, #FFFCF3);
  box-shadow: rgba(88, 88, 88, 0.661) 0 1px 4px;
}

.cashback-a {
  width: 90%;
  height: fit-content;
  border-radius: 200px;
  color: white !important;
  background: linear-gradient(#56C252, #56C252, #2FA54D);
}

.link-1 {
  width: 100%;
  height: fit-content;
  border-radius: 8px;
  background-color: #E7E7E7;
  box-shadow: rgba(88, 88, 88, 0.661) 0 1px 4px;
}

.link-2 {
  width: 100%;
  height: fit-content;
  border-radius: 8px;
  background-color: #FBC743;
  box-shadow: rgba(88, 88, 88, 0.661) 0 1px 4px;
}

.link-3 {
  width: 100%;
  height: fit-content;
  border-radius: 8px;
  background-color: #04C755;
  box-shadow: rgba(88, 88, 88, 0.661) 0 1px 4px;
}

.footer-box {
  z-index: 10;
  position: fixed;
  width: 100%;
  height: fit-content;
  box-shadow: rgba(88, 88, 88, 0.661) 0 -1px 4px;
  bottom: 0;
  background-color: #ffffff;
}

.jackpot-text {
  letter-spacing: 5px;
  text-indent: 5px;
  text-align: center;
  color: white;
}

.input-select-dropdown {
  position: relative;
  width: 100%;
  cursor: pointer;
}

.input-select-dropdown .selected-option {
  height: 50px;
  padding: 8px 8px 8px 14px;
  border-radius: .6rem;
  border: 0.1px solid #6e6e6e;
  line-height: normal;
}

.input-select-dropdown.popup-modal .selected-option {
  height: 50px;
  padding: 8px 20px 8px 0px;
  border-radius: 8px !important;
  border: 1px solid #BFC5D1;
  line-height: normal;
  background-color: #ffffff !important;
}

.input-select-dropdown .options {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  background: white;
  border: 1px solid #ccc;
  max-height: 200px;
  overflow-y: auto;
  z-index: 1000;
  border-radius: 0px 0px .6rem .6rem;
}

.input-select-dropdown.popup-modal .options {
  border-radius: 0px 0px .5rem .5rem;
}

.input-select-dropdown .option {
  padding: 8px 8px 8px 14px;
  line-height: normal;
}

.input-select-dropdown .option:nth-child(even) {
  background-color: #f3f6ff;
}

.input-select-dropdown .option .input-select-dropdown .option:hover {
  background-color: #f0f0f0;
}

.input-select-dropdown .bank-icon {
  width: 20px;
  object-fit: contain;
  margin-right: 8px;
  box-shadow: rgba(0, 0, 0, 0.25) 0 2px 3px;
}

.exp-bar {
  width: 100%;
  height: 13px;
  background-color: #D9D9D9;
  border-radius: 500px;
}

.exp-collet {
  width: 100%;
  height: 13px;
  background-image: linear-gradient(#FF8C97, #D7071C);
  border-radius: 500px;
}

.animation-menu {
  transform: scale(1) translateY(0);
  transition: all 0.3s ease;
}

.animation-menu.active {
  transform: scale(1.7) translateY(-6px);
}

.animation-menu1 {
  transform: scale(1) translateY(0);
  transition: all 0.3s ease;
}

.animation-menu1.active {
  transform: scale(1.6) translateY(-6px);

}

.animation-menu2 {
  transform: scale(1) translateY(0);
  transition: all 0.3s ease;
}
.animation-menu2.active {
  transform: scale(1.9) translateY(-6px);
  rotate: 10deg;
}

.animation-menu3 {
  transform: scale(1) translateY(0);
  transition: all 0.3s ease;
}

.animation-menu3.active {
  transform: scale(2) translateY(-6px);
}

.animation-menu4 {
  transform: scale(1) translateY(0);
  transition: all 0.3s ease;
}

.animation-menu4.active {
  transform: scale(1.7) translateY(-6px);
}

.circle {
  width: 15px;
  height: 15px;
  min-height: 15px !important;
  aspect-ratio: 1;
  background-color: #ffffff;
  border-radius: 500px;
  box-shadow: rgba(0, 0, 0, 0.25) 0 2px 3px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.circle-a {
  width: 10px;
  height: 10px;
  min-height: 10px !important;
  aspect-ratio: 1;
  background-color: #50DD4D;
  border-radius: 500px;
  box-shadow: rgba(0, 0, 0, 0.25) 0 2px 3px;
  transform: scale(0);
  transition: all 0.3s ease;
}

.circle-a.active {
  transform: scale(1);
}

.icon-header {
  width: 30px;
  height: 30px;
  background-image: linear-gradient(#FFFFFF, #F5F1F9);
  box-shadow: rgba(0, 0, 0, 0.25) 0 2px 3px;
  border-radius: 500px;
}

.lSSlideOuter {
  padding: 8px;
  /* Match to your shadow size */
  box-sizing: border-box;
}

.lSSlideOuter.ranking-slider {
  padding-left: 22px !important;
  padding-right: 0px !important;
}