:root{--pg-black:#111;--pg-gray:#777;--pg-ui-active-bg:#f4f4f4;--pg-ui-focus:#111;--pg-gutter:4%;--pg-font:"Poppins","Noto Sans TC","PingFang TC","Microsoft JhengHei",Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:72px;scrollbar-gutter:stable}body.pinggo-storefront{margin:0;color:#111;background:#fff;font-family:var(--pg-font);font-size:16px;line-height:1.45;-webkit-font-smoothing:antialiased}body.pinggo-no-scroll{overflow:hidden}.pinggo-storefront a{color:inherit;text-decoration:none}.pinggo-storefront img{display:block;max-width:100%}.pinggo-shell{width:100%;padding-inline:var(--pg-gutter)}.pinggo-icon{width:25px;height:25px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}
.pinggo-announcement{display:flex;height:38px;align-items:center;justify-content:center;padding:0 20px;background:#f5f5f5;color:#333;font-size:13px;letter-spacing:.01em;text-align:center}
.pinggo-breadcrumb{width:100%;height:46px;background:#fff;color:#666;overflow:hidden}.pinggo-breadcrumb__inner{display:flex;width:min(1340px,100%);height:100%;margin:0 auto;padding:0 24px;align-items:center;gap:9px;overflow-x:auto;overflow-y:hidden;font-size:12px;line-height:1.5;white-space:nowrap;scrollbar-width:none;list-style:none;transform:translateY(4px)}.pinggo-breadcrumb__inner::-webkit-scrollbar{display:none}.pinggo-breadcrumb__item{display:inline-flex;min-width:0;align-items:center;gap:9px}.pinggo-breadcrumb__item>a{color:#555;text-decoration:none}.pinggo-breadcrumb__item>a:hover,.pinggo-breadcrumb__item>a:focus-visible{color:#111}.pinggo-breadcrumb__separator{color:#c4c4c4;font-size:18px;font-weight:300}.pinggo-breadcrumb__current{display:block;max-width:min(48vw,520px);overflow:hidden;color:#333;text-overflow:ellipsis}
.pinggo-header{position:sticky;top:0;z-index:50;height:72px;border-bottom:1px solid #eee}.pinggo-header:before{content:"";position:absolute;inset:0;z-index:-1;background:rgba(255,255,255,.85);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.pinggo-header__inner{display:grid;width:100%;height:72px;padding:0 var(--pg-gutter);align-items:center;grid-template-columns:170px 1fr 190px;gap:24px}.pinggo-logo{display:flex;align-items:center}.pinggo-logo__image{width:auto;max-width:122px;max-height:38px}.pinggo-nav__list{display:flex;padding:0;margin:0;align-items:center;justify-content:center;gap:38px;list-style:none}.pinggo-nav__list>li>a{position:relative;display:block;padding:24px 0;font-size:16px;font-weight:500;line-height:24px;white-space:nowrap}.pinggo-nav__list>li>a:after{position:absolute;right:0;bottom:14px;left:0;height:2px;background:#111;content:"";transform:scaleX(0);transition:.2s}.pinggo-nav__list>li>a:hover:after{transform:scaleX(1)}
.pinggo-header__actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.pinggo-icon-button,.pinggo-header__mobile-toggle,.pinggo-nav__close{display:inline-flex;width:38px;height:38px;padding:0;align-items:center;justify-content:center;background:transparent;border:0;border-radius:50%;cursor:pointer}.pinggo-icon-button:hover{background:#f5f5f5}.pinggo-cart-link{position:relative}.pinggo-cart-count{position:absolute;top:-1px;right:-2px;display:flex;width:17px;height:17px;align-items:center;justify-content:center;color:#fff;background:#111;border-radius:50%;font-size:9px}.pinggo-cart-count:empty{display:none}.pinggo-header__mobile-toggle,.pinggo-nav__close{display:none}
.pinggo-mega{position:absolute;z-index:52;top:72px;right:0;left:0;background:#fff;border-top:1px solid #f2f2f2;box-shadow:0 16px 28px rgba(0,0,0,.035);max-height:min(70vh,560px);overflow-y:auto;scrollbar-width:thin}.pinggo-mega[hidden],.pinggo-mega__panel[hidden]{display:none}.pinggo-mega__inner{display:grid;width:max-content;max-width:min(942px,calc(100% - 116px));margin:0 auto;padding:38px 0 56px;grid-template-columns:repeat(var(--pinggo-mega-columns,1),minmax(0,1fr));column-gap:44px;row-gap:36px}.pinggo-mega__column{min-width:0;display:flex;flex-direction:column;gap:36px}.pinggo-mega__group{display:flex;margin:0;align-items:flex-start;flex-direction:column}.pinggo-mega__heading,.pinggo-mega__link{display:block;font-size:17px;line-height:24px;white-space:nowrap}.pinggo-mega__heading{margin-bottom:8px;font-weight:600}.pinggo-mega__link{margin-bottom:8px;font-weight:400}.pinggo-mega__heading:hover,.pinggo-mega__link:hover{text-decoration:underline;text-underline-offset:4px}.pinggo-nav__list>li.is-mega-active>a:after{height:2px;transform:scaleX(1)}
.pinggo-mega__panel--wide .pinggo-mega__inner{max-width:min(1320px,calc(100% - 116px))}.pinggo-mega__panel--medium .pinggo-mega__inner{max-width:min(1146px,calc(100% - 116px))}.pinggo-mega__panel--narrow .pinggo-mega__inner,.pinggo-mega__panel--single-column .pinggo-mega__inner{display:block;width:180px;max-width:none;margin-right:0;margin-left:var(--pinggo-mega-single-left,16px);padding:20px 0 24px}.pinggo-mega__panel--narrow .pinggo-mega__column,.pinggo-mega__panel--single-column .pinggo-mega__column{display:flex;flex-direction:column}.pinggo-mega__panel--narrow .pinggo-mega__group,.pinggo-mega__panel--single-column .pinggo-mega__group{margin:0}.pinggo-mega__panel--narrow .pinggo-mega__heading,.pinggo-mega__panel--single-column .pinggo-mega__heading{width:100%;margin:0;padding:10px 0;border:0;font-weight:400}.pinggo-mega.is-dropdown{background:transparent;border-top:0;box-shadow:none;max-height:none;overflow:visible}.pinggo-mega.is-dropdown .pinggo-mega__panel{width:200px;margin-left:var(--pinggo-mega-single-left,16px);background:#fff;border:0;border-radius:0;box-shadow:0 10px 26px rgba(0,0,0,.08);overflow:hidden}.pinggo-mega.is-dropdown .pinggo-mega__inner{display:block;width:100%;max-width:none;margin:0;padding:10px 0 12px}.pinggo-mega.is-dropdown .pinggo-mega__column{gap:2px}.pinggo-mega.is-dropdown .pinggo-mega__heading{width:100%;margin:0;padding:11px 20px;font-size:16px;font-weight:600}
.pinggo-search-panel{position:absolute;top:100%;right:0;left:0;padding:24px 0;background:#fff;border-top:1px solid #eee;box-shadow:0 10px 30px rgba(0,0,0,.08)}.pinggo-search-panel[hidden],.pinggo-overlay[hidden]{display:none}.pinggo-search-panel__inner,.pinggo-search-panel form{display:flex;align-items:center}.pinggo-search-panel form{flex:1}.pinggo-search-panel input[type=search]{width:100%;height:50px;padding:0 16px;border:1px solid #ccc}.pinggo-search-panel button[type=submit]{height:50px;padding:0 30px;color:#fff;background:#111;border:0}.pinggo-overlay{position:fixed;z-index:55;inset:0;background:rgba(0,0,0,.35)}.pinggo-overlay--beneath{z-index:45}
.pinggo-footer{min-height:0;padding:56px 4% 28px;color:#fff;background:#111}.pinggo-footer__grid{display:grid;grid-template-columns:210px 230px 300px minmax(360px,1fr);gap:34px}.pinggo-footer__promos a{margin:0 0 26px;font-size:14px;font-weight:600;text-transform:uppercase}.pinggo-footer h2{margin:0 0 26px;font-size:14px;font-weight:600}.pinggo-footer__promos,.pinggo-footer__links{display:flex;align-items:flex-start;flex-direction:column}.pinggo-footer__promos{gap:11px}.pinggo-footer__links a{margin-bottom:17px;color:#9a9a9a;font-size:14px}.pinggo-footer__newsletter{max-width:430px;justify-self:end}.pinggo-footer__newsletter p{margin:0 0 38px;color:#999;font-size:14px;line-height:1.45}.pinggo-footer__newsletter form{display:flex;height:48px;border:1px solid #ddd}.pinggo-footer__newsletter input{min-width:0;padding:0 16px;flex:1;color:#fff;background:transparent;border:0;outline:0;font:inherit}.pinggo-footer__newsletter button{width:70px;color:#fff;background:transparent;border:0;border-left:1px solid #ddd;font-size:14px;font-weight:600;text-transform:uppercase}.pinggo-footer__social{display:flex;margin-top:30px;justify-content:flex-end;gap:18px}.pinggo-footer__social a{display:grid;width:26px;height:26px;place-items:center;font-size:0}.pinggo-footer__bottom{display:flex;margin-top:36px;align-items:center;justify-content:space-between;color:#999;font-size:12px}
@media(max-width:1100px){.pinggo-nav__list{gap:20px}.pinggo-nav__list>li>a{font-size:13px}.pinggo-mega__inner{column-gap:34px}.pinggo-mega__heading{font-size:16px}.pinggo-mega__link{font-size:15px}.pinggo-footer__grid{grid-template-columns:1fr 1fr}.pinggo-footer__newsletter{justify-self:start}}
@media(max-width:767px){:root{--pg-gutter:16px}html{scroll-padding-top:55px}.pinggo-announcement{height:28px;font-size:9px}.pinggo-header,.pinggo-header__inner{height:55px}.pinggo-header__inner{padding:0 12px;grid-template-columns:42px 1fr auto;gap:4px}.pinggo-header__mobile-toggle,.pinggo-nav__close{display:inline-flex}.pinggo-logo{justify-self:center}.pinggo-logo__image{max-width:98px;max-height:31px}.pinggo-header__wishlist{display:none}.pinggo-header__actions{gap:0}.pinggo-icon-button{width:36px;height:36px}.pinggo-nav{position:fixed;z-index:60;top:0;bottom:0;left:0;width:min(86vw,360px);padding:18px 24px;overflow:auto;background:#fff;transform:translateX(-105%);transition:.28s}.pinggo-nav.is-open{transform:none}.pinggo-nav__close{width:44px;height:44px;margin-left:auto}.pinggo-nav__list{display:flex;margin-top:20px;align-items:stretch;flex-direction:column;gap:0}.pinggo-nav__list>li{border-bottom:1px solid #eee}/* 2.9.222（用戶：「為什麼有一條黑線」）：展開列的滿版色帶上緣緊貼上一列的分隔線，白→#eee→#f4f4f4 三段相接看起來就是一條線；把「下一列已展開」的那條底線設為透明。 */.pinggo-nav__list>li:has(+li.is-submenu-open){border-bottom-color:transparent}/* 抽屜本身被程式聚焦時不畫外框（焦點環只留給真的用鍵盤操作的控制項） */.pinggo-nav:focus{outline:0}.pinggo-nav__list>li>a{padding:16px 0;font-size:14px}.pinggo-footer{min-height:0;padding:44px 20px 28px}.pinggo-footer__grid{grid-template-columns:1fr;gap:35px}.pinggo-footer__promos{gap:0}.pinggo-footer__newsletter{max-width:none}.pinggo-footer__social{margin-top:30px;justify-content:flex-start}.pinggo-footer__bottom{margin-top:45px;align-items:flex-start;flex-direction:column;gap:12px}}
@media(max-width:767px){.pinggo-breadcrumb{height:42px;background:#f7f7f7}.pinggo-breadcrumb__inner{padding:0 18px;gap:7px;font-size:12px;transform:translateY(2px)}.pinggo-breadcrumb__item{gap:7px}.pinggo-breadcrumb__separator{font-size:16px}.pinggo-breadcrumb__current{max-width:58vw}}

@media(min-width:768px){.pinggo-logo__image{width:auto;max-width:122px;max-height:38px}}

/* Preserve the official mixed-case brand spelling in footer promo links. */
.pinggo-footer__promos a{text-transform:none}
/* 2.8.78 页脚「幫助/探索」折叠（移动端手风琴）：桌面端标题仅展示、内容恒展开，
 * 移动端默认收起、点标题展开/收起（显隐默认值由 CSS 媒体查询控制，避免 JS 加载前闪跳）。 */
.pinggo-footer__acc-toggle{
	display:flex;
	width:100%;
	padding:0;
	align-items:center;
	justify-content:space-between;
	gap:8px;
	color:inherit;
	background:transparent;
	border:0;
	border-radius:0;
	cursor:default;
	font:inherit;
	text-align:left;
	-webkit-appearance:none;
	appearance:none;
}
.pinggo-footer__acc-toggle .pinggo-icon{
	display:none;
	flex:none;
}
.pinggo-footer__acc-body{
	display:flex;
	align-items:flex-start;
	flex-direction:column;
}
html body.pinggo-storefront .pinggo-footer__acc-toggle:focus-visible{
	outline:2px solid #fff!important;
	outline-offset:2px;
	box-shadow:none!important;
}
@media(max-width:767px){
	.pinggo-footer__grid{gap:0}
	.pinggo-footer__promos{padding:2px 0 12px}
	.pinggo-footer__promos a{margin-bottom:22px}
	.pinggo-footer__links{border-top:1px solid rgba(255,255,255,.16)}
	.pinggo-footer__links h2{margin:0}
	.pinggo-footer__acc-toggle{
		padding:15px 0;
		cursor:pointer;
		-webkit-tap-highlight-color:rgba(255,255,255,.08);
		touch-action:manipulation;
	}
	.pinggo-footer__acc-toggle .pinggo-icon{
		display:block;
		width:18px;
		height:18px;
		transition:transform .2s ease;
	}
	.pinggo-footer__links.is-open .pinggo-footer__acc-toggle .pinggo-icon{transform:rotate(180deg)}
	.pinggo-footer__acc-body{display:none}
	.pinggo-footer__links.is-open .pinggo-footer__acc-body{display:flex;padding:0 0 20px}
	.pinggo-footer__acc-body a{margin-bottom:13px}
	.pinggo-footer__newsletter{padding-top:34px}
}
@media(max-width:767px) and (prefers-reduced-motion:reduce){
	.pinggo-footer__acc-toggle .pinggo-icon{transition:none}
}
@media(max-width:767px){.pinggo-header__actions>button[data-pinggo-search-toggle]{position:absolute;left:48px}}

/* Mobile navigation follows the reference storefront's expandable hierarchy. */
.pinggo-nav__submenu-toggle,.pinggo-nav__submenu{display:none}
@media(max-width:767px){
	.pinggo-header__mobile-toggle,.pinggo-nav__close{color:#111!important}
	.pinggo-header__mobile-toggle:hover,.pinggo-header__mobile-toggle:focus-visible,
	.pinggo-nav__close:hover,.pinggo-nav__close:focus-visible{color:#111!important;background:#f3f3f3}
	.pinggo-header__mobile-toggle svg,.pinggo-nav__close svg{color:inherit;stroke:currentColor}
	.pinggo-nav__item--has-children>.pinggo-nav__top-link{display:none}
	.pinggo-nav__submenu-toggle{display:flex;width:100%;padding:18px 0;align-items:center;justify-content:space-between;color:var(--pg-black)!important;background:transparent!important;border:0!important;border-bottom:1px solid #eee!important;border-radius:0!important;box-shadow:none!important;outline:0;font:inherit;font-size:15px;font-weight:500;text-align:left;cursor:pointer;-webkit-appearance:none;appearance:none;-webkit-tap-highlight-color:rgba(17,17,17,.08)}
	/* 2.9.220（用戶：「預設狀態有不完整的灰底」）：展開列的灰底原本只到內容寬度（左右各縮 24px）
	   且文字貼齊色塊邊緣 → 看起來像破圖。改成滿版色帶（左右各外擴 24px、內距補回 24px），
	   文字位置不變、色帶延伸到抽屜兩側；分隔線維持原本內縮節奏。 */
	.pinggo-nav__submenu-toggle{margin-left:-24px;width:calc(100% + 48px);padding:18px 24px;border-bottom:0!important}
	.pinggo-nav__submenu-toggle:active,.pinggo-nav__submenu-toggle:focus,.pinggo-nav__submenu-toggle:focus-visible,.pinggo-nav__submenu-toggle[aria-expanded=true]{color:var(--pg-black)!important;background:var(--pg-ui-active-bg)!important;box-shadow:none!important}
	/* 觸控裝置的 hover 會殘留灰底（點過就一直是灰的）→ 只在真的有 hover 的裝置給 hover 底色。 */
	@media(hover:hover){.pinggo-nav__submenu-toggle:hover{color:var(--pg-black)!important;background:var(--pg-ui-active-bg)!important;box-shadow:none!important}}
	.pinggo-nav__submenu-toggle:focus-visible{outline:2px solid var(--pg-ui-focus)!important;outline-offset:-2px}
	.pinggo-nav__submenu-chevron{font-size:25px;font-weight:300;line-height:1;transition:transform .2s}
	.pinggo-nav__submenu-toggle[aria-expanded=true] .pinggo-nav__submenu-chevron{transform:rotate(90deg)}
	.pinggo-nav__submenu{display:block;padding:0 0 18px}
	.pinggo-nav__submenu[hidden]{display:none}
	.pinggo-nav__submenu-all,.pinggo-nav__submenu-heading,.pinggo-nav__submenu-link{display:block;color:#111}
	.pinggo-nav__submenu-all{padding:12px 0 16px;font-size:13px;font-weight:600;text-decoration:underline;text-underline-offset:4px}
	.pinggo-nav__submenu-group{padding:12px 0;border-top:1px solid #eee}
	.pinggo-nav__submenu-heading{margin-bottom:7px;font-size:14px;font-weight:600}
	.pinggo-nav__submenu-link{padding:11px 0;color:#555;font-size:13px;line-height:1.4}   /* 2.9.221：點擊高度 30 → 40px（行動點擊目標） */
}
@media(max-width:1024px){.pinggo-mega{display:none!important}}
/* 2.9.228（用戶：「遺留未決修掉」＝768–1024px 平板兩邊都沒有）：
   原本 >1024px 走 mega 下拉、≤767px 才有漢堡抽屜，768–1024px 這段 mega 被
   `@media(max-width:1024px){.pinggo-mega{display:none!important}}` 關掉、漢堡又還沒出現
   → 平板完全沒有下拉可用（2.9.220 導覽健檢發現、當時留待決定）。
   修法：把「漢堡抽屜」延伸到 ≤1024px（與 mega 的隱藏斷點對齊，兩者剛好互補、永不重疊），
   只給導覽與抽屜必要的規則：桌機 1100px 斷點已把 nav 字級／間距縮小，抽屜樣式與手機一致
   （抽屜寬度另設 360px 上限，平板不會變成滿版抽屜）。字級／顏色沿用抽屜既有設定，
   不改手機（≤767px）那一套，也不動平板頁首高度（維持桌機 72px，JS 的吸頂補償不用改）。 */
@media(min-width:768px) and (max-width:1024px){
	.pinggo-header__mobile-toggle{display:inline-flex;color:#111!important}
	.pinggo-header__mobile-toggle:hover,.pinggo-header__mobile-toggle:focus-visible{color:#111!important;background:#f3f3f3}
	.pinggo-header__mobile-toggle svg{color:inherit;stroke:currentColor}
	.pinggo-nav{position:fixed;z-index:60;top:0;bottom:0;left:0;width:min(86vw,360px);padding:18px 24px;overflow:auto;background:#fff;transform:translateX(-105%);transition:.28s}
	.pinggo-nav.is-open{transform:none}
	.pinggo-nav__close{display:inline-flex;width:44px;height:44px;margin-left:auto;color:#111!important}
	.pinggo-nav__close:hover,.pinggo-nav__close:focus-visible{color:#111!important;background:#f3f3f3}
	.pinggo-nav__close svg{color:inherit;stroke:currentColor}
	.pinggo-nav__list{display:flex;margin-top:20px;align-items:stretch;flex-direction:column;gap:0}
	.pinggo-nav__list>li{border-bottom:1px solid #eee}
	.pinggo-nav__list>li:has(+li.is-submenu-open){border-bottom-color:transparent} /* 2.9.222：展開列色帶上緣不畫線 */
	.pinggo-nav:focus{outline:0}
	.pinggo-nav__list>li>a{padding:16px 0;font-size:15px}
	.pinggo-nav__item--has-children>.pinggo-nav__top-link{display:none}
	.pinggo-nav__submenu-toggle{display:flex;margin-left:-24px;width:calc(100% + 48px);padding:18px 24px;align-items:center;justify-content:space-between;color:var(--pg-black)!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;outline:0;font:inherit;font-size:15px;font-weight:500;text-align:left;cursor:pointer;-webkit-appearance:none}
	.pinggo-nav__submenu-toggle:active,.pinggo-nav__submenu-toggle:focus,.pinggo-nav__submenu-toggle:focus-visible,.pinggo-nav__submenu-toggle[aria-expanded=true]{color:var(--pg-black)!important;background:var(--pg-ui-active-bg)!important;box-shadow:none!important}
	@media(hover:hover){.pinggo-nav__submenu-toggle:hover{color:var(--pg-black)!important;background:var(--pg-ui-active-bg)!important;box-shadow:none!important}}
	.pinggo-nav__submenu-toggle:focus-visible{outline:2px solid var(--pg-ui-focus)!important;outline-offset:-2px}
	.pinggo-nav__submenu-chevron{font-size:25px;font-weight:300;line-height:1;transition:transform .2s}
	.pinggo-nav__submenu-toggle[aria-expanded=true] .pinggo-nav__submenu-chevron{transform:rotate(90deg)}
	.pinggo-nav__submenu{display:block;padding:0 0 18px}
	.pinggo-nav__submenu[hidden]{display:none}
	.pinggo-nav__submenu-all,.pinggo-nav__submenu-heading,.pinggo-nav__submenu-link{display:block;color:#111}
	.pinggo-nav__submenu-all{padding:12px 0 16px;font-size:13px;font-weight:600;text-decoration:underline;text-underline-offset:4px}
	.pinggo-nav__submenu-group{padding:12px 0;border-top:1px solid #eee}
	.pinggo-nav__submenu-heading{margin-bottom:7px;font-size:14px;font-weight:600}
	.pinggo-nav__submenu-link{padding:11px 0;color:#555;font-size:13px;line-height:1.4}
}

/* Keep header actions neutral like the reference storefront in every state. */
.pinggo-storefront .pinggo-header__actions,
.pinggo-storefront .pinggo-header__actions a,
.pinggo-storefront .pinggo-header__actions button,
.pinggo-storefront .pinggo-icon-button{
	color:#111;
}
.pinggo-storefront .pinggo-icon-button:hover,
.pinggo-storefront .pinggo-icon-button:focus-visible{
	color:#111;
	background:#f5f5f5;
}

/* 頁尾社群圖示（2.9.174：用戶反映原本 29px 灰底圓＋深色描邊圖示看起來廉價、山寨 → 改官方實心 logo、去掉灰底）。
   平常 60% 灰、滑過變純白並上浮 2px（與站上其他 hover 同一個節奏）；Tab 聚焦吃同一組樣式。 */
.pinggo-footer__social a{
	display:grid;
	width:26px;
	height:26px;
	place-items:center;
	color:#9a9a9a;
	font-size:0;
	transition:color .18s,transform .18s;
}
.pinggo-footer__social .pinggo-icon{
	width:20px;
	height:20px;
	fill:currentColor;
	stroke:none;
}
/* 2.9.176：LINE 用回官方「泡泡 ＋ 字母」組合（用戶要求換回），尺寸與其他圖示一致 20px；
   先前的 21px 純泡泡放大規則已移除。 */
.pinggo-footer__social a:hover,
.pinggo-footer__social a:focus-visible{
	color:#fff;
	transform:translateY(-2px);
}

.pinggo-newsletter-honeypot{
	position:absolute!important;
	width:1px!important;
	height:1px!important;
	padding:0!important;
	margin:-1px!important;
	overflow:hidden!important;
	clip:rect(0,0,0,0)!important;
	white-space:nowrap!important;
	border:0!important;
}
.pinggo-footer__newsletter .pinggo-footer__newsletter-status{
	min-height:20px;
	margin:10px 0 0;
	color:#bdbdbd;
	font-size:12px;
}
.pinggo-footer__newsletter form.is-loading button{
	opacity:.55;
	cursor:wait;
}

/* Shared cart drawer */
.pinggo-cart-drawer{position:fixed;z-index:10002;top:0;right:0;width:min(420px,100%);height:100dvh;background:#fff;color:#111;box-shadow:-10px 0 34px rgba(0,0,0,.12);font-family:Arial,"Noto Sans TC",sans-serif;transform:translateX(105%);transition:transform .32s ease}.pinggo-cart-drawer.is-open{transform:translateX(0)}.pinggo-cart-drawer>[data-pinggo-cart-contents]{display:flex;height:100%;flex-direction:column}.pinggo-cart-drawer__header{display:flex;min-height:78px;align-items:center;justify-content:space-between;padding:0 28px;border-bottom:1px solid #ddd}.pinggo-cart-drawer__header h2{margin:0;font-size:24px;font-weight:600}.pinggo-cart-drawer__header h2 span{color:#777;font-size:16px;font-weight:400}.pinggo-cart-drawer__header button{display:grid;width:40px;height:40px;padding:0;place-items:center;border:0;background:transparent;cursor:pointer}.pinggo-cart-drawer__header svg{width:25px;height:25px}.pinggo-cart-shipping{padding:18px 28px;background:#f5f5f5}.pinggo-cart-shipping p{margin:0 0 10px;font-size:13px;text-align:center}.pinggo-cart-shipping>div{height:3px;background:#d4d4d4}.pinggo-cart-shipping>div span{display:block;height:100%;background:#111}.pinggo-cart-drawer__items{flex:1;padding:4px 28px;overflow-y:auto}.pinggo-mini-cart-item{display:grid;grid-template-columns:104px 1fr;gap:18px;padding:24px 0;border-bottom:1px solid #ddd}.pinggo-mini-cart-item__image{display:block;width:104px;height:104px;background:#f3f3f3}.pinggo-mini-cart-item__image img{display:block;width:100%;height:100%;object-fit:contain}.pinggo-mini-cart-item__title{display:block;margin:2px 0 7px;color:#111;font-size:15px;font-weight:600;line-height:1.35;text-decoration:none}.pinggo-mini-cart-item .variation{margin:0;color:#777;font-size:11px}.pinggo-mini-cart-item .variation dt,.pinggo-mini-cart-item .variation dd{display:inline;margin:0}.pinggo-mini-cart-item .variation p{margin:0}.pinggo-mini-cart-item__bottom{display:flex;align-items:center;justify-content:space-between;margin-top:17px}.pinggo-mini-quantity{display:grid;grid-template-columns:30px 30px 30px;height:32px;border:1px solid #aaa}.pinggo-mini-quantity button{padding:0;border:0;background:#fff;color:#111;cursor:pointer}.pinggo-mini-quantity span{display:grid;place-items:center;font-size:12px}.pinggo-mini-cart-item__price{font-size:13px}.pinggo-mini-cart-item__remove{margin-top:11px;padding:0;border:0;background:transparent;color:#777;font-size:11px;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.pinggo-cart-drawer__summary{padding:24px 28px 28px;border-top:1px solid #ccc;background:#fff}.pinggo-cart-drawer__summary>div{display:flex;justify-content:space-between;font-size:17px}.pinggo-cart-drawer__summary p{margin:7px 0 19px;color:#777;font-size:11px;text-align:center}.pinggo-cart-drawer__checkout,.pinggo-cart-drawer__view{display:block;padding:15px 20px;text-align:center;text-decoration:none}.pinggo-cart-drawer__checkout{background:#111;color:#fff!important;font-weight:600}.pinggo-cart-drawer__view{padding-bottom:0;color:#111!important;font-size:13px;text-decoration:underline;text-underline-offset:4px}.pinggo-cart-drawer__empty{display:flex;flex:1;align-items:center;justify-content:center;flex-direction:column;padding:50px 28px;text-align:center}.pinggo-cart-drawer__empty-icon svg{width:56px;height:56px;stroke-width:1.25}.pinggo-cart-drawer__empty h3{margin:27px 0 9px;font-size:25px}.pinggo-cart-drawer__empty p{max-width:300px;margin:0 0 28px;color:#777;font-size:14px;line-height:1.5}.pinggo-cart-drawer__empty a{padding:15px 34px;background:#111;color:#fff;text-decoration:none;font-size:14px}.pinggo-cart-drawer.is-loading:after{content:"";position:absolute;inset:0;background:rgba(255,255,255,.65)}
@media(max-width:480px){.pinggo-cart-drawer__header{min-height:72px;padding:0 20px}.pinggo-cart-shipping{padding:16px 20px}.pinggo-cart-drawer__items{padding:3px 20px}.pinggo-mini-cart-item{grid-template-columns:96px 1fr;gap:16px}.pinggo-mini-cart-item__image{width:96px;height:96px}.pinggo-cart-drawer__summary{padding:22px 20px 25px}}

/* Sitewide back-to-top control.
 * Keep these selectors deliberately specific: WooCommerce/Elementor button
 * states must never reintroduce their pink accent colour here.
 */
html body.pinggo-storefront button.pinggo-back-to-top,
html body button.pinggo-back-to-top{
	position:fixed;
	z-index:90;
	right:25px;
	bottom:20px;
	display:grid;
	width:44px;
	height:44px;
	padding:0;
	place-items:center;
	-webkit-appearance:none;
	appearance:none;
	color:#444!important;
	background:rgba(255,255,255,.9)!important;
	border:0!important;
	border-radius:50%;
	box-shadow:0 0 5px rgba(0,0,0,.17)!important;
	opacity:0;
	visibility:hidden;
	transform:translateY(10px);
	pointer-events:none;
	cursor:pointer;
	transition:opacity .2s ease,visibility .2s ease,transform .2s ease,background-color .2s ease;
}
html body button.pinggo-back-to-top.is-visible{
	opacity:1;
	visibility:visible;
	transform:translateY(0);
	pointer-events:auto;
}
html body button.pinggo-back-to-top:hover,
html body button.pinggo-back-to-top:active,
html body button.pinggo-back-to-top:focus{
	color:#777!important;
	background:rgba(255,255,255,1)!important;
	border-color:transparent!important;
}
html body button.pinggo-back-to-top:focus-visible{outline:2px solid #444;outline-offset:3px}
html body button.pinggo-back-to-top svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
html body.pinggo-no-scroll button.pinggo-back-to-top{opacity:0;visibility:hidden;pointer-events:none}
@media(max-width:767px){html body button.pinggo-back-to-top{right:12px;bottom:12px;width:40px;height:40px}}
@media(prefers-reduced-motion:reduce){html body button.pinggo-back-to-top{transition:none}}

/* Chaty occupies the same lower-right corner. Keep chat above the native
 * back-to-top control so the expected page-navigation action remains last. */
html body .chaty > .chaty-widget.right-position{
	/* 2.8.62: 客服气泡右侧垂直居中（44px 圆精确落在线中点）；移动端保留右下角。
	 * 2.8.77: 聊天在上返回顶在下，均 44px 同轴线。 */
	right:21px!important;
	bottom:76px!important;
}

/* 2.8.79: 客服气泡常驻显示（撤销 2.8.63 的随滚动显示——顶部也可见）。 */

@media(max-width:767px){
	html body .chaty > .chaty-widget.right-position{
		bottom:68px!important;
	}
}
html body .chaty .chaty-widget .chaty-channel-list .chaty-svg svg circle.color-element,
html body .chaty .chaty-widget .chaty-channel-list .chaty-svg svg circle,
html body .chaty .chaty-widget .chaty-channel-list .chaty-svg svg ellipse,
html body .chaty .chaty-widget .chaty-channel-list .chaty-svg svg path.color-element{
	fill:#3366ff!important;
}
html body .chaty button.open-chaty svg circle,
html body .chaty .chaty-cta-close button svg ellipse{
	fill:#3366ff!important;
}
html body .chaty button.open-chaty,
html body .chaty .chaty-cta-close button{
	background:#fff!important;
	box-shadow:0 2px 10px rgba(0,0,0,.18)!important;
}
html body .chaty .chaty-cta-close button svg ellipse{fill:transparent!important}
html body .chaty .chaty-cta-close button svg rect{fill:#111!important}
html body .chaty .chaty-channel-list .chaty-svg{
	background:#fff!important;
	border-radius:50%;
	box-shadow:0 2px 10px rgba(0,0,0,.18)!important;
}
html body .chaty .chaty-cta-button{
	background:#fff!important;
	border:0!important;
	box-shadow:0 0 5px rgba(0,0,0,.17)!important;
}
html body .chaty .chaty-cta-button:hover,
html body .chaty .chaty-cta-button:focus{
	background:#fff!important;
}
html body .chaty .chaty-cta-button .chaty-cta-icon svg,
html body .chaty .chaty-cta-button svg.chaty-widget-icon{
	fill:#444!important;
	stroke:#444!important;
}
html body .chaty .chaty-channel-list .chaty-channel{
	border:0!important;
	box-shadow:0 0 5px rgba(0,0,0,.17)!important;
}
html body .chaty .chaty-channel .color-element{
	fill:#444!important;
}
html body .chaty .chaty-channel:hover .color-element,
html body .chaty .chaty-channel:focus-within .color-element{
	fill:#777!important;
}

/* 2.3.3 global interaction colour lock.
 * WooCommerce/Elementor can inject #cc3366/#d6336c into active/focus states.
 * Keep all storefront interactions neutral unless a component explicitly opts out.
 */
html body,
html body.pinggo-storefront{
	--e-global-color-primary:#111!important;
	--e-global-color-accent:#111!important;
	--e-a-color-primary:#111!important;
	--e-a-color-accent:#111!important;
	--wc-primary:#111!important;
	--wp-admin-theme-color:#111!important;
	accent-color:#111;
}
html body.pinggo-storefront a,
html body.pinggo-storefront button,
html body.pinggo-storefront input,
html body.pinggo-storefront select{
	accent-color:#111;
}
html body.pinggo-storefront a:focus,
html body.pinggo-storefront button:focus,
html body.pinggo-storefront input:focus,
html body.pinggo-storefront select:focus,
html body.pinggo-storefront textarea:focus{
	outline-color:#111!important;
}
html body.pinggo-storefront a:focus-visible,
html body.pinggo-storefront button:focus-visible,
html body.pinggo-storefront input:focus-visible,
html body.pinggo-storefront select:focus-visible,
html body.pinggo-storefront textarea:focus-visible{
	outline-color:#111!important;
	box-shadow:0 0 0 2px rgba(17,17,17,.12)!important;
}
/* 2.8.70: 排序下拉豁免全局聚焦光圈——用户要求点击/点空白后均无任何框 */
html body.pinggo-storefront .pinggo-shop-ordering select:focus,
html body.pinggo-storefront .pinggo-shop-ordering select:focus-visible{
	outline:0!important;
	box-shadow:none!important;
}
html body.pinggo-storefront .pinggo-header svg,
html body.pinggo-storefront .pinggo-mobile-drawer svg,
html body.pinggo-storefront .pinggo-cart-drawer svg{
	stroke:#111!important;
}
html body.pinggo-storefront .pinggo-header a:hover,
html body.pinggo-storefront .pinggo-header a:focus,
html body.pinggo-storefront .pinggo-header button:hover,
html body.pinggo-storefront .pinggo-header button:focus{
	color:#111!important;
	background:transparent!important;
	border-color:transparent!important;
}
html body.pinggo-storefront .pinggo-mobile-drawer a:hover,
html body.pinggo-storefront .pinggo-mobile-drawer a:focus,
html body.pinggo-storefront .pinggo-mobile-drawer button:hover,
html body.pinggo-storefront .pinggo-mobile-drawer button:focus{
	color:#111!important;
	background:#f5f5f5!important;
	border-color:#eee!important;
}
html body.pinggo-storefront .pinggo-mobile-drawer .is-active,
html body.pinggo-storefront .pinggo-mobile-drawer [aria-current],
html body.pinggo-storefront .pinggo-mobile-drawer [aria-expanded=true],
html body.pinggo-storefront .pinggo-mobile-drawer .current-menu-item>a,
html body.pinggo-storefront .pinggo-mobile-drawer .current-menu-ancestor>a{
	color:#111!important;
	background:#f5f5f5!important;
	border-color:#eee!important;
}
html body.pinggo-storefront .pinggo-search-panel button[type=submit],
html body.pinggo-storefront .pinggo-search-panel button[type=submit]:hover,
html body.pinggo-storefront .pinggo-search-panel button[type=submit]:focus,
html body.pinggo-storefront .search-submit,
html body.pinggo-storefront .search-submit:hover,
html body.pinggo-storefront .search-submit:focus{
	background:#111!important;
	color:#fff!important;
	border-color:#111!important;
}
html body.pinggo-storefront .pinggo-search-panel button[type=submit] svg,
html body.pinggo-storefront .search-submit svg{
	stroke:#fff!important;
}
html body.pinggo-storefront .woocommerce a.button,
html body.pinggo-storefront .woocommerce button.button,
html body.pinggo-storefront .woocommerce input.button,
html body.pinggo-storefront .woocommerce #respond input#submit,
html body.pinggo-storefront .woocommerce a.button:hover,
html body.pinggo-storefront .woocommerce button.button:hover,
html body.pinggo-storefront .woocommerce input.button:hover,
html body.pinggo-storefront .woocommerce #respond input#submit:hover{
	background:#111!important;
	color:#fff!important;
	border-color:#111!important;
}
html body.pinggo-storefront .pinggo-cart-drawer__header button:hover,
html body.pinggo-storefront .pinggo-cart-drawer__header button:focus,
html body.pinggo-storefront .pinggo-mini-quantity button:hover,
html body.pinggo-storefront .pinggo-mini-quantity button:focus{
	background:#f5f5f5!important;
	color:#111!important;
	border-color:#ddd!important;
}
/* 2.8.11 button-state total lock: hello-elementor reset.css hardcodes pink #c36 on
 * button / [type=button] / [type=submit] and their :hover/:focus/:active (pink pillow,
 * white text). Component locks above keep their own interaction colours via !important;
 * this base row is the safety net for every other button (e.g. cart drawer 移除,
 * footer newsletter 加入). Any component rule with !important outranks it. */
html body.pinggo-storefront button:focus,
html body.pinggo-storefront button:hover,
html body.pinggo-storefront button:active,
html body.pinggo-storefront [type="button"]:focus,
html body.pinggo-storefront [type="button"]:hover,
html body.pinggo-storefront [type="button"]:active,
html body.pinggo-storefront [type="submit"]:focus,
html body.pinggo-storefront [type="submit"]:hover,
html body.pinggo-storefront [type="submit"]:active,
html body.pinggo-storefront [type="reset"]:focus,
html body.pinggo-storefront [type="reset"]:hover,
html body.pinggo-storefront [type="reset"]:active{
	background:transparent;
	color:inherit;
	border-color:transparent;
}
/* Keep the cart drawer 移除 a subtle text link in every state (was pink pillow). */
html body.pinggo-storefront .pinggo-mini-cart-item__remove:focus,
html body.pinggo-storefront .pinggo-mini-cart-item__remove:hover{
	color:#777!important;
	text-decoration:underline!important;
	background:transparent!important;
	border-color:transparent!important;
}
/* Components whose own (non-important) hover colour predates this lock: re-assert. */
html body.pinggo-storefront .pinggo-icon-button:focus,
html body.pinggo-storefront .pinggo-icon-button:hover{
	background:#f5f5f5!important;
	color:#111!important;
	border-color:transparent!important;
}
html body.pinggo-storefront .pinggo-related__controls button:focus,
html body.pinggo-storefront .pinggo-related__controls button:hover{
	background:transparent!important;
	color:#111!important;
	border-color:transparent!important;
}
html body.pinggo-storefront .pinggo-settings-menu button:focus,
html body.pinggo-storefront .pinggo-settings-menu button:hover{
	background:#25282e!important;
	color:#fff!important;
	border-color:transparent!important;
}
/* WooCommerce notices restyled to match the storefront language (2.5.98). */
.pinggo-storefront .woocommerce-message,.pinggo-storefront .woocommerce-info,.pinggo-storefront .woocommerce-error,.pinggo-storefront .wc-block-components-notice-banner{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 18px;padding:15px 18px!important;border:1px solid #e6e6e6!important;border-left-color:#e6e6e6!important;border-radius:10px!important;background:#fff!important;color:#444;font-size:13.5px;box-shadow:0 1px 2px rgba(16,24,40,.04)}
.pinggo-storefront .woocommerce-message::before,.pinggo-storefront .woocommerce-info::before,.pinggo-storefront .woocommerce-error::before{display:none}
.pinggo-storefront .woocommerce-error{border-left-color:#c0392b;background:#fdf4f3;color:#8f2f27}
.pinggo-storefront .woocommerce-message .button,.pinggo-storefront .woocommerce-info .button,.pinggo-storefront .woocommerce-error .button{display:inline-flex;align-items:center;justify-content:center;margin-left:auto;padding:9px 16px;background:#111;border:0;border-radius:8px;color:#fff;font-weight:600;font-size:13px}
.pinggo-storefront .woocommerce-message .button:hover,.pinggo-storefront .woocommerce-info .button:hover,.pinggo-storefront .woocommerce-error .button:hover{background:#2a2d33;color:#fff}
.pinggo-storefront .woocommerce-message li,.pinggo-storefront .woocommerce-info li,.pinggo-storefront .woocommerce-error li{list-style:none;margin:4px 0}
/* Quick-view option modal for variable product cards (2.6.0). */
.pinggo-quick-modal{position:fixed;inset:0;z-index:10009;display:grid;place-items:center;padding:24px;background:rgba(17,17,17,.45)}
.pinggo-quick-modal__panel{position:relative;width:min(560px,100%);max-height:85vh;overflow:auto;background:#fff;border-radius:14px;box-shadow:0 18px 60px rgba(16,24,40,.22)}
.pinggo-quick-modal__head{display:flex;align-items:flex-start;gap:14px;padding:22px 76px 16px 24px;border-bottom:1px solid #eee}
.pinggo-quick-modal__title{display:flex;flex-direction:column;gap:6px;min-width:0;font-size:18px;font-weight:600;font-family:Arial,"Noto Sans TC",sans-serif;color:#111}
.pinggo-quick-modal__price{font-size:14px;font-weight:400}
.pinggo-quick-modal__close{position:absolute;top:16px;right:16px;z-index:2;width:38px;height:38px;padding:0;border:0;border-radius:10px;background:#f2f2f2;color:#111;font-size:22px;line-height:1;cursor:pointer}
.pinggo-quick-modal__close:hover{background:#e6e6e6}
.pinggo-quick-modal__body{padding:20px 24px 8px}
.pinggo-quick-modal__group{margin:0 0 18px}
.pinggo-quick-modal__label{margin:0 0 10px;color:#666;font-size:13px;font-family:Arial,"Noto Sans TC",sans-serif}
.pinggo-quick-modal__options{display:flex;flex-wrap:wrap;gap:8px}
.pinggo-quick-modal__chip,.pinggo-quick-modal__chip:active,.pinggo-quick-modal__chip:focus,.pinggo-quick-modal__chip:visited{padding:9px 16px;border:1px solid #ddd!important;border-radius:999px;background:#fff!important;color:#111!important;font-size:13px;cursor:pointer;transition:.15s}
.pinggo-quick-modal__chip:hover{border-color:#111!important;background:#fff!important;color:#111!important}
.pinggo-quick-modal__chip.is-active,.pinggo-quick-modal__chip.is-active:hover,.pinggo-quick-modal__chip.is-active:focus{background:#405cf5!important;border-color:#405cf5!important;color:#fff!important}
.pinggo-quick-modal__foot{display:flex;align-items:center;gap:14px;padding:16px 24px 22px}
.pinggo-quick-modal__view{color:#555;font-size:13px;font-family:Arial,"Noto Sans TC",sans-serif;text-decoration:underline;text-underline-offset:4px}
.pinggo-quick-modal__add{margin-left:auto;padding:13px 26px;border:0;border-radius:10px;background:#111;color:#fff;font-size:14px;font-weight:600;cursor:pointer}
.pinggo-quick-modal__add:disabled{opacity:.4;cursor:not-allowed}
.pinggo-quick-modal__add:not(:disabled):hover{background:#2a2d33}
body.pinggo-quick-modal--open{overflow:hidden}
.pinggo-quick-add__wire{display:none}

/* Brand-blue actions (2.6.1): quick-add modal, checkout place-order, WC alt fallbacks. */
.pinggo-storefront .pinggo-quick-modal__add,.pinggo-storefront .pinggo-cart-coupon__apply,.pinggo-storefront .pinggo-checkout__summary #place_order,.pinggo-storefront #place_order,.pinggo-storefront .wc-block-components-checkout-place-order-button,.pinggo-storefront .woocommerce button.button.alt,.pinggo-storefront .woocommerce a.button.alt{background:#405cf5!important;border-color:#405cf5!important;color:#fff!important}
.pinggo-storefront .pinggo-quick-modal__add:not(:disabled):hover,.pinggo-storefront .pinggo-checkout__summary #place_order:hover,.pinggo-storefront #place_order:hover,.pinggo-storefront .wc-block-components-checkout-place-order-button:hover,.pinggo-storefront .woocommerce button.button.alt:hover,.pinggo-storefront .woocommerce a.button.alt:hover{background:#3551d9!important;border-color:#3551d9!important;color:#fff!important}

/* 2.6.2: pink-kill — any leftover default (WC/RY/ECPay) action button inside
 * checkout or the quick modal becomes brand blue. Chips/close excluded. */
.pinggo-storefront .woocommerce-checkout button.button,.pinggo-storefront .woocommerce-checkout a.button,.pinggo-storefront .woocommerce-checkout form.checkout button:not(.pinggo-quick-modal__chip),.pinggo-storefront .woocommerce-checkout .woocommerce-shipping-fields button,.pinggo-storefront .pinggo-quick-modal button:not(.pinggo-quick-modal__chip):not(.pinggo-quick-modal__close){background:#405cf5!important;border:1px solid #405cf5!important;color:#fff!important;border-radius:8px}
.pinggo-storefront .woocommerce-checkout button.button:hover,.pinggo-storefront .woocommerce-checkout a.button:hover,.pinggo-storefront .woocommerce-checkout form.checkout button:not(.pinggo-quick-modal__chip):hover,.pinggo-storefront .pinggo-quick-modal button:not(.pinggo-quick-modal__chip):not(.pinggo-quick-modal__close):hover{background:#3551d9!important;border-color:#3551d9!important;color:#fff!important}

/* 2.6.3: exact RY EC-pay CVS chooser — in case of sticky plugin defaults. */
.pinggo-storefront .ry-choose-cvs,.pinggo-storefront button.ry-choose-cvs,.pinggo-storefront .woocommerce-checkout .ry-choose-cvs{background:#405cf5!important;border:1px solid #405cf5!important;color:#fff!important;border-radius:8px}
.pinggo-storefront button.ry-choose-cvs:hover{background:#3551d9!important;border-color:#3551d9!important;color:#fff!important}
/* 2.6.4: quick modal loading + error states. */
.pinggo-quick-modal__loading{padding:48px 24px;text-align:center;color:#777;font-size:14px;font-family:Arial,"Noto Sans TC",sans-serif}
.pinggo-quick-modal__error{padding:44px 24px;text-align:center;color:#444;font-size:14px;font-family:Arial,"Noto Sans TC",sans-serif}
.pinggo-quick-modal__error p{margin:0 0 18px}
.pinggo-quick-modal__error .pinggo-quick-modal__view{display:inline-block;margin:0 0 10px}
.pinggo-quick-modal__error .pinggo-quick-modal__add{display:inline-block}
/* 2.7.1: shimmer skeleton instead of a "loading" label. */
.pinggo-quick-modal__skeleton{display:flex;flex-direction:column;gap:12px;padding:44px 24px 24px}
.pinggo-quick-modal__skeleton::before{content:'規格';color:#999;font-size:13px;font-family:Arial,"Noto Sans TC",sans-serif;margin-bottom:4px}
.pinggo-quick-modal__skel{height:38px;border-radius:999px;background:linear-gradient(90deg,#f1f1f1 25%,#e6e6e6 37%,#f1f1f1 63%);background-size:400% 100%;animation:pinggo-shimmer 1.2s ease infinite}
@keyframes pinggo-shimmer{0%{background-position:100% 0}100%{background-position:-100% 0}}
/* 2.7.2 palette lock: WooCommerce's default button pink (#a46497 family) can never surface.
 * 2.9.86 收斂（單一控制點）：舊寫法用 `button` 全選 + 逐次補 :not() 白名單，先後 5 次誤傷
 * （chip／close／coupon／place_order／wishlist）都靠再加一個 :not() 止血；2026-09-17 站長回報
 * 又誤傷兩個——WooCommerce 原生的密碼顯示鈕 .show-password-input 與登入頁的
 * .pinggo-account-auth__switch-btn（兩者都不是按鈕，只是圖示鈕與切換文字）。
 * 改為只鎖「真正的按鈕」：帶 .button 類或 type=submit。圖示鈕、切換鈕、tab 與日後新增的自定義
 * 控件一律不再被波及（收斂前實測：全站僅上述兩個元素受此規則影響，其他頁面 0 命中）。
 * 排除清單只剩 wishlist-toggle（收藏心形有獨立設計）。 */
.pinggo-storefront .woocommerce button.button:not(.pinggo-wishlist-toggle),
.pinggo-storefront .woocommerce button[type="submit"]:not(.pinggo-wishlist-toggle),
.pinggo-storefront .woocommerce input[type="submit"]:not(.pinggo-wishlist-toggle),
.pinggo-storefront .woocommerce a.button:not(.pinggo-wishlist-toggle),
.pinggo-storefront .woocommerce input.button:not(.pinggo-wishlist-toggle) {
	background: #405cf5;
	border: 1px solid #405cf5;
	color: #fff;
	border-radius: 8px;
}
.pinggo-storefront .woocommerce button.button:hover:not(.pinggo-wishlist-toggle),
.pinggo-storefront .woocommerce button[type="submit"]:hover:not(.pinggo-wishlist-toggle),
.pinggo-storefront .woocommerce input[type="submit"]:hover:not(.pinggo-wishlist-toggle),
.pinggo-storefront .woocommerce a.button:hover:not(.pinggo-wishlist-toggle),
.pinggo-storefront .woocommerce input.button:hover:not(.pinggo-wishlist-toggle) {
	background: #3551d9;
	border-color: #3551d9;
	color: #fff;
}

/* 2.8.20 body content links: underline + dark (barren links had no underline
 * and blended into plain text). Only real http(s) links — `#` toggles and
 * mailto are excluded. 2.8.25: underline same colour as text (was #999 grey
 * which read like a dotted/faint line and looked odd). */
html body.pinggo-storefront .pinggo-accordion__content a[href^="http"],
html body.pinggo-storefront .pinggo-article__content a[href^="http"],
html body.pinggo-storefront .pinggo-article__content a[href^="http"]:visited{
	color:#111;
	text-decoration:underline;
	text-underline-offset:3px;
	text-decoration-color:#111;
}
html body.pinggo-storefront .pinggo-accordion__content a[href^="http"]:hover,
html body.pinggo-storefront .pinggo-article__content a[href^="http"]:hover{
	text-decoration-color:#111;
}

/* 2.8.34: raise the back-to-top control out of the thumb swipe zone on mobile
 * (bottom:12px sat inside the gesture area and caused mis-taps). */
@media(max-width:767px){
	.pinggo-back-to-top{right:25px;bottom:14px}
	html body.pinggo-storefront button.pinggo-back-to-top{width:44px;height:44px;bottom:14px;right:25px}
}

/* 2.8.47: 图片禁拖拽（主题级）——draggable=false 的服务端/JS 双保险之外，
 * CSS 层兼容老 WebKit（Safari/旧 Chrome）无脚本场景；仅影响图片拖动，不影响点击。 */
img{
	-webkit-user-drag:none;
	-webkit-touch-callout:none;
}


/* 2.8.69: 全站排序下拉彻底去框/去阴影/去原生外观（含任何页面任何浏览器） */
html body .woocommerce-ordering select,
html body .pinggo-shop-ordering select{
	-webkit-appearance:none!important;
	appearance:none!important;
	border:0!important;
	border-radius:0!important;
	box-shadow:none!important;
	outline:0!important;
	color:#777;
	background:transparent url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23777' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='m6 9 6 6 6-6'/></svg>") no-repeat right 8px center/16px 16px!important;
}

/* 2.9.229（官方 Theme Handbook → Accessibility）：skip link。
   平常只在畫面上「視覺隱藏」但仍可被 Tab 聚焦（不可用 display:none，否則鍵盤到不了），
   聚焦時出現在左上角、白底黑框，讓鍵盤使用者一跳就避開頁首與主選單。 */
.pinggo-skip-link{
	position:absolute;
	left:-9999px;
	top:0;
	z-index:1000;
	padding:10px 16px;
	background:#fff;
	color:#111!important;
	border:2px solid #111;
	font-size:14px;
	font-weight:600;
	text-decoration:none;
}
.pinggo-skip-link:focus,.pinggo-skip-link:focus-visible{left:8px;top:8px;outline:2px solid #111;outline-offset:2px}
/* index.php（2.9.229 補的官方必備 fallback 模板）用到的通用項目清單樣式。 */
.pinggo-index__item{margin:0 0 42px;padding:0 0 34px;border-bottom:1px solid #ececec}
.pinggo-index__item:last-child{border-bottom:0}
.pinggo-page__content .pinggo-index__item h2{margin:0 0 12px;font-size:clamp(22px,2.4vw,30px)}
.pinggo-page__content .pinggo-index__item h2 a{color:inherit;text-decoration:none}
.pinggo-page__content .pinggo-index__item h2 a:hover{text-decoration:underline;text-underline-offset:4px}
.pinggo-page .pagination,.pinggo-page .woocommerce-pagination{margin:8px 0 0;text-align:center}
