/* ADHENNA · Control — estilos propios. La base (colores, botones, tarjetas, barra) es app.css, el mismo del Captador.
   Regla del Captador: no reutilizar nombres de clases globales (.aviso, .vacio…) para otra cosa. */

.grupos.tres { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.grupo .g-n { font-size: 24px; white-space: nowrap; }
.tono-alerta { --tono: #D93A3A; --tono-suave: #FDE7E7; }
#quien { cursor: default; }

/* Hoy */
.hoy-kpis { grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 12px; }
.hoy-kpis .kpi { padding: 14px 16px; }
.hoy-kpis .kpi b { font-size: 22px; font-variant-numeric: tabular-nums; }
.hoy-kpis .kpi.k-verde { border-top-color: var(--verde); }
.hoy-kpis .kpi.k-rojo { border-top-color: var(--rojo); }
.hoy-kpis .kpi.k-ambar { border-top-color: var(--amarillo-vivo); }
.hoy-grid .tarjeta { margin-top: 0; }
.fila-mini.quieta { cursor: default; }
.fila-mini.quieta:hover { background: none; }
.fm-der > b { font-variant-numeric: tabular-nums; font-size: 14px; color: var(--marino); }
.tarjeta .mas { margin: 10px 0 0; }
.nota-ambar { display: flex; gap: 10px; align-items: flex-start; padding: 11px 14px; border-radius: 12px;
  background: var(--amarillo-suave); color: #7A4F0C; border: 1px solid #F3D48A; font-size: 13.5px; }
.nota-ambar > .ic { color: var(--amarillo-vivo); margin-top: 1px; }

@media (max-width: 860px) { .grupos.tres { grid-template-columns: 1fr; } }
.hoy-grid { align-items: start; }

/* Caja */
.tono-diezmo { --tono: #B7791F; --tono-suave: #FFF3D6; }
.mes-sel { margin-left: auto; display: flex; flex-direction: row; align-items: center; gap: 8px; }
.mes-sel select { width: auto; font-weight: 600; }
.anotar { margin-top: 0; border-top: 3px solid var(--azul); }
.anotar-cab { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; justify-content: space-between; }
.anotar-cab h3 { margin: 0; font-size: 16px; }
.anotar-cab .segmentado { box-shadow: none; background: var(--fondo); flex-wrap: wrap; }
.anotar-cab .segmentado button { display: inline-flex; align-items: center; gap: 6px; }
.anotar-cab .segmentado button .ic { width: 15px; height: 15px; }
.anotar-cab .segmentado button.activa { background: var(--azul); color: #fff; box-shadow: 0 3px 10px rgba(0,91,255,.3); }
.anotar-ayuda { margin: 8px 0 12px; }
.anotar-campos { display: grid; grid-template-columns: 190px minmax(200px, 1fr) 160px 210px auto; gap: 12px; align-items: end; }
.anotar-campos.es-diezmo { grid-template-columns: 190px minmax(200px, 320px) 160px auto; justify-content: start; }
.anotar-campos:not(.es-diezmo):not(:has(.c-cat)) { grid-template-columns: 190px minmax(200px, 1fr) 160px auto; }
.anotar-campos .c-btn { padding: 10px 22px; }
.campo > .peso { position: absolute; left: 12px; top: 50%; transform: translateY(-50%); color: var(--sutil); font-weight: 700; pointer-events: none; }
.campo > .peso + input { padding-left: 26px; }
.c-monto input { font-size: 19px; font-weight: 700; font-variant-numeric: tabular-nums; color: var(--marino); padding-top: 7px; padding-bottom: 7px; }
.anotar-iva { margin-top: 12px; font-size: 13px; color: var(--sutil); white-space: normal; }
input.mal, select.mal { border-color: var(--rojo); box-shadow: 0 0 0 3px rgba(217,58,58,.15); }
#caja-error { margin: 10px 0 0; font-weight: 600; }

.caja-grid { display: grid; grid-template-columns: minmax(0, 1.7fr) minmax(280px, 1fr); gap: 16px; align-items: start; }
.caja-grid .tarjeta:first-child { margin-top: 0; }
.lista-cab { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; justify-content: space-between; margin-bottom: 12px; }
.lista-cab h3 { margin: 0; }
.chips-caja { display: flex; gap: 6px; flex-wrap: wrap; }
.chips-caja .chip-f { padding: 4px 11px; border: 1px solid var(--borde); border-radius: 999px; background: #fff; color: var(--texto); }
.chips-caja .chip-f.activa { background: var(--marino); color: #fff; border-color: var(--marino); }
.caja-tabla td { vertical-align: middle; }
.caja-tabla .c-f { white-space: nowrap; color: var(--sutil); font-weight: 600; }
.caja-tabla .monto { font-variant-numeric: tabular-nums; font-weight: 700; }
.caja-tabla .monto.ok { color: var(--verde); }
.caja-tabla .c-acc { width: 30px; color: #B6C0D0; }
.caja-tabla tr.clic:hover .c-acc { color: var(--azul); }
.barra-cat { margin-bottom: 11px; }
.barra-cat > div { display: flex; justify-content: space-between; gap: 10px; font-size: 13px; margin-bottom: 4px; }
.barra-cat b { font-variant-numeric: tabular-nums; color: var(--marino); }
.barra-cat i { display: block; height: 7px; border-radius: 9px; background: var(--grad-azul); }
.diezmo-total { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; padding: 12px 14px; border-radius: 12px;
  background: var(--verde-suave); color: var(--verde); margin-bottom: 12px; font-weight: 600; }
.diezmo-total.pend { background: var(--amarillo-suave); color: #7A4F0C; }
.diezmo-total b { font-size: 21px; font-variant-numeric: tabular-nums; }
#caja-ir-diezmo { margin-top: 12px; }

/* ventana de edición (dialog nativo) */
dialog { border: 0; border-radius: 16px; padding: 0; box-shadow: var(--sombra-alta); width: min(560px, calc(100% - 28px)); color: var(--texto); }
dialog::backdrop { background: rgba(7, 26, 69, .45); }
.dlg-caja { padding: 20px 22px; display: grid; gap: 14px; }
.dlg-caja h3 { display: flex; align-items: center; gap: 10px; margin: 0; color: var(--marino); font-size: 16px; }
.dlg-caja p { margin: 0; }
.dlg-campos { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.dlg-campos .ancho { grid-column: 1 / -1; }
.dlg-pie { display: flex; gap: 8px; align-items: center; }
.dlg-pie > span { flex: 1; }
.dlg-caja .btn.texto { justify-self: start; padding-left: 0; color: var(--amarillo); }
.btn.confirmar { background: var(--rojo); color: #fff; border-color: var(--rojo); }
.hoy-anotar { margin-left: auto; }

@media (max-width: 1100px) { .anotar-campos, .anotar-campos.es-diezmo, .anotar-campos:not(.es-diezmo):not(:has(.c-cat)) { grid-template-columns: 1fr 1fr; } .anotar-campos .c-desc { grid-column: 1 / -1; } .caja-grid { grid-template-columns: 1fr; } }
@media (max-width: 560px) { .anotar-campos, .anotar-campos.es-diezmo, .anotar-campos:not(.es-diezmo):not(:has(.c-cat)) { grid-template-columns: 1fr; } .dlg-campos { grid-template-columns: 1fr; } .mes-sel { margin-left: 0; } }

/* Cotizaciones */
.grupos.tres .grupo .g-n { font-size: 26px; }
.tabla .c-fecha { white-space: nowrap; color: var(--sutil); }
.vuelta { transform: rotate(180deg); }
.cot-cab > div { flex: 1; }
.cot-cab p { display: flex; align-items: center; gap: 6px; }
.pastilla-sucio { display: inline-flex; align-items: center; gap: 6px; padding: 5px 12px; border-radius: 999px; font-size: 12.5px; font-weight: 700;
  background: var(--amarillo-suave); color: #7A4F0C; border: 1px solid #F3D48A; }
.pastilla-sucio .ic { width: 14px; height: 14px; color: var(--amarillo-vivo); }
.cot-grid { display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: 16px; align-items: start; }
.cot-izq { display: grid; gap: 16px; min-width: 0; }
.cot-izq .tarjeta, .cot-der .tarjeta { margin-top: 0; }
.cot-campos { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.cot-campos.tres { grid-template-columns: 1fr 1fr 1fr; align-items: end; }
.cot-campos .ancho { grid-column: 1 / -1; }
.cot-campos textarea, .cot-item textarea { min-height: 0; line-height: 1.45; }
.fila-cliente { display: flex; gap: 8px; }
.fila-cliente select { flex: 1; min-width: 0; }
.cot-iva { padding-bottom: 9px; }
.cot-item { border: 1px solid var(--borde); border-radius: 12px; padding: 12px; margin-bottom: 12px; display: grid; gap: 10px; background: #FBFCFE; }
.cot-item:focus-within { border-color: var(--azul-borde); background: #fff; box-shadow: 0 2px 10px rgba(0,91,255,.08); }
.ci-cab { display: flex; gap: 8px; align-items: center; }
.ci-n { display: inline-grid; place-items: center; width: 26px; height: 26px; border-radius: 8px; background: var(--azul-suave); color: var(--azul); font-weight: 800; font-size: 12.5px; flex: none; }
.ci-titulo { font-weight: 700; color: var(--marino); font-size: 14.5px; }
.ci-fila { display: grid; grid-template-columns: 90px minmax(140px, 1.3fr) 110px minmax(150px, 1.2fr) minmax(110px, 1fr); gap: 10px; align-items: end; }
.ci-fila label { font-size: 12px; }
.ci-sub { text-align: right; display: grid; gap: 3px; padding-bottom: 6px; }
.ci-sub span { font-size: 12px; color: var(--sutil); font-weight: 600; }
.ci-sub b { font-size: 15.5px; color: var(--marino); font-variant-numeric: tabular-nums; }
input.plata { font-variant-numeric: tabular-nums; font-weight: 600; }
.plegable-cot > summary { cursor: pointer; display: flex; align-items: center; gap: 10px; font-weight: 700; color: var(--marino); list-style: none; font-size: 15px; }
.plegable-cot > summary::-webkit-details-marker { display: none; }
.plegable-cot > summary::after { content: "Mostrar"; margin-left: auto; font-size: 12.5px; color: var(--azul); font-weight: 600; }
.plegable-cot[open] > summary::after { content: "Ocultar"; }
.plegable-cot[open] > summary { margin-bottom: 14px; }
.cot-der { position: sticky; top: 12px; }
.cot-tot { width: 100%; border-collapse: collapse; font-size: 14px; }
.cot-tot td { padding: 6px 0; border-bottom: 1px solid #EDF1F6; font-variant-numeric: tabular-nums; }
.cot-tot tr.total td { border: 0; padding: 10px 12px; background: var(--azul); color: #fff; font-weight: 800; font-size: 17px; }
.cot-tot tr.total td:first-child { border-radius: 10px 0 0 10px; } .cot-tot tr.total td:last-child { border-radius: 0 10px 10px 0; }
.cot-plan { margin: 12px 0 8px; display: grid; gap: 4px; }
.cot-plan > span { font-size: 11.5px; text-transform: uppercase; letter-spacing: .05em; color: var(--azul); font-weight: 700; }
.cot-plan > div { display: flex; justify-content: space-between; gap: 10px; font-size: 13.5px; }
.cot-plan i { font-style: normal; color: var(--sutil); } .cot-plan b { font-variant-numeric: tabular-nums; color: var(--marino); }
.cot-acciones { display: grid; gap: 8px; margin-top: 14px; }
.cot-acciones .btn { justify-content: center; }
.btn.ok-borde { border-color: #9FDDC4; color: var(--verde); }
.cot-mas { display: flex; flex-wrap: wrap; justify-content: center; gap: 2px 6px; border-top: 1px solid #EDF1F6; padding-top: 8px; }
.cot-mas .btn { padding: 6px 8px; font-size: 13px; }
#cot-error { margin: 10px 0 0; font-weight: 600; }
dialog.dlg-pdf { width: min(980px, calc(100% - 24px)); height: calc(100% - 40px); max-height: none; overflow: hidden; }
dialog.dlg-pdf[open] { display: flex; flex-direction: column; }
.pdf-barra { display: flex; gap: 8px; align-items: center; padding: 10px 14px; border-bottom: 1px solid var(--borde); }
.pdf-barra > span { flex: 1; } .pdf-barra a.btn:hover { text-decoration: none; }
dialog.dlg-pdf iframe { flex: 1; width: 100%; border: 0; background: #525659; }
.fila-mini.abre { cursor: pointer; } .fila-mini.abre:hover { background: #F7F9FD; }

@media (max-width: 1100px) { .cot-grid { grid-template-columns: 1fr; } .cot-der { position: static; } }
@media (max-width: 720px) { .ci-fila { grid-template-columns: 1fr 1fr; } .ci-sub { grid-column: 1 / -1; text-align: left; } .cot-campos, .cot-campos.tres { grid-template-columns: 1fr; } }

/* ---------- pasos 4 a 6: ventas, clientes, agenda y ajustes ---------- */
dialog.dlg-ancho { width: min(760px, calc(100% - 28px)); }
dialog { max-height: calc(100% - 32px); overflow-y: auto; }
.dlg-caja h3 .h3-der { margin-left: auto; }
.dlg-caja h4 { margin: 4px 0 -6px; font-size: 12.5px; text-transform: uppercase; letter-spacing: .05em; color: var(--sutil); }
.dlg-caja table.mini tr.clic { cursor: pointer; }
.dlg-caja table.mini tr.clic:hover td { background: #F4F8FF; }
.dlg-caja .dlg-pie { flex-wrap: wrap; }
.dlg-caja .dlg-pie .btn.texto { margin-top: 0; color: var(--sutil); padding-left: 8px; }
.dlg-caja .dlg-pie .btn.texto.peligro, .btn.confirmar { color: var(--rojo); }
.btn.confirmar { border-color: var(--rojo); background: #FFF3F3; }
.ven-titulo { line-height: 1.5; }
.dlg-venta .kpis.chicos { margin-top: 0; }
.pago-form { display: grid; gap: 10px; padding: 14px 16px; border-radius: 14px; background: #F4F8FF; border: 1px solid #D6E4FF; }
.pago-form h4 { margin: 0; color: var(--azul); }
.pago-campos { display: grid; grid-template-columns: 1.2fr 1fr 1fr; gap: 10px; align-items: end; }
.pago-campos .ancho { grid-column: span 2; }
.pago-campos .btn { justify-content: center; padding: 10px 14px; }
input.fecha-cuota { padding: 4px 6px; font-size: 12.5px; width: 136px; }
.nota-azul { display: flex; gap: 10px; align-items: flex-start; padding: 10px 14px; border-radius: 12px; background: #F0F5FF; border: 1px solid #D6E4FF; color: var(--marino); font-size: 13px; }
.nota-azul .ic { width: 17px; height: 17px; color: var(--azul); flex: none; margin-top: 1px; }
.avance { display: block; height: 6px; border-radius: 9px; background: #E6ECF5; overflow: hidden; margin-top: 6px; min-width: 90px; }
.avance > i { display: block; height: 100%; background: var(--grad-azul); border-radius: 9px; }
.tabla .c-acc { width: 30px; color: #B6C0D0; }
.ficha-meta { display: flex; flex-wrap: wrap; gap: 6px 16px; }
.apagado { opacity: .5; }
.nowrap { white-space: nowrap; }

/* agenda */
.age-campos { display: grid; grid-template-columns: minmax(220px, 1fr) 150px 150px 110px 200px auto; gap: 12px; align-items: end; margin-top: 12px; }
.age-campos .c-btn { padding: 10px 22px; }
.tarjeta.dia h3 { display: flex; align-items: center; gap: 10px; margin: 0 0 6px; font-size: 15px; color: var(--marino); }
.tarjeta.dia.atrasado { border-top: 3px solid var(--amarillo-vivo); }
.tarea { display: flex; align-items: flex-start; gap: 12px; padding: 11px 4px; border-top: 1px solid #EDF1F6; }
.tarea-txt { flex: 1; cursor: pointer; min-width: 0; }
.tarea-txt:hover b { color: var(--azul); }
.tarea-txt .meta { margin-top: 3px; }
.tarea-hora { text-align: right; display: grid; font-variant-numeric: tabular-nums; color: var(--marino); }
.tarea-hecha { width: 30px; height: 30px; border-radius: 50%; border: 2px solid #C5D0E0; background: #fff; color: transparent; display: grid; place-items: center; cursor: pointer; flex: none; padding: 0; }
.tarea-hecha .ic { width: 16px; height: 16px; }
.tarea-hecha:hover { border-color: var(--verde); color: var(--verde); background: var(--verde-suave); }
.tarea.cerrada b { color: var(--sutil); font-weight: 600; }
.tarea.cerrada .ic-caja { width: 30px; height: 30px; background: #EEF2F7; color: var(--sutil); box-shadow: none; }

/* ajustes */
details.aju { margin-top: 12px; }
details.aju > summary > span { display: grid; }
details.aju > summary small { font-weight: 500; color: var(--sutil); font-size: 12.5px; }
details.aju[open] > summary ~ * { margin-top: 12px; }
.aju-form { display: grid; gap: 12px; }
.aju-cuatro { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; align-items: end; }
.aju-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.chip-cat { border: 1px solid #D5DEEC; background: #fff; border-radius: 999px; padding: 6px 12px; font: inherit; font-size: 13px; cursor: pointer; color: var(--marino); display: inline-flex; gap: 8px; align-items: center; }
.chip-cat:hover { border-color: var(--azul); color: var(--azul); }
.chip-cat small { background: #EEF2F7; border-radius: 999px; padding: 1px 7px; color: var(--sutil); font-size: 11.5px; }
.aju-linea { display: flex; gap: 8px; max-width: 420px; }
.aju-linea input { flex: 1; }
details.aju table.mini tr.clic { cursor: pointer; }
details.aju table.mini tr.clic:hover td { background: #F4F8FF; }
details.aju table.mini .ic { width: 14px; height: 14px; vertical-align: -2px; color: var(--azul); }
.aju-version { text-align: center; margin-top: 18px; }
#quien:hover { background: rgba(255,255,255,.2); }
@media (max-width: 1100px) { .age-campos { grid-template-columns: 1fr 1fr; } .age-campos .c-desc { grid-column: 1 / -1; } .aju-cuatro { grid-template-columns: 1fr 1fr; } }
@media (max-width: 560px) { .age-campos, .pago-campos, .aju-cuatro { grid-template-columns: 1fr; } .pago-campos .ancho { grid-column: auto; } }
.tarjeta > .vacio h3 { display: block; text-align: center; margin: 0 0 4px; }

/* importar cartola */
dialog.dlg-cartola { width: min(1060px, calc(100% - 28px)); }
.cart-tabla { max-height: 52vh; overflow: auto; border: 1px solid #E3E9F2; border-radius: 12px; }
table.cart { margin: 0; }
table.cart th { position: sticky; top: 0; background: #F4F7FB; z-index: 1; text-align: left; font-size: 11.5px; text-transform: uppercase; letter-spacing: .05em; color: var(--sutil); padding: 8px 10px; }
table.cart td { vertical-align: top; padding: 8px 10px; }
table.cart input, table.cart select { padding: 6px 8px; font-size: 13px; width: 100%; }
table.cart .cart-monto { width: 110px; text-align: right; font-variant-numeric: tabular-nums; }
table.cart tr.cart-fuera td { background: #FAFBFD; }
table.cart tr.cart-fuera input { color: var(--sutil); }
.cart-total { margin: 0; font-size: 13.5px; color: var(--marino); }
.titulo-seccion #caja-cartola { margin-left: auto; }
.titulo-seccion #caja-cartola + .mes-sel { margin-left: 12px; }

/* avisos del banco leídos del correo */
.banco { border-top: 3px solid var(--marino); }
.banco .lista-cab { align-items: center; }
.banco .lista-cab .sutil { margin-left: auto; }
.banco-tabla td { vertical-align: top; }
.banco-tabla .c-f { white-space: nowrap; }
.banco-motivo { margin-top: 4px; display: flex; gap: 6px; align-items: center; flex-wrap: wrap; }
.banco-dec { display: grid; gap: 6px; min-width: 240px; }
.banco-dec select, .banco-dec input { padding: 6px 8px; font-size: 13px; width: 100%; }
.banco-dec .banco-rec { font-size: 12px; color: var(--sutil); display: flex; gap: 6px; align-items: center; white-space: normal; }
.banco-dec .banco-rec input { width: auto; }
.banco-recientes { margin: 10px 0 0; padding: 0; list-style: none; font-size: 13px; }
.banco-recientes li { display: flex; gap: 10px; padding: 5px 0; border-top: 1px solid #EEF2F7; }
.banco-recientes li b { margin-left: auto; font-variant-numeric: tabular-nums; }
.banco details { margin-top: 10px; }
.banco summary { cursor: pointer; font-size: 13px; color: var(--sutil); }
.banco .nota-ambar, .banco .nota-azul { margin: 10px 0; }
