/* Product catalog and configuration share a responsive canvas; saved width choices remain effective. */
.site-main>.shop-wrap[data-v-11adcea6]{width:calc(100% - 64px);max-width:min(var(--shop-content-max,100vw),1920px);margin-inline:auto;border:1px solid #e8edf5;border-radius:6px;overflow:clip}
.site-main:has(>.shop-wrap)>.youxia-breadcrumb{width:calc(100% - 64px);max-width:var(--youxia-shop-width,1920px);box-sizing:border-box;margin-inline:auto;padding-inline:0}
.shop-wrap .product-card-grid[data-v-d1bdc2b2]{grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:20px;padding:22px 24px 32px}
.shop-wrap .product-card[data-v-d1bdc2b2]{width:100%;max-width:none}
.shop-wrap .shop-body[data-v-11adcea6]{padding-right:24px}
@media(min-width:901px){.shop-wrap .shop-sidebar{flex-shrink:0}.shop-wrap .product-card-desc li{line-height:1.7}}
@media(min-width:1500px){.shop-wrap .product-card-grid[data-v-d1bdc2b2]{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}}
@media(max-width:1100px) and (min-width:901px){.site-main>.shop-wrap[data-v-11adcea6]{width:calc(100% - 32px)}.site-main:has(>.shop-wrap)>.youxia-breadcrumb{width:calc(100% - 32px)}.shop-wrap .shop-body[data-v-11adcea6]{padding-right:16px}.shop-wrap .product-card-grid[data-v-d1bdc2b2]{padding-inline:16px;gap:16px}}
@media(max-width:900px){.site-main>.shop-wrap[data-v-11adcea6]{width:100%;max-width:100%;margin-inline:0;border:0;border-radius:0;overflow:visible}.site-main:has(>.shop-wrap)>.youxia-breadcrumb{width:calc(100% - 32px);max-width:none}.shop-wrap .shop-body[data-v-11adcea6]{padding-right:0}.shop-wrap .product-card-grid[data-v-d1bdc2b2]{grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));padding:16px;gap:16px}}
@media(max-width:520px){.shop-wrap .product-card-grid[data-v-d1bdc2b2]{grid-template-columns:minmax(0,1fr);padding:12px;gap:14px}}
@media(prefers-reduced-motion:reduce){.shop-wrap{transition:none!important}}

.site-main>.pd-page[data-v-292b3a58]{width:calc(100% - 64px);max-width:1920px;margin-inline:auto}.pd-shell[data-v-292b3a58]{max-width:min(var(--pd-content-max,100vw),1920px)}
.site-main:has(>.pd-page)>.youxia-breadcrumb{width:calc(100% - 64px);max-width:var(--youxia-shop-width,1920px);box-sizing:border-box;margin-inline:auto;padding-inline:0}
@media(max-width:1100px) and (min-width:901px){.site-main>.pd-page[data-v-292b3a58]{width:calc(100% - 32px)}.site-main:has(>.pd-page)>.youxia-breadcrumb{width:calc(100% - 32px)}}
@media(max-width:900px){.site-main>.pd-page[data-v-292b3a58]{width:100%;max-width:100%;margin:0}.site-main:has(>.pd-page)>.youxia-breadcrumb{width:calc(100% - 32px);max-width:none}}

/* Configuration controls must fit their flex column, including split-screen tablets. */
.shop-wrap .config-area .opt-row,.pd-page .spec-row .opt-wrap{flex:1 1 0%;min-width:0;max-width:100%}
.shop-wrap .config-area .opt-btn,.pd-page .spec-row .opt-btn{box-sizing:border-box;min-width:0;max-width:100%;height:auto;min-height:34px;padding-block:7px;white-space:normal;overflow-wrap:anywhere;line-height:1.5;text-align:center;justify-content:center}
.shop-wrap .config-area .spec-row,.pd-page .spec-list .spec-row{min-width:0;align-items:flex-start}
.shop-wrap .config-area .spec-label,.pd-page .spec-list .spec-label{overflow-wrap:anywhere;padding-top:8px}
.shop-wrap .config-area .os-cards,.pd-page .pd-main .os-cards{min-width:0;max-width:100%}
.shop-wrap .config-area .os-card,.pd-page .pd-main .os-card{box-sizing:border-box;min-width:0;max-width:100%}
.shop-wrap .config-area .os-card-head,.pd-page .pd-main .os-card-head{min-width:0;max-width:100%}
.shop-wrap .config-area .os-label-name,.pd-page .pd-main .os-label-name{min-width:0;overflow-wrap:anywhere}
.shop-wrap .shop-cost .cost-item>span:last-child,.pd-page .cost-item>span:last-child{min-width:0;overflow-wrap:anywhere}
.shop-wrap .desktop-machine-table .machine-spec-cell--highlight{white-space:normal;overflow-wrap:anywhere;line-height:1.5;padding-block:8px}
/* Keep the full catalog, but stack checkout below configuration before four columns become cramped. */
@media(min-width:901px) and (max-width:1279px){
 .shop-wrap .shop-body{flex-direction:column;align-items:stretch;padding-right:0}
 .shop-wrap .shop-body>.shop-main{width:100%;flex:0 0 auto;min-width:0}
 .shop-wrap .shop-body>.shop-cost{box-sizing:border-box;width:100%;max-width:100%;position:static;height:auto;max-height:none;overflow:visible;border-left:0;border-top:1px solid #e8edf5}
 .shop-wrap .shop-cost .cost-scroll{flex:none;overflow:visible;padding:20px 20px 0}
 .shop-wrap .shop-cost .cost-footer{padding:16px 20px 20px}
 .pd-page .pd-shell{min-width:0}
 .pd-page .spec-row .opt-wrap{flex-basis:0}
}
@media(max-width:900px){
 .shop-wrap .mobile-config-select-row,.pd-page .mobile-config-select-row{height:auto;min-height:48px;padding-block:10px;align-items:flex-start}
 .shop-wrap .mobile-config-select-value,.pd-page .mobile-config-select-value{white-space:normal;overflow-wrap:anywhere;line-height:1.6;overflow:visible}
 .shop-wrap .mobile-config-select-value svg,.pd-page .mobile-config-select-value svg{margin-top:3px;flex-shrink:0}
 .shop-wrap .mobile-picker-trigger,.pd-page .mobile-picker-trigger{min-width:0;max-width:100%}
 .shop-wrap .config-area .os-card,.pd-page .pd-main .os-card{width:min(170px,100%)}
}

@media(max-width:360px){
 .site-header .header-bar .logo{width:112px;min-width:0;max-width:112px;flex:0 1 112px}
 .site-header .header-bar .logo img{width:100%;max-width:100%;height:auto;object-fit:contain}
}

.pd-page .pd-hero-copy{min-width:0;max-width:100%}
.pd-page .pd-hero-tags{min-width:0;max-width:100%;flex-wrap:wrap}
.pd-page .pd-hero-tag{box-sizing:border-box;max-width:100%;white-space:normal;overflow-wrap:anywhere;line-height:1.6}

.pd-page .pd-main .pd-hero-tag{white-space:normal;overflow-wrap:anywhere;max-width:100%;line-height:1.6;padding-block:5px}
.pd-page .pd-main .pd-topbar{flex-wrap:wrap;gap:10px}
.pd-page .pd-main .pd-topbar-actions{min-width:0;max-width:100%;flex-wrap:wrap}
@media(max-width:1279px){
 .pd-page .pd-main .pd-body{grid-template-columns:minmax(0,1fr)}
 .pd-page .pd-main .pd-hero{flex-direction:column;align-items:stretch;gap:12px}
 .pd-page .pd-main .pd-hero-tags{justify-content:flex-start;min-width:0;max-width:100%}
}
