/* =========================================
   1. Theme Variables (আপনার থিমের কালার)
   ========================================= */
:root {
  --color-primary-50: 253 242 248;
  --color-primary-100: 252 231 243;
  --color-primary-200: 251 207 232;
  --color-primary-300: 249 168 212;
  --color-primary-400: 255 159 56;
  --color-primary-500: 255 64 81;
  --color-primary-600: 219 39 119;
  --color-primary-700: 190 24 93;
  --color-primary-800: 157 23 77;
  --color-primary-900: 131 24 67;
  --color-primary-950: 80 7 36;
  --color-primary-DEFAULT: var(--color-primary-500);

  --color-gray-50: 249 250 251;
  --color-gray-100: 243 244 246;
  --color-gray-200: 229 231 235;
  --color-gray-300: 209 213 219;
  --color-gray-400: 156 163 175;
  --color-gray-500: 107 114 128;
  --color-gray-600: 75 85 99;
  --color-gray-700: 55 65 81;
  --color-gray-800: 31 41 55;
  --color-gray-900: 17 24 39;
  --color-gray-950: 3 7 18;

  --primary-color: var(--theme-color);
  --secondary-color: #081149;
  --btn-secondary-color: #ee7f1a;
  --btn-primary-color: var(--theme-color);
}

.dark {
  --color-primary-DEFAULT: var(--color-primary-400);
}

/* =========================================
   2. Components & Layout
   ========================================= */

/* (নোট: .container, .p-4 ডিলিট করা হয়েছে যাতে Tailwind কাজ করে) */

.product__description {
  height: 29px;
  overflow: hidden;
}

.list-group-item {
  border: 1px solid #e5e7eb; /* Tailwind Gray-200 */
  border-radius: 4px;
  color: #4b5563; /* Tailwind Gray-600 */
  display: table-cell;
  text-decoration: none;
  word-break: break-word;
  font-size: 14px;
  font-weight: 700;
  text-align: center;
}

.list-group-item + .list-group-item {
  border-top-width: 1px;
}

/* Badge Style */
.element-check-label {
  background-color: var(--theme-color) !important;
  border: 1px solid var(--theme-color);
  color: #fff;
  height: 52px;
  left: -1px;
  line-height: 52px;
  position: absolute;
  top: -19px;
  transform: rotate(45deg) scaleX(-1);
  width: 20px;
  z-index: 5;
  font-size: 14px;
  font-weight: 700;
  text-align: center;
}

.section {
  padding: 15px 5px;
  position: relative;
}

/* Steps Circle */
.circle {
  color: #333;
  font-size: 15px;
  margin-bottom: 8px;
  margin-top: -12px;
  padding-left: 55px;
}

.circle span {
  border: 4px solid #39a883;
  border-radius: 50%;
  color: #fcfcfc;
  font-size: 18px;
  font-weight: 700;
  height: 36px;
  left: 10px;
  line-height: 30px;
  margin-right: 5px;
  position: absolute;
  top: -10px;
  width: 36px;
  background-color: #39a883;
  text-align: center;
}

.ico-question {
  background-color: #39a883;
  text-align: center;
  border-radius: 50%;
  color: #fff;
  cursor: pointer;
  display: inline-block;
  height: 24px;
  line-height: 24px;
  width: 24px;
}

/* =========================================
   3. Animations & Transitions
   ========================================= */
.ease-in-out[data-v-4c1ace0e] {
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}
.duration-300[data-v-4c1ace0e] {
  transition-duration: 0.3s;
}
.translate-x-full[data-v-4c1ace0e] {
  --tw-translate-x: 100%;
}
.translate-x-0[data-v-4c1ace0e] {
  --tw-translate-x: 0px;
}

/* =========================================
   4. Footer Styles
   ========================================= */
.footer_nav a[data-v-4c1ace0e] {
  background: unset !important;
  color: #bbb8b8;
  font-family: "Bree Serif", serif !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 23px;
}

.footer_nav .nuxt-link-active[data-v-4c1ace0e] {
  color: #fff !important;
}

.footer-contact-icon1[data-v-4c1ace0e] {
  border: 1px solid #9c9c9c;
}

.footer-bg {
  background-color: var(--footer-color) !important;
  color: var(--footer-font-color) !important;
}

.footer-bg a {
  color: var(--primary-font-color);
}

.footer-title,
.footer_description,
.footer-bg p,
.footer-bg .number {
  color: var(--footer-font-color) !important;
}

.footer_description {
  background: unset !important;
  color: rgb(173, 173, 173);
  font-family: "Bree Serif", serif !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  line-height: 16px;
}

.social_icon,
.footer-contact-icon1[data-v-4c1ace0e] {
  border-color: var(--footer-font-color) !important;
}

.social_icon svg,
.footer-contact-icon1[data-v-4c1ace0e] svg {
  color: var(--footer-font-color) !important;
}

/* =========================================
   5. Plugins (Carousel & Toast)
   ========================================= */
.pwa-toast {
  border: 1px solid #8885;
  border-radius: 4px;
  bottom: 0;
  margin: 16px;
  padding: 12px;
  position: fixed;
  right: 0;
  text-align: left;
  z-index: 10001 !important;
}
.pwa-toast .message {
  margin-bottom: 8px;
}
.pwa-toast button {
  border: 1px solid #8885;
  border-radius: 2px;
  margin-right: 5px;
  outline: none;
  padding: 3px 10px;
}

.carousel__track {
  display: flex;
  transition: transform 1s ease-in-out;
}
.carousel__slide {
  min-width: 100%;
  transition: opacity 1s ease-in-out;
}
.current-slide {
  opacity: 1;
}
.carousel__slide:not(.current-slide) {
  opacity: 1;
}

@media (max-width: 767px) {
  .carousel.my-4 {
    margin-top: 0.5rem !important;
  }
}

/* =========================================
   6. Checkout Page & Forms
   ========================================= */

/* Variation Select (Border Color Fix) */
.selected_variation {
  font-size: 11px;
  position: relative;
  overflow: hidden;
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 50px;
  background: rgb(255, 247, 242);
  /* Tailwind friendly border */
  border: 1px solid var(--theme-color) !important;
  outline: 1px solid var(--theme-color) !important;
  z-index: 0;
}

.selected_variation::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: var(--theme-color);
  opacity: 0.05;
  z-index: -1;
}

/* Input Fields - Reset for Tailwind */
.checkout_page .form-input,
.checkout_page .form-multiselect,
.checkout_page .form-select,
.checkout_page .form-textarea {
  --tw-shadow: 0 0 #0000 !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  appearance: none !important;
  background-color: #fff !important;
  border: 1px solid rgb(107, 114, 128) !important; /* Proper Border */
}

/* Shadows & Rings */
.checkout_page .ring-1 {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0
    var(--tw-ring-offset-width) var(--tw-ring-offset-color) !important;
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0
    calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color) !important;
  box-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width)
      var(--tw-ring-offset-color),
    var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width))
      var(--tw-ring-color),
    0 0 #0000 !important;
}

.checkout_page .shadow-sm {
  --tw-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05) !important;
  box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05) !important;
}

.checkout_page .shadow-lg {
  box-shadow: unset !important;
}

.checkout_page .pb-5 {
  padding-left: 12px !important;
  padding-right: 12px !important;
}

/* Button Fixes - Matching Theme but allowing Tailwind */
.checkout_page .buy_now_btn,
.checkout_page .checkout_login {
  background-color: var(--theme-color);
  color: #fff;
  transition: background-color 0.3s;
}

.checkout_page .buy_now_btn:hover,
.checkout_page .buy_now_btn:active,
.checkout_page .checkout_login:hover,
.checkout_page .checkout_login:active {
  background-color: #be185d; /* Darker Pink */
}

/* Links */
a.text-primary-500 {
  color: rgb(var(--color-primary-500) / 1) !important;
}

.google-link {
  display: inline-flex;
  align-items: center;
}
.google-link svg {
  margin-right: 8px;
}

/* General Layout */
.body-bg {
  background-color: var(--background-color) !important;
  background-image: var(--background-image);
  color: var(--primary-font-color) !important;
}

._order_header_step_circle {
  background-color: var(--theme-color) !important;
  border-color: var(--theme-color) !important;
  color: var(--background-color) !important;
}

.top-profile {
  background-color: var(--theme-color) !important;
  color: var(--background-color) !important;
  background-image: none;
}

.header {
  background-color: var(--navigation-background-color) !important;
  color: var(--navigation-font-color) !important;
}

.header a.link {
  color: var(--navigation-font-color) !important;
}

a.text-gray-900:hover,
a.text-gray-900:active {
  color: var(--theme-color) !important;
}

.text-secondary-500 {
  color: var(--primary-font-color) !important;
}

.btn-secondary {
  background-color: #6c757d !important;
}

/* Divider & Borders */
hr {
  opacity: 0.1 !important;
}
hr.section-divider {
  opacity: 1 !important;
}
.section-divider {
  opacity: 1;
}
.border-b-2 {
  border-bottom-color: rgba(229, 231, 235, 0.5) !important;
}

/* Lists: Transactions, Deposits, Orders */
.transactions-list,
.deposits-list,
.orders-list {
  padding-bottom: 5px;
}

.transactions-list p,
.transactions-list span,
.deposits-list p,
.deposits-list span,
.orders-list p,
.orders-list span {
  font-family: "Roboto", sans-serif !important;
  font-size: 16px !important;
}

.copy-icon {
  all: unset;
  display: flex;
  margin: 0px 12px;
  background: rgb(224, 224, 224);
  border: 2px solid rgb(109, 109, 109);
}

.copy-icon .icon {
  width: 20px;
  height: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: rgb(40, 70, 153);
  font-size: 20px;
  font-weight: 900;
  margin-right: 6px;
}

.code-btn {
  font-family: "Roboto", sans-serif !important;
  font-size: 14px !important;
  font-weight: 100 !important;
}

.redem-btn {
  font-family: "Roboto", sans-serif !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  padding: 4px 16px !important;
  border-radius: 0.25rem !important;
  margin-bottom: 0.75rem !important;
  margin-top: 0.75rem !important;
  max-width: 125px !important;
  max-height: 50px !important;
}

.deposit-status,
.order-status {
  font-weight: 700 !important;
}

/* Fix Container Padding for Specific Pages */
.transactions .container,
.deposits .container,
.orders .container {
  padding-left: 0px !important;
  padding-right: 0px !important;
}

/* Margin/Padding Utils specific to these pages */
.transactions .m-4,
.orders .m-4 {
  margin-top: 1rem !important;
  margin-bottom: 2rem !important;
}
.deposits .m-4 {
  margin-top: 1rem !important;
  margin-bottom: 3rem !important;
}
.transactions .pxa-4,
.deposits .pxa-4,
.orders .pxa-4 {
  padding-left: 0.5rem !important;
  padding-right: 0.5rem !important;
}

@media (max-width: 768px) {
  .transactions .mxa-4,
  .deposits .mxa-4,
  .orders .mxa-4 {
    margin-left: 1rem !important;
    margin-right: 1rem !important;
  }
  .transactions .pxa-4,
  .deposits .pxa-4,
  .orders .pxa-4 {
    padding-left: 1rem !important;
    padding-right: 1rem !important;
  }
}

.transactions-not-found,
.deposit-not-found,
.order-not-found {
  max-width: 400px;
  margin: 20px 0px;
  padding: 20px 15px !important;
  box-shadow: 0 0 transparent, 0 0 transparent,
    0 10px 15px -3px rgba(0, 87, 208, 0.1), 0 4px 6px -4px rgba(0, 87, 208, 0.1);
  border: 1px solid rgb(237, 242, 247);
  border-radius: 0.5rem;
}

.profile-top {
  min-height: 80px;
}

.user_style_profile {
  background-clip: content-box, border-box;
  background-image: linear-gradient(#fff, #fff),
    linear-gradient(180deg, #fff, var(--theme-color));
  background-origin: border-box;
  border: 8px double transparent;
  border-radius: 50%;
  height: 110px;
}

.statics-container .text-lg {
  margin: 0px;
  padding: 0px;
}
.statics-container .statics {
  border-color: var(--theme-color) !important;
  padding: 20px;
}
.statics-container .statics .statics-heading {
  color: var(--theme-color) !important;
}

.primary-font-color-text {
  color: var(--primary-font-color) !important;
}
.theme-color-text {
  color: var(--theme-color) !important;
}

.account-info-container {
  border-radius: 0.375rem;
  border-width: 1px;
}
.account-info-container label {
  margin: 8px 0px 5px 0px !important;
  display: block !important;
}

.font-16 {
  font-size: 16px !important;
}
.font-bold {
  font-weight: 600 !important;
}

@media (max-width: 768px) {
  .btn-right-mobile {
    float: right;
    top: -5px !important;
    position: relative;
  }
}

label {
  display: unset;
}

@media (min-width: 768px) {
  .md\:p-3 {
    padding: 0.75rem !important;
  }
  .md\:px-3 {
    padding-left: 0.75rem !important;
    padding-right: 0.75rem !important;
  }
}

/* Forms */
.add_money_form input[type="text"],
.add_money_form input[type="number"],
.login input[type="email"],
.login input[type="password"] {
  width: 100% !important;
}

.add_money_form .bg-white,
.login .bg-white {
  background-color: #fff !important;
}

/* Ring Fixes for Forms */
.add_money_form .ring-1,
.login .ring-1 {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0
    var(--tw-ring-offset-width) var(--tw-ring-offset-color) !important;
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0
    calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color) !important;
  box-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width)
      var(--tw-ring-offset-color),
    var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width))
      var(--tw-ring-color),
    0 0 #0000 !important;
}

.deposits div.my-4 {
  margin-bottom: 0px !important;
}
.w-auto {
  width: auto !important;
}

.login .pb-1 {
  padding-bottom: 0.25rem !important;
}
.login .pt-5 {
  padding-top: 1.25rem !important;
}
.login .mb-5 {
  margin-bottom: 1.25rem !important;
}

.login .alert-white {
  word-wrap: break-word !important;
  color: #f63232 !important;
  font-size: 12px !important;
  -webkit-hyphens: auto !important;
  hyphens: auto !important;
  line-height: 12px !important;
  margin-top: 10px !important;
  margin-bottom: 0px !important;
  overflow-wrap: break-word !important;
  word-break: break-word !important;
  display: inline-block;
  padding: 0px !important;
}

.gamename1 {
  align-items: center;
  background-image: url("/assets/template/images/banner.png");
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  border-radius: 6px;
  color: #fff;
  cursor: pointer;
  display: flex;
  justify-content: center;
  margin-bottom: 10px;
  margin-top: 10px;
  padding: 6px 10px;
  text-align: center;
  width: 100%;
}

.site-single-support {
  background: #e5eeff33;
  border: 1px solid #d7e8ff;
  border-radius: 0.5rem;
  color: #485263;
  padding: 0.75rem 1rem;
}

[x-cloak] {
  display: none !important;
}

.custom-crack {
  clip-path: polygon(
    0% 48%,
    9% 51%,
    19% 65%,
    26% 48%,
    35% 75%,
    44% 56%,
    56% 73%,
    63% 57%,
    72% 84%,
    80% 51%,
    91% 63%,
    100% 69%,
    100% calc(100% + 1px),
    0 calc(100% + 1px)
  );
  height: 25px;
  margin-top: -20px;
  width: 100%;
}

.custom-crack {
  background-color: var(--content-box-bg);
}

.border-b-3 {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 3px;
}
@property --tw-border-style {
    syntax: "*";
    inherits: false;
    initial-value: solid;
}

.border-b-primary {
    border-bottom-color: var(--color-primary);
}

.aspect-square {
    aspect-ratio: 1 / 1;
}
