/**
 * Theme Name: Blocksy Child
 * Description: Blocksy Child theme
 * Author: Yuli Yang @dejavu.studio
 * Template: blocksy
 * Text Domain: blocksy
 */

/* Genral Styling */
.ds-margin-top-auto {
  margin-top: auto;
}

.ds-text-highlight_underline {
  /* text-decoration: underline; */
  text-decoration-style: solid;
  text-decoration-color: var(--theme-palette-color-13);
  text-decoration-line: underline;
  text-decoration-thickness: 4px;
}
.ds-text-highlight_underline_light {
  text-decoration-style: solid;
  text-decoration-color: var(--theme-palette-color-12);
  text-decoration-line: underline;
  text-decoration-thickness: 6px;
}
.ds-text-highlight_orange {
  color: var(--theme-palette-color-13);
  font-weight: 700;
}
.ds-text-highlight_orange_normal {
  color: var(--theme-palette-color-13);
  font-weight: 400;
}
.ds-text-highlight_orange_linear {
  position: relative;
}
.ds-text-highlight_orange_linear::before {
  content: "";
  display: inline-block;
  z-index: -1;
  position: absolute;
  top: 5px;
  bottom: 0;
  left: 0;
  right: 0;
  background: #fffcc9;
  background: linear-gradient(
    160deg,
    rgba(255, 252, 201, 1) 47%,
    rgba(254, 226, 116, 1) 100%
  );
}
.ds-text-highlight_larger {
  display: inline-block;
  transform: scale(1.2);
  transform-origin: bottom;
  line-height: 1;
}
.ds-text-highlight_smaller {
  display: inline-block;
  transform: scale(0.8);
  transform-origin: bottom;
  line-height: 1;
}
.ds-bg-1::before {
  content: "";
  display: block;
  z-index: -1;
  position: absolute;
  left: 10px;
  top: 10px;
  width: 100%;
  height: 100%;
  background-color: var(--theme-palette-color-13);
  opacity: 0.17;
  border-radius: 24px;
}
@media (max-width: 767px) {
  .ds-bg-1::before {
    border-radius: 12px;
  }
}
.ds-flexbox-width-fit-content {
  width: fit-content;
}

/* Menu */
nav.menu-container .ct-menu-link {
  white-space: nowrap;
}
nav.menu-container [class*="animated-submenu"] > .sub-menu {
  width: auto;
}

/* Elementor Widget Style */
/* Icon Hover Checkmark */
@media (min-width: 1024px) {
  .ds-iconbox-hover .icon-hover-checkmark::after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    right: -2px;
    width: 20px;
    height: 20px;
    background: url(./assets/img/icon-check-hover.png);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    pointer-events: none;
    z-index: 1;
    opacity: 0;
    transition: opacity 0.3s ease;
  }
  .ds-iconbox-hover:hover .icon-hover-checkmark::after {
    opacity: 1;
  }

  /* Hover Box */
  .ds-hover-box .ds-hover-box-inner {
    opacity: 0;
    transition: opacity 0.3s ease;
    visibility: hidden;
    pointer-events: none;
  }
  .ds-hover-box::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: var(--theme-palette-color-13);
    opacity: 0;
    transition: opacity 0.3s ease;
    z-index: 1;
    pointer-events: none;
  }
  .ds-hover-box:hover::before {
    opacity: 0.3;
  }
  .ds-hover-box:hover .ds-hover-box-inner {
    opacity: 1;
    visibility: visible;
    z-index: 2;
  }
  .ds-hover-box .ds-hover-box-content {
    pointer-events: none;
  }
}

/* Number List */
.elementor-element.ds-circle-number-bg {
  background: linear-gradient(141.59deg, #fccb4e 4.44%, #f89c26 95.28%);
  width: 28px;
  height: 28px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
}

/* FAQ Accordion */
.ds-faq .e-n-accordion-item {
  box-shadow: 0 2px 8px rgba(171, 171, 171, 0.5);
  border-radius: 6px;
}

/* Ratio COntainer */
.ds-container-ratio-16-9 {
  aspect-ratio: 16/9 auto;
}

/* Carousel - Awards */
.ds-awards-carousel {
}

/* Steps Section */
@media (min-width: 768px) {
  .ds-step-middle-line::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 64%;
    height: 1px;
    border-bottom: 2px dotted var(--theme-palette-color-13);
    transform: translateX(-50%) translateY(-50%);
  }
  .ds-podcast-side-line::before {
    content: "";
    position: absolute;
    top: 120px;
    left: 70px;
    width: 1px;
    height: 100%;
    border-left: 1px solid #dddddd;
  }
}
@media (max-width: 767px) {
  .ds-step-middle-line::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 32px;
    width: 1px;
    height: 80%;
    border-left: 2px dotted var(--theme-palette-color-13);
    transform: translateY(-50%);
  }
  .ds-podcast-side-line::before {
    content: "";
    position: absolute;
    top: 30px;
    left: 50px;
    width: 1px;
    height: 100%;
    border-left: 1px solid #dddddd;
  }
}
.ds-step-side-line::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  width: 1px;
  height: 100%;
  border-left: 2px dotted var(--theme-palette-color-13);
  transform: translateX(-50%);
}

/* Shape - Triangle */
.ds-rounded-triangle {
  position: relative;
  background-color: var(--theme-palette-color-5);
  text-align: left;
}
.ds-rounded-triangle:before,
.ds-rounded-triangle:after {
  content: "";
  position: absolute;
  background-color: inherit;
}
.ds-rounded-triangle,
.ds-rounded-triangle:before,
.ds-rounded-triangle:after {
  width: 50px;
  height: 50px;
  border-top-right-radius: 30%;
}

.ds-rounded-triangle {
  transform: rotate(-60deg) skewX(-30deg) scale(1, 0.866);
}
.ds-rounded-triangle:before {
  transform: rotate(-135deg) skewX(-45deg) scale(1.414, 0.707)
    translate(0, -50%);
}
.ds-rounded-triangle:after {
  transform: rotate(135deg) skewY(-45deg) scale(0.707, 1.414) translate(50%);
}

/* Video Embed */
.ds-video-embed {
  display: flex;
  justify-content: center;
}

.ds-video-embed iframe {
  aspect-ratio: 16 / 9;
  width: 100% !important;
  height: 100% !important;
}

/* UL Dropdown Selector Link */
.ds-ebook-list-dropdown {
  position: relative;
  display: inline-block;
  color: #666666;
}

.ds-ebook-list-dropdown-toggle {
  cursor: pointer;
  padding: 0.5em 1em;
  border: 1px solid #ccc;
  border-radius: 10px;
  min-width: 220px;
}
.ds-ebook-list-dropdown-toggle::after {
  content: "";
  display: inline-block;
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%) rotate(0deg);
  width: 12px;
  height: 12px;
  background: url(./assets/img/icon-dropdown-select.svg) no-repeat center center;
  background-size: contain;
  margin-left: 40px;
  vertical-align: middle;
  transition: transform 0.3s ease;
}
.ds-ebook-list-dropdown-menu {
  display: none;
}

.ds-ebook-list-dropdown.open .ds-ebook-list-dropdown-menu {
  display: block;
}

.ds-ebook-list-dropdown-menu {
  display: none;
  position: absolute;
  background: white;
  list-style: none;
  margin: 0;
  padding: 0;
  border: 1px solid #ccc;
  border-radius: 10px;
  z-index: 10;
  min-width: 220px;
}

/* .ds-ebook-list-dropdown:hover .ds-ebook-list-dropdown-menu {
  display: block;
} */

.ds-ebook-list-dropdown-menu li:hover {
  background-color: #f0f0f0;
}

.ds-ebook-list-dropdown-menu a {
  display: block;
  padding: 0.5em 1em;
  cursor: pointer;
  color: #666666;
}

/* Free eBook Download Filter */
.ds-filter-ebook-dropdown {
  position: relative;
  display: inline-block;
  color: #666666;
}

.ds-filter-ebook-dropdown-toggle {
  cursor: pointer;
  padding: 0.5em 1em;
  border: 1px solid #ccc;
  border-radius: 10px;
  min-width: 200px;
}
.ds-filter-ebook-dropdown-toggle::after {
  content: "";
  display: inline-block;
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%) rotate(0deg);
  width: 12px;
  height: 12px;
  background: url(./assets/img/icon-dropdown-select.svg) no-repeat center center;
  background-size: contain;
  margin-left: 40px;
  vertical-align: middle;
  transition: transform 0.3s ease;
}

.ds-filter-ebook-dropdown-menu {
  display: none;
  position: absolute;
  background: white;
  list-style: none;
  margin: 0;
  padding: 0;
  border: 1px solid #ccc;
  border-radius: 10px;
  z-index: 10;
  min-width: 200px;
}

/* .ds-filter-ebook-dropdown:hover .ds-filter-ebook-dropdown-menu {
  display: block;
} */

.ds-filter-ebook-dropdown-menu li {
  padding: 0.5em 1em;
  cursor: pointer;
}

.ds-filter-ebook-dropdown-menu li:hover {
  background-color: #f0f0f0;
}

.ds-filter-ebook-dropdown-menu {
  display: none;
}

.ds-filter-ebook-dropdown.open .ds-filter-ebook-dropdown-menu {
  display: block;
}

.ds-filter-ebook {
}

.ds-filter-ebook-item {
}

.ds-filter-ebook-item.hidden {
  display: none;
}

/* Buttons */
.ds-button-arrow a.elementor-button-link {
  display: inline-flex;
  align-items: center;
}
.ds-button-arrow a.elementor-button-link::after {
  content: "";
  display: inline-block;
  margin-left: 8px;
  width: 28px;
  height: 10px;
  background: url(./assets/img/icon-button-arrow-orange.svg) no-repeat center
    center;
  background-size: contain;
  vertical-align: middle;
}
.ds-button-arrow a.elementor-button-link:hover::after {
  background: url(./assets/img/icon-button-arrow-white.svg) no-repeat center
    center;
  background-size: contain;
  vertical-align: middle;
}

/* Message */
.form-submit .submit {
  background: linear-gradient(
    89.87deg,
    #fffcc9 0.11%,
    #fee274 24.74%,
    #fcd03b 72.97%
  ) !important;
  color: #350900 !important;
  font-weight: normal !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 0.8em 1.2em !important;
  border: none !important;
  cursor: pointer !important;
  text-decoration: none !important;
  font-size: 1em !important;
  line-height: 1.2 !important;
  transition: background 0.3s ease !important;
  border-radius: 80px !important; /* ← 這一行就是圓角設定 */
}

.form-submit .submit::after {
  content: "" !important;
  display: inline-block !important;
  width: 18px !important;
  height: 18px !important;
  background-image: url("/wp-content/uploads/2025/10/arrow-up.svg") !important;
  background-size: contain !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  flex-shrink: 0 !important;
}

/* Hover 效果淡一點 */
.form-submit .submit:hover {
  background: linear-gradient(
    89.87deg,
    #fffcc9cc 0.11%,
    #fee274cc 24.74%,
    #FCD03
  );
}

/* Hover 效果淡一點 */
.form-submit .message-btn:hover {
  background: linear-gradient(
    89.87deg,
    #fffcc9cc 0.11%,
    #fee274cc 24.74%,
    #fcd03bcc 72.97%
  ) !important;
}

/* Underline */
.rounded-underline span {
  position: relative;
  display: inline-block;
  z-index: 1;
}
.rounded-underline span::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0.2em; /* 讓底線吃進文字一點點 */
  width: 100%;
  height: 6px;
  background-color: #f89c26;
  border-radius: 6px;
  z-index: -1;
}

/* Slider */
.elementor
  .testimonial-slider-container
  .testimonial-slider
  .jet-listing-grid__slider-icon {
  width: 86px;
  height: 46px;
  border: 1px solid #999999;
  border-radius: 48px;
  transition: all 0.3s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
}

.elementor
  .testimonial-slider-container
  .testimonial-slider
  .jet-listing-grid__slider-icon:hover {
  border-color: #f89c26;
}

/*Tab*/
#note-1 .e-n-accordion-item-title-text::before {
  content: "";
  display: inline-block;
  background: url("/wp-content/uploads/2025/06/ic-num-1.svg") no-repeat center
    center;
  background-size: contain;
  width: 24px;
  height: 24px;
  margin-right: 8px;
  vertical-align: middle;
}

#note-2 .e-n-accordion-item-title-text::before {
  content: "";
  display: inline-block;
  background: url("/wp-content/uploads/2025/06/ic-num-2.svg") no-repeat center
    center;
  background-size: contain;
  width: 24px;
  height: 24px;
  margin-right: 8px;
  vertical-align: middle;
}

#note-3 .e-n-accordion-item-title-text::before {
  content: "";
  display: inline-block;
  background: url("/wp-content/uploads/2025/06/ic-num-3.svg") no-repeat center
    center;
  background-size: contain;
  width: 24px;
  height: 24px;
  margin-right: 8px;
  vertical-align: middle;
}

/*Global*/
.text-yellow span {
  color: #fdf588;
}
.text-green span {
  color: #8cc641;
}

/* Header */
@media (max-width: 1024px) {
  .mobile-home {
    display: none !important;
  }
  .ct-language-switcher[data-type="inline"] .ct-language {
    display: flex !important;
    flex-direction: column-reverse !important;
    align-items: flex-start;
    gap: 0.5rem;
  }
  .ct-language-switcher .ct-language li {
    display: block;
  }
  .ct-language-switcher .ct-language a {
    display: inline-block;
    padding: 0;
    text-decoration: none;
    color: #333;
    font-size: 14px;
  }
}

/* 手機版選單 帳戶和語言 */
.login-icon .e-n-accordion-item-title-text {
  position: relative;
  padding-left: 24px;
}

.login-icon .e-n-accordion-item-title-text::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 14px;
  height: 14px;
  mask: url("https://shop.richestlife.com/wp-content/uploads/2025/11/avatar.svg")
    no-repeat center;
  mask-size: contain;
  background-color: #666;
}

/* 文章分類 */
.wp-block-categories-list {
  list-style: none;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.wp-block-categories-list li {
  display: flex;
  justify-content: space-between;
}

/* 文章簡述 */
.ds-excerpt {
  color: #555555;
  margin: 0;
}
.ds-excerpt-readmore {
  color: #555555;
  font-weight: 700;
}
.ds-excerpt-readmore:hover {
  color: #f89c26;
}

/* Loop Grid Pagination */
.page-numbers.prev,
.page-numbers.next {
  display: inline-block;
  width: 50px;
  height: 50px;
  line-height: 50px;
  border: 0;
  /* border-radius: 50%; */
}
.page-numbers.prev svg,
.page-numbers.next svg {
  width: auto;
  height: 12px;
  position: relative;
  top: -1px;
  right: -1px;
  fill: #48843e;
}
/* a.page-numbers.prev,
a.page-numbers.next {
  border-color: #f89c26;
} */
/* a.page-numbers.prev svg,
a.page-numbers.next svg {
  fill: #f89c26;
} */
/* a.page-numbers.prev:hover,
a.page-numbers.next:hover {
  background-color: #f89c26;
} */
a.page-numbers.prev:hover svg,
a.page-numbers.next:hover svg {
  fill: #48843e;
}
.page-numbers.current {
  color: #333333;
  font-weight: 700;
}
/* 單一文章分類 */
.ds-post-cats {
  display: inline-block;
  line-height: 18px;
  font-size: 16px;
  padding-left: 12px;
  border-left: 1px solid #666666;
}
.ds-post-cats a {
  color: #666666;
}
.ds-post-cats a:hover {
  color: #f89c26;
}

.ds-testimonial-type {
  display: flex;
  align-items: center;
  flex-direction: row;
  gap: 5px;
}
.ds-testimonial-type:before {
  content: "●";
  color: #f89c26;
  font-size: 13px;
}
.ds-testimonial-type a {
  color: #666666;
}
.ds-testimonial-type a:hover {
  color: #f89c26;
}

.ds-tax-link {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  margin: 10px;
}
.ds-tax-link a {
  color: #555555;
}
.ds-tax-link a:hover {
  color: #f89c26;
}

/* 音樂下載 */
.music-list-wrap .music-list-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
}
.music-list-wrap .jet-listing-dynamic-repeater__item h3 {
  font-weight: normal;
}
.music-list-wrap .jet-listing-dynamic-repeater__item:nth-child(4n + 1) h3 {
  color: #58b9da;
}
.music-list-wrap .jet-listing-dynamic-repeater__item:nth-child(4n + 2) h3 {
  color: #75d69c;
}
.music-list-wrap .jet-listing-dynamic-repeater__item:nth-child(4n + 3) h3 {
  color: #f90;
}
.music-list-wrap .jet-listing-dynamic-repeater__item:nth-child(4n) h3 {
  color: #8d6dc4;
}
#qrcode {
  text-align: center;
}
/*Menu*/
.ct-panel-content-inner {
  padding-top: 0px;
}

/* 正方形 DIV */
/* .ds-square-container {
  width: 50%;
} */
/* .ds-square {
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: 100%;
}
.ds-square img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  color: white;
  text-align: center;
} */

.ds-square {
  position: relative;
  width: 100%;
  padding-top: 100%; /* keeps a 1:1 ratio */
  overflow: hidden;
}

.ds-square img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Product Category List */
.ds-product-cat-tree {
  width: 250px;
}

.ds-product-cat-item {
  margin-bottom: 0.5rem;
}

.ds-product-cat-header {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  justify-content: space-between;
}

.ds-product-cat-toggle {
  cursor: pointer;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 10px;
  height: 10px;
  margin-left: 0.5rem;
}

.ds-product-cat-arrow {
  display: inline-flex;
  width: 1rem;
  height: 1rem;
}

.ds-product-cat-arrow--placeholder {
  visibility: hidden;
}

/* Arrow area */
.ds-product-cat-arrow {
  width: 100%;
  height: 100%;
  transform-origin: center;
}
.ds-product-cat-arrow svg {
  transform-origin: center;
  transition: transform 0.18s ease;
}

/* OPEN = arrow up */
.ds-product-cat-item.ds-open .ds-product-cat-arrow svg {
  transform: rotate(180deg);
}

/* CLOSED = arrow upside down (down arrow) */
.ds-product-cat-item.ds-closed .ds-product-cat-arrow svg {
  transform: rotate(0deg);
}

.ds-product-cat-name {
  text-decoration: none;
  color: #333333;
  font-weight: 600;
}

.ds-product-cat-children {
  margin: 0.25rem 0 0.5rem 0;
  padding-left: 0;
  list-style: none;
}

.ds-product-cat-child .ds-product-cat-name {
  color: #666666;
  font-weight: 400;
}

.ds-product-cat-name:hover {
  color: #48843e;
}

/* 手機版商品分類 */
.ds-product-cat-dropdown {
  width: 100%;
  max-width: 360px;
  font-size: 14px;
}

.ds-product-cat-dropdown-toggle {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.5rem 0.75rem;
  background-color: #48843e;
  color: #fff;
  border-radius: 6px;
  cursor: pointer;
  box-sizing: border-box;
}

.ds-product-cat-dropdown.ds-open .ds-product-cat-dropdown-toggle {
  background-color: #fff;
  color: #48843e;
  border: 1px solid #48843e;
}

.ds-product-cat-dropdown-label {
  flex: 1;
  /* - 天圓君蕙修 - */
  font-size: 16px;
  padding: 2px;
  /* - 天圓君蕙修 - */
}

.ds-product-cat-dropdown-icon {
  margin-left: 0.5rem;
  font-weight: 600;
}

.ds-product-cat-dropdown-panel {
  border: 1px solid #dddddd;
  border-top: 4px solid #48843e;
  border-radius: 0 0 6px 6px;
  background-color: #fff;
  padding: 0.75rem 0;
  margin-top: 0.5rem;
  box-sizing: border-box;
}

.ds-product-cat-dropdown-list,
.ds-product-cat-dropdown-children {
  list-style: none;
  margin: 0;
  padding: 0;
}

.ds-product-cat-dropdown-row {
  /* padding: 0.5rem 0.75rem; */
}

.ds-product-cat-dropdown-arrow {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 30px;
}

.ds-product-cat-dropdown-arrow svg {
  transform-origin: center;
  transform: rotate(180deg);
  transition: transform 0.18s ease;
  width: 10px;
  height: 10px;
}

.ds-product-cat-dropdown-row.ds-closed .ds-product-cat-dropdown-arrow svg {
  transform: rotate(0deg);
}

.ds-product-cat-dropdown-name {
  text-decoration: none;
  color: #333;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.ds-product-cat-dropdown-name-text {
  padding: 0.5rem 0.75rem;
}

.ds-product-cat-dropdown-name:hover {
  text-decoration: underline;
  color: #333333;
  font-weight: 700;
}

.ds-product-cat-dropdown-children {
  padding-left: 1.25rem;
  background-color: #f8f8f8;
}

.ds-product-cat-dropdown-item.ds-child .ds-product-cat-dropdown-row {
  padding-left: 0.25rem;
}

.woocommerce [data-pagination="simple"] .page-numbers,
.woocommerce [data-pagination="next_prev"] .page-numbers {
  border-radius: 4px;
}
.woocommerce a.page-numbers.prev,
.woocommerce a.page-numbers.next {
  text-indent: -999px;
  overflow: hidden;
  position: relative;
}
.woocommerce a.page-numbers.prev svg,
.woocommerce a.page-numbers.next svg {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

/* Custom CSS 轉移 */
/* 版面調整 */
#main {
  padding-left: 20px;
  padding-right: 20px;
}

/* 商店選單 */
nav.menu-container #menu-top-right .sub-menu {
  width: 100%;
}
nav.menu-container #menu-top-right .sub-menu a {
  display: inline-block;
  text-align: center;
}
.shop-main-menu-link:hover {
  font-weight: 600;
}
/* #header [data-row="bottom"] [data-items] {
	justify-content: space-evenly;
} */
#header [data-row="bottom"] [data-column="middle"] .ct-header-content-block {
  width: 100%;
}
#header [data-row="bottom"] .ct-container-fluid {
  margin: 0;
  width: 100%;
}
.ds-menu-divider {
  display: block;
  width: 1px;
  height: 20px;
  background-color: #bbbbbb;
}
/* Breadcrumb */
@media (max-width: 768px) {
  .ct-breadcrumbs[data-source="default"] > span [class*="ct-separator"] {
    margin: 0 3px;
  }
}

/* Mobile Menu */
.ct-header [data-id="content-block"] {
  width: 100% !important;
  max-width: 100% !important;
  flex: 1 1 100% !important;
}

/* WooCommerce */

.product-entry-wrapper .sale-price {
  flex-direction: column;
}
.single-product .product .entry-summary .sale-price {
  align-items: flex-start;
}

/*商品分類頁>產品標題:後台已有功能，但無法使用*/
[data-products] .woocommerce-loop-product__title,
[data-products] .woocommerce-loop-category__title {
  font-size: 16px;
}

.product .sale-price del {
  font-size: 16px;
  color: #b2b2b2;
  font-weight: 400;
}

.products .ct-woo-card-extra {
  display: flex;
  justify-content: center;
  gap: 10px;
}
.products .ct-woo-card-extra a.button,
.products .ct-woo-card-extra .ct-button {
  width: 50px;
  border-radius: 50%;
}

/* Single Product */

/*單一商品title設定，後台已有功能，但無法使用*/
.entry-summary h1.entry-title {
  font-size: 26px;
}

/* .ds-price-original .amount {
	text-decoration: line-through;
}
.ds-price-sale .elementor-heading-title {
	display: flex;
	align-items: center;
}
.ds-price-sale .amount {
	color: #BF1F0B;
	font-size: 28px;
	font-weight: 700;
} */

.single-product .price {
  font-size: 18px;
  color: #bf1f0b;
  font-weight: 700;
}

.single-product .entry-summary .price .ds-label-original,
.single-product .price .ds-label-sale {
  font-size: 18px;
  color: #666666;
  font-weight: 400;
}
.single-product .entry-summary .sale-price .price-column {
  display: flex;
  align-items: center;
}
.single-product .entry-summary .sale-price del {
  color: #666666;
  font-weight: 400;
  opacity: 1;
}

.single-product .entry-summary .price-column ins bdi {
  font-size: 28px;
}

.elementor-widget-woocommerce-product-add-to-cart .quantity .qty {
  border-radius: 10px !important;
}
/* .elementor-widget-woocommerce-product-add-to-cart button[name="add-to-cart"] {
	border-radius: 4px !important;
} */
.woocommerce div.product div.woocommerce-tabs ul.tabs li.active:before {
  background: #48843e !important;
}

.woocommerce div.product div.woocommerce-tabs ul.tabs {
  justify-content: flex-start;
}
.woocommerce div.product.elementor .woocommerce-tabs .panel {
  padding-left: 0;
  padding-right: 0;
}
.wc-tab h4 {
  font-size: 22px;
}
div.quantity .ct-increase:hover,
div.quantity .ct-decrease:hover {
  background: #666666;
}
.ct-product-add-to-cart button.button,
.ct-product-add-to-cart button.button:hover {
  border-color: #bf1f0b;
}
/* 購物車頁面 */
.woocommerce-cart .cart .button {
  background: #48843e;
}

.woocommerce-cart .checkout-button {
  background: #bf1f0b;
  border-color: #bf1f0b;
}

.woocommerce-cart .order-total .amount {
  color: #48843e;
  font-weight: 700;
  font-size: 24px;
}
.woocommerce-cart div.quantity input[type="number"] {
  border-color: #e0e0e0;
}

/* 這裡是側邊購物車的按鈕樣式，寫錯地方，且無須寫此段
.woocommerce-mini-cart__buttons .button.checkout {
	border-color: #FF06D1;
} */

.woocommerce-cart .coupon {
  width: 100%;
  display: flex;
  align-items: center;
  /* 	justify-content: center; */
}
.woocommerce-cart .coupon-error-notice {
  margin: 0 0 0 10px;
}
@media (max-width: 767px) {
  .woocommerce-cart .coupon-error-notice {
    margin: 10px 0;
  }
}
/* 結帳 */
.woocommerce-checkout .woocommerce .ct-customer-details h3 {
  font-size: 22px;
}
.woocommerce-form-coupon-toggle .woocommerce-info,
.woocommerce-form-login-toggle .woocommerce-info {
  background: none;
  padding: 0;
  font-weight: 500;
  margin: 0;
  flex-direction: row !important;
  align-items: center !important;
}
.woocommerce-form-coupon-toggle .woocommerce-info::before,
.woocommerce-form-login-toggle .woocommerce-info::before {
  display: none;
}
.woocommerce-form-coupon-toggle .woocommerce-info a,
.woocommerce-form-login-toggle .woocommerce-info a {
  color: #48843e;
  text-decoration: underline;
  font-weight: 700;
  margin: 0 !important;
  margin-inline-start: 15px !important;
}
.woocommerce-checkout form.woocommerce-checkout {
  margin-top: 20px;
}
.woocommerce-form-coupon button.button {
  background-color: #48843e;
  border-color: #48843e;
  border-radius: 2px;
}
.woocommerce-checkout .woocommerce-form-coupon button.button:hover {
  background-color: rgba(72, 132, 62, 0.8) !important;
}
.woocommerce-checkout .woocommerce-form.woocommerce-form-login,
.woocommerce-checkout .woocommerce-form-coupon {
  margin-top: 20px;
  border: 2px solid #ececec;
  padding: 2rem 2rem 0 2rem;
  max-width: 400px;
  border-radius: 2px;
}
.woocommerce-checkout .woocommerce-form.woocommerce-form-login .form-row {
  float: none;
  width: 100%;
}

.woocommerce-checkout .woocommerce .ct-order-review {
  background: #f9f9f9;
  border-style: none;
  border-radius: 0;
}
.woocommerce-checkout .woocommerce .ct-order-review h3 {
  text-align: center;
}
/* .woocommerce-checkout .woocommerce .woocommerce-checkout-review-order-table {
	background: #AAAAAA;
} */
.woocommerce-checkout .woocommerce .place-order button {
  background: #bf1f0b;
}
.woocommerce-privacy-policy-link {
  color: #666666;
}

/* 側邊購物車 */
.ct-panel-heading {
  font-size: 0 !important;
}
.ct-panel-heading::before {
  content: "商品館購物車";
  font-size: 18px;
  display: inline-block;
}

.ct-panel-actions {
  padding-bottom: 24px;
  margin-bottom: 24px;
  border-bottom: 1px solid var(--theme-palette-color-5);
}

.remove_from_cart_button svg {
  display: none;
}
.remove_from_cart_button::before {
  content: "";
  display: inline-block;
  width: 16px;
  height: 16px;
  background-color: currentColor;
  -webkit-mask: url(./assets/img/icon-cancel.svg) no-repeat center / contain;
  mask: url(./assets/img/icon-cancel.svg) no-repeat center / contain;
}
.remove_from_cart_button {
  color: var(--theme-palette-color-3);
}
.remove_from_cart_button:hover {
  color: var(--theme-palette-color-1);
}
/*優惠價格顏色變綠色，先拿掉看看
.woocommerce-Price-amount.amount {
  color: var(--theme-palette-color-10);
}  */

.woocommerce-mini-cart__buttons.buttons {
  display: flex;
  flex-direction: column;
  gap: 12px;
  width: 100%;
  text-align: center;
}

.woocommerce-mini-cart__buttons .button.wc-forward:not(.checkout) {
  background-color: var(--theme-palette-color-6);
  color: var(--theme-palette-color-3);
}
.woocommerce-mini-cart__buttons .button.wc-forward:not(.checkout):hover {
  background-color: var(--theme-palette-color-6);
  color: var(--theme-palette-color-3);
}
.woocommerce-mini-cart__buttons .button.checkout {
  background-color: #bf200a;
  color: #fff;
}
.woocommerce-mini-cart__buttons .button.checkout:hover {
  background-color: #a91b08;
  color: #fff;
}

/* Search */
.woocommerce-product-search.ct-search-form {
  position: relative;
  width: 100%;
  background: #f3f3f3;
  border-radius: 999px;
}
.woocommerce-product-search.ct-search-form .search-field {
  width: 100%;
  height: 44px;
  background: transparent;
  border: none;
  outline: none;
  box-shadow: none;
  padding-left: 48px;
  padding-right: 16px;
  font-size: inherit;
  line-height: inherit;
}
.woocommerce-product-search.ct-search-form .search-field:focus {
  border: none;
  outline: none;
  box-shadow: none;
}
.woocommerce-product-search.ct-search-form .search-field::placeholder {
  color: rgba(0, 0, 0, 0.45);
}
.woocommerce-product-search.ct-search-form button.wp-element-button {
  position: absolute;
  left: 14px;
  top: 50%;
  transform: translateY(-50%);
  width: 24px;
  height: 24px;
  padding: 0;
  margin: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
  line-height: 0;
  min-width: 0;
  min-height: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
.woocommerce-product-search.ct-search-form button.wp-element-button svg {
  width: 20px;
  height: 20px;
  display: block;
}
.woocommerce-product-search.ct-search-form button.wp-element-button svg path {
  fill: #626262;
}
.woocommerce-product-search.ct-search-form:hover
  button.wp-element-button
  svg
  path {
  fill: #3f3f3f;
}
.woocommerce-product-search.ct-search-form .ct-ajax-loader {
  display: none;
}

/* 以下君蕙修*/

/* ------全區域間距調整------- */
/* 針對商品分類+商品頁頂部間距修改 */
/*電腦版(2個地方有設間距)*/
/* .elementor-628 .elementor-element.elementor-element-b0c01a5{
	margin-top: 10px;
	margin-bottom:0;
}
.elementor-628 .elementor-element-b0c01a5 > .e-con-inner{
	padding: 8px 0 15px 0;
} */

/*手機版(2個地方有設間距)*/
/* @media (max-width: 767px){
.elementor-628 .elementor-element.elementor-element-b0c01a5{
		margin-top: 0px;
		margin-bottom: 0px;
	}
.elementor-628 .elementor-element.elementor-element-b0c01a5 > .e-con-inner{
	padding: 5px 0 10px 0;
	}
} */

/* 針對購物車頁面的頂部間距修改 */
/*電腦版*/
.woocommerce-cart .ct-container-full[data-vertical-spacing*="top"] {
  padding-top: 8px;
}
/*手機板*/
.woocommerce-cart
  .wp-block-group.is-layout-constrained.wp-block-group-is-layout-constrained {
  margin-top: 10px !important;
  margin-bottom: 0px !important;
}

/* 針對結帳頁的頂部間距修改 */
/*電腦版*/
.woocommerce-checkout .ct-container-full[data-vertical-spacing*="top"] {
  padding-top: 8px;
}

/*手機板*/
.woocommerce-checkout
  .wp-block-group.is-layout-constrained.wp-block-group-is-layout-constrained {
  margin-top: 5px !important;
}

/* 針對會員中心的頂部間距修改 */
/*電腦版*/
.woocommerce-account .ct-container-full[data-vertical-spacing*="top"] {
  padding-top: 8px;
}
/*手機板*/
.woocommerce-account
  .wp-block-group.is-layout-constrained.wp-block-group-is-layout-constrained {
  margin-top: 5px !important;
  margin-bottom: 15px !important;
}

/* ---全域selection下拉式選單--- */
.woocommerce select {
  background-color: #fff;
  box-shadow: inset 0 -1.4em 1em 0 rgba(0, 0, 0, 0.02);
  border: 1px solid #dddddd;
  border-radius: 0;
}

/* ------分類選單(分類頁,商品頁,搜尋頁) -------*/
/* 電腦版 */
/* 商品館分類 文字 */
/* .elementor-631 .elementor-element-bd7e1fe .elementor-heading-title{
	font-size: 18px;
} */

/* 撐開底線 */
/* .elementor-631 
.elementor-element.elementor-element-bd7e1fe 
> .elementor-widget-container{
border-bottom: 10px solid #000;
padding-bottom: 6px;
} */

/* 手機版(綠色選單) */
/* .ds-product-cat-dropdown-label{
	font-size: 16px;
	padding: 2px;
} */

/* ----------側邊購物車---------- */
#woo-cart-panel .woocommerce-mini-cart__total {
  font-size: 18px;
  text-align: center;
}

#woo-cart-panel .woocommerce-mini-cart__total strong {
  font-size: 18px;
}

#woo-cart-panel .woocommerce-mini-cart__total .amount {
  font-size: 20px;
  font-weight: 700;
  color: #48843e;
}

#woo-cart-panel .woocommerce-mini-cart__total,
.woocommerce-mini-cart__buttons,
.ct-suggested-products--mini-cart {
  padding-top: 10px;
  padding-bottom: 5px;
  margin-bottom: 5px;
  border-top: none;
}

#woo-cart-panel .woocommerce-mini-cart__buttons,
#woo-cart-panel .ct-suggested-products--mini-cart {
  border-top: none;
  padding-top: 5px;
}

/* 商品圖縮小 */
@media (min-width: 383px) {
  #woo-cart-panel .ct-media-container img {
    width: 70px;
  }
}

/* 標題間距縮小 */
#woo-cart-panel .ct-panel-actions {
  padding-bottom: 20px;
}

@media (min-width: 690px) {
  #woo-cart-panel .ct-panel-actions {
    padding-top: 20px;
  }
}

/* ------全區域價格樣式調整------- */
/* 刪除原價文字+線的顏色 */
.price del .woocommerce-Price-amount bdi {
  color: #666;
  font-weight: 300;
}

.price del {
  text-decoration-color: #aaa;
}

/* ----------商品分類頁---------- */

/* 分類標題文字 */
.elementor-widget-container h4 {
  font-size: 22px;
}

/* 每個分類描述文字 */
/* .elementor-element-a133b4b .elementor-heading-title {
  font-size: 15px;
} */

/* ----------單一商品頁---------- */

/* 手機版商品圖與標題間距 */
@media (max-width: 999.98px) {
  .single-product .woocommerce-product-gallery {
    margin-bottom: 1.5em;
  }
}

/* 商品多圖庫 */
/* 左右箭頭容器 */
/* 隱藏原本 SVG */
.single-product .woocommerce-product-gallery .flexy-arrow-prev svg,
.single-product .woocommerce-product-gallery .flexy-arrow-next svg,
.single-product .woocommerce-product-gallery .flexy-arrow-prev::before,
.single-product .woocommerce-product-gallery .flexy-arrow-next::before {
  display: none;
}

/* 用 after 畫新箭頭 */
.single-product .woocommerce-product-gallery .flexy-arrow-prev::after,
.single-product .woocommerce-product-gallery .flexy-arrow-next::after {
  content: "";
  display: block;
  width: 14px;
  height: 14px;
  border-left: 3px solid #6a6a6a;
  border-bottom: 3px solid #6a6a6a;
}

/* 左箭頭 */
.single-product .woocommerce-product-gallery .flexy-arrow-prev::after {
  transform: rotate(45deg);
}

/* 右箭頭 */
.single-product .woocommerce-product-gallery .flexy-arrow-next::after {
  transform: rotate(-135deg);
}

/* ===== Hover 變色 ===== */
.single-product .woocommerce-product-gallery .flexy-arrow-prev:hover::after,
.single-product .woocommerce-product-gallery .flexy-arrow-next:hover::after {
  border-color: #5a5a5a;
}

/* 手機版時 */
@media (max-width: 768px) {
  .single-product .woocommerce-product-gallery .flexy-arrow-prev,
  .single-product .woocommerce-product-gallery .flexy-arrow-next {
    opacity: 0;
    pointer-events: none;
  }

  /* 手指按住主圖區域時顯示（接近「滑動時」） */
  .single-product .woocommerce-product-gallery .flexy:active .flexy-arrow-prev,
  .single-product .woocommerce-product-gallery .flexy:active .flexy-arrow-next {
    opacity: 1;
    pointer-events: none;
  }
}

/* 縮圖尺寸比例 */
@media (max-width: 768px) {
  /* 只改單一商品頁的縮圖列 */
  .single-product .flexy-pills[data-type="thumbs"] > ol {
    gap: 6px;
  }

  /* 一列 5 個：自動縮放 */
  .single-product .flexy-pills[data-type="thumbs"] > ol > li {
    flex: 0 0 calc((100% - 24px) / 5); /* 24px = 6px*4 gaps */
    max-width: calc((100% - 24px) / 5);
  }
}

/* 商品頁-手機版:修改描述試閱tab為左右顯示 */
@media (max-width: 768px) {
  .single-product ul.tabs.wc-tabs.is-width-constrained {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    justify-content: center !important;
    text-align: center;
    white-space: nowrap; /* 防止文字斷行 */
    margin: 0 !important; /* 移除外邊距防止歪斜 */
    width: 100% !important;
    max-width: 100% !important;
    /* 移除可能撐開高度的設定 */
    height: auto !important;
    padding: 0 10px !important;
  }
  .single-product ul.tabs.wc-tabs.is-width-constrained li {
    flex: 1 !important;
  }
}

/* 商品多規格 下拉選單設定 */
/* 隱藏下方清除按鈕顯示 */
.single-product form.variations_form .reset_variations {
  display: none !important;
}
/* 商品多規格 價格上方間距 */
.single-product form.variations_form .single_variation :is(p, .price) {
  border-top: 1px dashed #ddd;
  padding-top: 10px;
  margin-top: 10px;
}

/* ----單一商品頁 相關商品(最下方)---- */

/* 相關商品 大標文字 */
section.related.products.is-layout-slider h2.ct-module-title {
  font-size: 24px;
  font-weight: bold;
  margin-bottom: 20px;
  color: #333333;
}
@media (max-width: 768px) {
  section.related.products.is-layout-slider h2.ct-module-title {
    font-size: 20px;
  }
}

/* 相關商品 左右按鈕切換 */
.related.products .flexy-arrow-prev,
.related.products .flexy-arrow-next {
  /* 強制顯示核心 */
  display: flex;
  /* 方框定位與大小 */
  height: 20%;
  top: 50%;
  transform: translateY(-50%);
  --translate-x: 0; /*取消位移*/
  /* 外觀樣式 */
  border-radius: 0;
  background-color: rgba(0, 0, 0, 0.2);
  transition: background-color 0.3s ease;
  /* 背景圖設定 */
  background-repeat: no-repeat;
  background-position: center;
}

/*Hover滑鼠懸停變色 */
.related.products .flexy-arrow-prev:hover,
.related.products .flexy-arrow-next:hover {
  background-color: rgba(0, 0, 0, 0.3);
}
/* 重新繪製新箭頭主體(after) */
.related.products .flexy-arrow-prev::after,
.related.products .flexy-arrow-next::after {
  content: "";
  display: block;
  width: 12px;
  height: 12px;
  border-left: 2px solid white;
  border-bottom: 2px solid white;
}
/* 左箭頭旋轉角度 */
.related.products .flexy-arrow-prev {
  left: 0;
}
.related.products .flexy-arrow-prev::after {
  transform: rotate(45deg);
  margin-left: 4px;
}
/* 右箭頭旋轉角度 */
.related.products .flexy-arrow-next {
  right: 0;
}
.related.products .flexy-arrow-next::after {
  transform: rotate(-135deg);
  margin-right: 4px;
}

/* 隱藏原本的箭頭圖 */
.related.products .flexy-arrow-prev svg,
.related.products .flexy-arrow-next svg,
.related.products .flexy-arrow-prev::before,
.related.products .flexy-arrow-next::before {
  display: none;
  transform: none;
}

/* 相關商品 隱藏加入購物車按鈕 */
.related.products .ct-woo-card-actions {
  display: none;
}

/* 上架商品使用 */
pre {
  background: transparent;
  white-space: pre-wrap;
  word-break: normal;
}

/* -----------購物車頁----------- */
/* 購物車 運費金額顯示 */
.woocommerce-shipping-totals .woocommerce-Price-amount.amount bdi {
  color: #48843e;
  font-weight: bold;
}
/* 購物車 圖片變小 */
@media (min-width: 383px) {
  body.woocommerce-cart .shop_table .product-thumbnail {
    width: 80px;
  }
}
/* 購物車 表格間距 */
@media (min-width: 690px) {
  body.woocommerce-cart .shop_table {
    --theme-table-padding: 15px;
  }
}
/* 購物車 表格線變實線&變淡 */
.woocommerce-cart .shop_table tr td {
  border-bottom-width: 0.5px;
  border-bottom-style: solid;
  border-bottom-color: #eee;
}

/* -----------結帳頁----------- */
/* 結帳頁 總計金額顯示*/
.shop_table .order-total .woocommerce-Price-amount bdi {
  color: #48843e;
  font-size: 24px;
}

/* 結帳頁 總計二字顯示 */
.woocommerce-checkout .shop_table .order-total th {
  font-size: 1.2em;
  font-weight: 700;
  vertical-align: middle;
}

/* 結帳頁 您的訂單 文字顯示 */
.woocommerce-checkout .ct-order-review h3#order_review_heading {
  font-size: 20px;
}

/* 結帳頁 訂單表格的內距 */
.woocommerce-checkout .shop_table.woocommerce-checkout-review-order-table {
  --theme-table-padding: 0.6em !important;
}

/* 結帳頁 有折價券嗎上下間距歸零 */
.woocommerce-checkout .woocommerce-info,
.woocommerce-checkout .woocommerce-error,
.woocommerce-checkout .woocommerce-message,
.woocommerce-checkout .woocommerce-thankyou-order-received {
  padding: 0px;
  min-height: 0px;
}

/* 結帳頁 兩欄寬度調整 */
@media (min-width: 992px) {
  .woocommerce-checkout form[name="checkout"].ct-woocommerce-checkout {
    grid-template-columns: 1fr 450px;
    align-items: start;
  }
}

/* ---------會員中心頁--------- */

/* 左側選單容器顯示 */

/* 每個 li 調整 */
.woocommerce-account .woocommerce-MyAccount-navigation ul li a {
  border-left: 1px solid #e8e8e8;
  border-right: 1px solid #e8e8e8;
  border-bottom: 1px solid #e8e8e8;
  height: 40px;
  min-height: 40px;
  line-height: 1;
  font-size: 15px;
}
/* 最上面的li加上線 */
.woocommerce-account .woocommerce-MyAccount-navigation ul li:first-child a {
  border-top: 1px solid #e8e8e8;
}

/* 隱藏左側icon */
.woocommerce-account .woocommerce-MyAccount-navigation ul li a:before {
  display: none;
}

/* 會員中心手機板 */
/* 選單下方間距 */
@media (max-width: 768px) {
  .woocommerce-account .ct-account-nav {
    margin-bottom: 15px;
  }
}

/* ---手機版漢堡Menu選單 文字變色控制--- */
/* 同時處理：滑鼠經過文字、經過箭頭、或經過這一行 */
.ct-panel-content-inner .ct-sub-menu-parent:hover .ct-menu-link,
.ct-panel-content-inner .ct-sub-menu-parent:hover svg {
  color: #fcd03b !important;
  fill: #fcd03b !important;
}

/*狀態保持：選單展開中或身處該頁面時 */
.ct-panel-content-inner li.dropdown-active > .ct-sub-menu-parent .ct-menu-link,
.ct-panel-content-inner li.dropdown-active > .ct-sub-menu-parent svg,
.ct-panel-content-inner
  li[class*="current-menu-"]
  > .ct-sub-menu-parent
  .ct-menu-link,
.ct-panel-content-inner li[class*="current-menu-"] > .ct-sub-menu-parent svg,
.ct-panel-content-inner .current-menu-item > a {
  color: #fcd03b !important;
  fill: #fcd03b !important;
}

/* 單純連結（無子選單）：滑鼠移入變色 */
.ct-panel-content-inner .ct-menu-link:hover,
.ct-panel-content-inner .elementor-icon-list-item a:hover {
  color: #fcd03b !important;
}
