/* Shared, lightweight interaction layer. Server-rendered content stays visible. */
.store-body{--bw-motion-ease:cubic-bezier(.2,.75,.2,1);--bw-motion-fast:180ms;--bw-motion-card:240ms}
.store-body #main :is(.product-card,.category-directory-card,.category-collection--visual>.panel,.category-branch-card,.brand-directory-card,.application-tile,.application-card,.article-card,.ref-help-card,.cx-metric){transition:transform var(--bw-motion-card) var(--bw-motion-ease),box-shadow var(--bw-motion-card) ease,border-color var(--bw-motion-fast) ease}
.store-body #main :is(.btn,button,.customer-nav a,.cx-nav a,.brand-category-tabs a,.category-image-tabs a){transition:background-color var(--bw-motion-fast) ease,border-color var(--bw-motion-fast) ease,color var(--bw-motion-fast) ease,box-shadow var(--bw-motion-fast) ease,transform var(--bw-motion-fast) var(--bw-motion-ease)}
.store-body #main :is(.product-visual img,.category-directory-card img,.application-card>img,.article-card>img){transition:transform 320ms var(--bw-motion-ease)}
@media(hover:hover) and (pointer:fine){
 .store-body #main :is(.product-card,.category-directory-card,.category-collection--visual>.panel,.category-branch-card,.brand-directory-card,.application-tile,.application-card,.article-card,.ref-help-card):hover{transform:translateY(-4px);box-shadow:0 12px 30px -15px #16467842;border-color:#aacdf1}
 .store-body #main :is(.product-card,.category-directory-card,.application-card,.article-card):hover :is(.product-visual img){transform:scale(1.025)}
 .store-body #main .btn:hover{box-shadow:0 6px 16px -8px #076bea85}
}
.store-body #main :is(.btn,button):active:not(:disabled){transform:translateY(1px)}
.store-body #main :is(.btn,button,a,input,select,textarea,summary):focus-visible{outline:3px solid #127df080;outline-offset:3px}
.store-body .bw-request-progress{position:fixed;z-index:250;inset:0 0 auto;height:3px;overflow:hidden;background:#d9ecff;pointer-events:none;contain:strict}
.store-body .bw-request-progress[hidden]{display:none}
.store-body .bw-request-progress::after{content:'';display:block;width:38%;height:100%;border-radius:2px;background:#087aff;animation:bw-request-line 1.1s ease-in-out infinite}
@keyframes bw-request-line{from{transform:translateX(-105%)}to{transform:translateX(365%)}}
.store-body :is(.btn,button)[aria-busy=true]{position:relative;cursor:progress;opacity:.82;transform:none!important}
.store-body :is(.btn,button)[data-bw-fixed-size][aria-busy=true]{box-sizing:border-box;padding-inline:26px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.store-body :is(.btn,button)[aria-busy=true]::after{position:absolute;width:13px;height:13px;left:8px;top:50%;margin:0;margin-top:-7px;border-width:2px;animation:bw-busy-spin .7s linear infinite}
.store-body :is(.btn,button)[aria-busy=true]::before{display:none}
@keyframes bw-busy-spin{to{transform:rotate(360deg)}}
.store-body [data-loading-status]{margin:10px 0 0;color:#385d87;font-size:12px;line-height:1.5}
.store-body [data-page-tools] [data-more-status]{min-height:18px;font-size:12px;color:#54708e}
.store-body .bw-list-skeleton{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:16px 0;pointer-events:none}
.store-body .bw-skeleton-card{min-width:0;padding:14px;border:1px solid #e2eaf4;border-radius:16px;background:white;overflow:hidden}
.store-body .bw-skeleton-block{position:relative;display:block;overflow:hidden;height:12px;margin-top:12px;background:#edf3f9;border-radius:6px}
.store-body .bw-skeleton-block::after{content:'';position:absolute;inset:0;background:linear-gradient(100deg,transparent 20%,#ffffffb3 50%,transparent 80%);transform:translateX(-100%);animation:bw-skeleton-shine 1.35s ease-in-out infinite}
.store-body .bw-skeleton-image{aspect-ratio:1;height:auto;margin-top:0;border-radius:10px}
.store-body .bw-skeleton-title{width:85%;height:14px}.store-body .bw-skeleton-meta{width:60%;height:10px}.store-body .bw-skeleton-action{height:38px;margin-top:20px}
@keyframes bw-skeleton-shine{to{transform:translateX(100%)}}
.store-body .cart-feedback:not([hidden]){animation:bw-feedback-in 220ms var(--bw-motion-ease) both}
@keyframes bw-feedback-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
.store-body dialog[open]:is(.request-feedback-dialog,.product-filter-dialog,.product-review-dialog,.cx-confirm-dialog){animation:bw-dialog-in 200ms var(--bw-motion-ease)}
@keyframes bw-dialog-in{from{opacity:.65;transform:translateY(8px) scale(.99)}to{opacity:1;transform:none}}
@media(max-width:900px){.store-body .bw-list-skeleton{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}}
@media(max-width:600px){.store-body .bw-list-skeleton{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.store-body .bw-skeleton-card{padding:10px;border-radius:12px}.store-body .bw-skeleton-card:nth-child(n+3){display:none}}
@media(prefers-reduced-motion:reduce){
 .store-body #main :is(.product-card,.category-directory-card,.category-collection--visual>.panel,.category-branch-card,.brand-directory-card,.application-tile,.application-card,.article-card,.ref-help-card,.cx-metric,.btn,button,.product-visual img){transition:none!important;transform:none!important}
 .store-body .bw-request-progress::after,.store-body .bw-skeleton-block::after,.store-body :is(.btn,button)[aria-busy=true]::after,.store-body .cart-feedback:not([hidden]),.store-body dialog[open]{animation:none!important}
 .store-body .bw-request-progress::after{width:100%;transform:none}.store-body .bw-skeleton-block::after{display:none}
}
