:root {
  --lp-primary-color: #FF0083;
  --lp-pink: #FF5CB0;
  --lp-pink-light: #FFE8F4;
  --lp-white: #fff;
  --lp-shade: #F7F7F7;
  --lp-stroke: #EDEDED;
  --lp-text-light: #A6A6A6;
  --lp-text-secondary: #7B7F80;
  --lp-light-shade: #757575;
  --lp-dark-shade: #484848;
  --lp-text-primary: #3A3A3A;
  --lp-text-yelow: #EF9400;
  --lp-text-green: #04A777;
  --lp-green-light: #E9F7F2;
  --lp-gap-xxl: 56px;
  --lp-gap-xl: 32px;
  --lp-gap-l: 24px;
  --lp-gap-m: 16px;
  --lp-gap-s: 8px;
  --lp-gap-xs: 4px;
  --lp-font-xxl: 32px;
  --lp-font-xl: 24px;
  --lp-font-l: 18px;
  --lp-font-m: 16px;
  --lp-font-s: 14px;
  --lp-font-xs: 12px;
  --lp-font-xxs: 10px;
  --lp-font-xxxs: 8px;
  --content-width: 1240px;
  --side-gap: var(--lp-gap-m);
  --sidebar-width: calc((var(--content-width) - 3 * var(--lp-gap-l)) / 4);
}

.product-additions-popup.popup-wrap {
  display: flex;
  justify-content: center;
  inset: 0;
  position: fixed;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  z-index: -1;
  transition: opacity 150ms ease;
  background: #91919199;
  backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(5px);
}
.product-additions-popup.popup-wrap .popup-content {
  background: white;
  padding: 32px;
  margin: auto;
  max-height: 100dvh;
  overflow: auto;
  overflow-x: hidden;
  display: flex;
  flex-direction: column;
  width: 768px;
  max-width: 100vw;
  position: relative;
  container-type: inline-size;
}
.product-additions-popup.popup-wrap .popup-content::-webkit-scrollbar {
  overflow-y: scroll;
  background: transparent;
  width: 3px;
}
.product-additions-popup.popup-wrap .popup-content::-webkit-scrollbar-thumb {
  background: #FF0083;
  border-radius: 4px;
  width: 3px;
}
.product-additions-popup.popup-wrap .popup-content .btn.added {
  border-color: var(--lp-text-green);
  color: var(--lp-text-green);
}
.product-additions-popup.popup-wrap .popup-content .btn.added:hover {
  background: var(--lp-text-green);
  color: white;
}
.product-additions-popup.popup-wrap .popup-content .go-to-cart.btn {
  display: none;
  padding: 0;
}
.product-additions-popup.popup-wrap .popup-content .popup-additions__upsale {
  display: none;
}
.product-additions-popup.popup-wrap .popup-content .added + .go-to-cart.btn {
  display: inline-flex;
}
.product-additions-popup.popup-wrap .popup-content .added + .go-to-cart.btn + .popup-additions__upsale {
  display: flex;
}
.product-additions-popup.popup-wrap .popup-content .h2 {
  margin: 0;
  font-size: var(--lp-font-xl);
  font-weight: 600;
  position: relative;
  display: flex;
  align-items: center;
}
.product-additions-popup.popup-wrap .popup-content .h3.selected-sku {
  margin: 0;
  color: var(--lp-primary-color);
  font-size: var(--lp-font-m);
  font-weight: 600;
  margin-bottom: 16px;
}
.product-additions-popup.popup-wrap .popup-content .close {
  background: transparent;
  border: none;
  position: absolute;
  padding: 7px;
  display: flex;
  right: 0;
  opacity: 1;
  line-height: 10px;
}
.product-additions-popup.popup-wrap .popup-content .close svg {
  height: 10px;
  width: 10px;
}
.product-additions-popup.popup-wrap .popup-content .close:hover {
  color: var(--lp-primary-color);
}
.product-additions-popup.popup-wrap .popup-content .close:focus-visible {
  color: var(--lp-primary-color);
  box-shadow: none;
}
.product-additions-popup.popup-wrap .popup-content .popup-totals-wrap {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-top: 16px;
  margin-bottom: 24px;
}
.product-additions-popup.popup-wrap .popup-content .popup-totals-wrap .availability-row {
  display: flex;
  flex-wrap: wrap;
  gap: var(--lp-gap-m);
  justify-content: space-between;
  align-items: baseline;
}
.product-additions-popup.popup-wrap .popup-content .delivery-status {
  font-size: 14px;
  color: #a6a6a6;
  font-weight: 500;
  padding-top: 4px;
  max-width: 50%;
}
.product-additions-popup.popup-wrap .popup-content .delivery-status .delivery-time {
  font-weight: 600;
  color: #3a3a3a;
}
.product-additions-popup.popup-wrap .popup-content .availability-status {
  color: var(--lp-text-green);
  font-weight: 500;
  display: flex;
  gap: var(--lp-gap-s);
  align-items: center;
  background: #E9F7F2;
  font-size: 14px;
  padding: 4px 6px;
}
.product-additions-popup.popup-wrap .popup-content .price-row {
  display: flex;
  flex-wrap: wrap;
  column-gap: var(--lp-gap-m);
  justify-content: space-between;
}
.product-additions-popup.popup-wrap .popup-content .price-row .h4 {
  width: 100%;
  margin: 0;
  font-size: 16px;
  line-height: 1.5;
  font-weight: 600;
}
.product-additions-popup.popup-wrap .popup-content .price-row .h4.total-price {
  color: var(--lp-primary-color);
  font-size: 24px;
  line-height: 1.2;
}
.product-additions-popup.popup-wrap .popup-content .price-row .total-btw {
  color: var(--lp-text-light);
  font-size: 14px;
  font-weight: 500;
  line-height: 1.6;
}
.product-additions-popup.popup-wrap .popup-content .quantity-col {
  display: flex;
  max-width: 133px;
}
.product-additions-popup.popup-wrap .popup-content .quantity-col .cart-item__counter {
  height: 54px;
  border: 1px solid var(--lp-stroke);
  user-select: none;
}
.product-additions-popup.popup-wrap .popup-content .btn {
  font-size: var(--lp-font-m);
}
.product-additions-popup.popup-wrap .popup-buttons {
  display: flex;
  gap: var(--lp-gap-m);
  flex-wrap: wrap;
}
.product-additions-popup.popup-wrap .popup-buttons > * {
  flex-grow: 1;
  width: 40%;
}
.product-additions-popup.popup-wrap .selector-header {
  display: flex;
  font-size: var(--lp-font-m);
  font-weight: 600;
  padding: 16px;
  padding-bottom: 8px;
}
.product-additions-popup.popup-wrap .selector-header h4 {
  margin: 0;
  display: flex;
  font-size: 16px;
  font-weight: 600;
  line-height: 16px;
  align-items: center;
  width: 100%;
  gap: 4px;
}
.product-additions-popup.popup-wrap .selector-header .selector-toggle {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  text-decoration: none;
}
.product-additions-popup.popup-wrap .selector-block {
  display: flex;
  flex-direction: column;
  border-bottom: 1px solid #EDEDED;
  padding: 0 0 24px;
  margin-bottom: 8px;
}
.product-additions-popup.popup-wrap .selector-block.selector-collapsable .selector-selected {
  display: none;
  padding-inline: 16px;
  font-size: 14px;
  font-weight: 500;
}
.product-additions-popup.popup-wrap .selector-block.selector-collapsable .selector-selected .title {
  color: #A6A6A6;
}
.product-additions-popup.popup-wrap .selector-block.selector-collapsable .selector-selected .title.selected {
  color: var(--lp-primary-color);
}
.product-additions-popup.popup-wrap .selector-block.selector-collapsable .selector-toggle svg {
  transition: transform 150ms;
}
.product-additions-popup.popup-wrap .selector-block.selector-collapsable.collapsed {
  cursor: pointer;
}
.product-additions-popup.popup-wrap .selector-block.selector-collapsable.collapsed .selector-selected {
  display: block;
}
.product-additions-popup.popup-wrap .selector-block.selector-collapsable.collapsed .selector-options {
  display: none;
}
.product-additions-popup.popup-wrap .selector-block.selector-collapsable:not(.collapsed) .selector-toggle svg {
  transform: rotate(180deg);
}
.product-additions-popup.popup-wrap .selector-options {
  display: flex;
  flex-direction: column;
}
.product-additions-popup.popup-wrap .selector-options label.attribute-option-item {
  display: grid;
  grid-template-columns: var(--lp-gap-l) 1fr 140px 16px;
  gap: 8px;
  position: relative;
  color: var(--lp-text-secondary);
  cursor: pointer;
  font-weight: 500;
  margin: 0;
  padding: 16px;
  font-size: 14px;
}
.product-additions-popup.popup-wrap .selector-options label.attribute-option-item input {
  position: absolute;
  visibility: hidden;
  opacity: 0;
  z-index: -1;
  pointer-events: none;
  width: 0;
  height: 0;
  margin: 0;
  padding: 0;
}
.product-additions-popup.popup-wrap .selector-options label.attribute-option-item .item-text,
.product-additions-popup.popup-wrap .selector-options label.attribute-option-item .item-price-diff {
  margin-top: 1px;
}
.product-additions-popup.popup-wrap .selector-options label.attribute-option-item .item-subtitle {
  float: left;
}
.product-additions-popup.popup-wrap .selector-options label.attribute-option-item .item-title {
  display: block;
}
.product-additions-popup.popup-wrap .selector-options label.attribute-option-item:has(input:checked) {
  color: var(--lp-primary-color);
  background: #FFF1F8;
}
.product-additions-popup.popup-wrap .essential-required-message {
  color: red;
  display: inline-flex;
  background: #FDF1EF;
  padding: 4px 6px;
}
.product-additions-popup.popup-wrap .hint {
  display: flex;
  position: relative;
  align-items: center;
  height: 24px;
}
.product-additions-popup.popup-wrap .hint .hint-content {
  position: absolute;
  opacity: 0;
  pointer-events: none;
  visibility: hidden;
  transition: opacity 150ms ease;
  right: 200%;
  width: 400px;
  max-width: calc(100vw - 2 * var(--lp-gap-xxl) - 90px);
  background: var(--lp-stroke);
  padding: var(--lp-gap-m);
  z-index: 100;
  border-radius: 8px;
  white-space: pre-line;
  background: white;
  color: #7B7F80;
  font-size: 14px;
  line-height: 1.6;
  border: 1px solid #ededed;
  box-shadow: 0 4px 50px 0 #353B3C2B;
}
.product-additions-popup.popup-wrap .hint .hint-content:after {
  content: "";
  display: flex;
  position: absolute;
  width: 20px;
  aspect-ratio: 1;
  left: calc(100% - 10px);
  top: calc(50% - 10px);
  transform: rotate(45deg);
  background: white;
  border: 1px solid #ededed;
  border-left: 1px solid white;
  border-bottom: 1px solid white;
}
.product-additions-popup.popup-wrap .hint:hover svg {
  color: var(--lp-primary-color);
}
@media (min-width: 426px) {
  .product-additions-popup.popup-wrap .hint:is(:hover, :focus-within, :focus-visible) .hint-content {
    opacity: 1;
    visibility: visible;
    pointer-events: all;
  }
}

body.modal-open.open-attribute-popup .product-additions-popup.popup-wrap {
  opacity: 1;
  visibility: visible;
  pointer-events: all;
  z-index: 9999999999;
}

input:is([type=radio], [type=checkbox]) + .check-radio-mark {
  display: flex;
  aspect-ratio: 1;
  justify-content: center;
  align-items: center;
  position: relative;
}
input:is([type=radio], [type=checkbox]) + .check-radio-mark:before {
  content: "";
  display: flex;
  aspect-ratio: 1;
  width: 20px;
  position: absolute;
  border: 1px solid #EDEDED;
}
input:is([type=radio], [type=checkbox]) + .check-radio-mark:after {
  content: "";
  display: flex;
  aspect-ratio: 1;
  width: 10px;
  position: absolute;
  background: var(--lp-primary-color);
  opacity: 0;
}

input:is([type=radio], [type=checkbox]):disabled + .check-radio-mark {
  opacity: 0.4;
}

input:is([type=radio], [type=checkbox]):checked + .check-radio-mark:after {
  opacity: 1;
}

input:is([type=radio], [type=checkbox]):checked + .check-radio-mark:before {
  border: 1px solid var(--lp-primary-color);
}

input[type=checkbox] + .check-radio-mark:after {
  content: "";
  color: var(--lp-primary-color);
  background: url("../../../images/icons/check-small-white.svg");
  background-position: center;
  background-repeat: no-repeat;
  line-height: 8px;
  font-weight: 600;
}

input[type=radio] + .check-radio-mark:before, input[type=radio] + .check-radio-mark:after {
  border-radius: 50px;
}

input:is([type=checkbox]):checked + .check-radio-mark:before {
  background: var(--lp-primary-color);
}

input:is([type=checkbox]) + .check-radio-mark:before {
  border-radius: 6px;
}

.attribute-option-item:has(input:is([type=radio], [type=checkbox]):disabled) {
  background: #ededed80;
  opacity: 0.8;
}

input:is([type=radio], [type=checkbox]):disabled + .check-radio-mark:before {
  border: 1px solid #e2e2e2;
}

@media (max-width: 600px) {
  .product-additions-popup.popup-wrap .popup-content {
    padding: 16px;
  }

  .product-additions-popup.popup-wrap .popup-content .close {
    padding: 16px;
    right: 0;
    top: 0;
  }

  .product-additions-popup.popup-wrap .selector-options label.attribute-option-item .item-text, .product-additions-popup.popup-wrap .selector-options label.attribute-option-item .item-price-diff {
    margin-top: 5px;
    font-size: 14px;
    line-height: 1.2;
  }

  .product-additions-popup.popup-wrap .selector-options label.attribute-option-item {
    margin: 0;
    grid-template-columns: var(--lp-gap-l) 1fr 80px var(--lp-gap-l);
  }

  .popup-additions__tag-cart, .popup-additions__tag-heart, .popup-additions__tag-star {
    margin: 3px 0;
  }
}
@media (max-width: 425px) {
  .product-additions-popup.popup-wrap .selector-options label.attribute-option-item {
    grid-template-columns: 22px 1fr 16px;
  }
  .product-additions-popup.popup-wrap .selector-options label.attribute-option-item .item-price-diff {
    grid-column: 2/3;
    margin: 0;
  }
  .product-additions-popup.popup-wrap .hint {
    grid-column: 3/4;
    grid-row: 1;
    height: 22px;
  }
  .product-additions-popup.popup-wrap .selector-options label.attribute-option-item .item-text {
    margin-top: 3px;
  }
  .product-additions-popup.popup-wrap .selectors-wrap {
    margin-inline: -16px;
  }
  .product-additions-popup.popup-wrap .hint.show-hint .hint-content {
    opacity: 1;
    visibility: visible;
    pointer-events: all;
  }
  .product-additions-popup.popup-wrap .hint .hint-content {
    max-width: calc(100vw - 66px);
  }

  .new-design .attribute-dropdown {
    width: 100%;
    max-width: 100%;
    flex-basis: 100%;
  }
}


/* ── Configurator Extra Block (cfgblock) ───────────────────────────── */
.selector-block.cfgblock-selection .selector-options{display:flex;flex-direction:column;gap:10px}
.cfgblock-card{display:grid !important;grid-template-columns:22px 64px 1fr auto;align-items:center;gap:12px;padding:10px 14px;border:1px solid #e3e3e3;border-radius:10px;cursor:pointer;transition:border-color .15s,box-shadow .15s}
.cfgblock-card:hover{border-color:#bdbdbd}
.cfgblock-card.is-selected,.cfgblock-card input[name="cfgblock"]:checked ~ *{}
.cfgblock-card.is-selected{border-color:#ff0083;box-shadow:0 0 0 1px #ff0083 inset}
.cfgblock-card input[name="cfgblock"]{position:absolute;opacity:0;width:0;height:0}
.cfgblock-card .check-radio-mark{grid-column:1;width:20px;height:20px;border:2px solid #cfcfcf;border-radius:50%;position:relative;flex:none}
.cfgblock-card input[name="cfgblock"]:checked + .check-radio-mark{border-color:#ff0083}
.cfgblock-card input[name="cfgblock"]:checked + .check-radio-mark::after{content:"";position:absolute;inset:3px;border-radius:50%;background:#ff0083}
.cfgblock-card__img{grid-column:2;width:64px;height:64px;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:8px;background:#f6f6f6}
.cfgblock-card__img img{max-width:100%;max-height:100%;object-fit:contain}
.cfgblock-card__body{grid-column:3;display:flex;flex-direction:column;gap:2px;min-width:0}
.cfgblock-card__body .item-title{font-weight:600;line-height:1.25}
.cfgblock-card__sku{font-size:12px;color:#888}
.cfgblock-card .item-price-diff{grid-column:4;white-space:nowrap;font-weight:600;text-align:right}
@media(max-width:575px){.cfgblock-card{grid-template-columns:20px 52px 1fr auto;gap:8px;padding:8px 10px}.cfgblock-card__img{width:52px;height:52px}}

/* ── cfgblock — owner layout overrides (layered on top of base above) ── */
/* jQuery .show() forces inline display:block on .selector-options → kills flex.
   Force flex ONLY when open (:not(.collapsed)); close (.collapsed + inline none) is untouched. */
.selector-block.cfgblock-selection:not(.collapsed) .selector-options{display:flex !important}
/* openPopup adds .collapsed but leaves inline display:block on .selector-options (no slideUp),
   and base rule (no !important) loses to inline → force hide when collapsed. */
.selector-block.cfgblock-selection.collapsed .selector-options{display:none !important}
.selector-block.cfgblock-selection .selector-options{flex-direction:row;flex-wrap:wrap}
.selector-block.cfgblock-selection .selector-options label.attribute-option-item.cfgblock-card{grid-template-columns:80px 1fr;flex-grow:1;max-width:max(calc(50% - 10px),280px);padding:10px}
@media (max-width:768px){.selector-block.cfgblock-selection .selector-options label.attribute-option-item.cfgblock-card{max-width:100%}}
.selector-block.cfgblock-selection .selector-options label.attribute-option-item.cfgblock-card .check-radio-mark{display:none}
.selector-block.cfgblock-selection .selector-options label.attribute-option-item.cfgblock-card .cfgblock-card__img{grid-column:1;margin:-9px;height:90px;width:90px}
.selector-block.cfgblock-selection .selector-options label.attribute-option-item.cfgblock-card .item-price-diff{position:absolute;right:10px;bottom:10px}
.selector-block.cfgblock-selection .selector-options label.attribute-option-item.cfgblock-card .cfgblock-card__sku{line-height:1;padding-right:50px}
.selector-block.cfgblock-selection .selector-options label.attribute-option-item.cfgblock-card .cfgblock-card__body{margin-bottom:auto;grid-column:2}
.selector-block.cfgblock-selection .selector-options label.attribute-option-item.cfgblock-card .cfgblock-card__img img{object-fit:cover;width:100%;height:100%}
