:root{--bg:#f7f7f5;--surface:#fff;--text:#1f2328;--text-muted:#6b7280;--border:#e5e7eb;--accent:#2563eb;--flag:#dc2626;--flag-bg:#fef2f2;--ok:#16a34a;--neg:#dc2626}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);margin:0;font-family:-apple-system,PingFang SC,Microsoft YaHei,sans-serif;font-size:14px;line-height:1.5}p{margin:0}a,.link{color:var(--accent);cursor:pointer}.spaced>*+*{margin-left:12px}.nav{background:var(--surface);border-bottom:1px solid var(--border);align-items:center;gap:24px;height:48px;padding:0 32px;display:flex}.nav-item{color:var(--text-muted);border-bottom:2px solid #0000;height:48px;line-height:48px;text-decoration:none}.nav-current{color:var(--text);border-bottom-color:var(--accent)}.main{max-width:1200px;margin:0 auto;padding:24px 32px 64px}.page-title{margin:0 0 16px;font-size:20px;font-weight:600}.section{flex-direction:column;gap:8px;margin-bottom:24px;display:flex}.muted{color:var(--text-muted)}.notice{background:var(--surface);border:1px solid var(--border);border-radius:8px;margin-bottom:12px;padding:12px 16px}.empty{color:var(--text-muted);text-align:center;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:32px 16px}.btn{border:1px solid var(--border);background:var(--surface);height:32px;color:var(--text);font:inherit;white-space:nowrap;cursor:pointer;border-radius:8px;justify-content:center;align-items:center;padding:0 16px;display:inline-flex}.btn:focus-visible,.input:focus{outline:2px solid var(--accent);outline-offset:1px}.btn:disabled,.btn-disabled{cursor:not-allowed;opacity:.5}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--surface)}.btn-small{height:28px;padding:0 12px}.input{border:1px solid var(--border);height:32px;font:inherit;color:var(--text);background:var(--surface);border-radius:4px;width:100%;padding:0 8px}.input-invalid{border-color:var(--flag)}.input-money{text-align:right;font-variant-numeric:tabular-nums}.amount{font-variant-numeric:tabular-nums}.amount-neg{color:var(--neg)}.col-money{text-align:right;font-variant-numeric:tabular-nums;width:128px}.table{border-collapse:collapse;width:100%}.table th{color:var(--text-muted);text-align:left;border-bottom:1px solid var(--border);height:36px;padding:0 8px;font-size:12px;font-weight:400}.table th.col-money{text-align:right}.table td{border-bottom:1px solid var(--border);vertical-align:middle;height:36px;padding:4px 8px}.table tbody tr:last-child td{border-bottom:none}.row-editable{cursor:pointer}.row-editable:hover td{background:var(--bg)}.drop{border:1px dashed var(--border);background:var(--surface);min-height:120px;color:var(--text-muted);border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:4px;display:flex}.drop-over{border-color:var(--accent)}.drop-working{color:var(--text)}.files{background:var(--surface);border:1px solid var(--border);border-radius:8px}.col-action{text-align:right;width:80px}.summary-line{font-size:15px;font-weight:500}.cards{flex-direction:column;gap:12px;display:flex}.card{background:var(--surface);border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:8px;padding:16px;display:flex}.card-flag{border-left:4px solid var(--flag)}.card-ok{border-left:4px solid var(--ok)}.card-head{justify-content:space-between;align-items:baseline;display:flex}.card-title{font-size:15px;font-weight:500}.card-ok-text{color:var(--ok)}.flag-text{color:var(--flag);background:var(--flag-bg);border-radius:4px;padding:4px 8px}.diff-text{color:var(--flag);font-variant-numeric:tabular-nums}.col-summary,.col-account{width:24%}.col-split{width:88px}.flows{color:var(--text-muted)}.card-foot{border-top:1px solid var(--border);flex-direction:column;align-items:flex-end;gap:8px;padding-top:12px;display:flex}.confirm-area{flex-direction:column;align-items:flex-end;gap:8px;display:flex}.confirm-buttons{gap:8px;display:flex}.learn-option{cursor:pointer;align-items:center;gap:4px;display:flex}.aux-select+.aux-select{margin-top:4px}.picker{position:relative}.picker-list{z-index:10;background:var(--surface);border:1px solid var(--border);border-radius:8px;max-height:288px;margin:0;padding:4px 0;list-style:none;position:absolute;top:36px;left:0;right:0;overflow-y:auto}.picker-option,.picker-empty{padding:8px 12px}.picker-option{cursor:pointer}.picker-option:hover,.picker-option[aria-selected=true]{background:var(--bg)}.picker-empty{color:var(--text-muted)}.download{align-items:center;gap:12px;margin-top:12px;display:flex}.overlay{background:color-mix(in srgb, var(--text) 40%, transparent);z-index:20;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--surface);border-radius:8px;flex-direction:column;gap:24px;width:440px;padding:24px;display:flex}.modal-actions{justify-content:flex-end;gap:8px;display:flex}.rules{background:var(--surface);border:1px solid var(--border);border-radius:8px}.rules td{vertical-align:top;padding-top:8px;padding-bottom:8px}.rules .group-first td{border-top:1px solid var(--border)}.col-match{width:26%}.col-count{text-align:right;width:80px}.slots{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:24px;display:grid}.slot{align-items:flex-start}.settings{max-width:720px}.field{grid-template-columns:144px minmax(0,1fr);align-items:start;gap:12px;display:grid}.field-label{color:var(--text-muted);line-height:32px}.bank-rows{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.bank-row{grid-template-columns:minmax(0,200px) minmax(0,1fr) auto;gap:8px;width:100%;display:grid}.settings-actions{align-items:center;gap:12px;display:flex}.login{flex-direction:column;gap:12px;width:320px;margin:30vh auto 0;display:flex}.login-label{font-size:15px;font-weight:500}
