@charset "UTF-8";
#shopping .divider + .container .spacing--4xl {
  display: none;
}

.sp-main__deal {
  position: relative;
}
.sp-main__deal > .container {
  background: none;
  z-index: 3;
}
.sp-main__deal-bg {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: 100%;
  z-index: 1;
  max-width: 761px;
}
.sp-main__deal-bg img {
  width: 100%;
  max-width: none;
  height: 100%;
  object-fit: cover;
}
.sp-main__deal .sp-main__deal-bg::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.4);
  backdrop-filter: blur(100px);
  -webkit-backdrop-filter: blur(100px);
  max-width: 761px;
  isolation: isolate;
  contain: paint;
}
.sp-main__deal .tab-content__container {
  position: relative;
}
.sp-main__deal .tab-component__container {
  padding-bottom: 28px;
}
.sp-main__deal .tab-component__container .product-component:first-child {
  margin-top: 24px;
}
.sp-main__deal .tab-component__container .product-component:not(:first-child) {
  margin-top: 16px;
}
.sp-main__deal .tab-component__container .product-component[data-state=default] .thumb-product {
  padding: 10px;
  background-color: var(--color-bg-neutral-weak, #f0f3f5);
}
.sp-main__deal .tab-component__container .product-component[data-state=default] .txt-product .txt-product__state {
  color: var(--color-fg-neutral-solid, #222832);
  margin-top: 8px;
}
.sp-main__deal .calendar-container {
  display: flex;
  flex-direction: column;
  gap: 6px;
  background-color: var(--color-bg-neutral-weak, #f0f3f5);
  border-radius: 12px;
  padding: 12px 0 10px;
}
.sp-main__deal .calendar-container .year-month {
  text-align: center;
  font-size: var(--font-title-1-size, 1.125rem);
  font-weight: var(--font-title-1-sb-weight, 600);
  line-height: var(--font-title-1-line-height, 1.4);
  letter-spacing: var(--font-title-1-letter-spacing, -0.005em);
}
.sp-main__deal .calendar-container .week-container {
  display: flex;
  justify-content: center;
  padding: 0 8px;
}
.sp-main__deal .calendar-container .days-grid {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: auto;
  flex: 1;
}
.sp-main__deal .calendar-container .day-item {
  position: relative;
  text-align: center;
  padding: 8px 0;
}
.sp-main__deal .calendar-container .day-item::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: 100%;
  border-radius: 8px;
  background-color: var(--color-bg-neutral-solid, #222832);
  padding: 0 12px;
  opacity: 0;
}
.sp-main__deal .calendar-container .day-name {
  position: relative;
  color: var(--color-fg-neutral-muted-weak, #9da1a7);
  font-size: var(--font-title-3-size, 0.875rem);
  font-weight: var(--font-title-3-weight, 600);
  line-height: var(--font-title-3-line-height, 1.4);
  letter-spacing: var(--font-title-3-letter-spacing, -0.005em);
}
.sp-main__deal .calendar-container .day-number {
  position: relative;
  color: var(--color-fg-neutral-solid, #222832);
  margin-top: 4px;
  font-size: var(--font-title-2-size, 1rem);
  font-weight: var(--font-title-2-sb-weight, 600);
  line-height: var(--font-title-2-line-height, 1.4);
  letter-spacing: var(--font-title-2-letter-spacing, -0.005em);
}
.sp-main__deal .calendar-container .day-item.active::before {
  opacity: 1;
}
.sp-main__deal .calendar-container .day-item.active .day-name,
.sp-main__deal .calendar-container .day-item.active .day-number {
  color: white;
}

.sp-deal__tab {
  margin-bottom: 24px;
}
.sp-deal__tab .tab-component__item {
  width: 87px;
}
.sp-deal__content {
  padding: 16px 0 24px;
  /* 타임딜이 첫번째 탭일때 */
  /* 날마다딜 만 있을때 */
}
.sp-deal__content-info {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
}
.sp-deal__content-info .count {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  color: #ffffff;
  font-size: var(--font-heading-3-size, 1.5rem);
  font-weight: var(--font-heading-3-weight, 600);
  line-height: var(--font-heading-3-line-height, 1.4);
  letter-spacing: var(--font-heading-3-letter-spacing, -0.005em);
}
.sp-deal__content-info .count .dot {
  display: inline-flex;
  margin: 0 4px;
}
.sp-deal__content-info .count.date {
  gap: 4px;
}
.sp-deal__content-info .count span {
  font-variant-numeric: tabular-nums;
  transform: translateZ(0);
  will-change: transform;
}
.sp-deal__content-info .btn-txt, .sp-deal__content-info .btn-txt .icon svg {
  color: var(--color-fg-neutral-inverted, #ffffff);
}
.sp-deal__content .product-component {
  margin-top: 16px;
}
.sp-deal__content .product-component .txt-product__price-percent.ready, .sp-deal__content .product-component .txt-product__price-percent.close {
  display: none;
}
.sp-deal__content[data-deal=time] .sp-deal__tab-item[data-content=every] {
  order: 2;
}
.sp-deal__content[data-deal=time] .sp-deal__tab-item[data-content=every]::before {
  display: block;
}
.sp-deal__content[data-deal=time] .sp-deal__tab-item[data-content=time] {
  order: 1;
}
.sp-deal__content[data-deal=time] .sp-deal__tab-item[data-content=time]::before {
  display: none;
}
.sp-deal__content[data-deal=every-only] .sp-deal__tab-item[data-content=time] {
  display: none;
}
.sp-deal__content[data-deal=every-only] .sp-deal__tab-content[data-content=every] {
  display: block;
  position: relative !important;
  opacity: 1;
}
.sp-deal__content[data-deal=every-only] .sp-deal__tab-content[data-content=time] {
  display: none;
}

.sp-main__quick-menu {
  background-color: var(--color-bg-neutral-inverted, #ffffff);
  max-width: 761px;
  margin: 0 auto;
}

.main-order-history__content {
  border-radius: 16px;
  border: 1px solid var(--color-border-neutral-line, rgba(0, 0, 0, 0.08));
}
.main-order-history__content .banner-band__title__wrap {
  flex-direction: row;
  align-items: center;
}
.main-order-history__content .banner-band__title__wrap .banner-band__title + button svg {
  width: 16px;
  height: 16px;
  color: var(--color-icon-neutral-muted-weak, #c8cccf);
}
.main-order-history__body {
  padding: 20px;
}

.sp-main-order__history {
  z-index: 2;
}
.sp-main-order__history.container {
  overflow: visible !important;
}
.sp-main-order__history .order-history__list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
}
.sp-main-order__history .order-history__item a {
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: 4px;
  padding: 6px 0;
}
.sp-main-order__history .order-history__icon {
  width: 24px;
  height: 24px;
}
.sp-main-order__history .order-history__icon svg {
  width: 100%;
  height: 100%;
}
.sp-main-order__history .order-history__info {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.sp-main-order__history .order-history__info .title {
  font-size: var(--font-caption-3-size, 0.75rem);
  font-weight: var(--font-caption-3-m-weight, 500);
  line-height: var(--font-caption-3-line-height, 1.4);
  letter-spacing: var(--font-caption-3-letter-spacing, -0.005em);
  color: #898d93;
}
.sp-main-order__history .order-history__info .value {
  font-size: var(--font-title-2-size, 1rem);
  font-weight: var(--font-title-2-sb-weight, 600);
  line-height: var(--font-title-2-line-height, 1.4);
  letter-spacing: var(--font-title-2-letter-spacing, -0.005em);
  color: #222832;
}
.sp-main-order__history .banner-band .banner-band__title + button img {
  width: 16px;
  height: 16px;
}

.shopping-points__container {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.shopping-points__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
}
.shopping-points__item {
  height: 100%;
}
.shopping-points__card {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  padding: 16px;
  height: 100%;
  border-radius: 12px;
  border: 1px solid var(--color-border-neutral-line, rgba(0, 0, 0, 0.08));
  height: 100%;
}
.shopping-points__card .element__quick-menu__img {
  display: flex;
  margin: 0 auto;
  padding: 0;
}
.shopping-points__card .point__label {
  position: absolute;
  top: 0;
  right: 5px;
  transform: translateY(-50%);
}
.shopping-points__card .point__label[data-state=hide] {
  display: none;
}
.shopping-points__card[data-dot=on] .element__quick-menu__img {
  position: relative;
}
.shopping-points__card[data-dot=on] .element__quick-menu__img::after {
  content: "";
  position: absolute;
  top: 1px;
  right: 1px;
  width: 8px;
  height: 8px;
  background-color: var(--color-fg-brand-solid, #fb1822);
  border-radius: 9999px;
  border: 1px solid var(--color-border-neutral-inverted, #ffffff);
}
.shopping-points__card[data-active=true] {
  position: relative;
  z-index: 0;
  border: 1px solid var(--color-gradient-red-basic, rgba(251, 24, 34, 0.4));
}
.shopping-points__card[data-type=more] {
  justify-content: center;
  padding: 16px 12px;
}
.shopping-points__card[data-type=more] .element__quick-menu__img .element__thumb {
  background-color: var(--color-bg-banner-default-gray-50, rgba(5, 55, 88, 0.06));
}
.shopping-points__info {
  text-align: center;
}
.shopping-points__info-title {
  margin-bottom: 6px;
  font-size: var(--font-title-3-size, 0.875rem);
  font-weight: var(--font-title-3-weight, 600);
  line-height: var(--font-title-3-line-height, 1.4);
  letter-spacing: var(--font-title-3-letter-spacing, -0.005em);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.shopping-points__info-text {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2px;
  color: var(--color-fg-neutral-subtle, #5f646c);
  margin-bottom: 4px;
  font-size: var(--font-caption-1-size, 0.875rem);
  font-weight: var(--font-caption-1-m-weight, 500);
  line-height: var(--font-caption-1-line-height, 1.4);
  letter-spacing: var(--font-caption-1-letter-spacing, -0.005em);
}
.shopping-points__info-text svg, .shopping-points__info-text img {
  width: 16px;
  height: 16px;
  color: var(--color-fg-brand-solid, #fb1822);
}

.sp-main__shopping-points .swiper-slide {
  width: 112px;
  height: auto;
}
.sp-main__shopping-points .shopping-points__info-text .text {
  word-break: keep-all;
}

.sp-main__pick-event .pick-event__content {
  position: relative;
  padding: 20px;
  border-radius: 16px;
  background: var(--color-bg-neutral-weak, #f0f3f5);
}
.sp-main__pick-event .pick-event__content .point__label {
  position: absolute;
  top: 0;
  right: 0;
  transform: translate(-12px, -5px);
}
.sp-main__pick-event .pick-event__title-wrap {
  margin-bottom: 16px;
}
.sp-main__pick-event .pick-event__title-wrap__title {
  font-size: var(--font-heading-4-size, 1.25rem);
  font-weight: var(--font-heading-4-weight, 600);
  line-height: var(--font-heading-4-line-height, 1.4);
  letter-spacing: var(--font-heading-4-letter-spacing, -0.005em);
  margin-bottom: 4px;
}
.sp-main__pick-event .pick-event__title-wrap__sub {
  font-size: var(--font-body-3-size, 0.875rem);
  font-weight: var(--font-body-3-m-weight, 500);
  line-height: var(--font-body-3-line-height, 1.5);
  letter-spacing: var(--font-body-3-letter-spacing, -0.005em);
  color: var(--color-fg-neutral-muted, #6A6F77);
}
.sp-main__pick-event .pick-event__time-wrap {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: var(--font-title-1-size, 1.125rem);
  font-weight: var(--font-title-1-sb-weight, 600);
  line-height: var(--font-title-1-line-height, 1.4);
  letter-spacing: var(--font-title-1-letter-spacing, -0.005em);
}
.sp-main__pick-event .pick-event__time-wrap__content {
  display: flex;
  align-items: center;
  gap: 5px;
}
.sp-main__pick-event .pick-event__time__box {
  width: 36px;
  padding: 6px 5px;
  border-radius: 6px;
  background-color: var(--color-bg-button-gray, rgba(5, 55, 88, 0.06));
  text-align: center;
  font-variant-numeric: tabular-nums;
}
.sp-main__pick-event .pick-event__time__box--date {
  width: auto;
}
.sp-main__pick-event .pick-event__time__divider {
  position: relative;
  width: 3px;
  height: 11px;
}
.sp-main__pick-event .pick-event__time__divider:after, .sp-main__pick-event .pick-event__time__divider:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 3px;
  height: 3px;
  border-radius: 100%;
  background-color: #b2b6ba;
}
.sp-main__pick-event .pick-event__time__divider:after {
  top: initial;
  bottom: 0;
}
.sp-main__pick-event .pick-event__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 8px;
  margin-top: 10px;
}
.sp-main__pick-event .pick-event__item {
  position: relative;
  background-color: #ffffff;
  border-radius: 10px;
}
.sp-main__pick-event .pick-event__item:after {
  content: "";
  position: absolute;
  top: -1px;
  left: -1px;
  right: -1px;
  bottom: -1px;
  border: 1px solid #EBEBEB;
  border-radius: 10px;
  z-index: 1;
  pointer-events: none;
}
.sp-main__pick-event .pick-event__item.active:after {
  content: "";
  border: 2px solid var(--color-border-brand-solid, #fb1822);
}
.sp-main__pick-event .pick-event__item a, .sp-main__pick-event .pick-event__item button {
  display: block;
  width: 100%;
}
.sp-main__pick-event .pick-event__item a img, .sp-main__pick-event .pick-event__item button img {
  width: 100%;
  height: 100%;
  max-width: none;
  border-radius: 9px;
}

.sp-main__pick-event-detail .pick-event-detail__title-section {
  margin-bottom: 16px;
}
.sp-main__pick-event-detail .pick-event-detail__title {
  font-size: var(--font-heading-4-size, 1.25rem);
  font-weight: var(--font-heading-4-weight, 600);
  line-height: var(--font-heading-4-line-height, 1.4);
  letter-spacing: var(--font-heading-4-letter-spacing, -0.005em);
  color: var(--color-fg-neutral-solid, #222832);
  margin-bottom: 4px;
}
.sp-main__pick-event-detail .pick-event-detail__subtitle {
  font-size: var(--font-body-3-size, 0.875rem);
  font-weight: var(--font-body-3-m-weight, 500);
  line-height: var(--font-body-3-line-height, 1.5);
  letter-spacing: var(--font-body-3-letter-spacing, -0.005em);
  color: var(--color-fg-neutral-muted, #6A6F77);
}
.sp-main__pick-event-detail .pick-event-detail__time-wrap {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: var(--font-title-1-size, 1.125rem);
  font-weight: var(--font-title-1-sb-weight, 600);
  line-height: var(--font-title-1-line-height, 1.4);
  letter-spacing: var(--font-title-1-letter-spacing, -0.005em);
}
.sp-main__pick-event-detail .pick-event-detail__time-wrap__content {
  display: flex;
  align-items: center;
  gap: 5px;
}
.sp-main__pick-event-detail .pick-event-detail__time__box {
  width: 36px;
  padding: 6px 5px;
  border-radius: 6px;
  background-color: var(--color-bg-banner-default-gray-50, rgba(5, 55, 88, 0.06));
  text-align: center;
}
.sp-main__pick-event-detail .pick-event-detail__time__box--date {
  width: auto;
}
.sp-main__pick-event-detail .pick-event-detail__time__divider {
  position: relative;
  width: 3px;
  height: 11px;
}
.sp-main__pick-event-detail .pick-event-detail__time__divider:after, .sp-main__pick-event-detail .pick-event-detail__time__divider:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 3px;
  height: 3px;
  border-radius: 100%;
  background-color: #b2b6ba;
}
.sp-main__pick-event-detail .pick-event-detail__time__divider:after {
  top: initial;
  bottom: 0;
}
.sp-main__pick-event-detail .pick-event-detail__selection-area {
  position: relative;
  background-color: var(--color-bg-neutral-weak, #f0f3f5);
  border-radius: 16px;
  padding: 16px 0;
  max-width: 480px;
  margin: 0 auto;
  border: 1px solid var(--color-border-neutral-muted-weak, #dee1e4);
}
.sp-main__pick-event-detail .pick-event-detail__grid {
  display: flex;
  gap: 8px;
  margin-bottom: 20px;
  padding: 0 20px;
  justify-content: center;
}
.sp-main__pick-event-detail .pick-event-detail__grid-item-wrapper {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  max-width: 120px;
}
.sp-main__pick-event-detail .pick-event-detail__grid-item-wrapper.active:not(.selected) .pick-event-detail__grid-image::before {
  border: 2px solid var(--color-border-brand-solid, #fb1822);
}
.sp-main__pick-event-detail .pick-event-detail__grid-item-wrapper.active:not(.selected) .pick-event-detail__grid-image::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--color-bg-button-pink, rgba(255, 208, 211, 0.4));
  border-radius: 10px;
  z-index: 1;
}
.sp-main__pick-event-detail .pick-event-detail__grid-item-wrapper.active:not(.selected) .pick-event-detail__checkmark {
  display: block;
}
.sp-main__pick-event-detail .pick-event-detail__grid-item-wrapper.active:not(.selected) .pick-event-detail__grid-label {
  color: var(--color-fg-brand-solid, #fb1822);
}
.sp-main__pick-event-detail .pick-event-detail__grid-item-wrapper.selected .pick-event-detail__grid-image {
  border: 1px solid var(--color-fg-brand-solid, #fb1822);
  border-width: 2px;
}
.sp-main__pick-event-detail .pick-event-detail__grid-item-wrapper.selected .pick-event-detail__grid-label {
  color: var(--color-fg-brand-solid, #fb1822);
}
.sp-main__pick-event-detail .pick-event-detail__grid-item {
  position: relative;
  aspect-ratio: 1;
  margin-bottom: 6px;
  width: 100%;
}
.sp-main__pick-event-detail .pick-event-detail__grid-image {
  position: relative;
  width: 100%;
  height: 100%;
  background-color: var(--color-bg-neutral-inverted, #ffffff);
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.sp-main__pick-event-detail .pick-event-detail__grid-image::before {
  content: "";
  position: absolute;
  top: -1px;
  left: -1px;
  right: -1px;
  bottom: -1px;
  border: 1px solid #EBEBEB;
  border-radius: 10px;
  z-index: 10;
  pointer-events: none;
}
.sp-main__pick-event-detail .pick-event-detail__grid-image img {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 9px;
  object-fit: cover;
  max-width: none;
}
.sp-main__pick-event-detail .pick-event-detail__grid-label {
  text-align: center;
}
.sp-main__pick-event-detail .pick-event-detail__checkmark {
  display: none;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 24px;
  height: 24px;
  color: var(--color-fg-brand-solid, #fb1822);
  z-index: 10;
}
.sp-main__pick-event-detail .pick-event-detail__card-texts {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
}
.sp-main__pick-event-detail .pick-event-detail__card-texts .body-3-r {
  max-width: 100%;
  max-height: 4.5em;
  color: var(--color-fg-neutral-muted, #6A6F77);
  display: block;
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
}
.sp-main__pick-event-detail .pick-event-detail .carousel {
  margin-top: 20px;
}
.sp-main__pick-event-detail .pick-event-detail .swiper-container {
  overflow: hidden;
}
.sp-main__pick-event-detail .pick-event-detail .swiper-slide {
  width: calc(80% - 40px);
  max-width: 280px;
}
.sp-main__pick-event-detail .pick-event-detail__card-item {
  display: flex;
  flex-direction: column;
  gap: 12px;
  width: 100%;
}
.sp-main__pick-event-detail .pick-event-detail__card-item .title-component {
  text-align: center;
}
.sp-main__pick-event-detail .pick-event-detail__card-image {
  background-color: var(--color-bg-neutral-inverted, #ffffff);
  width: 100%;
  border-radius: 12px;
  overflow: hidden;
}
.sp-main__pick-event-detail .pick-event-detail__card-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.sp-main__pick-event-detail .pick-event-detail .title-component[data-size=m] .title-component__text {
  margin-top: 4px;
}
.sp-main__pick-event-detail .point__label {
  position: absolute;
  top: 0;
  right: 5px;
  transform: translateY(-50%);
}

.sp-main__ecoupon .product-component__container {
  display: flex;
  gap: 20px 10px;
  flex-wrap: wrap;
}
.sp-main__ecoupon .product-component {
  width: calc(50% - 10px / 2);
}
.sp-main__ecoupon .product-component .product-link {
  z-index: 2;
}
.sp-main__ecoupon .product-component .thumb-product::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 1px solid var(--color-border-neutral-line, rgba(0, 0, 0, 0.08));
  border-radius: 10px;
  z-index: 1;
}
.sp-main__ecoupon .product-component .txt-product .txt-product__info-brand, .sp-main__ecoupon .product-component .txt-product .txt-product__info-tit {
  display: block;
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
}

.sp-accumulation .list-component__tit {
  display: flex;
  align-items: center;
  gap: 4px;
}
.sp-accumulation .list-component.on .sp-accumulation__thumb-wrapper {
  position: relative;
}
.sp-accumulation .list-component.on .sp-accumulation__thumb-wrapper::after {
  content: "";
  position: absolute;
  top: 1px;
  right: 1px;
  width: 8px;
  height: 8px;
  z-index: 3;
  border-radius: 9999px;
  background-color: var(--color-bg-brand-solid, #fb1822);
  border: 1px solid var(--color-bg-neutral-inverted, #ffffff);
}
.sp-accumulation .list-component__btn {
  font-size: var(--font-caption-3-size, 0.75rem);
  font-weight: var(--font-caption-3-m-weight, 500);
  line-height: var(--font-caption-3-line-height, 1.4);
  letter-spacing: var(--font-caption-3-letter-spacing, -0.005em);
  padding: 3px 5px;
}
.sp-accumulation__label-gray {
  color: var(--color-fg-neutral-subtle, #5f646c);
}

.overseas-shopping-guide-popup__item {
  height: 100%;
}
.overseas-shopping-guide-popup__item .red-txt {
  color: var(--color-fg-brand-solid, #fb1822);
}
.overseas-shopping-guide-popup__item-content {
  background-color: var(--color-bg-neutral-weak, #f0f3f5);
  width: 100%;
  height: calc(100% - 100px);
  border-radius: 16px;
  padding: 0 24px;
  padding-top: 40px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
}
.overseas-shopping-guide-popup .carousel {
  margin-top: 12px;
}
.overseas-shopping-guide-popup .swiper-container {
  overflow: hidden;
}
.overseas-shopping-guide-popup .swiper-wrapper {
  width: 100%;
}
.overseas-shopping-guide-popup .swiper-slide {
  height: auto;
}
.overseas-shopping-guide-popup__title {
  text-align: center;
  min-height: 100px;
}
.overseas-shopping-guide-popup__content-title {
  text-align: center;
  font-size: var(--font-title-1-size, 1.125rem);
  font-weight: var(--font-title-1-sb-weight, 600);
  line-height: var(--font-title-1-line-height, 1.4);
  letter-spacing: var(--font-title-1-letter-spacing, -0.005em);
}
.overseas-shopping-guide-popup__image-container {
  width: 100%;
  margin-top: 30px;
}
.overseas-shopping-guide-popup__image-container img {
  width: 100%;
  height: auto;
  padding: 0 18px;
  object-fit: cover;
}

.bottom-sheet:has(.sp-sub-bottom-sheet) {
  overflow: hidden;
}

.bottom-sheet__body:has(.sp-sub-bottom-sheet) {
  padding: 0;
}

.bottom-sheet__content:has(.sp-sub-bottom-sheet) {
  background-color: var(--color-bg-neutral-weak, #f0f3f5);
}
.bottom-sheet__content:has(.sp-sub-bottom-sheet) .bottom-sheet__header {
  background-color: #ffffff;
}

.sp-sub-bottom-sheet__brand {
  padding: 0 16px;
}
.sp-sub-bottom-sheet__info {
  text-align: center;
  color: var(--color-fg-neutral-subtle, #5f646c);
}
.sp-sub-bottom-sheet__brand {
  position: relative;
}
.sp-sub-bottom-sheet__brand .point__label {
  position: absolute;
  top: 0;
  right: 5px;
  transform: translateY(-50%);
}
.sp-sub-bottom-sheet__link {
  text-decoration: underline;
  color: var(--color-fg-neutral-subtle, #5f646c);
}
.sp-sub-bottom-sheet__box {
  background-color: var(--color-bg-neutral-weak, #f0f3f5);
  padding: 16px;
  border-radius: 8px;
}
.sp-sub-bottom-sheet .bottom-button__box {
  position: relative;
}
.sp-sub-bottom-sheet .bottom-button__box .tooltip {
  position: absolute;
  top: -4px;
  transform: translateY(-50%);
}

.brand-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  padding: 12px 16px 0;
  background-color: var(--color-bg-neutral-inverted, #ffffff);
}
.brand-card .red-txt {
  color: var(--color-fg-brand-solid, #fb1822);
}
.brand-card__logo {
  position: relative;
  width: 56px;
  height: 56px;
}
.brand-card__logo-wrapper {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}
.brand-card__logo-wrapper svg {
  width: 60%;
  height: 60%;
}
.brand-card__content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
}
.brand-card__name {
  font-size: var(--font-caption-1-size, 0.875rem);
  font-weight: var(--font-caption-1-m-weight, 500);
  line-height: var(--font-caption-1-line-height, 1.4);
  letter-spacing: var(--font-caption-1-letter-spacing, -0.005em);
  color: var(--color-fg-neutral-subtle, #5f646c);
  text-align: center;
}
.brand-card__benefit {
  display: flex;
  align-items: center;
  gap: 4px;
}
.brand-card__benefit-text {
  font-size: var(--font-title-2-size, 1rem);
  font-weight: var(--font-title-2-sb-weight, 600);
  line-height: var(--font-title-2-line-height, 1.4);
  letter-spacing: var(--font-title-2-letter-spacing, -0.005em);
  color: var(--color-fg-neutral-solid, #222832);
}

.sp-benefit-bottom-sheet .title-component[data-size=m] .title-component__text {
  margin-top: 4px;
}

.step-label {
  background-color: var(--color-bg-neutral-solid, #222832);
  color: #ffffff;
  padding: 4px 12px;
  border-radius: 100px;
  margin-bottom: 16px;
  margin-right: auto;
  margin-left: auto;
  width: fit-content;
}

.sp-scrap__coupon .product-component .product-link {
  z-index: 2;
}
.sp-scrap__coupon .product-component .thumb-product::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 1px solid var(--color-border-neutral-line, rgba(0, 0, 0, 0.08));
  border-radius: 10px;
  z-index: 1;
}

.sp-main__weekly {
  max-width: 761px;
  margin: 0 auto;
}
.sp-main__weekly .container {
  background-color: #222832;
  overflow: hidden;
}
.sp-main__weekly .title-component {
  color: #ffffff;
}
.sp-main__weekly .spacing--4xl {
  background-color: var(--color-bg-neutral-inverted, #ffffff);
}

.sp-weekly__content {
  padding: 24px 0;
}
.sp-weekly__count {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
  color: #ffffff;
  padding: 0 2px;
  font-size: var(--font-title-1-size, 1.125rem);
  font-weight: var(--font-title-1-sb-weight, 600);
  line-height: var(--font-title-1-line-height, 1.4);
  letter-spacing: var(--font-title-1-letter-spacing, -0.005em);
}
.sp-weekly__count-txt {
  color: var(--color-bg-overlay-wt-basic, rgba(255, 255, 255, 0.4));
}
.sp-weekly__count-txt span {
  color: #ffffff;
}
.sp-weekly__product {
  margin-top: 24px;
}
.sp-weekly__product .swiper-slide {
  width: 280px;
  height: auto;
}
.sp-weekly__product .product-component {
  height: 100%;
}
.sp-weekly__product .product-component__inner {
  height: 100%;
}
.sp-weekly__product .product-component .txt-product__info-tit {
  width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.sp-weekly__product .product-component .txt-product__price-percent.ready, .sp-weekly__product .product-component .txt-product__price-percent.close {
  display: none;
}

.sp-main__brand {
  overflow: hidden;
}
.sp-main__brand-label {
  position: relative;
}
.sp-main__brand-label .txt-wrap {
  position: absolute;
  bottom: 0;
  left: 0;
  padding: 20px;
}
.sp-main__brand-label .txt-wrap .sub-txt {
  color: var(--color-bg-overlay-wt-thick, rgba(255, 255, 255, 0.8));
  font-size: var(--font-caption-3-size, 0.75rem);
  font-weight: var(--font-caption-3-m-weight, 500);
  line-height: var(--font-caption-3-line-height, 1.4);
  letter-spacing: var(--font-caption-3-letter-spacing, -0.005em);
}
.sp-main__brand-label .txt-wrap .txt {
  color: #ffffff;
  margin-top: 5px;
  font-size: var(--font-title-1-size, 1.125rem);
  font-weight: var(--font-title-1-sb-weight, 600);
  line-height: var(--font-title-1-line-height, 1.4);
  letter-spacing: var(--font-title-1-letter-spacing, -0.005em);
}
.sp-main__brand-label .img-wrap {
  border-radius: 12px;
  aspect-ratio: 350/195;
  overflow: hidden;
}
.sp-main__brand-label .img-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.sp-main__brand-product {
  padding-top: 16px;
}
.sp-main__brand-product .swiper-slide {
  height: auto;
}

.sp-main__bottom {
  background-color: #ffffff;
}

.sp-floating__btn {
  margin-bottom: 10px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #ffffff;
  padding: 10px 16px;
  border-radius: 50px;
  background-color: var(--color-bg-overlay-bk-thick, rgba(0, 0, 0, 0.8));
  box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.08);
  backdrop-filter: blur(50px);
  -webkit-backdrop-filter: blur(50px);
  z-index: 9999;
  font-size: var(--font-caption-1-size, 0.875rem);
  font-weight: var(--font-caption-1-m-weight, 500);
  line-height: var(--font-caption-1-line-height, 1.4);
  letter-spacing: var(--font-caption-1-letter-spacing, -0.005em);
}
.sp-floating__btn.sticky {
  position: fixed;
  bottom: 64px;
  left: 50%;
  transform: translateX(-50%);
}
.sp-floating__btn-box {
  display: flex;
  justify-content: center;
  margin-top: 55px;
  height: 56px;
}

.sp-footer__container[data-type=accordion] .sp-footer__wrapper, .sp-footer__container.has-floating-btn .sp-footer__wrapper {
  padding-bottom: 160px;
}

.sp-top {
  padding-top: 16px;
}

.sp-2depth__tab {
  height: 40px;
}
.sp-2depth__tab .tab-component {
  position: fixed;
  top: 99px;
  width: 100%;
  z-index: 9;
}
.sp-2depth__tab .tab-component .container {
  overflow: hidden;
}

.sp-product-banner-bottom {
  padding-top: 24px;
}

.sp-product__best .txt-product__price-inner {
  display: flex;
  align-items: center;
  gap: 3px;
}

.sp-product__promotion .tab-component__container {
  overflow: hidden;
}
.sp-product__promotion .product-component {
  width: 100%;
}
.sp-product__promotion .product-component__container {
  flex-direction: column;
  gap: 16px;
}
.sp-product__promotion .product-component .txt-product__price-inner {
  display: flex;
  align-items: center;
  gap: 3px;
}
.sp-product__promotion .product-component .txt-product__price--origin .txt-product__price-percent,
.sp-product__promotion .product-component .txt-product__price--origin .txt-product__price-current {
  font-size: var(--font-title-3-size, 0.875rem);
  font-weight: var(--font-title-3-weight, 600);
  line-height: var(--font-title-3-line-height, 1.4);
  letter-spacing: var(--font-title-3-letter-spacing, -0.005em);
}
.sp-product__promotion .product-component .txt-product__price--origin .txt-product__price-origin {
  font-size: var(--font-caption-2-size, 0.8125rem);
  font-weight: var(--font-caption-2-r-weight, 400);
  line-height: var(--font-caption-2-line-height, 1.4);
  letter-spacing: var(--font-caption-2-letter-spacing, -0.005em);
}
.sp-product__promotion .product-component .txt-product__price--final {
  margin-top: 1px;
}

.sp-product-tab-list {
  overflow: hidden;
}
.sp-product-tab-list .tab-component {
  padding-bottom: 0;
}
.sp-product-tab-list .tab-component__container {
  padding-top: 16px;
}

.sp-product-deal-list .product-component {
  width: 100%;
  min-width: 0;
  border-radius: 16px;
}
.sp-product-deal-list .product-component__container[data-type=vertical] {
  gap: 16px;
}

.sp-product-category-list {
  overflow: hidden;
}
.sp-product-category-list .title-component__subtitle {
  padding-top: 4px;
  color: var(--color-fg-neutral-muted, #6A6F77);
  font-size: var(--font-body-3-size, 0.875rem);
  font-weight: var(--font-body-3-m-weight, 500);
  line-height: var(--font-body-3-line-height, 1.5);
  letter-spacing: var(--font-body-3-letter-spacing, -0.005em);
}
.sp-product-category-list .swiper-slide {
  width: 248px;
}
.sp-product-category-list .swiper-slide:has(.thumb-product__wrap[data-type=square]) {
  width: calc(50% - 6px);
}

.sp-category__tab {
  position: relative;
}
.sp-category__tab .tab-component {
  overflow: hidden;
}
.sp-category__tab-button {
  position: fixed;
  top: 54px;
  margin-top: 7px;
  padding: 0 8px 0 8px;
  background: linear-gradient(270deg, rgba(255, 255, 255, 0.2) 0%, #fff 11.98%, #fff 89.06%, rgba(255, 255, 255, 0) 96.35%);
  z-index: 99;
  left: 50%;
  transform: translateX(330px);
}
@media screen and (max-width: 760px) {
  .sp-category__tab-button {
    transform: none;
    left: auto;
    right: 0;
  }
}
.sp-category__tab-button .category-open-btn {
  border: 1px solid var(--color-border-neutral-muted-weak, #dee1e4);
  border-radius: 8px;
  background-color: var(--color-bg-overlay-wt-basic, rgba(255, 255, 255, 0.4));
  color: var(--color-icon-neutral-muted, #b2b6ba);
  display: inline-flex;
  align-items: center;
  padding: 8px;
}
.sp-category__tab-button .category-open-btn svg {
  width: 16px;
  height: 16px;
}

body[data-scroll-position] .sp-category__tab-button {
  opacity: 0;
  visibility: hidden;
}

.sp-category__tab .sp-category__container {
  padding-right: 34px;
}

.sp-ecoupon__container {
  padding-right: 34px;
}

.sp-product-extra-info .unit-info__text-table__link {
  align-items: center;
}
.sp-product-extra-info .info-popup__wrapper {
  display: inline-flex;
}

.sp-product-discount-countdown {
  gap: 4px;
  padding: 8px 12px;
  background-color: #fff0f1;
  text-align: center;
}
.sp-product-discount-countdown__label {
  font-size: var(--font-title-3-size, 0.875rem);
  font-weight: var(--font-title-3-weight, 600);
  line-height: var(--font-title-3-line-height, 1.4);
  letter-spacing: var(--font-title-3-letter-spacing, -0.005em);
  color: var(--color-fg-neutral-solid, #222832);
}
.sp-product-discount-countdown__timer {
  font-size: var(--font-title-3-size, 0.875rem);
  font-weight: var(--font-title-3-weight, 600);
  line-height: var(--font-title-3-line-height, 1.4);
  letter-spacing: var(--font-title-3-letter-spacing, -0.005em);
  color: #fb1822;
}

.sp-product-images-carousel {
  padding: 0;
}
.sp-product-images-carousel__container {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.sp-product-images-carousel__slide {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #f0f3f5;
}
.sp-product-images-carousel__slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.sp-product-images-carousel .swiper-container {
  position: relative;
  width: 100%;
  height: 100%;
}
.sp-product-images-carousel .swiper-container .swiper-slide {
  height: auto;
}
.sp-product-images-carousel .swiper-container .element__product-lday {
  position: absolute;
  bottom: 12px;
  left: 12px;
  z-index: 10;
}

.sp-product-main-info {
  padding-bottom: 24px;
}
.sp-product-main-info__header {
  padding-bottom: 16px;
}
.sp-product-main-info__title {
  font-size: var(--font-heading-4-size, 1.25rem);
  font-weight: var(--font-heading-4-weight, 600);
  line-height: var(--font-heading-4-line-height, 1.4);
  letter-spacing: var(--font-heading-4-letter-spacing, -0.005em);
  color: var(--color-fg-neutral-solid, #222832);
}

.sp-product-full-image {
  padding: 0;
}
.sp-product-full-image__zoom-info {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px;
}
.sp-product-full-image__zoom-icon {
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.sp-product-full-image__zoom-text {
  font-size: var(--font-body-3-size, 0.875rem);
  font-weight: var(--font-body-3-m-weight, 500);
  line-height: var(--font-body-3-line-height, 1.5);
  letter-spacing: var(--font-body-3-letter-spacing, -0.005em);
  color: var(--color-fg-neutral-solid, #222832);
}
.sp-product-full-image__zoom-text span {
  color: var(--color-fg-brand-solid, #fb1822);
}
.sp-product-full-image__full-image {
  width: 100%;
}
.sp-product-full-image__image {
  width: 100%;
  height: auto;
  display: block;
}

.wrapper:has(.sp-product-full-image__full-image) .sp-product-discount-countdown, .wrapper:has(.sp-product-full-image__full-image) .sp-product-top-info, .wrapper:has(.sp-product-full-image__full-image) .sp-product-extra-info, .wrapper:has(.sp-product-full-image__full-image) .sp-product-main-info, .wrapper:has(.sp-product-full-image__full-image) .sp-product-bottom-nav, .wrapper:has(.sp-product-full-image__full-image) .bottom-sheet__container {
  touch-action: pan-y;
}

.sp-product-full-image__full-image {
  overflow: hidden;
  touch-action: pan-y; /* OS 핀치 막고 JS로 처리 */
}

.sp-product-full-image__inner {
  transform-origin: 0 0;
  will-change: transform;
  transition: transform 0.05s ease-out;
}

.sp-product-points-info-container {
  overflow: visible;
}

.sp-product-points-info {
  background-color: var(--color-bg-neutral-weak, #f0f3f5);
  border-radius: 10px;
}
.sp-product-points-info[data-component=expandable].expanded .sp-product-points-info__arrow {
  transform: rotate(180deg);
}
.sp-product-points-info[data-component=expandable].expanded .sp-product-points-info__summary .tooltip {
  display: none;
}
.sp-product-points-info[data-component=expandable].expanded .sp-product-points-info__content {
  max-height: 500px;
  opacity: 1;
  padding: 0 20px 16px;
}
.sp-product-points-info__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px;
  user-select: none;
}
.sp-product-points-info__title {
  display: flex;
  align-items: center;
  gap: 6px;
}
.sp-product-points-info__icon {
  width: 20px;
  height: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-fg-brand-solid, #fb1822);
}
.sp-product-points-info__title-text {
  font-size: var(--font-title-2-size, 1rem);
  font-weight: var(--font-title-2-sb-weight, 600);
  line-height: var(--font-title-2-line-height, 1.4);
  letter-spacing: var(--font-title-2-letter-spacing, -0.005em);
  color: var(--color-fg-neutral-solid, #222832);
  margin: 0;
}
.sp-product-points-info__summary {
  position: relative;
  display: flex;
  align-items: center;
  gap: 8px;
}
.sp-product-points-info__summary .tooltip {
  position: absolute;
  top: -32px;
  right: 0;
}
.sp-product-points-info__max-points {
  font-size: var(--font-title-2-size, 1rem);
  font-weight: var(--font-title-2-sb-weight, 600);
  line-height: var(--font-title-2-line-height, 1.4);
  letter-spacing: var(--font-title-2-letter-spacing, -0.005em);
  color: var(--color-fg-neutral-solid, #222832);
}
.sp-product-points-info__arrow {
  width: 16px;
  height: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-icon-neutral-muted-weak, #c8cccf);
}
.sp-product-points-info__content {
  max-height: 0;
  opacity: 0;
  transition: max-height 0.3s ease, opacity 0.3s ease, padding 0.3s ease;
}
.sp-product-points-info__section {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.sp-product-points-info__section + .sp-product-points-info__section {
  margin-top: 20px;
}
.sp-product-points-info__section-title {
  font-size: var(--font-title-3-size, 0.875rem);
  font-weight: var(--font-title-3-weight, 600);
  line-height: var(--font-title-3-line-height, 1.4);
  letter-spacing: var(--font-title-3-letter-spacing, -0.005em);
  color: var(--color-fg-neutral-muted, #6A6F77);
  padding: 8px 0 0;
  border-top: 1px solid var(--color-border-neutral-muted-weak, #dee1e4);
}
.sp-product-points-info__benefit-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.sp-product-points-info__benefit-label {
  display: flex;
  align-items: center;
  gap: 2px;
  position: relative;
}
.sp-product-points-info__benefit-name {
  font-size: var(--font-caption-1-size, 0.875rem);
  font-weight: var(--font-caption-1-m-weight, 500);
  line-height: var(--font-caption-1-line-height, 1.4);
  letter-spacing: var(--font-caption-1-letter-spacing, -0.005em);
  color: var(--color-fg-neutral-solid, #222832);
}
.sp-product-points-info__benefit-icon {
  width: 12px;
  height: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-icon-neutral-muted-weak, #c8cccf);
}
.sp-product-points-info__benefit-value {
  position: relative;
  display: flex;
  align-items: center;
  gap: 8px;
}
.sp-product-points-info__benefit-value .tooltip {
  position: absolute;
  top: -32px;
  right: 0;
}
.sp-product-points-info__benefit-desc {
  font-size: var(--font-caption-1-size, 0.875rem);
  font-weight: var(--font-caption-1-m-weight, 500);
  line-height: var(--font-caption-1-line-height, 1.4);
  letter-spacing: var(--font-caption-1-letter-spacing, -0.005em);
  color: var(--color-fg-neutral-muted, #6A6F77);
}
.sp-product-points-info__benefit-amount {
  font-size: var(--font-title-2-size, 1rem);
  font-weight: var(--font-title-2-sb-weight, 600);
  line-height: var(--font-title-2-line-height, 1.4);
  letter-spacing: var(--font-title-2-letter-spacing, -0.005em);
  color: var(--color-fg-neutral-solid, #222832);
}

.sp-product-purchase-nav {
  display: flex;
  flex-direction: column;
}
.sp-product-purchase-nav__option-box {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.sp-product-purchase-nav__button-container {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  max-width: 761px;
  margin: 0 auto;
  z-index: 1000;
  display: flex;
  flex-direction: column;
  background-color: var(--color-bg-neutral-inverted, #ffffff);
}
.sp-product-purchase-nav__gradient {
  position: absolute;
  top: -28px;
  left: 0;
  right: 0;
  height: 28px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, var(--color-bg-neutral-inverted, #ffffff) 75%);
  pointer-events: none;
}
.sp-product-purchase-nav__selected-items {
  margin-top: 24px;
}
.sp-product-purchase-nav__selected-item {
  position: relative;
  display: flex;
  flex-direction: column;
  padding: 16px;
  background-color: var(--color-bg-neutral-weak, #f0f3f5);
  border-radius: 10px;
}
.sp-product-purchase-nav__selected-item:not(:only-child) {
  border-radius: 0;
}
.sp-product-purchase-nav__selected-item:not(:only-child)::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  right: 0;
  width: calc(100% - 32px);
  height: 1px;
  transform: translateX(-50%);
  background-color: var(--color-border-neutral-muted-weak, #dee1e4);
}
.sp-product-purchase-nav__selected-item:not(:only-child):first-child {
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
}
.sp-product-purchase-nav__selected-item:not(:only-child):last-child {
  border-bottom-left-radius: 10px;
  border-bottom-right-radius: 10px;
}
.sp-product-purchase-nav__item-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.sp-product-purchase-nav__item-header + .sp-product-purchase-nav__controls {
  margin-top: 16px;
}
.sp-product-purchase-nav__selected-info {
  display: flex;
  align-items: center;
  gap: 4px;
  flex: 1;
}
.sp-product-purchase-nav__selected-color {
  font-size: var(--font-title-2-size, 1rem);
  font-weight: var(--font-title-2-m-weight, 500);
  line-height: var(--font-title-2-line-height, 1.4);
  letter-spacing: var(--font-title-2-letter-spacing, -0.005em);
  color: var(--color-fg-neutral-solid, #222832);
}
.sp-product-purchase-nav__selected-size {
  font-size: var(--font-title-2-size, 1rem);
  font-weight: var(--font-title-2-m-weight, 500);
  line-height: var(--font-title-2-line-height, 1.4);
  letter-spacing: var(--font-title-2-letter-spacing, -0.005em);
  color: var(--color-fg-neutral-solid, #222832);
}
.sp-product-purchase-nav__selected-dot {
  width: 2px;
  height: 2px;
  background-color: var(--color-fg-neutral-weak, #b2b6ba);
  border-radius: 50%;
}
.sp-product-purchase-nav__controls {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
}
.sp-product-purchase-nav__stepper {
  display: flex;
  align-items: center;
  background-color: #ffffff;
  border: 1px solid var(--color-border-neutral-muted-weak, #dee1e4);
  border-radius: 8px;
  gap: 22px;
}
.sp-product-purchase-nav__stepper-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 10px;
  background: none;
  border: none;
}
.sp-product-purchase-nav__stepper-btn svg {
  width: 24px;
  height: 24px;
  color: var(--color-icon-neutral-solid, #222832);
}
.sp-product-purchase-nav__stepper-value {
  font-size: var(--font-title-2-size, 1rem);
  font-weight: var(--font-title-2-m-weight, 500);
  line-height: var(--font-title-2-line-height, 1.4);
  letter-spacing: var(--font-title-2-letter-spacing, -0.005em);
  color: var(--color-fg-neutral-solid, #222832);
  min-width: 20px;
  text-align: center;
}
.sp-product-purchase-nav__item-price {
  font-size: var(--font-title-1-size, 1.125rem);
  font-weight: var(--font-title-1-sb-weight, 600);
  line-height: var(--font-title-1-line-height, 1.4);
  letter-spacing: var(--font-title-1-letter-spacing, -0.005em);
  color: var(--color-fg-neutral-solid, #222832);
}
.sp-product-purchase-nav__total-section {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 24px;
}
.sp-product-purchase-nav__total-label {
  font-size: var(--font-body-3-size, 0.875rem);
  font-weight: var(--font-body-3-m-weight, 500);
  line-height: var(--font-body-3-line-height, 1.5);
  letter-spacing: var(--font-body-3-letter-spacing, -0.005em);
  color: var(--color-fg-neutral-muted, #6A6F77);
}
.sp-product-purchase-nav__total-price {
  font-size: var(--font-heading-4-size, 1.25rem);
  font-weight: var(--font-heading-4-weight, 600);
  line-height: var(--font-heading-4-line-height, 1.4);
  letter-spacing: var(--font-heading-4-letter-spacing, -0.005em);
  color: var(--color-fg-neutral-solid, #222832);
}

.sp-product-purchase-nav .stepper__box {
  width: auto;
}

.sp-product-bottom-nav {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  max-width: 761px;
  margin: 0 auto;
  z-index: 1000;
  display: flex;
  flex-direction: column;
  background-color: var(--color-bg-neutral-inverted, #ffffff);
}
.sp-product-bottom-nav__gradient {
  position: absolute;
  top: -48px;
  left: 0;
  right: 0;
  height: 48px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, var(--color-bg-neutral-inverted, #ffffff) 75%);
  pointer-events: none;
}
.sp-product-bottom-nav__purchase {
  flex: 1;
}
.sp-product-bottom-nav__floating-buttons {
  position: absolute;
  display: flex;
  flex-direction: column;
  bottom: 80px;
  right: 10px;
  gap: 6px;
  z-index: 100;
}
.sp-product-bottom-nav__floating-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  background-color: var(--color-bg-overlay-wt-thick, rgba(255, 255, 255, 0.8));
  -webkit-backdrop-filter: blur(50px);
  backdrop-filter: blur(50px);
  border: 1px solid var(--color-border-neutral-weak, #f0f3f5);
  border-radius: 9999px;
  padding: 10px;
  box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.05);
}
.sp-product-bottom-nav__floating-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  color: var(--color-icon-neutral-solid, #222832);
}
.sp-product-bottom-nav__floating-icon svg {
  width: 100%;
  height: 100%;
}

.sp-product-review-title {
  padding-bottom: 4px;
}
.sp-product-review-title .title-component {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.sp-product-review-title .title-component__title {
  font-size: var(--font-heading-4-size, 1.25rem);
  font-weight: var(--font-heading-4-weight, 600);
  line-height: var(--font-heading-4-line-height, 1.4);
  letter-spacing: var(--font-heading-4-letter-spacing, -0.005em);
  color: var(--color-fg-neutral-solid, #222832);
  margin: 0;
}
.sp-product-review-title .title-component__description {
  font-size: var(--font-body-3-size, 0.875rem);
  font-weight: var(--font-body-3-m-weight, 500);
  line-height: var(--font-body-3-line-height, 1.5);
  letter-spacing: var(--font-body-3-letter-spacing, -0.005em);
  color: var(--color-fg-neutral-muted, #6A6F77);
  margin: 0;
}

.sp-product-review-slim__rating-container {
  display: flex;
  flex-direction: row;
  gap: 6px;
  align-items: center;
  justify-content: flex-start;
  padding: 12px 20px;
  background-color: var(--color-bg-accent-yellow-weak, #fffae6);
  border-radius: 10px;
}
.sp-product-review-slim__rating-container[data-disabled=true] {
  background-color: var(--color-bg-neutral-weak, #f0f3f5);
}
.sp-product-review-slim__stars {
  display: flex;
  flex-direction: row;
  gap: 2px;
  align-items: center;
}
.sp-product-review-slim__stars svg {
  width: 24px;
  height: 24px;
  padding: 2px;
  color: var(--color-icon-neutral-muted-weak, #c8cccf);
}
.sp-product-review-slim__stars[data-review-score="1"] svg:nth-child(-n+1), .sp-product-review-slim__stars[data-review-score="2"] svg:nth-child(-n+2), .sp-product-review-slim__stars[data-review-score="3"] svg:nth-child(-n+3), .sp-product-review-slim__stars[data-review-score="4"] svg:nth-child(-n+4), .sp-product-review-slim__stars[data-review-score="5"] svg:nth-child(-n+5) {
  color: var(--color-fg-accent-yellow-solid, #ffc00e);
}
.sp-product-review-slim__score-container {
  display: flex;
  flex-direction: row;
  gap: 6px;
  align-items: center;
}
.sp-product-review-slim__score {
  font-size: var(--font-heading-4-size, 1.25rem);
  font-weight: var(--font-heading-4-weight, 600);
  line-height: var(--font-heading-4-line-height, 1.4);
  letter-spacing: var(--font-heading-4-letter-spacing, -0.005em);
  color: var(--color-fg-neutral-solid, #222832);
}
.sp-product-review-slim__count {
  font-size: var(--font-title-1-size, 1.125rem);
  font-weight: var(--font-title-1--m-weight, 500);
  line-height: var(--font-title-1-line-height, 1.4);
  letter-spacing: var(--font-title-1-letter-spacing, -0.005em);
  color: var(--color-fg-neutral-muted, #6A6F77);
}

.sp-product-review-list {
  display: flex;
  flex-direction: column;
}
.sp-product-review-list__title {
  font-size: var(--font-title-2-size, 1rem);
  font-weight: var(--font-title-2-sb-weight, 600);
  line-height: var(--font-title-2-line-height, 1.4);
  letter-spacing: var(--font-title-2-letter-spacing, -0.005em);
  color: var(--color-fg-neutral-solid, #222832);
}
.sp-product-review-list__item {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding: 16px 0;
  border-bottom: 1px solid var(--color-border-neutral-weak, #f0f3f5);
}
.sp-product-review-list__item:last-child {
  border-bottom: none;
}
.sp-product-review-list__item.expanded .sp-product-review-list__review-content {
  max-height: none;
}
.sp-product-review-list__item.expanded .sp-product-review-list__more-btn .sp-product-review-list__more-icon {
  transform: rotate(180deg);
}
.sp-product-review-list__content {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.sp-product-review-list__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  width: 100%;
}
.sp-product-review-list__user-info {
  display: flex;
  align-items: center;
  gap: 8px;
}
.sp-product-review-list__rating {
  display: flex;
  align-items: center;
  gap: 1px;
}
.sp-product-review-list__rating svg {
  width: 16px;
  height: 16px;
  padding: 1px;
  color: var(--color-icon-neutral-muted-weak, #c8cccf);
}
.sp-product-review-list__rating[data-review-score="1"] svg:nth-child(-n+1), .sp-product-review-list__rating[data-review-score="2"] svg:nth-child(-n+2), .sp-product-review-list__rating[data-review-score="3"] svg:nth-child(-n+3), .sp-product-review-list__rating[data-review-score="4"] svg:nth-child(-n+4), .sp-product-review-list__rating[data-review-score="5"] svg:nth-child(-n+5) {
  color: var(--color-fg-accent-yellow-solid, #ffc00e);
}
.sp-product-review-list__username {
  font-size: var(--font-caption-1-size, 0.875rem);
  font-weight: var(--font-caption-1-m-weight, 500);
  line-height: var(--font-caption-1-line-height, 1.4);
  letter-spacing: var(--font-caption-1-letter-spacing, -0.005em);
  color: var(--color-fg-neutral-solid, #222832);
}
.sp-product-review-list__variant {
  font-size: var(--font-caption-1-size, 0.875rem);
  font-weight: var(--font-caption-1-m-weight, 500);
  line-height: var(--font-caption-1-line-height, 1.4);
  letter-spacing: var(--font-caption-1-letter-spacing, -0.005em);
  color: var(--color-fg-neutral-muted, #6A6F77);
}
.sp-product-review-list__actions {
  flex-shrink: 0;
}
.sp-product-review-list__action-btn {
  font-size: var(--font-caption-1-size, 0.875rem);
  font-weight: var(--font-caption-1-m-weight, 500);
  line-height: var(--font-caption-1-line-height, 1.4);
  letter-spacing: var(--font-caption-1-letter-spacing, -0.005em);
  color: var(--color-fg-neutral-muted, #6A6F77);
  border: none;
  border-bottom: 1px solid var(--color-fg-neutral-muted, #6A6F77);
}
.sp-product-review-list__text {
  width: 100%;
}
.sp-product-review-list__review-content {
  font-size: var(--font-body-3-size, 0.875rem);
  font-weight: var(--font-body-3-r-weight, 400);
  line-height: var(--font-body-3-line-height, 1.5);
  letter-spacing: var(--font-body-3-letter-spacing, -0.005em);
  color: var(--color-fg-neutral-solid, #222832);
  margin: 0;
  white-space: pre-line;
  overflow: hidden;
  max-height: 4.5em;
}
.sp-product-review-list__bottom-action {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
}
.sp-product-review-list__more-btn {
  display: flex;
  align-items: center;
  gap: 2px;
}
.sp-product-review-list__more-text {
  font-size: var(--font-caption-1-size, 0.875rem);
  font-weight: var(--font-caption-1-m-weight, 500);
  line-height: var(--font-caption-1-line-height, 1.4);
  letter-spacing: var(--font-caption-1-letter-spacing, -0.005em);
  color: var(--color-fg-neutral-muted-weak, #9da1a7);
}
.sp-product-review-list__more-icon {
  width: 12px;
  height: 12px;
  color: var(--color-fg-neutral-muted-weak, #9da1a7);
}
.sp-product-review-list__more-icon svg {
  transform: rotate(90deg);
}

.sp-product-review-nav {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  max-width: 761px;
  margin: 0 auto;
  z-index: 1000;
  display: flex;
  flex-direction: column;
  background-color: var(--color-bg-neutral-inverted, #ffffff);
}
.sp-product-review-nav__gradient {
  position: absolute;
  top: -48px;
  left: 0;
  right: 0;
  height: 48px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, var(--color-bg-neutral-inverted, #ffffff) 75%);
  pointer-events: none;
}
.sp-product-review-nav .tooltip {
  position: absolute;
  top: 5px;
  right: 50%;
  transform: translateX(50%);
  z-index: 1000;
}

.sp-product-review-selection {
  padding-top: 16px;
}
.sp-product-review-selection__title {
  padding-bottom: 16px;
}
.sp-product-review-selection__main-title {
  font-size: var(--font-heading-3-size, 1.5rem);
  font-weight: var(--font-heading-3-weight, 600);
  line-height: var(--font-heading-3-line-height, 1.4);
  letter-spacing: var(--font-heading-3-letter-spacing, -0.005em);
  color: var(--color-fg-neutral-solid, #222832);
  margin-bottom: 10px;
}
.sp-product-review-selection__description {
  display: flex;
  flex-direction: column;
  gap: 0;
}
.sp-product-review-selection__description p {
  font-size: var(--font-body-2-size, 1rem);
  font-weight: var(--font-body-2-r-weight, 400);
  line-height: var(--font-body-2-line-height, 1.5);
  letter-spacing: var(--font-body-2-letter-spacing, -0.005em);
  color: var(--color-fg-neutral-subtle, #5f646c);
}
.sp-product-review-selection__list {
  display: flex;
  flex-direction: column;
  gap: 32px;
}
.sp-product-review-selection__item {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.sp-product-review-selection__product {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}
.sp-product-review-selection__product-image {
  width: 80px;
  height: 80px;
  border-radius: 10px;
  overflow: hidden;
  flex-shrink: 0;
  background-color: var(--color-bg-neutral-weak, #f0f3f5);
}
.sp-product-review-selection__product-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.sp-product-review-selection__product-info {
  flex: 1;
  min-width: 0;
}
.sp-product-review-selection__product-details {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.sp-product-review-selection__product-title {
  font-size: var(--font-body-3-size, 0.875rem);
  font-weight: var(--font-body-3-r-weight, 400);
  line-height: var(--font-body-3-line-height, 1.5);
  letter-spacing: var(--font-body-3-letter-spacing, -0.005em);
  color: var(--color-fg-neutral-solid, #222832);
  overflow: hidden;
  text-overflow: ellipsis;
}
.sp-product-review-selection__product-variant {
  font-size: var(--font-caption-2-size, 0.8125rem);
  font-weight: var(--font-caption-2-r-weight, 400);
  line-height: var(--font-caption-2-line-height, 1.4);
  letter-spacing: var(--font-caption-2-letter-spacing, -0.005em);
  color: var(--color-fg-neutral-muted, #6A6F77);
}

.sp-product-review-rating-input:has(.sp-product-review-rating-input__stars[data-rating="0"]) .sp-product-review-rating-input__container {
  background-color: var(--color-bg-neutral-weak, #f0f3f5);
}
.sp-product-review-rating-input__container {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  padding: 20px;
  background-color: var(--color-bg-accent-yellow-weak, #fffae6);
  border-radius: 10px;
  transition: background-color 0.4s ease-in-out;
}
.sp-product-review-rating-input__title {
  font-size: var(--font-title-1-size, 1.125rem);
  font-weight: var(--font-title-1-sb-weight, 600);
  line-height: var(--font-title-1-line-height, 1.4);
  letter-spacing: var(--font-title-1-letter-spacing, -0.005em);
  color: var(--color-fg-neutral-solid, #222832);
  text-align: center;
}
.sp-product-review-rating-input__stars {
  display: flex;
  align-items: center;
  gap: 4px;
}
.sp-product-review-rating-input__star {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  color: var(--color-icon-neutral-muted-weak, #c8cccf);
  transition: color 0.4s ease-in-out;
}
.sp-product-review-rating-input__star svg {
  width: 100%;
  height: 100%;
}
.sp-product-review-rating-input__star.active {
  color: var(--color-fg-accent-yellow-solid, #ffc00e);
}
.sp-product-review-rating-input__help {
  font-size: var(--font-caption-2-size, 0.8125rem);
  font-weight: var(--font-caption-2-m-weight, 500);
  line-height: var(--font-caption-2-line-height, 1.4);
  letter-spacing: var(--font-caption-2-letter-spacing, -0.005em);
  color: var(--color-fg-neutral-muted, #6A6F77);
  text-align: center;
}

.sp-ecoupon__container {
  overflow: hidden;
}
.sp-ecoupon__container .floating-buttons {
  bottom: calc(64px + var(--safe-bottom, 0px));
}
.sp-ecoupon .product-component .product-link {
  z-index: 2;
}
.sp-ecoupon .product-component .thumb-product::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 1px solid var(--color-border-neutral-line, rgba(0, 0, 0, 0.08));
  border-radius: 10px;
  z-index: 1;
}

.content:has(.sp-ecoupon__container) .product-component .product-link {
  z-index: 2;
}
.content:has(.sp-ecoupon__container) .product-component .thumb-product::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 1px solid var(--color-border-neutral-line, rgba(0, 0, 0, 0.08));
  border-radius: 10px;
  z-index: 1;
}

.sp-top {
  padding-top: 12px;
  background-color: #ffffff;
}
.sp-top__tab {
  height: 45px;
}
.sp-top__tab .tab-component {
  position: fixed;
  top: 54px;
  width: 100%;
  z-index: 100;
}

.sp-ecoupon-best {
  overflow: hidden;
}
.sp-ecoupon-best__item {
  display: flex;
}

.sp-ecoupon-hotdeal-banner-thumbnail {
  position: relative;
  width: 80px;
  height: 80px;
  aspect-ratio: 1/1;
}
.sp-ecoupon-hotdeal-banner-thumbnail img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.sp-ecoupon-hotdeal-banner-thumbnail .label {
  position: absolute;
  bottom: -6px;
  left: 0;
  transform: translateX(50%);
}

.sp-ecoupon-brand-grid__wrapper {
  overflow: hidden;
  margin: 0 -24px;
  padding: 0 24px;
}
@media screen and (max-width: 480px) {
  .sp-ecoupon-brand-grid__wrapper {
    margin: 0 -20px;
    padding: 0 20px;
  }
}
.sp-ecoupon-brand-grid__wrapper .swiper-slide {
  width: 100%;
  height: auto;
}

.sp-ecoupon-brand-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 16px 8px;
  width: 100%;
}
.sp-ecoupon-brand-grid .element-quick-menu {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
}
.sp-ecoupon-brand-grid .element-quick-menu__image {
  width: 56px;
  height: 56px;
  border-radius: 10px;
  overflow: hidden;
}
.sp-ecoupon-brand-grid .element-quick-menu__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.sp-ecoupon-brand-grid .element-quick-menu__title {
  font-size: var(--font-caption-1-size, 0.875rem);
  font-weight: var(--font-caption-1-m-weight, 500);
  line-height: var(--font-caption-1-line-height, 1.4);
  letter-spacing: var(--font-caption-1-letter-spacing, -0.005em);
  color: var(--color-fg-neutral-solid);
  text-align: center;
  line-height: 1.2;
}
.sp-ecoupon-brand-grid .element__quick-menu {
  width: calc((100% - 24px) / 4);
}
.sp-ecoupon-brand-grid .element__quick-menu__img {
  display: inline-flex;
  padding: 0;
  width: 100%;
  justify-content: center;
}
.sp-ecoupon-brand-grid .element__quick-menu__img::after {
  right: auto;
  left: 50%;
  transform: translateX(23px);
}
@media screen and (max-width: 360px) {
  .sp-ecoupon-brand-grid .element__quick-menu__img::after {
    right: 6px;
    left: auto;
    transform: none;
  }
}
@media screen and (max-width: 320px) {
  .sp-ecoupon-brand-grid .element__quick-menu__img::after {
    right: 0.3125vw;
  }
}
.sp-ecoupon-brand-grid .element__quick-menu__img .element__thumb {
  padding-top: 64px;
}
@media screen and (max-width: 360px) {
  .sp-ecoupon-brand-grid .element__quick-menu__img .element__thumb {
    max-width: 64px;
    max-height: 64px;
    width: 100%;
    height: 100%;
    padding-top: 100%;
  }
  .sp-ecoupon-brand-grid .element__quick-menu__img .element__thumb img {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    height: auto;
  }
}
.sp-ecoupon-brand-grid .element__quick-menu__tit {
  text-align: center;
  word-break: break-all;
}

.sp-ecoupon-discount-countdown {
  padding: 8px 12px;
  background-color: #fff0f1;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  gap: 4px;
}
.sp-ecoupon-discount-countdown__label {
  color: var(--color-fg-neutral-solid, #222832);
  font-size: var(--font-title-3-size, 0.875rem);
  font-weight: var(--font-title-3-weight, 600);
  line-height: var(--font-title-3-line-height, 1.4);
  letter-spacing: var(--font-title-3-letter-spacing, -0.005em);
}
.sp-ecoupon-discount-countdown__timer {
  color: #fb1822;
  font-size: var(--font-title-3-size, 0.875rem);
  font-weight: var(--font-title-3-weight, 600);
  line-height: var(--font-title-3-line-height, 1.4);
  letter-spacing: var(--font-title-3-letter-spacing, -0.005em);
}

.sp-ecoupon-top-info {
  padding-top: 16px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.sp-ecoupon-top-info__brand {
  color: var(--color-fg-neutral-muted, #6A6F77);
  font-size: var(--font-caption-1-size, 0.875rem);
  font-weight: var(--font-caption-1-m-weight, 500);
  line-height: var(--font-caption-1-line-height, 1.4);
  letter-spacing: var(--font-caption-1-letter-spacing, -0.005em);
}
.sp-ecoupon-top-info__title {
  color: var(--color-fg-neutral-solid, #222832);
  font-size: var(--font-title-1-size, 1.125rem);
  font-weight: var(--font-title-1--m-weight, 500);
  line-height: var(--font-title-1-line-height, 1.4);
  letter-spacing: var(--font-title-1-letter-spacing, -0.005em);
}
.sp-ecoupon-top-info__price {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.sp-ecoupon-top-info__price-final {
  display: flex;
  flex-direction: row;
  gap: 4px;
  align-items: center;
}
.sp-ecoupon-top-info__price-final .final-price-info {
  display: flex;
  flex-direction: row;
  gap: 4px;
  align-items: center;
}
.sp-ecoupon-top-info__price-final .final-price-info .final-discount {
  color: #fb1822;
  font-size: var(--font-heading-4-size, 1.25rem);
  font-weight: var(--font-heading-4-weight, 600);
  line-height: var(--font-heading-4-line-height, 1.4);
  letter-spacing: var(--font-heading-4-letter-spacing, -0.005em);
}
.sp-ecoupon-top-info__price-final .final-price-info .final-price {
  color: var(--color-fg-neutral-solid, #222832);
  font-size: var(--font-heading-4-size, 1.25rem);
  font-weight: var(--font-heading-4-weight, 600);
  line-height: var(--font-heading-4-line-height, 1.4);
  letter-spacing: var(--font-heading-4-letter-spacing, -0.005em);
}
.sp-ecoupon-top-info__price-final .max-benefit {
  display: flex;
  flex-direction: row;
  gap: 2px;
  align-items: center;
}
.sp-ecoupon-top-info__price-final .max-benefit .max-benefit-text {
  color: #fb1822;
  font-size: var(--font-title-2-size, 1rem);
  font-weight: var(--font-title-2-sb-weight, 600);
  line-height: var(--font-title-2-line-height, 1.4);
  letter-spacing: var(--font-title-2-letter-spacing, -0.005em);
}
.sp-ecoupon-top-info__price-final .max-benefit .info-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  border: none;
  background: none;
  padding: 0;
  color: var(--color-fg-neutral-weak, #b2b6ba);
}
.sp-ecoupon-top-info__price-final .max-benefit .info-icon svg {
  width: 100%;
  height: 100%;
}
.sp-ecoupon-top-info__max-benefit-popup {
  min-width: 220px;
  max-width: 338px;
  width: auto;
}
.sp-ecoupon-top-info__point-wrapper {
  display: flex;
  flex-direction: column;
  padding: 10px 12px;
  gap: 8px;
  border-radius: 10px;
  padding: 16px 20px;
}
.sp-ecoupon-top-info__point-wrapper .sp-element-price {
  padding: 0;
}
.sp-ecoupon-top-info__point-title-wrapper {
  display: flex;
  align-items: center;
  gap: 4px;
}
.sp-ecoupon-top-info__list {
  padding: 12px 16px;
  border-radius: 10px;
  border: 1px solid var(--color-border-neutral-line, rgba(0, 0, 0, 0.08));
}

.sp-ecoupon-available-store-check {
  margin-bottom: 12px;
}
.sp-ecoupon-available-store-check .title-component {
  margin-bottom: 24px;
}
.sp-ecoupon-available-store-check .info__text {
  color: var(--color-fg-neutral-solid, #222832);
}

.sp-ecoupon-extra-info__list {
  display: flex;
}
.sp-ecoupon-extra-info__item {
  display: flex;
  gap: 8px;
  flex: 1;
}
.sp-ecoupon-extra-info__label {
  color: var(--color-fg-neutral-solid, #222832);
  width: 80px;
  font-size: var(--font-title-3-size, 0.875rem);
  font-weight: var(--font-title-3-weight, 600);
  line-height: var(--font-title-3-line-height, 1.4);
  letter-spacing: var(--font-title-3-letter-spacing, -0.005em);
}
.sp-ecoupon-extra-info__content {
  color: var(--color-fg-brand-solid, #fb1822);
  font-size: var(--font-title-3-size, 0.875rem);
  font-weight: var(--font-title-3-weight, 600);
  line-height: var(--font-title-3-line-height, 1.4);
  letter-spacing: var(--font-title-3-letter-spacing, -0.005em);
}

[data-select-type=sp-ecoupon-price-bottom-sheet] li[data-direct-input=direct-input] {
  padding: 0;
}
[data-select-type=sp-ecoupon-price-bottom-sheet] li[data-direct-input=direct-input] label {
  margin-top: 10px;
}

.sp-ecoupon-price-range__container {
  display: flex;
  align-items: center;
  gap: 16px;
}
.sp-ecoupon-price-range__container .hyphen {
  width: 12px;
}
.sp-ecoupon-price-range__container .input-wrapper {
  width: calc(50% - 12px - 16px);
  position: relative;
}
.sp-ecoupon-price-range__container .input-wrapper .input__wrap {
  position: relative;
  border-bottom: 2px solid var(--color-border-neutral-weak, #f0f3f5);
  padding: 8px 0 10px 0;
}
.sp-ecoupon-price-range__container .input-wrapper .input__wrap .input__input {
  font-size: var(--font-heading-4-size, 1.25rem);
  font-weight: var(--font-heading-4-weight, 600);
  line-height: var(--font-heading-4-line-height, 1.4);
  letter-spacing: var(--font-heading-4-letter-spacing, -0.005em);
  color: var(--color-fg-neutral-solid, #222832);
  border: none;
  background: none;
  padding: 0;
  width: 100%;
  min-height: 28px;
  flex: 1;
}
.sp-ecoupon-price-range__container .input-wrapper .input__wrap .input__input::placeholder {
  color: var(--color-fg-neutral-disabled, #c8cccf);
}
.sp-ecoupon-price-range__container .input-wrapper .input__wrap .input__input:focus {
  outline: none;
}
.sp-ecoupon-price-range__container .input-wrapper .input__wrap .input__input:focus + .input__label {
  display: none;
}
.sp-ecoupon-price-range__container .input-wrapper .input__wrap .input__utils {
  margin-left: 4px;
}
.sp-ecoupon-price-range__container .input-wrapper .input__wrap .input__utils .unit {
  font-size: var(--font-heading-4-size, 1.25rem);
  font-weight: var(--font-heading-4-weight, 600);
  line-height: var(--font-heading-4-line-height, 1.4);
  letter-spacing: var(--font-heading-4-letter-spacing, -0.005em);
  color: var(--color-fg-neutral-solid, #222832);
}
.sp-ecoupon-price-range__container .input-wrapper .input__wrap:focus-within {
  border-color: var(--color-border-neutral-solid, #222832);
}

.sp-ecoupon-detail__thumbnail {
  padding: 35px;
  aspect-ratio: 1/1;
  background-color: var(--color-bg-neutral-inverted, #ffffff);
}
@media screen and (max-width: 320px) {
  .sp-ecoupon-detail__thumbnail {
    padding: 0;
  }
}
.sp-ecoupon-detail__thumbnail span {
  display: block;
  width: 100%;
  background-color: var(--color-bg-neutral-weak, #f0f3f5);
}
.sp-ecoupon-detail__thumbnail img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  aspect-ratio: 1/1;
}

.ecoupon-gift__intro {
  height: 100dvh;
  background-color: var(--color-bg-neutral-inverted, #ffffff);
  padding-bottom: 0;
}
.ecoupon-gift__intro-container {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  background-color: var(--color-bg-overlay-bk-basic, rgba(0, 0, 0, 0.4));
}
.ecoupon-gift__intro-box {
  text-align: center;
}
.ecoupon-gift__intro-img {
  margin-bottom: 24px;
}

.sp-ecoupon-gift .hidden {
  display: none;
}
.sp-ecoupon-gift .sp-ecoupon-gift__content__title__wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 4px;
  margin-bottom: 16px;
}
.sp-ecoupon-gift .sp-ecoupon-gift__content__box--title {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: var(--font-heading-4-size, 1.25rem);
  font-weight: var(--font-heading-4-weight, 600);
  line-height: var(--font-heading-4-line-height, 1.4);
  letter-spacing: var(--font-heading-4-letter-spacing, -0.005em);
}
.sp-ecoupon-gift .sp-ecoupon-gift__content__box--title-desc {
  color: var(--color-fg-neutral-muted, #6A6F77);
  font-size: var(--font-caption-1-size, 0.875rem);
  font-weight: var(--font-caption-1-m-weight, 500);
  line-height: var(--font-caption-1-line-height, 1.4);
  letter-spacing: var(--font-caption-1-letter-spacing, -0.005em);
  font-weight: 600;
}
.sp-ecoupon-gift .sp-ecoupon-gift__content__list {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.sp-ecoupon-gift .sp-ecoupon-gift__content__list [data-color=gray] svg {
  color: var(--color-icon-neutral-subtle, #898d93);
}
.sp-ecoupon-gift .sp-ecoupon-gift__content__list .btn-flex {
  display: flex;
  align-items: center;
}
.sp-ecoupon-gift .sp-ecoupon-gift__content__list .btn-flex--center {
  justify-content: center;
  gap: 4px;
}
.sp-ecoupon-gift .sp-ecoupon-gift__content__list .btn-flex--between {
  justify-content: space-between;
  gap: 4px;
  width: 100%;
  cursor: initial;
}
.sp-ecoupon-gift .sp-ecoupon-gift__content__list .btn-flex--between span {
  max-width: 94%;
  white-space: break-spaces;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.sp-ecoupon-gift .sp-ecoupon-gift__content__list .btn-flex svg {
  width: 16px;
  height: 16px;
  cursor: pointer;
}
.btn[data-color=gray] .sp-ecoupon-gift .sp-ecoupon-gift__content__list .btn-flex svg {
  color: var(--color-icon-neutral-subtle, #898d93);
}
.sp-ecoupon-gift .hidden {
  display: none;
}
.sp-ecoupon-gift .sp-ecoupon-gift__message-card {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  padding: 16px;
  background-color: var(--color-bg-neutral-weak, #f0f3f5);
  border-radius: 12px;
}
.sp-ecoupon-gift .sp-ecoupon-gift__message-card__image {
  flex-shrink: 0;
  width: 64px;
  height: 38px;
  border-radius: 4px;
  overflow: hidden;
}
.sp-ecoupon-gift .sp-ecoupon-gift__message-card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.sp-ecoupon-gift .sp-ecoupon-gift__message-card__content {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  min-height: 38px;
}
.sp-ecoupon-gift .sp-ecoupon-gift__message-card__text {
  font-size: var(--font-caption-2-size, 0.8125rem);
  font-weight: var(--font-caption-2-m-weight, 500);
  line-height: var(--font-caption-2-line-height, 1.4);
  letter-spacing: var(--font-caption-2-letter-spacing, -0.005em);
  color: var(--color-fg-neutral-solid, #222832);
  line-height: 1.4;
  letter-spacing: -0.065px;
  margin: 0;
  word-break: break-all;
}
.sp-ecoupon-gift .element-box--flex {
  display: flex;
  align-items: center;
  gap: 10px;
}
.sp-ecoupon-gift__hotdeal .sp-order-products__total {
  padding: 12px 4px 4px;
}
.sp-ecoupon-gift__detail .sp-ecoupon-gift__card-accordion__header .banner-band__title {
  font-size: var(--font-title-2-size, 1rem);
  font-weight: var(--font-title-2-sb-weight, 600);
  line-height: var(--font-title-2-line-height, 1.4);
  letter-spacing: var(--font-title-2-letter-spacing, -0.005em);
}
.sp-ecoupon-gift__detail .sp-ecoupon-gift__card-accordion__header.active + .sp-ecoupon-gift__card-accordion__content {
  height: auto;
}
.sp-ecoupon-gift__detail .sp-ecoupon-gift__card-accordion__header.active .banner-band__arrow svg {
  transform: rotate(180deg);
}
.sp-ecoupon-gift__detail .sp-ecoupon-gift__card-accordion__content {
  height: 0;
  overflow: hidden;
}
.sp-ecoupon-gift__detail .sp-ecoupon-gift__card-accordion__inner {
  padding: 0 24px 16px;
}
.sp-ecoupon-gift__detail .sp-ecoupon-gift__card-accordion__inner .img-wrap {
  width: 100%;
  height: auto;
  aspect-ratio: 278/171;
  border-radius: 12px;
  overflow: hidden;
}
.sp-ecoupon-gift__detail .sp-ecoupon-gift__card-accordion__inner .img-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.sp-ecoupon-gift__detail .sp-ecoupon-gift__card-accordion__text {
  font-size: var(--font-body-3-size, 0.875rem);
  font-weight: var(--font-body-3-m-weight, 500);
  line-height: var(--font-body-3-line-height, 1.5);
  letter-spacing: var(--font-body-3-letter-spacing, -0.005em);
  margin-top: 12px;
  color: var(--color-fg-neutral-solid, #222832);
  word-break: break-all;
}
.sp-ecoupon-gift__detail__section[data-type=used] .product-component,
.sp-ecoupon-gift__detail__section[data-type=used] .sp-ecoupon-gift__detail__barcode, .sp-ecoupon-gift__detail__section[data-type=expired] .product-component,
.sp-ecoupon-gift__detail__section[data-type=expired] .sp-ecoupon-gift__detail__barcode {
  opacity: 0.5;
}
.sp-ecoupon-gift__detail__section[data-type=used] .product-component button[data-color=outlined],
.sp-ecoupon-gift__detail__section[data-type=used] .sp-ecoupon-gift__detail__barcode button[data-color=outlined], .sp-ecoupon-gift__detail__section[data-type=expired] .product-component button[data-color=outlined],
.sp-ecoupon-gift__detail__section[data-type=expired] .sp-ecoupon-gift__detail__barcode button[data-color=outlined] {
  display: none;
}
.sp-ecoupon-gift__detail .unit-list__point .element-list-text + .btn {
  margin-top: 16px;
}
.sp-ecoupon-gift__detail-validity-box {
  background-color: var(--color-bg-neutral-weak, #f0f3f5);
  border-radius: 10px;
  padding: 16px 20px;
}
.sp-ecoupon-gift__detail-validity-content {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
}
.sp-ecoupon-gift__detail-validity-label {
  font-size: var(--font-caption-1-size, 0.875rem);
  font-weight: var(--font-caption-1-m-weight, 500);
  line-height: var(--font-caption-1-line-height, 1.4);
  letter-spacing: var(--font-caption-1-letter-spacing, -0.005em);
  color: var(--color-fg-neutral-subtle, #5f646c);
}
.sp-ecoupon-gift__detail-validity-date {
  font-size: var(--font-body-3-size, 0.875rem);
  font-weight: var(--font-body-3-m-weight, 500);
  line-height: var(--font-body-3-line-height, 1.5);
  letter-spacing: var(--font-body-3-letter-spacing, -0.005em);
  color: var(--color-fg-neutral-solid, #222832);
}
.sp-ecoupon-gift__detail-message {
  width: 100%;
}
.sp-ecoupon-gift__detail-usage {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.sp-ecoupon-gift__detail-usage-info {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0;
}
.sp-ecoupon-gift__detail-usage-label {
  font-size: var(--font-caption-1-size, 0.875rem);
  font-weight: var(--font-caption-1-m-weight, 500);
  line-height: var(--font-caption-1-line-height, 1.4);
  letter-spacing: var(--font-caption-1-letter-spacing, -0.005em);
  color: var(--color-fg-neutral-subtle, #5f646c);
}
.sp-ecoupon-gift__detail-usage-button {
  font-size: var(--font-title-4-size, 0.8125rem);
  font-weight: var(--font-title-4-weight, 600);
  line-height: var(--font-title-4-line-height, 1.4);
  letter-spacing: var(--font-title-4-letter-spacing, -0.005em);
  background-color: var(--color-bg-neutral-inverted, #ffffff);
  color: var(--color-fg-neutral-solid, #222832);
  border: 1px solid var(--color-border-neutral-weak, #f0f3f5);
  border-radius: 8px;
  padding: 8px 12px;
  cursor: pointer;
  transition: all 0.2s ease;
}
.sp-ecoupon-gift__detail-usage-button:focus {
  outline: none;
  border-color: var(--color-border-brand-solid, #fb1822);
}
.sp-ecoupon-gift__detail__barcode {
  border: 1px solid var(--color-border-neutral-line, rgba(0, 0, 0, 0.08));
  padding: 8px 20px 10px;
  border-radius: 10px;
  margin: 16px 0;
}
.sp-ecoupon-gift__detail__barcode .spacing--xl {
  display: none;
}
.sp-ecoupon-gift__detail__barcode-wrap img {
  width: 100%;
  height: auto;
}
.sp-ecoupon-gift__detail__barcode-code-wrap {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.sp-ecoupon-gift__detail__barcode-code-wrap .code {
  font-size: var(--font-caption-1-size, 0.875rem);
  font-weight: var(--font-caption-1-m-weight, 500);
  line-height: var(--font-caption-1-line-height, 1.4);
  letter-spacing: var(--font-caption-1-letter-spacing, -0.005em);
  color: var(--color-fg-neutral-subtle, #5f646c);
}
.sp-ecoupon-gift__detail__accordion__inner__img-wrap .text {
  font-size: var(--font-body-3-size, 0.875rem);
  font-weight: var(--font-body-3-m-weight, 500);
  line-height: var(--font-body-3-line-height, 1.5);
  letter-spacing: var(--font-body-3-letter-spacing, -0.005em);
}
.sp-ecoupon-gift__detail__accordion__inner__img-wrap .text span {
  color: var(--color-fg-brand-solid, #fb1822);
}
.sp-ecoupon-gift__detail__accordion__inner__img-wrap .image {
  width: 57.142%;
  max-width: 200px;
  margin: 0 auto;
}
.sp-ecoupon-gift__detail__accordion__inner .form-container .input-wrapper:has(.radio__box) *:not(:last-child) {
  margin-right: 12px;
}
.sp-ecoupon-gift__detail__usage-info-list {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.sp-ecoupon-gift__detail__usage-info-list .btn-txt {
  font-size: var(--font-title-2-size, 1rem);
  font-weight: var(--font-title-2-m-weight, 500);
  line-height: var(--font-title-2-line-height, 1.4);
  letter-spacing: var(--font-title-2-letter-spacing, -0.005em);
  color: var(--color-fg-neutral-subtle, #5f646c);
}
.sp-ecoupon-gift__detail__usage-info-list .btn-txt svg {
  width: 16px;
  height: 16px;
  color: var(--color-fg-neutral-muted-weak, #9da1a7);
}
.sp-ecoupon-gift__detail__usage-info-list .sub-text {
  font-size: var(--font-caption-1-size, 0.875rem);
  font-weight: var(--font-caption-1-m-weight, 500);
  line-height: var(--font-caption-1-line-height, 1.4);
  letter-spacing: var(--font-caption-1-letter-spacing, -0.005em);
  color: var(--color-fg-neutral-muted, #6A6F77);
}
.sp-ecoupon-gift .bottom-sheet__inner {
  font-size: var(--font-body-2-size, 1rem);
  font-weight: var(--font-body-2-m-weight, 500);
  line-height: var(--font-body-2-line-height, 1.5);
  letter-spacing: var(--font-body-2-letter-spacing, -0.005em);
}

.sp-ecoupon-gift__message__bottom-sheet__inner .textarea__info {
  padding-bottom: 0;
}
.sp-ecoupon-gift__message__swiper .swiper-slide {
  width: calc(100% - 80px) !important;
  max-width: 248px;
  min-width: 120px;
}
.sp-ecoupon-gift__message__swiper__item {
  width: 100%;
  height: auto;
  aspect-ratio: 248/148;
  object-fit: cover;
  border: 2px solid transparent;
  border-radius: 12px;
  overflow: hidden;
}
.sp-ecoupon-gift__message__swiper__item.active {
  border: 2px solid var(--color-border-brand-solid, #fb1822);
}
.sp-ecoupon-gift__message__swiper__item img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 248/148;
  overflow: hidden;
  object-fit: cover;
}

.sp-ecoupon-gift__message__bottom-sheet__inner .textarea__info {
  padding-bottom: 0 !important;
}

.sp-ecoupon__purchase-item .sp-purchase-product__info + .sp-price__list {
  margin-top: 16px;
}