:root{
  color-scheme:light;
  font-family:"Microsoft YaHei UI","Microsoft YaHei","Segoe UI",Arial,sans-serif;
  font-size:16px;
  color:#172033;
  background:#f5f7fb;
  --blue:#2367e8;--blue-dark:#174fb9;--line:#dfe4ec;--muted:#667085;
  --green:#087a55;--green-bg:#eaf8f2;--yellow:#8a5a00;--yellow-bg:#fff6dd;
  --red:#b42318;--red-bg:#fff0ee;--panel:#fff;--shadow:0 2px 12px rgba(16,24,40,.07);
  --on-accent:#fff;--overlay:rgba(16,24,40,.45);--toast-bg:#172033;--toast-text:#fff;
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html,body{margin:0;min-height:100%;background:#f5f7fb}
body{font-size:15px;line-height:1.6;-webkit-text-size-adjust:100%;text-rendering:optimizeLegibility}
button,input,select,textarea{font:inherit;color:inherit}
button,a{touch-action:manipulation}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,a:focus-visible{outline:3px solid rgba(35,103,232,.25);outline-offset:2px}
h1,h2,h3,p{margin-top:0}h1{font-size:28px;line-height:1.3;margin-bottom:0}h2{font-size:24px;line-height:1.35;margin-bottom:8px}h3{font-size:18px;line-height:1.45;margin-bottom:4px}p{color:var(--muted);margin-bottom:0}
.glass,.panel{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:12px}
.app-layout{display:grid;grid-template-columns:236px minmax(0,1fr);min-height:100vh}
.sidebar{position:sticky;top:0;height:100vh;border-radius:0;border-width:0 1px 0 0;box-shadow:none;padding:22px 16px;display:flex;flex-direction:column;background:#fff}
.brand{height:54px;display:flex;align-items:center;padding:9px 12px;background:#0d1b3a;border-radius:9px}.brand-wordmark{display:block;width:146px;max-height:34px}
.side-nav{display:grid;gap:6px;padding-top:18px}.nav-item{border:0;background:transparent;border-radius:8px;min-height:46px;padding:8px 10px;display:grid;grid-template-columns:30px 1fr auto;align-items:center;text-align:left;color:#475467;cursor:pointer}.nav-item:hover{background:#f2f5fa}.nav-item.active{background:#eaf1ff;color:#174fb9;font-weight:700}.nav-icon{width:28px;height:28px;border-radius:7px;background:#eef2f7;display:grid;place-items:center;font-size:12px;font-weight:700}.nav-item.active .nav-icon{background:#2367e8;color:#fff}.nav-item i{font-style:normal;font-size:12px;background:#f0f2f5;border-radius:10px;padding:0 7px;color:#667085}
.sidebar-foot{margin-top:auto;border-top:1px solid #edf0f4;padding:16px 8px 0}.mini-status{display:flex;align-items:center;gap:10px}.mini-status div{display:grid}.mini-status b{font-size:13px}.mini-status small{font-size:12px;color:var(--muted)}.status-dot{width:8px;height:8px;border-radius:50%;background:#18a978;display:inline-block}.text-button{border:0;background:none;color:#667085;padding:12px 0 0;cursor:pointer;font-size:13px}
.main-content{padding:26px 34px 56px;min-width:0}.topbar{display:flex;justify-content:space-between;align-items:center;margin:0 auto 22px;max-width:1180px}.eyebrow{display:block;color:#667085;font-size:13px;font-weight:700;margin-bottom:4px}.top-actions{display:flex;gap:10px;align-items:center}.pill{display:inline-flex;align-items:center;gap:8px;border-radius:999px;padding:6px 11px;font-size:13px;font-weight:700;background:#eef2f6;color:#475467}.pill.success{background:var(--green-bg);color:var(--green)}.pill.warning-pill{background:var(--yellow-bg);color:var(--yellow)}.pill.muted{background:#f2f4f7;color:#667085}.icon-button{border:1px solid var(--line);background:#fff;border-radius:8px;min-height:36px;padding:6px 12px;cursor:pointer}
.page{display:none;max-width:1180px;margin:0 auto}.page.active{display:block}.panel{padding:22px;margin-bottom:18px}.welcome-card,.action-center{display:flex;align-items:center;justify-content:space-between;gap:24px;border-left:5px solid var(--blue)}.demo-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 22px;align-items:center;background:#f8fbff;border-color:#cbdcff}.demo-card>div{display:flex;gap:14px;align-items:flex-start}.demo-card .form-message{grid-column:1/-1}.step-number{background:#2367e8;color:#fff;border-radius:8px;padding:6px 10px;font-weight:700;font-size:13px}
.button{min-height:40px;border:1px solid #cfd5df;background:#fff;border-radius:8px;padding:8px 15px;font-weight:700;cursor:pointer;white-space:nowrap;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.button:hover{background:#f7f9fc}.button.primary{background:var(--blue);border-color:var(--blue);color:#fff}.button.primary:hover{background:var(--blue-dark)}.button.ghost{background:#fff}.button.warm{background:#fff4d4;border-color:#efce72;color:#704b00}.button.danger-outline{color:var(--red);border-color:#e8b8b3}.button.small{min-height:34px;padding:5px 11px;font-size:13px}.button.wide{width:100%}.button:disabled{opacity:.48;cursor:not-allowed}
.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.metric{padding:16px;box-shadow:none;display:flex;gap:12px;align-items:center}.metric-icon{width:34px;height:34px;border-radius:8px;background:#eef3fb;display:grid;place-items:center;color:#2367e8;font-weight:700}.metric div{display:grid}.metric small,.metric span{color:var(--muted);font-size:12px}.metric strong{font-size:22px;line-height:1.3}.small-strong{font-size:17px!important}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.dashboard-grid>.panel{margin:0}.panel-head,.section-intro,.form-actions,.server-card-head,.server-card-actions,.channel-actions{display:flex;align-items:center;justify-content:space-between;gap:18px}.section-intro{margin:0 0 18px}.secure-note{font-size:13px;color:var(--green);background:var(--green-bg);padding:6px 10px;border-radius:8px}.quick-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.quick-actions button,.workflow-check{border:1px solid var(--line);background:#fff;border-radius:8px;padding:13px;text-align:left;cursor:pointer}.quick-actions button{display:grid}.quick-actions span,.workflow-check small{font-size:13px;color:var(--muted)}.workflow-checks{display:grid;gap:9px}.workflow-check{display:flex;gap:10px;align-items:center;width:100%}.workflow-check>span{width:26px;height:26px;display:grid;place-items:center;border-radius:50%;background:var(--yellow-bg);color:var(--yellow);font-weight:700}.workflow-check.done>span{background:var(--green-bg);color:var(--green)}.workflow-check div{display:grid}
.server-create{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center}.server-create form{display:flex;gap:10px}.server-create input{width:260px}.server-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.server-card{margin:0}.server-card-head{justify-content:flex-start}.server-card-head .pill{margin-left:auto}.server-symbol{width:38px;height:38px;background:#eaf1ff;color:#2367e8;border-radius:8px;display:grid;place-items:center;font-weight:700}.server-card code{font-size:12px;color:var(--muted)}.server-card-meta{display:flex;gap:7px;flex-wrap:wrap;margin:12px 0}.server-card-meta span{font-size:12px;background:#f2f4f7;color:#667085;border-radius:5px;padding:3px 7px}.server-card-actions{justify-content:flex-start;flex-wrap:wrap}.empty-state{text-align:center;padding:32px;display:grid;color:#667085}.empty-state b{color:#344054;font-size:17px}.empty-inline{padding:14px;border-radius:8px;background:#f7f9fb}.info-box,.banner{display:flex;align-items:center;gap:12px;border:1px solid #cfdcff;background:#f6f9ff;border-radius:10px;padding:14px 16px;margin:16px 0}.banner{justify-content:space-between}.banner>div{display:grid}.banner.warning{background:var(--yellow-bg);border-color:#eed38b}.info-box>span{font-weight:700;color:var(--blue)}
.settings-form{max-width:920px}.connection-modes{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:20px}.mode-card{border:2px solid var(--line);border-radius:10px;padding:16px;display:flex;gap:12px;cursor:pointer}.mode-card:has(input:checked){border-color:#2367e8;background:#f6f9ff}.mode-card input{width:18px;height:18px;margin-top:3px}.mode-card span{display:grid}.mode-card small{color:var(--muted)}.public-setup{max-width:600px;margin-bottom:18px}.check-result{margin-top:12px;padding:12px;border-radius:8px;background:#f2f4f7;color:#475467}.check-result.ready{background:var(--green-bg);color:var(--green)}.check-result.waiting{background:var(--yellow-bg);color:var(--yellow)}.check-result.error{background:var(--red-bg);color:var(--red)}
.stack{display:grid;gap:16px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.span-two{grid-column:1/-1}.field{display:grid;gap:6px;font-weight:700}.field>span{font-size:13px}.field small{font-weight:400;color:var(--muted)}input,select,textarea{width:100%;border:1px solid #cfd5df;background:#fff;border-radius:7px;padding:10px 11px;min-height:42px}textarea{resize:vertical}.input-wrap{position:relative}.input-wrap .reveal{position:absolute;right:6px;top:5px;border:0;background:none;height:32px;color:#2367e8;cursor:pointer}.advanced{border:1px solid var(--line);border-radius:9px;background:#fafbfc;padding:0 14px;margin-top:12px}.advanced summary{padding:13px 0;cursor:pointer;font-weight:700;color:#475467}.advanced[open] summary{border-bottom:1px solid var(--line);margin-bottom:14px}.form-actions{margin-top:18px}.form-message{min-height:24px;color:#475467}.form-message.error{color:var(--red)}.success-text{color:var(--green)!important}.amount-warning{color:var(--yellow)!important}
.personal-channel-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.personal-channel{border:1px solid var(--line);border-radius:10px;padding:16px;display:grid;grid-template-columns:42px 1fr;gap:10px;align-items:center}.personal-channel>*:not(.channel-logo){grid-column:2}.channel-logo{width:38px;height:38px;border-radius:9px;color:#fff;display:grid;place-items:center;font-weight:700}.channel-logo.wechat{background:#16a36a}.channel-logo.alipay{background:#1677ff}.readiness>div{padding:10px;border-radius:7px;margin:10px 0}.readiness .ready{background:var(--green-bg);color:var(--green)}.readiness .not-ready{background:var(--yellow-bg);color:var(--yellow)}.channel-title{display:flex;gap:10px;align-items:center}.switch{display:flex;gap:8px;align-items:center}.switch input{width:18px;min-height:auto}.fixed-qr-create{display:grid;grid-template-columns:180px minmax(260px,1fr) auto;gap:14px;align-items:end}.fixed-qr-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.fixed-qr-item{display:grid;grid-template-columns:68px 1fr auto;gap:10px;align-items:center;border:1px solid var(--line);border-radius:9px;padding:10px}.fixed-qr-item img{width:68px;height:68px;object-fit:cover;border-radius:6px}.fixed-qr-item div{display:grid}.fixed-qr-item small{color:var(--muted)}.collector-layout{margin-top:18px}.system-list{display:grid;margin:12px 0}.system-list>div{display:flex;justify-content:space-between;gap:18px;padding:10px 0;border-bottom:1px solid #edf0f4}.receipt-list{display:grid;gap:9px}.receipt-item{border:1px solid var(--line);border-radius:8px;padding:11px;display:flex;justify-content:space-between}.receipt-item div{display:grid}.receipt-item small{color:var(--muted)}
.main-qr-preview{display:flex;align-items:center;gap:14px;margin:14px 0;padding:12px;border:1px solid var(--line);border-radius:9px;background:var(--panel-soft)}.main-qr-preview[hidden],.channel-blockers[hidden]{display:none}.main-qr-preview img{width:96px;height:96px;object-fit:contain;border-radius:7px;background:#fff}.main-qr-preview div{display:grid}.main-qr-preview small{color:var(--muted)}.channel-blockers{padding:15px 17px;border:1px solid var(--red);border-radius:10px;background:var(--red-bg);color:var(--red)}.channel-blockers p{margin:7px 0 0;line-height:1.7}
.collector-status-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.collector-state{display:grid;gap:3px;margin:0}.collector-state small,.collector-state span{color:var(--muted);font-size:12px}.collector-state b{font-size:17px}.switch-line{display:flex;align-items:center;gap:8px;white-space:nowrap;font-weight:700}.switch-line input{width:20px;min-height:20px}.terminal-panel{max-width:100%}.collector-terminal{height:360px;overflow:auto;margin:14px 0 8px;padding:16px;border:1px solid #293648;border-radius:9px;background:#0b111b;color:#d7e2ef;font:13px/1.65 Consolas,"Cascadia Mono","Microsoft YaHei UI",monospace;white-space:pre-wrap;word-break:break-word;tab-size:2}
.network-control{max-width:920px}.network-control-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.network-setting{min-height:116px;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft);padding:14px;display:flex;align-items:center;justify-content:space-between;gap:16px}.network-setting>div{display:grid;gap:3px}.network-setting small,.network-setting span{color:var(--muted);font-size:12px}.network-setting b{font-size:16px}.field.network-setting{display:grid;align-content:center;justify-content:stretch}.network-switch{padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:var(--control)}.network-detail{margin:14px 0 0;padding:12px 14px;border-left:3px solid var(--blue);background:var(--panel-soft)}
.order-metrics{grid-template-columns:repeat(2,1fr)}.orders-panel{padding:0;overflow:hidden}.order-filter{display:grid;grid-template-columns:2fr 1fr 1fr auto auto;gap:10px;padding:16px;border-bottom:1px solid var(--line);align-items:center}.trash-filter{display:flex;align-items:center;gap:7px;white-space:nowrap;font-size:13px}.trash-filter input{width:18px;min-height:auto}.table-scroll{overflow:auto}.orders-table{width:100%;border-collapse:collapse;min-width:1120px}.orders-table th,.orders-table td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--line);vertical-align:middle}.orders-table th{font-size:13px;color:#667085;background:#fafbfc;white-space:nowrap}.order-main{display:grid;gap:2px;min-width:130px}.order-main small{color:var(--muted);font-size:11px;max-width:180px;overflow:hidden;text-overflow:ellipsis}.channel-chip,.status-chip{display:inline-flex;align-items:center;width:max-content;font-size:12px;border-radius:6px;padding:4px 8px}.channel-chip.wechat{color:#20ad72;background:color-mix(in srgb,#20ad72 12%,var(--control))}.channel-chip.alipay{color:#1677ff;background:color-mix(in srgb,#1677ff 12%,var(--control))}.status-chip{background:#f2f4f7}.status-chip.DELIVERED{background:var(--green-bg);color:var(--green)}.status-chip.PAYING{background:var(--yellow-bg);color:var(--yellow)}.status-chip.CANCELLED,.status-chip.TIMEOUT{background:#f2f4f7;color:#667085}.table-action{border:0;background:none;color:#2367e8;font-weight:700;cursor:pointer}.pager{display:flex;justify-content:center;align-items:center;gap:14px;padding:14px}
.copy-input{display:flex}.copy-input input{border-radius:7px 0 0 7px}.copy-input button{border:1px solid #cfd5df;border-left:0;background:#fff;border-radius:0 7px 7px 0}.copy-list label{display:grid;gap:8px}.copy-list label>div{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.copy-list button{border:1px solid var(--line);background:#fff;border-radius:6px;padding:5px 9px}.masked{filter:blur(5px);user-select:none}
.modal-backdrop{position:fixed;inset:0;background:rgba(16,24,40,.45);display:grid;place-items:center;padding:20px;z-index:20}.modal{width:min(560px,100%);padding:24px}.order-modal{width:min(860px,100%);max-height:88vh;overflow:auto}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.order-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.order-detail-grid>div{border:1px solid var(--line);border-radius:7px;padding:10px;display:grid}.order-detail-grid small{color:var(--muted)}.audit-list{display:grid;gap:8px;padding:0;list-style:none}.audit-list li{display:grid;grid-template-columns:150px 150px 1fr;gap:10px;border-bottom:1px solid #edf0f4;padding:8px 0}.audit-list time,.audit-list span{color:var(--muted)}.toast{position:fixed;right:24px;bottom:24px;background:#172033;color:#fff;border-radius:8px;padding:11px 15px;opacity:0;transform:translateY(8px);pointer-events:none;transition:.16s;z-index:40}.toast.show{opacity:1;transform:none}
.login-layout{min-height:100vh;display:grid;place-items:center;padding:24px}.login-card{width:min(440px,100%);padding:30px}.brand-login{border:0;padding:0 0 18px}.login-copy{margin-bottom:18px}.login-tip{font-size:13px;margin-top:12px}.login-showcase{display:none}.mobile-nav{display:none}
@media(max-width:960px){.app-layout{grid-template-columns:1fr}.sidebar{position:static;height:auto;border-right:0;padding:14px}.side-nav{grid-template-columns:repeat(3,1fr)}.sidebar-foot{display:none}.main-content{padding:20px}.dashboard-grid,.server-grid{grid-template-columns:1fr}.metric-grid,.collector-status-grid{grid-template-columns:1fr 1fr}.fixed-qr-list{grid-template-columns:1fr 1fr}.topbar{align-items:flex-start}.nav-item{grid-template-columns:28px 1fr}.nav-item i{display:none}}
@media(max-width:640px){body{font-size:15px}.main-content{padding:16px}.side-nav{grid-template-columns:1fr 1fr}.topbar{display:grid;gap:12px}.welcome-card,.section-intro,.panel-head,.form-actions,.server-create{display:grid}.demo-card{grid-template-columns:1fr}.connection-modes,.personal-channel-grid,.form-grid,.metric-grid,.collector-status-grid,.network-control-grid,.order-detail-grid,.fixed-qr-create,.fixed-qr-list{grid-template-columns:1fr}.span-two{grid-column:auto}.server-create form{display:grid}.server-create input{width:100%}.order-filter{grid-template-columns:1fr}.quick-actions{grid-template-columns:1fr}.audit-list li{grid-template-columns:1fr;gap:2px}.secure-note{display:none}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* 主题只改颜色，不改布局；系统缩放时继续使用原生矢量文字与控件。 */
:root{--page:#f5f7fb;--panel:#fff;--panel-soft:#f7f9fb;--control:#fff;--text:#172033;--subtle:#475467;--nav-active:#eaf1ff;--focus:rgba(35,103,232,.25)}
html[data-theme="night"]{--page:#111827;--panel:#1c2636;--panel-soft:#222e40;--control:#202b3c;--text:#edf2f7;--muted:#aab6c5;--subtle:#c5cfdb;--line:#344257;--blue:#60a5fa;--blue-dark:#3b82d7;--nav-active:#263c59;--shadow:0 2px 14px rgba(0,0,0,.3);--focus:rgba(96,165,250,.4)}
html[data-theme="eye"]{--page:#eef4e8;--panel:#f8fbf4;--panel-soft:#e6efdf;--control:#fbfdf8;--text:#263321;--muted:#63705d;--subtle:#465441;--line:#ccd9c4;--blue:#4f772d;--blue-dark:#365a1e;--nav-active:#dcebd1}
html[data-theme="warm"]{--page:#fbf4e8;--panel:#fffaf2;--panel-soft:#f7eddd;--control:#fffdf8;--text:#382d20;--muted:#766858;--subtle:#5c4c3b;--line:#e2d6c6;--blue:#b7791f;--blue-dark:#8d5b12;--nav-active:#f7e6c4}
html[data-theme="ocean"]{--page:#eaf4fb;--panel:#f8fcff;--panel-soft:#e1f0f8;--control:#fff;--text:#173142;--muted:#627684;--subtle:#405e70;--line:#c9dfe9;--blue:#1677b3;--blue-dark:#0b5a8f;--nav-active:#d8edf9}
html[data-theme="cyan"]{--page:#e9f8f8;--panel:#f8fefe;--panel-soft:#dff2f2;--control:#fff;--text:#153b3c;--muted:#5f7778;--subtle:#3f6263;--line:#c7e0e0;--blue:#0f8b8d;--blue-dark:#086a6c;--nav-active:#d2eeee}
html[data-theme="mint"]{--page:#edf8f2;--panel:#f9fefb;--panel-soft:#e1f3e9;--control:#fff;--text:#1c392b;--muted:#60786c;--subtle:#406353;--line:#cce2d5;--blue:#25855a;--blue-dark:#176a45;--nav-active:#d6eee0}
html[data-theme="forest"]{--page:#17241d;--panel:#213029;--panel-soft:#293a32;--control:#26372f;--text:#edf6f0;--muted:#a8bbae;--subtle:#c9d7cd;--line:#3b5144;--blue:#68b984;--blue-dark:#4d9b68;--nav-active:#304b3b;--shadow:0 2px 14px rgba(0,0,0,.3);--focus:rgba(104,185,132,.4)}
html[data-theme="amber"]{--page:#fff8e6;--panel:#fffdf7;--panel-soft:#fff3d1;--control:#fff;--text:#3d3119;--muted:#786b50;--subtle:#5e5035;--line:#eadcb8;--blue:#d98c00;--blue-dark:#ad6d00;--nav-active:#ffedbd}
html[data-theme="orange"]{--page:#fff1e8;--panel:#fffaf7;--panel-soft:#ffe7d8;--control:#fff;--text:#41291c;--muted:#7e685d;--subtle:#614a3f;--line:#ecd2c3;--blue:#df6c21;--blue-dark:#b85212;--nav-active:#ffdfcb}
html[data-theme="rose"]{--page:#fff0f4;--panel:#fff9fb;--panel-soft:#ffe5ec;--control:#fff;--text:#42242e;--muted:#806670;--subtle:#624752;--line:#edccd6;--blue:#d54b72;--blue-dark:#ad3156;--nav-active:#ffdbe5}
html[data-theme="ruby"]{--page:#fff0ef;--panel:#fff9f8;--panel-soft:#ffe4e2;--control:#fff;--text:#432321;--muted:#806562;--subtle:#624744;--line:#eccbc8;--blue:#c73e3a;--blue-dark:#a12b28;--nav-active:#ffdad7}
html[data-theme="purple"]{--page:#f5efff;--panel:#fcfaff;--panel-soft:#eee5fb;--control:#fff;--text:#332545;--muted:#716681;--subtle:#574a69;--line:#dbceeb;--blue:#8458c7;--blue-dark:#6840a5;--nav-active:#e8dcf7}
html[data-theme="indigo"]{--page:#eef0ff;--panel:#fafaff;--panel-soft:#e4e7fa;--control:#fff;--text:#292d4b;--muted:#686b86;--subtle:#4d5270;--line:#d0d4ec;--blue:#5865c7;--blue-dark:#414da6;--nav-active:#dde1fa}
html[data-theme="slate"]{--page:#edf0f3;--panel:#fafbfc;--panel-soft:#e5e9ed;--control:#fff;--text:#26313c;--muted:#65717d;--subtle:#485663;--line:#ced5dc;--blue:#526579;--blue-dark:#3c4d5e;--nav-active:#dce3e9}
html[data-theme="coffee"]{--page:#f4eee8;--panel:#fcf9f6;--panel-soft:#eae1d8;--control:#fff;--text:#382c24;--muted:#75685e;--subtle:#584a40;--line:#dacfc5;--blue:#7b5b44;--blue-dark:#5f4330;--nav-active:#e7d9cd}
html[data-theme="sakura"]{--page:#fff5f8;--panel:#fffbfc;--panel-soft:#f9e9ee;--control:#fff;--text:#3d2931;--muted:#7b6870;--subtle:#5d4b52;--line:#ead5dc;--blue:#c8688a;--blue-dark:#a84b6d;--nav-active:#f7e1e8}
html[data-theme="lavender"]{--page:#f4f1fb;--panel:#fcfbfe;--panel-soft:#ebe6f4;--control:#fff;--text:#312c3d;--muted:#706a7c;--subtle:#554e64;--line:#d9d2e4;--blue:#7563a8;--blue-dark:#5c4a8d;--nav-active:#e6dff2}
html[data-theme="contrast"]{--page:#fff;--panel:#fff;--panel-soft:#f2f2f2;--control:#fff;--text:#000;--muted:#333;--subtle:#111;--line:#555;--blue:#005fcc;--blue-dark:#004896;--nav-active:#d9eaff;--shadow:none;--focus:rgba(0,95,204,.45)}
html[data-theme="black"]{--page:#090909;--panel:#151515;--panel-soft:#202020;--control:#1d1d1d;--text:#fff;--muted:#c3c3c3;--subtle:#eee;--line:#454545;--blue:#f2c94c;--blue-dark:#d2a920;--nav-active:#3a3218;--shadow:0 2px 14px rgba(0,0,0,.5);--focus:rgba(242,201,76,.45)}
html,body{background:var(--page);color:var(--text)}
.sidebar,input,select,textarea,.button,.button.ghost,.icon-button,.quick-actions button,.workflow-check,.copy-input button,.copy-list button{background:var(--control);color:var(--text);border-color:var(--line)}
.nav-item,.advanced summary,.form-message,.check-result{color:var(--subtle)}
.nav-item:hover,.empty-inline,.status-chip,.pill.muted,.orders-table th,.advanced,.check-result{background:var(--panel-soft)}
.nav-item.active,.mode-card:has(input:checked){background:var(--nav-active);color:var(--blue)}
.nav-item.active .nav-icon,.step-number{background:var(--blue)}
.nav-icon,.nav-item i,.metric-icon,.server-card-meta span{background:var(--panel-soft);color:var(--subtle)}
.eyebrow,.orders-table th{color:var(--muted)}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,a:focus-visible{outline-color:var(--focus)}
.theme-button{border:1px solid var(--line);background:var(--panel-soft);border-radius:8px;min-height:44px;padding:7px 10px;margin-top:14px;display:grid;grid-template-columns:30px 1fr auto;align-items:center;text-align:left;color:var(--text);cursor:pointer}.theme-button i{font-style:normal;font-size:12px;color:var(--muted)}
.theme-modal{width:min(720px,100%)}.theme-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.theme-option{border:1px solid var(--line);background:var(--control);color:var(--text);border-radius:9px;padding:10px;display:flex;align-items:center;gap:9px;cursor:pointer}.theme-option span{width:30px;height:30px;border-radius:50%;border:1px solid var(--line)}.theme-option.active{border:2px solid var(--blue);padding:9px}
.theme-preview-cloud{background:linear-gradient(135deg,#f5f7fb 0 50%,#3478f6 50%)}.theme-preview-night{background:linear-gradient(135deg,#111827 0 50%,#60a5fa 50%)}.theme-preview-eye{background:linear-gradient(135deg,#eef4e8 0 50%,#4f772d 50%)}.theme-preview-warm{background:linear-gradient(135deg,#fbf4e8 0 50%,#b7791f 50%)}.theme-preview-ocean{background:linear-gradient(135deg,#eaf4fb 0 50%,#1677b3 50%)}.theme-preview-cyan{background:linear-gradient(135deg,#e9f8f8 0 50%,#0f8b8d 50%)}.theme-preview-mint{background:linear-gradient(135deg,#edf8f2 0 50%,#25855a 50%)}.theme-preview-forest{background:linear-gradient(135deg,#17241d 0 50%,#68b984 50%)}.theme-preview-amber{background:linear-gradient(135deg,#fff8e6 0 50%,#d98c00 50%)}.theme-preview-orange{background:linear-gradient(135deg,#fff1e8 0 50%,#df6c21 50%)}.theme-preview-rose{background:linear-gradient(135deg,#fff0f4 0 50%,#d54b72 50%)}.theme-preview-ruby{background:linear-gradient(135deg,#fff0ef 0 50%,#c73e3a 50%)}.theme-preview-purple{background:linear-gradient(135deg,#f5efff 0 50%,#8458c7 50%)}.theme-preview-indigo{background:linear-gradient(135deg,#eef0ff 0 50%,#5865c7 50%)}.theme-preview-slate{background:linear-gradient(135deg,#edf0f3 0 50%,#526579 50%)}.theme-preview-coffee{background:linear-gradient(135deg,#f4eee8 0 50%,#7b5b44 50%)}.theme-preview-sakura{background:linear-gradient(135deg,#fff5f8 0 50%,#c8688a 50%)}.theme-preview-lavender{background:linear-gradient(135deg,#f4f1fb 0 50%,#7563a8 50%)}.theme-preview-contrast{background:linear-gradient(135deg,#fff 0 50%,#005fcc 50%)}.theme-preview-black{background:linear-gradient(135deg,#090909 0 50%,#f2c94c 50%)}
.diagnostic-list{display:grid;grid-template-columns:1fr 1fr;gap:10px}.diagnostic-item{border:1px solid var(--line);border-radius:9px;padding:12px;display:grid;grid-template-columns:32px 1fr;gap:10px}.diagnostic-item>span{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-weight:800}.diagnostic-item div{display:grid}.diagnostic-item small,.diagnostic-item p{font-size:12px}.diagnostic-item.pass>span{background:var(--green-bg);color:var(--green)}.diagnostic-item.fail>span{background:var(--red-bg);color:var(--red)}.diagnostic-item.warn>span{background:var(--yellow-bg);color:var(--yellow)}
.fixed-qr-item.qr-warning{border-color:#d7a845;background:var(--yellow-bg)}.row-actions{display:flex;align-items:center;gap:8px;white-space:nowrap}.danger-text{color:var(--red)}
@media(max-width:960px){.theme-button{margin:10px 0}.theme-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:640px){.theme-grid,.diagnostic-list{grid-template-columns:1fr 1fr}.theme-option{padding:8px}}

/* 所有主题共用语义色，避免切换底色后按钮、提示条和小字仍停留在旧配色。 */
html[data-theme="night"],html[data-theme="forest"],html[data-theme="black"]{--green:#8ce3bd;--green-bg:#173b31;--yellow:#ffd98a;--yellow-bg:#493714;--red:#ff9f94;--red-bg:#4b2421;--overlay:rgba(0,0,0,.68);--toast-bg:#f3f6fa;--toast-text:#111827}
html[data-theme="night"]{--on-accent:#102238}
html[data-theme="warm"],html[data-theme="cyan"],html[data-theme="forest"],html[data-theme="amber"],html[data-theme="orange"],html[data-theme="rose"],html[data-theme="sakura"],html[data-theme="black"]{--on-accent:#101010}
.button.primary{background:var(--blue);border-color:var(--blue);color:var(--on-accent)}.button.primary:hover{background:var(--blue);border-color:var(--blue);box-shadow:0 0 0 3px var(--focus)}
.nav-item.active{color:var(--text)}.nav-item.active .nav-icon,.step-number{color:var(--on-accent)}
.button.warm{background:var(--yellow-bg);border-color:var(--yellow);color:var(--yellow)}
.button.danger-outline{background:var(--control);border-color:var(--red);color:var(--red)}
.pill.muted,.status-chip,.server-card-meta span{background:var(--panel-soft);color:var(--subtle)}
.pill.success,.readiness .ready,.check-result.ready{background:var(--green-bg);color:var(--green)}
.pill.warning-pill,.readiness .not-ready,.check-result.waiting,.banner.warning{background:var(--yellow-bg);color:var(--yellow)}
.server-token-line{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:12px 0;padding:9px 10px;border-radius:8px;background:var(--panel-soft)}.server-token-line span{font-size:12px;color:var(--muted)}.server-token-line code{flex:1;min-width:170px;overflow-wrap:anywhere}
.income-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,.8fr);gap:18px;margin-bottom:18px}.income-grid>.panel{margin:0}.income-chart-card svg{display:block;width:100%;height:210px}.chart-axis{stroke:var(--line);stroke-width:2}.chart-area{fill:color-mix(in srgb,var(--blue) 12%,transparent)}.chart-line{fill:none;stroke:var(--blue);stroke-width:4;stroke-linecap:round;stroke-linejoin:round}.chart-point{fill:var(--control);stroke:var(--blue);stroke-width:3}.income-labels{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.income-labels span{display:grid;text-align:center;font-size:11px;color:var(--muted)}.income-labels b{color:var(--text);font-size:11px}.channel-share{display:grid;justify-items:center;gap:22px;padding:20px 0}.channel-donut{width:170px;height:170px;border-radius:50%;display:grid;place-items:center;position:relative}.channel-donut::after{content:"";position:absolute;inset:24px;border-radius:50%;background:var(--control)}.channel-donut span{position:relative;z-index:1;font-size:20px;font-weight:800}.channel-legend{width:100%;display:grid;gap:10px}.channel-legend>div{display:grid;grid-template-columns:12px 1fr auto;align-items:center;gap:8px}.channel-legend i{width:10px;height:10px;border-radius:50%}.wechat-dot{background:#20ad72}.alipay-dot{background:#1677ff}@media(max-width:900px){.income-grid{grid-template-columns:1fr}.income-labels b{display:none}}
.check-result.error{background:var(--red-bg);color:var(--red)}
.sidebar-foot,.system-list>div,.orders-table th,.orders-table td,.audit-list li{border-color:var(--line)}
.text-button,.empty-state,.orders-table th,.table-action{color:var(--subtle)}
.empty-state b{color:var(--text)}
.metric-icon,.server-symbol{background:var(--panel-soft);color:var(--blue)}
.info-box{background:var(--nav-active);border-color:var(--line)}
.info-box>span,.table-action{color:var(--blue)}
.mode-card:has(input:checked){border-color:var(--blue);background:var(--nav-active)}
.toast{background:var(--toast-bg);color:var(--toast-text)}
.modal-backdrop{background:var(--overlay)}
.channel-page-hidden{display:none!important}
.single-channel{max-width:640px;margin-top:14px}
.plain-steps{display:grid;gap:9px;margin:14px 0}.plain-steps>div{display:grid;gap:2px;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft)}.plain-steps span{color:var(--muted);font-size:13px}.inline-actions{display:flex;gap:9px;flex-wrap:wrap;margin:12px 0}
.orders-panel.loading{cursor:progress}.orders-panel.loading .table-scroll{opacity:.58}.orders-panel .table-scroll{transition:opacity .08s linear}
.shop-toolbar{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:18px}.shop-toolbar .field{min-width:min(420px,100%)}.shop-editor{display:grid;gap:18px}.shop-heading{padding:0 4px}.product-editor-list{display:grid;gap:16px}.product-editor{padding:22px}.product-editor .panel-head{padding-bottom:16px;margin-bottom:16px;border-bottom:1px solid var(--line)}.inline-checks,.preset-row>div{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.inline-checks label{display:inline-flex;align-items:center;gap:7px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft);color:var(--text)}.inline-checks input{width:18px;min-height:18px}.check-line{display:flex;align-items:center;gap:8px;font-weight:700}.check-line input{width:18px;height:18px;min-height:18px;flex:0 0 18px}.preset-row select{min-width:250px}.shop-save-bar{position:sticky;bottom:14px;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px;border:1px solid var(--line);border-radius:12px;background:var(--panel);box-shadow:var(--shadow)}.shop-save-bar .form-message{margin:0}.form-message.success{color:var(--green)}
@media(max-width:640px){.shop-toolbar,.shop-save-bar{align-items:stretch;flex-direction:column}.shop-toolbar .button,.shop-save-bar .button{width:100%}.preset-row>div{align-items:stretch;flex-direction:column}.preset-row select{min-width:0;width:100%}}
.product-warning{display:block;margin-top:6px;color:var(--danger);font-weight:700}
