/* Independently authored visual-only storefront replica.
   Source measurements and material exceptions: research/layout-brief.md. */
:root{font-size:39px;--blue:#3369ff;--ink:#545454;--soft:#f8f9fa;--header-art:url('./assets/header-background.png')}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%}
body{font:12px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif;color:#212529;background:#fff;text-align:start}
button,input,select{font:inherit}
button,a,input,select{-webkit-tap-highlight-color:transparent}
button,a{touch-action:manipulation}
button{color:inherit}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #3369ff;outline-offset:3px}
a{color:inherit;text-decoration:none}
img{vertical-align:middle;max-width:100%}
p{margin:0 0 1rem}
[hidden]{display:none!important}
.header{position:relative;min-height:121px;padding:.7rem 0 .47rem;background-color:#3688fb;background-image:var(--header-art),linear-gradient(115deg,#39a6f5 0%,#3069ff 58%,#418bff 100%);background-size:100% 100%;background-repeat:no-repeat;box-shadow:0 .04rem .0667rem #3690f83b;overflow:hidden}
.header_box{display:flex;align-items:center;min-height:1.92rem;width:100%}
.header .avatar{display:block;width:1.146667rem;height:1.146667rem;object-fit:contain;flex:0 0 1.146667rem;margin-inline-start:.453333rem}
.header_title{min-width:0;margin-inline-start:.373333rem;max-width:7.52rem;color:#e5ecff}
.header_title>span:first-child,.header_title>strong:first-child{display:block;font-size:.426667rem;line-height:1.5;font-weight:700}
.header_title>span:nth-child(2){display:block;margin-top:.226667rem;font-size:.293333rem;line-height:.4rem;font-weight:500;max-width:7.5rem}
.header_right{flex:0 0 auto;align-self:flex-start;margin-top:.3rem;margin-inline-start:auto;margin-inline-end:.4rem;padding-inline-start:.2rem}
.queryorder{display:inline-block;margin-inline-start:.1rem;padding:.075rem .306667rem;border:.026667rem solid #fff;border-radius:.333333rem;background:#fff;color:var(--blue);font-size:.293333rem;line-height:1.5;white-space:nowrap;cursor:pointer}
#app>section,.query-panel{width:92.4%;margin-inline:auto}
.category_title,.goods_title{display:flex;align-items:center;padding-top:.293333rem}
.category_title>span,.goods_title>span{position:relative;padding-inline-start:.186667rem;color:var(--ink);font-size:.373333rem;font-weight:700;line-height:1.5}
.category_title>span::before,.goods_title>span::before{position:absolute;content:"";inset-block:2px;inset-inline-start:0;width:3px;border-radius:4px;background:var(--blue)}
.goods_title>span::before{background:#f26c2a}
.category_list{display:flex;flex-wrap:wrap;align-items:stretch;justify-content:space-between;padding-top:.266667rem;padding-bottom:.3rem}
.category_box{position:relative;display:block;appearance:none;width:45%;min-width:0;min-height:1.8rem;padding:.293333rem .4rem .333333rem .333333rem;margin:0 0 .266667rem;border:0;border-radius:.133333rem;background:var(--soft);text-align:start;color:var(--ink);cursor:pointer}
.category_box .cate_name{font-size:.32rem;font-weight:700;line-height:.5rem;overflow-wrap:anywhere}
.category_box .cate_desc,.category_box .sale_tag{display:block;margin-top:.24rem;color:#999;font-size:.293333rem;font-weight:500;line-height:1.5}
.category_box>img{position:absolute;bottom:-.233333rem;inset-inline-end:-.1rem;width:.8rem}
.category_box.active{color:#fff;background-color:#3988fb;background-image:var(--header-art),linear-gradient(115deg,#39a6f5,#3369ff);background-size:100% 100%;box-shadow:0 .093333rem .133333rem #3690f83b;overflow:hidden}
.category_box.active .cate_name{color:#fff}
.category_box.active .cate_desc,.category_box.active .sale_tag{color:#fff;opacity:.76}
.goods_list{max-height:380px;overflow:auto;padding-bottom:.02rem;overscroll-behavior:contain}
.goods_box{position:relative;display:inline-block;vertical-align:middle;appearance:none;max-width:100%;min-width:2rem;margin-top:.266667rem;margin-inline-end:.2rem;padding:.2rem .333333rem;border:.04rem solid #f2f2f2;border-radius:.133333rem;background:#fff;box-shadow:0 .093333rem .133333rem #c9c9c921;text-align:start;line-height:1.5;cursor:pointer}
.goods_box.active{border-color:var(--blue)}
.goods_box .goods_name{color:var(--ink);font-size:.32rem;font-weight:700;line-height:.5rem;margin-bottom:.1rem;overflow-wrap:anywhere}
.goods_box .goods_price{display:inline-block;color:var(--blue);font-size:.306667rem;font-weight:700;line-height:1.5}
.goods_box .goods_remark,.goods_box .stock{display:inline-block;margin-inline-start:.125rem;padding:.05rem .15rem;border-radius:.05rem;color:#0db26a;background:#e1fff2;font-size:.25rem;line-height:1.5;font-weight:400}
.goods_box .icon{display:none;position:absolute;bottom:-.01rem;inset-inline-end:-.01rem;width:.53rem;border-radius:0 0 .1rem 0}
.goods_box.active .icon{display:block}
.goods_box .goods_img{display:block;width:100%;max-width:3rem;height:1.5rem;object-fit:cover;border-radius:7px}
#app>.desc{margin-top:.3rem;padding:.3rem 0;background:#f9f9f9;border-radius:.213333rem;font-size:.3rem}
.desc .icon{display:inline-block;vertical-align:top;width:.36rem;max-height:.5rem;margin-inline-start:.3rem}
.desc_content .content{display:inline-block;max-width:8rem;margin-inline-start:.1rem;color:#999;font-size:.293333rem;line-height:1.5;font-weight:700;vertical-align:top;overflow-wrap:anywhere}
.desc_content .content p{margin-bottom:0}
.desc_content .content img{width:auto;max-width:100%;height:auto}
#app>.order_info{margin-top:.68rem}
.info_box{overflow:hidden;margin-bottom:.5rem}
.info_left{display:inline-block;margin-top:.17rem;font-size:.373333rem;vertical-align:top;line-height:1.5}
.info_left>span{display:inline-block;vertical-align:middle}
.info_left>span:first-child{color:#fb636b;font-weight:700}
.info_left>span:nth-child(2){margin-inline-start:.15rem;font-weight:700;color:var(--ink)}
.count_right{display:inline-flex;align-items:center;float:inline-end;margin-inline-end:.213333rem;vertical-align:middle;gap:.44rem}
.count_right>button,.count_right>span{display:inline-flex;align-items:center;justify-content:center;flex:0 0 .28rem;width:.28rem;height:.4rem;padding:0;border:0;background:none;color:var(--ink);font-size:.53rem;line-height:.4rem;cursor:pointer}
.count_right>span>p{display:none}
.count_right>span:first-child::before{content:"−"}
.count_right>span:last-child::before{content:"+"}
.count_right>input{display:inline-block;width:1.506667rem;height:.773333rem;padding:0;border:.013333rem solid #f0f0f0;border-radius:.053333rem;background:#f7f7f7;text-align:center;color:#555;font-size:.373333rem;font-weight:700;line-height:1.5;appearance:textfield}
.count_right>input::-webkit-inner-spin-button,.count_right>input::-webkit-outer-spin-button{appearance:none;margin:0}
.input_right{display:inline-block;float:inline-end;width:5.5rem;margin-top:.15rem;padding-bottom:.15rem}
.phone_num,.input_right>input{width:100%;height:.7rem;padding:10px;margin-inline-start:10px;border:1px solid #212529;border-radius:5px;color:var(--blue);font-size:.346667rem;font-weight:500;line-height:1.5;background:#fff;opacity:1}
.phone_num::placeholder{color:#999;opacity:1}
.info_box_msg{display:block;clear:both;padding-inline-start:.426667rem;margin-top:.2rem;color:#999;font-size:.32rem;font-weight:500;line-height:.5rem}
.border{height:.213333rem;background:#1c1c1c;opacity:.03}
.pay_title{margin-top:.5rem;margin-bottom:.5rem;color:var(--ink);font-size:.373333rem;font-weight:700;line-height:1.5}
.pay_list{display:flex;flex-wrap:wrap;justify-content:space-between}
.pay_box{position:relative;display:inline-flex;align-items:center;justify-content:center;width:4.2rem;min-height:1.306667rem;margin-bottom:.28rem;border:.024rem solid #e7e7e7;border-radius:.133333rem;background:#f7f7f7;text-align:center;line-height:1.306667rem;cursor:default}
.pay_box.active{border:.04rem solid var(--blue);background:#f8faff;color:var(--blue)}
.pay_box span{display:inline-block;margin-inline-start:.226667rem;vertical-align:middle}
.pay_box .icon{position:absolute;bottom:-.01rem;inset-inline-end:-.01rem;display:none;width:.666667rem;border-radius:0 0 .133333rem 0}
.pay_box.active .icon{display:block}
.copyright{padding:.5rem 0;margin-bottom:1.2rem}
.copyright>p{width:100%;margin:0;text-align:center;color:var(--ink);font-size:12px;line-height:1.5}
.footer{position:fixed;inset-inline:0;bottom:0;z-index:40;display:flex;width:100%;margin:0;background:#fff;color:#fff;font-weight:700;text-align:center;box-shadow:0 0 .1rem #efefef}
.to_pay{display:flex;flex:1;align-items:center;justify-content:center;flex-direction:column;appearance:none;min-height:1.2rem;padding:.3rem .2rem;border:0;border-radius:0;background:var(--blue);color:#fff;font-size:.4rem;font-weight:700;line-height:1.5;letter-spacing:.01rem;text-align:center;cursor:pointer;opacity:1}
.to_pay>span{display:inline-block;font-size:.4rem;line-height:1.5}
.to_pay[aria-disabled="true"]{opacity:1}
.preview-note{width:92.4%;margin:.15rem auto .45rem;color:#999;font-size:11px;line-height:1.65;text-align:center}
.language-select{max-width:100%;margin:.15rem .1rem .1rem;padding:4px 7px;border:1px solid #e2e6ec;border-radius:4px;background:#fff;color:#777;font-size:11px;line-height:1.5}
.local-dialog{position:fixed;width:260px;min-width:min(260px,calc(100vw - 32px));max-width:calc(100% - 32px);max-height:82vh;margin:auto;padding:0;border:0;border-radius:2px;background:#fff;color:#333;font-size:14px;line-height:1.5;box-shadow:1px 1px 50px #0005;overflow:auto}
.local-dialog::backdrop{background:rgba(0,0,0,.3)}
.local-dialog h2,.local-dialog .dialog-title{height:42px;margin:0;padding:0 20px;border-bottom:1px solid #eee;border-radius:2px 2px 0 0;background:#f8f8f8;color:#333;font-size:14px;line-height:42px;font-weight:400}
.local-dialog .dialog-content,.local-dialog .dialog-body{padding:20px;font-size:14px;line-height:24px;overflow-wrap:anywhere}
.local-dialog p{margin:0;padding:20px;font-size:14px;line-height:24px}
.local-dialog .dialog-content p,.local-dialog .dialog-body p{padding:0}
.local-dialog button{height:28px;padding:0 15px;border:1px solid #1e9fff;border-radius:2px;background:#1e9fff;color:#fff;font-size:12px;font-weight:400;line-height:26px;cursor:pointer}
.local-dialog .dialog-close{position:absolute;top:12px;inset-inline-end:12px;display:block;width:18px;height:18px;padding:0;border:0;background:none;color:#666;font-size:20px;line-height:18px;text-align:center}
.local-dialog .dialog-close:hover{color:#333}
.local-dialog .dialog-actions{margin:0;padding:0 15px 12px;text-align:end}
.local-dialog .dialog-actions button{margin-top:5px;margin-inline-start:5px}
.query-panel{margin-top:.5rem;margin-bottom:1.5rem;color:var(--ink)}
.query-panel h1{font-size:.426667rem;line-height:1.5}
.query-panel input{display:block;max-width:100%;width:100%;margin:.3rem 0;padding:.25rem;border:1px solid #ddd;border-radius:.133333rem;font-size:.346667rem}
.query-panel button{border:0;border-radius:.133333rem;padding:.2rem .7rem;background:var(--blue);color:#fff;font-size:.373333rem}
html[dir="rtl"] .header_right{margin-inline-start:auto;margin-inline-end:.4rem}
html[dir="rtl"] .category_box>img,html[dir="rtl"] .goods_box .icon,html[dir="rtl"] .pay_box .icon{transform:scaleX(-1)}
@media(max-width:420px){
  .header_title{flex:1;max-width:calc(100% - 2.1rem);overflow-wrap:anywhere}
  .header_right{position:absolute;inset-inline-end:0;top:.7rem;margin-top:0}
  .header_title{padding-top:.7rem}
  .header .avatar{align-self:center}
  .header{min-height:121px}
  .input_right{max-width:calc(100% - .256rem);margin-inline-end:.256rem}
  .phone_num,.input_right>input{margin-inline-start:0}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:0s!important;transition-duration:0s!important}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.goods_box .goods_name{display:block}.category_box .cate_name{display:block}
.header{min-height:119.953125px}.header_box{min-height:74.328125px}.header_title{align-self:flex-start}
.header_title{margin-inline-start:17.84375px}@media(max-width:420px){.header{min-height:156.640625px}.header_title{padding-top:0}.header_right{top:86.015625px;inset-inline-end:.4rem;margin:0;padding:0}}@media(max-width:420px){html:not([lang="zh-CN"]):not([lang="zh-TW"]) .header_box{flex-wrap:wrap;gap:10px 0;align-items:flex-start}html:not([lang="zh-CN"]):not([lang="zh-TW"]) .header_right{position:static;flex:1 1 100%;text-align:end;margin-inline-end:.4rem;margin-top:4px}html:not([lang="zh-CN"]):not([lang="zh-TW"]) .header_title{font-size:14px}}
@media(max-width:420px){.header_right{top:113.3125px}}
