/* 账准 Pro：六类财务运营页面的统一视觉系统 */
.theme-picker{display:none!important}

:root{
  --page:#eef0ec;
  --bg:#fffefd;
  --panel-2:#f3f5f1;
  --border:rgba(20,32,26,.08);
  --ink-1:#14201a;
  --ink-2:#3c4a43;
  --ink-3:#66756c;
  --accent:#2f6b4f;
  --accent-2:#b37a2b;
  --accent-soft:rgba(47,107,79,.10);
  --on-accent:#f8fbf8;
  --up:#2c7180;
  --down:#bd4139;
  --warn:#a96f14;
  --rail:#142019;
  --rail-2:#1c2b22;
  --rail-ink:#a9b8ad;
  --rail-border:rgba(239,246,241,.08);
  --danger-soft:#fbefed;--warning-soft:#fbf7ee;--success-soft:#edf5f0;
  --danger-ink:#982f2a;--warning-ink:#8d5b0f;--success-ink:#285f46;
  --header:rgba(255,254,253,.92);
  --r:16px;
  --r-sm:11px;
  --shadow:0 1px 3px rgba(20,40,30,.05),0 12px 28px rgba(20,40,30,.035);
  --shadow-lg:0 28px 70px -35px rgba(20,40,30,.42);
  --primary:var(--accent);
  --green:var(--accent);
  --text:var(--ink-1);
  --muted:var(--ink-3);
}

html[data-theme="navy"]{--page:#edf0f6;--bg:#fbfcfe;--panel-2:#f3f6fa;--border:rgba(20,32,56,.08);--ink-1:#121a2b;--ink-2:#3a465c;--ink-3:#647086;--accent:#2d5bd8;--accent-2:#c27b24;--accent-soft:rgba(45,91,216,.10);--on-accent:#f8faff;--up:#28745a;--down:#bd4139;--warn:#a96f14;--rail:#111a2b;--rail-2:#18243a;--rail-ink:#a9b5c8;--rail-border:rgba(238,243,252,.08);--danger-soft:#f9eceb;--warning-soft:#faf5e9;--success-soft:#edf3fb;--danger-ink:#9a322d;--warning-ink:#82570f;--success-ink:#234a92;--header:rgba(251,252,254,.92);--shadow:0 1px 3px rgba(20,34,64,.05),0 12px 28px rgba(20,34,64,.035);--shadow-lg:0 28px 70px -35px rgba(20,34,64,.42)}
html[data-theme="amber"]{--page:#f4f0e9;--bg:#fffdfa;--panel-2:#faf6f0;--border:rgba(48,32,20,.08);--ink-1:#1f1710;--ink-2:#4a3f34;--ink-3:#7a6a59;--accent:#b84e21;--accent-2:#27685f;--accent-soft:rgba(184,78,33,.11);--on-accent:#fffaf6;--up:#2f7254;--down:#b93f38;--warn:#a86d12;--rail:#211710;--rail-2:#302118;--rail-ink:#c0ad9c;--rail-border:rgba(253,244,235,.08);--danger-soft:#fbeeea;--warning-soft:#fbf3e5;--success-soft:#edf5f1;--danger-ink:#963a2f;--warning-ink:#87580d;--success-ink:#27614a;--header:rgba(255,253,250,.92);--shadow:0 1px 3px rgba(60,38,20,.05),0 12px 28px rgba(60,38,20,.035);--shadow-lg:0 28px 70px -35px rgba(60,38,20,.42)}
html[data-theme="mono"]{--page:#eceeed;--bg:#fafbfa;--panel-2:#f1f2f1;--border:rgba(24,28,26,.09);--ink-1:#171a18;--ink-2:#3f4541;--ink-3:#68706b;--accent:#2b3039;--accent-2:#6d756f;--accent-soft:rgba(43,48,57,.09);--on-accent:#f8f9f8;--up:#2f7153;--down:#b83f38;--warn:#9b6917;--rail:#151716;--rail-2:#202321;--rail-ink:#aeb5b0;--rail-border:rgba(247,249,247,.08);--danger-soft:#f6eceb;--warning-soft:#f6f2e9;--success-soft:#edf3ef;--danger-ink:#94342f;--warning-ink:#785414;--success-ink:#315e47;--header:rgba(250,251,250,.92);--shadow:0 1px 3px rgba(24,30,26,.05),0 12px 28px rgba(24,30,26,.035);--shadow-lg:0 28px 70px -35px rgba(24,30,26,.42)}
html[data-theme="midnight"]{--page:#08090f;--bg:#12141c;--panel-2:#1a1d27;--border:rgba(238,241,249,.08);--ink-1:#eceef5;--ink-2:#b5bac9;--ink-3:#9299ad;--accent:#e8a33d;--accent-2:#8593ff;--accent-soft:rgba(232,163,61,.13);--on-accent:#171108;--up:#4acb8a;--down:#ff7168;--warn:#e8a33d;--rail:#0c0d13;--rail-2:#171923;--rail-ink:#9ca2b2;--rail-border:rgba(244,246,252,.08);--danger-soft:#2a191d;--warning-soft:#2a2419;--success-soft:#182821;--danger-ink:#ff8b83;--warning-ink:#edb967;--success-ink:#72dca6;--header:rgba(18,20,28,.94);--shadow:0 1px 3px rgba(2,3,8,.38),0 14px 32px rgba(2,3,8,.18);--shadow-lg:0 34px 80px -30px rgba(2,3,8,.85)}
html[data-theme="violet"]{--page:#eeecf4;--bg:#fcfbfe;--panel-2:#f5f3f9;--border:rgba(36,25,56,.08);--ink-1:#1b1628;--ink-2:#484058;--ink-3:#716982;--accent:#7c3f9e;--accent-2:#b77a16;--accent-soft:rgba(124,63,158,.10);--on-accent:#fff9ff;--up:#28745a;--down:#bd4139;--warn:#a96f14;--rail:#1b1525;--rail-2:#281e36;--rail-ink:#b8acc5;--rail-border:rgba(247,240,252,.08);--danger-soft:#f8ecef;--warning-soft:#faf4e9;--success-soft:#eef4f0;--danger-ink:#96352f;--warning-ink:#80570f;--success-ink:#2b6148;--header:rgba(252,251,254,.92);--shadow:0 1px 3px rgba(38,24,56,.05),0 12px 28px rgba(38,24,56,.035);--shadow-lg:0 28px 70px -35px rgba(38,24,56,.42)}

/* 六套候选方案：不仅改变色板，也改变产品壳层与信息密度。 */
html[data-theme="sage"]{--page:#f2f3fb;--bg:#fdfdff;--panel-2:#f6f6fc;--border:rgba(31,32,69,.08);--ink-1:#17182e;--ink-2:#45465f;--ink-3:#696b83;--accent:#635bff;--accent-2:#0f8b7b;--accent-soft:rgba(99,91,255,.10);--on-accent:#fbfaff;--rail:#fdfdff;--rail-2:#f2f2fa;--rail-ink:#53556f;--rail-border:rgba(31,32,69,.08);--header:rgba(253,253,255,.94);--shadow:0 1px 2px rgba(28,28,66,.04),0 14px 36px rgba(28,28,66,.04);--shadow-lg:0 32px 80px -38px rgba(28,28,66,.34)}
html[data-theme="navy"]{--page:#e9ece7;--bg:#f8faf6;--panel-2:#eef1eb;--border:rgba(20,26,19,.09);--ink-1:#121611;--ink-2:#3c4539;--ink-3:#687363;--accent:#557b10;--accent-2:#242923;--accent-soft:rgba(85,123,16,.13);--on-accent:#fbfff4;--rail:#171a16;--rail-2:#242822;--rail-ink:#b8c0b4;--rail-border:rgba(245,249,242,.08);--header:rgba(248,250,246,.94);--shadow:0 1px 3px rgba(20,28,18,.06),0 18px 42px rgba(20,28,18,.055);--shadow-lg:0 40px 90px -38px rgba(20,28,18,.48)}
html[data-theme="amber"]{--page:#070d12;--bg:#0e171d;--panel-2:#152129;--border:rgba(226,244,244,.09);--ink-1:#edf7f6;--ink-2:#b7cbca;--ink-3:#8fa6a5;--accent:#36d6c3;--accent-2:#e3ad54;--accent-soft:rgba(54,214,195,.13);--on-accent:#061411;--up:#48d59a;--down:#ff746c;--warn:#e3ad54;--rail:#080f14;--rail-2:#111c22;--rail-ink:#9eb3b2;--rail-border:rgba(230,247,246,.08);--danger-soft:#2b191d;--warning-soft:#292319;--success-soft:#152923;--danger-ink:#ff8e87;--warning-ink:#ecc174;--success-ink:#78e1ae;--header:rgba(14,23,29,.96);--shadow:0 1px 3px rgba(1,5,8,.5);--shadow-lg:0 34px 80px -30px rgba(1,5,8,.88)}
html[data-theme="mono"]{--page:#f5f6f7;--bg:#fcfdff;--panel-2:#f1f3f5;--border:rgba(25,35,50,.08);--ink-1:#1f2329;--ink-2:#414750;--ink-3:#646b75;--accent:#2d63e0;--accent-2:#00a870;--accent-soft:rgba(45,99,224,.10);--on-accent:#f9fbff;--rail:#f8f9fa;--rail-2:#eef1f4;--rail-ink:#4f5660;--rail-border:rgba(25,35,50,.08);--header:rgba(252,253,255,.96);--shadow:0 1px 2px rgba(25,35,50,.035);--shadow-lg:0 22px 60px -34px rgba(25,35,50,.3)}
html[data-theme="midnight"]{--page:#eef2f7;--bg:#fbfcfe;--panel-2:#f3f6fa;--border:rgba(16,41,77,.10);--ink-1:#13233a;--ink-2:#40506a;--ink-3:#65748a;--accent:#0f62c9;--accent-2:#d17616;--accent-soft:rgba(15,98,201,.10);--on-accent:#f8fbff;--up:#19734e;--down:#b83832;--warn:#98600f;--rail:#14365f;--rail-2:#1b477a;--rail-ink:#c5d5e7;--rail-border:rgba(239,246,254,.10);--danger-soft:#f7eceb;--warning-soft:#f8f3e8;--success-soft:#edf4f0;--danger-ink:#91332e;--warning-ink:#76510f;--success-ink:#2b6048;--header:rgba(251,252,254,.96);--shadow:0 1px 2px rgba(16,41,77,.04);--shadow-lg:0 24px 60px -34px rgba(16,41,77,.34)}
html[data-theme="violet"]{--page:#f0ebe1;--bg:#faf7f0;--panel-2:#f4efe5;--border:rgba(45,35,26,.11);--ink-1:#221b16;--ink-2:#4d433b;--ink-3:#72665c;--accent:#963f2b;--accent-2:#465f4b;--accent-soft:rgba(150,63,43,.10);--on-accent:#fff9f2;--up:#326548;--down:#a8332d;--warn:#8d6418;--rail:#211b17;--rail-2:#302720;--rail-ink:#c3b8ae;--rail-border:rgba(250,242,232,.09);--danger-soft:#f5e8e4;--warning-soft:#f4ede0;--success-soft:#eaf0e9;--danger-ink:#8e302a;--warning-ink:#71500f;--success-ink:#315d43;--header:rgba(250,247,240,.96);--shadow:none;--shadow-lg:0 30px 70px -38px rgba(45,35,26,.38)}

html{background:var(--page);scroll-behavior:smooth}
body{background:var(--page);color:var(--ink-1);font-family:"Segoe UI Variable","Microsoft YaHei UI","Microsoft YaHei",sans-serif;font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}
button,input,select{color:inherit}
button{min-height:44px}
button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 32%,transparent);outline-offset:2px}
.skip-link{position:fixed;z-index:100;left:16px;top:12px;transform:translateY(-80px);background:var(--ink-1);color:var(--on-accent);padding:10px 14px;border-radius:9px;text-decoration:none;transition:transform .18s}
.skip-link:focus{transform:none}

aside{width:248px;background:var(--rail);padding:22px 16px 16px;border-right:1px solid var(--rail-border);box-shadow:8px 0 30px rgba(13,29,20,.06)}
.brand{padding:2px 10px 27px;gap:12px}
.brand>b{width:38px;height:38px;border-radius:12px;background:var(--accent);box-shadow:0 9px 22px rgba(47,107,79,.28);font-size:18px}
.brand strong{font-size:17px;letter-spacing:-.02em}.brand small{color:#879b8d;font-size:11px}
nav label{color:#718579;font-size:11px;margin:19px 12px 8px;letter-spacing:.08em}
nav button{height:44px;border-radius:10px;color:var(--rail-ink);padding:0 13px;margin:2px 0;font-weight:500}
nav button:hover{background:var(--rail-2);color:#eef5f0}
nav button.active{background:var(--accent);color:var(--on-accent);font-weight:650;box-shadow:0 8px 18px rgba(8,23,14,.22)}
nav em{background:var(--down);line-height:19px;min-width:19px}.nav-warn{background:var(--warn)!important}
.sync{background:rgba(189,65,57,.08);border-color:rgba(236,116,105,.2);border-radius:12px;padding:12px}.sync.sync-danger strong{color:#f0a19a}.sync.sync-danger small{color:#c78882}
.user{border-top-color:var(--rail-border);padding-top:16px}.user>b{background:var(--accent-soft);color:#8ed0aa}.user small{color:#7f9386}

main{margin-left:248px;min-width:0}
header{height:68px;background:var(--header);border-color:var(--border);padding:0 32px;backdrop-filter:blur(14px)}
header span{color:var(--ink-3)}
.icon{width:44px;height:44px;border:1px solid transparent}.icon:hover{background:var(--panel-2);border-color:var(--border)}
.primary,.secondary{min-height:44px;height:44px;border-radius:10px;padding:0 16px;white-space:nowrap}
.primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent);box-shadow:0 7px 18px rgba(47,107,79,.16)}
.primary:hover{background:color-mix(in srgb,var(--accent) 88%,var(--ink-1));border-color:color-mix(in srgb,var(--accent) 88%,var(--ink-1))}
.secondary{background:var(--bg);border-color:var(--border);color:var(--ink-2)}.secondary:hover{background:var(--panel-2)}
.link{color:var(--accent);min-height:44px;font-weight:650}
.theme-picker{position:relative}.theme-trigger{height:44px;min-height:44px;display:flex;align-items:center;gap:8px;border:1px solid var(--border);border-radius:10px;background:var(--bg);padding:0 11px;color:var(--ink-2);box-shadow:var(--shadow)}
.theme-trigger>i{width:12px;height:12px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.theme-trigger>b{font-size:12px;color:var(--ink-3)}
.theme-menu{display:none;position:absolute;right:0;top:52px;z-index:30;width:310px;padding:8px;background:var(--bg);border:1px solid var(--border);border-radius:15px;box-shadow:var(--shadow-lg);grid-template-columns:1fr 1fr;gap:4px}
.theme-picker.open .theme-menu{display:grid}.theme-menu>button{display:flex;align-items:center;gap:9px;min-height:58px;border:0;border-radius:10px;padding:8px 10px;background:transparent;text-align:left;color:var(--ink-2)}.theme-menu>button:hover,.theme-menu>button.active{background:var(--panel-2)}
.theme-menu>button>i{width:22px;height:22px;flex:0 0 22px;border-radius:7px;background:var(--swatch);box-shadow:inset 0 0 0 1px rgba(127,127,127,.16)}.theme-menu span{min-width:0}.theme-menu span b,.theme-menu span small{display:block}.theme-menu span b{font-size:12px}.theme-menu span small{margin-top:2px;color:var(--ink-3);font-size:10px}.theme-menu em{display:none;margin-left:auto;color:var(--accent);font-style:normal}.theme-menu button.active em{display:block}

.page{padding:32px;max-width:1560px}
.heading{align-items:center;margin-bottom:22px;gap:20px}
.heading h1{font-size:26px;line-height:1.2;letter-spacing:-.035em;margin-bottom:7px}.heading p{color:var(--ink-3);font-size:13px}
.panel,.metrics article,.timeline article,.sources article,.batch-meta,.recon-flow,.source-compare article{background:var(--bg);border-color:var(--border);border-radius:var(--r);box-shadow:var(--shadow)}
.panel{padding:21px}.panel-head h2{font-size:16px;letter-spacing:-.015em}.panel-head p{font-size:12px;color:var(--ink-3)}
.pill{border-radius:999px;padding:4px 9px;font-size:11px;font-weight:650}
.success{background:var(--success-soft);color:var(--success-ink)}.amber{background:var(--warning-soft);color:var(--warning-ink)}.error{background:var(--danger-soft);color:var(--danger-ink)}.muted{background:var(--panel-2);color:var(--ink-3)}

/* 模板 1：工作台。概览优先，风险门禁先于统计。 */
#home .critical-alert{border-radius:var(--r);padding:15px 17px;background:var(--danger-soft)!important;border-color:color-mix(in srgb,var(--down) 22%,transparent)!important}
#home .critical-alert> b{width:26px;height:26px;background:var(--down)!important}
#home .batch-meta{border-left:0;padding:15px 18px;gap:30px}
.metrics{gap:14px}.metrics article{padding:18px 19px;box-shadow:var(--shadow)}
.metrics article>span{color:var(--ink-3);font-size:12px}.metrics article>strong{font-size:25px;letter-spacing:-.04em;font-variant-numeric:tabular-nums;color:var(--ink-1)}
.metrics i{border-radius:10px}.blue,.purple,.green{background:var(--accent-soft);color:var(--accent)}.orange{background:rgba(169,111,20,.11);color:var(--warn)}
.gate-steps li{padding:13px 4px;border-color:var(--border)}.gate-steps li>b{background:var(--panel-2);color:var(--ink-3)}
.risk-summary>p{border-color:var(--border)}

/* 模板 2：对账中心。流程与差异队列优先。 */
#recon .recon-flow{padding:17px 20px;margin-bottom:14px}
#recon .flow-step i{width:30px;height:30px;border-color:var(--border);background:var(--panel-2)}
#recon .flow-step.done i{background:var(--accent-soft);border-color:rgba(47,107,79,.22);color:var(--accent)}
#recon .flow-step.active i{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}
#recon .source-compare{gap:2px;margin-bottom:14px}.source-compare article{padding:16px}.source-icon{border-radius:11px}.upstream-icon{background:rgba(169,111,20,.11);color:var(--warn)}.system-icon{background:var(--accent-soft);color:var(--accent)}
#recon .match-summary{gap:12px}.match-summary article{border:1px solid var(--border);border-radius:var(--r-sm);padding:14px 16px;box-shadow:var(--shadow)}
.match-summary article.danger-card{border-color:color-mix(in srgb,var(--down) 20%,transparent);background:var(--danger-soft)}.match-summary article.warning-card{border-color:color-mix(in srgb,var(--warn) 20%,transparent);background:var(--warning-soft)}
.tabs{background:rgba(20,32,26,.06);border-radius:11px}.tabs button{min-height:38px;border-radius:8px}.tabs button.active{color:var(--ink-1);box-shadow:var(--shadow)}
.toolbar label{height:44px;border-color:var(--border);border-radius:10px;background:var(--panel-2)}

/* 模板 3：客户账单。金额汇总与出账条件并列。 */
#bills .bill-readiness{border-radius:var(--r);padding:14px 17px;background:var(--warning-soft);border-color:color-mix(in srgb,var(--warn) 20%,transparent)}
#bills .export-policy{border-radius:var(--r);background:var(--accent-soft);border-color:rgba(47,107,79,.16)}
#bills .export-policy b{color:var(--accent)}
.billing-layout{gap:16px}.fee-grid{border-color:var(--border);border-radius:var(--r-sm);background:var(--panel-2)}.fee-grid>div{background:var(--bg);border-color:var(--border);padding:15px}.fee-grid b{font-size:15px;font-variant-numeric:tabular-nums}.fee-grid .missing-fee{background:var(--warning-soft)}
.bill-total{border-top:1px solid var(--border);margin-top:18px}.bill-total .grand b{color:var(--accent);font-size:24px}.bill-side .panel{position:sticky;top:84px}

/* 模板 4：预付款台账。渠道状态与流水处理优先。 */
#prepay .wx-status{border-radius:var(--r);padding:15px 17px;background:var(--success-soft);border-color:color-mix(in srgb,var(--up) 20%,transparent);box-shadow:var(--shadow)}
#prepay .wx-logo{background:var(--accent);border-radius:11px}.wx-status button{color:var(--accent);min-height:44px}
#prepay .bot-guide{border-radius:var(--r);border-color:var(--border);box-shadow:var(--shadow);overflow:hidden}
#prepay .guide-copy{background:var(--bg)}#prepay .guide-copy pre{background:var(--rail);color:#dce8df;border-radius:12px;border:1px solid var(--rail-border)}
#prepay .flow{background:var(--panel-2)}#prepay .flow i{background:var(--accent);color:var(--on-accent)}
.progressbar{background:rgba(47,107,79,.1)}.progressbar i{background:var(--accent)}.money{color:var(--accent)}

/* 模板 5：收费标准。版本时间线采用可扫描的生效状态。 */
#rules .timeline{gap:12px;position:relative}
#rules .timeline:before{content:"";position:absolute;left:48px;top:24px;bottom:24px;width:1px;background:rgba(47,107,79,.18)}
#rules .timeline article{position:relative;padding:19px 22px;gap:22px;transition:transform .18s,box-shadow .18s}
#rules .timeline article:hover{transform:translateY(-1px);box-shadow:0 14px 34px rgba(20,40,30,.08)}
#rules .timeline article.current{border-left:1px solid var(--border);background:#f7faf7}
#rules .timeline article>b{position:relative;z-index:1;width:58px;color:var(--accent);background:var(--bg);border:1px solid var(--border);border-radius:9px;padding:5px 7px;text-align:center;font-size:14px}

/* 模板 6：数据质检。阻断原因和文件级结果优先。 */
#sources .quality-gate{border-radius:var(--r);padding:18px 20px;background:var(--danger-soft);border-color:color-mix(in srgb,var(--down) 20%,transparent);box-shadow:var(--shadow)}
#sources .quality-gate b{color:var(--danger-ink)}#sources .quality-gate p{color:var(--ink-2);line-height:1.65}
#sources .sources{gap:12px}.sources article{padding:18px 20px;gap:16px}.sources article>i{width:42px;height:42px;border-radius:12px;background:var(--accent-soft);color:var(--accent)}
.sources h2{font-size:15px}.sources article span small{color:var(--ink-3)}

.batch-meta{padding:15px 18px}.batch-meta small{color:var(--ink-3)}.batch-meta b{color:var(--ink-1)}
.tablewrap{scrollbar-width:thin;scrollbar-color:rgba(47,107,79,.25) transparent}
table{font-variant-numeric:tabular-nums}th,td{border-color:var(--border);padding:13px 16px}th{background:var(--panel-2);color:var(--ink-3);font-size:11px;letter-spacing:.02em}td{color:var(--ink-2)}tbody tr:hover td{background:rgba(47,107,79,.035)}
.pagination button{min-width:32px;height:32px;min-height:32px;border-color:var(--border);border-radius:8px}.pagination button.active{background:var(--accent);border-color:var(--accent)}
.backdrop{background:rgba(15,28,20,.62);backdrop-filter:blur(4px)}.modal{border-radius:20px;background:var(--bg);box-shadow:var(--shadow-lg)}.modal-head{border-color:var(--border)}.steps{background:var(--panel-2)}

/* 旧组件的主题兼容层：所有可见表面和文本均回到语义变量。 */
header span,.icon,.metrics article>span,.metrics article>strong small,.metrics p,.panel-head p,.source-compare small,.source-compare p,.match-summary span,.match-summary small,.fee-grid span,.fee-grid small,.bill-total small,.checklist small,.timeline p,.timeline article>strong,.sources p,.prepay-table td>small,.muted-text,.pagination{color:var(--ink-3)}
.critical-alert strong,.critical-alert button,.red,.gate-steps .failed em{color:var(--danger-ink)}.alert span small{color:var(--ink-2)}
.bill-readiness .ready,.ok,.money{color:var(--success-ink)}.bill-readiness .blocked,.fee-grid .missing-fee b{color:var(--warning-ink)}
.tabs button.active,.pagination button,.choices button,.form select,.keys label,.keys button,.modal-foot .wx-close,.modal-foot .mobile-close,.field,.upload-box{background:var(--bg);border-color:var(--border);color:var(--ink-2)}
.tabs button.active{color:var(--ink-1)}.pagination button.active,.steps b.active,.steps b:first-child{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}
.toolbar input{background:transparent;color:var(--ink-1)}.toolbar input::placeholder{color:var(--ink-3)}
.choices button.selected{border-color:var(--accent);background:var(--accent-soft)}.choices button>i,.keys label>b{background:var(--accent-soft);color:var(--accent)}.choices b,.choices small{color:var(--ink-2)}.choices em,.keys button{color:var(--accent)}
.standard-notice,.security-note{background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 22%,transparent)}.standard-notice b,.security-note b{color:var(--accent)}.standard-notice p,.security-note p,.rulechecks label{color:var(--ink-2)}
.rule-summary span{background:var(--panel-2);border-color:var(--border);color:var(--ink-2)}.confirm-card{border-color:var(--border)}.confirm-card dl div,.checklist li{border-color:var(--border)}.confirm-card dt{color:var(--ink-3)}
.source-risk{background:var(--danger-soft)!important;border-color:color-mix(in srgb,var(--down) 20%,transparent)!important}
.checklist .pass>b{background:var(--success-soft);color:var(--success-ink)}.checklist .warn-item>b{background:var(--warning-soft);color:var(--warning-ink)}.checklist .fail>b{background:var(--danger-soft);color:var(--danger-ink)}
.bot-guide{background:var(--bg);border-color:var(--border)}.eyebrow{color:var(--accent)}.guide-copy>p,.flow small,.wx-status p{color:var(--ink-3)}.guide-copy pre{background:var(--rail);color:var(--rail-ink);border-color:var(--rail-border)}.guide-copy pre b{color:var(--accent)}.upload-box{border-style:dashed;color:var(--accent)}
.progressbar,.bars>i{background:var(--panel-2)}.progressbar i,.bars>i b{background:var(--accent)}
.toast{background:var(--rail);color:var(--on-accent);box-shadow:var(--shadow-lg)}.toast span b{color:color-mix(in srgb,var(--rail-ink) 15%,#f8f8f6)}.toast span small{color:var(--rail-ink)}
html[data-theme="midnight"] .panel,html[data-theme="midnight"] .metrics article,html[data-theme="midnight"] .timeline article,html[data-theme="midnight"] .sources article,html[data-theme="midnight"] .batch-meta,html[data-theme="midnight"] .recon-flow,html[data-theme="midnight"] .source-compare article{box-shadow:var(--shadow)}

@media(min-width:761px){
  /* 1 云端财务：顶部横向产品导航，宽松、轻边界。 */
  html[data-theme="sage"] .app>aside{position:sticky;inset:0;width:100%;height:78px;padding:0 30px;flex-direction:row;align-items:center;background:var(--bg);color:var(--ink-1);border-right:0;border-bottom:1px solid var(--border);box-shadow:none}
  html[data-theme="sage"] .brand{padding:0 24px 0 0;min-width:190px}html[data-theme="sage"] .brand>b{width:34px;height:34px;border-radius:9px;background:var(--accent);box-shadow:none}html[data-theme="sage"] .brand strong{color:var(--ink-1)}html[data-theme="sage"] .brand small{color:var(--ink-3)}
  html[data-theme="sage"] .app>aside nav{display:flex;align-items:center;gap:3px;flex:1}html[data-theme="sage"] .app>aside nav label,html[data-theme="sage"] .sync,html[data-theme="sage"] .user{display:none}html[data-theme="sage"] .app>aside nav button{width:auto;padding:0 13px;color:var(--ink-2);border-radius:9px;text-align:center}html[data-theme="sage"] .app>aside nav button:hover{background:var(--panel-2);color:var(--ink-1)}html[data-theme="sage"] .app>aside nav button.active{background:var(--accent-soft);color:var(--accent);box-shadow:none}
  html[data-theme="sage"] main{margin-left:0}html[data-theme="sage"] header{top:78px;height:64px;padding:0 max(32px,calc((100vw - 1440px)/2 + 32px));box-shadow:0 1px 0 var(--border)}html[data-theme="sage"] .page{max-width:1440px;padding:38px 32px}html[data-theme="sage"] .heading{margin-bottom:26px}html[data-theme="sage"] .heading h1{font-size:29px}html[data-theme="sage"] .panel,html[data-theme="sage"] .metrics article{border-radius:18px;box-shadow:0 1px 2px rgba(28,28,66,.035)}

  /* 2 锋锐增长：浮动应用壳、黑绿高对比、紧凑卡片。 */
  html[data-theme="navy"] body{padding:14px}html[data-theme="navy"] .app>aside{inset:14px auto 14px 14px;width:218px;height:auto;border-radius:22px;padding:19px 13px;box-shadow:0 28px 70px -36px rgba(15,22,12,.62)}html[data-theme="navy"] main{margin-left:232px;border-radius:22px;overflow:clip;background:var(--page);min-height:calc(100vh - 28px)}html[data-theme="navy"] header{height:62px;border-radius:22px 22px 0 0;padding:0 22px}html[data-theme="navy"] .page{padding:22px;max-width:none}html[data-theme="navy"] .heading h1{font-size:25px;font-weight:800}html[data-theme="navy"] .metrics{grid-template-columns:1.3fr 1fr 1fr 1fr;gap:10px}html[data-theme="navy"] .metrics article,html[data-theme="navy"] .panel,html[data-theme="navy"] .batch-meta{border-radius:13px;box-shadow:none}html[data-theme="navy"] .primary{border-radius:999px}html[data-theme="navy"] .secondary{border-radius:999px}html[data-theme="navy"] nav button.active{color:#17200f;background:#b7f34a;box-shadow:none}

  /* 3 财务驾驶舱：全深色、高密度、硬朗监控面板。 */
  html[data-theme="amber"] .app>aside{width:206px;padding:16px 11px;background:var(--rail);box-shadow:none}html[data-theme="amber"] main{margin-left:206px}html[data-theme="amber"] header{height:56px;padding:0 20px;background:var(--header)}html[data-theme="amber"] .page{padding:18px 20px;max-width:none}html[data-theme="amber"] .heading{margin-bottom:15px}html[data-theme="amber"] .heading h1{font-size:23px}html[data-theme="amber"] .metrics{gap:8px;margin-bottom:9px}html[data-theme="amber"] .metrics article,html[data-theme="amber"] .panel,html[data-theme="amber"] .batch-meta,html[data-theme="amber"] .recon-flow,html[data-theme="amber"] .source-compare article{border-radius:5px;box-shadow:none}html[data-theme="amber"] .grid{gap:9px;margin-bottom:9px}html[data-theme="amber"] .primary,html[data-theme="amber"] .secondary,html[data-theme="amber"] .theme-trigger{border-radius:4px}html[data-theme="amber"] th{letter-spacing:.08em;text-transform:uppercase}html[data-theme="amber"] nav button{border-radius:4px;height:39px}html[data-theme="amber"] nav button.active{background:var(--accent);color:var(--on-accent);box-shadow:none}

  /* 4 飞书效率台：浅色侧栏、轻量办公密度、低阴影。 */
  html[data-theme="mono"] .app>aside{width:224px;padding:20px 12px;background:var(--rail);color:var(--ink-1);border-right:1px solid var(--border);box-shadow:none}html[data-theme="mono"] main{margin-left:224px}html[data-theme="mono"] .brand strong{color:var(--ink-1)}html[data-theme="mono"] .brand small,html[data-theme="mono"] nav label{color:var(--ink-3)}html[data-theme="mono"] nav button{color:var(--ink-2);border-radius:7px}html[data-theme="mono"] nav button:hover{background:var(--rail-2);color:var(--ink-1)}html[data-theme="mono"] nav button.active{background:var(--accent-soft);color:var(--accent);box-shadow:none}html[data-theme="mono"] .sync{background:var(--danger-soft);border-color:color-mix(in srgb,var(--down) 18%,transparent)}html[data-theme="mono"] .user{border-color:var(--border);color:var(--ink-2)}html[data-theme="mono"] header{height:60px;padding:0 24px;box-shadow:none}html[data-theme="mono"] .page{padding:24px;max-width:none}html[data-theme="mono"] .panel,html[data-theme="mono"] .metrics article,html[data-theme="mono"] .batch-meta{border-radius:9px;box-shadow:none}html[data-theme="mono"] .primary,html[data-theme="mono"] .secondary{border-radius:7px}html[data-theme="mono"] .metrics{gap:12px}

  /* 5 企业控制中心：经典蓝灰模块，强调操作边界。 */
  html[data-theme="midnight"] .app>aside{width:236px;padding:22px 14px;background:var(--rail);box-shadow:none}html[data-theme="midnight"] main{margin-left:236px}html[data-theme="midnight"] header{height:62px;padding:0 26px;border-bottom:3px solid var(--accent)}html[data-theme="midnight"] .page{padding:26px;max-width:none}html[data-theme="midnight"] .panel,html[data-theme="midnight"] .metrics article,html[data-theme="midnight"] .batch-meta,html[data-theme="midnight"] .recon-flow,html[data-theme="midnight"] .source-compare article{border-radius:6px;box-shadow:none}html[data-theme="midnight"] .primary,html[data-theme="midnight"] .secondary,html[data-theme="midnight"] .theme-trigger{border-radius:5px}html[data-theme="midnight"] nav button{border-radius:5px}html[data-theme="midnight"] nav button.active{background:rgba(255,255,255,.14);color:#f5f9ff;box-shadow:inset 3px 0 0 #79b5ff}html[data-theme="midnight"] th{background:#e8eef6;color:#42546c}html[data-theme="midnight"] .heading h1{font-size:24px}

  /* 6 编辑式账本：暖纸张、窄栏、弱圆角、排版主导。 */
  html[data-theme="violet"] .app>aside{width:184px;padding:24px 10px;background:var(--rail);box-shadow:none}html[data-theme="violet"] main{margin-left:184px}html[data-theme="violet"] .brand{padding-left:5px}.brand strong{letter-spacing:-.02em}html[data-theme="violet"] .brand small{display:none}html[data-theme="violet"] nav label{margin-left:8px}html[data-theme="violet"] nav button{border-radius:2px;padding-left:9px}html[data-theme="violet"] nav button.active{background:transparent;color:#fff8ee;box-shadow:inset 2px 0 0 var(--accent);padding-left:15px}html[data-theme="violet"] header{height:70px;padding:0 34px;border-bottom:1px solid var(--border);box-shadow:none}html[data-theme="violet"] .page{max-width:1280px;padding:42px 38px}html[data-theme="violet"] .heading h1,html[data-theme="violet"] .panel-head h2,html[data-theme="violet"] #rules .timeline h2{font-family:Georgia,"Noto Serif SC","Songti SC",serif;font-weight:600}html[data-theme="violet"] .heading h1{font-size:31px;letter-spacing:-.035em}html[data-theme="violet"] .panel,html[data-theme="violet"] .metrics article,html[data-theme="violet"] .batch-meta,html[data-theme="violet"] .recon-flow,html[data-theme="violet"] .source-compare article{border-radius:2px;box-shadow:none}html[data-theme="violet"] .metrics{grid-template-columns:2fr repeat(3,1fr);gap:0;border:1px solid var(--border)}html[data-theme="violet"] .metrics article{border:0;border-right:1px solid var(--border)}html[data-theme="violet"] .metrics article:last-child{border-right:0}html[data-theme="violet"] .primary,html[data-theme="violet"] .secondary,html[data-theme="violet"] .theme-trigger{border-radius:2px}html[data-theme="violet"] th{font-family:Georgia,"Noto Serif SC","Songti SC",serif;background:transparent;border-bottom:2px solid var(--ink-1)}
}

@media(max-width:1100px){
  aside{width:224px}main{margin-left:224px}.page{padding:26px 22px}.batch-meta{gap:18px}
}
@media(max-width:760px){
  aside{width:min(86vw,300px);box-shadow:18px 0 50px rgba(13,29,20,.25)}main{margin-left:0}header{height:62px;padding:0 14px}.theme-trigger{width:44px;padding:0;justify-content:center}.theme-trigger span,.theme-trigger b{display:none}.theme-menu{position:fixed;top:70px;left:14px;right:14px;width:auto}.theme-menu span{display:block!important}.page{padding:20px 14px 28px}.heading{align-items:flex-start;flex-direction:column}.heading>div:last-child{width:100%;flex-wrap:wrap}.heading h1{font-size:23px}.heading .primary{flex:1}.primary,.secondary{min-height:44px}.panel{padding:17px}.batch-meta{gap:14px}.batch-meta span{min-width:calc(50% - 14px)}.metrics{gap:10px}.metrics article{padding:16px}.critical-alert{align-items:flex-start;flex-wrap:wrap}.critical-alert button{margin-left:36px}.toolbar .secondary{flex:1}.tabs{display:flex;max-width:100%;overflow:auto}.tabs button{flex:0 0 auto}.source-compare article{align-items:flex-start}.source-compare article .secondary{min-height:36px}.quality-gate button{width:100%}.bill-side .panel{position:static}#rules .timeline:before{left:42px}.timeline article{align-items:flex-start}.timeline article>strong{white-space:nowrap}.sources article{align-items:flex-start;flex-wrap:wrap}.sources article>span{min-width:calc(100% - 62px)}
}
@media(max-width:430px){
  header .icon{display:none}.heading>button,.heading>div:last-child{width:100%}.heading>button{display:block}.batch-meta span{min-width:100%}.alert span{min-width:calc(100% - 42px)}.alert button{margin-left:0;width:100%;text-align:left}.timeline article{flex-wrap:wrap}.timeline article>span{width:calc(100% - 82px)}.timeline article>strong{margin-left:80px}.prepay-actions{width:100%;overflow:auto}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.skip-link,.timeline article{transition:none!important}}
