/* .select2-container {
  width: 100% !important;
  background-color: white;
  min-height: 31px;
  min-width: 364px;
  text-align: left;
} */

.select2-container--default {
  background-color: white !important;
  color: black !important;
}

.select2-selection__arrow {
  height: 26px;
  position: absolute;
  top: 1px;
  right: 1px;
  width: 20px;
  margin: 2px 8px;
}

  .select2-selection__arrow b {
    border-color: #888 transparent transparent transparent;
    border-style: solid;
    border-width: 6px 5px 0 5px;
    height: 0;
    left: 50%;
    margin-left: -4px;
    margin-top: -2px;
    position: absolute;
    top: 50%;
    width: 0;
  }


.select2-dropdown {
  border: 1px solid #ddd !important;
}

/* .select2-container--default .select2-selection--single .select2-selection__rendered, .select2-results__option, .select2-container {
  font-size: 12px !important;
} */

.select2-container .select2-selection--single {
  /* height: 40px !important; */
  box-sizing: content-box;
}

/* .select2-container--default .select2-selection--single .select2-selection__rendered {
  line-height: 40px !important;
  padding-left: 18px !important;
} */

.select2-container--open {
  box-shadow: none !important
}

.select2-container--default .select2-selection--single {
  border: 1px solid #ddd !important;
  border-radius: 1px !important;
}

.select2-container--default .select2-results__option ul {
  margin: 0;
  padding-left: 20px;
}

.select2-container--default .select2-results__option li {
  list-style-type: disc;
  margin-left: 10px;
}
/* 
.selectedRow {

.select2-container--default .select2-results__option--highlighted[aria-selected=true],
.select2-container--default .select2-results__option--highlighted[aria-selected],
.selectedRow,
.imgSquarDropdownOptionValue:hover,
.materialDropdownOptionValue:hover, 
.sizeDropdownOptionValue:hover 
{
  background-color: #ddd !important;
} */

.select2-dropdown {
  z-index: 1 !important;
}

.product-essential .product-details-overview-grid .overview {
  border: 0px !important;
}

  .product-essential .product-details-overview-grid .overview h3 {
    background-color: white !important;
    color: #444444;
    font-size: 24px !important;
  }

.select2-container--default .select2-selection--single .select2-selection__arrow b {
  border-width: 6px 5px 0 5px !important;
}

.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b {
  border-width: 0 5px 6px 5px !important;
}

/* .product-first-add-to-cart-panel {
  padding-left: 8px !important;
} */

.overview .product-first-qty-input, .variant-overview .product-first-qty-input {
  width: 109px !important;
}

.product-first-overview .banner-text {
  margin: 20px 0;
}

.product-first-overview .banner-image {
  max-width: 100%;
  height: auto;
}

.product-first-overview .line-spacing {
  line-height: 1.6;
}

.most-popular-text {
  color: #36d07b;
}

.imgSquarDropdownOption .most-popular-text {
  font-size: 12px;
  padding-left: 5px;
}

.faux-text {
  background: #dddddd;
  border-radius: 4px;
  height: 20px;
  margin-bottom: 5px;
}

  .faux-text.short {
    width: 75%;
  }

.placeholder {
  max-width: 400px;
}

.shimmer {
  overflow: hidden;
  position: relative;
}

  .shimmer::before {
    content: "";
    position: absolute;
    background: linear-gradient( 90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.4) 50%, rgba(255, 255, 255, 0) 100% );
    height: 100%;
    width: 100%;
    z-index: 1;
    animation: shimmer 1s infinite;
  }

@keyframes shimmer {
  0% {
    transform: translateX(-100%);
  }

  100% {
    transform: translateX(100%);
  }
}
/*styles form product table manager plugin*/
#speedtabs {
  border: none;
  background: #fff;
}

.ui-tabs .ui-tabs-nav {
  display: flex;
  border: none;
  background: #fff;
  border-bottom: 1px solid #d3d3d3;
}

  .ui-tabs .ui-tabs-nav li {
    font-size: 14px;
    flex: 1;
    font-family: "Open Sans";
    text-align: center;
    color: #a9a9a9;
    font-weight: bold;
    padding: 15px;
    cursor: pointer;
    border: none;
    outline: none;
    transition: background-color .3s;
    background-color: #fff;
    white-space: unset;
  }

.ui-state-default a, .ui-state-default a:link,
.ui-state-default a:visited, a.ui-button, a:link.ui-button,
a:visited.ui-button, .ui-button {
  color: #a9a9a9;
}

.ui-tabs-nav li a {
  border: none;
}

.ui-tab:hover {
  background-color: #ddd !important;
}


  .ui-tabs-anchor {
    font-size: 20px;
    padding: 15px;
  }

@media (min-width: 901px) {
  .ui-tabs .ui-tabs-nav li, 
  .ui-tabs-nav li a {
    font-size: 20px !important;
    margin: 0px !important;
  }
}

.ui-tabs-nav li a {
  padding: 15px !important;
  font-size: 14px;
}

.ui-tabs-nav li.ui-state-active {
  background-color: #fff !important;
  color: #008035;
  border-bottom: 4px solid #008035 !important;
}

.ui-tabs-nav li.ui-state-active a {
  background-color: #fff;
}

/*** ESTIMATE SHIPPING POPUP ***/

.estimate-shipping-popup {
  position: relative;
  background: #FFF;
  padding: 25px 10px;
  width: auto;
  max-width: 800px;
  margin: 0 auto;
}

.estimate-shipping-popup-zoom-in .mfp-with-anim {
  opacity: 0;
  transition: all 0.2s ease-in-out;
  transform: scale(0.8);
}

.estimate-shipping-popup-zoom-in.mfp-bg {
  opacity: 0;
  transition: all 0.3s ease-out;
}

.estimate-shipping-popup-zoom-in.mfp-ready .mfp-with-anim {
  opacity: 1;
  transform: scale(1);
}

.estimate-shipping-popup-zoom-in.mfp-ready.mfp-bg {
  opacity: 0.8;
}

.estimate-shipping-popup-zoom-in.mfp-removing .mfp-with-anim {
  transform: scale(0.8);
  opacity: 0;
}

.estimate-shipping-popup-zoom-in.mfp-removing.mfp-bg {
  opacity: 0;
}

.shipping-options-loading {
  background: url(../images/ajax-loader-small.gif) no-repeat;
  width: 16px;
  height: 16px;
  position: relative;
  right: 8px;
  margin: 4% 50%;
}

.shipping-address .required {
  margin-left: 0px;
}

.estimate-shipping-row {
  display: flex;
  display: -webkit-flex;
  align-items: center;
}

.estimate-shipping-row.shipping-option {
  cursor: pointer;
}

.estimate-shipping-row.shipping-option.active {
  font-weight: 700;
}

.estimate-shipping-row-item {
  flex: 0 1 100%;
}

.estimate-shipping-row-item.shipping-item {
  padding: 8px 0;
  overflow: hidden;
  overflow-wrap: break-word;
}

.estimate-shipping-row-item.shipping-header-item {
  padding: 12px 0;
  border-bottom: 1px solid #f2f2f2;
  align-self: flex-end;
}

.estimate-shipping-row-item.address-item + .estimate-shipping-row-item.address-item {
  padding-left: 15px;
}

.estimate-shipping-row-item + .estimate-shipping-row-item {
  padding-left: 10px;
}

.estimate-shipping-row-item-radio {
  flex: 0 0 35px;
}

.ship-to-title {
  margin-bottom: 10px;
}

.choose-shipping-title {
  margin-top: 20px;
}

.estimate-shipping-address-control {
  width: 100%;
  height: 36px;
}

.estimate-shipping-radio {
  display: none;
}

.estimate-shipping-radio + label {
  -webkit-appearance: none;
  background-color: #fafafa;
  border: 1px solid #cacece;
  padding: 9px;
  border-radius: 50px;
  display: inline-block;
  position: relative;
}

.estimate-shipping-radio:checked + label:after {
  content: ' ';
  width: 6px;
  height: 6px;
  border-radius: 50px;
  position: absolute;
  top: 6px;
  left: 6px;
  background: #ffffff;
}

.estimate-shipping-radio:checked + label {
  background-color: #008035;
  color: #99a1a7;
  border: 1px solid #008035;
}

.apply-shipping-button {
  border: none;
  padding: 8px 25px;
  background-color: #008035;
  color: #fff;
  cursor: pointer;
}

.apply-shipping-button:hover {
  background-color: #006628;
}

.apply-shipping-button-container {
  margin-top: 15px;
  text-align: center;
}

.shipping-options-header {
  top: 0;
  z-index: 1;
  position: sticky;
  background-color: #fff;
}

.shipping-options {
  position: relative;
  z-index: 1;
  overflow: hidden;
  overflow-y: auto;
  max-height: 200px;
  background: #FFF no-repeat;
}

.no-shipping-options {
  text-align: center;
  margin: 4% 0;
}

.estimate-shipping-popup .message-failure {
  margin: 5px 0 -5px;
  font-size: 12px;
  color: #e4434b;
}

/*** PRODUCT ESTIMATE SHIPPING ***/

.product-estimate-shipping {
  margin-bottom: 20px;
}

.product-estimate-shipping .shipping-date {
  margin-top: 3px;
}

.product-estimate-shipping .shipping-title {
  font-size: 16px;
  font-weight: bold;
  color: #444;
  margin-bottom: 5px;
  display: flex;
  align-items: center;
}

.product-estimate-shipping .shipping-title .shipping-price {
  margin-left: 5px;
  vertical-align: middle;
  color: #008035;
}

.product-estimate-shipping .shipping-title .shipping-loading {
  margin-left: 5px;
  vertical-align: middle;
  background: url(../images/ajax-loader-small.gif) no-repeat;
  width: 16px;
  height: 16px;
  display: inline-block;
}

.product-estimate-shipping .open-estimate-shipping-popup {
  display: block;
  cursor: pointer;
  text-decoration: none;
  color: inherit;
}

.product-estimate-shipping .open-estimate-shipping-popup:hover {
  text-decoration: underline;
}

.product-estimate-shipping .open-estimate-shipping-popup .arrow-down {
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  margin: 0 0 3px 6px;
  border: solid black;
  border-width: 0 1px 1px 0;
  display: inline-block;
  padding: 3px;
}

.product-estimate-shipping .estimated-delivery {
  font-size: 13px;
  color: #666;
}

.product-estimate-shipping .shipping-address {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}

ul.bas-size-qty-checkboxes {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}

  ul.bas-size-qty-checkboxes li {
    display: flex;
    flex-direction: column;
    gap: 0.25rem; /* gap-1 = 4px */
  }

    ul.bas-size-qty-checkboxes li input[type="checkbox"] {
      display: none;
    }

    ul.bas-size-qty-checkboxes li label {
      align-self: flex-start;
      font-size: 0.875rem; /* text-sm */
      font-weight: 500; /* font-medium */
      color: var(--bas-primary-text-fg-color);
    }

    ul.bas-size-qty-checkboxes li .qty-box input[type="text"],
    ul.bas-size-qty-checkboxes li .qty-box input[type="number"] {
      width: 5rem; /* w-20 = 80px */
      text-align: center;
      box-shadow: inset 2px 2px 7px 0 #2f2f2f3b,inset -2px -2px 15px 2px #fff;
      border-radius: 5px;
    }

.attribute-square-input {
  display: none
}

.color-squares {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 0.625rem; /* gap-2.5 = 10px */
}

  /* li */
  .color-squares li {
    position: relative;
    border-radius: 0.375rem; /* rounded-md */
    padding-inline-start: 0;
    transition: transform 0.2s ease;
  }

    .color-squares li:hover {
      transform: scale(1.1);
    }

    /* attribute square */
    .color-squares li .attribute-square {
      display: inline-block;
      width: 2rem; /* w-8 = 32px */
      height: 2rem; /* h-8 = 32px */
      cursor: pointer;
      border-radius: 0.375rem;
      background-color: #ffffff;
      border: 1px solid var(--bas-thumb-rail-item-outline-color);
    }

    /* selected value */
    .color-squares li.selected-value {
      position: relative;
      user-select: none;
      animation: pulse-color-square-active-selection 0.3s ease-in-out forwards;
    }

      .color-squares li.selected-value::before {
        content: "";
        position: absolute;
        left: 0;
        top: 0;
        width: 2rem; /* size-1.5 = 6px */
        height: 2rem;
        user-select: none;
        border-radius: 9999px;
        background-color: var(--bas-theme-primary-color);
        box-shadow: 0 0 0 2px #ffffff, 0 0 0 2.95px #8d8d8d;
        animation: pulse-active-selection 0.4s ease-in-out forwards;
      }

  /* disabled square inside color-squares */
  .color-squares .disabled-square::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient( to top right, transparent 47%, gray 47%, gray 53%, transparent 53% );
  }

/* disabled square */
.disabled-square {
  position: relative;
  cursor: not-allowed;
  border-style: dashed;
}

  .disabled-square:hover {
    transform: none;
    box-shadow: none;
  }

  .disabled-square label {
    opacity: 0.5;
  }

  .disabled-square::after {
    content: "";
    position: absolute;
    inset: 0;
  }