:root {
  /* Bundle variables (set by JS via orichiApplyThemeVars from API response) */
  --bundle-card-background: #ffffff; /* setting.BundleCardBackground */
  --bundle-card-border-radius: 8px; /* setting.BundleCardBorderRadius */
  --bundle-card-border-color: #e5e7eb; /* setting.BundleCardBorderColor */
  --bundle-featured-background: #f3f4f6; /* setting.BundleFeaturedBackground */
  --bundle-featured-border-style: solid; /* setting.BundleFeaturedBorderStyle */
  --bundle-featured-border-color: #f43f5e; /* setting.BundleFeaturedBorderColor */
  --bundle-popular-badge-background: #fee2e2; /* setting.BundlePopularBadgeBackground */
  --bundle-popular-badge-color: #b91c1c; /* setting.BundlePopularBadgeColor */
  --bundle-save-badge-background: #fef3c7; /* setting.BundleSaveBadgeBackground */
  --bundle-save-badge-color: #92400e; /* setting.BundleSaveBadgeColor */
  --bundle-save-badge-border-radius: 4px; /* setting.BundleSaveBadgeBorderRadius */
}

/* Bundle item */
.bundle-table,
.bundle-table * {
  box-sizing: border-box;
}

.bundle-table {
  width: 100%;
  max-width: 100%;
}

.bundle-item {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  position: relative;
  cursor: pointer;
  background: var(--bundle-card-background);
  border-radius: var(--bundle-card-border-radius);
  padding: 16px 18px;
  border: 1px solid var(--bundle-card-border-color);
}

.bundle-item--selected {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  position: relative;
  cursor: pointer;
  background: var(--bundle-featured-background);
  border-radius: var(--bundle-card-border-radius);
  padding: 16px 18px;
  border: 1px var(--bundle-featured-border-style) var(--bundle-featured-border-color);

  & .select-variant-list {
    display: block;
  }
}

/* Top row: image + title/badge/subtitle on the left, price on the right.
   The variant selector rows live outside this row (as .select-variant-list,
   a sibling below it) so they always span the full card width instead of
   being squeezed by the price column's width. Kept on one line (no wrap) per
   product decision — text/badge/price are sized to fit instead. */
.bundle-item-top {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: flex-start;
  gap: 8px;
  width: 100%;
}

.bundle-item-popular {
  display: flex;
  position: absolute;
  top: -10px;
  right: 20px;
  max-width: min(108px, calc(100% - 40px));
  color: var(--bundle-popular-badge-color);
  overflow: hidden;
}

.bundle-item-popular svg {
  display: block;
  width: 100%;
  height: auto;
}

/* Reserve clearance under the "Most popular" ribbon so it never sits on top
   of the title or the price when the card is short/narrow. */
.bundle-item-popular ~ .bundle-item-top .bundle-item-left {
  padding-top: 10px;
}
.bundle-item-popular ~ .bundle-item-top .bundle-item-right {
  padding-top: 10px;
}

.bundle-item-shimmer {
  position: absolute;
  top: 0;
  bottom: 0;
  left: -50%;
  width: 40%;
  pointer-events: none;
  background: linear-gradient(110deg, transparent 0%, rgba(255, 255, 255, 0.3) 50%, transparent 100%);
  animation: shimmer 2.2s linear infinite;
}

.bundle-item-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #2cd12a;
  position: relative;
  z-index: 1;
  animation: blink 1.2s infinite;
}

.bundle-item-left {
  display: flex;
  gap: 8px;
  flex: 1 1 auto;
  min-width: 0;
}

.bundle-item-image-wrapper {
  flex-shrink: 0;
}

.wrapper-text-select-variant {
  display: flex;
  flex-direction: column;
  gap: 4px;
  flex: 1 1 auto;
  min-width: 0;
}

.bundle-item-title-row {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  gap: 8px;
  min-width: 0;
}

.bundle-item-badge {
  background: var(--bundle-save-badge-background);
  color: var(--bundle-save-badge-color);
  font-size: 11px;
  font-weight: 700;
  padding: 2px 7px;
  border-radius: var(--bundle-save-badge-border-radius);
  flex-shrink: 0;
  white-space: nowrap;
}

.bundle-item-title {
  font-size: 14px;
  color: #151c32;
  z-index: 20;
  min-width: 3em;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.bundle-item-subtitle {
  font-size: 12px;
  color: #64748b;
  margin-top: 3px;
  z-index: 20;
}
.bundle-item-right {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  flex-shrink: 0;
  margin-left: auto;
  text-align: right;
}
.bundle-item-price {
  font-size: 14px;
  color: #151c32;
  font-weight: 700;
  white-space: nowrap;
}
.bundle-item-old-price {
  font-size: 12px;
  color: #94a3b8;
  text-decoration: line-through;
  margin-top: 3px;
  text-align: right;
  white-space: nowrap;
}
.bundle-item-image {
  width: 42px;
  height: 42px;
  object-fit: cover;
  border-radius: 8px;
}

.bundle-table {
  position: relative;
  margin: 12px 0;

  .orichi-Polaris-DataTable__ScrollContainer {
    display: flex;
    flex-direction: column;
    gap: 16px;
  }
}

/* Custom Select Dropdown Styles */
.custom-select-container {
  position: relative;
  width: 80px;
  flex: 1 1 64px;
  min-width: 64px;
  max-width: 90px;
}

.custom-select-trigger {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 7px 11px;
  background: var(--bundle-variant-dropdowns-background);
  border: 1px solid var(--bundle-variant-dropdowns-border);
  border-radius: 8px;
  cursor: pointer;
  transition: all 0.2s ease;
  user-select: none;
}

.custom-select-trigger:hover {
  border-color: #9ca3af;
}

.custom-select-trigger:focus-within {
  border-color: #3b82f6;
  box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.1);
}

.custom-select-value {
  flex: 1;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: #374151;
}

.custom-select-arrow {
  width: 10px;
  height: 10px;
  transition: transform 0.2s ease;
  flex-shrink: 0;
}
.custom-select-container.open .custom-select-arrow {
  transform: rotate(180deg);
}

.custom-select-menu {
  position: absolute;
  top: calc(100% + 4px);
  left: 0;
  right: 0;
  background: #ffffff;
  border: 1px solid #d1d5db;
  border-top: none;
  border-radius: 0 0 4px 4px;
  margin-top: -1px;
  max-height: 0;
  overflow: hidden;
  z-index: 1000;
  transition: max-height 0.2s ease;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  display: none;
}

.custom-select-menu.open {
  display: block;
  max-height: 300px;
  overflow-y: auto;
  border-radius: 8px;
}

.custom-select-menu.open .custom-select-arrow {
  transform: rotate(180deg);
}

.custom-options-wrapper {
  display: flex;
  flex-direction: column;
}

.custom-option {
  padding: 10px 12px;
  cursor: pointer;
  transition: background-color 0.15s ease;
  color: #374151;
  border-bottom: 1px solid #f3f4f6;
}

.custom-option:last-child {
  border-bottom: none;
}

.custom-option:hover {
  background-color: #f3f4f6;
}

.custom-option.selected {
  background-color: #cecece;
  font-weight: 600;
}

.bundle-variant-selector .custom-select-trigger {
  padding: 6px 10px;
}

.bundle-variant-selector .custom-option {
  padding: 8px 10px;
}

.container-select-variant {
  display: flex;
  flex-wrap: nowrap;
  gap: 8px;
  min-width: 0;
}
.select-variant-list {
  padding-top: 4px;
  display: none;
}

.select-variant-item {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin: 10px 0;
  min-width: 0;

  & > p {
    margin: 0;
    color: #94a3b8;
    font-weight: 800;
    line-height: 1;
    flex-shrink: 0;
  }
}

/* Vertical table (table element carries .orichi-table; horizontal layout puts the
   class on a wrapping div instead) stretches full width so the gift rewards process
   bar below lines up with the table edges. */
table.orichi-table,
.orichi-table table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
}

.orichi-table {
  border-radius: var(--table-corner-radius, 8px);
  border: 1px solid #e2e8f0;
  overflow: hidden;
}
.orichi-table td,
.orichi-table th {
  padding: var(--table-row-padding, 14px);
  border-right: 1px solid #e2e8f0;
  border-bottom: 1px solid #e2e8f0;
}
/* Avoid doubling up with the outer .orichi-table border on the last column/row. */
.orichi-table tr td:last-child,
.orichi-table tr th:last-child {
  border-right: none;
}
.orichi-table tbody tr:last-child td {
  border-bottom: none;
}

/* border-radius on <td>/<th> is ignored by browsers when border-collapse: collapse
   is used, and overflow:hidden clipping on the table itself is unreliable across
   browsers — so round the 4 corner cells directly to guarantee the effect. */
.orichi-table thead tr:first-child td:first-child,
.orichi-table thead tr:first-child th:first-child {
  border-top-left-radius: var(--table-corner-radius, 8px);
}
.orichi-table thead tr:first-child td:last-child,
.orichi-table thead tr:first-child th:last-child {
  border-top-right-radius: var(--table-corner-radius, 8px);
}
.orichi-table tbody tr:last-child td:first-child {
  border-bottom-left-radius: var(--table-corner-radius, 8px);
}
.orichi-table tbody tr:last-child td:last-child {
  border-bottom-right-radius: var(--table-corner-radius, 8px);
}

.orichi-gift-rewards {
  margin-top: 20px;
}

.orichi-gift-rewards__header {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 12px;
  margin-bottom: 10px;
}

.orichi-gift-rewards__title {
  font-size: var(--discount-title-size, 14px);
  font-weight: 700;
  line-height: 1.2;
  color: #303030;
}

.orichi-gift-rewards__cart {
  font-size: 16px;
  font-weight: 600;
  color: #6b7280;
  white-space: nowrap;
}

.orichi-gift-rewards__subtitle {
  font-size: 12px;
  color: #616161;
  margin: 0 0 10px;
}

.orichi-gift-rewards__info {
  font-size: 12px;
  color: #616161;
  margin: 0 0 10px;
}

.orichi-gift-rewards__progress {
  margin-bottom: 18px;
  overflow-x: auto;
  padding-bottom: 4px;
}

.orichi-gift-rewards__progress-inner {
  position: relative;
  padding: 4px 4px 8px;
  display: grid;
}

.orichi-gift-rewards__line {
  position: absolute;
  height: 4px;
  background: #e5e7eb;
  border-radius: 999px;
  left: 22px;
  right: 22px;
  top: 22px;
  margin: 0;
}

.orichi-gift-rewards__line-fill {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  background: var(--reward-progress-bar-color, #3d8b73);
  border-radius: 999px;
  display: block !important;
  transition: width 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}

.orichi-gift-rewards__points {
  display: contents;
}

.orichi-gift-rewards__point {
  position: relative;
  z-index: 10;
  width: auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  text-align: center;
}
.orichi-gift-rewards__point:first-child {
  justify-self: start;
  align-items: flex-start;
  text-align: left;
}
.orichi-gift-rewards__point:last-child {
  justify-self: end;
  align-items: flex-end;
  text-align: right;
}

.orichi-gift-rewards__point-icon {
  width: 36px;
  height: 36px;
  border-radius: 999px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #f1f1f1;
  border: 1px solid #f1f1f1;
  color: #8a8a8a;
  transition: background 0.4s ease, border-color 0.4s ease, color 0.4s ease;
}
.orichi-gift-rewards__point-icon div {
  position: relative;
  display: flex;
  height: 20px;
  width: 28px;
  align-items: center;
  justify-content: center;
}
.orichi-gift-rewards__point-icon svg {
  width: 16px;
  height: 16px;
}

.orichi-gift-rewards__point.is-active .orichi-gift-rewards__point-icon {
  background: var(--reward-tier-dot-color, #008060);
  color: #fff;
  border-color: var(--reward-tier-dot-color, #008060);
}

.orichi-gift-rewards__point-label {
  color: #616161;
  font-size: 12px;
}

.orichi-gift-rewards__point-check {
  display: inline-block;
  margin-left: 4px;
}

.orichi-gift-rewards__point.is-active .orichi-gift-rewards__point-label {
  color: var(--reward-tier-dot-color, #008060);
}

.orichi-gift-rewards__note {
  color: #7b8490;
  font-size: 15px;
  margin-bottom: 18px;
}

.orichi-gift-rewards__cards {
  display: grid;
  gap: 14px;
}

.orichi-gift-rewards__cards--classic {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.orichi-gift-rewards__cards--modern {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.orichi-gift-card {
  min-width: 0;
  box-sizing: border-box;
  position: relative;
}

.orichi-gift-card--classic {
  border: 1px solid #008060;
  border-radius: 8px;
  background: #fff;
  padding: 8px;
}

.orichi-gift-card--classic.orichi-gift-card--locked {
  background: #fafbfc;
}

.orichi-gift-card--classic.orichi-gift-card--classic-dimmed {
  opacity: 0.55;
}

.orichi-gift-card.orichi-gift-card--selected {
  border-color: #008060;
  box-shadow: 0 0 0 2px #008060 inset;
}

.orichi-gift-card__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  padding: 6px 10px;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  width: fit-content;
}

.orichi-gift-card__badge--green {
  background: #3d8b73;
  color: #fff;
}

.orichi-gift-card__badge--gray {
  background: #e5e7eb;
  color: #6b7280;
}

.orichi-gift-card__badge--locked {
  background: #f8d7d8;
  color: #ba5b58;
}

.orichi-gift-card__badge--dark {
  background: #2f3136;
  color: #fff;
}

.orichi-gift-card__title {
  font-size: 14px;
  font-weight: 600;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  color: #303030;
}

.orichi-gift-card__body {
  display: flex;
  align-items: center;
  gap: 12px;
}

.orichi-gift-card__content {
  min-width: 0;
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.orichi-gift-card__header {
  display: flex;
  flex-direction: column;
  gap: 10px;
  min-width: 0;
}

.orichi-gift-card__choice {
  position: absolute;
  top: 14px;
  right: 14px;
  z-index: 3;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

.orichi-gift-card__choice-input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.orichi-gift-card__choice-box {
  width: 18px;
  height: 18px;
  border-radius: 4px;
  border: 1px solid #9ca3af;
  background: #fff;
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.orichi-gift-card__choice-input:checked + .orichi-gift-card__choice-box {
  background: #4b5563;
  border-color: #4b5563;
}

.orichi-gift-card__choice-input:checked + .orichi-gift-card__choice-box::after {
  content: "✓";
  color: #fff;
  font-size: 12px;
  line-height: 1;
  font-weight: 700;
}

.orichi-gift-card__choice-input:disabled + .orichi-gift-card__choice-box {
  opacity: 0.5;
}

.orichi-gift-card__thumb {
  width: 52px;
  height: 52px;
  border-radius: 12px;
  background: #f3f4f6;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
}

.orichi-gift-card__thumb img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}

.orichi-gift-card__thumb--locked {
  position: relative;
}

.orichi-gift-card__thumb--locked img {
  filter: blur(2.5px);
  opacity: 0.4;
}

.orichi-gift-card__thumb-lock {
  position: absolute;
  inset: 50% auto auto 50%;
  transform: translate(-50%, -50%);
  width: 22px;
  height: 22px;
  border-radius: 999px;
  background: #ffffff;
  box-shadow: 0 4px 12px rgba(15, 23, 42, 0.16);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  line-height: 1;
}

.orichi-gift-card__thumb--placeholder {
  background: #e5e7eb;
}

.orichi-gift-card__control {
  width: 100%;
  min-width: 0;
}

.orichi-gift-card__select {
  width: 100%;
  height: 32px;
  border: 1px solid #a7aeb8;
  border-radius: 8px;
  background: #fff;
  padding: 0 10px;
  font-size: 12px;
  color: #303030;
}

.orichi-gift-card__select:disabled {
  background: #fff;
  border-color: #d7dbe2;
  color: #b7bcc5;
  opacity: 1;
  cursor: not-allowed;
}

.orichi-gift-card--modern {
  border: 1px solid #d5dde8;
  border-radius: 22px;
  background: #fff;
  padding: 12px;
}

.orichi-gift-card--classic .orichi-gift-card__title {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  white-space: normal;
  line-height: 1.35;
  flex: 1;
  min-height: calc(1.35em * 2);
}

.orichi-gift-card--classic.orichi-gift-card--locked .orichi-gift-card__title {
  color: #c6c8cd;
}

.orichi-gift-card--modern .orichi-gift-card__title {
  text-align: center;
  margin-bottom: 12px;
}

.orichi-gift-card__visual {
  position: relative;
  height: 160px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 12px;
}

.orichi-gift-card--modern .orichi-gift-card__badge {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
}

.orichi-gift-card__visual-image {
  max-width: 100%;
  max-height: 132px;
  display: block;
}

.orichi-gift-card__visual-image.is-blurred {
  opacity: 0.72;
}

.orichi-gift-card__overlay {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
}

.orichi-gift-card__overlay-icon {
  width: 54px;
  height: 54px;
  border-radius: 999px;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.12);
}

.orichi-gift-card__overlay-text {
  color: #6b7280;
  font-size: 14px;
  text-align: center;
}

.orichi-gift-card__pill {
  position: absolute;
  left: 50%;
  bottom: 50%;
  transform: translate(-50%, 50%);
  border: 1px solid #b6d3ff;
  background: #eaf2ff;
  color: #1f5199;
  font-size: 1rem;
  font-weight: 600;
  border-radius: 999px;
  padding: 8px 14px;
  text-align: center;
  min-width: 120px;
  line-height: 1.2;
}

.orichi-gift-card--modern .orichi-gift-card__select:disabled {
  opacity: 0.55;
  pointer-events: none;
}

.orichi-gift-card__effective {
  display: none;
}

.orichi-gift-card[data-effective="true"] .orichi-gift-card__effective {
  display: inline-block;
}

@media (max-width: 720px) {
  .orichi-gift-rewards__title {
    font-size: var(--discount-title-size, 22px);
  }

  .orichi-gift-rewards__cart,
  .orichi-gift-rewards__subtitle {
    font-size: 16px;
  }

  .orichi-gift-rewards__cards--classic,
  .orichi-gift-rewards__cards--modern {
    grid-template-columns: 1fr;
  }
}
/* ── LIVE DOT ── */
@keyframes live-blink {
  0%,
  100% {
    opacity: 1;
  }
  50% {
    opacity: 0.15;
  }
}
@keyframes live-ring {
  0% {
    r: 5;
    opacity: 0.5;
  }
  100% {
    r: 11;
    opacity: 0;
  }
}
.orichi-live-dot {
  animation: live-blink 1.2s ease-in-out infinite;
}
.orichi-live-ring {
  animation: live-ring 1.5s ease-out infinite;
}

/* ── SHIMMER ── */
@keyframes shimmer-move {
  0% {
    x: -65px;
  }
  100% {
    x: 145px;
  }
}
.orichi-shimmer-sweep {
  animation: shimmer-move 2s linear infinite;
}

/* ── FIRE ── */
@keyframes f1 {
  0%,
  100% {
    d: path(
      "M16 28 C10 23 8 17 12 11 C13.5 15 15 14 14.5 10 C17 14 20 11 18.5 7 C22 11 24 16 21 21.5 C19.5 24.5 18 27 16 28Z"
    );
  }
  50% {
    d: path(
      "M16 28 C9 22 8 16 13 10 C14 14.5 16 13 15 9 C18 13 21 10 19 6 C23 10.5 24.5 16 21 22 C19.5 25 18 27 16 28Z"
    );
  }
}
@keyframes f2 {
  0%,
  100% {
    d: path(
      "M16 27 C12 23 11 19 13.5 15 C14.5 18 16 17 15.5 14 C17.5 17 18 15 17 12.5 C20 15.5 20.5 19.5 18.5 23 C17.5 25 17 26.5 16 27Z"
    );
  }
  50% {
    d: path(
      "M16 27 C11 22 10.5 18 13 14 C14.5 17.5 16.5 16 15.5 13 C18 16.5 18.5 14.5 17 11.5 C20.5 15 21 19 18.5 23 C17.5 25.5 17 26.5 16 27Z"
    );
  }
}
@keyframes f3 {
  0%,
  100% {
    d: path(
      "M16 26 C14 23.5 13.5 21 15 18.5 C15.5 20.5 16.5 20 16 18 C17.5 20 17.5 18.5 16.5 16.5 C18.5 18.5 19 21 17.5 23.5 C17 25 16.5 25.5 16 26Z"
    );
  }
  50% {
    d: path(
      "M16 26 C13.5 23 13 20.5 15 17.5 C15.5 20 16.5 19 16 17 C17.5 19.5 17.5 18 16.5 15.5 C19 18 19.5 21 17.5 23.5 C17 25 16.5 25.5 16 26Z"
    );
  }
}
@keyframes glow-breathe {
  0%,
  100% {
    opacity: 0.4;
  }
  50% {
    opacity: 0.72;
  }
}
@keyframes glow-flicker {
  0%,
  100% {
    filter: brightness(1.15);
  }

  50% {
    filter: brightness(1.08);
  }
}
.orichi-f1 {
  animation: f1 0.45s ease-in-out infinite;
}
.orichi-f2 {
  animation: f2 0.38s ease-in-out infinite;
}
.orichi-f3 {
  animation: f3 0.3s ease-in-out infinite;
}
.orichi-glow {
  animation: glow-breathe 0.5s ease-in-out infinite;
}
.orichi-fire-badge {
  animation: glow-flicker 0.9s ease-in-out infinite;
}
.giftBoxLid {
  z-index: 21 !important;
}
.selector-display-none {
  display: none;
}

/* Extra shrink for narrow viewports (mobile). Uses a viewport media query
   (not @container) because container-type on .bundle-table previously caused
   it to size independently of its parent on some desktop grid layouts,
   making it mismatch the Add to cart button's width. flex-wrap on
   .bundle-item-top already keeps content from overlapping at any width; this
   block is purely cosmetic sizing. */
@media (max-width: 480px) {
  .bundle-item,
  .bundle-item--selected {
    padding: 14px 14px;
    gap: 8px;
  }
  .bundle-item-title {
    font-size: 13px;
    min-width: 2.5em;
  }
  .bundle-item-price {
    font-size: 13px;
  }
  .bundle-item-badge {
    padding: 2px 6px;
    font-size: 10px;
  }
  .custom-select-container {
    min-width: 56px;
    max-width: 76px;
  }
}
