/* Reserve dimensions before async content arrives. Existing theme remains in charge. */
#siteLanguageSwitcher { width: 96px; min-width: 96px; flex: 0 0 96px; }
#siteLanguageSwitcher .gtranslate_inline_wrapper { width: 100%; }
#siteLanguageSwitcher .gt_float_switcher { width: 100%; box-sizing: border-box; }
#siteLanguageSwitcher .gt_float_switcher img { height: 21px !important; object-fit: contain; }
#pills-tab-1 img { width: 25px; height: 25px; object-fit: contain; }
#showProduct { min-height: 65vh; position: relative; }
#showProduct[aria-busy="true"]::after { content: "正在更新商品…"; position: absolute; top: 0; right: 0; padding: .35rem .65rem; border-radius: .4rem; background: #eef4ff; color: #254b8d; font-size: 12px; pointer-events: none; }
#showProduct .catalog-loading { min-height: 65vh; padding: 2rem; text-align: center; }
#showProduct .table-color-heading img { width: 30px; height: 30px; object-fit: contain; }
#showProduct .thumbnail-mobile { width: 32px; height: 24px; overflow: hidden; }
#showProduct .thumbnail-mobile img { width: 100%; height: 100%; object-fit: cover; }
@media (max-width: 600px) {
 #siteLanguageSwitcher { width: 48px; min-width: 48px; flex-basis: 48px; }
 #siteLanguageSwitcher .gt_float_switcher img { height: 19px !important; }
 #pills-tab-1 img { width: 21px; height: 21px; }
 #showProduct .hidemobile { display: none; }
}

/* Full catalog: avoid thousands of simultaneous color/border transitions.
   Keep every product in the DOM and retain normal continuous scrolling. */
#showProduct *,
#showProduct *::before,
#showProduct *::after { transition: none !important; }
