.card-cvv-month {
  display: flex;
  align-items: center;
  width: 100%;
}

.card-number-container {
  width: 100%;
}

.cccvv-ccexpiry-container {
  display: flex;
  align-items: center;
  width: 100%;
  gap: 10px;
}

.ccnumber {
  border: none !important;
  box-shadow: none !important;
}

.ccexpiry {
  border: none !important;
  box-shadow: none !important;
}

.cccvv {
  border: none !important;
  box-shadow: none !important;
}

.ccnumber input {
  /* width: 100% !important; */
  width: -webkit-fill-available;
  padding: 10px !important;
  border: none !important;
  box-shadow: none !important;
  background: white !important;
  margin: 0px !important;
}

.ccexpiry input {
  width: -webkit-fill-available;
  padding: 10px !important;
  border: none !important;
  box-shadow: none !important;
  margin: 0px !important;
}

.cccvv input {
  width: -webkit-fill-available;
  padding: 10px !important;
  border: none !important;
  box-shadow: none !important;
  margin: 0px !important;
}

.ccnumber input:focus {
  border: none !important;
  outline: none !important;
}

.ccexpiry input:focus {
  border: none !important;
  outline: none !important;
}

.cccvv input:focus {
  border: none !important;
  outline: none !important;
}

.ccnumber input:focus-visible {
  border: none !important;
  outline: none !important;
}

.ccexpiry input:focus-visible {
  border: none !important;
  outline: none !important;
}

.cccvv input:focus-visible {
  border: none !important;
  outline: none !important;
}

/* Container styling */
.card-form-container {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin: 15px 0px;
  flex-direction: column;
}

/* Input field styling */
.ccnumber {
  width: 100%;
}

.ccnumber:focus {
  border-color: #0073aa; /* Add a focus effect */
}

.google-pay-button {
  width: 100% !important;
  margin: 10px 0px;
}

.or-section {
  display: flex;
  align-items: center;
  width: 100%;
  gap: 10px;
}

.or-section .or-section-hr {
  height: 1px;
  background-color: lightgrey;
  width: 100%;
}

.ccnumber-input-container {
  position: relative;
  display: inline-block;
  width: 100%;
  padding: 1px !important;
  border: 1px solid #e6e6e6;
  box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.03), 0px 3px 6px rgba(0, 0, 0, 0.02);
  border-radius: 4px;
  background: white;
}

.ccnumber-icon {
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none; /* This ensures the icon doesn't block input clicks */
  fill: #999; /* Color of the icon */
  width: 150px;
}

.ccnumber-input-container .ccnumber .css-1t5ousf {
  margin-bottom: 0px !important;
}

.ccexpiry-input-container {
  position: relative;
  display: inline-block;
  width: 100%;
  padding: 1px;
  border: 1px solid #e6e6e6;
  box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.03), 0px 3px 6px rgba(0, 0, 0, 0.02);
  border-radius: 4px;
  background: white;
}

.ccexpiry-input-container .ccexpiry .css-1t5ousf {
  margin-bottom: 0px !important;
}

.fs-12 {
  font-size: 12px;
}

.cvv-input-container {
  position: relative;
  display: inline-block;
  width: 100%;
  padding: 1px;
  border: 1px solid #e6e6e6;
  box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.03), 0px 3px 6px rgba(0, 0, 0, 0.02);
  border-radius: 4px;
  background: white;
}

.cvv-input-container:focus {
  outline: var(--focusOutline);
  border-color: var(--colorPrimary);
  box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.03), 0px 3px 6px rgba(0, 0, 0, 0.02),
    var(--focusBoxShadow);
}

.cvv-input-container .cccvv .css-1t5ousf {
  margin-bottom: 0px !important;
  overflow: none !important;
}

.cvv-icon {
  position: absolute;
  right: 10px;
  top: 50%;
  width: 36px;
  transform: translateY(-50%);
  pointer-events: none; /* This ensures the icon doesn't block input clicks */
  fill: #999; /* Color of the icon */
}

.ccnumber-container {
  width: 100%;
}

.ccexpiry-container {
  width: 50%;
}

.cccvv-container {
  width: 50%;
}

.card-label {
  font-size: 0.93rem !important;
}

.error-message {
  color: #df1b41;
  font-size: 10px;
  margin-top: 4px;
}

.error-border {
  border: 1px solid #df1b41 !important;
  outline: none;
}

.loading-message {
  color: #333; /* Dark gray text color */
  font-size: 10px;
  margin-top: 4px;
}

:where(.wp-site-blocks *:focus) {
  outline: none !important;
}

/* Extra small devices (phones, 600px and down) */
@media only screen and (max-width: 600px) {
  .card-form-container {
    flex-direction: column;
  }
  .card-number-container {
    width: 100%;
  }
  .cccvv-ccexpiry-container {
    width: 100%;
    flex-direction: column;
  }
  .ccexpiry-container {
    width: 100%;
  }
  .cccvv-container {
    width: 100%;
  }
  body.woocommerce-checkout .express-form {
    flex-direction: column;
  }
}

/* Extra small devices (phones, 600px and down) */
@media only screen and (min-width: 425px) {
  .cccvv-ccexpiry-container {
    width: 100%;
    flex-direction: row;
  }
}

/* Disable the button (grayed out and unclickable) */
.wc-block-components-checkout-place-order-button.disable {
  opacity: 0.5;
  pointer-events: none !important; /* Prevents clicking the button */
}

/* Enable the button (normal clickable state) */
.wc-block-components-checkout-place-order-button.enable {
  opacity: 1;
  pointer-events: auto !important; /* Allows clicking the button */
}

/* .wc-block-components-notices .is-error{
  display: none !important;
} */

/* General styling for the form */
.card-form {
  width: auto;
  /* width: 100%; */
  /* max-width: 600px; */
  margin: 0 auto; /* Center the form */
  /* padding: 20px; */
}

.express-form {
  display: flex;
  justify-content: center;
  gap: 10px;
}

/* On Checkout Page */
body.woocommerce-checkout .express-form {
  display: flex;
  align-items: center;
}

/* On cart Page */
body.woocommerce-cart .express-form {
  display: flex;
}

.p-CardCvcIcons-svg {
  display: block;
  height: 1.95em;
  width: 1.95em;
}

.p-CardBrandIcon,
.p-CardErrorIcon svg {
  display: block;
  height: auto;
  width: 1.95em;
}

/* General styling for the form */
.ach-form {
  width: auto;
  /* width: 100%; */
  /* max-width: 600px; */
  margin: 15px auto; /* Center the form */
  /* padding: 20px; */
}

/* Initially hidden */
.page-loader {
  display: none; /* Hide it initially */
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.8); /* semi-transparent background */
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 9999; /* Ensure it's on top */
}

/* When loader is visible */
.page-loader.visible {
  display: flex; /* Make the loader visible */
}

/* Full Circle Loader */
.loader-spinner {
  border: 6px solid rgba(255, 255, 255, 0.3); /* Semi-transparent border */
  border-top: 6px solid rgba(119, 118, 118, 0.3); /* Color of the spinner */
  border-radius: 50%; /* Full circle */
  width: 80px; /* Spinner size */
  height: 80px; /* Spinner size */
  animation: spin 1s linear infinite; /* Continuous rotation */
}

/* Full Circle Spin Animation */
@keyframes spin {
  0% {
    transform: rotate(0deg); /* Start rotation at 0 degrees */
  }
  100% {
    transform: rotate(360deg); /* Complete one full rotation */
  }
}

.wc-block-checkout__payment-method
  .wc-block-components-radio-control-accordion-option
  .wc-block-components-radio-control__label
  img {
  max-height: 30px !important;
  height: 30px !important;
}

.gpay-container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
}

/* body.woocommerce-cart #express-payment-method-ipospays_express_checkout {
  display: none;
} */

.gpay-button.black.checkout:hover {
  background-repeat: no-repeat !important;
  background-size: auto !important;
  background-position: center !important;
}

.btn-loading {
  width: 100%;
  height: 40px;
  text-align: center;
  line-height: 30px;
  border-radius: 5px;
}

.btn-loading.is-loading {
  background: #eee;
  background: linear-gradient(110deg, #ececec 8%, #f5f5f5 18%, #ececec 33%);
  background-size: 200% 100%;
  animation: 1.5s shine linear infinite;
}

@keyframes shine {
  to {
    background-position-x: -200%;
  }
}

.gpay-card-info-container {
  min-width: none;
}

/* .payment_method_ipospays img{
  display: none;
} */

#add_payment_method #payment ul.payment_methods li img,
.woocommerce-cart #payment ul.payment_methods li img,
.woocommerce-checkout #payment ul.payment_methods li img {
  margin: 0px !important;
}
