*{box-sizing:border-box}body{color:#1a1a1a;background:#f4f5f7;margin:0;font-family:-apple-system,system-ui,sans-serif}.layout{flex-direction:column;min-height:100vh;display:flex}.topbar{color:#fff;background:#1e293b;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 24px;display:flex}.topbar .brand{color:#fff;font-size:1.05rem;font-weight:700;text-decoration:none}.topbar nav a{color:#cbd5e1;margin-left:18px;font-size:.9rem;text-decoration:none}.topbar nav a:hover{color:#fff}.content{flex:1;width:100%;max-width:900px;margin:0 auto;padding:24px}.card{background:#fff;border-radius:10px;margin-bottom:16px;padding:20px;box-shadow:0 1px 3px #00000014}.card a{color:inherit;text-decoration:none}.card:hover{box-shadow:0 2px 8px #0000001f}h1{margin-bottom:6px;font-size:1.5rem}h2{margin-bottom:12px;font-size:1.2rem}.label{color:#64748b;text-transform:uppercase;letter-spacing:.03em;font-size:.8rem}.monto{font-size:1.4rem;font-weight:700}.monto.rojo{color:#dc2626}.monto.verde{color:#16a34a}.badge{border-radius:999px;padding:3px 10px;font-size:.75rem;font-weight:600;display:inline-block}.badge.ACTIVO{color:#1e40af;background:#dbeafe}.badge.PAGADO{color:#15803d;background:#dcfce7}.badge.EN_MORA{color:#b91c1c;background:#fee2e2}form{flex-direction:column;gap:14px;max-width:420px;display:flex}label{color:#334155;flex-direction:column;gap:4px;font-size:.85rem;font-weight:600;display:flex}input,select,textarea{border:1px solid #cbd5e1;border-radius:6px;padding:10px 12px;font-size:1rem}button{color:#fff;cursor:pointer;background:#1e293b;border:none;border-radius:6px;width:fit-content;padding:10px 16px;font-size:.95rem}button:hover{background:#334155}button.secundario{color:#1e293b;background:#e2e8f0}button.secundario:hover{background:#cbd5e1}table{border-collapse:collapse;width:100%;margin-top:12px}th,td{text-align:left;border-bottom:1px solid #e2e8f0;padding:8px 10px;font-size:.9rem}th{color:#64748b;text-transform:uppercase;font-size:.78rem;font-weight:600}.error{color:#b91c1c;background:#fee2e2;border-radius:6px;padding:10px 14px;font-size:.9rem}.grid-2{grid-template-columns:1fr 1fr;gap:14px;display:grid}.login-box{max-width:340px;margin:80px auto}
