/* ═══ CONSEJO DE ADMINISTRACIÓN (6-oct-2026): Directorio → Consejo (directorio.js) e Informes → Informes del consejo /
   Calificación del consejo (consejo.js). Prefijo propio .cj-* (no existía en la app). Celular primero: tarjetas, toques
   de 44 px, nada de tablas; en PC las tarjetas se acomodan en rejilla. ═══ */

/* ── Copropiedades (sin copropiedad elegida) ── */
.cj-cops { display:grid; grid-template-columns:repeat(auto-fill, minmax(220px, 1fr)); gap:10px; }
.cj-cop { display:flex; flex-direction:column; align-items:flex-start; gap:4px; min-height:64px; padding:14px 16px; border-radius:14px;
  border:1px solid var(--x-linea); background:#fff; text-align:left; cursor:pointer; font:inherit; min-width:0; }
.cj-cop b { font-size:15px; color:var(--x-navy); max-width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.cj-cop span { font-size:12.5px; color:var(--x-gris); } .cj-cop span.con { color:var(--x-ok); font-weight:600; }
.cj-cop:hover { border-color:var(--x-menta); }

/* ── Miembros ── */
.cj-lista { display:grid; grid-template-columns:repeat(auto-fill, minmax(min(100%, 420px), 1fr)); gap:10px; margin-bottom:12px; }
.cj-m { display:flex; gap:12px; align-items:flex-start; flex-wrap:wrap; background:#fff; border:1px solid var(--x-linea); border-radius:16px; padding:14px; min-width:0; }
.cj-m.fuera { opacity:.7; background:var(--x-fondo); }
.cj-av { flex:none; width:44px; height:44px; border-radius:50%; background:var(--x-navy); color:#fff; display:flex; align-items:center; justify-content:center; font-weight:700; font-size:15px; }
.cj-cu { flex:1 1 200px; min-width:0; }
.cj-l1 { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.cj-l1 b { font-size:15.5px; color:var(--x-navy); min-width:0; overflow-wrap:anywhere; }
.cj-cargo { flex:none; font-size:11.5px; font-weight:700; color:var(--x-verde-osc); background:var(--x-ok-bg); border-radius:999px; padding:3px 9px; }
.cj-l2 { font-size:13px; color:var(--x-gris); margin-top:3px; overflow-wrap:anywhere; }
.cj-chips { display:flex; gap:6px; flex-wrap:wrap; margin-top:8px; }
.cj-chips span { font-size:12px; padding:3px 9px; border-radius:999px; background:var(--x-fondo); border:1px solid var(--x-linea); max-width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.cj-chips span.ok { color:var(--x-ok); } .cj-chips span.no { color:var(--x-al); background:var(--x-al-bg); border-color:#f0d6a4; }
.cj-aviso { margin-top:8px; font-size:12.5px; line-height:1.45; color:var(--x-al); background:var(--x-al-bg); border-radius:10px; padding:8px 10px; }
.cj-acc { display:flex; gap:8px; flex-wrap:wrap; width:100%; justify-content:flex-end; }
.cj-sel { min-height:36px; max-width:100%; min-width:0; border:1px solid var(--x-linea); border-radius:10px; padding:0 10px; font:inherit; font-size:14px; background:#fff; color:var(--x-navy); }
.cj-ver-ret { margin:4px 0 10px; }

/* ── Hoja «Agregar miembro» ── */
.cj-cands { display:flex; flex-direction:column; gap:6px; max-height:42dvh; overflow:auto; margin:10px 0; padding:2px; }
.cj-cand { display:flex; flex-direction:column; align-items:flex-start; gap:2px; text-align:left; min-height:52px; padding:9px 12px; border-radius:12px;
  border:1px solid var(--x-linea); background:#fff; font:inherit; cursor:pointer; min-width:0; }
.cj-cand b { font-size:15px; color:var(--x-navy); overflow-wrap:anywhere; } .cj-cand span { font-size:12.5px; color:var(--x-gris); }
.cj-cand i { font-style:normal; font-size:11.5px; color:var(--x-al); }
.cj-cand.activo { border-color:var(--x-verde); box-shadow:0 0 0 2px rgba(63,169,129,.25); background:#f3faf6; }
.cj-cand:disabled { opacity:.5; cursor:default; }
.cj-elegida { border-top:1px solid var(--x-linea); padding-top:12px; display:flex; flex-direction:column; gap:10px; }
.cj-eleg-t { font-size:14px; color:var(--x-texto); }
.cj-fichas { display:flex; flex-wrap:wrap; gap:6px; }

/* ── Informes del consejo ── */
.cj-infs { display:grid; grid-template-columns:repeat(auto-fill, minmax(min(100%, 360px), 1fr)); gap:12px; }
.cj-inf { background:#fff; border:1px solid var(--x-linea); border-radius:16px; padding:14px 16px; display:flex; flex-direction:column; gap:10px; min-width:0; }
.cj-inf-h { display:flex; justify-content:space-between; align-items:flex-start; gap:10px; flex-wrap:wrap; }
.cj-inf-h > div { min-width:0; }
.cj-inf-mes { font-family:var(--x-serif); font-size:19px; font-weight:600; color:var(--x-navy); }
.cj-inf-cop { font-size:13px; color:var(--x-gris); overflow-wrap:anywhere; }
.cj-inf-n { font-size:13px; line-height:1.45; color:var(--x-gris); margin:0; } .cj-inf-n.err { color:var(--x-cr); }
.cj-kpis { display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:8px; }
.cj-kpis div { background:var(--x-fondo); border-radius:10px; padding:8px 10px; min-width:0; }
.cj-kpis b { display:block; font-family:var(--x-serif); font-size:18px; color:var(--x-navy); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.cj-kpis span { font-size:11.5px; color:var(--x-gris); }
.cj-secs { display:flex; flex-wrap:wrap; gap:5px; }
.cj-secs span { font-size:11.5px; color:var(--x-navy2); background:#eef3f1; border-radius:999px; padding:3px 8px; }
.cj-inf-pie { display:flex; justify-content:space-between; align-items:center; gap:8px; flex-wrap:wrap; border-top:1px solid var(--x-linea); padding-top:10px; }
.cj-inf-pie small { font-size:12px; color:var(--x-gris); min-width:0; }
.cj-inf-acc { display:flex; gap:6px; flex-wrap:wrap; }

/* ── Cerrar el mes: secciones ── */
.cj-pregunta { font-size:14.5px; margin:0 0 10px; }
.cj-secsel { display:flex; flex-direction:column; gap:6px; }
.cj-sec { display:flex; align-items:center; gap:12px; min-height:52px; padding:8px 12px; text-align:left; border-radius:12px; border:1px solid var(--x-linea); background:#fff; font:inherit; cursor:pointer; }
.cj-sec b { display:block; font-size:14.5px; color:var(--x-navy); } .cj-sec small { font-size:12px; color:var(--x-gris); }
.cj-chk { flex:none; width:22px; height:22px; border-radius:6px; border:2px solid var(--x-linea); background:#fff; position:relative; }
.cj-sec.activo { border-color:var(--x-verde); background:#f3faf6; }
.cj-sec.activo .cj-chk { background:var(--x-verde); border-color:var(--x-verde); }
.cj-sec.activo .cj-chk::after { content:''; position:absolute; left:6px; top:2px; width:6px; height:11px; border:solid #fff; border-width:0 2.5px 2.5px 0; transform:rotate(45deg); }

/* ── ⚙ ── */
.cj-auto { border:1px solid var(--x-linea); border-radius:14px; padding:10px; margin-bottom:12px; display:flex; flex-direction:column; gap:10px; }
.cj-fila { display:flex; justify-content:space-between; align-items:center; gap:10px; flex-wrap:wrap; font-size:14px; color:var(--x-texto); padding:0 4px; }
.cj-num { display:flex; align-items:center; gap:10px; } .cj-num b { min-width:22px; text-align:center; font-size:17px; color:var(--x-navy); }

/* ── Calificación ── */
.cj-prom { display:flex; align-items:baseline; gap:10px; flex-wrap:wrap; }
.cj-prom b { font-family:var(--x-serif); font-size:34px; color:var(--x-navy); line-height:1; }
.cj-prom span { font-size:13px; color:var(--x-gris); }
.cj-prom em { font-style:normal; font-size:12.5px; color:var(--x-gris); margin-left:auto; }
.cj-est { color:#c9822b; letter-spacing:1px; font-size:14px; white-space:nowrap; } .cj-est i { font-style:normal; color:#d9d4c7; }
.cj-barras { display:flex; flex-direction:column; gap:6px; }
.cj-bar { display:grid; grid-template-columns:minmax(0,1fr) 70px 28px; gap:8px; align-items:center; font-size:12.5px; }
.cj-bar span { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:var(--x-texto); }
.cj-bar i { height:7px; border-radius:4px; background:#eef0ec; overflow:hidden; } .cj-bar u { display:block; height:100%; background:var(--x-rad); text-decoration:none; }
.cj-bar b { text-align:right; color:var(--x-navy); }
.cj-resp { border:1px solid var(--x-linea); border-radius:14px; padding:12px; margin-bottom:10px; }
.cj-resp-h { display:flex; flex-wrap:wrap; gap:4px 10px; align-items:baseline; margin-bottom:8px; }
.cj-resp-h b { color:var(--x-navy); } .cj-resp-h span, .cj-resp-h small { font-size:12.5px; color:var(--x-gris); }
.cj-resp ul { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:5px; }
.cj-resp li { display:flex; justify-content:space-between; gap:10px; font-size:13px; }
.cj-resp li span { min-width:0; }
.cj-resp blockquote { margin:10px 0 0; padding:8px 12px; border-left:3px solid var(--x-menta); background:var(--x-fondo); border-radius:0 10px 10px 0; font-size:13.5px; line-height:1.5; white-space:pre-wrap; overflow-wrap:anywhere; }

@media (max-width:520px) {
  .cj-acc { justify-content:stretch; } .cj-acc > * { flex:1 1 auto; }
  .cj-prom em { margin-left:0; width:100%; }
}
