:root{
  --paper:#f5f2ea; --card:#fffdf8; --ink:#24211c; --ink2:#5f594e; --ink3:#8a8274;
  --rule:#e4ddcd; --rule2:#d6cdb9; --head:#efe9dc;
  --green:#2f5d45; --green-bg:#e6efe8; --amber:#94600f; --amber-bg:#f7ecd8;
  --red:#ad3a2e; --red-bg:#f6e3df; --blue:#2c5680; --blue-bg:#e3ebf3;
  --tabh:56px; --safe:env(safe-area-inset-bottom,0px);
}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{background:var(--paper);color:var(--ink);min-height:100vh;
  font-family:-apple-system,"SF Pro Text","IBM Plex Sans","Helvetica Neue",Arial,"PingFang SC","Hiragino Sans GB","Noto Sans CJK SC","Noto Sans SC","Microsoft YaHei",sans-serif;
  font-size:15px;line-height:1.45;-webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
.main{max-width:760px;margin:0 auto;padding:0 0 24px}
body.has-nav .main{padding-bottom:calc(var(--tabh) + var(--safe) + 24px)}
body.has-nav.has-foot .main{padding-bottom:calc(var(--tabh) + var(--safe) + 96px)}
body.no-nav.has-foot .main{padding-bottom:calc(var(--safe) + 96px)}
.backlink{display:inline-block;padding:10px 16px 0;color:var(--ink2);font-size:14px}
/* 底部导航（手机） */
.tabbar{position:fixed;left:0;right:0;bottom:0;z-index:20;height:calc(var(--tabh) + var(--safe));padding:6px 4px var(--safe);background:var(--card);border-top:1px solid var(--rule2);display:flex}
.tabbar a{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;font-size:11px;color:var(--ink3);min-height:44px}
.tabbar a.on{color:var(--green);font-weight:600}
.tabbar svg,.side svg{width:24px;height:24px;stroke:currentColor;fill:none;stroke-width:1.6}
.side{display:none}
.footbar{position:fixed;left:0;right:0;bottom:0;z-index:25;background:var(--card);border-top:1px solid var(--rule2);padding:10px 12px calc(10px + var(--safe));display:flex;gap:10px;align-items:center}
body.has-nav .footbar{bottom:calc(var(--tabh) + var(--safe));padding-bottom:10px}
.footbar .btn{flex:1}
.footbar .sum{flex:1;min-width:0}.footbar .sum b{display:block;font-size:22px;line-height:1.15}.footbar .sum span{font-size:12px;color:var(--ink2)}
.footbar .sum+.btn{flex:0 0 150px}
/* 页面块 */
.pagehead{padding:14px 16px 8px;display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap}
.pagehead h1{font-size:22px;font-weight:700;letter-spacing:.5px}
.pagehead .sub{font-size:13px;color:var(--ink2)}
.pagehead .acts{display:flex;gap:8px}
.sec{margin:10px 12px 0;background:var(--card);border:1px solid var(--rule);border-radius:6px;overflow:hidden}
.sec>h2{font-size:14px;font-weight:600;padding:9px 14px 7px;border-bottom:1px solid var(--rule);display:flex;justify-content:space-between;align-items:center;gap:10px}
.sec>h2 .c{font-weight:400;color:var(--ink3);font-size:12.5px;text-align:right}
.sec>h2 a.c{color:var(--green);font-weight:600}
.row{display:flex;align-items:flex-start;gap:10px;padding:10px 14px;border-bottom:1px solid var(--rule)}
a.row:active{background:#f3efe4}
.row:last-child{border-bottom:0}
.row .main2{flex:1;min-width:0}
.row .t{font-size:15px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.row .d{font-size:13px;color:var(--ink2);margin-top:2px;overflow-wrap:anywhere}
.row .side2{text-align:right;flex-shrink:0;max-width:48%}
.row .amt{font-size:15px;font-weight:600;white-space:nowrap}
.row .m{font-size:12px;color:var(--ink3);margin-top:2px;white-space:nowrap}
.more-l{display:block;padding:9px 14px;font-size:13px;color:var(--green);font-weight:600;text-align:center;border-top:1px solid var(--rule)}
.empty{padding:18px 14px;color:var(--ink3);font-size:13.5px;text-align:center}
.tag{display:inline-block;font-size:12px;line-height:18px;padding:0 6px;border-radius:3px;border:1px solid currentColor;white-space:nowrap}
.tag.red{color:var(--red);background:var(--red-bg)}.tag.amber{color:var(--amber);background:var(--amber-bg)}
.tag.green{color:var(--green);background:var(--green-bg)}.tag.blue{color:var(--blue);background:var(--blue-bg)}
.tag.gray,.tag.muted{color:var(--ink2);background:#f1ede3}.tag.done{color:#fff;background:var(--green);border-color:var(--green)}
.red{color:var(--red)}.amber{color:var(--amber)}.green{color:var(--green)}.muted{color:var(--ink3)}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 16px;border-radius:6px;font-size:16px;font-weight:600;border:1px solid var(--rule2);background:var(--card);color:var(--ink);cursor:pointer;white-space:nowrap}
.btn.pri{background:var(--green);border-color:var(--green);color:#fff}
.btn.danger{color:var(--red);border-color:#e0b8b1}
.btn.sm{min-height:34px;font-size:13.5px;padding:0 11px;font-weight:500}
.btn:disabled{opacity:.5}
.strip{display:flex;margin:0 12px;background:var(--card);border:1px solid var(--rule);border-radius:6px}
.strip>a{flex:1 1 0;padding:9px 2px 8px;text-align:center;border-left:1px solid var(--rule);min-width:0}
.strip>a:first-child{border-left:0}
.strip>a.money{flex-grow:1.3}
.strip b{display:block;font-size:21px;font-weight:700;line-height:1.2;overflow:hidden;text-overflow:ellipsis}
.strip span{font-size:11.5px;color:var(--ink2)}
.flash{margin:10px 12px 0;padding:9px 12px;border-radius:6px;font-size:14px;border:1px solid}
.flash.ok{background:var(--green-bg);color:var(--green);border-color:#b9cfc0}.flash.err{background:var(--red-bg);color:var(--red);border-color:#e0b8b1}
/* 客户详情 */
.head{padding:14px 16px 4px}
.head .nm{font-size:22px;font-weight:700;overflow-wrap:anywhere}
.head .addr{font-size:13px;color:var(--ink2);margin-top:2px}
.kv{display:grid;grid-template-columns:repeat(4,1fr);margin-top:12px;border-top:1px solid var(--rule2);border-bottom:1px solid var(--rule2)}
.kv>div{padding:7px 0 7px 8px;border-left:1px solid var(--rule);min-width:0}
.kv>div:first-child{border-left:0;padding-left:0}
.kv span{display:block;font-size:11.5px;color:var(--ink3)}.kv b{font-size:14px;font-weight:600;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.acts2{display:flex;gap:6px;align-self:center;flex-shrink:0}
table.usual{width:100%;border-collapse:collapse;font-size:14px}
table.usual td{padding:8px 14px;border-bottom:1px solid var(--rule);vertical-align:top}
table.usual tr:last-child td{border-bottom:0}
table.usual td.n{text-align:right;white-space:nowrap;padding-left:0}
table.usual td.p{color:var(--ink2);width:64px}
table.usual em{display:block;font-style:normal;font-size:12px;color:var(--ink3)}
.seg{display:flex;margin:14px 12px 0;border-bottom:1px solid var(--rule2);overflow-x:auto}
.seg a{padding:6px 14px 7px;font-size:14px;color:var(--ink2);white-space:nowrap}
.seg a.on{color:var(--ink);font-weight:600;border-bottom:2px solid var(--green);margin-bottom:-1px}
.tl{list-style:none;margin:0 12px 0 22px;padding:4px 0 0 14px;border-left:2px solid var(--rule2)}
.tl li{position:relative;padding:8px 4px}
.tl li:before{content:"";position:absolute;left:-21px;top:14px;width:10px;height:10px;border-radius:50%;background:var(--paper);border:2px solid var(--green)}
.tl .when{font-size:12px;color:var(--ink3)}.tl .what{font-size:14px;margin-top:2px;overflow-wrap:anywhere;white-space:pre-wrap}
.tl .next{display:inline-flex;gap:8px;align-items:center;margin-top:5px;font-size:12.5px;color:var(--amber);background:var(--amber-bg);padding:1px 7px;border-radius:3px}
.tl .next.done{color:var(--ink3);background:#f1ede3;text-decoration:line-through}
.tl form{display:inline}
.linkbtn{background:none;border:0;color:var(--green);font-weight:600;font-size:12.5px;cursor:pointer;padding:0 0 0 6px}
/* 表单 */
.form .f{display:flex;align-items:center;min-height:50px;padding:6px 14px;border-bottom:1px solid var(--rule);gap:10px}
.form .f:last-child{border-bottom:0}
.form .f.top{align-items:flex-start;padding-top:12px;padding-bottom:12px}
.form label.l,.form .l{width:64px;color:var(--ink2);flex-shrink:0;font-size:15px}
.form input[type=text],.form input[type=date],.form input[type=number],.form input[type=tel],.form select,.form textarea,input.inp,select.inp{flex:1;min-width:0;width:100%;border:0;background:transparent;font-size:16px;padding:6px 0;outline:none;border-radius:0;-webkit-appearance:none;appearance:none}
.form select{background:transparent url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="10" height="6"><path d="M1 1l4 4 4-4" stroke="%238a8274" fill="none" stroke-width="1.5"/></svg>') no-repeat right center;padding-right:16px}
.form textarea{min-height:64px;resize:vertical;line-height:1.5}
.form input:focus,.form select:focus,.form textarea:focus{box-shadow:inset 0 -2px 0 var(--green)}
.form .hint{font-size:12px;color:var(--ink3)}
.form .chk{display:flex;align-items:center;gap:8px;font-size:15px}
.form .chk input{width:20px;height:20px;accent-color:var(--green)}
.formacts{display:flex;gap:10px;margin:14px 12px 0}.formacts .btn{flex:1}
.lh{display:flex;justify-content:space-between;align-items:center;margin:16px 16px 0;font-size:13px;color:var(--ink2)}
.lh button{background:none;border:0;color:var(--green);font-weight:600;font-size:13px;cursor:pointer;padding:6px 0}
.ln{padding:11px 14px 12px;border-bottom:1px solid var(--rule)}
.ln .top{display:flex;gap:8px;align-items:center}
.ln .top select{flex:1;font-size:15.5px;font-weight:600;border:0;background:transparent;min-width:0;padding:4px 16px 4px 0;-webkit-appearance:none;appearance:none;background:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="10" height="6"><path d="M1 1l4 4 4-4" stroke="%238a8274" fill="none" stroke-width="1.5"/></svg>') no-repeat right center}
.ln .x{background:none;border:0;color:var(--ink3);font-size:22px;line-height:1;width:36px;height:36px;cursor:pointer}
.ln .spec{font-size:12.5px;color:var(--ink2);margin-top:2px;min-height:18px}
.ln .bot{display:flex;align-items:center;margin-top:10px;gap:10px}
.stp{display:flex;align-items:center;border:1px solid var(--rule2);border-radius:5px;height:38px;background:#fff}
.stp button{width:40px;height:36px;border:0;background:none;font-size:20px;color:var(--ink2);cursor:pointer}
.stp input{width:56px;height:36px;text-align:center;font-size:17px;font-weight:700;border:0;border-left:1px solid var(--rule);border-right:1px solid var(--rule);outline:none;background:transparent;border-radius:0}
.ln .unit{font-size:13.5px;color:var(--ink2);white-space:nowrap;display:flex;align-items:center;gap:2px}
.ln .unit input{width:58px;margin-left:2px;border:0;border-bottom:1px dashed var(--rule2);background:transparent;font-size:13.5px;text-align:left;padding:2px 0;outline:none}
.ln .sub{margin-left:auto;font-size:17px;font-weight:700;white-space:nowrap}
.ln .grind{margin-top:8px;display:flex;gap:6px;flex-wrap:wrap}
.ln .grind label{font-size:12.5px;padding:3px 9px;border:1px solid var(--rule2);border-radius:4px;color:var(--ink2);cursor:pointer}
.ln .grind input{display:none}.ln .grind input:checked+span{color:var(--amber)}
.ln .grind label:has(input:checked){border-color:var(--amber);background:var(--amber-bg);color:var(--amber)}
.addline{display:block;width:100%;padding:13px 14px;text-align:center;color:var(--green);font-size:15px;font-weight:600;background:none;border:0;cursor:pointer}
.ptext{margin:10px 16px 0;font-size:12.5px;color:var(--ink3)}
/* 订单列表 */
.chips{display:flex;gap:8px;padding:12px 12px 0;overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.chips::-webkit-scrollbar{display:none}
.chips a{font-size:13.5px;padding:6px 11px;border:1px solid var(--rule2);border-radius:4px;background:var(--card);color:var(--ink2);flex-shrink:0}
.chips a.on{background:var(--ink);border-color:var(--ink);color:#fff}
.search{display:flex;margin:10px 12px 0;gap:8px}
.search input{flex:1;min-width:0;height:40px;padding:0 12px;border:1px solid var(--rule2);border-radius:6px;background:var(--card);font-size:16px;outline:none;-webkit-appearance:none}
.search input:focus{border-color:var(--green)}
.day{margin:14px 16px 0;font-size:12.5px;color:var(--ink2);font-weight:600}
.oc{display:block;padding:11px 14px;border-bottom:1px solid var(--rule)}.oc:last-child{border-bottom:0}
.oc .l1{display:flex;justify-content:space-between;align-items:baseline;gap:10px;font-size:15.5px}
.oc .l1 b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.oc .l1 .amt{font-weight:700;font-size:16px;white-space:nowrap}
.oc .l2{font-size:12.5px;color:var(--ink2);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.oc .l3{font-size:12.5px;color:var(--ink3);margin-top:6px}
.steps{display:flex;align-items:center;margin-top:9px}
.steps span{font-size:12px;color:var(--ink3);padding:1px 6px;border:1px solid var(--rule);border-radius:3px;background:#faf8f2;white-space:nowrap}
.steps span.done{color:var(--green);border-color:#b9cfc0;background:var(--green-bg)}
.steps span.cur{color:#fff;background:var(--green);border-color:var(--green);font-weight:600}
.steps span.cancel{color:var(--ink3);text-decoration:line-through}
.steps i{flex:1;height:1px;background:var(--rule2);min-width:6px}
/* 订单详情 */
.ohead{padding:14px 16px 2px}
.ohead .no{font-size:13px;color:var(--ink2)}
.ohead .nm{font-size:20px;font-weight:700;margin-top:2px;overflow-wrap:anywhere}
.ohead .steps{margin-top:12px}
table.lines{width:100%;border-collapse:collapse;font-size:14px}
table.lines td,table.lines th{padding:8px 14px;border-bottom:1px solid var(--rule);text-align:left;vertical-align:top}
table.lines th{font-size:12px;color:var(--ink2);font-weight:600;background:#faf8f2}
table.lines .n{text-align:right;white-space:nowrap}
table.lines em{display:block;font-style:normal;font-size:12px;color:var(--ink3)}
table.lines tfoot td{font-weight:700;border-bottom:0}
.actionbox{padding:12px 14px;display:flex;flex-direction:column;gap:10px}
.actionbox .rowf{display:flex;gap:8px}
.actionbox input,.actionbox select{flex:1;min-width:0;height:44px;border:1px solid var(--rule2);border-radius:6px;padding:0 10px;font-size:16px;background:#fff;outline:none}
.actionbox select{flex:0 0 116px;background:#fff url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="10" height="6"><path d="M1 1l4 4 4-4" stroke="%238a8274" fill="none" stroke-width="1.5"/></svg>') no-repeat right 10px center;-webkit-appearance:none;appearance:none;padding-right:24px}
/* 对账 */
.mon{display:flex;justify-content:center;align-items:center;gap:22px;padding:12px 0 4px;font-size:16px}
.mon a{color:var(--ink3);font-size:22px;line-height:1;padding:4px 10px}
.tot{display:grid;grid-template-columns:repeat(4,1fr);margin:8px 12px 0;background:var(--card);border:1px solid var(--rule);border-radius:6px}
.tot>div{padding:9px 10px;border-left:1px solid var(--rule);min-width:0}.tot>div:first-child{border-left:0}
.tot span{display:block;font-size:11.5px;color:var(--ink2)}.tot b{font-size:18px;font-weight:700;display:block;overflow:hidden;text-overflow:ellipsis}
.bar{display:flex;height:8px;margin:12px 12px 0;background:#e9d3a8;border-radius:2px;overflow:hidden;border:1px solid var(--rule)}
.bar i{background:var(--green)}.bar i.o{background:var(--red);margin-left:auto}
.legend{display:flex;gap:14px;margin:6px 14px 0;font-size:11.5px;color:var(--ink2);flex-wrap:wrap}
.legend i{display:inline-block;width:8px;height:8px;margin-right:4px;background:var(--green)}.legend i.u{background:#e9d3a8}.legend i.o{background:var(--red)}
.recent{margin:16px 16px 0}.recent .rh{font-size:12.5px;color:var(--ink2);font-weight:600;padding-bottom:4px;border-bottom:1px solid var(--rule2)}
.rr{display:flex;gap:12px;font-size:13.5px;padding:7px 0;border-bottom:1px dashed var(--rule2);align-items:center}
.rr .dt{color:var(--ink3);width:46px;flex-shrink:0}.rr .wh{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rr b{font-weight:600}
/* 登录/提示页 */
.notice{max-width:420px;margin:12vh auto 0;padding:28px 24px;background:var(--card);border:1px solid var(--rule);border-radius:8px}
.notice h1{font-size:20px;margin-bottom:10px}.notice p{font-size:14.5px;color:var(--ink2);margin-top:8px}
.notice .btn{margin-top:18px;width:100%}
.notice code{font-size:13px;background:#f1ede3;padding:1px 5px;border-radius:3px}
.notice ol{margin:10px 0 0 20px;font-size:14px;color:var(--ink2)}.notice li{margin-top:4px}
/* 电脑端表格 */
.dtable-wrap{padding:0 24px 24px}
.toolbar{display:flex;align-items:center;gap:10px;padding:16px 24px 12px;border-bottom:1px solid var(--rule2);background:var(--card);flex-wrap:wrap}
.toolbar h1{font-size:19px;margin-right:8px}
.toolbar label{font-size:13px;color:var(--ink2);display:flex;align-items:center;gap:6px;white-space:nowrap}
.toolbar input,.toolbar select{height:32px;border:1px solid var(--rule2);border-radius:5px;background:#fff;font-size:13px;padding:0 8px}
.toolbar input[type=search]{width:200px}
.toolbar .sp{flex:1}
.summary{display:flex;gap:28px;padding:10px 24px;font-size:13px;color:var(--ink2);border-bottom:1px solid var(--rule);flex-wrap:wrap}
.summary b{color:var(--ink);font-size:14px;margin-left:4px}
table.dt{width:100%;border-collapse:collapse;margin-top:10px;background:var(--card);border:1px solid var(--rule2)}
table.dt th{font-size:12.5px;font-weight:600;color:var(--ink2);text-align:left;padding:8px 10px;background:var(--head);border-bottom:1px solid var(--rule2);white-space:nowrap}
table.dt td{padding:0 10px;height:38px;border-bottom:1px solid var(--rule);white-space:nowrap;font-size:13.5px}
table.dt tr:nth-child(even) td{background:#fbf9f3}
table.dt tbody tr:hover td{background:#f3efe4}
table.dt .r{text-align:right}table.dt td.no a{color:var(--ink2);font-size:12.5px}
table.dt td.items{max-width:280px;overflow:hidden;text-overflow:ellipsis;color:var(--ink2)}
table.dt td.cust{max-width:200px;overflow:hidden;text-overflow:ellipsis}
table.dt tfoot td{font-weight:700;background:var(--head)!important;border-top:1px solid var(--rule2)}
.pager{display:flex;justify-content:space-between;align-items:center;margin-top:10px;font-size:12.5px;color:var(--ink2)}
.pg{display:flex;gap:4px}.pg a,.pg span{min-width:30px;height:30px;line-height:28px;text-align:center;border:1px solid var(--rule2);border-radius:4px;background:#fff;padding:0 6px}
.pg .on{background:var(--ink);color:#fff;border-color:var(--ink)}
.users td{height:auto;padding:8px 10px}
.users form{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.users label{display:flex;gap:4px;align-items:center;font-size:13.5px}
.users input[type=checkbox]{width:18px;height:18px;accent-color:var(--green)}
/* 宽屏：左侧栏代替底部导航 */
@media (min-width:1024px){
  .tabbar{display:none}
  body.has-nav .main{padding-bottom:32px}
  body.has-nav.has-foot .main{padding-bottom:110px}
  .side{display:flex;flex-direction:column;position:fixed;left:0;top:0;bottom:0;width:184px;background:#2a2722;color:#d9d2c3;padding:18px 0;z-index:30}
  .side a{padding:9px 20px;font-size:14px}
  .side a.on{background:#3b372f;color:#fff;border-left:3px solid #7fae8f;padding-left:17px}
  .side .brand{padding:0 20px 18px;font-size:17px;font-weight:700;color:#fff}
  .side .brand small{display:block;font-size:11.5px;font-weight:400;color:#a39a89;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .side .lo{margin-top:auto;padding:0 20px}.side .lo button{background:none;border:0;color:#a39a89;font-size:13px;cursor:pointer;padding:6px 0}
  body.has-nav{padding-left:184px}
  body.has-nav .footbar{left:184px;bottom:0;padding-bottom:10px}
  body.has-nav .footbar{padding-left:max(12px,calc((100vw - 184px - 736px) / 2));padding-right:max(12px,calc((100vw - 184px - 736px) / 2))}
  body.wide .main{max-width:none}
}
@media (orientation:landscape) and (max-height:500px){ :root{--tabh:46px} .tabbar a{flex-direction:row;justify-content:center;gap:6px;align-items:center} }

/* 补充 */
.notice .logo{width:44px;height:44px;border-radius:10px;background:var(--green);color:#fff;font-size:22px;font-weight:700;display:flex;align-items:center;justify-content:center;margin-bottom:16px}
.notice .foot{margin-top:22px;font-size:12px;color:var(--ink3);text-align:center}
.btn.big{height:48px;font-size:16px}
.row.prod.off .t,.row.prod.off .d{color:var(--ink3)}
.prices{display:flex;gap:12px;align-items:baseline}
.prices span{font-size:14.5px;font-weight:600;white-space:nowrap}.prices em{font-style:normal;font-size:11px;color:var(--ink3);font-weight:400;margin-right:3px}
.chk{display:inline-flex;align-items:center;gap:6px;font-size:14px;white-space:nowrap;cursor:pointer}
.chk input{width:18px;height:18px;accent-color:var(--green)}
.urow{flex-wrap:wrap;gap:8px}
.rolebox{display:flex;flex-direction:row;align-items:center;gap:12px;flex-wrap:wrap}
@media (max-width:600px){.urow .rolebox{width:100%;justify-content:space-between}}
.dtable-wrap{overflow-x:auto}
table.dt td.items{max-width:240px}table.dt td.cust{max-width:180px}
@media (max-width:1440px){table.dt td.items{max-width:150px}table.dt td.cust{max-width:136px}table.dt th,table.dt td{padding-left:6.5px;padding-right:6.5px}.toolbar input[type=search]{width:170px}}
@media (max-width:400px){.prices{gap:7px}.prices span{font-size:13.5px}}
@media (max-width:460px){.notice{margin:10vh 14px 0}}
@media (orientation:landscape) and (max-height:500px){.footbar{padding-top:6px;padding-bottom:6px}.footbar .sum b{font-size:18px}.footbar .btn{min-height:38px}.notice{margin-top:4vh}}

.toolbar{display:block;padding:14px 24px 12px}
.toolbar .tb1{display:flex;align-items:center;gap:10px}
.toolbar .tb2{display:flex;align-items:center;gap:10px 14px;flex-wrap:wrap;margin-top:10px}
.toolbar .tb2 .btn{margin-left:0}

/* 连锁门店 */
[hidden]{display:none!important}
.oc .lb,.row .lb{font-size:13px;color:var(--ink);margin-top:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.brn{color:var(--ink)}
.row.br.off .t,.row.br.off .d{color:var(--ink3)}
.row.sub{padding-left:26px;background:#fcfaf5}
.row.sub .t{font-size:14px;font-weight:500}
.form .f.shipf #shipto{font-size:14px;color:var(--ink2);overflow-wrap:anywhere;min-width:0}
.ln .lbr{display:none}
#orderform.multi .ln .lbr{display:flex;align-items:center;gap:8px;margin-bottom:8px;font-size:13px;color:var(--ink2)}
.ln .lbr select{flex:1;min-width:0;max-width:100%;height:32px;border:1px solid var(--rule2);border-radius:5px;padding:0 26px 0 9px;font-size:14px;color:var(--ink);text-overflow:ellipsis;-webkit-appearance:none;appearance:none;background:#fff url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="10" height="6"><path d="M1 1l4 4 4-4" stroke="%238a8274" fill="none" stroke-width="1.5"/></svg>') no-repeat right 9px center}
.ohead .obr{font-size:15px;color:var(--ink2);margin-top:1px;overflow-wrap:anywhere}
.form .f .ship{overflow-wrap:anywhere;min-width:0}
table.lines tr.grp td{background:#f4f0e6;padding-top:7px;padding-bottom:7px}
table.lines .gh{display:flex;justify-content:space-between;align-items:baseline;gap:10px}
table.lines .gh b{font-size:14px;min-width:0;overflow-wrap:anywhere}
table.lines .gh span{font-size:12.5px;color:var(--ink2);white-space:nowrap}
table.lines .gs{font-size:12px;color:var(--ink3);margin-top:1px;overflow-wrap:anywhere}
table.dt td.brc{max-width:150px;overflow:hidden;text-overflow:ellipsis}
.toolbar select.brsel{max-width:220px}
.sthead{padding:10px 14px 9px;border-bottom:1px solid var(--rule);background:#faf8f2}
.sthead .tt{font-size:15px;font-weight:700;overflow-wrap:anywhere}
.sthead .ss{font-size:12.5px;color:var(--ink2);margin-top:1px;overflow-wrap:anywhere}
.sthead .nums{display:flex;gap:6px 16px;flex-wrap:wrap;margin-top:5px;font-size:12.5px;color:var(--ink2)}
.sthead .nums b{color:var(--ink);font-size:14px;font-weight:600;margin-left:2px}
.sthead .nums b.green{color:var(--green)}.sthead .nums b.red{color:var(--red)}
.bbh{padding:9px 14px 6px;font-size:13.5px;font-weight:600;border-top:1px solid var(--rule2);display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}
.bbh span{font-weight:400;font-size:12px;color:var(--ink3)}
table.bb{width:100%;border-collapse:collapse;font-size:14px}
table.bb td{padding:7px 14px;border-top:1px solid var(--rule);vertical-align:top;overflow-wrap:anywhere}
table.bb td.n{text-align:right;white-space:nowrap;padding-left:0;width:1%}
table.bb em{display:block;font-style:normal;font-size:12px;color:var(--ink3)}
@media (max-width:1440px){table.dt td.brc{max-width:112px}table.dt td.items{max-width:150px}table.dt td.cust{max-width:132px}}
.sthead .nums .pay{margin-left:auto;font-weight:600}
/* 接口密钥与接口文档 */
.mono,.doc code,.secret code{font-family:"SF Mono",ui-monospace,Menlo,Consolas,"Liberation Mono",monospace;font-size:.92em}
.ptext.lead{font-size:13.5px;color:var(--ink2);line-height:1.6}
.row.keyrow .t{display:flex;align-items:center;gap:6px}.row.keyrow .t .nm{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row.keyrow .t .tag{flex-shrink:0}
.row.keyrow.off .t,.row.keyrow.off .d{color:var(--ink3)}
.row .red,.red{color:var(--red)}
.kvl>div{display:flex;gap:12px;padding:9px 14px;border-bottom:1px solid var(--rule);font-size:14px}
.kvl>div:last-child{border-bottom:0}
.kvl span{width:64px;flex-shrink:0;color:var(--ink2)}.kvl b{font-weight:500;min-width:0;overflow-wrap:anywhere}
.once .warnline{padding:10px 14px;background:var(--amber-bg);color:var(--amber);font-size:13.5px;border-bottom:1px solid #ead7b4}
.secret{padding:12px 14px;border-bottom:1px solid var(--rule)}.secret:last-child{border-bottom:0}
.secret .sl{font-size:12.5px;color:var(--ink2);margin-bottom:6px}
.secret .sv{display:flex;gap:8px;align-items:center}
.secret code{flex:1;min-width:0;display:block;padding:9px 10px;background:#f6f2e8;border:1px solid var(--rule2);border-radius:4px;font-size:13.5px;line-height:1.45;word-break:break-all;user-select:all;-webkit-user-select:all}
.secret .btn{flex-shrink:0}
.keyops form.row{align-items:center}
.adminlinks{font-size:13.5px;margin-top:14px}.adminlinks a{color:var(--green);display:inline-block;padding:8px 2px}
@media (min-width:1024px){.adminlinks{display:none}}
table.dt td.no .src{display:inline-block;margin-left:4px;font-size:10.5px;line-height:14px;padding:0 3px;border:1px solid var(--blue);color:var(--blue);border-radius:3px;vertical-align:1px}
table.lines em.lnote{color:var(--amber)}
.doc{padding:2px 16px 18px;font-size:14.5px;line-height:1.7}
.sec.doc>h2{display:block;font-size:17px;font-weight:700;margin:26px 0 8px;padding:16px 0 0;border-bottom:0;border-top:1px solid var(--rule)}
.sec.doc>h2:first-child{margin-top:8px;border-top:0}
.doc h3{font-size:15px;margin:18px 0 6px}
.doc p{margin:8px 0}.doc ul,.doc ol{margin:8px 0 8px 20px}.doc li{margin:3px 0}
.doc code{background:#f1ede3;padding:1px 4px;border-radius:3px;overflow-wrap:anywhere}
.doc pre{margin:10px 0;padding:10px 12px;background:#f6f2e8;border:1px solid var(--rule);border-radius:4px;overflow-x:auto;-webkit-overflow-scrolling:touch;font-size:12.5px;line-height:1.55}
.doc pre code{background:none;padding:0;font-size:inherit;overflow-wrap:normal;white-space:pre}
.doc a{color:var(--green);text-decoration:underline;text-underline-offset:2px}
.doc .tw{overflow-x:auto;margin:10px 0;-webkit-overflow-scrolling:touch}
.doc table{border-collapse:collapse;font-size:13px;line-height:1.5;min-width:100%}
.doc th{background:var(--head);font-weight:600;text-align:left;white-space:nowrap}
.doc th,.doc td{border:1px solid var(--rule);padding:5px 8px;vertical-align:top}
.doc td:first-child{white-space:nowrap}
.doc blockquote{margin:8px 0;padding:4px 10px;border-left:3px solid var(--rule2);color:var(--ink2)}
/* 零售 */
.seg.kinds{margin-top:4px}
.seg.kinds .n{display:inline-block;min-width:18px;padding:0 5px;margin-left:2px;border-radius:9px;background:var(--amber-bg);color:var(--amber);font-size:12px;line-height:18px;text-align:center;font-weight:600}
.oc .l3 .srcl{display:inline-block;font-size:11.5px;line-height:16px;padding:0 5px;margin-right:6px;border:1px solid var(--rule2);border-radius:3px;color:var(--ink2);vertical-align:1px}
.form .f:has(+ .buyerhit:not([hidden])){border-bottom:0}
.form .f.buyerhit{min-height:0;padding-top:0;padding-bottom:10px;font-size:13px;color:var(--green)}
.form .f.buyerhit #buyerinfo{overflow-wrap:anywhere;min-width:0}
.form .f.buyerhit .muted{color:var(--ink3)}
.achips{display:flex;flex-direction:column;gap:6px;flex:1;min-width:0}
.achip{text-align:left;font-size:13.5px;line-height:1.4;padding:7px 10px;border:1px solid var(--rule2);border-radius:5px;background:#fff;color:var(--ink2);cursor:pointer;overflow-wrap:anywhere}
.achip.on{border-color:var(--green);background:var(--green-bg);color:var(--green)}
.rp{padding:10px 14px 6px;border-bottom:1px solid var(--rule)}.rp:last-child{border-bottom:0}
.rp-h{display:flex;align-items:baseline;gap:8px;min-width:0}.rp-h b{font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.rp-h span{font-size:12px;color:var(--ink3);white-space:nowrap}
.rk{display:flex;align-items:center;gap:8px;padding:6px 0}
.rk .g{width:48px;font-weight:600;font-size:14px}
.rk .pr{width:52px;font-size:14px;color:var(--ink2);white-space:nowrap}
.rk select{flex:1;min-width:0;height:34px;border:1px solid var(--rule2);border-radius:5px;padding:0 24px 0 9px;font-size:14px;color:var(--ink2);text-overflow:ellipsis;-webkit-appearance:none;appearance:none;background:#fff url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="10" height="6"><path d="M1 1l4 4 4-4" stroke="%238a8274" fill="none" stroke-width="1.5"/></svg>') no-repeat right 8px center}
.rk.on .g{color:var(--green)}
.stp.sm{height:34px;flex-shrink:0}.stp.sm button{width:34px;height:32px;font-size:18px}.stp.sm input{width:38px;height:32px;font-size:15px}
.rk.on .stp{border-color:var(--green)}
.form input.short{flex:0 0 84px;width:84px}
.form .f .pre{white-space:pre-wrap;overflow-wrap:anywhere;min-width:0}
.form .f .ship{flex:1}
table.lines tfoot tr.ship td{font-weight:400;color:var(--ink2);border-top:1px solid var(--rule)}
.row .d.rtl{color:var(--green)}
.imgup{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;flex:1;min-width:0}
.imgup .hint{flex-basis:100%;margin:0}
.imgup .qrprev{width:96px;height:96px;object-fit:contain;border:1px solid var(--rule);border-radius:5px;background:#fff}
.imgup .phprev{width:72px;height:72px;object-fit:cover;border:1px solid var(--rule);border-radius:5px}
.packs{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}
.packs .pkh,.packs .pkr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 44px;gap:8px;align-items:center}
.packs .pkh span{font-size:12px;color:var(--ink3)}
.packs .pkh span:last-child{text-align:center}
.form .packs input[type=text]{width:100%}
.packs .chk{justify-content:center}
.packs .hint{margin-top:2px}
.form .packs input[type=text]{border:1px solid var(--rule2);border-radius:5px;padding:6px 8px;background:#fff;font-size:15px}
.form .packs input[type=text]:focus{border-color:var(--green)}
.form .f .chk+select{flex:0 0 96px}
.scopes{display:flex;flex-direction:column;gap:8px;flex:1;min-width:0}
.scopes .chk{flex-wrap:wrap}.scopes .chk .hint{flex-basis:100%;padding-left:28px;margin-top:-4px}
.kindsw{display:inline-flex;border:1px solid var(--rule2);border-radius:5px;overflow:hidden;background:var(--card)}
.kindsw a{font-size:13.5px;padding:5px 12px;color:var(--ink2);border-left:1px solid var(--rule2);line-height:20px}
.kindsw a:first-child{border-left:0}
.kindsw a.on{background:var(--ink);color:#fff}
table.dt td.no .src.rt{border-color:var(--amber);color:var(--amber)}
.summary b.amber{color:var(--amber)}
