/* Conecta CRM — estilos */
/* Paleta y tipografías de conectatodo.cl */
:root {
  --azul: #2B80B9; --azul-osc: #1D6396; --azul-claro: #E6F0F8;
  --pizarra: #343D46; --pizarra-osc: #1E252C; --naranjo: #F26101; --wa: #1FAF56; --wa-osc: #168A43;
  --tinta: #2B3137; --suave: #5A6670; --linea: #DDE3E7; --fondo: #F2F5F7; --blanco: #fff;
  --verde: #168A43; --verde-claro: #E3F4EA; --rojo: #C0362C; --rojo-claro: #FDECEA;
  --ambar: #B84700; --ambar-claro: #FFF1E6; --violeta: #6B47C9; --violeta-claro: #EFEAFD;
  --radio: 8px; --sombra: 0 1px 2px rgba(30, 37, 44, .06), 0 1px 3px rgba(30, 37, 44, .05);
  --fuente: Roboto, "Segoe UI", system-ui, Arial, sans-serif; --titulos: Ubuntu, Roboto, sans-serif;
  font-size: 15px;
}
* { box-sizing: border-box; }
[hidden] { display: none !important; }
html, body { margin: 0; }
body { font-family: var(--fuente); color: var(--tinta); background: var(--fondo); line-height: 1.45; -webkit-font-smoothing: antialiased; min-height: 100vh; display: flex; flex-direction: column; }
body > main { flex: 1; width: 100%; }
a { color: var(--azul); text-decoration: none; }
a:hover { text-decoration: underline; }
h1, h2, h3 { font-family: var(--titulos); color: var(--pizarra); font-weight: 700; }
h1 { font-size: 1.55rem; margin: .1rem 0 .2rem; }
h2 { font-size: 1.08rem; margin: 0 0 .8rem; font-weight: 500; }
p { margin: .3rem 0 .6rem; }
code { background: var(--fondo); border: 1px solid var(--linea); border-radius: 4px; padding: .05rem .3rem; font-size: .86em; }
pre { background: #0f1724; color: #dbe4f0; border-radius: 8px; padding: .9rem 1rem; overflow-x: auto; font-size: .82rem; }
pre code { background: none; border: 0; color: inherit; padding: 0; }
.suave { color: var(--suave); }
.centro { text-align: center; }
.nowrap { white-space: nowrap; }
.cortar { word-break: break-all; }
.relleno { padding: 1rem 1.1rem; }

/* Barra superior y menú (como el encabezado de conectatodo.cl) */
.barra { display: flex; align-items: center; gap: .9rem; padding: .55rem 1.1rem; background: rgba(255, 255, 255, .97); border-bottom: 1px solid var(--linea); position: sticky; top: 0; z-index: 20; }
.marca { display: flex; align-items: center; gap: .5rem; white-space: nowrap; color: var(--pizarra); }
.marca:hover { text-decoration: none; }
.marca-icono { height: 34px; width: 34px; }
.marca-texto { height: 15px; width: auto; }
.marca-crm { font-family: var(--titulos); font-weight: 700; font-size: .78rem; letter-spacing: .06em; color: #fff; background: #2B80B9; border-radius: 4px; padding: .12rem .4rem; }
.cuenta { display: inline-flex; align-items: center; gap: .55rem; padding: .15rem .7rem .15rem .55rem; border-left: 1px solid var(--linea); color: var(--pizarra); font-weight: 500; font-size: .9rem; white-space: nowrap; min-width: 0; }
a.cuenta:hover { text-decoration: none; color: var(--azul); }
.cuenta-logo { height: 34px; width: auto; max-width: 150px; object-fit: contain; display: block; }
.cuenta-nombre { overflow: hidden; text-overflow: ellipsis; }
.cuenta-logo + .cuenta-nombre { color: var(--suave); font-size: .82rem; }
.buscador { flex: 1; max-width: 420px; }
.buscador input { width: 100%; }
.usuario { margin-left: auto; display: flex; align-items: center; gap: .6rem; }
.avatar { width: 30px; height: 30px; border-radius: 50%; background: var(--azul); color: #fff; display: inline-flex; align-items: center; justify-content: center; font-size: .75rem; font-weight: 700; }
.avatar-chico { width: 22px; height: 22px; font-size: .62rem; }
.salir { color: var(--suave); font-size: .9rem; }
.menu { display: flex; gap: .2rem; padding: 0 .8rem; background: var(--blanco); border-bottom: 1px solid var(--linea); overflow-x: auto; scrollbar-width: none; }
.menu a { padding: .7rem .7rem .62rem; color: var(--pizarra); font-weight: 500; font-size: .8rem; text-transform: uppercase; letter-spacing: .08em; white-space: nowrap; border-bottom: 2px solid transparent; }
.menu a:hover { color: var(--azul); text-decoration: none; }
.menu a.activo { color: var(--azul); border-bottom-color: var(--azul); }
.menu .sep { width: 1px; background: var(--linea); margin: .5rem .4rem; }

/* Pie (como el de conectatodo.cl) */
.pie-sitio { background: var(--pizarra-osc); color: #AEB9C1; font-size: .82rem; padding: .9rem 1.1rem; display: flex; gap: .6rem 1.4rem; align-items: center; justify-content: center; flex-wrap: wrap; }
.pie-sitio a { color: #DCE4E9; }
.pie-sitio .wa { display: inline-flex; align-items: center; gap: .35rem; color: #fff; background: var(--wa); border-radius: 6px; padding: .3rem .7rem; font-weight: 700; }
.pie-sitio .wa:hover { background: var(--wa-osc); text-decoration: none; }
.pie-sitio img { height: 22px; vertical-align: middle; }

/* Contenido */
.contenido { max-width: 1100px; margin: 0 auto; padding: 1.2rem 1.1rem 3rem; }
.contenido-ancho { max-width: 1500px; }
.cabecera { display: flex; justify-content: space-between; align-items: flex-start; gap: 1rem; margin-bottom: 1rem; flex-wrap: wrap; }
.volver { font-size: .88rem; color: var(--suave); }
.botones { display: flex; gap: .5rem; flex-wrap: wrap; align-items: center; }
.tarjeta { background: var(--blanco); border: 1px solid var(--linea); border-radius: var(--radio); box-shadow: var(--sombra); padding: 1.1rem; margin-bottom: 1rem; }
.tarjeta.sin-relleno { padding: 0; overflow: hidden; }
.tarjeta-cab { display: flex; justify-content: space-between; align-items: center; margin-bottom: .6rem; gap: .5rem; }
.tarjeta-cab h2 { margin: 0; }
.dos-col { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; align-items: start; }
.dos-col > .tarjeta { margin-bottom: 0; }
.dos-col { margin-bottom: 1rem; }
.vacio { text-align: center; padding: 2rem 1rem; }

/* Botones */
.btn { display: inline-flex; align-items: center; gap: .3rem; padding: .5rem .95rem; border-radius: 6px; border: 1px solid var(--linea); background: var(--blanco); color: var(--tinta); font: inherit; font-weight: 700; font-size: .9rem; cursor: pointer; white-space: nowrap; }
.btn:hover { border-color: #c4ccd8; text-decoration: none; }
.btn-primario { background: var(--azul); border-color: var(--azul); color: #fff; }
.btn-primario:hover { background: var(--azul-osc); border-color: var(--azul-osc); }
.btn-chico { padding: .25rem .6rem; font-size: .82rem; }
.btn-texto { border-color: transparent; background: none; color: var(--suave); font-weight: 500; }
.btn-texto:hover { color: var(--rojo); }
.btn-bloque { width: 100%; justify-content: center; padding: .65rem; }
.en-linea { display: inline; }

/* Formularios */
input, select, textarea { font: inherit; color: inherit; border: 1px solid #C9D2D9; border-radius: 6px; padding: .48rem .65rem; background: var(--blanco); width: 100%; }
input:focus, select:focus, textarea:focus { outline: 2px solid var(--azul-claro); border-color: var(--azul); }
input[type=checkbox], input[type=radio] { width: auto; accent-color: var(--azul); }
input[type=file] { padding: .35rem; }
.formulario .campo, .campo { display: flex; flex-direction: column; gap: .25rem; margin-bottom: .8rem; }
.campo label { font-weight: 600; font-size: .88rem; }
.campo small { color: var(--suave); font-size: .8rem; }
.campo .error { color: var(--rojo); }
.con-error input, .con-error select, .con-error textarea { border-color: var(--rojo); }
.req { color: var(--rojo); }
.campo-check label { font-weight: 500; display: flex; align-items: center; gap: .4rem; }
.check { display: inline-flex; align-items: center; gap: .4rem; font-size: .9rem; white-space: nowrap; }
.grilla-campos { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 1rem; }
.campo-ancho { grid-column: 1 / -1; }
.acciones { display: flex; gap: .5rem; margin-top: .4rem; }
.filtros { display: flex; gap: .6rem; align-items: center; margin-bottom: 1rem; flex-wrap: wrap; }
.filtros input[type=search] { max-width: 320px; }
.filtros select { width: auto; }
.en-fila { display: flex; gap: .6rem; flex-wrap: wrap; }
.en-fila input { flex: 1; min-width: 180px; }
.en-fila select { width: auto; }
.subir { display: flex; gap: .6rem; align-items: center; flex-wrap: wrap; }
.subir input[type=file] { max-width: 320px; }
.segmentado { display: flex; gap: .5rem; flex-wrap: wrap; }
.segmentado label { border: 1px solid var(--linea); border-radius: 8px; padding: .45rem .7rem; font-weight: 500; display: flex; gap: .4rem; align-items: center; cursor: pointer; }
.segmentado label:has(input:checked) { border-color: var(--azul); background: var(--azul-claro); }
.obligatorios { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; margin-bottom: 1rem; }
.obligatorios fieldset { border: 1px solid var(--linea); border-radius: 8px; display: flex; flex-direction: column; gap: .35rem; }
.obligatorios legend { font-weight: 600; font-size: .88rem; padding: 0 .3rem; }
.descartar { margin-top: .4rem; text-align: right; }
.copiable { display: flex; gap: .5rem; align-items: center; margin-bottom: .8rem; flex-wrap: wrap; }
.copiable code { padding: .45rem .6rem; word-break: break-all; }
details { margin: .4rem 0 .8rem; }
summary { cursor: pointer; color: var(--azul); font-weight: 600; font-size: .9rem; }
.formulario h2 { margin-top: 1.2rem; padding-top: 1rem; border-top: 1px solid var(--linea); }
.formulario h2:first-of-type { margin-top: 0; padding-top: 0; border-top: 0; }

/* Avisos */
.aviso { padding: .65rem .9rem; border-radius: 8px; margin-bottom: 1rem; font-size: .92rem; display: flex; gap: .6rem; align-items: center; flex-wrap: wrap; }
.aviso-ok { background: var(--verde-claro); color: var(--verde); }
.aviso-error { background: var(--rojo-claro); color: var(--rojo); }
.aviso-aviso { background: var(--ambar-claro); color: var(--ambar); }

/* Tablas y listas */
.tabla { width: 100%; border-collapse: collapse; font-size: .92rem; }
.tabla th { text-align: left; font-size: .74rem; text-transform: uppercase; letter-spacing: .06em; color: var(--pizarra); font-weight: 500; padding: .6rem .9rem; border-bottom: 1px solid var(--linea); background: var(--fondo); }
.tabla td { padding: .6rem .9rem; border-bottom: 1px solid var(--linea); vertical-align: top; }
.tabla tr:last-child td { border-bottom: 0; }
.tabla tr[data-href] { cursor: pointer; }
.tabla tr[data-href]:hover td { background: #F5F9FC; }
.tabla .num { text-align: right; }
.tabla-compacta td { padding: .4rem .9rem; font-size: .85rem; }
.inactiva { opacity: .55; }
.fila-link { display: flex; justify-content: space-between; align-items: center; gap: .8rem; padding: .65rem 1.1rem; border-bottom: 1px solid var(--linea); color: var(--tinta); }
.tarjeta:not(.sin-relleno) .fila-link { padding: .6rem 0; }
.fila-link:last-child { border-bottom: 0; }
.fila-link:hover { text-decoration: none; background: #fafcff; }
.flecha { color: var(--suave); font-size: 1.3rem; }
.fila-contacto { display: flex; justify-content: space-between; align-items: center; gap: .6rem; padding: .55rem 0; border-bottom: 1px solid var(--linea); }
.fila-contacto:last-child { border-bottom: 0; }
.sin-relleno .fila-contacto { padding: .7rem 1.1rem; }
.datos { display: grid; grid-template-columns: 9rem 1fr; gap: .35rem .8rem; margin: 0 0 .8rem; font-size: .93rem; }
.datos dt { color: var(--suave); }
.datos dd { margin: 0; }
.mensaje { background: var(--fondo); border-radius: 8px; padding: .7rem .9rem; white-space: pre-wrap; font-size: .93rem; margin-bottom: .8rem; }
.pestanas { display: flex; gap: .3rem; margin-bottom: 1rem; flex-wrap: wrap; }
.pestanas a { padding: .35rem .8rem; border-radius: 999px; color: var(--suave); font-weight: 600; font-size: .88rem; border: 1px solid transparent; }
.pestanas a.activo { background: var(--blanco); border-color: var(--linea); color: var(--tinta); box-shadow: var(--sombra); }
.pestanas a:hover { text-decoration: none; color: var(--tinta); }
.pestanas-mini { margin: 0 0 0 auto; }

/* Etiquetas */
.codigo { font-family: "Roboto Mono", ui-monospace, "Cascadia Mono", Consolas, monospace; font-size: .8rem; font-weight: 700; color: var(--azul-osc); background: var(--azul-claro); border-radius: 5px; padding: .08rem .38rem; white-space: nowrap; }
.codigo-grande { font-size: 1rem; vertical-align: middle; }
.etiqueta { display: inline-block; font-size: .74rem; font-weight: 700; border-radius: 999px; padding: .12rem .55rem; background: var(--fondo); color: var(--suave); white-space: nowrap; }
.etapa-nuevo { background: #eef2f7; color: #475467; }
.etapa-contactado, .est-recibida, .est-borrador { background: var(--azul-claro); color: var(--azul-osc); }
.etapa-cotizado, .est-en-revision, .est-enviada { background: var(--violeta-claro); color: var(--violeta); }
.etapa-negociacion, .est-en-servicio, .est-nuevo { background: var(--ambar-claro); color: var(--ambar); }
.etapa-ganada, .est-resuelta, .est-aceptada, .est-convertido { background: var(--verde-claro); color: var(--verde); }
.etapa-perdida, .est-rechazada, .est-urgente, .est-descartado, .est-inactiva { background: var(--rojo-claro); color: var(--rojo); }
.dias-alerta { font-size: .74rem; font-weight: 700; color: var(--rojo); background: var(--rojo-claro); border-radius: 999px; padding: .1rem .5rem; white-space: nowrap; }

/* Inicio */
.kpis { display: grid; grid-template-columns: repeat(5, 1fr); gap: .8rem; margin-bottom: 1rem; }
.kpi { background: var(--blanco); border: 1px solid var(--linea); border-radius: var(--radio); padding: .9rem 1rem; display: flex; flex-direction: column; gap: .15rem; color: var(--suave); font-size: .84rem; box-shadow: var(--sombra); }
a.kpi:hover { text-decoration: none; border-color: #c4ccd8; }
.kpi-n { font-family: var(--titulos); font-size: 1.55rem; font-weight: 700; color: var(--pizarra); }
.kpi-alerta { border-color: #f3c9a0; background: #fffaf3; }
.kpi-alerta .kpi-n { color: var(--ambar); }
.embudo { display: flex; flex-direction: column; gap: .45rem; }
.embudo-fila { display: grid; grid-template-columns: 8rem 1fr 2.5rem 8.5rem; align-items: center; gap: .8rem; color: var(--tinta); }
.embudo-fila:hover { text-decoration: none; }
.embudo-barra { height: 10px; background: var(--fondo); border-radius: 999px; overflow: hidden; }
.embudo-barra span { display: block; height: 100%; background: var(--azul); border-radius: 999px; }
.embudo-n { text-align: right; font-weight: 700; }
.embudo-monto { text-align: right; color: var(--suave); font-size: .88rem; }

/* Tablero */
.ayuda-tablero { font-size: .85rem; margin-top: -.4rem; }
.tablero { display: grid; grid-template-columns: repeat(6, minmax(185px, 1fr)); gap: .8rem; overflow-x: auto; padding-bottom: 1rem; align-items: start; }
.columna { background: #E8EDF0; border-radius: var(--radio); padding: .6rem; min-height: 200px; transition: background .15s; }
.columna.sobre { background: var(--azul-claro); outline: 2px dashed var(--azul); }
.columna header { display: flex; justify-content: space-between; align-items: baseline; font-weight: 700; font-size: .88rem; padding: .2rem .3rem .6rem; gap: .4rem; }
.columna header .suave { font-weight: 500; font-size: .78rem; }
.col-ganada { background: #e9f6f0; } .col-perdida { background: #fbefee; }
.tarjetas { display: flex; flex-direction: column; gap: .5rem; }
.tarjeta-op { background: var(--blanco); border: 1px solid var(--linea); border-radius: 8px; padding: .6rem .7rem; display: flex; flex-direction: column; gap: .2rem; color: var(--tinta); box-shadow: var(--sombra); cursor: grab; font-size: .9rem; }
.tarjeta-op:hover { text-decoration: none; border-color: #b9c6da; }
.tarjeta-op .codigo { align-self: flex-start; }
.tarjeta-op.arrastrando { opacity: .5; }
.pie-op { display: flex; justify-content: space-between; align-items: center; font-size: .82rem; font-weight: 600; margin-top: .2rem; }
.pie-op > span:last-child { display: flex; gap: .3rem; align-items: center; }

/* Pasos (etapas / estados) */
.etapas-barra { padding: .7rem; }
.pasos { display: flex; gap: .35rem; flex-wrap: wrap; }
.paso { flex: 1; min-width: 6.5rem; border: 1px solid var(--linea); background: var(--fondo); border-radius: 8px; padding: .5rem; font: inherit; font-weight: 600; font-size: .85rem; color: var(--suave); cursor: pointer; }
.paso:hover:not([disabled]) { border-color: var(--azul); color: var(--azul); }
.paso-actual { background: var(--azul); border-color: var(--azul); color: #fff; cursor: default; }
.paso-actual.paso-ganada { background: var(--verde); border-color: var(--verde); }
.paso-actual.paso-perdida { background: var(--rojo); border-color: var(--rojo); }

/* Gestiones */
.nueva-gestion { display: grid; grid-template-columns: 9rem 1fr auto; gap: .6rem; align-items: start; margin-bottom: 1rem; }
.linea-tiempo { list-style: none; margin: 0; padding: 0 0 0 .9rem; border-left: 2px solid var(--linea); }
.linea-tiempo li { position: relative; padding: 0 0 .9rem .6rem; }
.linea-tiempo li::before { content: ""; position: absolute; left: -1.28rem; top: .35rem; width: 10px; height: 10px; border-radius: 50%; background: var(--azul); border: 2px solid var(--blanco); }
.linea-tiempo li.auto::before { background: #b5bfcc; }
.lt-cab { font-size: .82rem; color: var(--suave); }
.lt-cab b { color: var(--tinta); }
.lt-texto { white-space: pre-wrap; font-size: .93rem; }
.linea-tiempo li.auto .lt-texto { color: var(--suave); }

/* Cotización */
.tabla-scroll { overflow-x: auto; margin: -.2rem -.2rem 1rem; }
.tabla-items { min-width: 760px; }
.tabla-items td { padding: .3rem .25rem; border-bottom: 0; vertical-align: middle; }
.tabla-items th { padding: .45rem .25rem; }
.tabla-items input { padding: .4rem .5rem; }
.tabla-items input.num { text-align: right; }
.tabla-items .total-item { font-weight: 600; white-space: nowrap; padding-right: .5rem; }
.tabla-items tfoot .totales td { border-top: 0; padding: .25rem .5rem; color: var(--suave); }
.tabla-items tfoot .total td { color: var(--tinta); font-weight: 700; font-size: 1.05rem; border-top: 2px solid var(--azul); }
.btn-quitar { border: 0; background: none; color: var(--suave); font-size: 1.3rem; cursor: pointer; line-height: 1; padding: .2rem .4rem; }
.btn-quitar:hover { color: var(--rojo); }

@media (max-width: 700px) {
  .tabla-items { min-width: 0; }
  .tabla-items thead { display: none; }
  .tabla-items tbody tr { display: grid; grid-template-columns: 1fr 1fr 1fr auto; gap: .35rem; padding: .6rem 0; border-bottom: 1px solid var(--linea); }
  .tabla-items tbody td { padding: 0; }
  .tabla-items tbody td:nth-child(1) { grid-row: 1; grid-column: 1 / 4; }
  .tabla-items tbody td:nth-child(7) { grid-row: 1; grid-column: 4; }
  .tabla-items tbody td:nth-child(2) { grid-row: 2; grid-column: 1 / -1; }
  .tabla-items tbody td:nth-child(3) { grid-row: 3; grid-column: 1; }
  .tabla-items tbody td:nth-child(4) { grid-row: 3; grid-column: 2; }
  .tabla-items tbody td:nth-child(5) { grid-row: 3; grid-column: 3; }
  .tabla-items tbody td:nth-child(6) { grid-row: 4; grid-column: 1 / -1; text-align: right; }
  .tabla-items tfoot tr { display: flex; justify-content: space-between; }
  .tabla-items tfoot td:empty { display: none; }
}

/* Acceso (fondo pizarra como la portada de conectatodo.cl) */
.acceso { min-height: 100vh; display: flex; align-items: center; justify-content: center; padding: 1.5rem; background: radial-gradient(1200px 600px at 20% 0%, #3E4A55 0%, var(--pizarra) 45%, var(--pizarra-osc) 100%); }
.acceso-caja { width: 100%; max-width: 390px; background: var(--blanco); border-radius: 12px; padding: 1.8rem 1.8rem 1.3rem; box-shadow: 0 14px 34px rgba(30, 37, 44, .35); }
.acceso-marca { display: flex; flex-direction: column; align-items: center; gap: .55rem; margin-bottom: 1.3rem; text-align: center; }
.acceso-marca img { width: 190px; height: auto; }
.acceso-marca span { font-family: var(--titulos); font-weight: 700; color: var(--pizarra); letter-spacing: .04em; font-size: .95rem; }
.acceso-caja h1 { font-size: 1.3rem; }
.acceso-caja .check { margin: 0 0 1rem; white-space: normal; }
.input-codigo { font-size: 1.5rem; letter-spacing: .5rem; text-align: center; font-weight: 700; }
.pie { text-align: center; color: var(--suave); font-size: .8rem; margin-top: 1.4rem; }

/* Logo de la cuenta en Configuración */
.logo-config { display: grid; grid-template-columns: 220px 1fr; gap: 1.2rem; align-items: center; }
.logo-vista { height: 110px; border: 1px dashed var(--linea); border-radius: 8px; display: flex; align-items: center; justify-content: center; padding: .8rem; background: repeating-conic-gradient(#F4F6F8 0% 25%, #fff 0% 50%) 50% / 16px 16px; }
.logo-vista img { max-height: 100%; max-width: 100%; object-fit: contain; }

/* Importación */
.resumen-import { display: flex; gap: .6rem; flex-wrap: wrap; margin-bottom: 1rem; }
.resumen-import .kpi { min-width: 9rem; }
.fila-error td { background: #FFF7F6; }
.avisos-fila { margin: .2rem 0 0; padding-left: 1rem; font-size: .82rem; }
.avisos-fila li.err { color: var(--rojo); }
.avisos-fila li.av { color: var(--ambar); }
.pasos-import { margin: .2rem 0 1rem; padding-left: 1.2rem; }
.pasos-import li { margin-bottom: .35rem; }
.chips { display: flex; gap: .3rem; flex-wrap: wrap; }
.chip { font-size: .72rem; font-weight: 500; border-radius: 999px; padding: .08rem .5rem; background: var(--azul-claro); color: var(--azul-osc); white-space: nowrap; }
.opciones-multi { display: flex; gap: .4rem .9rem; flex-wrap: wrap; padding: .3rem 0; }
.est-prospecto { background: var(--ambar-claro); color: var(--ambar); }
.est-activo { background: var(--verde-claro); color: var(--verde); }
.est-inactivo, .est-archivada { background: #ECEFF2; color: var(--suave); }
.principal { color: var(--naranjo); font-size: .8rem; font-weight: 700; }

/* Celular */
@media (max-width: 860px) {
  .kpis { grid-template-columns: repeat(2, 1fr); }
  .dos-col { grid-template-columns: 1fr; }
  .grilla-campos { grid-template-columns: 1fr; }
  .obligatorios { grid-template-columns: 1fr; }
  .embudo-fila { grid-template-columns: 6.8rem 1fr 2rem; }
  .embudo-monto { display: none; }
  .ocultar-movil { display: none; }
  .nueva-gestion { grid-template-columns: 1fr; }
  .datos { grid-template-columns: 7rem 1fr; }
}
@media (max-width: 640px) {
  :root { font-size: 15px; }
  .barra { flex-wrap: wrap; gap: .5rem; padding: .5rem .8rem; }
  .buscador { order: 5; flex-basis: 100%; max-width: none; }
  .marca-texto { display: none; }
  .cuenta { max-width: 46vw; border-left: 0; }
  .cuenta-logo { height: 28px; max-width: 110px; }
  .cuenta-logo + .cuenta-nombre { display: none; }
  .logo-config { grid-template-columns: 1fr; }
  .contenido { padding: 1rem .8rem 3rem; }
  .cabecera .botones { width: 100%; }
  .tablero { grid-template-columns: repeat(6, 82vw); scroll-snap-type: x mandatory; }
  .columna { scroll-snap-align: start; }
  .tarjeta-op { cursor: pointer; }
  .ayuda-tablero { display: none; }
  .pestanas-mini { margin: 0; }
  .filtros input[type=search] { max-width: none; flex: 1 1 100%; }
  .filtros select { flex: 1 1 40%; min-width: 0; }
}

/* Asistente de importación */
.entendi { background: var(--azul-claro); color: var(--pizarra); border-left: 3px solid var(--azul); white-space: normal; }
.tabla-plan select { min-width: 13rem; }
.tabla-plan td { vertical-align: middle; }
.col-ignorada td { background: #FAFBFC; }
.col-ignorada td b { color: var(--suave); font-weight: 500; }
.ejemplo { display: inline-block; background: var(--fondo); border: 1px solid var(--linea); border-radius: 4px; padding: .05rem .35rem; margin: .1rem .2rem .1rem 0; color: var(--tinta); max-width: 16rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; vertical-align: middle; }
@media (max-width: 640px) { .tabla-plan select { min-width: 0; width: 100%; } }
input.celda { width: 6.5rem; text-transform: uppercase; font-family: "Roboto Mono", ui-monospace, monospace; }
.grilla-items { grid-template-columns: repeat(3, minmax(0, 1fr)); }
@media (max-width: 860px) { .grilla-items { grid-template-columns: 1fr 1fr; } }

/* Color de la cuenta y condiciones */
.color-cuenta { display: flex; align-items: center; gap: .6rem; flex-wrap: wrap; margin: .8rem 0 .3rem; }
.color-cuenta input[type=color] { width: 3.2rem; height: 2.2rem; padding: .15rem; cursor: pointer; }
.muestra { display: inline-block; width: .9rem; height: .9rem; border-radius: 3px; vertical-align: middle; border: 1px solid rgba(0,0,0,.15); margin-right: .25rem; }
.btn-enlace { border: 0; background: none; padding: 0; color: var(--azul); font: inherit; font-weight: 500; cursor: pointer; text-decoration: underline; }
