/* Estilos propios del módulo convivencia. Usa los tokens de rubria.css. */
.conv .tabla td .d{display:block;font-size:.74rem;color:var(--tinta2);margin-top:2px}
.conv .tabla td b{font-weight:500}
.conv-nota{margin:0;font-size:.76rem;line-height:1.45}
.conv-fila{flex-wrap:wrap}
.conv .tabs{max-width:100%;overflow-x:auto}

/* Banda de plazos y señales */
.conv-banda .conv-vencido .kpi-m,.conv .cifra.conv-vencido .kpi-m{color:var(--err-tinta)}
.conv-banda .conv-por-vencer .kpi-m{color:var(--warn-tinta)}
.conv-senal{display:grid;grid-template-columns:minmax(150px,200px) minmax(0,1fr);gap:14px;align-items:center;margin-top:6px;padding-top:14px;border-top:1px solid var(--linea)}

/* Formularios */
.conv-nomina{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:6px 16px;max-height:340px;overflow-y:auto}
.conv-nomina legend{grid-column:1 / -1}
.conv-nomina .num{color:var(--tinta2);min-width:1.4rem;text-align:right}
.conv-dos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px}
.conv-tres{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 14px}
.conv-dos label,.conv-tres label{display:flex;flex-direction:column;gap:5px;min-width:0}
.conv-dos .campo,.conv-tres .campo{width:100%;min-width:0}
.conv-asentimiento{padding:10px 12px;border-radius:var(--r-md);background:var(--violeta-piso)}
.conv-selector{display:flex;flex-direction:column;gap:5px;font:400 .6rem/1.35 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--tinta2);min-width:0;max-width:520px}
.cab-t .conv-selector{flex:1 1 240px}
.conv-selector .campo{width:100%;text-transform:none;letter-spacing:0;font-family:var(--sans)}
.conv-confirmar{display:flex!important;align-items:center;gap:8px;flex-wrap:wrap;margin-top:8px!important}

/* Ficha del caso */
.conv-antecedente{padding:14px 16px;border-radius:var(--r-md);background:var(--bandeja)}
.conv-antecedente p{margin:6px 0 0;font:400 1.02rem/1.45 var(--serif);white-space:pre-line}
.conv .hilo p{white-space:pre-line}
.conv-cambio{display:block;font-size:.74rem}
.conv-descargos{font-size:.98rem!important;color:var(--tinta2)!important}
.conv-quien{--quien:var(--violeta-piso)}
.conv-quien .core{background:linear-gradient(var(--quien),var(--quien)),var(--hoja)}

/* Reglamento */
.conv-protocolos{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:20px;align-items:start}
.conv-etapa{gap:8px}
.conv-protocolos .tabla-envoltura .tabla{min-width:0}
.conv-protocolos .tabla td.num{white-space:nowrap}

/* Sociograma */
.conv-pregunta{margin:0;font:italic 400 1.25rem/1.35 var(--serif);color:var(--tinta)}
.conv-participacion li{align-items:center}
.conv-participacion li span:not(.est){flex:1;min-width:0}
.conv-aplicacion{grid-template-columns:minmax(0,1fr)!important}
.conv-aplicacion .conv-fila{justify-content:flex-start}

/* Mapa del curso */
.conv-avisos{display:flex;flex-direction:column;gap:8px}
.conv-avisos .mensaje{margin:0}
.conv-mapa-marco{border-radius:var(--r-md);background:var(--bandeja);padding:8px}
.conv-mapa{display:block;width:100%;height:auto}
.conv-guia{fill:none;stroke:var(--linea);stroke-dasharray:3 6}
.conv-arista{stroke:var(--tinta3);stroke-width:1.4;opacity:.75}
.conv-arista.mutua{stroke:var(--petrol-claro);stroke-width:3;opacity:1}
.conv-arista.atenuada{opacity:.12}
.conv-arista.foco{stroke:var(--violeta);stroke-width:2.6;opacity:1}
.conv-punta{fill:var(--tinta3)}
.conv-punta.mutua{fill:var(--petrol-claro)}
.conv-punta.foco{fill:var(--violeta)}
.conv-nodo{cursor:pointer}
.conv-nodo circle{fill:var(--hoja);stroke:var(--navy-mid);stroke-width:2}
html[data-modo="oscuro"] .conv-nodo circle{stroke:#A9BACD}
.conv-nodo.sin-respuesta circle{stroke-dasharray:3 3;stroke:var(--tinta3)}
.conv-nodo.elegido circle{fill:var(--violeta);stroke:var(--violeta)}
.conv-nodo.elegido .conv-num{fill:#fff}
.conv-nodo:hover circle{stroke-width:3}
.conv-num{font:500 15px var(--mono);fill:var(--tinta);pointer-events:none}
.conv-etq{font:400 14px var(--sans);fill:var(--tinta2)}
.conv-nodo.elegido .conv-etq{fill:var(--violeta-tinta);font-weight:600}
.conv-leyenda{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:.76rem;color:var(--tinta2)}
.conv-leyenda span{display:inline-flex;align-items:center;gap:8px}
.conv-leyenda i{display:inline-block;width:22px;height:0;border-top:2px solid var(--tinta3)}
.conv-leyenda .conv-l-mutua{border-top:3px solid var(--petrol-claro)}
.conv-leyenda .conv-l-sin{width:14px;height:14px;border:2px dashed var(--tinta3);border-radius:50%}
.conv-detalle{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.conv-detalle .lista-ind{margin:6px 0 0}
.conv-detalle-t{font:500 1.05rem/1.3 var(--serif)}
.conv-grupo{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0}
.conv-grupo .lbl{flex-basis:100%}
.conv-chip{font:400 .76rem/1 var(--mono);padding:6px 10px;border-radius:999px;background:var(--bandeja);box-shadow:0 0 0 1px var(--bandeja-borde)}
.conv-tabla-mapa caption{caption-side:top;text-align:left;padding:0 8px 6px;font-size:.74rem}

@media (max-width:760px){
  .conv-dos,.conv-tres,.conv-detalle{grid-template-columns:minmax(0,1fr)}
  .conv-senal{grid-template-columns:minmax(0,1fr)}
  .conv-nomina{grid-template-columns:minmax(0,1fr)}
  .conv-num{font-size:17px}
  .conv-etq{font-size:19px}
}
