/*!************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./frontend/node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./frontend/node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].use[2]!./frontend/node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[3]!./web/app/themes/codekrakers/components/cart/src/cart.scss ***!
  \************************************************************************************************************************************************************************************************************************************************************************************************************/
.twz-cart {
  --cart-width: 40rem;
  --cart-radius: 0.8rem;
  --cart-color: var(--white);
  --cart-bg: var(--grey-600);
  --cart-border: var(--beige-500, #c3bba8);
  --cart-badge-bg: var(--green-500, #496d35);
  --cart-badge-color: var(--white, #faf7f2);
  --cart-thumb: 4.8rem;
  --cart-remove: 1.8rem;
  position: relative;
  display: inline-flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
}
.twz-cart__trigger {
  position: relative;
  z-index: 2;
  anchor-name: --twz-cart-trigger;
}
.twz-cart__trigger::before {
  content: attr(data-cart-count);
  position: absolute;
  inset-block-start: -0.6rem;
  inset-inline-end: -0.5rem;
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: center;
  min-inline-size: 1.8rem;
  block-size: 1.8rem;
  padding-inline: 0.3rem;
  border-radius: 9rem;
  background-color: var(--cart-badge-bg);
  color: var(--cart-badge-color);
  font-family: var(--font-base);
  font-size: 1rem;
  font-weight: 700;
  line-height: 1;
  pointer-events: none;
}
.twz-cart__trigger[data-cart-count="0"]::before {
  content: none;
}
.twz-cart__dropdown {
  position: absolute;
  inset-block-start: calc(100% + 0.8rem);
  inset-inline-end: 0;
  z-index: 40;
  display: flex;
  flex-direction: column;
  width: min(var(--cart-width), 100vw - 2 * var(--row-margin-inline, 2rem));
  color: var(--cart-color);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  translate: 0 -0.6rem;
  transition: opacity 0.2s ease, visibility 0.2s ease, translate 0.2s ease;
  --text-color: var(--cart-color);
}
@supports (anchor-name: --twz-cart-trigger) {
  .twz-cart__dropdown {
    position-anchor: --twz-cart-trigger;
    inset-block-start: anchor(bottom);
    inset-inline-end: anchor(right);
    inset-block-end: auto;
    inset-inline-start: auto;
    padding-block-start: 0.8rem;
  }
}
@media (prefers-reduced-motion: reduce) {
  .twz-cart__dropdown {
    transition: none;
    translate: none;
  }
}
@media (max-width: 1024px) {
  .twz-cart__dropdown {
    display: none;
  }
}
.twz-cart__header {
  background-color: var(--cart-bg);
  flex-shrink: 0;
  border-radius: var(--cart-radius) var(--cart-radius) 0 0;
}
.twz-cart__totals {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 1.2rem;
  padding: 1.4rem 1.8rem;
  text-decoration: none;
  color: inherit;
}
.twz-cart__totals:hover {
  text-decoration: none;
}
.twz-cart__amount {
  font-family: var(--font-accent);
  font-size: 1.6rem;
  font-weight: 600;
  line-height: 1.2;
}
.twz-cart__amount .woocommerce-Price-amount {
  font-weight: inherit;
}
.twz-cart__count {
  font-size: 1.3rem;
  font-weight: 500;
}
.twz-cart__contents {
  display: flex;
  flex-direction: column;
  min-block-size: 0;
  border-radius: 0 0 var(--cart-radius) var(--cart-radius);
  background-color: var(--cart-bg);
  box-shadow: 0 1.2rem 3.2rem color-mix(in srgb, var(--grey-900, #151312) 18%, transparent);
  overflow: clip;
}
.twz-cart__contents .widget_shopping_cart_content {
  display: flex;
  flex-direction: column;
  min-block-size: 0;
  overflow: hidden;
  max-block-size: 0;
  transition: max-block-size 0.25s ease;
}
@media (prefers-reduced-motion: reduce) {
  .twz-cart__contents .widget_shopping_cart_content {
    transition: none;
  }
}
.twz-cart__contents .woocommerce-mini-cart__empty-message {
  margin: 0;
  padding: 1.8rem;
  font-size: 1.4rem;
}
.twz-cart__contents .woocommerce-mini-cart {
  flex: 1 1 auto;
  min-block-size: 0;
  overflow: auto;
  margin: 0;
  padding: 0 1.8rem;
  list-style: none;
}
.twz-cart__contents .mini_cart_item {
  position: relative;
  padding: 1.4rem calc(var(--cart-remove) + 0.8rem) 1.4rem calc(var(--cart-thumb) + 1.2rem);
  border-block-end: 0.1rem solid color-mix(in srgb, var(--cart-border) 70%, transparent);
  transition: background-color 0.35s ease;
}
.twz-cart__contents .mini_cart_item:last-child {
  border-block-end: 0;
}
.twz-cart__contents .mini_cart_item.is-added {
  background-color: color-mix(in srgb, var(--gold-500, #d1ad59) 14%, transparent);
}
.twz-cart__contents .mini_cart_item.is-pending-remove {
  display: none;
}
.twz-cart__contents .widget_shopping_cart_content:not(:has(.mini_cart_item:not(.is-pending-remove))) .woocommerce-mini-cart,
.twz-cart__contents .widget_shopping_cart_content:not(:has(.mini_cart_item:not(.is-pending-remove))) .woocommerce-mini-cart__buttons {
  display: none;
}
.twz-cart__contents .mini_cart_item > a:not(.remove) {
  display: block;
  color: inherit;
  font-size: 1.4rem;
  font-weight: 600;
  line-height: 1.3;
  text-decoration: none;
}
.twz-cart__contents .mini_cart_item > a:not(.remove):hover {
  text-decoration: underline;
  text-underline-offset: 0.2em;
}
.twz-cart__contents img {
  position: absolute;
  inset-block-start: 1.4rem;
  inset-inline-start: 0;
  inline-size: var(--cart-thumb);
  aspect-ratio: 1;
  -o-object-fit: contain;
     object-fit: contain;
  border-radius: 0.4rem;
  background-color: var(--beige-200, #f2ece1);
  height: auto;
}
.twz-cart__contents .remove_from_cart_button {
  position: absolute;
  inset-block-start: 1.4rem;
  inset-inline-end: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  inline-size: var(--cart-remove);
  aspect-ratio: 1;
  border-radius: 9rem;
  background-color: color-mix(in srgb, var(--grey-900, #151312) 8%, transparent);
  color: var(--cart-color);
  font-size: 1.6rem;
  line-height: 1;
  text-decoration: none;
  transition: background-color 0.2s ease, color 0.2s ease;
}
.twz-cart__contents .remove_from_cart_button:hover {
  background-color: color-mix(in srgb, var(--orange-500, #e67025) 16%, transparent);
  color: var(--orange-500, #e67025);
}
.twz-cart__contents .variation {
  display: grid;
  grid-template-columns: auto 1fr;
  -moz-column-gap: 0.8rem;
       column-gap: 0.8rem;
  margin: 0.4rem 0 0;
  padding: 0;
  border: 0;
}
.twz-cart__contents .variation :where(dt, dd, p) {
  margin: 0;
  font-size: 1.2rem;
}
.twz-cart__contents .variation dt {
  font-weight: 600;
}
.twz-cart__contents .quantity {
  display: block;
  margin-block-start: 0.4rem;
  font-size: 1.3rem;
}
.twz-cart__contents .woocommerce-mini-cart__total {
  display: none;
}
.twz-cart__contents .woocommerce-mini-cart__buttons {
  position: sticky;
  inset-block-end: 0;
  flex-shrink: 0;
  display: flex;
  gap: 0.8rem;
  margin: 0;
  padding: 0.8rem;
  background-color: var(--cart-bg);
  box-shadow: 0 -0.8rem 1.6rem color-mix(in srgb, var(--cart-bg) 80%, transparent);
}
.twz-cart__contents .woocommerce-mini-cart__buttons > a {
  text-decoration: none;
}
.twz-cart__contents .woocommerce-mini-cart__buttons .twz-cart__view {
  --btn-padding: 0;
  --btn-bg: transparent;
  --btn-color: var(--cart-color);
  --btn-bordercolor: var(--cart-color);
  inline-size: 4.8rem;
  flex-shrink: 0;
}
.twz-cart__contents .woocommerce-mini-cart__buttons .twz-cart__view :is(.twz-icon, svg) {
  --twz-icon-size: 2rem;
  aspect-ratio: 1;
  stroke: currentColor;
  fill: transparent;
}
.twz-cart__contents .woocommerce-mini-cart__buttons .twz-cart__checkout {
  flex: 1 1 auto;
}
@media (min-width: 1025px) {
  .twz-cart:is(:hover, :focus-within) .twz-cart__dropdown {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    translate: 0 0;
  }
  .twz-cart:is(:hover, :focus-within) .twz-cart__contents .widget_shopping_cart_content {
    max-block-size: min(42rem, 100vh - var(--nav-height, 8.64rem) - 8rem);
  }
}
.twz-cart.is-shown .twz-cart__dropdown {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  translate: 0 0;
}
.twz-cart.is-shown .twz-cart__contents .widget_shopping_cart_content {
  max-block-size: min(42rem, 100vh - var(--nav-height, 8.64rem) - 8rem);
}
@media (max-width: 1024px) {
  .twz-cart.is-shown .twz-cart__dropdown {
    display: flex;
  }
}
