.xoo-cp-modal {
  position: fixed;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 0.6rem;
  opacity: 0;
  z-index: 1200;
  background-color: rgb(var(--color-bg-contrast-rgb) / 0.5);
  pointer-events: none;
  backdrop-filter: blur(0.6rem);
  transition: 0.3s;
}
.xoo-cp-modal.xoo-cp-active {
  opacity: 1;
  pointer-events: auto;
}

.xoo-cp-container {
  width: min(100%, 70rem);
  overflow: hidden;
  border-radius: 1.2rem;
  position: relative;
  background-color: var(--color-bg);
  padding: 2.8rem 1.2rem 1.2rem;
  transform: translateY(2.8rem);
}
.xoo-cp-modal.xoo-cp-active .xoo-cp-container {
  transform: t;
}

.xoo-cp-container .xoo-cp-outer {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  z-index: 310;
  display: none;
}
.xoo-cp-container .xoo-cp-outer .xoo-cp-cont-opac {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  background-color: var(--color-bg);
  opacity: 0.75;
}
@keyframes xoo-cp-preloader {
  from {
    -ms-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -ms-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -webkit-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
.xoo-cp-container .xoo-cp-outer .xoo-cp-preloader {
  -webkit-animation: xoo-cp-preloader 2s linear infinite;
  -moz-animation: xoo-cp-preloader 2s linear infinite;
  -ms-animation: xoo-cp-preloader 2s linear infinite;
  -o-animation: xoo-cp-preloader 2s linear infinite;
  animation: xoo-cp-preloader 2s linear infinite;
}
.xoo-cp-container .xoo-cp-outer .xoo-cp-preloader .icon {
  width: 2.4rem;
  height: 2.4rem;
}

.xoo-cp-container .xoo-cp-content {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  width: 100%;
}
.xoo-cp-container .xoo-cp-content .xoo-cp-atcn {
  display: block;
  text-align: center;
  margin-bottom: 2.4rem;
  font-size: var(--font-size-h6);
  line-height: 1.2;
}

.xoo-cp-container .xoo-cp-content .xoo-cp-atcn.xoo-cp-success {
}

.xoo-cp-container .xoo-cp-content .xoo-cp-pdetails {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  width: 100%;
  background-color: var(--color-bg-muted);
  padding: 2.8rem;
  border-radius: 0.8rem;
}
.xoo-cp-container .xoo-cp-content .xoo-cp-pdetails tbody {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  width: 100%;
}
.xoo-cp-container .xoo-cp-content .xoo-cp-pdetails tbody tr {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  width: 100%;
}
.xoo-cp-container .xoo-cp-content .xoo-cp-pdetails .xoo-cp-pdetails__heading {
  display: flex;
  justify-content: flex-start;
  flex-direction: row;
  align-items: flex-start;
  width: 100%;
  gap: 2rem;
}
.xoo-cp-container .xoo-cp-content .xoo-cp-pdetails .xoo-cp-pimg {
  border-radius: 0.4rem;
  width: 25%;
  position: relative;
  overflow: hidden;
  flex-shrink: 0;
  aspect-ratio: 2/3;
}
.xoo-cp-container .xoo-cp-content .xoo-cp-pdetails .xoo-cp-pimg a {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.xoo-cp-container
  .xoo-cp-content
  .xoo-cp-pdetails
  .xoo-cp-pimg
  a
  .attachment-woocommerce_thumbnail,
.xoo-cp-container
  .xoo-cp-content
  .xoo-cp-pdetails
  .xoo-cp-pimg
  a
  .woocommerce-placeholder {
  position: absolute;
  left: 0%;
  top: 0%;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}
.xoo-cp-container .xoo-cp-content .xoo-cp-pdetails .xoo-cp-pdetails__info {
  flex-shrink: 1;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: stretch;
}
.xoo-cp-container .xoo-cp-content .xoo-cp-pdetails .xoo-cp-ptitle {
  display: block;
}
.xoo-cp-container .xoo-cp-content .xoo-cp-pdetails .xoo-cp-ptitle a {
  display: block;
  line-height: 1.2;
  font-size: var(--font-size-m);
}
.xoo-cp-container .xoo-cp-content .xoo-cp-pdetails .xoo-cp-variations {
  margin-top: 0.8rem;
  display: flex;
  flex-direction: column;
  width: 100%;
  gap: 0.6rem;
  align-items: stretch;
}
.xoo-cp-container
  .xoo-cp-content
  .xoo-cp-pdetails
  .xoo-cp-variations
  .variation {
  display: flex;
  flex-direction: row;
  gap: 0.6rem;
  font-size: var(--font-size-xs);
}
.xoo-cp-container
  .xoo-cp-content
  .xoo-cp-pdetails
  .xoo-cp-variations
  .variation
  dt {
}
.xoo-cp-container
  .xoo-cp-content
  .xoo-cp-pdetails
  .xoo-cp-variations
  .variation
  dd {
}
.xoo-cp-container .xoo-cp-content .xoo-cp-pdetails .xoo-cp-pprice {
  margin-top: 1.2rem;
}
.xoo-cp-container .xoo-cp-content .xoo-cp-pdetails .xoo-cp-pprice .amount {
  font-size: var(--font-size-m);
}
.xoo-cp-container .xoo-cp-content .xoo-cp-pdetails .xoo-cp-pprice .amount bdi {
}

.xoo-cp-container .xoo-cp-content .xoo-cp-pdetails .xoo-cp-pdetails__info .gap {
  flex-grow: 1;
  display: flex;
}

.xoo-cp-container .xoo-cp-content .xoo-cp-pdetails .xoo-cp-pqty {
  margin-top: 1.2rem;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 0.4rem;
}
.xoo-cp-container .xoo-cp-content .xoo-cp-pdetails .xoo-cp-pqty .xoo-cp-qtybox {
  display: flex;
  flex-direction: row;
  align-items: center;
  background-color: var(--color-bg);
  border-radius: 20rem;
  overflow: hidden;
  position: relative;
  height: 4.4rem;
  padding: 0.2rem;
}
.xoo-cp-container .xoo-cp-content .xoo-cp-pdetails .xoo-cp-pqty .xcp-chng {
  width: 4rem;
  height: 4rem;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 20rem;
  flex-shrink: 0;
  cursor: pointer;
  background-color: var(--color-bg-muted);
}
.xoo-cp-container
  .xoo-cp-content
  .xoo-cp-pdetails
  .xoo-cp-pqty
  .xcp-chng
  .icon {
  width: 1.2rem;
  height: 1.2rem;
}
.xoo-cp-container .xoo-cp-content .xoo-cp-pdetails .xoo-cp-pqty .xoo-cp-qty {
  width: 4rem;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  height: 4rem;
  font-size: var(--font-size-m);
  -moz-appearance: textfield;
}
.xoo-cp-container
  .xoo-cp-content
  .xoo-cp-pdetails
  .xoo-cp-pqty
  .xoo-cp-qty::-webkit-outer-spin-button,
.xoo-cp-container
  .xoo-cp-content
  .xoo-cp-pdetails
  .xoo-cp-pqty
  .xoo-cp-qty::-webkit-inner-spin-button {
  -webkit-appearance: none;
}
.xoo-cp-container
  .xoo-cp-content
  .xoo-cp-pdetails
  .xoo-cp-pqty
  .xoo-cp-remove-pd {
  background-color: var(--color-bg);
  position: relative;
  border-radius: 20rem;
  width: 4rem;
  height: 4rem;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
}
.xoo-cp-container
  .xoo-cp-content
  .xoo-cp-pdetails
  .xoo-cp-pqty
  .xoo-cp-remove-pd
  .icon {
  color: #e63247;
  width: 1.2rem;
  height: 1.2rem;
}
.xoo-cp-container .xoo-cp-content .xoo-cp-ptotal {
  display: none;
}

.xoo-cp-container .xoo-cp-btns {
  margin-top: 1.2rem;
  display: flex;
  width: 100%;
  align-items: stretch;
  justify-content: space-between;
  gap: 1.2rem;
}
.xoo-cp-container .xoo-cp-btns .xcp-btn {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 4rem;
  width: 100%;
  border-radius: 20rem;
  background-color: var(--color-accent);

  font-size: var(--font-size-s);
  padding: 0 2.4rem;
  transition: 0.3s;
}
.xoo-cp-container .xoo-cp-btns .xcp-btn:hover {
  opacity: 0.7;
}
/*.xoo-cp-container .xoo-cp-btns .xcp-btn.xoo-cp-close {
    width: 4rem;
    font-size: 1.8rem;
}
.xoo-cp-container .xoo-cp-btns .xcp-btn.xoo-cp-close:before {
    content: '\E85C';
    font-family: 'Fontello';
}
.xoo-cp-container .xoo-cp-btns .xcp-btn.xoo-cp-btn-vc {
    font-size: 1.4rem;
    font-weight: 700;
    padding: 0 3.6rem;
}*/

.xoo-cp-notice-box {
}
