:root{font-family:Inter,system-ui,sans-serif;color:#17302b;background:#f3f7f5}*{box-sizing:border-box}body{margin:0}header{display:flex;justify-content:space-between;align-items:center;padding:1rem 5vw;background:#153f36;color:white}h1,h2,p{margin-top:0}header h1{margin:0}header small{opacity:.8}.auth,.section-title,.actions{display:flex;align-items:center;gap:.75rem}.section-title{justify-content:space-between}.notice{background:#e7f2ee;border-left:4px solid #176b57;padding:.8rem 1rem;border-radius:6px;margin-bottom:1rem}main{max-width:1180px;margin:auto;padding:1.25rem}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.cards article,.panel{background:white;border-radius:14px;padding:1.25rem;box-shadow:0 4px 18px #17302b12}.cards strong{display:block;font-size:1.7rem;margin-top:.5rem}.panel{margin-top:1rem}.mode-picker{margin-bottom:1rem;max-width:320px}form{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}label{display:flex;flex-direction:column;gap:.35rem;font-size:.9rem}input,select{width:100%;padding:.7rem;border:1px solid #bdd0ca;border-radius:7px;background:white;color:#17302b}.wide{grid-column:1/-1}.low-confidence{background:#fff8dc;border-color:#d79b20}.low-confidence::after{content:"Revisar campo extraído";color:#8a5a00;font-size:.78rem}button{background:#176b57;color:white;border:0;border-radius:8px;padding:.7rem 1rem;font-weight:700;cursor:pointer}button.secondary{background:#e7f2ee;color:#17302b}button:disabled{opacity:.5;cursor:not-allowed}.filter{max-width:220px}.payable-list{display:grid;gap:.75rem}.payable{border:1px solid #d9e5e1;border-radius:10px;padding:1rem;display:grid;grid-template-columns:1fr auto;gap:.75rem}.payable h3{margin:0 0 .35rem}.meta{color:#526c65;font-size:.9rem}.badge{display:inline-block;padding:.2rem .55rem;border-radius:999px;background:#e7f2ee;font-size:.78rem;font-weight:700}.badge.VENCIDO{background:#fde8e7;color:#9d231f}.badge.PAGO{background:#e4f5e8;color:#18622a}.row-actions{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.row-actions button{padding:.5rem .7rem}@media(max-width:760px){.cards,form{grid-template-columns:1fr}.wide{grid-column:auto}header,.section-title{align-items:flex-start;gap:.75rem;flex-direction:column}.auth{align-items:flex-start;flex-direction:column}.payable{grid-template-columns:1fr}}
