:root{color-scheme:light dark;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5}*{box-sizing:border-box}body{margin:0}input,button{font:inherit;padding:.45rem .6rem;border-radius:6px;border:1px solid color-mix(in srgb,currentColor 25%,transparent);background:transparent;color:inherit}button{cursor:pointer;background:#2563eb;color:#fff;border-color:#2563eb}button.danger{background:transparent;color:#dc2626;border-color:color-mix(in srgb,#dc2626 40%,transparent)}a{color:#2563eb}.stack{display:grid;gap:.75rem}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}label{display:grid;gap:.25rem}.bar{display:flex;align-items:center;justify-content:space-between}.muted{opacity:.7;font-size:.9rem}.error{color:#dc2626}.ok{color:#16a34a}.tabs{display:flex;flex-wrap:wrap;gap:.5rem 1rem;margin:1rem 0;border-bottom:1px solid color-mix(in srgb,currentColor 20%,transparent);padding-bottom:.5rem}.card-block{border:1px solid color-mix(in srgb,currentColor 15%,transparent);border-radius:10px;padding:.85rem 1rem;margin-bottom:1rem}.aviso{border:1px solid color-mix(in srgb,#b45309 50%,transparent);background:color-mix(in srgb,#b45309 12%,transparent);border-radius:10px;padding:.7rem 1rem}.tabs a.active{font-weight:600;text-decoration:underline}.cards{list-style:none;padding:0;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.cards li,.stat{display:grid;gap:.2rem;padding:.85rem 1rem;border:1px solid color-mix(in srgb,currentColor 15%,transparent);border-radius:10px}.stat .num{font-size:1.6rem;font-weight:700}.list{list-style:none;padding:0;display:grid;gap:.5rem}.list li{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.6rem .85rem;border:1px solid color-mix(in srgb,currentColor 15%,transparent);border-radius:8px}.list li div{display:grid}.tag{font-size:.8rem;padding:.15rem .5rem;border-radius:999px;border:1px solid color-mix(in srgb,currentColor 25%,transparent)}.tag.admin{background:color-mix(in srgb,#2563eb 18%,transparent);border-color:#2563eb}.rowform{display:grid;grid-template-columns:1.4fr 1fr .8fr .7fr 1.4fr auto auto;gap:.4rem;align-items:center;margin-bottom:.4rem}.rowform.head{font-size:.8rem;font-weight:600;opacity:.7;margin-top:.5rem}.ok-box{border:1px solid color-mix(in srgb,#16a34a 50%,transparent);background:color-mix(in srgb,#16a34a 10%,transparent);border-radius:10px;padding:.75rem 1rem;margin:.75rem 0}.ok-box code{font-size:1.05rem;padding:.1rem .4rem;border-radius:5px;background:color-mix(in srgb,currentColor 12%,transparent)}.tabla{width:100%;border-collapse:collapse;font-size:.92rem}.tabla th,.tabla td{text-align:left;padding:.45rem .5rem;border-bottom:1px solid color-mix(in srgb,currentColor 12%,transparent);vertical-align:top}.tabla th{font-size:.78rem;text-transform:uppercase;opacity:.65}button.link{background:transparent;border:none;color:#2563eb;padding:0;text-decoration:underline}.acciones{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.inline{display:flex;gap:.35rem;align-items:center}.badge{font-size:.75rem;padding:.12rem .5rem;border-radius:999px;border:1px solid currentColor;text-transform:capitalize}.badge.pendiente{color:#b45309}.badge.aprobado{color:#16a34a}.badge.rechazado{color:#dc2626}.badge.pagado{color:#16a34a}.badge.parcial{color:#b45309}.badge.vencido{color:#dc2626}.badge.anulado{opacity:.6}
