/* Desktop and browser preview share the same source tokens as native WeChat. */
:root{--ink:var(--color-ink);--muted:var(--color-muted);--paper:var(--color-page);--card:var(--color-card);--line:var(--color-line);--red:var(--color-brand);--red-soft:var(--color-brandSoft);--gold:var(--color-gold);--green:var(--color-success);font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;font-size:14px;color:var(--color-ink)}
body{background:var(--color-page)}h1,.admin-head h1{font-family:inherit;font-size:var(--text-page);font-weight:600}h2{font-size:var(--text-section);font-weight:600}h3{font-size:var(--text-card)}
button{min-height:40px;font-weight:600;transition:background .12s}button:active:not(:disabled){transform:translateY(1px)}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--color-brand);outline-offset:2px}
.primary,.search button{background:var(--color-brand);border-radius:var(--radius-button);font-size:var(--text-button)}.secondary{border-color:var(--color-line);border-radius:var(--radius-button);color:var(--color-brand);background:var(--color-card)}.danger{border-radius:var(--radius-button);color:var(--color-danger);background:var(--color-dangerSoft)}.text-button{color:var(--color-brand)}
input,select,textarea,.ops-form input,.ops-form select{min-height:40px;border:1px solid var(--color-line);border-radius:var(--radius-input);padding:10px 12px;background:var(--color-card);color:var(--color-ink);font-size:var(--text-body)}input[type=checkbox],input[type=radio]{min-height:18px;accent-color:var(--color-brand)}
.panel,.cart-row,.list-row,.admin-product,.totals,.BaseCard{border:1px solid var(--color-line);border-radius:var(--radius-card);box-shadow:none;background:var(--color-card)}.panel{padding:var(--space-16)}.admin-brand{display:flex;align-items:center;gap:var(--space-12)}.admin-brand img{width:150px;height:86px;object-fit:contain;background:var(--color-card);border-radius:var(--radius-card)}.admin-brand small{font-size:var(--text-caption);color:var(--color-muted);letter-spacing:1.5px}.admin-head{align-items:center;margin-bottom:var(--space-12)}
.ops-nav{background:var(--color-card);border:1px solid var(--color-line);border-radius:var(--radius-card);padding:var(--space-8);gap:var(--space-8)}.ops-nav button{display:flex;align-items:center;gap:8px;border:0;color:var(--color-muted);font-size:var(--text-body);background:transparent}.ops-nav button .ui-icon{width:20px;height:20px}.ops-nav button.primary{background:var(--color-brandSoft);color:var(--color-brand)}
.ops-metrics{gap:var(--space-12)}.ops-metrics .panel{border-radius:var(--radius-card);padding:var(--space-16)}.ops-metrics strong{color:var(--color-ink);font-size:28px;font-weight:600;font-variant-numeric:tabular-nums}.ops-metrics span{font-size:var(--text-secondary);color:var(--color-muted)}.ops-metrics .panel:first-child{border-top:3px solid var(--color-brand)}
.ops-table{font-size:var(--text-secondary)}.ops-table th{background:var(--color-neutral);color:var(--color-muted);font-weight:500;padding:12px}.ops-table td{padding:12px;border-color:var(--color-line)}.ops-table tbody tr:hover{background:var(--color-page)}.ops-table-wrap{border:1px solid var(--color-line);border-radius:var(--radius-card);margin:var(--space-12) 0}.ops-table th:first-child{border-radius:var(--radius-card) 0 0 0}
.StatusBadge,.status,.badge{display:inline-block;border-radius:var(--radius-tag);font-size:var(--text-badge);padding:4px 8px;font-weight:500;background:var(--color-neutral);color:var(--color-muted)}.tone-success,.status.active{background:var(--color-successSoft);color:var(--color-success)}.tone-info{background:var(--color-blueSoft);color:var(--color-blue)}.tone-warning{background:var(--color-warningSoft);color:var(--color-warning)}.tone-danger{background:var(--color-dangerSoft);color:var(--color-danger)}
.empty,.EmptyState{border:0;background:var(--color-card);border-radius:var(--radius-card);padding:var(--space-32) var(--space-20);color:var(--color-muted);font-size:var(--text-body)}.notice{border:1px solid var(--color-line);background:var(--color-blueSoft);color:var(--color-muted);border-radius:var(--radius-card)}.notice.danger{background:var(--color-dangerSoft);color:var(--color-danger)}.ops-dialog{border-radius:var(--radius-sheet);box-shadow:var(--shadow-sheet)}.ops-dialog::backdrop{background:rgba(33,28,26,.35)}
.product-card{box-shadow:none;border-radius:var(--radius-card);border-color:var(--color-line)}.product-image{background:var(--color-neutral)}.product-title{font-size:var(--text-body);font-weight:500}.product-spec{font-size:var(--text-caption)}.price{color:var(--color-brand);font-weight:600}.chip.active{color:var(--color-brand);background:var(--color-brandSoft);border-color:var(--color-brand)}.account-card{background:var(--color-card);color:var(--color-ink);box-shadow:none;border:1px solid var(--color-line)}
#tabs{background:var(--color-card);backdrop-filter:none}#tabs button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}#tabs button span{display:block;width:24px;height:24px}#tabs button.active{color:var(--color-brand)}.ops-home-row strong{font-size:var(--text-body)}
@media(max-width:800px){.admin-head{flex-wrap:wrap}.ops-nav button{flex:1 0 28%}.ops-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){button{transition:none}}
.desktop-logo{display:block;width:170px;height:62px;object-fit:contain;object-position:left;margin-bottom:8px}
/* Search actions must not shrink into a vertical two-character label. */
.search button,.ops-search button{white-space:nowrap;flex-shrink:0;min-width:72px}
h1,h2,h3,.heading{font-family:inherit}

/* Theme B desktop remains a compact operations surface, not a pink storefront. */
body{background:var(--color-rice)}
.secondary{border-color:var(--color-brandSoft)}
.panel,.ops-nav,.ops-metrics .panel{background:var(--color-white)}
.ops-nav button.primary{background:var(--color-cherry)}
