.pinggo-product{--ink:#111;--muted:#777;--line:#dedede;--soft:#f7f7f7;color:var(--ink);background:#fff;font-family:Arial,"Noto Sans TC",sans-serif}
.pinggo-product *{box-sizing:border-box}.pinggo-product button,.pinggo-product a{transition:opacity .18s ease,background-color .18s ease,color .18s ease,border-color .18s ease}.pinggo-product button:focus-visible,.pinggo-product a:focus-visible{outline:2px solid #111;outline-offset:3px}
.pinggo-product__layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(430px,1fr);gap:40px;max-width:1340px;margin:0 auto;padding:0 24px}
.pinggo-gallery{min-width:0;padding:0}.pinggo-gallery__viewport{position:sticky;top:92px}.pinggo-gallery__track{display:grid;gap:22px}.pinggo-gallery__slide{position:relative;display:grid;place-items:center;margin:0;aspect-ratio:1;background:var(--soft);overflow:hidden}.pinggo-gallery__slide img{width:100%;height:100%;object-fit:contain}.pinggo-gallery__thumbs{display:none}
.pinggo-gallery__arrow{display:none}.pinggo-gallery__zoom{position:absolute;right:22px;bottom:22px;display:grid;place-items:center;width:52px;height:52px;border:0;border-radius:50%;background:rgba(17,17,17,.72);color:#fff;cursor:pointer}.pinggo-gallery__zoom:hover{background:#111}.pinggo-gallery__zoom svg{width:23px;fill:none;stroke:currentColor;stroke-width:1.8}
.pinggo-summary{min-width:0;padding:4px 0 80px 38px}.pinggo-summary__sticky{position:sticky;top:92px}.pinggo-summary__title{margin:0 0 7px;font-size:28px;line-height:1.2;font-weight:600}.pinggo-summary__device{margin:0 0 20px;color:#777;font-size:16px;font-weight:600}.pinggo-summary__price{font-size:17px;margin:0 0 20px}.pinggo-summary__price del{margin-right:8px}.pinggo-summary__price ins{text-decoration:none}.pinggo-summary__reviews{display:flex;align-items:center;gap:10px;margin:0 0 34px;font-size:14px;font-weight:600}.pinggo-summary__stars{display:flex;gap:3px}.pinggo-summary__stars svg{width:18px;height:18px;fill:none;stroke:#111;stroke-width:1.7}
.pinggo-product button,.pinggo-product input,.pinggo-product select{accent-color:#111}.pinggo-product button:focus,.pinggo-product a:focus{outline-color:#111}.pinggo-summary .variations{width:100%;margin:0 0 22px!important;border:0!important;border-collapse:collapse!important;background:transparent!important}.pinggo-summary .variations tbody,.pinggo-summary .variations tr,.pinggo-summary .variations th,.pinggo-summary .variations td{border:0!important;background:transparent!important;box-shadow:none!important}.pinggo-summary .variations tr{display:block!important;margin:0 0 12px!important}.pinggo-summary .variations th,.pinggo-summary .variations td{display:block!important;width:100%!important;text-align:left!important;padding:0!important}.pinggo-summary .variations th{margin-bottom:10px!important}.pinggo-summary .variations label{display:block;margin-bottom:10px;color:#111!important;font-size:15px;font-weight:600}.pinggo-summary .variations select{width:100%;height:46px;padding:0 12px;border:1px solid #aaa;border-radius:0;background:#fff;color:#111}.pinggo-summary .reset_variations{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:38px!important;margin-top:8px!important;padding:0 16px!important;border:1px solid #3366ff!important;border-radius:999px!important;background:#fff!important;color:#3366ff!important;font-size:13px!important;font-weight:600!important;line-height:1!important;text-decoration:none!important;box-shadow:none!important}.pinggo-summary .reset_variations:hover,.pinggo-summary .reset_variations:focus{background:#3366ff!important;color:#fff!important;outline-color:#3366ff!important}.pinggo-summary .woocommerce-variation-price{margin:0 0 16px}.pinggo-summary .woocommerce-variation-add-to-cart,.pinggo-summary form.cart:not(.variations_form){display:grid;grid-template-columns:122px 1fr;gap:12px}.pinggo-summary form.cart:not(.variations_form) .quantity{grid-column:1}.pinggo-summary form.cart:not(.variations_form) .single_add_to_cart_button{grid-column:2}
.pinggo-summary .quantity{height:46px;border:1px solid #777;border-radius:25px;display:flex!important;align-items:center;justify-content:center;background:#fff;overflow:hidden}.pinggo-summary .quantity button{display:grid;place-items:center;flex:0 0 38px;width:38px;height:44px;padding:0;border:0!important;border-radius:0!important;background:#fff!important;color:#111!important;font-size:20px;line-height:1;cursor:pointer}.pinggo-summary .quantity button:hover{background:#f2f2f2!important}.pinggo-summary .quantity input.qty{flex:1 1 auto;width:42px!important;min-width:0;height:44px!important;padding:0!important;border:0!important;background:#fff!important;color:#111!important;text-align:center!important;-moz-appearance:textfield}.pinggo-summary .quantity input::-webkit-outer-spin-button,.pinggo-summary .quantity input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.pinggo-summary .single_add_to_cart_button{min-height:46px!important;border:0!important;border-radius:25px!important;background:#111!important;color:#fff!important;font-size:14px!important;font-weight:600!important;text-transform:uppercase}.pinggo-summary .single_add_to_cart_button:hover{background:#333!important}.pinggo-wishlist{display:flex!important;position:static!important;align-items:center!important;justify-content:center!important;gap:9px!important;width:100%!important;height:44px!important;min-height:44px!important;margin:10px 0 14px!important;padding:0 18px!important;border:1px solid #777!important;border-radius:24px!important;background:#fff!important;color:#111!important;font-size:14px!important;line-height:1!important;box-shadow:none!important;transform:none!important}.pinggo-wishlist:hover,.pinggo-wishlist:focus{border-color:#111!important;background:#111!important;color:#fff!important}.pinggo-wishlist svg{width:23px!important;height:23px!important;fill:none!important;stroke:currentColor!important}
.pinggo-swatches{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 18px}.pinggo-swatch[hidden]{display:none!important}.pinggo-swatch{display:flex!important;align-items:center!important;justify-content:center!important;gap:9px!important;width:auto!important;height:42px!important;padding:0 13px!important;border:1px solid #e0e0e0!important;border-radius:8px!important;background:#fff!important;color:#111!important;box-shadow:none!important;cursor:pointer}.pinggo-swatch:hover,.pinggo-swatch:focus{border-color:#3366ff!important;background:#fff!important;color:#111!important;outline-color:#3366ff!important}.pinggo-swatch.is-selected{border:2px solid #3366ff!important;padding-left:12px!important;box-shadow:none!important}.pinggo-swatch__dot{display:block;width:30px;height:30px;border:1px solid #aaa;border-radius:50%;background:#ddd}.pinggo-swatch__dot.is-black{background:#1d1d1d}.pinggo-swatch__dot.is-stone{background:#c9c0af}.pinggo-swatch--color{width:64px!important;height:64px!important;flex:0 0 64px!important;padding:4px!important}.pinggo-swatch--color .pinggo-swatch__media{display:block;flex:1 1 auto!important;width:auto;height:100%;border:0;border-radius:5px;background:var(--soft);overflow:hidden}.pinggo-swatch--color .pinggo-swatch__media img{display:block;width:100%;height:100%;object-fit:cover}.pinggo-swatch--color .pinggo-swatch__name{display:none}.pinggo-swatch--color.is-selected{padding:3px!important}.pinggo-swatch--text{padding:0 16px!important}.pinggo-swatch__name{display:block;color:#111!important;font-size:14px;line-height:1;white-space:nowrap}
/* Suppress WooCommerce's variation-fetch blockUI spinner (elago-like: no loading flash). */
body.single-product .variations_form .blockOverlay,
body.single-product .variations_form .blockMsg{display:none!important}
.pinggo-accordion{border-top:0}.pinggo-accordion:last-of-type{border-bottom:1px solid var(--line)}.pinggo-accordion h2{font-size:15px;font-weight:600;margin:0;padding:22px 0}.pinggo-accordion__content{padding:0 18px 22px;color:#444;font-size:14px;line-height:1.6}.pinggo-accordion__content p:first-child{margin-top:0}.pinggo-accordion__content li{margin:6px 0}
/* 2.8.19 content heading ladder: h2 > h3 > h4 (previous rendering inverted h3=28px > h2=18px). */
html body.pinggo-storefront .pinggo-accordion__content h2{font-size:24px;font-weight:600;margin:28px 0 12px;line-height:1.3}
html body.pinggo-storefront .pinggo-accordion__content h3{font-size:19px;font-weight:600;margin:24px 0 10px;line-height:1.35}
html body.pinggo-storefront .pinggo-accordion__content h4{font-size:17px;font-weight:600;margin:20px 0 8px;line-height:1.4}
.pinggo-benefits{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line)}.pinggo-benefits>div{display:flex;align-items:center;gap:12px;padding:20px 4px}.pinggo-benefits svg{width:28px;height:28px;fill:none;stroke:#111;stroke-width:1.7}.pinggo-benefits p{display:flex;flex-direction:column;margin:0}.pinggo-benefits strong{font-size:15px}.pinggo-benefits small{color:#888;margin-top:3px}
.pinggo-bundle{padding-top:46px}.pinggo-bundle h2{font-size:18px;font-weight:600;margin:0 0 18px}.pinggo-bundle__item{display:grid;grid-template-columns:104px minmax(0,1fr) 40px;align-items:center;gap:14px;min-height:138px;padding:13px 16px;border-top:1px solid #d5d5d5;background:#f7f7f7;color:#111!important}.pinggo-bundle__item:first-of-type{border-top:0}.pinggo-bundle__image{display:block}.pinggo-bundle__item img{display:block;width:96px;height:96px;margin:0;object-fit:contain;background:transparent}.pinggo-bundle__content{display:flex;min-width:0;flex-direction:column;align-items:flex-start;justify-content:center;gap:12px;color:#111!important;text-decoration:none}.pinggo-bundle__item strong{display:block;font-size:15px;line-height:1.35;font-weight:500}.pinggo-bundle__item small{display:block!important;font-size:14px;line-height:1.35;color:#111;white-space:nowrap}.pinggo-bundle__item small *{display:inline!important;white-space:nowrap!important}.pinggo-bundle__item small .screen-reader-text{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(1px,1px,1px,1px)!important;white-space:nowrap!important}.pinggo-bundle__add{position:relative;display:grid!important;place-items:center!important;width:36px!important;height:36px!important;min-height:36px!important;padding:0!important;border:0!important;border-radius:50%!important;background:#111!important;color:#fff!important;box-shadow:none!important;cursor:pointer}.pinggo-bundle__add:hover,.pinggo-bundle__add:focus{background:#333!important}.pinggo-bundle__add:disabled{cursor:wait;opacity:.55}.pinggo-bundle__add span::before,.pinggo-bundle__add span::after{content:"";position:absolute;top:50%;left:50%;width:16px;height:1px;background:#fff;transform:translate(-50%,-50%)}.pinggo-bundle__add span::after{transform:translate(-50%,-50%) rotate(90deg)}
.pinggo-quick-add{position:fixed;inset:0;z-index:10010;display:grid;place-items:center;padding:20px}.pinggo-quick-add[hidden]{display:none}.pinggo-quick-add__backdrop{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;background:rgba(0,0,0,.34);cursor:default}.pinggo-quick-add__dialog{position:relative;width:min(440px,100%);padding:30px;background:#fff;box-shadow:0 24px 70px rgba(0,0,0,.18)}.pinggo-quick-add__close{position:absolute;top:12px;right:12px;width:36px;height:36px;padding:0;border:0;background:transparent;color:#111;font-size:28px;cursor:pointer}.pinggo-quick-add__eyebrow{margin:0 0 7px;color:#777;font-size:12px;letter-spacing:.08em}.pinggo-quick-add h2{margin:0 42px 8px 0;font-size:21px;line-height:1.3}.pinggo-quick-add__price{margin-bottom:22px;font-size:15px}.pinggo-quick-add__options label{display:block;margin:0 0 16px}.pinggo-quick-add__options label span{display:block;margin-bottom:7px;font-size:13px;font-weight:600}.pinggo-quick-add__options select{width:100%;height:44px;padding:0 12px;border:1px solid #aaa;background:#fff;color:#111}.pinggo-quick-add__status{min-height:20px;margin:4px 0 8px;color:#666;font-size:13px}.pinggo-quick-add__submit{width:100%;min-height:46px;border:0;border-radius:24px;background:#111;color:#fff;font-weight:600;cursor:pointer}.pinggo-quick-add__submit:disabled{opacity:.55}
.pinggo-related{padding:80px max(4vw,40px);max-width:1600px;margin:auto}.pinggo-related header{display:flex;align-items:center;justify-content:space-between;margin-bottom:32px}.pinggo-related h2{font-size:36px;font-weight:500;margin:0}.pinggo-related__controls{display:flex;gap:26px}.pinggo-related__controls button{display:grid;place-items:center;width:36px;height:52px;padding:0;border:0;border-radius:0;background:transparent;color:#999;font-family:Arial,sans-serif;font-size:52px;font-weight:200;line-height:1;cursor:pointer;box-shadow:none}.pinggo-related__controls button:hover{background:transparent;color:#111}.pinggo-related__track{display:flex!important;gap:24px!important;overflow:auto;scroll-snap-type:x proximity;scrollbar-width:none;margin:0!important;padding:0!important}.pinggo-related__track::-webkit-scrollbar{display:none}.pinggo-related__track>li{flex:0 0 min(330px,23vw)!important;width:auto!important;scroll-snap-align:start;margin:0!important}.pinggo-related__progress{height:2px;background:#e2e2e2;margin-top:42px}/* 2.9.224（用戶：「這個進度條和首頁不一樣，沒有首頁精緻，要同步首頁效果」）：原本 3px／軌道 #ddd／拇指 #555／overflow:hidden，首頁滑軌是 2px／#e2e2e2／#777。厚度與兩個灰階同步首頁；overflow 不需裁切（拇指位移數學已對齊，f=1 時右緣正好貼齊軌道右緣）。邊距沿用相關商品區自己的節奏（42px），不動版式。 */.pinggo-related__progress span{display:block;width:9%;height:2px;background:#777;transform-origin:left;transition:transform .15s linear}
/* 2.9.225（用戶手機截圖：「進度條初始應該在最左邊，現在的有点没靠拢」）：根因是 WooCommerce 的 clearfix 偽元素
   `.woocommerce ul.products::before/::after`（content:" " ＋ display:table，實測高 403px＝整列高）在 flex 滑軌裡
   被當成 flex item，與卡片之間各吃一次 `gap:24px` → 內容整體右移 24px、scrollWidth 632→680（虛增 48px），
   滑軌 scrollLeft 最小值被推到 24 → 進度條拇指 translateX(6.78%)＝左緣內縮 12.5px、第一張卡離軌道左緣空 24px。
   中和這兩顆偽元素後：scrollLeft 回到 0、scrollWidth 632、拇指貼齊軌道左緣（實測 0px）。
   清除浮動在 flex 容器內本來就無作用（軌道內沒有 float 子項），故此處讓偽元素不生成。 */
.woocommerce .pinggo-related__track::before,
.woocommerce .pinggo-related__track::after,
.woocommerce-page .pinggo-related__track::before,
.woocommerce-page .pinggo-related__track::after{content:none!important;display:none!important;clear:none!important}
.pinggo-reviews{max-width:1600px;margin:0 auto;padding:30px max(4vw,40px) 80px}.pinggo-reviews h2{margin:0 0 48px;font-size:28px;font-weight:600}.pinggo-reviews__empty{display:grid;place-items:center;align-content:center;min-height:330px;padding:48px 24px;border-radius:10px;background:#f3f4f6;text-align:center}.pinggo-reviews__empty svg{width:100px;height:78px;fill:none;stroke:#333;stroke-width:2}.pinggo-reviews__empty p{margin:18px 0;font-size:18px;font-weight:600}.pinggo-reviews__empty p.pinggo-reviews__note{margin:0;font-size:15px;font-weight:400;line-height:1.6}.pinggo-reviews__empty p.pinggo-reviews__note a{display:inline;padding:0;background:none;color:#111!important;text-decoration:underline;font-weight:600}
.pinggo-match{display:grid;place-items:center;min-height:440px;padding:70px 24px;background:#eee;text-align:center}.pinggo-match p{margin:0 0 9px;color:#666}.pinggo-match h2{margin:0 0 28px;font-size:52px}.pinggo-match a{display:inline-block;padding:15px 30px;border-radius:26px;background:#111;color:#fff!important;text-decoration:none;font-weight:600}.pinggo-match a:hover{background:#333}
.pinggo-lightbox{position:fixed;inset:0;z-index:99999;display:grid;grid-template-columns:72px 1fr 72px;align-items:center;background:rgba(255,255,255,.98)}.pinggo-lightbox[hidden]{display:none}.pinggo-lightbox [data-lightbox-content]{height:100vh;display:grid;place-items:center}.pinggo-lightbox img{max-width:100%;max-height:94vh;object-fit:contain}.pinggo-lightbox__close{position:absolute;top:22px;right:28px;z-index:2;border:0;background:none;color:#111;font-size:46px}.pinggo-lightbox__prev,.pinggo-lightbox__next{width:48px;height:48px;margin:auto;border:1px solid #bbb;border-radius:50%;background:#fff;color:#111;font-size:32px}
@media(max-width:900px){
 .pinggo-product__layout{display:block;margin-top:0;padding:0}.pinggo-gallery{padding:0 18px}.pinggo-gallery__viewport{position:static;overflow:hidden;touch-action:pan-y}.pinggo-gallery__track{display:flex;gap:0;transition:transform .38s cubic-bezier(.2,.8,.2,1);will-change:transform}.pinggo-gallery__viewport.is-dragging .pinggo-gallery__track{transition:none}.pinggo-gallery__slide{flex:0 0 100%;aspect-ratio:1}.pinggo-gallery__arrow{display:none}.pinggo-gallery__zoom{width:42px;height:42px;right:12px;bottom:12px}.pinggo-gallery__thumbs{display:flex;gap:8px;overflow:auto;padding:10px 0 0;scrollbar-width:none}.pinggo-gallery__thumbs::-webkit-scrollbar{display:none}.pinggo-gallery__thumb{flex:0 0 70px;width:70px;height:70px;padding:0;border:1px solid transparent;background:var(--soft)}.pinggo-gallery__thumb.is-active{border-color:#3366ff}.pinggo-gallery__thumb img{width:100%;height:100%;object-fit:cover}
 .pinggo-summary{padding:30px 18px 54px;border:0}.pinggo-summary__sticky{position:static}.pinggo-summary__title{font-size:24px}.pinggo-summary__device{font-size:15px}.pinggo-summary .woocommerce-variation-add-to-cart,.pinggo-summary form.cart:not(.variations_form){grid-template-columns:112px 1fr}.pinggo-benefits{grid-template-columns:1fr}.pinggo-benefits>div+div{border-top:1px solid var(--line)}
 .pinggo-related{padding:58px 18px}.pinggo-related h2{font-size:30px}.pinggo-related__controls{display:none}.pinggo-related__track>li{flex-basis:78vw!important}.pinggo-match{min-height:330px}.pinggo-match h2{font-size:38px}
 .pinggo-lightbox{grid-template-columns:46px 1fr 46px}.pinggo-lightbox__prev,.pinggo-lightbox__next{width:40px;height:40px}
}
@media(prefers-reduced-motion:reduce){.pinggo-product *{scroll-behavior:auto!important;transition:none!important}}

/* 2.3.3 product detail interaction color lock */
body.single-product,
body.single-product *{accent-color:#111!important}
body.single-product .pinggo-product{--ink:#111!important;--muted:#777!important;--line:#dedede!important;--soft:#f7f7f7!important;--e-global-color-primary:#111!important;--e-global-color-accent:#111!important;color:#111!important}
body.single-product .pinggo-product a,
body.single-product .pinggo-product button,
body.single-product .pinggo-product input,
body.single-product .pinggo-product select{--e-global-color-primary:#111!important;--e-global-color-accent:#111!important}
@media(min-width:901px){
 body.single-product .pinggo-gallery__viewport{overflow:visible}
 body.single-product .pinggo-gallery__slide{display:grid!important}
 body.single-product .pinggo-gallery__arrow{display:grid!important;position:absolute;top:50%;z-index:4;place-items:center;width:48px;height:72px;margin-top:-36px;border:0!important;border-radius:6px;background:rgba(17,17,17,.55)!important;color:#fff!important;font-size:36px;line-height:1;cursor:pointer;box-shadow:none!important}
 body.single-product .pinggo-gallery__arrow:hover{background:rgba(17,17,17,.78)!important;color:#fff!important}
 body.single-product .pinggo-gallery__prev{left:18px}
 body.single-product .pinggo-gallery__next{right:18px}
}
body.single-product .pinggo-gallery__zoom,
body.single-product .woocommerce-product-gallery__trigger,
body.single-product .pinggo-product .pinggo-gallery__zoom{background:rgba(17,17,17,.76)!important;color:#fff!important;border:1px solid rgba(255,255,255,.58)!important;box-shadow:0 14px 30px rgba(0,0,0,.14)!important}
body.single-product .pinggo-gallery__zoom:hover,
body.single-product .woocommerce-product-gallery__trigger:hover{background:#111!important;color:#fff!important}
body.single-product .pinggo-gallery__zoom svg,
body.single-product .woocommerce-product-gallery__trigger svg{stroke:currentColor!important;fill:none!important}
/* 2.9.189（用戶 2026-09-22 附圖：「按鈕上面中間有條深色的線」）：
   這條 !important 原本連 `.quantity` 自己也一起壓成 `border-color:#aaa`，蓋掉了設計值 `#777`
   （同檔第 8 行 `.pinggo-summary .quantity{border:1px solid #777;border-radius:25px}`）。
   在 25px 大圓角（渲染時被縮放成 23px）＋ 1px 邊框下，淺色 #aaa 的**弧線段經抗鋸齒幾乎消失**，
   只剩上／下中間那 72px 直線段看得見——看起來就像「平白多出一條線」。
   恢復 #777 後整圈輪廓（直線＋弧線）連續可見。子元素本來就 `border:0`，去掉它們的 border-color 無影響。 */
body.single-product .pinggo-summary .quantity{border-color:#777!important}
body.single-product .pinggo-summary .quantity *{color:#111!important;background:#fff!important}
body.single-product .pinggo-summary .quantity button,
body.single-product .pinggo-summary .quantity [data-quantity-minus],
body.single-product .pinggo-summary .quantity [data-quantity-plus]{background:#fff!important;color:#111!important;border:0!important;box-shadow:none!important}
body.single-product .pinggo-summary .quantity button:hover,
body.single-product .pinggo-summary .quantity [data-quantity-minus]:hover,
body.single-product .pinggo-summary .quantity [data-quantity-plus]:hover{background:#f2f2f2!important;color:#111!important}
body.single-product .pinggo-lightbox{background:rgba(255,255,255,.98)!important;color:#111!important}
body.single-product .pinggo-lightbox__close,
body.single-product .pinggo-lightbox__prev,
body.single-product .pinggo-lightbox__next{background:rgba(255,255,255,.92)!important;color:#111!important;border:1px solid #c9c9c9!important;box-shadow:0 8px 24px rgba(0,0,0,.08)!important}
body.single-product .pinggo-lightbox__close:hover,
body.single-product .pinggo-lightbox__prev:hover,
body.single-product .pinggo-lightbox__next:hover{background:#111!important;color:#fff!important;border-color:#111!important}
body.single-product .pinggo-related__controls button{background:transparent!important;color:#999!important;border:0!important;box-shadow:none!important}
body.single-product .pinggo-related__controls button:hover{background:transparent!important;color:#111!important}
body.single-product .pinggo-related__track{cursor:grab}
body.single-product .pinggo-related__track.is-dragging{cursor:grabbing;scroll-snap-type:none!important;user-select:none}
/* 2.8.27: fingers pan vertically with the page; horizontal swipe is owned by
 * the JS drag (native touch scroll was fighting scrollLeft and janked). */
body.single-product .pinggo-related__track{overscroll-behavior-x:contain;touch-action:pan-x;-webkit-user-select:none;user-select:none}
body.single-product .pinggo-related ul.products li.product .button,
body.single-product .pinggo-related ul.products li.product .added_to_cart,
body.single-product ul.products li.product .button,
body.single-product ul.products li.product .added_to_cart{background:rgba(255,255,255,.94)!important;color:#111!important;border:0!important;box-shadow:0 10px 22px rgba(0,0,0,.08)!important}
body.single-product .pinggo-related ul.products li.product .button:hover,
body.single-product .pinggo-related ul.products li.product .added_to_cart:hover,
body.single-product ul.products li.product .button:hover,
body.single-product ul.products li.product .added_to_cart:hover{background:#111!important;color:#fff!important}
body.single-product .pinggo-related ul.products li.product .button::before,
body.single-product ul.products li.product .button::before{color:currentColor!important}
@media(max-width:900px){
 body.single-product .pinggo-gallery__arrow{display:none!important}
 body.single-product .pinggo-related__track{touch-action:pan-x}
 body.single-product .pinggo-bundle{padding-top:34px}
 body.single-product .pinggo-bundle h2{font-size:20px}
 body.single-product .pinggo-bundle__item{grid-template-columns:76px 1fr 38px;gap:12px;min-height:112px;padding:12px 10px}
 body.single-product .pinggo-bundle__item img{width:68px;height:68px}
 body.single-product .pinggo-bundle__item strong{font-size:15px}
 body.single-product .pinggo-bundle__item small{font-size:14px}
 body.single-product .pinggo-bundle__add{width:34px!important;height:34px!important;min-height:34px!important}
 body.single-product .pinggo-quick-add__dialog{padding:26px 20px}
 body.single-product .pinggo-reviews{padding:20px 18px 58px}
 body.single-product .pinggo-reviews h2{margin-bottom:24px;font-size:24px}
 body.single-product .pinggo-reviews__empty{min-height:260px}
}

/* 2.4.1 elago-style expanding quick-add control. */
body.single-product .pinggo-bundle__add{
	display:flex!important;
	justify-self:end!important;
	align-items:center!important;
	justify-content:flex-start!important;
	gap:0!important;
	width:36px!important;
	border-radius:22px!important;
	overflow:hidden!important;
	transition:width .24s ease,background-color .18s ease!important;
}
body.single-product .pinggo-bundle__add>span{
	position:relative!important;
	flex:0 0 36px!important;
	width:36px!important;
	height:36px!important;
}
body.single-product .pinggo-bundle__add em{
	display:block!important;
	margin-right:14px!important;
	color:#fff!important;
	font-size:13px!important;
	font-style:normal!important;
	font-weight:600!important;
	line-height:36px!important;
	white-space:nowrap!important;
	opacity:0!important;
	transform:translateX(-4px)!important;
	transition:opacity .16s ease .05s,transform .2s ease .03s!important;
}
body.single-product .pinggo-bundle__add:hover,
body.single-product .pinggo-bundle__add:focus-visible{
	width:82px!important;
	background:#777!important;
}
body.single-product .pinggo-bundle__add:hover em,
body.single-product .pinggo-bundle__add:focus-visible em{
	opacity:1!important;
	transform:none!important;
}
@media(max-width:900px){
	body.single-product .pinggo-bundle__add:hover,
	body.single-product .pinggo-bundle__add:focus-visible{
		width:34px!important;
		background:#111!important;
	}
	body.single-product .pinggo-bundle__add em{display:none!important}
}

/* 2.8.0-2.8.12 Product share: one trigger opens a small modal (LINE / Facebook / copy link). */
.pinggo-share{position:relative;display:flex;align-items:center;justify-content:flex-start;gap:12px;margin:0 0 20px}
.pinggo-share__label{font-size:13px;font-weight:600;color:var(--muted);letter-spacing:.06em}
.pinggo-share__trigger{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border:1px solid #777;border-radius:999px;background:#fff;color:#111;font-size:13px;font-weight:500;cursor:pointer}
.pinggo-share__trigger:hover,.pinggo-share__trigger:focus-visible{border-color:#111;background:#111;color:#fff}
.pinggo-share__trigger svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.pinggo-share__modal{position:absolute;left:0;top:calc(100% + 12px);z-index:30;width:auto;max-width:calc(100vw - 32px);padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 10px 30px rgba(0,0,0,.14)}
.pinggo-share__modal[hidden]{display:none}
.pinggo-share__modal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.pinggo-share__modal-head strong{font-size:13px;font-weight:600;color:#111}
.pinggo-share__modal-close{display:grid;place-items:center;width:26px;height:26px;padding:0;border:0;background:transparent;color:#777;cursor:pointer}
.pinggo-share__modal-close:hover,.pinggo-share__modal-close:focus-visible{color:#111}
.pinggo-share__modal-close svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
.pinggo-share__modal-body{display:flex;align-items:stretch;flex-direction:row;gap:8px}
.pinggo-share__option{display:flex;align-items:center;gap:9px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:#fff;color:#111;font-size:13px;white-space:nowrap;cursor:pointer;text-decoration:none}
.pinggo-share__option:hover,.pinggo-share__option:focus-visible{border-color:#111;background:#f5f5f5}
.pinggo-share__option svg{width:17px;height:17px;flex:0 0 auto}
.pinggo-share__option .pinggo-icon--line-solid,.pinggo-share__option .pinggo-icon--facebook-solid{fill:currentColor;stroke:none}
.pinggo-share__option .pinggo-icon--copy-solid{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.pinggo-share__toast{position:absolute;left:50%;bottom:calc(100% + 8px);z-index:40;padding:9px 16px;border-radius:20px;background:#111;color:#fff;font-size:12px;line-height:1;white-space:nowrap;opacity:0;pointer-events:none;transform:translateX(-50%) translateY(4px);transition:opacity .18s ease,transform .18s ease}
.pinggo-share__toast.is-visible{opacity:1;transform:translateX(-50%) translateY(0)}
@media(max-width:640px){.pinggo-share{gap:10px}.pinggo-share__label{font-size:12px}.pinggo-share__trigger{padding:6px 12px}.pinggo-share__modal{width:min(232px,calc(100vw - 32px))}.pinggo-share__modal-body{flex-direction:column}.pinggo-share__option{white-space:normal}}
@media(prefers-reduced-motion:reduce){.pinggo-share__toast{transition:none}}

/* 2.8.5 Collapsible extra-description blocks (default collapsed, visible +/− toggle). */
.pinggo-accordion--extra{border-top:1px solid var(--line)}
.pinggo-accordion--extra summary{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:22px 0;font-size:15px;font-weight:600;cursor:pointer;list-style:none}
.pinggo-accordion--extra summary::-webkit-details-marker{display:none}
.pinggo-accordion--extra .pinggo-accordion__toggle{position:relative;flex:0 0 13px;width:13px;height:13px}
.pinggo-accordion--extra .pinggo-accordion__toggle::before,.pinggo-accordion--extra .pinggo-accordion__toggle::after{content:"";position:absolute;top:50%;left:0;width:13px;height:1.5px;background:#999;transform:translateY(-50%);transition:transform .18s ease,background-color .18s ease}
.pinggo-accordion--extra .pinggo-accordion__toggle::after{transform:translateY(-50%) rotate(90deg)}
.pinggo-accordion--extra[open] .pinggo-accordion__toggle::before{background:#111}
.pinggo-accordion--extra[open] .pinggo-accordion__toggle::after{transform:translateY(-50%) rotate(0deg);background:#111}

/* 2.8.29 related-track cards: hover image swap disabled — the finger hover
 * synthesis was swapping images mid-swipe and caused jank. Shop/archive cards
 * keep their hover swap (scoped here to the related section only). */
/* 2.9.218：換圖功能已下線（見 shop-archive.css），這兩條停用規則移除。 */

/* 2.8.35: Chrome scroll anchoring re-compensates the viewport when the option
 * chips update (label/text swap -> height change) — the page visibly slid down
 * ~80px on every variation click. Disable anchoring for the summary column. */
body.single-product .pinggo-summary,
body.single-product .pinggo-summary__sticky,
body.single-product .pinggo-product__layout{overflow-anchor:none}

/* 2.8.43: disable scroll anchoring for the WHOLE product page — lazy-loaded
 * images finishing while the visitor taps options recompensated the viewport
 * (page visibly slipped down ~20px per click). Section-level guards were not
 * enough; the change can happen anywhere (gallery, cards, footer images). */
body.single-product,
body.single-product *{overflow-anchor:none}

/* 2.8.44: lock option-row heights so toggling chips (disabled/hidden) can
 * never reflow the summary — belt and braces next to the anchor guard.
 * 2.9.6: 第二组款式 swatch 现在会 hidden 不可用项，容器高度可能塌缩；
 * 用可支持多行文字 swatch 的最小高度撑住行高（单行 42px + 间距 12，
 * 留 17 项换行空间上限），防止页面抖动。 */
/* 2.9.188：原本這條寫在 .pinggo-swatches 上，等於**連文字規格組也一起撐到 64px**
 * （文字按鈕只有 42px → 仍白留 22px）。收窄到顏色色塊組：色塊本身就是 64px，
 * 一行時剛好貼合、兩行時由內容決定，顏色組行為與改動前完全一致。 */
body.single-product .pinggo-swatches--color{min-height:64px}
/* 2.9.6: 文字款式组（如 JQYMT 17 项=2 行 42px+12px gap）隐藏不可用项后以
 * 最小高度撑住两行，防行高塌缩引发页面位移。
 * 2.9.188：**收窄到「真的会被联动隐藏按钮」的第 2+ 属性**（JS 会加 .pinggo-swatches--linked）。
 *   理由（2026-09-22 用户附图 + 生产实测）：只有第 2 个及之后的属性会被 syncAvailability 隐藏
 *   不可用项（single-product.js 的 `selectIndex > 0`），第 1 属性的按钮数永远不变。
 *   原本不分属性一律撑 96px，导致「按钮只有一行」的商品白留 54px（实测：iPhone 16 防窥膜、
 *   fiber-tip-cover、sleeve-fit、paperlike、metal-tips 桌面都是容器 96px / 内容 42px）。
 *   注：这个 96px 本来就只挡得住「3 行掉到 1 行」的一半位移（150→96，仍跳 54px），
 *   收窄后第 1 属性不再有空白，第 2 属性维持原有防抖。 */
body.single-product .pinggo-swatches--linked{min-height:96px}
/* 2.9.223（用戶：手機這裡的間距為什麼還是太大）：文字型規格（尺寸…）只有一列 42px 的按鈕，卻被上面 --linked 的 96px 撐出 54px 空白，正好夾在選項與「重新選擇規格」之間。文字型改為不預留高度（色票型 --color/--linked 的預留高度保留，避免切屬性時版面跳動）。 */
body.single-product .pinggo-swatches--text{min-height:0}/* 2.9.223（用戶：手機這裡的間距為什麼還是太大）：文字型規格（尺寸…）只有一列 42px 的按鈕，卻被 --linked 的 min-height:96px 撐出 54px 空白，夾在選項與「重新選擇規格」之間。色票型（--color）保留預留高度，避免切換屬性時版面跳動。 */

/* 2.8.46: the reset button stays in place when nothing is selected — greyed
 * out instead of vanishing (vanishing shifted the layout under the visitor). */
html body.single-product .pinggo-summary .reset_variations{visibility:visible!important}
html body.single-product .pinggo-summary .reset_variations.is-dim{opacity:.45;pointer-events:none;cursor:default;border-color:#c6c6c6!important;color:#888!important}
html body.single-product .pinggo-summary .reset_variations.is-dim:hover,
html body.single-product .pinggo-summary .reset_variations.is-dim:focus{background:#fff!important;color:#888!important}

/* 2.8.48: unavailable spec chips stay VISIBLE but disabled (grayed) — hiding
 * them re-wrapped the row and shifted the whole page. Gray = unavailable. */
.pinggo-swatch:disabled{opacity:.4;border-color:#ddd!important;background:#fafafa!important;color:#999!important;cursor:not-allowed}
.pinggo-swatch:disabled:hover,
.pinggo-swatch:disabled:focus{border-color:#ddd!important;background:#fafafa!important;color:#999!important;outline-color:transparent!important}

/* 2.8.48: hide WooCommerce's duplicate single-variation price block — it
 * appeared (+39px) when a variation was found and shifted the whole page.
 * The theme shows the single price inside its own fixed-height price box
 * (single-product.js writes variation.price_html into .pinggo-summary__price). */
.pinggo-summary .single_variation{display:none!important}

/* 2.8.95: calmer option rhythm and rounded native-select fallback. */
.pinggo-summary .variations tr{margin-bottom:24px!important}
.pinggo-summary .variations select[hidden]{display:none!important}
.pinggo-summary .variations select{
	margin-bottom:12px;
	padding-inline:14px;
	border-color:#cfcfcf;
	border-radius:10px;
}
.pinggo-summary .pinggo-swatches{margin-bottom:12px}
.pinggo-summary .reset_variations{margin-top:4px!important}
.pinggo-quick-add__options select{
	padding-inline:14px;
	border-color:#cfcfcf;
	border-radius:10px;
}
.pinggo-quick-add__submit{
	display:block;
	width:max-content;
	min-width:156px;
	max-width:100%;
	margin-inline:auto;
	padding-inline:24px;
}
/* 2.9.227（用戶：「按鈕應該和其他一樣黑底白字」）：2.9.226 把這顆改成藍底，
   用戶比對後要的是**站上主要動作鈕一致的黑底白字**——與商品頁主鈕
   `.pinggo-summary .single_add_to_cart_button`（#111／白字／膠囊）、購物車抽屜結帳鈕同款。
   藍色只留給次要動作（重新選擇規格、hover 描邊）。此處移除 2.9.226 的藍底覆寫。 */
.pinggo-quick-add__submit{background:#111!important;border-color:#111!important;color:#fff!important}
.pinggo-quick-add__submit:not(:disabled):hover,.pinggo-quick-add__submit:not(:disabled):focus{background:#333!important;border-color:#333!important;color:#fff!important}
.pinggo-quick-add__submit:disabled{opacity:.55;cursor:not-allowed}

/* 2.9.227（用戶：「藍框顯示不完整」）：手機縮圖列選中框 1px 太細，在白色商品圖旁看起來像斷掉。
   改成 2px 內描邊（inset box-shadow 畫在框內、不佔版面，絕不會被容器裁掉），
   與規格鈕 `.pinggo-swatch.is-selected` 的 2px 藍框一致。 */
.pinggo-gallery__thumb.is-active{border-color:#3366ff;border-radius:8px;box-shadow:inset 0 0 0 2px #3366ff}

/* 2.9.226：未選規格就點「加入購物車」時的站內提示（取代 WooCommerce 的原生 alert）。 */
.pinggo-summary__notice{margin:2px 0 14px;padding:10px 14px;border:1px solid #c9d4ff;border-radius:8px;background:#f1f4ff;color:#1f3bb3;font-size:13px;line-height:1.5}
.pinggo-summary__notice:empty{display:none}
@keyframes pinggo-nudge{0%,100%{transform:translateX(0)}20%{transform:translateX(-4px)}40%{transform:translateX(4px)}60%{transform:translateX(-2px)}80%{transform:translateX(2px)}}
.pinggo-summary .single_add_to_cart_button.is-nudge{animation:pinggo-nudge .36s ease}
@media(prefers-reduced-motion:reduce){.pinggo-summary .single_add_to_cart_button.is-nudge{animation:none}}

/* Product content spacing below the global breadcrumb. */

/* 2.9.78: 吸頂摘要面板補上不透明白底。面板與頁面底色同為 #fff（外觀零變化），
 * 但萬一商品資料裡又有節點跑出面板（例如描述內容多餘的 </div> 提前關掉
 * .pinggo-summary__sticky），它只會被面板蓋住，而不是從半透明面板底下穿過去疊字。 */
.pinggo-summary__sticky{background:#fff}

/* ==========================================================================
 * 2.9.80 商品頁「找到完美搭配」區塊（.pinggo-match）：玻璃滿版背景
 *
 * 用戶 2026-09-12 選定「最初那版」：右側玻璃主體＋藍光保留、左半不另加光
 * （先前的左側加強層「柔光板／斜射光束／左緣光柱」經用戶否決「亂、糊」，不進生產）。
 *
 * 底圖＝與 /ai-shopping/ 同一張英雄圖（hero-v7：Apple Pencil ＋ 玻璃貼），
 * 預先縮到 760px 寬並模糊 5px 烘成 assets/images/ai-shopping/hero-match-blur.jpg（6.9KB）——
 * 避開 162KB 原圖與大面積即時 backdrop-filter 的合成成本，行動裝置零額外負擔。
 *
 * 只換表面：內容文字、字級、按鈕文案與連結（/ai-shopping/）皆未動。
 * 上下用白色淡出收邊（上方接白色商品區、下方接黑色頁腳），不會出現灰帶硬切。
 * ========================================================================== */
.pinggo-match{
	position:relative;isolation:isolate;overflow:hidden;
	display:flex!important;align-items:center;justify-content:center;min-height:440px;padding:70px 24px;
	background:#eef1f5;
	font-family:-apple-system,BlinkMacSystemFont,"PingFang TC","Noto Sans TC","Helvetica Neue",Arial,sans-serif}
/* 玻璃底圖層 */
.pinggo-match::before{
	content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
	background:url('../images/ai-shopping/hero-match-blur.jpg') center 42%/cover no-repeat}
/* 白色霜層：斜向薄霜 ＋ 左上徑向高光 ＋ 上下淡出（配方同 /ai-shopping/ 的玻璃卡） */
.pinggo-match::after{
	content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
	background:
		linear-gradient(120deg,rgba(255,255,255,.5) 0%,rgba(255,255,255,.34) 34%,rgba(255,255,255,.2) 60%,rgba(255,255,255,.44) 100%),
		radial-gradient(120% 100% at 8% -6%,rgba(255,255,255,.66) 0%,rgba(255,255,255,0) 46%),
		linear-gradient(180deg,rgba(255,255,255,.22) 0%,rgba(255,255,255,.42) 60%,rgba(255,255,255,.86) 100%)}
.pinggo-match>div{position:relative;z-index:3;display:flex;flex-direction:column;align-items:center}
.pinggo-match p{margin:0 0 12px;color:#5c6470;font-size:15px;letter-spacing:.02em}
.pinggo-match h2{margin:0 0 32px;color:#14181e;font-size:52px;font-weight:600;letter-spacing:-.012em;line-height:1.08}
.pinggo-match a{
	display:inline-block;padding:17px 34px;border-radius:999px;
	background:#181d22;color:#fff!important;text-decoration:none;font-size:15px;font-weight:600;
	box-shadow:0 10px 26px rgba(24,29,34,.22)}
.pinggo-match a:hover{background:#303741}
.pinggo-match a:active{transform:translateY(1px)}
/* 預留的玻璃面板層（滿版版本不使用；要改回「面板版」時把 .pinggo-glass 打開即可）。
   注意：線上模板目前沒有這個元素，只在預覽頁存在。 */
.pinggo-match .pinggo-glass{display:none}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
	.pinggo-match .pinggo-glass{background:rgba(255,255,255,.9)}
}
@media(max-width:900px){
	.pinggo-match{min-height:360px;padding:64px 22px!important}
	.pinggo-match p{margin-bottom:11px;font-size:14px}
	.pinggo-match h2{margin-bottom:28px;font-size:38px}
	.pinggo-match a{padding:15px 30px}
}

/* 2.9.84 客戶評價：接回真實評價流程（星等、評論列表、評分表單）。
   原本只有寫死的空狀態與一顆連不到 #respond 的按鈕。 */
.pinggo-stars{position:relative;display:inline-flex;flex:0 0 auto;line-height:0}
.pinggo-stars__base,.pinggo-stars__fill{display:flex;gap:3px}
.pinggo-stars__base svg,.pinggo-stars__fill svg{flex:0 0 auto;width:18px;height:18px;fill:none;stroke:#111;stroke-width:1.7}
.pinggo-stars__base svg{stroke:#c9ccd1}
.pinggo-stars__fill{position:absolute;top:0;left:0;overflow:hidden;white-space:nowrap}
.pinggo-stars__fill svg{fill:#111;stroke:#111}
.pinggo-stars--lg .pinggo-stars__base svg,.pinggo-stars--lg .pinggo-stars__fill svg{width:22px;height:22px}
.pinggo-summary__reviews-link{color:#111!important;text-decoration:none;border-bottom:1px solid transparent}
.pinggo-summary__reviews-link:hover{border-bottom-color:#111}
.pinggo-reviews__summary{display:flex;align-items:center;gap:22px;margin:0 0 34px;padding:26px 30px;border-radius:10px;background:#f3f4f6}
.pinggo-reviews__score{display:flex;align-items:baseline;gap:4px;color:#111}
.pinggo-reviews__score strong{font-size:44px;font-weight:600;line-height:1}
.pinggo-reviews__score span{font-size:16px;color:#777}
.pinggo-reviews__score-meta p{margin:8px 0 0;font-size:14px;color:#666}
.pinggo-reviews__list{list-style:none;margin:0;padding:0;display:grid;gap:0;border-top:1px solid #ececec}
.pinggo-review{padding:26px 0;border-bottom:1px solid #ececec}
.pinggo-review__head{display:flex;align-items:center;gap:14px}
.pinggo-review__avatar{flex:0 0 auto;line-height:0}
.pinggo-review__avatar img{width:48px;height:48px;border-radius:50%;object-fit:cover}
.pinggo-review__meta{display:grid;gap:2px;min-width:0}
.pinggo-review__author{font-size:15px;font-weight:600}
.pinggo-review__tags{display:flex;align-items:center;gap:10px;font-size:12px;color:#888}
.pinggo-review__badge{padding:2px 8px;border-radius:999px;background:#e8f0e9;color:#2f6b3d;font-weight:600}
.pinggo-review__rating{margin:12px 0 0}
.pinggo-review__text{margin:12px 0 0;font-size:15px;line-height:1.7;color:#333}
.pinggo-review__text p{margin:0 0 10px}
.pinggo-review__text p:last-child{margin-bottom:0}
.pinggo-reviews__pagination{display:flex;justify-content:center;gap:8px;margin:28px 0 0}
.pinggo-reviews__pagination .page-numbers{display:grid;place-items:center;min-width:38px;height:38px;padding:0 10px;border:1px solid #ddd;border-radius:8px;color:#111!important;text-decoration:none}
.pinggo-reviews__pagination .page-numbers.current{border-color:#111;background:#111;color:#fff!important}
.pinggo-reviews__note{margin:0;padding:18px 22px;border-radius:10px;background:#f3f4f6;font-size:15px;color:#444;text-align:center}
.pinggo-reviews__note a{color:#111!important;font-weight:600}
/* 2.9.85：空狀態卡片內的說明跟著圖示與主文案一起居中，不再是貼在卡片下緣的另一塊灰條。 */
.pinggo-reviews__empty .pinggo-reviews__note{margin:0;padding:0;background:none;border-radius:0;max-width:min(100%,560px);font-size:15px;font-weight:400;color:#666;line-height:1.6}
/* 只在「摺疊」狀態用 grid 讓按鈕居中；展開時必須回到正常塊級流，
   否則 place-items:center 的 justify-items 會讓表單縮成內容寬度（實測 405px）。 */
.pinggo-reviews__compose{margin:0}
.pinggo-reviews__compose.is-collapsed{display:grid;place-items:center}
.pinggo-reviews__compose:not(.is-collapsed) .pinggo-reviews__button{margin:0 0 18px}
.pinggo-reviews__button{display:inline-block;padding:12px 26px;border:0;border-radius:8px;background:#1e293b;color:#fff;font-size:15px;font-weight:600;font-family:inherit;cursor:pointer}
.pinggo-reviews__button[hidden]{display:none}
.pinggo-reviews__button:hover{background:#111}
.pinggo-reviews__form{width:100%;margin:0}
/* 預設（無 JS）表單可見可直接填寫；JS 載入後才摺疊成「按鈕展開」。 */
.pinggo-reviews__compose.is-collapsed .pinggo-reviews__form{display:none}
.pinggo-review-form{margin:0}
.pinggo-reviews .comment-respond{margin:26px 0 0;padding:28px 30px;border-radius:10px;background:#f8f9fa;text-align:left}
.pinggo-reviews .comment-reply-title{display:block;margin:0 0 6px;font-size:20px;font-weight:600}
.pinggo-reviews .comment-reply-title small{display:none}
.pinggo-reviews__hint{margin:0 0 20px;font-size:13px;color:#777}
.pinggo-reviews .pinggo-rating{margin:0 0 20px}
.pinggo-reviews .pinggo-rating>label{display:block;margin:0 0 10px;font-size:14px;font-weight:600}
.pinggo-reviews .required{color:#c0392b}
.pinggo-rating__stars{display:flex;gap:6px}
.pinggo-rating__star{width:34px;height:34px;padding:2px;border:0;background:none;cursor:pointer;line-height:0}
.pinggo-rating__star svg{width:30px;height:30px;fill:none;stroke:#bbb;stroke-width:1.6;transition:stroke .15s ease}
.pinggo-rating__star.is-preview svg{stroke:#111}
.pinggo-rating__star.is-selected svg{fill:#111;stroke:#111}
.pinggo-rating__status{margin:8px 0 0;font-size:13px;font-weight:600;color:#111;min-height:18px}
.pinggo-rating.is-enhanced .pinggo-rating__select{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);border:0}
.pinggo-rating:not(.is-enhanced) .pinggo-rating__stars{display:none}
.pinggo-rating__select{width:100%;max-width:320px;height:44px;padding:0 12px;border:1px solid #ccc;border-radius:8px;background:#fff;font-family:inherit;font-size:14px}
.pinggo-reviews .comment-form-comment{margin:0 0 18px}
.pinggo-reviews .comment-form-comment label{display:block;margin:0 0 10px;font-size:14px;font-weight:600}
.pinggo-reviews .comment-form-comment textarea{width:100%;padding:14px;border:1px solid #ccc;border-radius:8px;background:#fff;font-family:inherit;font-size:15px;line-height:1.6;resize:vertical}
.pinggo-reviews .form-submit{margin:0}
.pinggo-reviews__submit{min-height:46px;padding:0 30px;border:0!important;border-radius:8px!important;background:#1e293b!important;color:#fff!important;font-family:inherit;font-size:15px;font-weight:600;cursor:pointer}
.pinggo-reviews__submit:hover{background:#111!important}
@media(max-width:900px){
 body.single-product .pinggo-reviews__summary{gap:16px;padding:20px;margin-bottom:24px}
 body.single-product .pinggo-reviews__score strong{font-size:34px}
 body.single-product .pinggo-reviews .comment-respond{padding:22px 18px}
 body.single-product .pinggo-rating__star{width:30px;height:30px}
 body.single-product .pinggo-rating__star svg{width:26px;height:26px}
 body.single-product .pinggo-reviews__submit{width:100%}
}
