/* CONTRATOS — Alquileres page-specific styles */

/* ── Estado cobro chips ── */
.cobro-ok{display:inline-flex;align-items:center;gap:5px;background:#dcfce7;color:#15803d;font-size:.72rem;font-weight:700;padding:3px 9px;border-radius:20px}
.cobro-pendiente{display:inline-flex;align-items:center;gap:5px;background:#fee2e2;color:#dc2626;font-size:.72rem;font-weight:700;padding:3px 9px;border-radius:20px;animation:parpadeo 2s infinite}
.cobro-espera{display:inline-flex;align-items:center;gap:5px;background:#fef9c3;color:#92400e;font-size:.72rem;font-weight:700;padding:3px 9px;border-radius:20px}
.cobro-pronto{display:inline-flex;align-items:center;gap:5px;background:#f1f5f9;color:#64748b;font-size:.72rem;font-weight:700;padding:3px 9px;border-radius:20px}
@keyframes parpadeo{0%,100%{opacity:1}50%{opacity:.6}}

/* ── Alertas cobros ── */
.alert-cobros{border-radius:12px;padding:14px 18px;margin-bottom:16px;display:flex;align-items:flex-start;gap:14px}
.alert-cobros.danger{background:#fee2e2;border:1.5px solid #fca5a5}
.alert-cobros.warning{background:#fef9c3;border:1.5px solid #fde68a}
.alert-cobros-icon{font-size:1.3rem;flex-shrink:0;margin-top:1px}
.alert-cobros.danger .alert-cobros-icon{color:#dc2626}
.alert-cobros.warning .alert-cobros-icon{color:#d97706}
.alert-cobros-title{font-size:.84rem;font-weight:700;margin-bottom:6px}
.alert-cobros.danger .alert-cobros-title{color:#991b1b}
.alert-cobros.warning .alert-cobros-title{color:#92400e}
.alert-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.alert-chip-mat{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:20px;font-size:.75rem;font-weight:700;cursor:pointer;transition:opacity .2s}
.alert-chip-mat:hover{opacity:.8}
.alert-chip-mat.red{background:#dc2626;color:#fff}
.alert-chip-mat.orange{background:#d97706;color:#fff}

/* ── Selección múltiple ── */
.bulk-cobro-bar{display:none;align-items:center;gap:12px;background:#1464a5;border-radius:10px;padding:10px 18px;margin-bottom:14px;flex-wrap:wrap}
.bulk-cobro-bar.visible{display:flex}
.bulk-cobro-bar span{color:#fff;font-size:.82rem;font-weight:700}
.bulk-cobro-bar button{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:7px;font-family:'Montserrat',sans-serif;font-size:.8rem;font-weight:700;cursor:pointer;border:none;transition:all .2s}
.bcc-green{background:#22c55e;color:#fff}
.bcc-green:hover{background:#16a34a}
.bcc-ghost{background:rgba(255,255,255,.15);color:#fff;border:1px solid rgba(255,255,255,.3)!important}
.bcc-ghost:hover{background:rgba(255,255,255,.25)}

/* ── Cuota bulk bar ── */
.bulk-bar{display:flex;gap:10px;align-items:center;background:var(--volvo-light);border-radius:10px;padding:10px 16px;margin-bottom:16px;flex-wrap:wrap}
.bulk-bar label{font-size:.78rem;font-weight:700;color:var(--volvo-accent)}

/* ── Historial cobros ── */
.hist-row{display:flex;align-items:center;justify-content:space-between;padding:7px 0;border-bottom:1px solid var(--border);font-size:.8rem}
.hist-row:last-child{border-bottom:none}

/* ── Page-specific table row states ── */
.tbl tr.seleccionado td{background:#eff6ff!important}
.tbl tr.pendiente-pago td{background:#fff5f5!important}

/* ── Mant / Seguro chips ── */
.mant-chip{font-size:.72rem;padding:2px 8px;border-radius:8px;font-weight:600}
.mant-gold{background:#fef9c3;color:#92400e}
.mant-blue{background:#dbeafe;color:#1d4ed8}
.mant-classic{background:#e0f2fe;color:#0369a1}
.mant-no{background:#f1f5f9;color:#94a3b8}
.link-mat{color:var(--volvo-accent);text-decoration:none;font-weight:700}
.link-mat:hover{text-decoration:underline}
.seg-sanfer{background:#fef3c7;color:#b45309;font-size:.72rem;padding:2px 8px;border-radius:8px;font-weight:600}
.seg-cliente{background:#d1fae5;color:#065f46;font-size:.72rem;padding:2px 8px;border-radius:8px;font-weight:600}
.seg-no{background:#f1f5f9;color:#94a3b8;font-size:.72rem;padding:2px 8px;border-radius:8px;font-weight:600}

/* ── Form grid (compact) ── */
.fg{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.fg .full{grid-column:1/-1}
.ff label{display:block;font-size:.68rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--text-mid);margin-bottom:4px}
.ff input,.ff select{width:100%;padding:8px 11px;border:1.5px solid var(--border);border-radius:8px;font-family:'Montserrat',sans-serif;font-size:.87rem;outline:none;transition:border-color .2s}
.ff input:focus,.ff select:focus{border-color:var(--volvo-accent)}

/* ── Toast ── */
#toast-cnt{position:fixed;bottom:24px;right:24px;z-index:9999;display:flex;flex-direction:column;gap:8px}
.toast{padding:11px 18px;border-radius:10px;font-size:.84rem;font-weight:600;font-family:'Montserrat',sans-serif;box-shadow:0 4px 16px rgba(0,0,0,.15);color:#fff;transition:opacity .3s,transform .3s}
.toast.success{background:#38a169}
.toast.error{background:#e53e3e}
.toast.info{background:#3182ce}
.toast.warning{background:#d97706}

/* ── Checkbox custom ── */
.chk-row{width:16px;height:16px;cursor:pointer;accent-color:var(--volvo-accent)}

/* ── Success btn ── */
.btn-success{background:#16a34a;color:#fff}
.btn-success:hover{background:#15803d}
.btn-sm{padding:4px 10px;font-size:.75rem;border-radius:6px}
.btn-icon.success:hover{color:#16a34a}

/* ══════════════════════════════════════════════════════════════
   RESPONSIVE ADDITIONS — alq-contratos.css
   ══════════════════════════════════════════════════════════════ */
@media (max-width: 768px) {
  .alert-cobros { flex-direction: column; gap: 8px; padding: 12px 14px; }
  .alert-chips { gap: 4px; }
  .alert-chip-mat { font-size: .7rem; padding: 2px 8px; }
  .bulk-cobro-bar { padding: 8px 12px; gap: 8px; }
  .bulk-cobro-bar button { padding: 5px 10px; font-size: .75rem; }
  .bulk-bar { padding: 8px 12px; flex-direction: column; gap: 8px; }
  .fg { grid-template-columns: 1fr; }
  .ff input, .ff select { padding: 7px 10px; font-size: .83rem; }
  .hist-row { flex-direction: column; align-items: flex-start; gap: 4px; padding: 8px 0; font-size: .76rem; }
  .cobro-ok, .cobro-pendiente, .cobro-espera, .cobro-pronto { font-size: .68rem; padding: 2px 7px; }
  .seg-sanfer, .seg-cliente, .seg-no, .mant-chip { font-size: .68rem; padding: 2px 6px; }
}
@media (max-width: 480px) {
  .bulk-cobro-bar { flex-direction: column; }
  .bulk-cobro-bar span { font-size: .76rem; }
  .alert-cobros-title { font-size: .78rem; }
  .fg { gap: 8px; }
  #toast-cnt { right: 12px; left: 12px; bottom: 12px; }
  .toast { max-width: 100%; }
}
