/* Shared, server-rendered product switcher. Only navigation is styled here. */
site-product-menu{display:inline-flex;width:44px;height:44px;flex:0 0 44px;align-items:center;justify-content:center;color:#1f3a2e;font-family:system-ui,-apple-system,"PingFang TC",sans-serif}
site-product-menu *{box-sizing:border-box}
site-product-menu button,site-product-menu a{-webkit-tap-highlight-color:transparent}
site-product-menu button{font:inherit;cursor:pointer;border:0;color:inherit;box-shadow:none;transform:none}
site-product-menu .pm-trigger,site-product-menu .pm-close{width:44px;height:44px;flex:0 0 44px;border-radius:50%;padding:10px;background:transparent;display:grid;place-items:center}
site-product-menu .pm-trigger:hover,site-product-menu .pm-close:hover{background:#e9eee7}
site-product-menu svg{display:block;width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
site-product-menu button:focus-visible,site-product-menu a:focus-visible{outline:2px solid #9b7a45;outline-offset:3px}
site-product-menu .pm-panel{position:fixed;inset:0 auto 0 0;margin:0;width:min(360px,100vw);height:100dvh;max-width:100vw;max-height:100dvh;border:0;border-radius:0;padding:0;background:#fcfaf5;color:#1f3a2e;box-shadow:12px 0 48px #12291e26;overscroll-behavior:contain;line-height:1.5;text-align:left;letter-spacing:normal}
site-product-menu .pm-panel::backdrop{background:#10271f80}
site-product-menu .pm-panel[open]{display:flex;flex-direction:column;animation:pm-enter .18s ease-out}
site-product-menu .pm-top{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px;border-bottom:1px solid #e4e6dd;flex-shrink:0}
site-product-menu .pm-title{font-size:16px;font-weight:700;letter-spacing:.04em}
site-product-menu .pm-content{padding:26px 24px;overflow-y:auto;flex:1}
site-product-menu .pm-products{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}
site-product-menu a{text-decoration:none;color:inherit}
site-product-menu .pm-product{display:grid;grid-template-columns:minmax(0,1fr) 96px;align-items:center;gap:12px;width:100%;height:126px;min-width:0;border:1px solid #dfe4d9;border-radius:14px;padding:14px 14px 14px 18px;background:#fff;text-decoration:none;overflow:hidden}
site-product-menu a.pm-product:hover{border-color:#718971}
site-product-menu .pm-product[aria-current]{background:#edf2e9;border-color:#718971}
site-product-menu .pm-product strong{display:block;min-width:0;font:700 16px/1.6 system-ui,-apple-system,"PingFang TC",sans-serif;color:#1f3a2e;letter-spacing:normal;text-wrap:balance}
site-product-menu .pm-copy{display:block;min-width:0}
site-product-menu .pm-benefits{display:block;margin-top:6px;color:#5b7061;font:400 12px/1.6 system-ui,-apple-system,"PingFang TC",sans-serif;letter-spacing:normal;white-space:nowrap}
site-product-menu .pm-benefit{display:inline-block;white-space:nowrap}
site-product-menu .pm-product-photo{display:block;width:96px;height:96px;max-width:100%;object-fit:contain;border-radius:0;background:transparent}
.nav-inner>site-product-menu+.logo,.qnav-in>site-product-menu+.qlogo,.header-inner>site-product-menu+.brand{margin-right:auto}
html[data-product-menu-open]{overflow:hidden;scrollbar-gutter:stable}
@keyframes pm-enter{from{transform:translateX(-30px);opacity:0}to{transform:translateX(0);opacity:1}}
@media(prefers-reduced-motion:reduce){site-product-menu .pm-panel[open]{animation:none}}
@media(max-width:760px){
 .nav-inner:has(>site-product-menu){gap:12px;padding-inline:20px}
 .nav-inner:has(>site-product-menu) .logo-main{font-size:17px;letter-spacing:1.2px}
 .qnav-in:has(>site-product-menu){gap:12px}
 .header:has(site-product-menu) .header-inner{gap:8px!important}
 .site-header:has(site-product-menu) .header-inner{gap:10px}
 .site-header:has(site-product-menu) .site-nav a:not(.nav-shop){display:none}
 .site-header:has(site-product-menu) .brand img{width:36px;height:36px}
 .site-header:has(site-product-menu) .brand b{font-size:20px}
}
@media(max-width:380px){
 .nav-inner:has(>site-product-menu){gap:8px;padding-inline:16px}
 .nav-inner:has(>site-product-menu) .logo{gap:6px}
 .nav-inner:has(>site-product-menu) .logo-main{font-size:14px;letter-spacing:.4px}
 .nav-inner:has(>site-product-menu) .logo-sub{letter-spacing:.4px;font-size:8px}
 .nav-inner:has(>site-product-menu) .logo-mark{width:28px;height:28px}
 .nav-inner:has(>site-product-menu) .nav-cta{padding:10px 12px;font-size:12px;letter-spacing:.5px}
 .qnav-in:has(>site-product-menu){padding-inline:16px;gap:8px}
 .qnav-in:has(>site-product-menu) .qlogo-txt{letter-spacing:0;font-size:12px}
 .site-header:has(site-product-menu) .brand b{font-size:18px}
 .site-header:has(site-product-menu) .nav-shop{padding:8px}
}

@media(max-width:359px){
 site-product-menu .pm-product{grid-template-columns:minmax(0,1fr) 56px;gap:8px;padding-inline:12px 8px}
 site-product-menu .pm-product-photo{width:56px;height:72px}
}
