.bank-statement-experience,.bank-statement-step,.bank-statement-source-card,.bank-statement-preview-scroll{min-width:0}
.bank-statement-experience{display:grid;gap:16px}
.bank-statement-experience-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.bank-statement-experience-head h3{margin:3px 0 6px;color:var(--navy);font-size:20px}
.bank-statement-experience-head p{max-width:760px;margin:0;color:var(--muted);line-height:1.5}
.bank-statement-privacy-note{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border:1px solid #cbd8e8;border-radius:13px;background:#f6f9fd;color:#526177}
.bank-statement-privacy-note .material-symbols-rounded{flex:0 0 auto;color:#315c9f;font-size:20px}.bank-statement-privacy-note p{margin:0;font-size:13px;line-height:1.5}
.bank-statement-progress{display:flex;align-items:center;min-height:46px;padding:11px 14px;border-radius:13px;background:#eef8f7;color:#12635c;font-weight:650}
.bank-statement-progress.busy::before{content:"";width:17px;height:17px;margin-right:10px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:bank-statement-spin .8s linear infinite}
@keyframes bank-statement-spin{to{transform:rotate(360deg)}}
.bank-statement-step{padding:17px;border:1px solid var(--line);border-radius:16px;background:var(--bg)}
.bank-statement-source-card{display:grid;gap:8px}.bank-statement-source-card>label{font-weight:700;color:var(--navy)}
.bank-statement-source-card select{width:100%;min-width:0;min-height:44px}.bank-statement-source-card p{margin:0;color:var(--muted);font-size:13px;line-height:1.5}
.bank-statement-source-actions{display:flex;justify-content:flex-end;margin-top:16px}
.bank-statement-empty,.bank-statement-no-job{display:flex;align-items:flex-start;gap:13px}.bank-statement-empty>.material-symbols-rounded,.bank-statement-no-job>.material-symbols-rounded{flex:0 0 auto;color:#7654b7;font-size:31px}.bank-statement-empty h4,.bank-statement-no-job h3{margin:0 0 5px;color:var(--navy)}.bank-statement-empty p,.bank-statement-no-job p{margin:0;color:var(--muted);line-height:1.5}.bank-statement-no-job .btn{margin-top:14px}
.bank-statement-module-upload,.bank-statement-job-upload{display:grid;gap:9px;margin-top:16px;padding-top:16px;border-top:1px solid var(--line)}
.bank-statement-module-upload label,.bank-statement-job-upload label{display:grid;gap:7px;font-weight:700}.bank-statement-module-upload input,.bank-statement-job-upload input{width:100%;min-width:0}
.bank-statement-job-upload-actions{display:flex;justify-content:flex-end}.bank-statement-job-tool-head{margin-bottom:0}.bank-statement-job-tool-icon{display:grid;place-items:center;flex:0 0 auto;width:42px;height:42px;border-radius:13px;background:var(--teal-soft);color:#0f766e}
.bank-statement-job-tool-action{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:13px;padding-top:13px;border-top:1px solid var(--line)}.bank-statement-job-tool-action p{margin:0;color:var(--muted);font-size:13px}
.bank-statement-preview-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.bank-statement-preview-head h4{margin:3px 0 5px;color:var(--navy);font-size:18px}.bank-statement-preview-head p{max-width:700px;margin:0;color:var(--muted);font-size:13px;line-height:1.5}
.bank-statement-reconciliation{display:grid;grid-template-columns:auto auto;align-items:center;gap:2px 7px;flex:0 0 auto;min-width:180px;padding:11px 13px;border-radius:13px}.bank-statement-reconciliation .material-symbols-rounded{grid-row:1/3}.bank-statement-reconciliation small{grid-column:2}.bank-statement-reconciliation.reconciled{background:#e8f7ef;color:#176b3a}.bank-statement-reconciliation.review-required{background:#fff4dc;color:#80530b}
.bank-statement-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:16px 0}.bank-statement-summary>div{min-width:0;padding:11px 12px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}.bank-statement-summary dt{color:var(--muted);font-size:11px;font-weight:650}.bank-statement-summary dd{margin:4px 0 0;color:var(--navy);font-weight:700;overflow-wrap:anywhere}
.bank-statement-warnings{margin:15px 0;padding:12px 14px;border:1px solid #efd69b;border-radius:13px;background:#fff9eb;color:#785022}.bank-statement-warnings h4{display:flex;align-items:center;gap:7px;margin:0;font-size:14px}.bank-statement-warnings ul{margin:8px 0 0;padding-left:21px}.bank-statement-warnings li{margin-top:4px;line-height:1.45}
.bank-statement-preview-scroll{width:100%;overflow-x:auto;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;border:1px solid var(--line);border-radius:13px;background:var(--panel)}.bank-statement-preview-scroll:focus-visible{outline:3px solid rgba(20,184,166,.25);outline-offset:2px}
.bank-statement-preview-table{width:100%;min-width:980px;border-collapse:collapse;font-size:12px}.bank-statement-preview-table caption{padding:11px 13px;text-align:left;color:var(--muted);font-weight:650}.bank-statement-preview-table th,.bank-statement-preview-table td{padding:10px 11px;border-top:1px solid var(--line);text-align:left;vertical-align:top}.bank-statement-preview-table th{position:sticky;top:0;background:var(--panel);color:var(--navy);white-space:nowrap}.bank-statement-preview-table td{max-width:260px;overflow-wrap:anywhere}.bank-statement-preview-table td.number{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.bank-statement-no-rows{margin:14px 0;color:var(--danger);font-weight:650}
.bank-statement-preview-actions,.bank-statement-complete-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:16px}.bank-statement-complete-icon{display:grid;place-items:center;width:52px;height:52px;margin:0 auto 10px;border-radius:50%;background:#e8f7ef;color:#176b3a}.bank-statement-complete-icon .material-symbols-rounded{font-size:28px}.bank-statement-complete-copy{text-align:center}.bank-statement-complete-copy h4{margin:0 0 7px;color:var(--navy);font-size:19px}.bank-statement-complete-copy p{max-width:720px;margin:0 auto;color:var(--muted);line-height:1.55;overflow-wrap:anywhere}
body.theme-dark .bank-statement-step,body.theme-dark .bank-statement-summary>div,body.theme-dark .bank-statement-preview-scroll{background:#101f35}body.theme-dark .bank-statement-privacy-note{background:#102039;color:var(--muted);border-color:var(--line)}body.theme-dark .bank-statement-progress{background:#103432;color:#9de8e0}body.theme-dark .bank-statement-warnings{background:#382d16;color:#f3d891;border-color:#6b5430}body.theme-dark .bank-statement-reconciliation.reconciled{background:#102b1c;color:#8ce0a9}body.theme-dark .bank-statement-reconciliation.review-required{background:#382d16;color:#f3d891}
@media(max-width:1024px){.bank-statement-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.bank-statement-preview-head{display:grid}.bank-statement-reconciliation{width:max-content;max-width:100%}}
@media(max-width:720px){.bank-statement-experience-head{display:grid}.bank-statement-experience-head .btn{width:100%;min-height:44px}.bank-statement-summary{grid-template-columns:1fr}.bank-statement-source-actions,.bank-statement-job-upload-actions{display:grid}.bank-statement-source-actions .btn,.bank-statement-job-upload-actions .btn,.bank-statement-preview-actions .btn,.bank-statement-complete-actions .btn{width:100%;min-height:44px}.bank-statement-preview-actions,.bank-statement-complete-actions{display:grid}.bank-statement-job-tool-action{display:grid}.bank-statement-job-tool-action .btn{width:100%;min-height:44px}.bank-statement-step{padding:14px}}
@media(prefers-reduced-motion:reduce){.bank-statement-progress.busy::before{animation:none;border-right-color:currentColor}}
