
:root{--fondo:#f4f6f8;--tarjeta:#fff;--texto:#1c2733;--suave:#5b6b7a;--linea:#d9e0e6;--marca:#0b5cab;--alerta:#b3261e;--ok:#1b6e3c}
@media (prefers-color-scheme:dark){:root{--fondo:#12171c;--tarjeta:#1b222a;--texto:#e6ebf0;--suave:#9aa9b6;--linea:#2e3944;--marca:#6aaeff;--alerta:#ff8a80;--ok:#7ad69a}}
*{box-sizing:border-box}body{margin:0;background:var(--fondo);color:var(--texto);font:16px/1.5 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}
.barra{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;padding:12px 16px;background:var(--tarjeta);border-bottom:1px solid var(--linea)}
.barra a{color:var(--marca);text-decoration:none;font-weight:600}.barra form{margin:0}
.quien{color:var(--suave);font-size:14px}
main{max-width:1200px;margin:0 auto;padding:20px 16px}
.tarjeta{background:var(--tarjeta);border:1px solid var(--linea);border-radius:10px;padding:20px;margin-bottom:16px}
.centrada{max-width:440px;margin:8vh auto 0}
h1{font-size:22px;margin:0 0 12px}h2{font-size:18px;margin:0 0 8px}
label{display:block;font-weight:600;margin:12px 0 4px}
input[type=text],input[type=password],input[type=email],input[type=search],select{width:100%;padding:10px;border:1px solid var(--linea);border-radius:6px;background:var(--fondo);color:var(--texto);font:inherit}
button,.boton{display:inline-block;padding:10px 16px;border:0;border-radius:6px;background:var(--marca);color:#fff;font:inherit;font-weight:600;cursor:pointer;text-decoration:none}
@media (prefers-color-scheme:dark){button,.boton{color:#0b1220}}
button.sec{background:transparent;color:var(--marca);border:1px solid var(--linea)}
.error{color:var(--alerta);font-weight:600;margin:8px 0}.aviso{border-left:4px solid var(--alerta);padding:8px 12px;background:var(--fondo);margin:0 0 16px}
.menu{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}
.menu a.tarjeta{display:block;color:inherit;text-decoration:none}.menu a.tarjeta:hover{border-color:var(--marca)}
.suave{color:var(--suave);font-size:14px}code,.mono{font-family:ui-monospace,Consolas,monospace;word-break:break-all}
.filtros{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;align-items:end}
.totales{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 16px}.chip{border:1px solid var(--linea);border-radius:8px;padding:6px 10px;background:var(--tarjeta);font-size:14px}
.tabla{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:14px}
th,td{border-bottom:1px solid var(--linea);padding:8px;text-align:left;vertical-align:top}th{color:var(--suave);font-weight:600;white-space:nowrap}
td.num{text-align:right;white-space:nowrap}.venc{color:var(--alerta);font-weight:700}.tag{display:inline-block;border:1px solid var(--linea);border-radius:10px;padding:0 8px;margin:0 4px 2px 0;font-size:12px}
.limpiar{background:transparent;color:var(--marca);border:1px solid var(--linea)}.ok{color:var(--ok)}.salir{display:inline}.mt{margin-top:20px}
