.reconcileImportCard{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center;margin-bottom:18px;padding:24px;border:1px solid #cbded5;border-radius:12px;background:linear-gradient(135deg,#eef7f2,#fffdf8)}
.reconcileImportCard h2{margin:4px 0;font-size:28px;color:var(--ink)}
.reconcileImportCard p{max-width:760px;margin:7px 0 0;color:var(--muted);font-size:15px;line-height:1.65}
.reconcileUpload{display:grid;place-items:center;min-width:230px;min-height:88px;padding:16px;border:2px dashed var(--green);border-radius:10px;background:#fff;color:var(--green);font-weight:700;text-align:center;cursor:pointer}
.reconcileUpload:hover,.reconcileUpload:focus-within{background:#e8f3ed}
.reconcileUpload input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:850px){.reconcileImportCard{grid-template-columns:1fr;padding:18px}.reconcileUpload{min-width:0;min-height:64px;width:100%}}

/* ── ผลจับคู่อัตโนมัติ (v21.24.18) — เดิม .bankAutoBox/.bankListRow ไม่มี CSS เลย ข้อความจึงไหลลงทีละคำ ── */
.bankAutoBox{border:1px solid var(--line,#dedbd2);background:#fffdf8;padding:18px 20px;margin-bottom:18px}
.bankAutoHead{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;margin-bottom:12px}
.bankAutoHead b{font:500 17px/1.3 Georgia,serif;color:#1f6b4f}
.bankAutoHead span{color:#6c776f;font-size:12.5px}
.bankWindowPick{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:14px;font-size:12.5px;color:#18251f}
.bankWindowPick select{padding:7px 10px;border:1px solid #cfd8d2;background:#fff;font:inherit}
.bankWindowPick small{color:#6c776f;font-size:11.5px}
.bankAutoTabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:0;border-bottom:1px solid #dedbd2}
.bankAutoTabs button{display:flex;align-items:center;gap:7px;padding:10px 14px;border:1px solid #dedbd2;border-bottom:0;background:#f4f1e9;color:#6c776f;font-size:12.5px;font-weight:700;cursor:pointer;margin-bottom:-1px}
.bankAutoTabs button.active{background:#fffdf8;color:#18251f}
.bankAutoTabs button span{padding:1px 8px;border-radius:99px;background:#dedbd2;color:#18251f;font-size:10.5px}
.bankAutoTabs button.active span{background:#1f6b4f;color:#fff}
.bankAutoPane{border:1px solid #dedbd2;border-top:0;padding:14px;background:#fffdf8}
.bankTableWrap{max-height:460px;overflow:auto;border:1px solid #ebe8e0}
table.bankMatchTable{width:100%;border-collapse:collapse;font-size:12.5px;background:#fff}
table.bankMatchTable th{position:sticky;top:0;background:#ede9df;color:#6c776f;text-align:left;font-size:10.5px;letter-spacing:.3px;text-transform:uppercase;padding:9px 11px;white-space:nowrap}
table.bankMatchTable td{padding:8px 11px;border-bottom:1px solid #ebe8e0;vertical-align:top;white-space:nowrap}
table.bankMatchTable tr:hover td{background:#f7f4ec}
table.bankMatchTable td small{display:block;color:#6c776f;font-size:11px;margin-top:2px;white-space:normal;max-width:280px}
.bankAmt{font-family:Georgia,serif;font-weight:700;text-align:right}
.bankGap{display:inline-block;padding:2px 9px;border-radius:99px;font-size:11px;font-weight:700}
.bankGap.tight{background:#e3f1e8;color:#1f6b4f}
.bankGap.loose{background:#fbf3e2;color:#8a6414}
.bankEmptyNote{margin:10px 2px 0;color:#6c776f;font-size:12px;font-style:italic}
.bankAutoBox>button.primary{margin-top:14px}

/* v21.24.18b — แถบสรุป/ค้นหา/แบ่งหน้า ให้หน้าตาตรงกับรายงาน reconcile-report */
.bankAutoMetrics{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid #dedbd2;background:#fff;margin-bottom:14px}
.bankMetric{padding:14px 16px;border-right:1px solid #dedbd2}
.bankMetric:last-child{border-right:0}
.bankMetric span{display:block;color:#6c776f;font-size:11px;margin-bottom:6px}
.bankMetric strong{display:block;font:500 24px Georgia,serif;color:#18251f}
.bankMetric small{display:block;color:#6c776f;font-size:11px;margin-top:2px}
.bankMetric.ok strong{color:#1f6b4f}
.bankMetric.warn strong{color:#8a6414}
.bankPaneNote{margin:0 0 12px;padding:10px 12px;background:#f4f1e9;border-left:3px solid #1f6b4f;color:#6c776f;font-size:12px;line-height:1.65}
.bankPaneTools{display:flex;align-items:center;gap:12px;margin-bottom:10px}
.bankPaneTools input{flex:1;max-width:340px;padding:8px 11px;border:1px solid #cfd8d2;background:#fff;font:inherit;font-size:12.5px}
.bankPaneTools span{color:#6c776f;font-size:12px}
.bankPager{display:flex;justify-content:center;gap:6px;margin-top:12px;flex-wrap:wrap}
.bankPager button{min-width:32px;padding:6px 10px;border:1px solid #dedbd2;background:#fff;font-size:12px;cursor:pointer}
.bankPager button.active{background:#1f6b4f;color:#fff;border-color:#1f6b4f}
@media(max-width:900px){.bankAutoMetrics{grid-template-columns:repeat(2,1fr)}.bankMetric:nth-child(2){border-right:0}}

/* v21.24.19 — กล่องวินิจฉัยข้อมูลที่นำมาจับคู่ */
.bankDiag{border:1px solid #cbded5;background:#eef7f2;padding:12px 14px;margin-bottom:12px;font-size:12.5px;line-height:1.7}
.bankDiag.warn{border-color:#e5c489;background:#fbf3e2}
.bankDiag b{display:block;color:#18251f;margin-bottom:4px}
.bankDiag span{display:block;color:#41564b}
.bankDiag small{display:block;color:#6c776f;font-size:11.5px;margin-top:4px}
.bankDiag .bankDiagWarn{color:#8a5a14;font-weight:700;line-height:1.65}

/* ── กระทบยอด 365 × Bank (v21.24.19) — เมนูนี้อ่านไฟล์ในเบราว์เซอร์โดยตรง ── */
.rcHead{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;flex-wrap:wrap;margin-bottom:18px}
.rcHead h2{margin:4px 0;font-size:28px}
.rcHead p{margin:6px 0 0;color:var(--muted);font-size:14px;max-width:70ch}
.rcResetBtn{padding:9px 16px;border:1px solid #cfd8d2;background:#fff;font:inherit;font-size:12.5px;cursor:pointer;border-radius:6px}
.rcUploads{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:16px}
.rcDrop{display:block;padding:20px;border:2px dashed #cbded5;border-radius:10px;background:#f5faf7;cursor:pointer;transition:border-color .15s,background .15s}
.rcDrop:hover{border-color:#1f6b4f;background:#eef7f2}
.rcDrop b{display:block;font-size:14.5px;color:#18251f;margin-bottom:5px}
.rcDrop span{display:block;color:var(--muted);font-size:12.5px;word-break:break-all}
.rcDrop input{display:none}
.rcError{padding:12px 14px;margin-bottom:14px;background:#f7e3de;border-left:3px solid #9c412e;color:#7d3423;font-size:13px;line-height:1.6}
.rcHint{color:var(--muted);font-size:13px;padding:16px;text-align:center}
.rcCards{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line,#dedbd2);background:#fff;margin-bottom:16px}
.rcCard{padding:16px 18px;border-right:1px solid var(--line,#dedbd2)}
.rcCard:last-child{border-right:0}
.rcCard span{display:block;color:var(--muted);font-size:11.5px;margin-bottom:6px}
.rcCard strong{display:block;font:500 26px Georgia,serif;color:#18251f}
.rcCard small{display:block;color:var(--muted);font-size:11.5px;margin-top:3px}
.rcCard.ok strong{color:#1f6b4f}
.rcCard.warn strong{color:#8a6414}
.rcTabs{display:flex;gap:6px;flex-wrap:wrap;border-bottom:1px solid var(--line,#dedbd2)}
.rcTabs button{display:flex;align-items:center;gap:7px;padding:11px 15px;border:1px solid var(--line,#dedbd2);border-bottom:0;background:#f4f1e9;color:var(--muted);font:inherit;font-size:12.5px;font-weight:700;cursor:pointer;margin-bottom:-1px}
.rcTabs button.active{background:#fff;color:#18251f}
.rcTabs button span{padding:1px 8px;border-radius:99px;background:#dedbd2;color:#18251f;font-size:10.5px}
.rcTabs button.active span{background:#1f6b4f;color:#fff}
.rcPane{border:1px solid var(--line,#dedbd2);border-top:0;padding:16px;background:#fff}
.rcNote{margin:0 0 12px;padding:10px 12px;background:#f4f1e9;border-left:3px solid #1f6b4f;color:var(--muted);font-size:12.5px;line-height:1.65}
.rcTools{display:flex;align-items:center;gap:12px;margin-bottom:12px;flex-wrap:wrap}
.rcTools input{flex:1;min-width:200px;max-width:360px;padding:9px 12px;border:1px solid #cfd8d2;background:#fff;font:inherit;font-size:12.5px}
.rcTools span{color:var(--muted);font-size:12px}
.rcTools button{padding:8px 14px;border:1px solid #1f6b4f;background:#fff;color:#1f6b4f;font:inherit;font-size:12.5px;font-weight:700;cursor:pointer;border-radius:6px}
.rcScroll{max-height:520px;overflow:auto;border:1px solid #ebe8e0}
table.rcTable{width:100%;border-collapse:collapse;font-size:12.5px}
table.rcTable th{position:sticky;top:0;background:#ede9df;color:var(--muted);text-align:left;font-size:10.5px;letter-spacing:.3px;text-transform:uppercase;padding:10px 11px;white-space:nowrap}
table.rcTable th.r,table.rcTable td.r{text-align:right}
table.rcTable td{padding:9px 11px;border-bottom:1px solid #ebe8e0;vertical-align:top;white-space:nowrap}
table.rcTable tr:hover td{background:#f7f4ec}
table.rcTable td small{display:block;color:var(--muted);font-size:11px;margin-top:2px;white-space:normal;max-width:300px}
table.rcTable td.amt{font-family:Georgia,serif;font-weight:700}
.rcGap{display:inline-block;padding:2px 9px;border-radius:99px;font-size:11px;font-weight:700}
.rcGap.tight{background:#e3f1e8;color:#1f6b4f}
.rcGap.loose{background:#fbf3e2;color:#8a6414}
.rcEmpty{padding:32px;text-align:center;color:var(--muted);font-size:13px}
.rcPager{display:flex;justify-content:center;gap:6px;margin-top:14px;flex-wrap:wrap}
.rcPager button{min-width:32px;padding:6px 10px;border:1px solid var(--line,#dedbd2);background:#fff;font:inherit;font-size:12px;cursor:pointer}
.rcPager button.active{background:#1f6b4f;color:#fff;border-color:#1f6b4f}
@media(max-width:900px){.rcUploads,.rcCards{grid-template-columns:1fr 1fr}.rcCard:nth-child(2){border-right:0}}
@media(max-width:600px){.rcUploads,.rcCards{grid-template-columns:1fr}.rcCard{border-right:0;border-bottom:1px solid var(--line,#dedbd2)}}
/* ซ่อน placeholder ที่มีไว้กันไม่ให้ app.js เดิมพัง (ไม่ได้ใช้แสดงผลจริง) */
.rcLegacyHidden{display:none!important}

/* ── บันทึกผล / ประวัติ / งบกระทบยอด (v21.24.21) ── */
.rcActions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:12px}
.rcActions button{padding:9px 16px;border:1px solid #1f6b4f;background:#1f6b4f;color:#fff;font:inherit;font-size:12.5px;font-weight:700;cursor:pointer;border-radius:6px}
.rcActions button#rcExcel,.rcActions button#rcPdf{background:#fff;color:#1f6b4f}
.rcActions button:disabled{opacity:.55;cursor:default}
.rcLoadedTag{padding:5px 12px;border-radius:99px;background:#fbf3e2;color:#8a6414;font-size:11.5px;font-weight:700}
.rcHistory{margin-bottom:16px;border:1px solid var(--line,#dedbd2);background:#fff;padding:12px 16px}
.rcHistory summary{cursor:pointer;font-weight:700;font-size:13px;color:#18251f;padding:4px 0}
.rcHistory summary:hover{color:#1f6b4f}
.rcHistory table{margin-top:10px}
.rcHistory button{padding:5px 12px;border:1px solid #1f6b4f;background:#fff;color:#1f6b4f;font:inherit;font-size:11.5px;font-weight:700;cursor:pointer;border-radius:5px}
.rcStatement{border:1px solid var(--line,#dedbd2);background:#fff;padding:16px 18px;margin-bottom:16px}
.rcStatementHead{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid var(--line,#dedbd2)}
.rcStatementHead b{font:500 16px Georgia,serif;color:#18251f}
.rcStatementHead span{color:var(--muted);font-size:12px}
.rcStatementTable{width:100%;border-collapse:collapse;font-size:12.5px}
.rcStatementTable td{padding:7px 4px;border-bottom:1px solid #f0ede5}
.rcStatementTable td.r{text-align:right;font-family:Georgia,serif;font-weight:700}
.rcStatementTable tr.base td{background:#f9f7f1}
.rcStatementTable tr.sub td{border-top:2px solid #dedbd2;border-bottom:2px solid #dedbd2}
.rcStatementNote{margin:10px 0 0;color:var(--muted);font-size:12px;line-height:1.65}
.rcNeg{color:#9c412e}
.rcPos{color:#1f6b4f}
