/* Easy expense capture: voice, receipt scan, bank statement import */
.cap-bar{display:flex;gap:10px;margin-top:14px}
.cap-btn{flex:1 1 0;min-height:48px;justify-content:center;gap:8px;font-weight:600}
.cap-btn svg{width:20px;height:20px}
.cap-btn.on{background:var(--accent);color:var(--accent-ink,#111);border-color:var(--accent);animation:cap-pulse 1.4s ease-in-out infinite}
@keyframes cap-pulse{50%{box-shadow:0 0 0 6px color-mix(in srgb,var(--accent) 25%,transparent)}}
.cap-status{display:flex;gap:8px;align-items:flex-start;margin:10px 0 0;padding:10px 12px;border-radius:12px;background:var(--surface-2);border:1px solid var(--line);color:var(--text);font-size:14px;line-height:1.45}
.cap-status[hidden]{display:none}
.cap-status svg{flex:none;width:18px;height:18px;margin-top:1px;color:var(--accent)}
.cap-status.warn svg{color:var(--danger)}
.cap-status.live svg{color:var(--green)}
.cap-status .td-link{margin-inline-start:4px}
.cap-spin{flex:none;width:16px;height:16px;margin-top:2px;border-radius:50%;border:2px solid var(--line-2);border-top-color:var(--accent);animation:cap-rot .8s linear infinite}
@keyframes cap-rot{to{transform:rotate(360deg)}}
.cap-imp .cap-tools{display:flex;justify-content:flex-end;margin-top:8px}
.cap-list{display:flex;flex-direction:column;margin-top:6px;max-height:420px;overflow:auto;border:1px solid var(--line);border-radius:12px}
.cap-item{display:flex;align-items:center;gap:12px;padding:10px 12px;border-bottom:1px solid var(--line);cursor:pointer;min-height:52px}
.cap-item:last-child{border-bottom:0}
.cap-item input{flex:none;width:20px;height:20px;accent-color:var(--accent)}
.cap-item.dup{opacity:.65}
.cap-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.cap-main b{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cap-main small{color:var(--muted);font-size:12.5px}
.cap-main em{font-style:normal;color:var(--danger)}
.cap-amt{flex:none;font-family:var(--f-mono);font-weight:600}
.cap-acts{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.cap-acts .btn{min-height:46px}
@media (max-width:600px){
 .cap-btn{min-height:52px;font-size:15px}
 .cap-acts .btn{flex:1 1 auto;justify-content:center}
 .cap-list{max-height:none}
}
@media (prefers-reduced-motion:reduce){.cap-btn.on,.cap-spin{animation:none}}
