/* Columnas configurables (072): celdas editables de Pagos y panel lateral
   "Columnas". Mismo patrón visual que el Maestro de Producto. */

.btn[hidden]{display:none;}

/* ---------- Celdas editables de Pagos ---------- */
.m-edit{width:100%;height:28px;padding:0 6px;border:1px solid transparent;border-radius:var(--radius-sm);
  background:transparent;color:var(--ink);font-size:var(--fs-meta);text-overflow:ellipsis;}
.m-edit:hover{border-color:var(--border);background:var(--surface);}
.m-edit:focus{outline:none;border-color:var(--accent-line);background:var(--surface);box-shadow:0 0 0 3px var(--accent-soft);}
.m-edit:disabled{opacity:.6;cursor:progress;}
.m-edit::placeholder{color:var(--text-faint);}
select.m-edit{cursor:pointer;padding-right:2px;}
.m-x-num{text-align:right;font-variant-numeric:tabular-nums;}
.m-check{width:16px;height:16px;cursor:pointer;accent-color:var(--accent);}
.m-link{display:flex;align-items:center;gap:2px;}
.m-abrir{flex:none;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;
  border-radius:var(--radius-sm);color:var(--text-faint);text-decoration:none;font-weight:700;}
.m-abrir:hover,.m-abrir:focus-visible{background:var(--accent-soft);color:var(--accent);}

/* Alumno necesita ancho mínimo: editable, el input se corta. */
.tabla-pagos .pc-c-alumno{min-width:190px;}
.tabla-pagos td.pc-edit{min-width:130px;padding:0 2px;overflow:visible;}
.tabla-pagos td.pc-edit:first-child{padding-left:var(--sp-3);}
.tabla-pagos td.pc-edit.pc-x-casilla{min-width:0;text-align:center;}
.tabla-pagos th.pc-x-casilla{text-align:center;}
.tabla-pagos .pc-c-comprobante.pc-edit,.tabla-pagos .pc-x-link.pc-edit{min-width:170px;}
.tabla-pagos .pc-c-nota.pc-edit,.tabla-pagos .pc-x-texto.pc-edit{min-width:160px;}

/* Estado del guardado por celda. El error queda escrito adentro. */
.tabla-pagos td.m-guardando{background:var(--accent-soft);}
.tabla-pagos td.m-ok{box-shadow:inset 0 0 0 2px var(--success);transition:box-shadow .3s;}
.tabla-pagos td.m-error{box-shadow:inset 0 0 0 2px var(--danger);background:var(--danger-soft);height:auto;white-space:normal;}
.pc-error{min-width:170px;padding:2px 6px 5px;font-size:var(--fs-micro);font-weight:600;line-height:1.3;color:var(--danger);
  white-space:normal;overflow-wrap:anywhere;text-align:left;}

.pc-huerfanos{--badge-color:var(--sem-amarillo-text);cursor:help;}

/* Cargar pago: campo que ocupa las dos columnas. */
.form-grid2 .campo-ancho{grid-column:1 / -1;}
.form-row .m-check{display:block;margin-top:var(--sp-2);}

/* ---------- Panel lateral "Columnas" ---------- */
.mc-overlay{position:fixed;inset:0;z-index:100;display:flex;justify-content:flex-end;background:rgba(23,26,33,.35);}
.mc-panel{display:flex;flex-direction:column;width:min(440px,100%);height:100%;background:var(--surface);
  border-left:1px solid var(--border);box-shadow:var(--shadow-md);}
.mc-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);padding:var(--sp-4) var(--sp-5);
  border-bottom:1px solid var(--border-soft);}
.mc-head h2{margin:0;font-size:var(--fs-card);}
.mc-body{flex:1;overflow-y:auto;padding:var(--sp-4) var(--sp-5);}
.mc-ocupado .mc-body{cursor:progress;}
.mc-nota{margin:0 0 var(--sp-3);font-size:var(--fs-micro);color:var(--text-faint);}
.mc-error:empty{display:none;}
.mc-lista,.mc-archivadas ul,.mc-opciones ul{list-style:none;margin:0;padding:0;}

.mc-item{margin-bottom:4px;padding:4px 6px;border:1px solid var(--border-soft);border-radius:var(--radius-sm);background:var(--surface);}
.mc-item.mc-oculta{background:var(--surface-2);}
.mc-oculta .mc-nombre{color:var(--text-faint);}
.mc-fila{display:flex;align-items:center;gap:4px;}
.mc-input{flex:1;min-width:0;height:30px;padding:0 8px;border:1px solid transparent;border-radius:var(--radius-sm);
  background:transparent;color:var(--ink);font-size:var(--fs-meta);}
.mc-input:hover{border-color:var(--border);}
.mc-input:focus{outline:none;border-color:var(--accent-line);background:var(--surface);box-shadow:0 0 0 3px var(--accent-soft);}
.mc-nombre{font-weight:600;}
.mc-ic{flex:none;display:inline-flex;align-items:center;justify-content:center;width:30px;padding:0;}

/* Mostrar u ocultar: switch. Deshabilitado en la columna que no se oculta. */
.mc-switch{flex:none;position:relative;display:inline-flex;width:34px;height:20px;margin-left:4px;cursor:pointer;}
.mc-switch input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer;}
.mc-switch span{width:100%;height:100%;border-radius:999px;background:var(--border);transition:background .15s;}
.mc-switch span::after{content:'';position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;
  background:#fff;box-shadow:var(--shadow);transition:transform .15s;}
.mc-switch input:checked + span{background:var(--accent);}
.mc-switch input:checked + span::after{transform:translateX(14px);}
.mc-switch input:focus-visible + span{box-shadow:0 0 0 3px var(--accent-soft);}
.mc-switch input:disabled{cursor:not-allowed;}
.mc-switch input:disabled + span{opacity:.45;}

.mc-extra{display:flex;align-items:center;gap:var(--sp-2);padding:2px 0 2px 8px;}
.mc-tipo{flex:none;padding:1px 8px;border:1px solid var(--border);border-radius:999px;font-size:var(--fs-micro);
  color:var(--text-dim);white-space:nowrap;}
.mc-confirmar{margin:4px 0 4px 8px;padding:var(--sp-2) var(--sp-3);border-radius:var(--radius-sm);background:var(--danger-soft);
  font-size:var(--fs-meta);color:var(--ink);}
.mc-confirmar .mc-acciones{margin-top:var(--sp-2);}
.mc-opciones{margin:4px 0 4px 8px;padding:var(--sp-2);border-radius:var(--radius-sm);background:var(--surface-2);}
.mc-opciones .mc-input{background:var(--surface);border-color:var(--border-soft);}
.mc-opciones .mc-nota{margin:var(--sp-2) 0 0;}
.mc-op{display:flex;align-items:center;gap:4px;margin-bottom:4px;}
.mc-vacio{font-size:var(--fs-micro);color:var(--text-faint);margin-bottom:4px;}

.mc-archivadas{margin-top:var(--sp-4);}
.mc-archivadas summary{cursor:pointer;font-size:var(--fs-meta);font-weight:600;color:var(--text-dim);margin-bottom:var(--sp-2);}
.mc-archivadas .mc-fila{padding:4px 0;gap:var(--sp-2);}
.mc-arch-nombre{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--fs-meta);}
.mc-nueva{margin-top:var(--sp-4);padding-top:var(--sp-4);border-top:1px solid var(--border-soft);}
.mc-acciones{display:flex;justify-content:flex-end;gap:var(--sp-2);}
/* Cargar pago: alta de una opción de catálogo (075) */
.opcion-nueva{margin-top:var(--sp-1);font-size:var(--fs-meta);}
.opcion-nueva .btn-link{background:none;border:0;padding:0;color:var(--text-dim);cursor:pointer;text-decoration:underline;font:inherit;}
.opcion-nueva [id$="-nuevo"]{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2);margin-top:var(--sp-1);}
.opcion-nueva [id$="-nuevo"][hidden]{display:none;}
