:root{--bg:#F4F4F2;--surface:#fff;--ink:#1D2321;--ink-2:#3B4441;--muted:#6E7673;--faint:#9AA19E;--line:#E7E3DC;--line-2:#F1EEE9;
--brand:#0D0D0E;--brand-2:#2A2A2E;--brand-soft:#F1F1EF;--red:#D43327;--price:#D43327;--warn:#B7791F;--err:#C0392B;--ok:#2E7D4F;--cn:#C7652F;
--font:-apple-system,BlinkMacSystemFont,"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans CJK SC",Arial,sans-serif}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.55 var(--font);-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
h1,h2,h3{margin:0;line-height:1.3}
img{max-width:100%;display:block}
[hidden]{display:none!important}
.num{font-variant-numeric:tabular-nums}
.layout{display:grid;grid-template-columns:224px 1fr;min-height:100vh}
.side{background:#0D0D0E;color:#C9D1CD;padding:18px 12px;position:sticky;top:0;height:100vh;overflow-y:auto}
.side-logo{display:flex;align-items:center;gap:10px;padding:4px 10px 18px;color:#fff;font-weight:700;font-size:16px}
.side-logo i{width:28px;height:28px;border-radius:50%;background:var(--red);display:grid;place-items:center;font-style:normal}
.side h6{margin:16px 10px 6px;font-size:11px;color:#7D8A84;font-weight:600;letter-spacing:.08em}
.side a{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:8px;font-size:14px}
.side a:hover{background:rgba(255,255,255,.06);color:#fff}
.side a[aria-current]{background:var(--red);color:#fff}
.side a b{margin-left:auto;background:var(--price);color:#fff;font-size:11px;border-radius:9px;padding:0 6px;line-height:18px;min-width:18px;text-align:center}
.side svg{flex:none;opacity:.85}
.side-product-root{margin:2px 0}
.side-product-root summary{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:8px;cursor:pointer;list-style:none;font-size:14px}
.side-product-root summary::-webkit-details-marker{display:none}
.side-product-root summary::after{content:'⌄';margin-left:auto;color:#7D8A84;line-height:1;transform:rotate(-90deg)}
.side-product-root[open] summary::after{transform:none}
.side-product-root summary:hover{background:rgba(255,255,255,.06);color:#fff}
.side-product-root.active>summary{color:#fff;font-weight:600}
.main{min-width:0}
.topbar{display:flex;align-items:center;gap:12px;padding:0 24px;height:58px;background:var(--surface);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}
.topbar h1{font-size:17px}
.topbar .sp{flex:1}
.topbar .menu-btn{display:none;border:0;background:none;padding:6px;cursor:pointer}
.content{padding:22px 24px 60px;max-width:1400px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:36px;padding:0 14px;border-radius:9px;border:1px solid var(--line);background:#fff;font-weight:600;font-size:13.5px;cursor:pointer;white-space:nowrap}
.btn:hover{border-color:var(--ink-2)}
.btn-primary{background:var(--brand);border-color:var(--brand);color:#fff}.btn-primary:hover{background:var(--brand-2)}
.btn-danger{color:var(--err);border-color:#F0D3CF}.btn-danger:hover{background:#FDECEA;border-color:var(--err)}
.btn-accent{background:var(--price);border-color:var(--price);color:#fff}
.btn-sm{height:30px;padding:0 10px;font-size:12.5px;border-radius:8px}
.card{background:var(--surface);border:1px solid var(--line);border-radius:12px}
.card-h{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 18px;border-bottom:1px solid var(--line-2)}
.card-h h2{font-size:15px}
.card-b{padding:16px 18px}
.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}
.kpi{padding:16px 18px}
.kpi span{font-size:12.5px;color:var(--muted)}
.kpi b{display:block;font-size:24px;margin-top:4px;font-variant-numeric:tabular-nums;letter-spacing:-.01em}
.kpi small{color:var(--faint);font-size:12px}
.cols{display:grid;grid-template-columns:2fr 1fr;gap:16px;margin-bottom:16px}
.cols-2{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}
.tbl{width:100%;border-collapse:collapse;font-size:13.5px}
.tbl th{font-size:12px;color:var(--muted);font-weight:500;text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);white-space:nowrap;background:#FBFAF8}
.tbl td{padding:10px 12px;border-bottom:1px solid var(--line-2);vertical-align:middle}
.tbl tr:last-child td{border-bottom:0}
.tbl tr:hover td{background:#FCFBF9}
.tbl .r{text-align:right}
.tbl img.th{width:40px;height:40px;border-radius:8px;object-fit:cover;background:var(--line-2)}
.tbl-wrap{overflow-x:auto}
.badge{display:inline-block;padding:1px 8px;border-radius:999px;font-size:12px;font-weight:600;background:var(--line-2);color:var(--ink-2);white-space:nowrap}
.b-pending,.b-new,.b-loading{background:#FFF4E0;color:#8A5A00}.b-paid,.b-processing,.b-contacted,.b-shipping,.b-customs{background:#E7F0FB;color:#1F4E8C}
.b-shipped,.b-scheduled,.b-arrived,.b-active,.b-formed{background:#E4F0E8;color:#1F5A3A}.b-completed,.b-done,.b-received{background:#EEF0EE;color:#46504C}
.b-cancelled,.b-refunded,.b-archived{background:#F4EEEE;color:#8E4B4B}.b-draft{background:#EEE;color:#666}
.low{color:var(--warn);font-weight:700}.out{color:var(--err);font-weight:700}
.filters{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:14px}
.input,input.input,select.input,textarea.input{height:36px;padding:0 10px;border:1px solid var(--line);border-radius:8px;background:#fff;outline:0;font-size:13.5px;min-width:0}
textarea.input{height:auto;padding:8px 10px;min-height:80px;width:100%;resize:vertical}
.input:focus{border-color:var(--brand)}
.hall-status-select{width:88px;font-weight:700;cursor:pointer}
.hall-status-select.is-active{color:#187347;background:#EEF8F1;border-color:#BEDDC9}
.hall-status-select.is-inactive{color:#B42318;background:#FFF1F0;border-color:#EAC6C2}
.variant-builder.product-only{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:end;gap:10px;padding:12px;border:1px solid var(--line);border-radius:10px;background:#FAFAF7}
.form .variant-builder label{display:flex;flex-direction:column;gap:4px;min-width:180px;flex:1;font-size:12px;color:var(--ink-2)}
.variant-builder .hint{flex-basis:100%}
.apparel-variants-link{grid-column:span 4;align-self:end;width:max-content}
.vtable td{min-width:92px}.vtable td:first-child{min-width:155px}
.variant-image-cell{min-width:140px!important}.variant-image-cell input[type=file]{display:block;width:140px;font-size:11px;margin-top:5px}
.variant-image-preview{width:58px;height:58px;border:1px solid var(--line);border-radius:8px;object-fit:cover;background:#fff}
.variant-image-cell [data-vimage-remove]{margin-top:4px;padding:3px 7px;font-size:11px}
.tabs{display:flex;gap:4px;margin-bottom:14px;flex-wrap:wrap}
.tabs a{padding:6px 12px;border-radius:8px;font-size:13px;color:var(--ink-2);background:#fff;border:1px solid var(--line)}
.tabs a[aria-current]{background:var(--ink);color:#fff;border-color:var(--ink)}
.tabs a small{opacity:.7;margin-left:4px}
.form{display:grid;grid-template-columns:repeat(12,1fr);gap:12px 14px}
.form label{display:flex;flex-direction:column;gap:4px;font-size:12.5px;color:var(--ink-2);font-weight:500;grid-column:span 4}
.form label.s2{grid-column:span 2}.form label.s3{grid-column:span 3}.form label.s6{grid-column:span 6}.form label.s8{grid-column:span 8}.form label.s12{grid-column:span 12}
.form .input{width:100%}
.form .check{flex-direction:row;align-items:center;gap:6px;font-size:13.5px}
.hint{font-size:12px;color:var(--faint);font-weight:400}
.sec-t{grid-column:1/-1;font-size:13px;font-weight:700;color:var(--ink);padding-top:8px;border-top:1px dashed var(--line);margin-top:4px;display:flex;align-items:center;gap:8px}
.sec-t:first-child{border-top:0;padding-top:0;margin-top:0}
.lang-tabs{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.lang-tabs>div{display:flex;flex-direction:column;gap:8px;padding:12px;border:1px solid var(--line-2);border-radius:10px;background:#FCFBF9}
.lang-tabs h4{margin:0;font-size:12px;color:var(--muted)}
.lang-tabs label{grid-column:auto}
.product-lang-main{grid-template-columns:minmax(0,640px)}
.product-translations{grid-column:1/-1}
.product-translations summary{width:fit-content;cursor:pointer;color:var(--muted);font-size:12.5px}
.product-translations summary:hover{color:var(--ink)}
.product-translations summary .hint{margin-left:6px}
.product-lang-extra{grid-template-columns:repeat(2,minmax(0,1fr));padding-top:12px}
.product-only{grid-column:1/-1;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:12px 14px}
.product-only>.sec-t:first-child{border-top:1px dashed var(--line);padding-top:8px;margin-top:4px}
.variant-section{flex-wrap:wrap}
.flash{padding:10px 14px;border-radius:10px;margin-bottom:12px;font-size:13.5px}
.flash-ok{background:#E4F0E8;color:#1F5A3A}.flash-error{background:#FDECEA;color:#9B2C20}
.imgs{display:flex;gap:10px;flex-wrap:wrap}
.imgs .im{position:relative;width:96px}
.imgs .im img{width:96px;height:96px;border-radius:10px;object-fit:cover;border:1px solid var(--line)}
.imgs .im label{flex-direction:row;font-size:12px;margin-top:4px;gap:4px;align-items:center}
.imgs .im .first{position:absolute;left:4px;top:4px;background:var(--brand);color:#fff;font-size:11px;padding:0 6px;border-radius:4px}
.vtable input.input{height:32px;width:100%}
.variant-size-pair{display:flex;gap:5px;min-width:165px}
.variant-size-pair input.input:first-child{width:75px;flex:none}
.variant-size-pair input.input:last-child{width:85px;flex:1;min-width:0}
.vtable td{padding:6px 6px}
.cmp-edit{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}
.cmp-edit>div{border-radius:10px;padding:12px;display:grid;grid-template-columns:1fr 1fr;gap:10px;align-content:start}
.cmp-edit .cn{background:#FBF0E8}.cmp-edit .jp{background:#EEF1F4}.cmp-edit .ours{background:#FDEEE8;display:flex;flex-direction:column;gap:6px}
.cmp-edit h4{grid-column:1/-1;margin:0;font-size:13px}
.cmp-edit label{grid-column:span 1}.cmp-edit label.w{grid-column:1/-1}
.cmp-edit .prev{width:64px;height:64px;border-radius:8px;object-fit:cover;border:1px solid var(--line)}
.big-save{font-size:26px;font-weight:800;color:var(--price)}
.bar-chart{display:flex;align-items:flex-end;gap:4px;height:180px;padding-top:10px}
.bar-chart .col{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;height:100%;justify-content:flex-end;min-width:0}
.bar-chart .b{width:100%;max-width:26px;background:var(--ink);border-radius:4px 4px 0 0;min-height:2px;position:relative}
.bar-chart .col:hover .b{background:var(--price)}
.bar-chart .col span{font-size:10px;color:var(--faint);white-space:nowrap}
.bar-chart .col .tip{display:none;position:absolute;bottom:100%;left:50%;transform:translateX(-50%);background:var(--ink);color:#fff;font-size:11px;padding:2px 6px;border-radius:4px;white-space:nowrap;margin-bottom:4px}
.bar-chart .col:hover .tip{display:block}
.hbar{height:8px;background:var(--line-2);border-radius:4px;overflow:hidden;min-width:60px}
.hbar i{display:block;height:100%;background:var(--red);border-radius:4px}
.list-row{display:flex;justify-content:space-between;gap:10px;padding:9px 0;border-bottom:1px solid var(--line-2);font-size:13.5px;align-items:center}
.list-row:last-child{border-bottom:0}
.empty{padding:30px;text-align:center;color:var(--faint)}
.kv{display:grid;grid-template-columns:110px 1fr;gap:6px 12px;font-size:13.5px}
.kv dt{color:var(--muted)}.kv dd{margin:0}
.timeline{font-size:13px}
.timeline div{padding:6px 0 6px 14px;border-left:2px solid var(--line);position:relative}
.timeline div::before{content:"";position:absolute;left:-5px;top:12px;width:8px;height:8px;border-radius:50%;background:var(--brand)}
.timeline small{color:var(--faint);display:block}
.inline-form{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.login-wrap{min-height:100vh;display:grid;place-items:center;padding:20px}
.login-card{width:100%;max-width:380px;padding:28px}
.login-card form{display:flex;flex-direction:column;gap:12px;margin-top:16px}
.login-card .input{height:42px}
.pager{display:flex;gap:6px;justify-content:center;padding:16px}
.pager a,.pager span{min-width:32px;height:32px;display:grid;place-items:center;border:1px solid var(--line);border-radius:8px;background:#fff;padding:0 8px}
.pager [aria-current]{background:var(--ink);color:#fff}
.steps{display:flex;gap:0;margin:4px 0 14px;flex-wrap:wrap}
.steps span{padding:6px 14px;font-size:12.5px;background:#fff;border:1px solid var(--line);margin-left:-1px;color:var(--faint)}
.steps span:first-child{border-radius:8px 0 0 8px}.steps span:last-child{border-radius:0 8px 8px 0}
.steps span.on{background:var(--red);color:#fff;border-color:var(--red);font-weight:700}
@media (max-width:900px){
  .layout{grid-template-columns:1fr}
  .side{position:fixed;left:0;top:0;bottom:0;width:240px;z-index:50;transform:translateX(-100%);transition:transform .2s}
  body.nav-open .side{transform:none;box-shadow:0 0 0 100vmax rgba(0,0,0,.35)}
  .topbar{padding:0 14px}
  .topbar .menu-btn{display:block}
  .content{padding:14px 12px 60px}
  .kpis{grid-template-columns:repeat(2,1fr)}
  .cols,.cols-2{grid-template-columns:1fr}
  .form label,.form label.s2,.form label.s3,.form label.s6,.form label.s8{grid-column:span 12}
  .lang-tabs,.cmp-edit{grid-template-columns:1fr}
  .product-lang-main,.product-lang-extra{grid-template-columns:1fr}
  .kpi b{font-size:20px}
  .hide-sm{display:none}
  .topbar{gap:8px}
  .topbar h1{font-size:16px;white-space:nowrap;min-width:0;overflow:hidden;text-overflow:ellipsis}
  .topbar .btn{padding-left:10px;padding-right:10px;white-space:nowrap}
  .tbl td{min-width:4.6em}                          /* 手机上表格横向滚动，不把姓名、金额挤成两行 */
  .tbl td.r,.tbl td.num,.tbl td:first-child{white-space:nowrap}
  .tbl-wrap{-webkit-overflow-scrolling:touch}
}
@media print{.side,.topbar,.no-print{display:none!important}.layout{display:block}.content{padding:0}body{background:#fff}}

/* 分类管理：拖放树与行内操作 */
.cat-tip{padding:12px 14px;margin-bottom:14px;border-radius:10px;background:#FFF8EC;color:var(--ink-2);font-size:13px;line-height:1.6}
.cat-feedback{padding:9px 12px;margin-bottom:12px;border-radius:8px;background:#E4F0E8;color:#1F5A3A;font-size:13px}
.cat-feedback.error{background:#FDECEA;color:#9B2C20}
.cat-section{margin-bottom:16px;overflow:visible}
.cat-section-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 18px;border-bottom:1px solid var(--line-2)}
.cat-section-head h2{margin:0;font-size:16px}.cat-section-head .hint{margin-left:8px}
.cat-tree,.cat-children{list-style:none;padding:0;margin:0}
.cat-root+.cat-root{border-top:1px solid var(--line-2)}
.cat-children{margin-left:35px;border-left:1px solid var(--line-2)}
.cat-child+.cat-child{border-top:1px solid var(--line-2)}
.cat-row{min-height:54px;display:flex;align-items:center;gap:8px;padding:7px 16px;position:relative;background:#fff}
.cat-root>.cat-row{background:#FCFBF9}
.cat-child>.cat-row{padding-left:12px}
.cat-grip,.cat-fold{border:0;background:transparent;color:var(--muted);width:25px;height:30px;display:grid;place-items:center;flex:none;font-size:17px}
.cat-grip{cursor:grab;letter-spacing:-4px;padding-right:5px;touch-action:none;user-select:none}.cat-grip:active{cursor:grabbing}
.cat-is-dragging,.cat-is-dragging *{user-select:none!important;cursor:grabbing!important}
.cat-fold{cursor:pointer;font-size:22px}.cat-branch{width:25px;flex:none;text-align:center;color:#BBB}
.cat-main{display:flex;align-items:center;gap:9px;flex:1;min-width:0;flex-wrap:wrap}
.cat-name{font-size:14px}.cat-path{font-size:12px;color:var(--faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:240px}
.cat-count{color:var(--muted);font-size:12px;white-space:nowrap}
.cat-actions{display:flex;align-items:center;gap:5px;flex:none}.cat-delete{margin:0}.cat-delete-btn{color:var(--err)}
.cat-row:hover{background:#F8F7F4}.cat-node.dragging>.cat-row{opacity:.4}
.cat-row.drop-before{box-shadow:inset 0 3px var(--red);background:#FFF5F1}
.cat-row.drop-after{box-shadow:inset 0 -3px var(--red);background:#FFF5F1}
.cat-row.drop-inside{outline:2px solid var(--red);outline-offset:-3px;background:#FFF0EB}
.cat-editor{padding:14px 18px 16px;background:#FAF9F7;border-top:1px solid var(--line-2)}
.cat-editor[hidden],.cat-children[hidden],.cat-feedback[hidden]{display:none}
.cat-editor h3{font-size:13px;margin:0 0 12px}.cat-top-editor{border-bottom:1px solid var(--line-2)}
.cat-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:12px}
.cat-form-grid label{display:flex;flex-direction:column;gap:5px;font-size:12px;color:var(--ink-2)}
.cat-form-grid .input{width:100%}.cat-extra{margin:8px 0 12px}.cat-extra summary{width:fit-content;cursor:pointer;color:var(--muted);font-size:12px;margin-bottom:10px}
.cat-form-actions{display:flex;align-items:center;gap:8px}.cat-check{display:flex;align-items:center;gap:5px;margin-right:auto;font-size:13px;color:var(--ink-2)}
.cat-empty{padding:25px 18px;color:var(--faint);font-size:13px}
@media(max-width:750px){.cat-row{flex-wrap:wrap;padding:9px 12px}.cat-main{flex-basis:calc(100% - 75px)}.cat-count{margin-left:58px}.cat-actions{margin-left:auto}.cat-children{margin-left:22px}.cat-form-grid{grid-template-columns:1fr}.cat-path{max-width:180px}}

.b-collecting{background:#FBEBE9;color:#B8281D}.b-negotiating{background:#F0E6F6;color:#6E3D8F}.b-failed{background:#EEE;color:#777}
.b-new{background:#FBEBE9;color:#B8281D}

.vids{display:flex;gap:14px;flex-wrap:wrap}
.vitem{width:150px;display:flex;flex-direction:column;gap:6px}
.vthumb{position:relative;border-radius:10px;overflow:hidden;background:#222;border:1px solid var(--line)}
.vthumb.v{aspect-ratio:9/16}.vthumb.h{aspect-ratio:16/9}
.vthumb img{width:100%;height:100%;object-fit:cover}
.vthumb .vplat{position:absolute;left:6px;bottom:6px;background:rgba(0,0,0,.7);color:#fff;font-size:11px;padding:1px 6px;border-radius:4px}
.vthumb .first{position:absolute;left:6px;top:6px;background:var(--red);color:#fff;font-size:11px;padding:0 6px;border-radius:4px}
.vitem .input{height:30px;font-size:12.5px}
.hp-cat{border:1px solid var(--line);border-radius:12px;padding:12px 14px;background:#FCFCFB}
.hp-cat.off{opacity:.55}
.hp-cat-h{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:10px}
.hp-picks{display:flex;gap:10px;flex-wrap:wrap;align-items:stretch}
.hp-pick{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:6px 8px;width:260px}
.hp-pick.dim{opacity:.5}
.hp-pick img{width:40px;height:40px;border-radius:8px;object-fit:cover;flex:none}
.hp-n{width:20px;height:20px;border-radius:50%;background:var(--red);color:#fff;font-size:11px;display:grid;place-items:center;flex:none}
.hp-name{flex:1;min-width:0;font-size:12.5px;line-height:1.35;overflow:hidden}
.hp-ops{display:flex;gap:2px}
.hp-ops .btn{height:24px;padding:0 6px}
.home-flags{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;padding:12px 14px;border:1px solid var(--line-2);border-radius:10px;background:#FCFBF9}
.home-flags label.check{align-items:flex-start;gap:8px;padding:8px 12px;border:1px solid var(--line);border-radius:8px;background:#fff;cursor:pointer}
.home-flags label.check input{margin-top:3px}
.home-flags label.check span{display:flex;flex-direction:column;gap:2px}
.home-flags label.check b{font-size:13.5px;color:var(--ink)}
.home-flags small{font-size:11.5px;font-weight:400}
.home-flags>a{margin-left:auto;font-size:12px}
@media (max-width:900px){.home-flags label.check{flex:1 1 100%}.home-flags>a{margin-left:0}}
/* 许愿墙横幅设置 */
.wh-prev{position:relative;border-radius:14px;overflow:hidden;background:#0D0D0E;color:#fff;padding:32px 34px;display:grid;grid-template-columns:1.3fr 1fr;gap:24px;align-items:end;min-height:220px}
.wh-prev.has-img{background:linear-gradient(90deg,rgba(13,13,14,var(--wh-ov,.55)) 0%,rgba(13,13,14,calc(var(--wh-ov,.55) * .75)) 45%,rgba(13,13,14,calc(var(--wh-ov,.55) * .25)) 100%),var(--wh-img) center/cover no-repeat,#0D0D0E}
.wh-prev .wh-k{font-size:10.5px;font-weight:700;letter-spacing:.18em;color:#D43327}
.wh-prev b#whPT{display:block;font-size:28px;line-height:1.2;margin:8px 0 10px}
.wh-prev p{margin:0;font-size:12.5px;color:rgba(255,255,255,.75);max-width:32em}
.wh-prev .wh-btn{display:inline-block;margin-top:16px;background:#D43327;border-radius:999px;padding:9px 18px;font-size:13px;font-weight:700}
.wh-st{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.2);padding-top:12px}
.wh-st[hidden]{display:none}
.wh-st span{display:flex;flex-direction:column;font-size:11.5px;color:rgba(255,255,255,.65)}.wh-st b{font-size:24px;color:#fff}
.wh-uploads{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,2.2fr) minmax(0,1fr);gap:14px}
.upc{display:flex;flex-direction:column;gap:10px;padding:14px;border:1px solid var(--line);border-radius:14px;background:#FCFBF9;transition:opacity .15s}
.upc-h{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.upc-h b{font-size:13.5px;color:var(--ink)}
.chip{font-size:11px;color:var(--muted);background:#fff;border:1px solid var(--line);border-radius:999px;padding:2px 9px;white-space:nowrap}
.form .dz,.dz{position:relative;display:block;height:170px;border:1.5px dashed #D9D4CB;border-radius:12px;background:#fff;overflow:hidden;cursor:pointer;transition:border-color .15s,background .15s}
.dz:hover,.dz.drag{border-color:var(--red);background:#FFF7F6}
.dz img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.upc.sq .dz img{object-fit:contain;background:#0D0D0E}
.dz-empty{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:var(--muted);text-align:center;padding:12px}
.dz-empty b{font-size:13.5px;color:var(--ink)}.dz-empty small{font-size:11.5px}
.dz-ic{width:42px;height:42px;border-radius:50%;background:#FBECEA;color:var(--red);display:grid;place-items:center;margin-bottom:4px}
.dz.has{border-style:solid;border-color:var(--line)}
.dz.has .dz-empty{display:none}
.dz-over{position:absolute;right:10px;bottom:10px;display:none;align-items:center;gap:6px;background:rgba(13,13,14,.78);color:#fff;font-size:12px;font-weight:600;padding:6px 12px;border-radius:999px;backdrop-filter:blur(4px)}
.dz.has .dz-over{display:inline-flex}
.dz.has:hover .dz-over{background:var(--red)}
.upc-f{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:28px}
.upc-name{font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.upc-name.new{color:var(--ok);font-weight:600}
.rm-tg{display:inline-flex!important;flex-direction:row!important;align-items:center;gap:5px!important;font-size:12px!important;color:var(--muted)!important;border:1px solid var(--line);border-radius:999px;padding:3px 11px;cursor:pointer;background:#fff;white-space:nowrap;grid-column:auto!important}
.rm-tg input{accent-color:var(--red);margin:0}
.rm-tg:has(input:checked){color:var(--red)!important;border-color:var(--red);background:#FFF3F2}
.upc.removed .dz{opacity:.35;filter:grayscale(1)}
.wh-opts{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:14px}
.opt{display:flex;flex-direction:column;gap:10px;padding:14px;border:1px solid var(--line);border-radius:14px;background:#FCFBF9}
.opt-h{display:flex;align-items:center;justify-content:space-between}.opt-h b{font-size:13.5px}
.pill-v{font-size:12px;font-weight:700;color:var(--red);background:#FBECEA;border-radius:999px;padding:2px 10px;min-width:48px;text-align:center}
.rng{width:100%;accent-color:var(--red);height:22px;margin:0}
.rng-scale{display:flex;justify-content:space-between;font-size:11.5px;color:var(--faint)}
.input-ic{position:relative}.input-ic svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--faint)}.input-ic .input{padding-left:36px;width:100%}
@media (max-width:900px){.wh-prev{grid-template-columns:1fr;padding:22px}.wh-uploads,.wh-opts{grid-template-columns:1fr}.dz{height:150px}.upc.sq .dz{height:190px}}
.wh-prev.has-img .wh-st{background:rgba(13,13,14,.35);backdrop-filter:blur(6px);border-radius:10px;border-top:0;padding:10px 12px}
.upc-name.del{color:var(--red);font-weight:600}
/* 首页轮播编辑 */
.sl-sum{display:flex;flex-direction:column;gap:2px;margin-bottom:6px}.sl-sum>span:first-child{font-weight:600}
.sl-ed summary{list-style:none;display:inline-flex}.sl-ed summary::-webkit-details-marker{display:none}
.sl-ed[open] summary{background:var(--ink);color:#fff;border-color:var(--ink)}
.sl-ed form{margin-top:10px;padding:14px;border:1px solid var(--line);border-radius:12px;background:#FCFBF9;min-width:640px}
.sl-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:18px}
.sl-col{display:flex;flex-direction:column;gap:8px}
.sl-t{font-size:13px}.sl-t .hint{font-weight:400}
.sl-lang{display:grid;grid-template-columns:22px 1fr 1fr;gap:6px;align-items:center}.sl-lang span{font-size:12px;color:var(--muted);font-weight:700}
.sl-pics{display:flex;gap:8px;flex-wrap:wrap}
.sl-pic{position:relative;cursor:pointer}.sl-pic input{position:absolute;opacity:0}
.sl-pic img{width:64px;height:64px;border-radius:10px;object-fit:cover;border:2px solid var(--line);display:block;background:#fff}
.sl-pic input:checked+img{border-color:var(--red);box-shadow:0 0 0 3px #FBECEA}
.sl-pic i{position:absolute;left:4px;bottom:4px;font-style:normal;font-size:10px;background:rgba(13,13,14,.7);color:#fff;border-radius:4px;padding:0 4px}
.sl-row{display:flex;gap:10px;flex-wrap:wrap}.sl-row label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--muted);flex:1}
.sl-row input[type=color]{width:56px;padding:2px;height:38px}
@media (max-width:900px){.sl-ed form{min-width:0}.sl-grid{grid-template-columns:1fr}}
/* 弹窗活动 */
.pp-rules{display:flex;flex-direction:column;gap:4px;margin-bottom:14px;font-size:13px;color:var(--ink-2);background:#FCFBF9}
.pp-th{display:block;width:56px;height:56px;border-radius:10px}
.ppe{display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:16px;align-items:start}
.ppe-main{display:flex;flex-direction:column;gap:14px;min-width:0}
.ppe-sec{display:flex;flex-direction:column;gap:12px}
.ppe-h{display:flex;align-items:center;justify-content:space-between;gap:10px}.ppe-h b{font-size:14.5px}
.ppe-row{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end}
.ppe label,.ppe .lbl{display:flex;flex-direction:column;gap:5px;font-size:12.5px;color:var(--ink-2);font-weight:500}
.ppe .grow{flex:1 1 220px}
.ppe .input{width:100%}
.sw{flex-direction:row!important;align-items:center;gap:8px!important;cursor:pointer;padding-bottom:8px}
.sw input{position:absolute;opacity:0}.sw i{width:40px;height:22px;border-radius:999px;background:#D9D4CB;position:relative;transition:background .2s}
.sw i::after{content:"";position:absolute;left:3px;top:3px;width:16px;height:16px;border-radius:50%;background:#fff;transition:left .2s}
.sw input:checked+i{background:var(--ok)}.sw input:checked+i::after{left:21px}
.lay-opts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.lay{position:relative;align-items:center;text-align:center;padding:12px;border:1.5px solid var(--line);border-radius:12px;cursor:pointer;background:#fff}
.lay input{position:absolute;opacity:0}.lay:has(input:checked){border-color:var(--red);background:#FFF7F6}
.lay b{font-size:12.5px;color:var(--ink)}
.lay-ic{width:64px;height:48px;border-radius:6px;border:1.5px solid #CFC9BF;display:grid;gap:3px;padding:4px;background:#fff}
.lay-ic i{background:#E9E4DB;border-radius:3px}.lay-ic em{height:4px;background:#D9D4CB;border-radius:2px}
.lay-card{grid-template-rows:1fr auto auto}
.lay-split{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}.lay-split i{grid-row:1/3}.lay-split em{align-self:center}
.lay-image em{display:none}.lay-image i{background:linear-gradient(135deg,#F2C9C4,#E9E4DB)}
.swatches{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.swatches label{cursor:pointer}.swatches input[type=radio]{position:absolute;opacity:0}
.swatches i{display:block;width:30px;height:30px;border-radius:50%;border:3px solid #fff;box-shadow:0 0 0 1px var(--line)}
.swatches input:checked+i{box-shadow:0 0 0 2px var(--ink)}
.swatches input[type=color]{width:42px;height:34px;padding:2px}
.ltabs{display:flex;gap:4px;border-bottom:1px solid var(--line)}
.ltabs button{border:0;background:none;padding:8px 14px;font-weight:600;color:var(--muted);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px}
.ltabs button[aria-current]{color:var(--ink);border-color:var(--red)}
.lpanel{display:flex;flex-direction:column;gap:10px}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chips label{flex-direction:row!important;cursor:pointer}.chips input{position:absolute;opacity:0}
.chips span{padding:6px 14px;border:1px solid var(--line);border-radius:999px;background:#fff;font-size:13px;color:var(--ink-2)}
.chips input:checked+span{background:var(--ink);border-color:var(--ink);color:#fff}
.num-suf{display:flex;align-items:center;gap:8px}.num-suf .input{width:80px}.num-suf em{font-style:normal;color:var(--muted)}
.ppe-save{display:flex;gap:8px;position:sticky;bottom:0;padding:12px 0;background:linear-gradient(transparent,var(--bg) 30%)}
.ppe-side{position:sticky;top:16px}
.ppe-side .card-b{display:flex;flex-direction:column;gap:12px}
.seg{display:inline-flex;border:1px solid var(--line);border-radius:999px;padding:2px}
.seg button{border:0;background:none;padding:4px 12px;border-radius:999px;font-size:12px;cursor:pointer;color:var(--muted)}
.seg button[aria-current]{background:var(--ink);color:#fff}
.pv-stage{background:repeating-linear-gradient(135deg,#EDEAE4 0 10px,#F4F2EE 10px 20px);border-radius:14px;padding:22px 14px;display:grid;place-items:center;min-height:460px;transition:padding .2s}
.pv-stage .pv-screen{width:100%;display:grid;place-items:center;background:rgba(13,13,14,.5);border-radius:10px;padding:18px 12px;min-height:420px}
.pv-stage.mobile .pv-screen{width:300px;border-radius:26px;border:8px solid #111;min-height:520px}
.pv-screen .pp{transform:none;max-height:none;width:100%;max-width:380px}
.pv-screen .pp-split{grid-template-columns:1fr}.pv-screen .pp-split .pp-img img{min-height:0;max-height:180px}
.pv-screen .pp-split .pp-body{text-align:center;padding:22px 20px 14px}.pv-screen .pp-split .pp-later{align-self:center}
@media (max-width:1100px){.ppe{grid-template-columns:1fr}.ppe-side{position:static;order:-1}}
/* 优惠券中心 / 积分 */
.cp-modes{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:14px}
.cp-modes>div{background:#FCFBF9;border:1px solid var(--line);border-radius:12px;padding:12px 14px;display:flex;flex-direction:column;gap:4px;font-size:12.5px;color:var(--ink-2)}
.cp-modes b{font-size:13.5px;color:var(--ink)}
.adm-tk{display:inline-flex;flex-direction:column;justify-content:center;min-width:120px;padding:8px 12px;border-radius:10px;background:var(--red);color:#fff}
.adm-tk b{font-size:18px;line-height:1.2}.adm-tk span{font-size:11.5px;opacity:.9}
.adm-tk.k-percent{background:#0D0D0E}.adm-tk.k-shipping{background:#07A35A}
.adm-tk.big{min-height:110px;align-items:center;text-align:center;margin:12px 0}.adm-tk.big b{font-size:34px}
.bar{height:4px;border-radius:2px;background:var(--line-2);margin-top:4px;overflow:hidden}.bar i{display:block;height:100%;background:var(--red)}
.ce{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:16px;align-items:start}
.ce-main{display:flex;flex-direction:column;gap:14px;min-width:0}
.ce-side{display:flex;flex-direction:column;gap:14px;position:sticky;top:16px}
.ce label,.ce .lbl{display:flex;flex-direction:column;gap:5px;font-size:12.5px;color:var(--ink-2);font-weight:500}
.ce .grow{flex:1 1 180px}.ce .input{width:100%}
.issue{display:flex;flex-direction:column;gap:10px}
.lay-opts.two{grid-template-columns:1fr 1fr}.lay-opts.two .lay{align-items:flex-start;text-align:left}
.pt-example{font-size:13px;color:var(--ink-2);background:#FBF1DC;border-radius:10px;padding:10px 12px}
@media (max-width:1100px){.ce{grid-template-columns:1fr}.ce-side{position:static}.cp-modes{grid-template-columns:1fr}}
.ce-side>.card-b{display:flex;flex-direction:column;gap:8px}
.ce-side .adm-tk.big{display:flex;width:100%}
.num-suf em{white-space:nowrap}.ce .num-suf .input{flex:1;width:auto;min-width:70px}
/* 商品图片与视频编辑 */
.media{display:flex;flex-direction:column;gap:6px;padding:16px;border:1px solid var(--line);border-radius:14px;background:#FCFBF9}
.md-row{display:flex;gap:18px;flex-wrap:wrap}
.md-col{display:flex;flex-direction:column;gap:8px}.md-col.grow{flex:1;min-width:280px}
.md-h{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.md-h b{font-size:13.5px}
.media .chip{font-size:11px;color:var(--muted);background:#fff;border:1px solid var(--line);border-radius:999px;padding:2px 9px}
.md-grid{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-start}
.ms{display:flex;flex-direction:column;gap:4px;position:relative}
.ms-box{position:relative;display:block;border:1.5px dashed #D9D4CB;border-radius:12px;background:#fff;overflow:hidden;cursor:pointer;transition:border-color .15s}
.ms-box:hover,.ms-box.drag{border-color:var(--red);background:#FFF7F6}
.ms-box img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ms-box.has{border-style:solid;border-color:var(--line)}
.ms-empty{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:var(--muted);font-size:12px;text-align:center;padding:6px}
.ms-empty b{font-weight:500}.ms-box.has .ms-empty{display:none}
.ms-over{position:absolute;right:6px;bottom:6px;display:none;background:rgba(13,13,14,.72);color:#fff;font-size:11px;padding:2px 8px;border-radius:999px}
.ms-box.has:hover .ms-over{display:block}
.ms.sq .ms-box{width:108px;aspect-ratio:1/1}.ms.sq.big .ms-box{width:188px}
.ms.wide .ms-box{width:100%;aspect-ratio:5/2}.ms.tall .ms-box{width:100%;aspect-ratio:3/4}
.ms-acts{display:flex;gap:4px;justify-content:center}
.ms-acts button{border:1px solid var(--line);background:#fff;border-radius:6px;font-size:11px;padding:1px 7px;cursor:pointer;color:var(--ink-2)}
.ms-acts [data-del]:hover{color:var(--red);border-color:var(--red)}
.ms-warn{font-size:11px;color:#9A6200;background:#FFF4DB;border-radius:6px;padding:3px 6px;max-width:220px;line-height:1.35}
.md-add{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;width:108px;aspect-ratio:1/1;border:1.5px dashed #D9D4CB;border-radius:12px;background:none;color:var(--muted);font-size:12px;cursor:pointer}
.md-add:hover{border-color:var(--red);color:var(--red)}
.md-dlist{display:flex;flex-direction:column;gap:10px}
.md-drow{display:grid;grid-template-columns:28px 1fr auto;gap:12px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px 12px}
.md-no{width:26px;height:26px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;font-size:12px;font-weight:700}
.md-pair{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,1fr);gap:12px;align-items:start}
.md-pair>div{display:flex;flex-direction:column;gap:4px}.md-sub{font-size:11.5px;color:var(--muted)}
.md-pair>.md-copy{grid-column:1/-1;display:grid;grid-template-columns:1fr 2fr;gap:10px;max-width:760px}
.md-copy label{font-size:12px;color:var(--muted)}
.md-copy .input{margin-top:4px}
@media (max-width:600px){.md-pair>.md-copy{grid-template-columns:1fr}}
.md-racts{display:flex;flex-direction:column;gap:4px}
.md-dadd{align-self:flex-start;margin-top:4px}
.md-video{display:flex;flex-direction:column;gap:8px}
.mv-cur{display:flex;gap:14px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px}
.mv-cur .vthumb{width:96px;flex:none}.mv-meta{display:flex;flex-direction:column;gap:8px;flex:1}
.media label{display:flex;flex-direction:column;gap:4px;font-size:12.5px;color:var(--ink-2)}
.media .ppe-row{display:flex;gap:12px;flex-wrap:wrap}.media .grow{flex:1 1 220px}
@media (max-width:900px){.md-drow{grid-template-columns:1fr}.md-racts{flex-direction:row}.md-pair{grid-template-columns:3fr 1.2fr}.ms.sq.big .ms-box{width:150px}.ms.sq .ms-box,.md-add{width:88px}}
.md-pair{max-width:760px}
/* 详情区视频模块 */
.md-adds{display:flex;gap:8px;flex-wrap:wrap;margin-top:4px}.md-adds .md-dadd{margin-top:0}
.md-drow.is-video{border-color:#0D0D0E;background:#FAFAF8}
.md-drow.is-video .md-no{background:var(--red);font-size:10px}
.mv-body{display:flex;flex-direction:column;gap:10px;min-width:0;max-width:760px}
.mv-top{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.mv-top b{display:flex;align-items:center;gap:4px;font-size:13.5px;white-space:nowrap}
.mv-top .input{flex:1;min-width:160px}
.mv-pair{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:14px;align-items:start}
.mv-side{display:flex;flex-direction:column;gap:6px}
.mv-now{position:relative;border-radius:10px;overflow:hidden;background:#111}
.mv-now.h{aspect-ratio:16/9}.mv-now.v{aspect-ratio:9/16;max-width:150px}
.mv-now img{width:100%;height:100%;object-fit:cover;opacity:.85}
.mv-now .pi{position:absolute;inset:0;display:grid;place-items:center;color:#fff}
.mv-now .vplat{position:absolute;left:6px;top:6px;background:rgba(0,0,0,.6);color:#fff;font-size:10.5px;border-radius:4px;padding:1px 6px}
.mv-now.empty{background:repeating-linear-gradient(135deg,#F1EFEA 0 8px,#F7F5F1 8px 16px);border:1.5px dashed #D9D4CB;display:grid;place-items:center;color:var(--muted);font-size:12px}
@media (max-width:900px){.mv-pair{grid-template-columns:1fr 1fr}}

/* ===== 商家中心 ===== */
.b-approved,.b-online,.b-ok{background:#E4F0E8;color:#1F5A3A}
.b-pending{background:#FFF4E0;color:#8A5A0B}
.b-rejected,.b-suspended{background:#FDECEA;color:#9B2C20}
.b-offline{background:#EEE;color:#666}
.err{color:var(--err)}.warn{color:var(--warn)}
em.req{color:var(--red);font-style:normal}
.form .s9,.form label.s9{grid-column:span 9}.form .s12{grid-column:span 12}.form label.s4{grid-column:span 4}
.mc .side-logo i{background:var(--red)}
.mc-who{display:flex;align-items:center;gap:10px;margin:0 6px 12px;padding:10px;border-radius:10px;background:rgba(255,255,255,.06)}
.mc-who img,.mc-who>span{width:34px;height:34px;border-radius:50%;object-fit:cover;flex:none;background:#333;color:#fff;display:grid;place-items:center;font-weight:700}
.mc-who div{display:flex;flex-direction:column;min-width:0}.mc-who b{color:#fff;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mc-who small{font-size:11px;color:#9AA19E}.mc-who .mst-approved{color:#7BC89A}.mc-who .mst-pending{color:#E6B35A}.mc-who .mst-rejected,.mc-who .mst-suspended{color:#F08A7E}
.mc-alert{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:12px;margin-bottom:12px;font-size:13.5px;line-height:1.6;border:1px solid transparent}
.mc-alert svg{flex:none;margin-top:2px}.mc-alert>div{flex:1}.mc-alert ul{margin:4px 0 0;padding-left:18px}
.mc-alert.info{background:#EEF4FB;color:#1E4A7A;border-color:#D7E5F5}
.mc-alert.ok{background:#E4F0E8;color:#1F5A3A}.mc-alert.warn{background:#FFF4E0;color:#7A4E08}.mc-alert.err{background:#FDECEA;color:#9B2C20}
.mc-alert a{text-decoration:underline}
a.mc-alert{align-items:center}a.mc-alert>span{font-weight:600;white-space:nowrap}
.mc-todo{display:flex;flex-direction:column;gap:0;margin-bottom:6px}
a.kpi{display:flex;flex-direction:column}a.kpi:hover{border-color:var(--ink)}.kpi b.err{color:var(--err)}
.mc-bk{display:flex;justify-content:space-between;align-items:center;gap:10px}.mc-bk>div{display:flex;flex-direction:column;min-width:0}
.mc-bk small{color:var(--faint);font-size:12px}.mc-bk .dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--red);margin-right:6px}
.mc-sec{margin-bottom:16px}
.mc-sec-h{display:flex;gap:12px;align-items:flex-start;margin-bottom:16px}
.mc-sec-h>b{width:28px;height:28px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;font-size:13px;flex:none}
.mc-sec-h h2{font-size:16px;margin:2px 0}.mc-sec-h p{margin:0}
.mc-h2{font-size:15px;margin:0 0 12px}
.mc-sub{font-size:12.5px;font-weight:600;color:var(--ink-2);margin:16px 0 8px}
.mc-entity{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.mc-radio{flex-direction:row!important;cursor:pointer}.mc-radio input{position:absolute;opacity:0}
.mc-radio span{flex:1;display:flex;flex-direction:column;gap:4px;padding:12px 14px;border:1.5px solid var(--line);border-radius:12px;background:#fff}
.mc-radio b{font-size:14px;color:var(--ink)}.mc-radio small{font-size:12px;color:var(--muted);font-weight:400}
.mc-radio input:checked+span{border-color:var(--red);background:#FFF7F6}
.mc-catpick{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.mc-catopt{display:flex;cursor:pointer}.mc-catopt input{position:absolute;opacity:0}
.mc-catopt span{flex:1;display:flex;flex-direction:column;gap:3px;padding:12px 14px;border:1.5px solid var(--line);border-radius:12px;background:#fff;position:relative}
.mc-catopt b{font-size:14px}.mc-catopt small{font-size:12px;color:var(--muted)}.mc-catopt small.must{color:var(--red);font-weight:600}
.mc-catopt input:checked+span{border-color:var(--ink);background:#F7F7F5}
.mc-catopt input:checked+span::after{content:"✓";position:absolute;right:12px;top:10px;font-weight:800}
.mc-pref-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:4px 8px;margin:10px 0 4px;padding:12px;border:1px solid var(--line);border-radius:12px;background:#FAFAF8;max-height:220px;overflow:auto}
.mc-pref-grid .check{display:flex;align-items:center;gap:5px;font-size:12.5px;cursor:pointer}
.mc-areas .chips{align-items:center}.mc-areas .chips .btn{height:30px}
.mc-docs{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}
.mc-doc{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:#fff}
.mc-doc>div{flex:1;display:flex;flex-direction:column;min-width:0}.mc-doc a{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mc-doc small{font-size:11.5px;color:var(--faint)}.mc-doc small.err{color:var(--err)}
.mc-doc.st-rejected{border-color:#F3C7C1;background:#FFF8F7}
.mc-doc-ic{width:36px;height:36px;border-radius:8px;background:var(--line-2);display:grid;place-items:center;font-size:10px;font-weight:800;color:var(--muted);flex:none}
.mc-ups{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.mc-up{display:flex;flex-direction:column;gap:4px;padding:14px;border:1.5px dashed #D9D4CB;border-radius:12px;background:#fff;font-size:13px;cursor:pointer}
.mc-up small{color:var(--muted);font-size:12px}.mc-up input{margin-top:6px;font-size:12px}
.mc-logo{width:96px;height:96px;border-radius:50%;overflow:hidden;background:var(--line-2);display:grid;place-items:center;border:1px solid var(--line)}
.mc-logo img{width:100%;height:100%;object-fit:cover}.mc-logo i{color:var(--faint)}
.mc-savebar{position:sticky;bottom:0;display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:12px 16px;margin:0 -4px;background:rgba(255,255,255,.94);backdrop-filter:blur(8px);border:1px solid var(--line);border-radius:12px;z-index:5}
.mc-savebar .hint{margin-right:auto}
.mc-apply fieldset,.mc-svc fieldset{border:0;padding:0;margin:0;min-width:0}
.mc-apply fieldset:disabled .mc-sec{opacity:.85}
.mc-srow{display:flex;align-items:center;gap:10px}.mc-srow img,.mc-srow>i{width:44px;height:44px;border-radius:8px;object-fit:cover;background:var(--line-2);flex:none}
.mc-srow>div{display:flex;flex-direction:column;min-width:0}.mc-srow small{color:var(--faint);font-size:12px}
.mc-status{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 16px;border:1px solid var(--line);border-radius:12px;background:#fff;margin-bottom:12px;font-size:13.5px}
.mc-status>span:not(.badge){flex:1}.mc-status-acts{display:flex;gap:6px}
.mc-chg{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.mc-chg span{font-size:12px;background:rgba(255,255,255,.7);border-radius:6px;padding:1px 8px}
.mc-svc-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:16px;align-items:start}
.mc-ltabs{display:flex;align-items:center;gap:4px;margin-bottom:12px;flex-wrap:wrap}
.mc-ltabs button{border:1px solid var(--line);background:#fff;border-radius:8px;padding:6px 12px;font-size:13px;cursor:pointer}
.mc-ltabs button[aria-current]{background:var(--ink);color:#fff;border-color:var(--ink)}.mc-ltabs .hint{margin-left:8px}
.mc-cover{display:grid;place-items:center;aspect-ratio:4/3;border:1.5px dashed #D9D4CB;border-radius:12px;overflow:hidden;cursor:pointer;background:#fff;position:relative}
.mc-cover img{width:100%;height:100%;object-fit:cover}.mc-cover span{display:flex;flex-direction:column;align-items:center;gap:4px;color:var(--muted)}
.mc-cover input{position:absolute;inset:0;opacity:0;cursor:pointer}
.mc-bkcard{margin-bottom:12px}.mc-bkcard.late{border-color:#F3C7C1}
.mc-bkform{display:flex;flex-direction:column;gap:8px}
.mc-seg{display:flex;flex-wrap:wrap;gap:4px}.mc-seg label{cursor:pointer}.mc-seg input{position:absolute;opacity:0}
.mc-seg span{display:inline-block;padding:5px 10px;border:1px solid var(--line);border-radius:8px;font-size:12.5px;background:#fff}
.mc-seg input:checked+span{background:var(--ink);color:#fff;border-color:var(--ink)}
.mc-qcats{display:flex;flex-direction:column;gap:8px}
.mc-qcat{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:10px}
.mc-qcat>div{display:flex;flex-direction:column;gap:2px}.mc-qcat small{font-size:12px;color:var(--muted)}.mc-qcat small.err{color:var(--err)}
.mc-qapply summary{list-style:none}.mc-qapply summary::-webkit-details-marker{display:none}
.mc-qapply form{display:flex;flex-direction:column;gap:8px;margin-top:8px;min-width:240px}
.mc-docup{display:flex;flex-direction:column;gap:8px;padding-top:12px;border-top:1px solid var(--line)}.mc-docup h3{font-size:14px;margin:0}
.mc-notice{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;border-bottom:1px solid var(--line-2)}
.mc-notice p{margin:4px 0;font-size:13px;color:var(--ink-2);white-space:pre-line}.mc-notice small{color:var(--faint);font-size:12px}
.mc-notice.unread{background:#FFFBF5}.mc-notice.unread b::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--red);margin-right:6px;vertical-align:middle}
.mc-auth .login-card.wide{max-width:520px}
.mc-auth-brand{display:flex;align-items:center;gap:10px}.mc-auth-brand span{font-weight:700;padding-left:10px;border-left:1px solid var(--line)}
.mc-auth-h{font-size:19px;margin:18px 0 6px}
.mc-auth .steps{margin:10px 0 14px}.mc-auth .steps span{padding:5px 10px;font-size:12px}
.mc-auth-links{display:flex;justify-content:space-between;margin-top:14px;font-size:13px}.mc-auth-links a{color:var(--muted)}.mc-auth-links a:hover{color:var(--ink)}
.mc-f{display:flex;flex-direction:column;gap:4px;font-size:12.5px;font-weight:500;color:var(--ink-2)}.mc-f em{color:var(--red);font-style:normal}
.mc-2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.mc-code{display:flex;gap:8px}.mc-code .input{flex:1}.mc-code .btn{flex:none;height:42px}
.code-msg.ok{color:var(--ok)}.code-msg.err,.pw-msg.err{color:var(--err)}
.mj-agree{white-space:pre-line;font-size:13px;line-height:1.8;color:var(--ink-2)}

/* ===== 后台 · 华人服务审核 ===== */
.svc-todo{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-bottom:16px}
.svc-todo a{display:flex;flex-direction:column;gap:2px;padding:14px;border-radius:12px;background:#fff;border:1px solid var(--line)}
.svc-todo b{font-size:24px;color:var(--faint)}.svc-todo span{font-size:12.5px;color:var(--muted)}
.svc-todo a.on{border-color:#F0D19A;background:#FFFAF0}.svc-todo a.on b{color:var(--warn)}
.svc-todo a.on.err{border-color:#F3C7C1;background:#FFF6F5}.svc-todo a.on.err b{color:var(--err)}
.svc-q{display:flex;justify-content:space-between;align-items:center;gap:10px}.svc-q>div{display:flex;flex-direction:column;min-width:0}.svc-q small{color:var(--faint);font-size:12px}
.sec-h{font-size:15px;margin:0 0 12px}
.md-wrap{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px;align-items:start}
.svc-review{border:1.5px solid #F0D19A;background:#FFFCF6;margin-bottom:16px}
.svc-check{margin:0 0 12px;padding-left:20px;font-size:13px;color:var(--ink-2);line-height:1.9}.svc-check a{text-decoration:underline}
.svc-decide{display:flex;flex-direction:column;gap:10px}
.svc-sub{font-size:12.5px;font-weight:600;color:var(--ink-2)}
.svc-reasons{display:flex;flex-wrap:wrap;gap:6px}.svc-reasons .chip{cursor:pointer;font-size:12px}.svc-reasons .chip:hover{border-color:var(--ink)}
.svc-btns{display:flex;gap:8px}
.svc-catf{justify-content:flex-end;flex-wrap:nowrap}
.svc-docline{display:flex;flex-direction:column;gap:6px}.svc-docline form{padding-left:46px}
.svc-mbar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:16px}
.svc-preview{display:grid;grid-template-columns:220px 1fr;gap:16px;margin-bottom:14px;padding:14px;background:#fff;border:1px solid var(--line);border-radius:12px}
.svc-preview img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px}.svc-preview h3{margin:0 0 4px;font-size:17px}
.svc-preview p{margin:0 0 6px}.svc-preview .price{color:var(--price)}
.svc-desc{font-size:13px;line-height:1.7;max-height:260px;overflow:auto}.svc-desc p{margin:0 0 8px}
.svc-diff td{vertical-align:top}.svc-diff td.new{background:#F2FAF4}.svc-dimg{width:140px;border-radius:8px}
.svc-opts{display:flex;flex-direction:column;gap:10px}.svc-opts>div{display:flex;flex-direction:column;gap:6px}
.svc-rules .input{width:100%}
@media (max-width:900px){
  .svc-todo{grid-template-columns:repeat(3,1fr)}
  .md-wrap,.mc-svc-grid,.svc-preview{grid-template-columns:1fr}
  .mc-entity,.mc-catpick,.mc-ups,.mc-2{grid-template-columns:1fr}
  .form .s9,.form label.s9,.form label.s4{grid-column:span 12}
  .svc-catf{flex-wrap:wrap}
}
.svc-diff{margin-bottom:14px;background:#fff;border-radius:10px;overflow:hidden}
.mc-bk,.svc-q{padding:10px 18px;border-bottom:1px solid var(--line-2)}
.mc-bk>div,.svc-q>div{display:block}.mc-bk small,.svc-q small{display:block;margin-top:2px}
.mc-bk:last-child,.svc-q:last-child{border-bottom:0}
.input-ic>span{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--muted);font-weight:600;pointer-events:none}.input-ic{display:block}

/* ===== 侧边栏业务模块 / 联系方式锁 ===== */
.side a.side-sub{padding:6px 10px 6px 38px;font-size:13px;color:#AEB6B2}
.side a.side-sub .dot{width:5px;height:5px;border-radius:50%;background:#5E6763;display:inline-block;margin-left:-14px;margin-right:9px}
.side a.side-sub[aria-current] .dot{background:#fff}
.pii-bar{position:relative;display:flex;align-items:center;gap:8px;margin-left:8px}
.pii-bar.on span{display:inline-flex;align-items:center;gap:5px;font-size:12.5px;color:var(--ok);font-weight:600}
.pii-bar summary{list-style:none;cursor:pointer;white-space:nowrap}.pii-bar summary::-webkit-details-marker{display:none}
.pii-pop{position:absolute;right:0;top:calc(100% + 8px);width:280px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 32px rgba(0,0,0,.14);padding:14px;display:flex;flex-direction:column;gap:8px;z-index:30}
.pii-pop p{margin:0;font-size:12px}
.pii-m{color:var(--muted);letter-spacing:.02em;border-bottom:1px dashed #D0CBC2;cursor:help}

/* ===== 华人服务 · 业务模块 ===== */
.biz-h{font-size:16px;margin:22px 0 12px}
.biz-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.biz-card{display:flex;flex-direction:column;gap:14px;padding:18px;transition:border-color .15s,transform .15s}
.biz-card:hover{border-color:var(--ink);transform:translateY(-2px)}
.biz-top{display:flex;align-items:center;gap:12px}.biz-top>div{flex:1;min-width:0;display:flex;flex-direction:column}
.biz-top b{font-size:16px}.biz-top small{font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.biz-ic{width:44px;height:44px;border-radius:12px;background:var(--line-2);display:grid;place-items:center;flex:none;color:var(--ink)}
.biz-ic.lg{width:60px;height:60px;border-radius:16px}
.biz-todo{background:#FFF4E0;color:#8A5A0B;font-size:12px;font-weight:700;border-radius:999px;padding:3px 10px;white-space:nowrap}
.biz-nums{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.biz-nums div{display:flex;flex-direction:column;gap:2px}.biz-nums b{font-size:20px}.biz-nums b.err{color:var(--err)}.biz-nums span{font-size:11.5px;color:var(--muted)}
.biz-q{display:flex;flex-wrap:wrap;gap:6px}.chip.warn{border-color:#F0D19A;background:#FFFAF0;color:#8A5A0B}
.biz-go{font-size:12.5px;font-weight:600;color:var(--ink-2);margin-top:auto}
.biz-head{display:flex;align-items:center;gap:16px;padding:18px 20px;margin-bottom:12px}
.biz-head-t{flex:1;min-width:0}.biz-head-t h2{font-size:20px;margin:0 0 4px}.biz-head-t p{margin:0}
.biz-head .biz-nums{min-width:360px}
.biz-switch{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}
.biz-switch a{font-size:12.5px;padding:4px 12px;border-radius:999px;border:1px solid var(--line);background:#fff;color:var(--ink-2)}
.biz-switch a[aria-current]{background:var(--red);border-color:var(--red);color:#fff}
.biz-tabs a{font-size:14px;padding:8px 16px}

/* ===== 用户管理 ===== */
.um-grid{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:16px;align-items:start}
.um-super{background:#1D2321;color:#fff}
.um-off td{opacity:.55}
.um-roles{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:14px 18px 18px}
.um-role{display:flex;flex-direction:column;gap:4px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:#fff}
.um-role b{font-size:14px}.um-role span{font-size:12px;color:var(--muted);line-height:1.5}.um-role small{font-size:12px;color:var(--ink-2);font-weight:600;margin-top:auto}
.um-role.super{background:#1D2321;border-color:#1D2321}.um-role.super b,.um-role.super small{color:#fff}.um-role.super span{color:#AEB6B2}
a.um-role:hover{border-color:var(--ink)}
.um-perms{display:grid;grid-template-columns:repeat(2,1fr);gap:6px 16px}
.um-perms div{font-size:13px;display:flex;flex-direction:column;padding:6px 0;border-bottom:1px solid var(--line-2)}
.um-perms div small{font-size:11.5px;color:var(--faint)}.um-perms .on{color:var(--ink)}.um-perms .off{color:var(--faint)}
.um-danger{display:flex;flex-direction:column;gap:8px;align-items:flex-start}
.um-matrix th{font-size:11.5px;white-space:nowrap}.um-matrix td.c{text-align:center;color:var(--faint)}.um-matrix td.c.on{color:var(--ok);font-weight:800;background:#F2FAF4}
.um-super-row td{background:#FAFAF8}.um-super-row td.c{color:var(--ink);font-weight:800}
.um-pick{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}
.um-pick label{display:flex;cursor:pointer}.um-pick input{position:absolute;opacity:0}
.um-pick span{flex:1;display:flex;flex-direction:column;gap:2px;padding:10px 12px;border:1.5px solid var(--line);border-radius:10px;background:#fff;position:relative}
.um-pick b{font-size:13.5px}.um-pick em{font-style:normal;font-size:11px;color:#9B2C20;background:#FDECEA;border-radius:4px;padding:0 5px;margin-left:4px}
.um-pick small{font-size:12px;color:var(--muted)}
.um-pick input:checked+span{border-color:var(--ink);background:#F7F7F5}.um-pick input:checked+span::after{content:"✓";position:absolute;right:12px;top:9px;font-weight:800}
.um-opt{display:flex;gap:8px;padding:10px 0;border-bottom:1px solid var(--line-2);cursor:pointer}.um-opt span{display:flex;flex-direction:column}.um-opt small{font-size:12px;color:var(--muted)}
.um-warn td{background:#FFF8F7}
@media (max-width:900px){.biz-grid,.um-grid,.um-roles,.um-pick,.um-perms{grid-template-columns:1fr}.biz-head{flex-wrap:wrap}.biz-head .biz-nums{min-width:0;width:100%}}
.um-matrix td:first-child,.um-matrix th:first-child{min-width:210px}

/* ===== 商品编辑 · 相关推荐 ===== */
.rel{display:flex;flex-direction:column;gap:14px}
.rel-modes{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.rel-mode{display:flex;cursor:pointer}.rel-mode input{position:absolute;opacity:0}
.rel-mode span{flex:1;display:flex;flex-direction:column;gap:3px;padding:12px 14px;border:1.5px solid var(--line);border-radius:12px;background:#fff}
.rel-mode b{font-size:14px}.rel-mode small{font-size:12px;color:var(--muted)}
.rel-mode input:checked+span{border-color:var(--ink);background:#F7F7F5;box-shadow:inset 0 0 0 1px var(--ink)}
.rel-h{display:flex;align-items:baseline;gap:10px;margin-bottom:8px}.rel-h b{font-size:13.5px}
.rel-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;min-height:10px}
.rel-item{position:relative;display:flex;flex-direction:column;gap:6px;padding:10px;border:1px solid var(--line);border-radius:12px;background:#fff}
.rel-item img,.rel-item>i{width:100%;aspect-ratio:1;object-fit:cover;border-radius:8px;background:var(--line-2)}
.rel-item>div:not(.rel-acts){display:flex;flex-direction:column;min-width:0;font-size:13px}
.rel-item a,.rel-item span:not(.rel-n){overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}
.rel-item small{font-size:12px;color:var(--muted)}
.rel-item.dim img{opacity:.45}
.rel-n{position:absolute;left:16px;top:16px;background:var(--ink);color:#fff;font-size:11px;font-weight:700;border-radius:999px;min-width:20px;height:20px;display:grid;place-items:center;padding:0 6px}
.rel-acts{display:flex;gap:4px}.rel-acts .btn{flex:1;padding:0}
.rel-search{display:flex;gap:8px;margin-top:12px}.rel-search .input{flex:1}
.rel-results{margin-top:8px;border:1px solid var(--line);border-radius:12px;background:#fff;max-height:330px;overflow:auto}
.rel-r{display:flex;align-items:center;gap:10px;padding:8px 12px;border-bottom:1px solid var(--line-2)}.rel-r:last-child{border-bottom:0}
.rel-r img,.rel-r>i{width:40px;height:40px;border-radius:6px;object-fit:cover;background:var(--line-2);flex:none}
.rel-r>div{flex:1;min-width:0;display:flex;flex-direction:column}.rel-r b{font-size:13.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rel-r small{font-size:12px;color:var(--muted)}
.rel-r.dim{opacity:.6}
.rel-opts{display:flex;flex-direction:column;gap:6px;margin-top:12px}.rel-opts .check{display:flex;gap:6px;align-items:center;font-size:13px}
.rel-prev{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:8px}
.rel-pv{display:flex;flex-direction:column;gap:4px;font-size:12px}.rel-pv img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:8px;border:1px solid var(--line)}
.rel-pv span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.rel-pv small{color:var(--muted)}
@media (max-width:900px){.rel-modes{grid-template-columns:1fr}.rel-list{grid-template-columns:repeat(2,1fr)}.rel-prev{grid-template-columns:repeat(4,minmax(0,1fr))}}

/* ===== 社区与便民 ===== */
.sc-grp{margin-bottom:12px;padding:10px 14px}
.sc-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:6px 0}
.sc-row .input{height:34px;font-size:13px}.sc-row input[name^=name]{width:130px}.sc-row select{width:110px}
.sc-row.off{opacity:.55}.sc-ic{width:30px;height:30px;border-radius:8px;background:var(--line-2);display:grid;place-items:center;flex:none}
.sc-kids{padding-left:34px;border-left:2px solid var(--line-2);margin-left:14px}
.sc-grp>.sc-row{font-weight:700}
.fa-row{display:flex;flex-wrap:wrap;gap:4px 14px;align-items:center;padding:6px 0;border-bottom:1px dashed var(--line-2)}
.fa-row b{width:44px;font-size:12.5px;color:var(--muted)}
.fa-row .check{font-size:13px}
/* 家具后台 */
.form .s12,.form div.s12{grid-column:1/-1}
.form label.s4{grid-column:span 4}.form label.s9{grid-column:span 9}
.fc-box{display:flex;flex-direction:column;gap:8px}
.furn-set-picker{display:flex;flex-direction:column;align-items:flex-start;gap:9px;padding:12px;border:1px solid var(--line);border-radius:10px;background:#FAFAF7}
.furn-set-picker .check{cursor:pointer}
.furn-set-options{display:flex;flex-wrap:wrap;gap:8px 16px;padding:5px 0}
.furn-set-picker p{margin:0}
.fc-list{display:flex;flex-wrap:wrap;gap:6px}
.fc-chip{display:inline-flex!important;flex-direction:row!important;align-items:center;gap:6px!important;padding:5px 8px 5px 10px;border:1px solid var(--line);border-radius:999px;background:#fff;font-size:13px!important}
.fc-chip:has(input[type=radio]:checked){border-color:#C9A06A;background:#FBF3E6}
.fc-chip input[type=radio]{accent-color:#B8894B}
.fc-chip .num{font-size:11.5px;color:var(--muted)}
.fc-x{border:0;background:none;font-size:16px;line-height:1;color:var(--muted);cursor:pointer;padding:0 2px}
.fc-add{display:grid;grid-template-columns:1fr 1fr;gap:8px}
@media (max-width:900px){.fc-add{grid-template-columns:1fr}}
.ftree{font-size:13.5px}
.ftree details{border-top:1px solid var(--line-2)}
.ftree summary{display:flex;align-items:center;gap:10px;padding:10px 12px;cursor:pointer;list-style:none}
.ftree summary::-webkit-details-marker{display:none}
.ftree .l2 summary{padding-left:34px;background:#FCFBF9}
.ftree .l3{display:flex;align-items:center;gap:10px;padding:7px 12px 7px 58px;border-top:1px dashed var(--line-2)}
.ftree .id{font-family:ui-monospace,Menlo,monospace;font-size:12px;color:var(--muted);min-width:52px}
.ftree .nm{flex:1;min-width:0}
.ftree .tr{color:var(--muted);font-size:12px}
.ftree .off{opacity:.45}
.ftree .cnt{font-size:12px;color:var(--muted);min-width:40px;text-align:right}
.ftree .acts{display:flex;gap:4px}
.ftree img{width:40px;height:30px;object-fit:cover;border-radius:6px;background:var(--line-2)}
.grp-tag{font-size:11px;padding:1px 7px;border-radius:999px;background:#EFE6D8;color:#7A5528}
.grp-tag.scene{background:#E3E6F3;color:#46508A}
.attr-tbl td{vertical-align:top}
.attr-tbl input.input{height:30px;padding:0 8px;font-size:13px}
@media (max-width:900px){.ftree .tr,.ftree .cnt{display:none}.ftree .l3{padding-left:30px}.ftree .l2 summary{padding-left:20px}}
@media (max-width:900px){
  .topbar{flex-wrap:wrap;height:auto;min-height:58px;padding:8px 14px;row-gap:8px}
  .topbar h1{max-width:calc(100vw - 80px)}
  .topbar .sp{flex-basis:100%;height:0}
  .topbar form{display:inline-flex}
}
/* 商品编辑 · 食品：特产馆 / 当季专题多选 */
.lbl-t{display:block;font-size:13px;font-weight:600;margin-bottom:6px}
.chk-grid{display:flex;flex-wrap:wrap;gap:6px 16px}
.chk-grid .check{display:inline-flex;align-items:center;gap:6px;font-size:13.5px}
/* 家具 · 产品大类 */
.ftype-ic{display:inline-block;width:44px;height:44px;border-radius:10px;overflow:hidden;vertical-align:middle}
.ftype-ic svg{display:block;width:100%;height:100%}
.ftype-icons{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.ftype-icons label{cursor:pointer}.ftype-icons input{position:absolute;opacity:0;pointer-events:none}
.ftype-icons input+.ftype-ic{outline:2px solid transparent;outline-offset:2px}
.ftype-icons input:checked+.ftype-ic{outline-color:var(--ink,#111)}
.ftype-icons input:focus-visible+.ftype-ic{outline-color:#2563eb}
.ftype-tree{margin-top:6px;border:1px solid var(--line,#e5e5e5);border-radius:10px;max-height:560px;overflow:auto}
.ftype-tree details{border-bottom:1px solid var(--line,#eee);padding:6px 10px}
.ftype-tree summary{cursor:pointer}
.ftype-tree .ft-l2{padding:6px 0 4px 22px}
.ftype-tree .ft-l3{display:flex;flex-wrap:wrap;gap:4px 14px;padding:4px 0 0 22px;font-size:13px}
.ft-full{grid-column:1/-1}
.ftype-tree label.check,.ftype-icons label{display:inline-flex;flex-direction:row;align-items:center;gap:6px;grid-column:auto;width:auto}
.ftype-tree summary{display:flex;align-items:center;gap:6px}
.cmp-switch{grid-column:1/-1;display:flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid var(--line,#e5e5e5);border-radius:10px;background:#FAFAF7;margin-bottom:10px}
