/*! A-05 · 公积金缴存提取冲销年度台账 · 银行存折（青蓝 × 借贷双栏 × 逐笔余额） */
.ml-a05 {
    --ml-page: #f2f7f8;
    --ml-card: #ffffff;
    --ml-card-2: #f6fafb;
    --ml-ink: #10272e;
    --ml-sub: #42616a;
    --ml-faint: #7b979e;
    --ml-line: #d9e7ea;
    --ml-line-2: #edf4f6;
    --ml-accent: #0d6f89;
    --ml-accent-2: #51a7bd;
    --ml-accent-soft: #e0f1f5;
    --ml-good: #0b7f6a;
    --ml-good-soft: #e1f4ee;
    --ml-warn: #9a6810;
    --ml-warn-soft: #faf0d7;
    --ml-bad: #b13f47;
    --ml-bad-soft: #fae8ea;
    --ml-font-display: "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", system-ui, sans-serif;
    background:
        linear-gradient(180deg, rgba(13, 111, 137, .07), transparent 340px),
        var(--ml-page);
}
:root[data-theme="dark"] .ml-a05 {
    --ml-page: #091519;
    --ml-card: #122129;
    --ml-card-2: #182a33;
    --ml-ink: #e6f3f7;
    --ml-sub: #adc6cd;
    --ml-faint: #7d9aa2;
    --ml-line: #24404a;
    --ml-line-2: #1b303a;
    --ml-accent: #68c1dc;
    --ml-accent-2: #3b91aa;
    --ml-accent-soft: #1b3a45;
    --ml-good-soft: #14342c;
    --ml-warn-soft: #382b13;
    --ml-bad-soft: #3a1e23;
}
.ml-a05 .ml-hero { grid-template-columns: minmax(0, 1fr) minmax(390px, 500px); }
.ml-a05 .a05-feat { display: grid; gap: 8px; margin-top: 4px; }
.ml-a05 .ml-feature i { background: var(--ml-accent-soft); color: var(--ml-accent); }
.a05-formula { display: inline-block; margin-top: 10px; padding: 9px 13px; border: 1px solid var(--ml-line); border-radius: 8px; background: var(--ml-card); font: 700 12.5px/1.6 var(--ml-font-num); color: var(--ml-accent); }

/* ---------- 首屏：存折录入台 ---------- */
.a05-passbook { border: 1px solid var(--ml-line); border-radius: 12px; background: var(--ml-card); box-shadow: var(--ml-shadow-lg); overflow: hidden; }
.a05-passbook-h { display: flex; justify-content: space-between; align-items: center; gap: 8px; padding: 13px 16px; background: var(--ml-accent); color: #fff; }
.a05-passbook-h b { font-size: 13.5px; font-weight: 800; letter-spacing: .06em; }
.a05-passbook-h span { font: 600 10.5px/1.4 var(--ml-font-num); opacity: .9; }
.a05-passbook-b { padding: 15px 16px 16px; }
.a05-opts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; margin-bottom: 10px; }
.a05-opts .ml-input { font-family: var(--ml-font-num); }
.a05-passbook .ml-textarea { min-height: 118px; font-size: 12px; }
.a05-passbook .ml-drop { min-height: 48px; margin-top: 9px; }
.a05-passbook .ml-btn--primary { width: 100%; }
.a05-passbook .ml-btn-row .ml-btn { flex: 1; }

/* ---------- 逐笔流水表 ---------- */
.a05-ledger { width: 100%; border-collapse: collapse; font-size: 12.5px; white-space: nowrap; }
.a05-ledger th { background: var(--ml-accent-soft); color: var(--ml-accent); font-size: 11px; font-weight: 800; letter-spacing: .04em; padding: 9px 11px; text-align: left; border-bottom: 2px solid var(--ml-line); }
.a05-ledger td { padding: 9px 11px; border-bottom: 1px solid var(--ml-line-2); color: var(--ml-sub); }
.a05-ledger tr:hover td { background: var(--ml-card-2); }
.a05-ledger td.in { font-family: var(--ml-font-num); color: var(--ml-good); text-align: right; }
.a05-ledger td.out { font-family: var(--ml-font-num); color: var(--ml-bad); text-align: right; }
.a05-ledger td.bal { font: 800 13px/1.5 var(--ml-font-num); color: var(--ml-ink); text-align: right; }
.a05-ledger tr.is-bad td { background: var(--ml-bad-soft); }
.a05-ledger tr.is-bad td:first-child { box-shadow: inset 3px 0 0 var(--ml-bad); }
.a05-kind { display: inline-block; padding: 2px 8px; border-radius: 4px; font-size: 11px; font-weight: 800; }
.a05-kind.is-in { background: var(--ml-good-soft); color: var(--ml-good); }
.a05-kind.is-out { background: var(--ml-bad-soft); color: var(--ml-bad); }

/* ---------- 侧栏：未匹配 / 额度 ---------- */
.a05-queue { display: grid; gap: 9px; }
.a05-item { padding: 10px 12px; border: 1px solid var(--ml-line); border-left: 3px solid var(--ml-warn); border-radius: 6px; background: var(--ml-warn-soft); font-size: 12.5px; line-height: 1.7; }
.a05-item.is-bad { border-left-color: var(--ml-bad); background: var(--ml-bad-soft); }
.a05-item b { display: block; font: 800 12.5px/1.5 var(--ml-font-num); }
.a05-quota { margin-top: 12px; padding: 13px 15px; border: 1px solid var(--ml-line); border-radius: 8px; background: var(--ml-card-2); }
.a05-quota .row { display: flex; justify-content: space-between; gap: 8px; font-size: 12.5px; padding: 3px 0; }
.a05-quota .row b { font-family: var(--ml-font-num); }
.a05-quota .bar { height: 8px; margin-top: 10px; border-radius: 4px; background: var(--ml-line); overflow: hidden; }
.a05-quota .bar i { display: block; height: 100%; background: var(--ml-accent); }
@media (max-width: 900px) { .ml-a05 .ml-hero { grid-template-columns: 1fr; } }
