:root{--font-cn: "Noto Sans SC", "PingFang SC", "HarmonyOS Sans SC", "Source Han Sans SC", "Microsoft YaHei", system-ui, sans-serif;--font-mono: "DM Mono", "JetBrains Mono", "SF Mono", "Menlo", "Consolas", monospace;--r-1: 4px;--r-2: 6px;--r-3: 8px;--r-4: 10px;--r-5: 12px;--r-pill: 999px;--s-1: 4px;--s-2: 8px;--s-3: 12px;--s-4: 16px;--s-5: 20px;--s-6: 24px;--s-7: 32px;--s-8: 40px;--s-9: 56px;--ease: cubic-bezier(.2,.7,.3,1);--t-fast: .12s;--t-base: .18s;--t-mode: .22s}.theme-customer{--bg-base: #eef1f6;--bg-surface: #f7f9fc;--bg-elevated: #ffffff;--bg-card: #fbfcfe;--bg-input: #ffffff;--bg-hover: rgba(28,40,68,.045);--bg-active: rgba(28,40,68,.07);--border: #e1e6ee;--border-strong: #c6cdd9;--border-focus: #3a6ee8;--fg-1: #1d2330;--fg-2: #495365;--fg-3: #6c7689;--fg-4: #9aa3b3;--fg-mono: #2b3242;--accent: #3a6ee8;--accent-soft: rgba(58,110,232,.08);--accent-soft-2: rgba(58,110,232,.16);--st-risk: #c2453c;--st-risk-soft: rgba(194,69,60,.09);--st-warn: #ad7218;--st-warn-soft: rgba(173,114,24,.1);--st-ok: #2f8458;--st-ok-soft: rgba(47,132,88,.1);--st-done: #277480;--st-done-soft: rgba(39,116,128,.1);--st-dead: #555e6f;--st-dead-soft: rgba(85,94,111,.12);--shadow-1: 0 1px 1px rgba(20,30,50,.05);--shadow-2: 0 2px 8px rgba(20,30,50,.07), 0 0 0 1px rgba(20,30,50,.03);--shadow-3: 0 12px 32px rgba(20,30,50,.1)}.theme-assistant{--bg-base: #f5f1ea;--bg-surface: #fbf7ef;--bg-elevated: #ffffff;--bg-card: #fdfbf6;--bg-input: #fbf7ef;--bg-hover: rgba(64,48,20,.04);--bg-active: rgba(64,48,20,.07);--border: #e7ddc9;--border-strong: #d2c4a8;--border-focus: #3a6ee8;--fg-1: #2a241c;--fg-2: #58503f;--fg-3: #807761;--fg-4: #a89e88;--fg-mono: #2a241c;--accent: #3a6ee8;--accent-soft: rgba(58,110,232,.08);--accent-soft-2: rgba(58,110,232,.16);--st-risk: #b8443c;--st-risk-soft: rgba(184,68,60,.09);--st-warn: #a06b10;--st-warn-soft: rgba(160,107,16,.1);--st-ok: #347b53;--st-ok-soft: rgba(52,123,83,.1);--st-done: #266c78;--st-done-soft: rgba(38,108,120,.1);--st-dead: #5a5448;--st-dead-soft: rgba(90,84,72,.12);--shadow-1: 0 1px 1px rgba(50,38,18,.04);--shadow-2: 0 2px 10px rgba(50,38,18,.06);--shadow-3: 0 12px 32px rgba(50,38,18,.1)}.theme-customer.theme-deep{--bg-base: #1b1f29;--bg-surface: #232836;--bg-elevated: #2a3041;--bg-card: #2e3547;--bg-input: #232836;--bg-hover: rgba(255,255,255,.04);--bg-active: rgba(255,255,255,.07);--border: #353c4d;--border-strong: #4a5266;--border-focus: #5a8af0;--fg-1: #dde2ec;--fg-2: #aab2c0;--fg-3: #828b9c;--fg-4: #5e6677;--fg-mono: #dde2ec;--accent: #5a8af0;--accent-soft: rgba(90,138,240,.14);--accent-soft-2: rgba(90,138,240,.22);--st-risk: #d97370;--st-risk-soft: rgba(217,115,112,.12);--st-warn: #cfa05e;--st-warn-soft: rgba(207,160,94,.14);--st-ok: #6db48a;--st-ok-soft: rgba(109,180,138,.14);--st-done: #5dafba;--st-done-soft: rgba(93,175,186,.14);--st-dead: #6e7484;--st-dead-soft: rgba(110,116,132,.22);--shadow-1: 0 1px 2px rgba(0,0,0,.3);--shadow-2: 0 4px 14px rgba(0,0,0,.25);--shadow-3: 0 12px 32px rgba(0,0,0,.4)}.theme-customer,.theme-assistant{font-family:var(--font-cn);color:var(--fg-1);background:var(--bg-base);font-size:14px;line-height:1.55;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-feature-settings:"tnum" 1,"kern" 1;letter-spacing:0}.theme-customer *,.theme-assistant *{box-sizing:border-box}.theme-customer button,.theme-assistant button{font-family:inherit;color:inherit}.mono{font-family:var(--font-mono);font-feature-settings:"tnum" 1,"zero" 1;letter-spacing:-.01em;font-variant-numeric:tabular-nums slashed-zero}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:34px;padding:0 14px;border-radius:var(--r-2);border:1px solid transparent;font-size:13px;font-weight:500;line-height:1;cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;transition:background var(--t-fast) var(--ease),border-color var(--t-fast) var(--ease),color var(--t-fast) var(--ease),transform var(--t-fast) var(--ease),box-shadow var(--t-fast) var(--ease)}.btn:focus-visible{outline:none;box-shadow:0 0 0 3px var(--accent-soft-2)}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--accent);color:#fff;border-color:var(--accent);box-shadow:0 1px #ffffff1a inset,0 1px 2px #141e321a}.btn-primary:hover{background:#2f5fd1}.btn-primary:active{background:#2853bc}.btn-ghost{background:var(--bg-elevated);color:var(--fg-2);border-color:var(--border-strong)}.btn-ghost:hover{background:var(--bg-hover);color:var(--fg-1);border-color:var(--fg-3)}.btn-quiet{background:transparent;color:var(--fg-2)}.btn-quiet:hover{background:var(--bg-hover);color:var(--fg-1)}.btn-danger{background:var(--bg-elevated);color:var(--st-risk);border-color:#c2453c59}.btn-danger:hover{background:var(--st-risk-soft)}.btn-confirm{background:var(--st-ok);color:#fff;border-color:var(--st-ok);box-shadow:0 1px #ffffff1a inset,0 1px 2px #141e321a}.btn-confirm:hover{background:#2a734c}.btn-sm{height:28px;padding:0 10px;font-size:12px;border-radius:var(--r-1)}.btn-icon{width:34px;padding:0}.btn-sm.btn-icon{width:28px}.btn[disabled]{opacity:.45;pointer-events:none}.input{width:100%;height:34px;padding:0 12px;background:var(--bg-input);color:var(--fg-1);border:1px solid var(--border);border-radius:var(--r-2);font-family:inherit;font-size:13.5px;transition:border-color var(--t-fast),box-shadow var(--t-fast),background var(--t-fast)}.input::placeholder{color:var(--fg-4)}.input:focus{outline:none;border-color:var(--border-focus);box-shadow:0 0 0 3px var(--accent-soft)}.chip{display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 8px;font-size:12px;line-height:1;font-weight:500;border-radius:var(--r-1);border:1px solid transparent;letter-spacing:0}.chip-dot{width:6px;height:6px;border-radius:50%}.chip.is-洽谈{color:var(--fg-2);background:var(--bg-active);border-color:var(--border)}.chip.is-还款中,.chip.is-已放款{color:var(--st-ok);background:var(--st-ok-soft);border-color:color-mix(in srgb,var(--st-ok) 30%,transparent)}.chip.is-待放款{color:var(--st-warn);background:var(--st-warn-soft);border-color:color-mix(in srgb,var(--st-warn) 35%,transparent)}.chip.is-逾期{color:var(--st-risk);background:var(--st-risk-soft);border-color:color-mix(in srgb,var(--st-risk) 35%,transparent)}.chip.is-已结清{color:var(--st-done);background:var(--st-done-soft);border-color:color-mix(in srgb,var(--st-done) 30%,transparent)}.chip.is-坏账{color:var(--st-dead);background:var(--st-dead-soft);border-color:color-mix(in srgb,var(--st-dead) 40%,transparent)}.chip.is-low{color:var(--st-ok);background:var(--st-ok-soft);border-color:color-mix(in srgb,var(--st-ok) 30%,transparent)}.chip.is-mid{color:var(--st-warn);background:var(--st-warn-soft);border-color:color-mix(in srgb,var(--st-warn) 35%,transparent)}.chip.is-high{color:var(--st-risk);background:var(--st-risk-soft);border-color:color-mix(in srgb,var(--st-risk) 35%,transparent)}.chip.is-reject{color:var(--st-dead);background:var(--st-dead-soft);border-color:color-mix(in srgb,var(--st-dead) 40%,transparent)}.chip.is-review{color:var(--st-done);background:var(--st-done-soft);border-color:color-mix(in srgb,var(--st-done) 30%,transparent)}.theme-customer ::-webkit-scrollbar,.theme-assistant ::-webkit-scrollbar{width:9px;height:9px}.theme-customer ::-webkit-scrollbar-thumb{background:#ccd2dd;border-radius:4px;border:2px solid var(--bg-surface);background-clip:padding-box}.theme-assistant ::-webkit-scrollbar-thumb{background:#d4c8ad;border-radius:4px;border:2px solid var(--bg-surface);background-clip:padding-box}.theme-customer.theme-deep ::-webkit-scrollbar-thumb{background:#3a4358}.theme-customer ::-webkit-scrollbar-track,.theme-assistant ::-webkit-scrollbar-track{background:transparent}@keyframes fadeUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:.35}50%{opacity:1}}@keyframes hl{0%{background:var(--st-warn-soft)}to{background:transparent}}.fade-up{animation:fadeUp var(--t-base) var(--ease) both}.pulse-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--accent);animation:pulse 1.2s infinite ease-in-out}.hr{height:1px;background:var(--border)}.kbd{display:inline-block;padding:1px 5px;border-radius:3px;background:var(--bg-active);border:1px solid var(--border);font-family:var(--font-mono);font-size:11px;color:var(--fg-2)}
