collapsible-tab:not(:defined) {
  display: none;
}
collapsible-tab::part(tab-header) {
  background: var(--gradient-background);
  color: var(--color-foreground);
  cursor: pointer;
  height: var(--height, auto);
  min-height: var(--min-height, 30px);
  padding-block: var(--padding-block, 10px);
  padding-inline: var(--padding-inline, 20px);
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  display: flex;
}
collapsible-tab::part(tab-body) {
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.3s;
  display: grid;
}
collapsible-tab::part(tab-body-inner) {
  overflow: hidden;
}
collapsible-tab::part(tab-content) {
  padding-block: var(--padding-block, 10px);
  padding-inline: var(--padding-inline, 20px);
  opacity: 0;
  transition: opacity 0.3s;
}
collapsible-tab::part(tab-icon) {
  height: auto;
  width: var(--header-height, 30px);
  justify-content: flex-end;
  align-items: center;
  display: flex;
}
collapsible-tab::part(tab-icon-open),
collapsible-tab::part(tab-icon-close) {
  height: var(--icon-size, 24px);
  width: var(--icon-size, 24px);
  -webkit-user-select: none;
  user-select: none;
  justify-content: center;
  align-items: center;
  display: flex;
}
collapsible-tab::part(tab-icon-close) {
  display: none;
}
collapsible-tab[open]::part(tab-icon-close) {
  display: flex;
}
collapsible-tab[open]::part(tab-icon-open) {
  display: none;
}
collapsible-tab[open]::part(tab-body) {
  grid-template-rows: 1fr;
}
collapsible-tab[open]::part(tab-content) {
  opacity: 1;
  transition: opacity 0.4s 0.2s;
}
.shopify-block--collapsible .with-border {
  border-bottom: 1px solid var(--border-color, #000);
}
theme-select {
  font-size: inherit;
  --background-dropdown: #fff;
  --background-selected: #fff;
  --border-width: 1px;
  --border-color: #e1e1e1;
  --divider-color: #e1e1e1;
  --hover-color: #0001;
  --padding-block: 8px;
  --padding-inline: 10px;
  --padding: var(--padding-block) var(--padding-inline);
  display: block;
  position: relative;
}
theme-select::part(selected-value) {
  --icon-total-size: calc(10 + calc(2 * 2));
  --icon-total-size-sq: calc(var(--icon-total-size) * var(--icon-total-size));
  --icon-diagonal-sq: calc(var(--icon-total-size-sq) + var(--icon-total-size-sq));
  --icon-diagonal: calc(sqrt(var(--icon-diagonal-sq)) * 1px);
  border: var(--border-width) solid var(--border-color);
  padding: var(--padding);
  padding-right: calc(var(--icon-diagonal) + calc(2 * var(--padding-inline)));
  background-color: var(--background-selected);
  cursor: pointer;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  display: flex;
}
theme-select:not([open])::part(dropdown) {
  display: none;
}
theme-select::part(dropdown) {
  z-index: 1;
  width: calc(100% - 2 * var(--border-width));
  border: var(--border-width) solid var(--border-color);
  background-color: var(--background-dropdown);
  border-top: none;
  flex-direction: column;
  display: flex;
  position: absolute;
  bottom: 0;
  left: 0;
  transform: translateY(100%);
}
theme-select::part(option) {
  padding: var(--padding);
  word-wrap: normal;
  white-space: normal;
  border-bottom: var(--border-width) solid var(--divider-color);
  cursor: pointer;
  display: block;
}
theme-select::part(selected-value):after {
  content: '';
  cursor: pointer;
  transform-origin: 50%;
  pointer-events: none;
  border-top: 1px solid;
  border-left: 1px solid;
  width: 10px;
  height: 10px;
  display: block;
  position: absolute;
  top: 50%;
  right: 7.5px;
  transform: translate(-50%, -75%) rotate(-135deg);
}
theme-select[textside]:before {
  content: attr(textside);
  color: #191919;
  pointer-events: none;
  font-size: 14px;
  font-weight: 400;
  position: absolute;
  top: 50%;
  right: 35px;
  transform: translateY(-50%);
}
theme-select[open]::part(selected-value):after {
  transform: translate(-50%) rotate(45deg);
}
theme-select::part(option):hover {
  background-color: var(--hover-color);
}
theme-select::part(disabled):hover {
  background-color: unset;
  cursor: not-allowed;
}
:is(theme-select:not(:defined), sort-by-select:not(:defined)) {
  display: none;
}
@layer quanity-rocker {
  quantity-rocker {
    --border-color: #e1e1e1;
    width: fit-content;
    font-size: inherit;
    display: block;
  }
  quantity-rocker::part(wrapper) {
    width: inherit;
    font-size: inherit;
    font-family: inherit;
    font-weight: inherit;
    display: inline-flex;
  }
  quantity-rocker::part(decrement),
  quantity-rocker::part(increment),
  quantity-rocker::part(input) {
    background-color: unset;
    color: currentColor;
    border: 1px solid var(--border-color);
    font-size: inherit;
    font-family: inherit;
    font-weight: inherit;
    line-height: inherit;
    border-radius: 0;
    padding: 2px 7px;
  }
  quantity-rocker::part(decrement),
  quantity-rocker::part(increment) {
    cursor: pointer;
  }
  quantity-rocker::part(input) {
    width: inherit;
    text-align: center;
    -webkit-appearance: textfield;
    appearance: textfield;
    border-inline: none;
  }
}
message-box:not(:defined) {
  display: none;
}
message-box::part(container) {
  border-radius: 4px;
  justify-content: space-between;
  gap: 10px;
  padding: 16px;
  font-size: 14px;
  line-height: 1.5;
  display: flex;
}
message-box[type='success']::part(container) {
  background: var(--color-success-50);
  border: 1px solid var(--color-success-900);
  color: var(--color-success-900);
}
message-box[type='error']::part(container) {
  background: var(--color-error-50);
  border: 1px solid var(--color-error-900);
  color: var(--color-error-900);
}
message-box[type='info']::part(container) {
  color: var(--color-brand-700);
  background: #eaf0ff;
}
message-box[hide-close-button]::part(close-button) {
  display: none;
}
message-box::part(close-button) {
  all: unset;
  cursor: pointer;
  display: flex;
}
message-box::part(message) {
  margin: 0;
}
dy-social-proof[hidden] {
  display: none;
}
.shopify-block--product-dy-social-proof:has(dy-social-proof[hidden]) {
  display: none;
}
dy-social-proof .dy-social-proof-message {
  background-color: var(--block-gradient-background, transparent);
  color: var(--color-foreground, var(--color-brand-500));
  border-radius: 4px;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  font-family: inherit;
  font-size: 14px;
  font-weight: 700;
  line-height: 20px;
  display: inline-flex;
}
dy-social-proof .dy-social-proof-icon {
  flex-shrink: 0;
  width: 24px;
  height: 24px;
}
dy-social-proof .dy-social-proof-icon svg {
  width: 100%;
  height: 100%;
  display: block;
}
dy-social-proof .dy-social-proof-icon svg path {
  stroke: currentColor;
}
