*{box-sizing:border-box}
body{margin:0;background:#f5f6f8;color:#202124;font-family:Arial,"Noto Sans",sans-serif}
.top{height:66px;background:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:10;box-shadow:0 1px 8px #00000012}
.brand{display:flex;align-items:baseline;gap:10px}.brand strong{font-size:25px;letter-spacing:.3px}.brand span{font-size:14px;color:#666}
.lang{display:flex;align-items:center;gap:6px}.lang button{border:1px solid #ddd;background:#fff;border-radius:8px;padding:7px 11px;cursor:pointer;font-size:14px}.lang button:hover{border-color:#1677ff}.lang button.active{background:#1677ff;color:#fff;border-color:#1677ff}
.hero{background:#fff;border-bottom:1px solid #eee}.heroInner{max-width:1180px;margin:auto;text-align:center;padding:42px 18px 36px}
.eyebrow{font-weight:800;letter-spacing:2px;font-size:14px;color:#777}.hero h1{margin:7px 0 5px;font-size:32px}.hero h2{margin:0;color:#666;font-size:18px;font-weight:500}
.searchBox{max-width:720px;margin:25px auto 0;border:1px solid #ddd;border-radius:13px;height:52px;display:flex;align-items:center;padding:0 16px;background:#fff}.searchBox span{font-size:26px;color:#777}.searchBox input{border:0;outline:0;width:100%;font-size:16px;padding-left:10px}
main{max-width:1180px;margin:auto;padding:26px 18px 60px}.sectionTitle,.sectionHead{display:flex;align-items:end;justify-content:space-between;gap:10px}.sectionTitle h2,.sectionHead h2{margin:0 0 4px}.sectionTitle span,.sectionHead span{color:#777}.categories{display:flex;flex-wrap:wrap;gap:9px;margin:16px 0 32px}.cat{border:1px solid #ddd;background:#fff;border-radius:10px;padding:10px 14px;cursor:pointer}.cat.active{border-color:#222;font-weight:700}.subcats{display:flex;flex-wrap:wrap;gap:7px;width:100%;padding:0 0 4px 4px}.subcat{border:1px dashed #ccc;background:#fafafa;border-radius:8px;padding:8px 11px;cursor:pointer}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(205px,1fr));gap:16px;margin-top:17px}.card{background:#fff;border-radius:13px;overflow:hidden;box-shadow:0 1px 6px #0000000c;cursor:pointer;transition:transform .12s}.card:hover{transform:translateY(-2px)}.card img{width:100%;aspect-ratio:1;object-fit:cover;background:#eee}.body{padding:13px}.name{font-weight:750;font-size:16px}.kmName{font-size:13px;color:#777;margin-top:4px}.meta{font-size:13px;color:#666;margin-top:8px;line-height:1.6}.price{font-size:18px;font-weight:800;margin-top:7px}.stock{font-size:13px;color:#666;margin-top:7px}
.overlay{position:fixed;inset:0;background:#0008;z-index:70;display:flex;align-items:center;justify-content:center;padding:18px}.hidden{display:none}.detail{position:relative;background:#fff;border-radius:16px;max-width:920px;width:100%;max-height:92vh;overflow:auto;padding:22px}.close{position:absolute;right:13px;top:8px;border:0;background:#fff;font-size:30px;cursor:pointer}.detailGrid{display:grid;grid-template-columns:minmax(280px,1fr) minmax(280px,1fr);gap:26px}.detailImage img{width:100%;border-radius:12px;background:#eee}.code{color:#777;font-size:13px}.detail h2{margin:8px 0 3px}.info{line-height:1.9;margin-top:15px}.retail{font-size:25px;font-weight:800;margin:15px 0}.tier{display:flex;justify-content:space-between;border-bottom:1px solid #eee;padding:9px 0}
@media(max-width:650px){.top{padding:0 14px}.hero h1{font-size:25px}.detailGrid{grid-template-columns:1fr}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.card img{aspect-ratio:1}.body{padding:10px}.name{font-size:14px}}

.loginBox{max-width:420px;padding:28px}.loginBox input{display:block;width:100%;margin:10px 0;padding:12px;border:1px solid #ddd;border-radius:8px;font-size:16px}.loginBtn{width:100%;background:#1677ff;color:#fff;border:0;border-radius:8px;padding:12px;font-size:16px}.small{font-size:13px;color:#777}.memberBadge{display:inline-block;padding:4px 8px;border-radius:999px;background:#eaf3ff;color:#1677ff;font-size:12px;margin-right:6px}
.socialLoginRow{display:flex;align-items:center;gap:10px;margin-top:10px}.socialLoginRow>*{flex:1;min-width:0}.telegramLoginWidget{display:flex;align-items:center;justify-content:center;min-height:44px;overflow:hidden}.telegramLoginWidget iframe{display:block;width:100%!important;max-width:100%!important;border:0}.facebookLoginBtn{height:44px;margin:0;padding:10px 8px;white-space:nowrap;font-size:14px}

/* V1.7.1 compact category accordion */
.catGroup{margin-bottom:6px}.catRow{display:flex;align-items:center;gap:4px}.catToggle{width:28px;height:32px;padding:0;border:1px solid #ddd;border-radius:8px;background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center}.catArrow{font-size:22px;line-height:1;display:inline-block;transform:rotate(0deg);transition:transform .15s}.catArrow.open{transform:rotate(90deg)}.subcats{display:flex;flex-wrap:wrap;gap:6px;margin:5px 0 7px 10px;padding-left:10px;border-left:2px solid #eee}.catRow>.cat{flex:0 1 auto}


/* V1.7.2 Mobile First */
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;text-size-adjust:100%;scrollbar-color:#b8c7d8 transparent}body{overflow-x:hidden;-webkit-overflow-scrolling:touch}.card img{display:block}.loadMore{text-align:center;padding:18px;color:#777;font-size:13px}.loadMoreBtn{border:1px solid #1677ff;background:#fff;color:#1677ff;border-radius:9px;padding:10px 16px;font:inherit;cursor:pointer}.loadMoreBtn:hover{background:#eef6ff}.scrollSentinel{height:1px}.catGroup{min-width:0}.catRow{max-width:100%}
button,input,select,textarea{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button,input,select,textarea{font:inherit}input,select,textarea{appearance:none;-webkit-appearance:none}select{background-image:linear-gradient(45deg,transparent 50%,#60758b 50%),linear-gradient(135deg,#60758b 50%,transparent 50%);background-position:calc(100% - 13px) 50%,calc(100% - 8px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:25px}
@media(max-width:650px){
  body{padding-bottom:calc(54px + env(safe-area-inset-bottom,0px))}
  .top{height:58px;padding:0 10px;gap:8px}.brand strong{font-size:20px}.brand span{display:none}.lang{gap:3px}.lang button{padding:6px 7px;font-size:12px;border-radius:7px}.lang #memberState{display:none}.lang button:first-of-type{font-size:11px;padding:6px 6px}
  .heroInner{padding:24px 12px 20px}.eyebrow{font-size:11px}.hero h1{font-size:23px;line-height:1.25;margin:6px 0}.hero h2{font-size:14px;line-height:1.4}.searchBox{height:46px;margin:17px auto 0;border-radius:12px;padding:0 12px}.searchBox span{font-size:22px}.searchBox input{font-size:15px}
  main{padding:16px 10px 45px}.sectionTitle,.sectionHead{align-items:center}.sectionTitle h2,.sectionHead h2{font-size:20px}.sectionTitle span,.sectionHead span{font-size:12px}.categories{gap:7px;margin:12px 0 24px}.cat{padding:8px 10px;border-radius:9px;font-size:13px}.catToggle{width:28px;height:31px}.subcats{gap:6px;margin-left:6px;padding-left:8px}.subcat{padding:7px 9px;font-size:12px}
  .grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px}.card{border-radius:10px}.card img{aspect-ratio:1/1}.body{padding:9px}.name{font-size:14px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.kmName{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.meta{font-size:11px;line-height:1.45;margin-top:6px}.price{font-size:17px;margin-top:6px}.stock{font-size:11px;margin-top:5px}.small{font-size:10px}
  .overlay{padding:8px;align-items:flex-end}.detail{border-radius:16px 16px 0 0;max-height:92vh;padding:16px}.detailGrid{grid-template-columns:1fr;gap:14px}.detailImage img{max-height:48vh;object-fit:contain}.detail h2{font-size:20px}.retail{font-size:22px;margin:10px 0}.info{font-size:13px;line-height:1.7}.tier{font-size:13px;padding:8px 0}.close{right:9px;top:5px}
  .loginBox{max-width:none;width:100%;border-radius:16px 16px 0 0;padding:22px 18px}.loginBox input{font-size:16px}
}

/* Admin category hierarchy: one full-width primary category, four secondary cards per row. */
.categoryListHead{display:grid;grid-template-columns:1.1fr 1.5fr 1.4fr 1.8fr;gap:12px;padding:10px 14px;background:#eef6ff;color:#3d6288;border:1px solid #cfe3f7;border-radius:10px 10px 0 0;font-size:13px;font-weight:700}
.categoryTreeList{display:flex;flex-direction:column;gap:12px;padding:12px 0}
.catGroup{border:1px solid #d8e7f5;border-radius:12px;background:#f8fbff;overflow:hidden;box-shadow:0 2px 8px rgba(47,104,157,.06)}
.catGroupTitle{padding:10px;background:#eaf4ff;border-bottom:1px solid #d8e7f5}
.catSubgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:10px;background:#fff}
.catCard{min-width:0;border:1px solid #dbe6f0;border-radius:9px;background:#fff;padding:9px 10px;box-sizing:border-box}
.catGroupTitle .catCard{border:0;background:transparent;padding:0}
.catCardMain{display:flex;align-items:center;gap:6px;min-width:0;white-space:nowrap}
.catCardMain b{overflow:hidden;text-overflow:ellipsis}
.catFolder{font-size:16px}.catIdText{margin-left:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#7890a7}
.catCardNames{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:7px 0;color:#526b84;font-size:12px;white-space:nowrap;overflow:hidden}
.catCardNames span{overflow:hidden;text-overflow:ellipsis}.catCardFoot{display:flex;align-items:center;justify-content:space-between;gap:6px;font-size:12px;color:#6d8298}.catActions{display:flex;gap:4px;flex-wrap:wrap;justify-content:flex-end}.catActions button{padding:4px 7px;font-size:12px}
.catRowDisabled{opacity:.62}
@media(max-width:1000px){.catSubgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.categoryListHead{grid-template-columns:1fr 1fr 1fr 1fr}}
@media(max-width:650px){.catSubgrid{grid-template-columns:1fr}.categoryListHead{display:none}.catCardFoot{align-items:flex-start;flex-direction:column}.catActions{justify-content:flex-start}}

/* V9.43 consumer polish: clearer hierarchy and touch feedback */
.homeShowcase,.categorySection,.productSection{scroll-margin-top:132px}
.sectionTitle h2,.sectionHead h2{letter-spacing:.1px;color:var(--dt-ink)}
.showcaseMore button,.cat,.subcat,.sideCat,.addCartBtn,.copySku,.packageBtn{transition:background-color .16s ease,border-color .16s ease,color .16s ease,transform .16s ease,box-shadow .16s ease}
.cat:active,.subcat:active,.sideCat:active,.addCartBtn:active,.copySku:active,.packageBtn:active,.quickLinks button:active{transform:scale(.98)}
.card .body{background:linear-gradient(180deg,#fff 0%,#fcfdff 100%)}
.card .name{color:#17283b}
.card .meta{color:#718096}
.card .price{color:var(--dt-navy)}
.stock{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border-radius:999px;background:#f2f7fb;color:#5f7388}
.searchSubmit,.stickySubmit,.loginBtn{box-shadow:0 5px 12px #123f6d22}
.searchSubmit:active,.stickySubmit:active,.loginBtn:active{transform:translateY(1px);box-shadow:0 2px 7px #123f6d22}
@media(max-width:650px){
  .homeShowcase{padding-top:20px}
  .sectionTitle h2,.sectionHead h2{font-size:19px}
  .card .body{padding:10px 9px}
  .stock{font-size:10px;padding:3px 7px}
  .customerServiceBtn{box-shadow:0 8px 20px #123f6d55}
}

/* "My" area layout.  It is intentionally a presentational shell for future
   distribution and SMS features, while live order/address/support actions work now. */
.memberHub{display:none}.memberHub:not(.hidden){display:block;position:fixed;inset:0;z-index:90;background:#f5f7fb;overflow:auto}.memberHubPage{min-height:100%;padding-bottom:76px}.memberHero{position:relative;min-height:184px;padding:32px 22px 18px;background:linear-gradient(135deg,#123f6d,#1677ff);color:#fff;display:grid;grid-template-columns:58px 1fr;align-content:start;gap:12px}.memberAvatar{width:56px;height:56px;border:2px solid #fff;border-radius:50%;display:grid;place-items:center;background:#eaf4ff;color:#123f6d;font-size:27px}.memberHero small{display:block;opacity:.82;margin-top:6px}.memberHubClose{position:absolute;right:13px;top:10px;border:0;background:#ffffff22;color:#fff;border-radius:9px;font-size:29px;line-height:32px;width:38px;height:38px}.memberStats{grid-column:1/-1;display:flex;gap:0;margin-top:12px}.memberStats span{flex:1;text-align:center;border-right:1px solid #ffffff55;font-size:13px}.memberStats span:last-child{border:0}.memberStats b{display:block;font-size:23px;margin-bottom:3px}.memberOrderCard{margin:-22px 13px 16px;position:relative;border-radius:15px;padding:15px 10px;background:#fff;box-shadow:0 7px 22px #123f6d18}.memberSectionTitle{padding:0 5px 11px;font-size:17px;font-weight:800}.memberSectionTitle button{float:right;border:0;background:transparent;color:#718096;font:13px inherit}.memberOrderGrid,.memberMenu{display:grid;grid-template-columns:repeat(5,1fr)}.memberOrderGrid button,.memberMenu button{border:0;background:transparent;color:#3e5063;padding:8px 2px;font:12px inherit;display:flex;flex-direction:column;gap:6px;align-items:center}.memberOrderGrid i,.memberMenu i{font-style:normal;font-size:23px;line-height:26px;color:#123f6d}.memberMenuTitle{margin:12px 18px 7px;font-size:18px}.memberMenu{margin:0 13px;border-radius:14px;background:#fff;padding:11px 4px;grid-template-columns:repeat(4,1fr);box-shadow:0 2px 10px #123f6d0b}.memberMenu button{min-height:76px;font-size:12px}.memberMenu i{font-size:25px;color:#1677ff}

/* Mobile purchase flow: persistent access to home, featured goods, category
   browsing and cart without sacrificing content height. */
#mobileBottomNav{display:none}
@media(max-width:650px){
  body{padding-bottom:calc(70px + env(safe-area-inset-bottom,0px))}
  #mobileBottomNav{position:fixed;display:flex;align-items:stretch;justify-content:space-around;left:0;right:0;bottom:0;z-index:60;height:62px;padding-bottom:env(safe-area-inset-bottom,0px);background:rgba(255,255,255,.97);border-top:1px solid #dce7f1;box-shadow:0 -4px 17px #123f6d18}
  #mobileBottomNav button{flex:1;border:0;background:transparent;color:#52677d;font:12px inherit;display:flex;gap:2px;flex-direction:column;align-items:center;justify-content:center;cursor:pointer}
  #mobileBottomNav button span{font-size:20px;line-height:20px;color:#123f6d}
  #mobileBottomNav button:active{background:#eaf4ff;color:#1677ff}
  #mobileBottomNav button.active{color:#1677ff;font-weight:700}
  #mobileBottomNav button.active span{color:#1677ff}
}
@supports (height:100svh){@media(max-width:650px){.overlay .detail{max-height:calc(100svh - 8px)}#login .loginBox{max-height:calc(100svh - env(safe-area-inset-top,0px))}}}
@supports (height:100dvh){@media(max-width:650px){.overlay .detail{max-height:calc(100dvh - 8px)}#login .loginBox{max-height:calc(100dvh - env(safe-area-inset-top,0px))}}}
@media(min-width:651px){.grid{grid-template-columns:repeat(4,minmax(0,1fr));}}

/* V1.7.3 Mobile First refinement */
@media(max-width:650px){
.top{min-height:56px;height:auto;padding:7px 8px;align-items:center}.brand{min-width:0;flex:1;overflow:hidden}.brand strong{font-size:20px;white-space:nowrap}.brand span{display:none!important}.lang{flex:0 0 auto;gap:3px}.lang #memberState{display:none!important}.lang #memberBtn{font-size:0;padding:7px 8px;min-width:38px}.lang #memberBtn:after{content:'会员';font-size:12px}.lang button{min-height:34px;padding:6px 8px;font-size:12px;white-space:nowrap}
.heroInner{padding:20px 12px 18px}.hero h1{font-size:22px;line-height:1.35;word-break:break-word}.hero h2{font-size:13px}.searchBox{margin-top:14px}
main{padding:14px 10px 42px}.categorySection{margin-bottom:22px}.sectionTitle{display:block}.sectionTitle h2{font-size:19px;margin-bottom:4px}.sectionTitle span{font-size:12px}.categories{display:block;margin:10px 0 22px}.categories>.cat{display:block;width:100%;text-align:left;margin-bottom:7px}.categories>.catGroup{display:block;width:100%;margin:0 0 7px!important}.categories .catRow{width:100%;display:flex;align-items:center;gap:6px}.categories .catRow>.cat{flex:1 1 auto;width:auto;min-width:0;text-align:left;margin:0;min-height:42px}.categories .catToggle{flex:0 0 42px;width:42px;height:42px}.categories .subcats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:6px 0 8px 0;padding:7px 0 2px 10px;border-left:2px solid #eee}.categories .subcat{width:100%;min-height:38px;padding:7px 8px;font-size:12px;line-height:1.25}.sectionHead{margin-top:4px}.sectionHead h2{font-size:19px}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.card img{aspect-ratio:1/1;object-fit:cover}
}

.cartToast{position:fixed;left:50%;bottom:calc(78px + env(safe-area-inset-bottom,0px));z-index:200;transform:translate(-50%,14px);background:#123f6d;color:#fff;border-radius:999px;padding:10px 16px;font-size:14px;box-shadow:0 8px 22px #123f6d55;opacity:0;pointer-events:none;transition:opacity .18s,transform .18s}.cartToast.show{opacity:1;transform:translate(-50%,0)}
.installPrompt{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);z-index:260;display:flex;align-items:center;gap:14px;width:min(88vw,430px);padding:22px 20px;background:#fff;border:2px solid #b9d8f5;border-radius:18px;box-shadow:0 12px 36px #123f6d55;color:#123f6d;cursor:pointer}.installPrompt div:not(.installPromptIcon){flex:1;display:flex;flex-direction:column;gap:5px}.installPromptIcon{width:58px;height:58px;display:grid;place-items:center;flex:none;border-radius:16px;background:#1677ff;color:#fff;font-size:42px;font-weight:300;line-height:1}.installPrompt b{font-size:18px}.installPrompt small{font-size:14px;color:#55708a}.installPrompt button{border:0;border-radius:8px;cursor:pointer}.installPromptAction{background:#1677ff;color:#fff;padding:10px 16px;font-size:16px}.installPromptClose{align-self:flex-start;background:transparent;color:#7890a6;font-size:28px;line-height:1;padding:0 2px}
#cartOverlay{z-index:100}
@media(max-width:650px){body.cartOpen #mobileBottomNav,body.cartOpen .customerServiceBtn{display:none!important}}
@media(max-width:360px){.lang #memberBtn{display:none}.lang button{padding:6px}.brand strong{font-size:19px}.grid{gap:6px}.body{padding:8px}.name{font-size:13px}}

/* V1.8 Mobile category density */
@media(max-width:650px){
  .categories{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:10px 0 22px;align-items:start}
  .categories>.cat{display:block;width:100%;text-align:left;margin:0;min-height:42px}
  .categories>.cat:first-child{grid-column:1 / -1}
  .categories>.catGroup{display:block;width:100%;margin:0!important;min-width:0}
  .categories>.catGroup.expanded{grid-column:1 / -1}
  .categories .catRow{width:100%;display:flex;align-items:center;gap:5px}
  .categories .catRow>.cat{flex:1 1 auto;width:auto;min-width:0;text-align:left;margin:0;min-height:42px;padding:8px 9px}
  .categories .catToggle{flex:0 0 38px;width:38px;height:42px}
  .categories .subcats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:6px 0 1px 0;padding:7px 0 2px 8px;border-left:2px solid #eee}
  .categories .subcat{width:100%;min-height:38px;padding:7px 7px;font-size:11.5px;line-height:1.25}
}
@media(max-width:360px){
  .categories{gap:6px}.categories .catRow>.cat{min-height:40px}.categories .catToggle{flex-basis:36px;width:36px;height:40px}.categories .subcats{gap:5px}.categories .subcat{min-height:36px;font-size:11px}
}


/* V1.8 Mobile image performance */
.card img{content-visibility:auto;contain-intrinsic-size:480px 480px}
@media(max-width:650px){.card img{aspect-ratio:1/1;width:100%;height:auto}.detailImage img{width:100%;height:auto;max-width:100%}}


/* V5.2 storefront framework */
.hero{background:linear-gradient(180deg,#f7fbff,#fff)}
.heroInner{padding-top:38px;padding-bottom:28px}
.quickLinks{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin:16px auto 0;max-width:900px}
.quickLinks button{border:1px solid #e3e8ef;background:#fff;border-radius:999px;padding:7px 13px;cursor:pointer;color:#333}.quickLinks button:hover{border-color:#1677ff;color:#1677ff}
.categoryLayout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:16px;margin-top:16px}.categorySide{border:1px solid #eee;border-radius:12px;background:#fff;padding:8px;height:max-content;position:sticky;top:78px}.sideCategories{display:flex;flex-direction:column;gap:3px}.sideCat{display:flex;align-items:center;justify-content:space-between;border:0;background:#fff;border-radius:8px;padding:10px 11px;text-align:left;cursor:pointer;font-size:14px}.sideCat span{color:#999;font-size:11px}.sideCat:hover,.sideCat.active{background:#eef6ff;color:#1677ff;font-weight:700}.categoryMain{min-width:0}.categoryMain .categories{margin-top:0}.productSection{margin-top:30px}.card{border:1px solid #f0f0f0}.card .price{color:#111}.card:hover{box-shadow:0 8px 24px #00000012}footer{border-top:1px solid #eee;padding:28px 18px 45px;text-align:center;color:#888;font-size:12px;line-height:1.8}
@media(max-width:850px){.categoryLayout{grid-template-columns:1fr}.categorySide{position:static}.sideCategories{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.sideCat{border:1px solid #eee;padding:9px;font-size:12px}.categoryMain .categories{display:none}.productSection{margin-top:22px}}
@media(max-width:650px){.quickLinks{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;padding-bottom:2px}.quickLinks button{white-space:nowrap}.sideCategories{grid-template-columns:repeat(2,minmax(0,1fr))}.categoryLayout{gap:8px}.heroInner{padding-top:20px}}


/* V5.5 product detail framework */
.breadcrumb{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:4px 0 12px;color:#777;font-size:13px}.breadcrumb button{border:0;background:transparent;padding:0;color:#1677ff;cursor:pointer;font-size:13px}.breadcrumb strong{color:#333}.detailThumbs{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:10px}.thumb{width:58px;height:58px;padding:2px;border:1px solid #ddd;border-radius:8px;background:#fff;cursor:pointer;overflow:hidden}.thumb.active{border:2px solid #1677ff;padding:1px}.thumb img{width:100%;height:100%;object-fit:cover;border-radius:6px}.imageHint{text-align:center;color:#888;font-size:12px;margin-top:7px}.description{margin-top:14px;line-height:1.7;color:#555;white-space:pre-wrap}.detailImage{min-width:0}
@media(max-width:650px){.breadcrumb{font-size:12px;margin-bottom:9px}.breadcrumb button{font-size:12px}.thumb{width:52px;height:52px}.detailThumbs{margin-bottom:7px}.imageHint{font-size:11px}}


/* V5.5 product detail refinement */
.detailTop{display:flex;align-items:center;justify-content:space-between;gap:10px}.copySku{border:1px solid #ddd;background:#fff;border-radius:7px;padding:5px 9px;font-size:12px;cursor:pointer}.copySku:hover{border-color:#1677ff;color:#1677ff}.statusBadge{display:inline-block;margin-top:9px;padding:4px 9px;border-radius:999px;font-size:12px}.statusBadge.on{background:#eef8ef;color:#238b45}.statusBadge.off{background:#f3f3f3;color:#888}.breadcrumb button{white-space:nowrap}
@media(max-width:650px){.detailTop{padding-right:28px}.copySku{font-size:11px;padding:5px 7px}.statusBadge{font-size:11px}}

.listTools{display:flex;align-items:center;gap:8px}.listTools select{border:1px solid #ddd;background:#fff;border-radius:8px;padding:8px 10px;font-size:13px}.listTools #count{white-space:nowrap}
@media(max-width:650px){.sectionHead{align-items:flex-start;gap:8px}.sectionHead h2{white-space:nowrap;flex:0 0 auto}.listTools{width:100%;display:grid;grid-template-columns:1fr 1fr auto}.listTools select{min-width:0;padding:7px 6px;font-size:12px}.listTools #count{font-size:11px;align-self:center}}


/* V5.8 recently viewed */
.recentSection{margin-top:34px;padding-top:22px;border-top:1px solid #eee}.recentSection.hidden{display:none}.clearRecent{border:1px solid #ddd;background:#fff;border-radius:8px;padding:7px 11px;cursor:pointer;font-size:13px}.clearRecent:hover{border-color:#1677ff;color:#1677ff}.recentSection .grid{margin-top:14px}.recentSection .card{opacity:.96}
@media(max-width:650px){.recentSection{margin-top:24px;padding-top:18px}.clearRecent{font-size:12px;padding:6px 9px}}


/* V5.11 favorites framework */
.cardImageWrap{position:relative}.cardImageWrap>img{width:100%;display:block}.favoriteBtn{position:absolute;right:8px;top:8px;width:34px;height:34px;border:1px solid #e5e5e5;border-radius:50%;background:rgba(255,255,255,.94);font-size:21px;line-height:30px;cursor:pointer;box-shadow:0 2px 8px #00000012}.favoriteBtn.active{color:#e33;border-color:#f0caca}.favoriteBtn:hover{transform:scale(1.05)}.favoriteCard{cursor:pointer}
@media(max-width:650px){.favoriteBtn{right:6px;top:6px;width:31px;height:31px;font-size:19px;line-height:27px}}

.homeShowcase{max-width:1200px;margin:0 auto;padding:34px 18px 12px;background:#fff}
.showcaseGrid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;margin-top:18px}
.showcaseCard{min-width:0}
.showcaseMore{text-align:center;margin-top:18px}
.showcaseMore button{border:1px solid #d9dfe8;background:#fff;border-radius:999px;padding:9px 22px;cursor:pointer}
.showcaseMore button:hover{border-color:#1677ff;color:#1677ff}
@media(max-width:1100px){.showcaseGrid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:720px){.showcaseGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.homeShowcase{padding:24px 12px 8px}}


/* ===== V6.0 商品展示修复与优化 ===== */
.cardImageWrap{
  aspect-ratio:1/1;
  background:#f3f4f6;
  overflow:hidden;
}
.cardImageWrap>img{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
}
.showcaseGrid{
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
}
.showcaseCard .cardImageWrap{
  min-height:0;
}
.showcaseCard .body{
  min-height:118px;
}
@media(max-width:1100px){
  .showcaseGrid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:720px){
  .showcaseGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
}
@media(max-width:480px){
  .showcaseGrid{grid-template-columns:1fr}
}


/* ===== V6.0 商品图片工作流 ===== */
.uploadStatus{margin-top:7px;padding:7px 9px;border-radius:7px;background:#f7f9fc;border:1px dashed #d9e0ea}
.imagePreview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:10px}
.imageItem{position:relative;border:1px solid #e3e7ed;border-radius:9px;padding:6px;background:#fff;min-width:0}
.imageItem img{width:100%;aspect-ratio:1/1;object-fit:contain;border-radius:6px;background:#f5f6f8;display:block}
.imageItem.pending{display:flex;flex-direction:column;justify-content:center;min-height:150px;background:#fafbfc}
.pendingName{font-size:12px;word-break:break-all;line-height:1.4;margin:6px 0}
.coverBadge{position:absolute;left:10px;top:10px;z-index:2;padding:3px 6px;border-radius:999px;background:rgba(255,255,255,.92);font-size:11px;color:#1677ff}
.imageBtns{display:flex;gap:4px;flex-wrap:wrap;margin-top:6px}.imageBtns button{padding:4px 6px;font-size:11px}.imageBtns button:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:700px){.imagePreview{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ===== V6.0 采购车与订单框架 ===== */
.cartTop{border:1px solid #ddd!important;background:#fff;border-radius:8px;padding:7px 10px;cursor:pointer}.cartTop:hover{border-color:#1677ff!important;color:#1677ff}.addCartBtn{margin-top:9px;width:100%;border:1px solid #d8e2ef;background:#fff;border-radius:8px;padding:8px 10px;cursor:pointer;font-size:13px}.addCartBtn:hover{border-color:#1677ff;color:#1677ff;background:#f7fbff}.cartBox{max-width:760px}.cartRow{display:grid;grid-template-columns:72px 1fr auto;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid #eee}.cartRow img{width:72px;height:72px;object-fit:contain;border-radius:8px;background:#f5f6f8}.cartControls{display:flex;align-items:center;gap:7px;margin-top:7px}.cartControls button{border:1px solid #ddd;background:#fff;border-radius:6px;padding:4px 8px;cursor:pointer}.cartSummary{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:16px}.cartSummary .loginBtn{width:auto;padding:10px 22px}.loginBox textarea{display:block;width:100%;min-height:72px;margin:10px 0;padding:12px;border:1px solid #ddd;border-radius:8px;font-size:15px;font-family:inherit;resize:vertical}.empty{padding:25px;text-align:center;color:#888}
@media(max-width:650px){.cartTop{font-size:11px;padding:6px 7px}.cartRow{grid-template-columns:58px 1fr auto;gap:8px}.cartRow img{width:58px;height:58px}.cartControls{gap:4px}.cartControls button{padding:4px 6px;font-size:11px}.cartSummary{position:sticky;bottom:0;background:#fff;padding:10px 0}.cartSummary .loginBtn{padding:9px 12px}}

/* V6.20 Banner */
.homeBanners{max-width:980px;margin:18px auto 0;padding:0 14px}.homeBanners .banner{min-height:150px;border-radius:14px;background:#f5f7fa;border:1px solid #e9edf2;display:flex;align-items:center;overflow:hidden}.homeBanners img{width:100%;max-height:280px;object-fit:cover}.homeBanners .bannerText{padding:28px}.homeBanners h3{margin:0 0 8px;font-size:25px}.homeBanners p{margin:0;color:#777}


/* ===== V6.20 采购体验与会员中心 ===== */
.detailBuy{margin-top:16px;padding:14px;border:1px solid #e7ebf0;border-radius:10px;background:#fafcff}.detailBuy label{display:flex;align-items:center;gap:10px;font-size:14px}.detailBuy input{width:90px;border:1px solid #ddd;border-radius:7px;padding:8px}.qtyStepper{display:inline-flex;align-items:stretch;border:1px solid #cfd9e6;border-radius:8px;overflow:hidden;background:#fff}.qtyStepper input{width:66px;border:0!important;border-radius:0!important;text-align:center;padding:8px 2px!important;appearance:textfield;-moz-appearance:textfield}.qtyStepper input::-webkit-outer-spin-button,.qtyStepper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.qtyStepper button{width:34px;border:0;background:#f4f7fb;color:#155fbd;font-size:20px;line-height:1;cursor:pointer}.qtyStepper button+button{border-left:1px solid #cfd9e6}.qtyStepper button:hover{background:#e7f1ff}.quoteBox{margin:10px 0;color:#333}.detailBuy .loginBtn{width:auto;padding:9px 18px}.detailBuy button:disabled{opacity:.45;cursor:not-allowed}.orderCard,.addressCard{border:1px solid #e7ebf0;border-radius:10px;padding:12px;margin:8px 0;background:#fff}.orderCard>span{float:right;padding:3px 8px;border-radius:999px;background:#f3f6fa;font-size:12px}.orderCard strong{display:block;margin-top:8px}.addressCard{line-height:1.7}.status.ok{color:#238b45}.status.warn{color:#b26a00}

/* V6.30 customer workflow */
.orderCard{border:1px solid #eee;border-radius:10px;padding:12px;margin:9px 0;background:#fff}.orderHead,.orderFoot{display:flex;align-items:center;justify-content:space-between;gap:8px}.orderItems{margin:8px 0;line-height:1.7}.orderFoot button,.addressActions button{border:1px solid #ddd;background:#fff;border-radius:7px;padding:6px 10px;cursor:pointer}.addressCard{border:1px solid #eee;border-radius:10px;padding:11px;margin:8px 0}.addressActions{display:flex;gap:7px;margin-top:8px}.addressActions button:hover,.orderFoot button:hover{border-color:#1677ff;color:#1677ff}

/* V6.30 customer workflow */
.orderCard{border:1px solid #eee;border-radius:10px;padding:12px;margin:9px 0;background:#fff}.orderHead,.orderFoot{display:flex;align-items:center;justify-content:space-between;gap:8px}.orderItems{margin:8px 0;line-height:1.7}.orderFoot button,.addressActions button{border:1px solid #ddd;background:#fff;border-radius:7px;padding:6px 10px;cursor:pointer}.addressCard{border:1px solid #eee;border-radius:10px;padding:11px;margin:8px 0}.addressActions{display:flex;gap:7px;margin-top:8px}.addressActions button:hover,.orderFoot button:hover{border-color:#1677ff;color:#1677ff}

/* V6.32-V6.40 packaging UX */
.packagePicker{margin:14px 0 10px}.packageOptions{display:flex;gap:8px;flex-wrap:wrap;margin-top:6px}.packageBtn{border:1px solid #d9dfe8;background:#fff;border-radius:8px;padding:8px 14px;cursor:pointer}.packageBtn.active{border-color:#1677ff;background:#eef5ff;color:#1677ff;font-weight:700}.packageBtn span{font-size:12px;opacity:.7}.packagingSummary{margin:8px 0;color:#777;font-size:13px}.detailBuy{display:flex;flex-direction:column;gap:10px}

/* V6.50 packaging and minimum-order UX */
.packRuleBox{margin:8px 0;padding:9px 11px;border:1px dashed #d8e2ef;border-radius:8px;background:#f8fbff;color:#4a5563}.fixQtyBtn{margin-top:8px;border:1px solid #1677ff;background:#eef5ff;color:#1677ff;border-radius:7px;padding:6px 10px;cursor:pointer}.packRulePreview{padding:10px 12px;border:1px solid #dce7f5;background:#f7fbff;border-radius:8px;color:#245b9e;font-weight:600}

/* ===== V9.00 运营版 ===== */
.storeNotice{max-width:1180px;margin:14px auto 0;padding:11px 18px;border:2px solid #e9a9c0;border-radius:12px;background:linear-gradient(90deg,#ffe3ed,#ffc8dc,#ffe3ed);text-align:center;color:#185b91;box-shadow:0 4px 14px #c96d9333;font-weight:600}.storeNotice:not(.hidden){display:block}footer{background:#fff;border-top:1px solid #eee;padding:26px 18px 34px;text-align:center;color:#666;line-height:1.8}footer b{color:#222}footer .small{margin-top:5px}

/* ===== V9.00 扫码功能 ===== */
.searchBox{display:flex;align-items:center;gap:6px}.searchBox input{flex:1;min-width:0}.scanBtn{border:1px solid #d8e2ef;background:#fff;border-radius:8px;padding:9px 12px;cursor:pointer;white-space:nowrap}.scanBtn:hover{border-color:#1677ff;color:#1677ff;background:#f7fbff}.scanBox{max-width:620px}.scanCameraWrap{position:relative;background:#111;border-radius:12px;overflow:hidden;min-height:300px;display:flex;align-items:center;justify-content:center}.scanCameraWrap video{width:100%;max-height:460px;object-fit:cover;display:block;background:#111}.scanFrame{position:absolute;width:55%;aspect-ratio:1;border:2px solid rgba(255,255,255,.9);border-radius:14px;box-shadow:0 0 0 9999px rgba(0,0,0,.22);pointer-events:none}.scanStatus{margin:10px 0;text-align:center;color:#555;min-height:22px}.scanActions{display:flex;gap:10px;justify-content:center;align-items:center;flex-wrap:wrap}.scanActions .loginBtn{width:auto;margin:0}.scanFileBtn{display:inline-flex;align-items:center;justify-content:center;border:1px solid #1677ff;background:#eef5ff;color:#1677ff;border-radius:8px;padding:10px 16px;cursor:pointer}.scanHint{text-align:center;color:#888;font-size:12px;margin-top:10px;line-height:1.6}@media(max-width:600px){.scanBtn{padding:8px 9px;font-size:12px}.scanCameraWrap{min-height:250px}.scanFrame{width:68%}}

/* V9.00 storefront polish */
.productGrid{grid-template-columns:repeat(4,minmax(0,1fr))!important;align-items:stretch}
.cardImageWrap,.cardImageWrap img{aspect-ratio:1/1}
.cardImageWrap img{width:100%;height:100%;object-fit:contain}
@media(max-width:1050px){.productGrid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:720px){.productGrid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
.scanBtn{min-width:56px}
.scanBtn{display:inline-flex;align-items:center;justify-content:center;gap:7px}.scanGlyph{width:14px;height:14px;display:inline-block;position:relative;background:linear-gradient(#1677ff,#1677ff) left top/7px 2px no-repeat,linear-gradient(#1677ff,#1677ff) left top/2px 7px no-repeat,linear-gradient(#1677ff,#1677ff) right top/7px 2px no-repeat,linear-gradient(#1677ff,#1677ff) right top/2px 7px no-repeat,linear-gradient(#1677ff,#1677ff) left bottom/7px 2px no-repeat,linear-gradient(#1677ff,#1677ff) left bottom/2px 7px no-repeat,linear-gradient(#1677ff,#1677ff) right bottom/7px 2px no-repeat,linear-gradient(#1677ff,#1677ff) right bottom/2px 7px no-repeat}.kmName:empty{display:none}

/* V9.37 mobile scanner: clear camera state and a useful non-camera fallback. */
.scanCameraWrap{aspect-ratio:4/3;min-height:0}.scanCameraWrap video{height:100%;max-height:none}.scanFrame{width:62%;height:auto;display:flex;align-items:center;justify-content:center}.scanFrame:before,.scanFrame:after{content:"";position:absolute;left:7%;right:7%;height:2px;background:#fff;box-shadow:0 0 9px #1677ff}.scanFrame:before{top:0}.scanFrame:after{bottom:0}.scanFrame i{width:90%;height:2px;background:#32c5ff;box-shadow:0 0 12px #32c5ff;animation:scanLine 2s ease-in-out infinite}.scanCameraWrap.unavailable{background:linear-gradient(145deg,#f5f9ff,#eaf3ff);border:1px dashed #9fc4ee}.scanCameraWrap.unavailable video,.scanCameraWrap.unavailable .scanFrame{display:none}.scanFallback{display:flex;flex-direction:column;align-items:center;gap:9px;color:#53708e;text-align:center}.scanFallback span{font-size:48px;line-height:1;color:#1677ff}.scanManual{display:flex;gap:8px;margin:12px auto 0;max-width:440px}.scanManual input{min-width:0;flex:1;border:1px solid #cfddeb;border-radius:9px;padding:10px 12px;font:inherit}.scanManual button{border:0;border-radius:9px;background:#1677ff;color:#fff;padding:9px 16px;font:inherit;cursor:pointer}.scanManual button:hover{background:#0f65d7}@keyframes scanLine{0%,100%{transform:translateY(-56px);opacity:.35}50%{transform:translateY(56px);opacity:1}}@media(max-width:600px){.scanCameraWrap{aspect-ratio:1/1}.scanBox{padding:18px 14px}.scanFrame{width:72%}.scanManual{max-width:none}.scanHint{font-size:12px}.scanActions{gap:8px}.scanActions .loginBtn,.scanFileBtn{padding:10px 12px}}
.customerServiceBtn{position:fixed;right:18px;bottom:88px;z-index:35;border:0;border-radius:999px;background:#1677ff;color:#fff;box-shadow:0 6px 18px #1677ff55;padding:11px 15px;font:inherit;font-weight:700;cursor:pointer}.customerServiceBtn:hover{background:#0f65d7}@media(max-width:650px){.customerServiceBtn{right:12px;bottom:76px;padding:10px 13px;font-size:13px}}

/* V9.34 browse controls: the buyer never needs to scroll back to the top. */
.stickyBrowse{position:fixed;top:66px;left:0;right:0;z-index:25;background:#fff;border-bottom:1px solid #e7eaf0;box-shadow:0 3px 12px #00000012;padding:8px 12px}.stickyBrowseInner{max-width:760px;margin:auto;display:flex;gap:7px}.stickyBrowse input{min-width:0;flex:1;border:1px solid #d8e2ef;border-radius:9px;padding:9px 11px;font:inherit}.stickyBrowse button{border:1px solid #d8e2ef;background:#fff;border-radius:9px;padding:8px 11px;white-space:nowrap;cursor:pointer}.stickyBrowse button:hover{border-color:#1677ff;color:#1677ff}.categorySheet{position:fixed;z-index:40;left:0;right:0;bottom:0;max-height:72vh;overflow:auto;background:#fff;border-radius:18px 18px 0 0;box-shadow:0 -8px 30px #0003;padding:14px}.categorySheetHead{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.categorySheetHead button{border:0;background:#eef5ff;color:#1677ff;border-radius:8px;padding:7px 11px}.sheetCategories{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.sheetCategories button{min-height:42px;border:1px solid #e2e6ec;background:#fff;border-radius:9px;padding:7px;text-align:left;word-break:break-word}.loadMore{display:flex;justify-content:center;align-items:center;gap:8px;flex-wrap:wrap}.loadMore input,.loadMore select{width:auto;max-width:74px;border:1px solid #ddd;border-radius:7px;padding:6px}.loadMore button{border:1px solid #d8e2ef;background:#fff;border-radius:7px;padding:7px 10px}.addCartBtn:disabled{cursor:not-allowed;color:#888;background:#f2f2f2;border-color:#e0e0e0}
@media(max-width:650px){.stickyBrowse{top:56px;padding:7px 8px}.stickyBrowse input{padding:8px;font-size:14px}.stickyBrowse button{padding:8px 9px;font-size:12px}.categorySheet{padding:13px 10px}.sheetCategories{grid-template-columns:repeat(2,minmax(0,1fr))}.sideCategories .sideCat:nth-of-type(n+10){display:none}.loadMore{font-size:12px;gap:6px}.loadMore button{padding:7px 8px}.loadMore input,.loadMore select{padding:6px;max-width:58px}}

/* V9.38 visual system: calm wholesale palette, with search always actionable. */
:root{--dt-navy:#123f6d;--dt-blue:#1677ff;--dt-sky:#eaf4ff;--dt-page:#b9d8ee;--dt-ink:#182433;--dt-muted:#687789;--dt-success:#168c78}
body{background:var(--dt-page);color:var(--dt-ink)}.top{background:rgba(255,255,255,.96);box-shadow:0 1px 10px #123f6d12}.hero{background:linear-gradient(180deg,#eef6ff 0%,#fff 82%);border-bottom-color:#e5edf5}.eyebrow{color:var(--dt-navy)}.hero h2{color:var(--dt-muted)}.searchBox{border-color:#b9d0e8;box-shadow:0 7px 20px #123f6d14}.searchBox:focus-within{border-color:var(--dt-blue);box-shadow:0 0 0 3px #1677ff1c,0 7px 20px #123f6d14}.searchSubmit{background:var(--dt-navy)}.searchSubmit:hover{background:#0c345c}.quickLinks button{border-color:#d7e4f1;background:#fff}.quickLinks button:hover{background:var(--dt-sky);border-color:#73aee7;color:var(--dt-navy)}.stickyBrowse{border-bottom-color:#d8e5f0;box-shadow:0 5px 18px #123f6d18}.stickyBrowse input:focus{outline:2px solid #1677ff22;border-color:#73aee7}.stickyBrowse .stickySubmit{background:var(--dt-navy);border-color:var(--dt-navy)}.stickyBrowse .stickySubmit:hover{background:#0c345c;color:#fff}.customerServiceBtn{background:var(--dt-navy);box-shadow:0 7px 18px #123f6d44}.customerServiceBtn:hover{background:#0c345c}.card{border-color:#e2eaf2;box-shadow:0 3px 11px #123f6d0a}.card:hover{box-shadow:0 10px 26px #123f6d1a}.sideCat.active,.sideCat:hover{background:var(--dt-sky);color:var(--dt-navy)}
@media(max-width:650px){.searchBox{gap:3px;padding-left:10px}.searchBox input{font-size:14px}.searchBox .scanBtn{padding:8px 7px;min-width:42px}.searchBox .scanBtn span:last-child{display:none}.searchSubmit{min-height:34px;padding:8px 10px;font-size:13px;border-radius:8px}.stickyBrowseInner{gap:5px}.stickyBrowse .stickySubmit{padding-left:10px;padding-right:10px}.stickyBrowse #openCategoriesBtn{max-width:68px;overflow:hidden;text-overflow:ellipsis}}

/* Keep the controls inside the search bar at every viewport width. */
.searchBox{padding:0 7px 0 16px;gap:7px}.searchBox input{width:auto;min-width:0;flex:1}.searchSubmit{border:0;border-radius:9px;color:#fff;padding:9px 16px;font:inherit;font-weight:700;white-space:nowrap;cursor:pointer}.stickyBrowse .stickySubmit{color:#fff}

/* V9.21: unit manager modal always above product editor */
#unitModal{z-index:1200;}

/* Mobile product details: the exit controls must remain reachable while the
   detail sheet scrolls. */
#detailHome{display:none}
@media(max-width:650px){
  #detail .detail{padding-top:54px}
  #detail #close,#detail #detailHome{position:fixed;top:calc(env(safe-area-inset-top,0px) + 10px);z-index:80;height:38px;border-radius:10px;box-shadow:0 4px 14px #123f6d30}
  #detail #close{right:12px;width:42px;background:#fff;color:#1677ff;font-size:31px;line-height:32px}
  #detail #detailHome{display:block;right:62px;border:1px solid #d5e3f0;background:#fff;color:#123f6d;padding:0 11px;font:600 14px inherit}
}

/* Login must stay usable in mobile browsers with a fixed bottom navigator.
   100dvh follows the visual viewport when Safari/Chrome browser bars expand. */
@media(max-width:650px){
  body.mobileModalOpen #mobileBottomNav,
  body.mobileModalOpen .customerServiceBtn{display:none!important}
  #login.overlay{align-items:flex-end;padding:0;background:rgba(8,24,42,.54)}
  #login .loginBox{width:100%;max-width:none;max-height:calc(100dvh - env(safe-area-inset-top,0px));overflow-y:auto;margin:0;border-radius:22px 22px 0 0;padding:24px 18px calc(28px + env(safe-area-inset-bottom,0px));box-sizing:border-box}
  #login .loginBox h2{margin-top:4px}
  #login .loginBtn{position:sticky;bottom:0;margin-bottom:0;box-shadow:0 -8px 16px #fff}
}

/* Preserve the source category hierarchy in the mobile category sheet. */
.sheetCategories .depth-1{padding-left:28px}.sheetCategories .depth-2{padding-left:44px}.sheetCategories .depth-3{padding-left:60px}.sheetCategories .depth-4{padding-left:76px}.sheetCategories [class*="depth-"] span{color:#7f93a8}

/* Scrolling notice slot below the mobile search box */
.searchTicker{max-width:720px;margin:8px auto 0;height:30px;display:flex;align-items:center;gap:7px;padding:0 10px;border:1px solid #9fc7e5;border-radius:999px;background:rgba(255,255,255,.72);color:#185b91;overflow:hidden;white-space:nowrap;font-size:13px}
.searchTicker .tickerIcon{font-weight:800;color:#1677ff;flex:0 0 auto}.searchTicker #searchTickerText{display:inline-block;min-width:100%;animation:dtTicker 18s linear infinite;padding-left:8px}@keyframes dtTicker{0%{transform:translateX(0)}45%{transform:translateX(0)}100%{transform:translateX(-100%)} }
@media(max-width:650px){.searchTicker{height:32px;margin-top:8px;padding:0 11px;font-size:12px;border-radius:9px;background:rgba(255,255,255,.82)}.searchTicker #searchTickerText{animation-duration:14s}}

/* Colorful category sheet: each column has a soft, distinct tint */
.categorySheet{background:linear-gradient(180deg,#f7fbff 0%,#fff 28%);padding-bottom:calc(14px + 72px + env(safe-area-inset-bottom,0px));scroll-padding-bottom:calc(72px + env(safe-area-inset-bottom,0px))}
.sheetCategories button:nth-child(4n+1){background:#eef7ff;border-color:#cfe5f7;color:#185b91}
.sheetCategories button:nth-child(4n+2){background:#fff3e9;border-color:#f3d8c2;color:#9b5b2b}
.sheetCategories button:nth-child(4n+3){background:#f4efff;border-color:#ddd0f5;color:#654a9a}
.sheetCategories button:nth-child(4n+4){background:#eefaf5;border-color:#cde8da;color:#287052}
.sheetCategories button:hover,.sheetCategories button:focus-visible{filter:brightness(.97);box-shadow:0 0 0 2px #1677ff22}
.top{background:linear-gradient(90deg,#c3def1 0%,#dcecf8 52%,#c3def1 100%)!important;border-bottom:1px solid #9fc7e5;box-shadow:0 2px 12px #123f6d22!important}.top .brand strong{color:#0f4f82}.top .brand span{color:#35627f}
.storeNotice{display:none!important}
.hero .quickLinks{display:none!important}
.categorySide{display:none!important}.categoryLayout{display:block!important}

/* Two-level category palette: root categories share one tint, children another. */
.sheetCategories button.sheetCategoryDepth0,
.sheetCategories > button:not([class*="sheetCategoryDepth"]){
  background:#dceeff!important;
  border-color:#a9d2f5!important;
  color:#15558a!important;
}
.sheetCategories button[class*="sheetCategoryDepth"]:not(.sheetCategoryDepth0){
  background:#fff0e8!important;
  border-color:#f2c7ad!important;
  color:#9a4d24!important;
}
/* Category sheet layout: all-products and each top-level category occupy a
   full row; child categories form a compact four-column grid.  Keep this
   rule explicit so the same hierarchy remains readable on desktop, Chrome
   mobile and embedded browsers. */
.sheetCategories{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:8px!important;
  align-items:stretch;
}
.sheetCategories > button.sheetCategoryDepth0,
.sheetCategories > button:not([class*="sheetCategoryDepth"]){
  grid-column:1 / -1!important;
  width:100%;
}
.sheetCategories > button[class*="sheetCategoryDepth"]:not(.sheetCategoryDepth0){
  grid-column:auto!important;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  padding-left:7px!important;
  padding-right:7px!important;
  text-align:center!important;
  font-size:12.5px!important;
}
.sheetCategories > button.sheetCategoryDepth0,
.sheetCategories > button:not([class*="sheetCategoryDepth"]){
  text-align:center!important;
  font-size:15px!important;
  font-weight:600;
  padding-left:10px!important;
  padding-right:10px!important;
}
@media(max-width:650px){
  .sheetCategories{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:6px!important}
  .sheetCategories button{min-height:40px;font-size:11px;padding-top:6px;padding-bottom:6px}
  .sheetCategories > button.sheetCategoryDepth0,
  .sheetCategories > button:not([class*="sheetCategoryDepth"]){font-size:15px!important}
  .sheetCategories > button[class*="sheetCategoryDepth"]:not(.sheetCategoryDepth0){font-size:11.5px!important}
}
.bannerCarousel{position:relative;overflow:hidden}.bannerCarousel .bannerArrow{position:absolute;top:50%;transform:translateY(-50%);width:42px;height:42px;border:0;border-radius:50%;background:rgba(0,0,0,.42);color:#fff;font-size:32px;line-height:36px;cursor:pointer;z-index:2}.bannerArrowPrev{left:14px}.bannerArrowNext{right:14px}.bannerCarousel .bannerArrow:hover{background:rgba(0,0,0,.65)}
.homeShowcase{display:none!important}
.homeBanners{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding:14px 18px 8px;max-width:1200px;margin:0 auto;background:transparent;scrollbar-width:none}.homeBanners::-webkit-scrollbar{display:none}.homeBanners .banner{flex:0 0 100%;min-height:150px;scroll-snap-align:start;border-radius:16px;border:1px solid #9fc7e5;background:#fff;box-shadow:0 6px 18px #477da51c;overflow:hidden}.homeBanners .banner img{width:100%;height:clamp(150px,24vw,280px);object-fit:cover;display:block}.homeBanners .bannerText{padding:28px;background:linear-gradient(135deg,#e8f5ff,#fff1f7)}
.homeBanners{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}.homeBanners .companyHeroBanner{grid-column:1/-1}.homeBanners .companyPhotoBanner{min-height:120px}.homeBanners .companyPhotoBanner img{height:190px}
.homeBanners .banner{flex:none;width:auto;min-width:0}.homeBanners .bannerText{width:100%;min-height:150px;display:flex;flex-direction:column;justify-content:center}.homeBanners .companyHeroBanner .bannerText{min-height:210px}
.homeBanners .banner img,.homeBanners .companyPhotoBanner img{height:auto!important;max-height:none;aspect-ratio:auto;object-fit:contain;background:#fff}
.scanGlyph{width:22px!important;height:22px!important;background:linear-gradient(#1677ff,#1677ff) left top/8px 3px no-repeat,linear-gradient(#1677ff,#1677ff) left top/3px 8px no-repeat,linear-gradient(#1677ff,#1677ff) right top/8px 3px no-repeat,linear-gradient(#1677ff,#1677ff) right top/3px 8px no-repeat,linear-gradient(#1677ff,#1677ff) left bottom/8px 3px no-repeat,linear-gradient(#1677ff,#1677ff) left bottom/3px 8px no-repeat,linear-gradient(#1677ff,#1677ff) right bottom/8px 3px no-repeat,linear-gradient(#1677ff,#1677ff) right bottom/3px 8px no-repeat!important;position:relative;display:inline-block!important;color:transparent;font-size:0;line-height:1}.scanGlyph::before{content:none}
@media(max-width:650px){.homeBanners{padding:10px 10px 6px;gap:8px}.homeBanners .banner{border-radius:12px;min-height:110px}.homeBanners .bannerText{padding:18px 14px;min-height:120px}.homeBanners .companyHeroBanner .bannerText{min-height:155px}}
.homeCategoriesBtn{display:inline-flex;align-items:center;justify-content:center;border:1px solid #69a9e7;border-radius:9px;background:#e8f4ff;color:#0d568f;padding:9px 12px;font:inherit;font-weight:700;white-space:nowrap;cursor:pointer}
@media(max-width:650px){
  #mobileBottomNav{height:52px;padding:2px 10px calc(2px + env(safe-area-inset-bottom,0px));background:#f9dfe8;border-top:1px solid #efbdcf;box-shadow:0 -3px 14px #b86a8530}
  #mobileBottomNav button{flex:0 0 44px;width:44px;height:44px;margin:0 auto;border:1px solid #4aa5dc!important;border-radius:50%!important;background:#bfe5f8;color:#075f99;font-weight:600;box-shadow:0 2px 5px #4a9bc530}
  #mobileBottomNav button+button{border-left:0!important}
  #mobileBottomNav button .navIcon{width:25px;height:25px;border:0;background:transparent;color:#168fd2;font-size:18px;line-height:1;box-shadow:none}
  #mobileBottomNav button b{font-size:11px;font-weight:700;line-height:13px}
  #mobileBottomNav button.active{background:#8dcaea;color:#064b78;border-color:#2f8fc9!important;box-shadow:0 3px 8px #3f96c455}
  #mobileBottomNav button.active .navIcon{background:transparent;color:#fff;border-color:transparent}
}

/* V9.83 mobile storefront polish: keep the company artwork compact and make
   the two high-frequency navigation controls visually obvious. */
@media(max-width:650px){
  .homeBanners .companyHeroBanner{min-height:0;height:clamp(170px,48vw,255px)}
  .homeBanners .companyHeroBanner img{display:block;width:100%;height:100%!important;max-height:none!important;aspect-ratio:auto!important;object-fit:cover!important}
  .homeBanners .companyPhotoBanner{min-height:0;height:clamp(135px,38vw,205px)}
  .homeBanners .companyPhotoBanner img{display:block;width:100%;height:100%!important;max-height:none!important;aspect-ratio:auto!important;object-fit:cover!important}
  #openCategoriesBtn{background:linear-gradient(135deg,#e8f4ff,#d7ebff)!important;border:1px solid #69a9e7!important;color:#0d568f!important;font-weight:700!important;box-shadow:0 3px 8px #1b6aa529}
  .homeCategoriesBtn{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:8px 9px;border-radius:9px;border:1px solid #69a9e7;background:linear-gradient(135deg,#e8f4ff,#d7ebff);color:#0d568f;font:inherit;font-size:12px;font-weight:700;white-space:nowrap;cursor:pointer;box-shadow:0 3px 8px #1b6aa529}
  .homeCategoriesBtn:active{background:#c5e2fb;transform:translateY(1px)}
  #openCategoriesBtn:active{background:#c5e2fb!important;transform:translateY(1px)}
  #mobileBottomNav{height:68px;padding:5px 8px calc(5px + env(safe-area-inset-bottom,0px));gap:4px;background:rgba(248,252,255,.98);border-top:1px solid #b9d1e7;box-shadow:0 -5px 20px #123f6d22}
  #mobileBottomNav button{position:relative;border:1px solid transparent;border-radius:14px;color:#49657d;font-size:12px;gap:2px;transition:background .15s,border-color .15s,transform .15s}
  #mobileBottomNav button+button{border-left-color:#dce8f2;border-left-radius:0}
  #mobileBottomNav button span{width:31px;height:31px;display:grid;place-items:center;border:1px solid #9fc2df;border-radius:50%;background:#edf6ff;color:#145b93;font-size:19px;line-height:1;box-shadow:0 2px 5px #123f6d18}
  #mobileBottomNav button.active{background:#e2f1ff;border-color:#8fc1e9;color:#07579a}
  #mobileBottomNav button.active span{border-color:#1677ff;background:#1677ff;color:#fff;box-shadow:0 3px 8px #1677ff55}
  #mobileBottomNav button:active{background:#d8ecff;transform:translateY(1px)}
}

/* Welcome/featured block gets its own soft lavender-blue panel */
.homeShowcase{padding:22px 18px 20px;border:1px solid #b9d1e8;border-radius:16px;background:linear-gradient(135deg,#eef7ff 0%,#f8f2ff 100%);box-shadow:0 5px 18px #477da51c}
@media(max-width:650px){.homeShowcase{padding:17px 11px 15px;border-radius:13px}.storeNotice{margin:10px 10px 0;padding:10px 12px;font-size:12px}}

/* Detail recommendations and stronger visual separation from the storefront */
.detail{background:linear-gradient(180deg,#ffc9d8 0%,#ffdce7 42%,#fff3f7 100%);border:1px solid #ebaec2;box-shadow:0 18px 50px #123f6d2b}.detailRecommendations{margin-top:20px;padding-top:16px;border-top:1px solid #e8c3c0}.detailRecommendations.hidden{display:none}.detailRecommendationsHead{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.detailRecommendationsHead h3{margin:0;color:var(--dt-navy);font-size:18px}.detailRecommendationsHead span{font-size:12px;color:var(--dt-muted)}.detailRecommendations .grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:11px}.recommendationCard{min-width:0;border-radius:10px}.recommendationCard .body{padding:9px}.recommendationCard .name{font-size:13px}.recommendationCard .kmName{font-size:11px}.recommendationCard .price{font-size:16px}.recommendationCard .stock{font-size:10px}.recommendationCard .addCartBtn{font-size:11px;padding:7px 5px}
@media(max-width:650px){.detailRecommendations .grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.detailRecommendationsHead h3{font-size:17px}.detailRecommendationsHead span{font-size:11px}}

/* Keep both third-party login actions aligned and equal on narrow phones. */
.socialLoginRow{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;align-items:stretch!important;gap:10px!important;width:100%!important;margin-top:10px!important}
.socialLoginRow>.telegramLoginWidget,.socialLoginRow>.facebookLoginBtn{width:100%!important;min-width:0!important;max-width:none!important;height:44px!important;min-height:44px!important;margin:0!important;box-sizing:border-box!important}
.socialLoginRow>.telegramLoginWidget{display:flex!important;align-items:center!important;justify-content:center!important;overflow:hidden!important;border-radius:8px!important;background:#54a9e8!important}
.socialLoginRow>.telegramLoginWidget iframe{display:block!important;width:100%!important;max-width:100%!important;height:44px!important;border:0!important}
.socialLoginRow>.facebookLoginBtn{display:flex!important;align-items:center!important;justify-content:center!important;padding:10px 8px!important;white-space:nowrap!important;font-size:14px!important}
@media(max-width:420px){.socialLoginRow{gap:7px!important}.socialLoginRow>.facebookLoginBtn{font-size:12px!important}.socialLoginRow>.telegramLoginWidget iframe{transform:scale(.92);transform-origin:center center}}

/* Keep the featured area compact: four products in two columns */
.showcaseGrid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px}
@media(max-width:650px){.showcaseGrid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px}}
/* Mobile-safe pagination: keep controls from overlapping and make them easier to read. */
.loadMore{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px;text-align:center;padding:18px 12px 26px;font-size:14px;line-height:1.4}
.loadMore label{display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap}
.loadMore select,.loadMore input{min-height:38px;border:1px solid #cbd8e6;border-radius:8px;background:#fff;color:#182433;padding:7px 10px;font:inherit}
.loadMore select{min-width:74px}.loadMore input{width:70px;text-align:center}.loadMore button{min-height:38px;border:1px solid #b8cbe0;border-radius:8px;background:#fff;color:#123f6d;padding:7px 14px;font:inherit;cursor:pointer;white-space:nowrap}.loadMore button:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:650px){.loadMore{gap:8px;padding:16px 6px 26px;font-size:14px}.loadMore label{flex:1 1 100%}.loadMore label+button,.loadMore button{flex:0 0 auto}.loadMore input{width:64px}}
/* Mobile pagination follows the reading order: page size, previous/status/
   next, then the optional jump-to-page controls. */
@media(max-width:650px){
  .loadMore{display:grid!important;grid-template-columns:1fr auto 1fr;align-items:center;justify-items:center;gap:8px 6px}
  .loadMore>label:first-child{grid-column:1/-1;justify-self:center;flex:none}
  .loadMore>#prevPage{grid-column:1;grid-row:2}
  .loadMore>span{grid-column:2;grid-row:2;white-space:nowrap}
  .loadMore>#nextPage{grid-column:3;grid-row:2}
  .loadMore>label:nth-of-type(2){grid-column:1 / span 2;grid-row:3;justify-self:end;flex:none}
  .loadMore>#goPage{grid-column:3;grid-row:3}
  .loadMore button{min-width:64px}
}
/* Compact, non-intrusive iPhone guidance. */
.iosInstallPrompt{width:auto;max-width:92vw;padding:10px 14px;border-width:1px;border-radius:10px;gap:10px}.iosInstallPrompt small{font-size:12px}.iosInstallPrompt .installPromptClose{font-size:22px}
.homeBanners .bannerCarousel img.hidden{display:none!important}
.homeBanners .companyHeroBanner{position:relative;display:block;overflow:hidden}
.homeBanners .companyHeroBanner>img:not(.hidden){display:block;width:100%;height:100%;object-fit:cover}

/* Final navigation override */
@media(max-width:650px){
  body{padding-bottom:calc(50px + env(safe-area-inset-bottom,0px))!important}
  #mobileBottomNav{height:48px!important;padding:1px 10px calc(1px + env(safe-area-inset-bottom,0px))!important;gap:0!important;background:#fcecf2!important;border-top:1px solid #f3d3df!important;box-shadow:0 -3px 12px #b86a8522!important}
  #mobileBottomNav button{flex:1 1 0!important;width:auto!important;height:44px!important;margin:0!important;border:0!important;border-radius:0!important;background:transparent!important;color:#075f99!important;box-shadow:none!important}
  #mobileBottomNav button+button{border-left:0!important;border-radius:0!important}
  #mobileBottomNav button span.navIcon{width:25px!important;height:25px!important;border:0!important;background:transparent!important;color:#168fd2!important;box-shadow:none!important;font-size:18px!important}
  #mobileBottomNav button b{font-size:11px!important;line-height:13px!important}
  #mobileBottomNav button.active{background:transparent!important;color:#064b78!important;border-color:transparent!important;box-shadow:none!important}
  #mobileBottomNav button.active span.navIcon{background:transparent!important;color:#fff!important}
}
