/* =============================================================================
   AUGE · WEI BEI — LA CAPA COMÚN «EDICIÓN PRIVADA» (fase 64.2)
   -----------------------------------------------------------------------------
   La dirección de diseño que Farid aprobó el 20-oct-2026, después de la
   reunión con un inversionista: tinta, marfil y oro viejo; Playfair Display
   ligera en títulos y cifras; Plus Jakarta Sans en versalitas espaciadas para
   los rótulos; filetes finos en lugar de bordes gruesos de color; botones,
   fichas y pestañas rectos; campos de línea. La puerta de la sala la estrenó
   en la fase 64.1.

   UNA SOLA CAPA PARA TODAS LAS PANTALLAS. Cada pantalla la carga la última,
   después de sus propias hojas —también después de la que algunas llevan
   dentro de la página—: así las viejas y las nuevas hablan igual sin
   reescribir cada hoja. Por eso aquí NO hay medidas de diseño —anchos,
   rejillas, márgenes, tamaños que cada pantalla ajustó para que sus cifras
   quepan—: solo el tratamiento —color, filete, peso, esquina, sombra—. Lo que
   una pantalla resolvió con una medida sigue siendo suyo.

   Cinco piezas, en este orden:
     1. La paleta: los nombres de color que ya usan las hojas de cada pantalla
        (--auge-*, --pat-*, --man-*…) toman los valores de la edición. Un solo
        cambio aquí recolorea mil quinientos usos.
     2. La tipografía: Playfair en peso 400, con números rectos.
     3. Las piezas compartidas: la barra, los encabezados, las tarjetas, los
        paneles, los botones, las pestañas, los modales, los campos, las notas
        y las tablas.
     4. La geometría: cada esquina redondeada de cada hoja —la lista la
        comprueba pruebas/erp-edicion.js del backend: una esquina nueva que no
        esté aquí la hace fallar—.
     5. El texto que se lee (fase 64.5): el oro, sobre el papel o el marfil,
        no alcanza el contraste que pide la accesibilidad para un texto
        pequeño —2,88 a 1, y se piden 4,5—. Donde el oro es texto sobre un
        fondo claro, el oro hondo (5,38 sobre el papel, 4,81 sobre el marfil);
        el oro sigue siendo el de los filetes, las rayas, los íconos que
        acompañan a su texto y todo lo que va sobre la tinta. Y los grises y
        los tonos que el recorrido de cada pantalla encontró por debajo, con
        el tenue o el texto de la edición. Lo comprueba pruebas/recorrido.js
        del backend: en cada pantalla, pestaña y diálogo, en los tres idiomas
        y en tres anchos, ningún texto por debajo de 4,5 a 1.

   Lo que se deja como está, a propósito: el interruptor de Flujo de Caja y la
   pista del deslizador del Laboratorio (son controles, y su forma es la
   señal), los círculos (avatares, insignias numeradas) y lo que se imprime
   —el certificado, la liquidación, el informe para la declaración—, que tiene
   su propia hoja.

   El `!important` no se usa: la capa gana por llegar la última, con el mismo
   selector que la hoja que corrige.
   ============================================================================= */

/* -----------------------------------------------------------------------------
   1 · LA PALETA
   -------------------------------------------------------------------------- */
:root {
    /* Los de la edición */
    --ed-tinta: #0C0B0A;
    --ed-marfil: #F5F2EC;
    --ed-papel: #FFFFFF;
    --ed-papel-tibio: #FBF9F4;
    --ed-oro: #B8925A;
    --ed-oro-hondo: #84653A;
    --ed-champan: #D9C4A0;
    --ed-filete: rgba(132, 101, 58, 0.20);
    --ed-filete-suave: rgba(12, 11, 10, 0.07);
    --ed-borde: #E4DCCF;
    --ed-texto: #5A544B;
    --ed-tenue: #736B60;
    --ed-verde: #2F6B4F;
    --ed-rojo: #8E2A2A;
    --ed-ambar: #9A5B1E;
    --ed-azul: #24405F;
    --ed-sombra: 0 1px 0 rgba(12, 11, 10, 0.03), 0 28px 50px -38px rgba(12, 11, 10, 0.35);
    --ed-sombra-alta: 0 1px 0 rgba(12, 11, 10, 0.03), 0 34px 60px -36px rgba(12, 11, 10, 0.45);

    /* Los de siempre, con los valores de la edición */
    --auge-negro: #0C0B0A;
    --auge-gris-fondo: #FBF9F4;
    --auge-gris-borde: #E4DCCF;
    --auge-gris-texto: #5A544B;
    --auge-oro: #B8925A;
    --auge-verde: #2F6B4F;
    --auge-rojo: #8E2A2A;
    --auge-amarillo: #9A5B1E;
    --auge-azul: #24405F;
    --auge-azul-oscuro: #172C43;
    --serie-entradas: #2F6B4F;
    --serie-salidas: #A8632A;

    --pat-negro: #0C0B0A;
    --pat-fondo: #FBF9F4;
    --pat-borde: #E4DCCF;
    --pat-texto: #5A544B;
    --pat-oro: #B8925A;
    --pat-verde: #2F6B4F;
    --pat-rojo: #8E2A2A;
    --pat-ambar: #9A5B1E;

    --aura-negro: #0C0B0A;
    --aura-dorado: #B8925A;
    --aura-gris-claro: #FBF9F4;

    --tinta: #0C0B0A;
    --filete: #E4DCCF;
}
/* El Libro de Wei Bei define los suyos en su página, no en la raíz */
.man-pagina {
    --man-oro: #B8925A;
    --man-oro-texto: #84653A;
    --man-negro: #0C0B0A;
    --man-verde: #2F6B4F;
    --man-rojo: #8E2A2A;
    --man-ambar: #9A5B1E;
    --man-fondo: #F5F2EC;
}

/* Sobre tinta —las tres tarjetas negras de Flujo de Caja, que pintan su
   cifra con var(--auge-verde), var(--auge-rojo) o var(--auge-oro)— los tonos
   de la edición no se leen: allí toman sus tonos claros. */
#kpi-ingresos, #kpi-egresos, #kpi-neto { --auge-verde: #8DBFA2; --auge-rojo: #D98B7F; --auge-oro: #D9C4A0; }

body { background-color: var(--ed-marfil); -webkit-font-smoothing: antialiased; }
::selection { background: var(--ed-champan); color: var(--ed-tinta); }

/* -----------------------------------------------------------------------------
   2 · LA TIPOGRAFÍA: Playfair ligera y con números rectos
   -------------------------------------------------------------------------- */
h1.fuente-lujo, h2.fuente-lujo, h3.fuente-lujo, h4.fuente-lujo {
    font-weight: 400; letter-spacing: -0.015em; font-variant-numeric: lining-nums; text-wrap: balance;
}
.titulo-division { font-weight: 400; color: var(--ed-tinta); }
.panel-cabecera h3, .panel-header h2, .historial-header h3, .columna-titulo h3,
.usu-cabecera h3, .emp-cabecera h3, .anul-cabecera h3, .fe-cabecera h3, .usu-permisos-cabecera h4,
.cnt-periodo-titulo, .cnt-seccion > h4, .cnt-aux-cabecera h4, .cnt-cierres-intro h3,
.ctr-editor-resumen h4, .ctr-subtitulo, .imp-resultado h4, .ren-anexo-cabecera h2, .perfil-datos h4,
.modal-box h3, .modal-manual h3, .cert-barra-titulo h3, .pestana-titulo {
    font-weight: 400; letter-spacing: -0.01em;
}
.kpi-cifra, .kpi-card .cifra, .anillo-total, .tx-monto, .tk-total .cifra, .totales-row.neto,
.fac-total-row.neto, .ficha-linea .ficha-monto, .nd-liq-row.total strong, .fe-cifra strong,
.liq-fila.total span:last-child, .cifra.destacada .cifra-valor, .aud-fila.total strong,
.tarjeta.principal .tarjeta-cifra, .usu-reparto strong, .podium-ltv, .kpi-box .valor,
.destacado-cifra, .tabla-financiera .fila-total.destacada td {
    font-weight: 400; font-variant-numeric: lining-nums; letter-spacing: -0.01em;
}

/* -----------------------------------------------------------------------------
   3 · LAS PIEZAS COMPARTIDAS
   -------------------------------------------------------------------------- */

/* La barra: tinta con un filete de oro */
.auge-barra { background: var(--ed-tinta); border-bottom: 1px solid rgba(184, 146, 90, 0.38); box-shadow: none; }

/* El encabezado de cada pantalla: la ceja con su raya de oro y el título
   editorial */
.mando-sello { display: inline-flex; align-items: center; gap: 14px; font-size: 0.66rem; letter-spacing: 0.3em; font-weight: 500; color: var(--ed-oro-hondo); }
.mando-sello::before { content: ""; width: 34px; height: 1px; background: var(--ed-oro); flex: none; }
.mando-titulo h2 { font-weight: 400; letter-spacing: -0.02em; color: var(--ed-tinta); text-wrap: balance; }
.mando-sub { line-height: 1.7; color: var(--ed-texto); }
.mando-sello-tiempo { font-weight: 600; letter-spacing: 0.2em; color: var(--ed-tenue); }
/* La ceja de las pantallas de antes (CRM, Inventario, Bóveda): sin la píldora */
.etiqueta-estado { background-color: transparent; color: var(--ed-oro-hondo); font-weight: 500; letter-spacing: 0.3em; padding-left: 0; padding-right: 0; }

/* Las tarjetas de cifras: papel, filete, una raya corta arriba —de oro, o del
   color de su estado— y la cifra en Playfair ligera */
.kpi {
    position: relative; background: var(--ed-papel);
    border: 1px solid var(--ed-filete); border-top-color: var(--ed-filete);
    box-shadow: var(--ed-sombra);
}
.kpi::before { content: ""; position: absolute; left: 1.8rem; top: -1px; width: 44px; height: 2px; background: var(--ed-oro); }
.kpi.estado-positivo, .kpi.estado-negativo, .kpi.estado-alerta, .kpi.estado-neutro { border-top-color: var(--ed-filete); }
.kpi.estado-positivo::before { background: var(--ed-verde); }
.kpi.estado-negativo::before { background: var(--ed-rojo); }
.kpi.estado-alerta::before { background: var(--ed-ambar); }
.kpi:hover { transform: translateY(-2px); box-shadow: var(--ed-sombra-alta); }
.kpi-rotulo { font-size: 0.62rem; letter-spacing: 0.26em; font-weight: 500; color: var(--ed-oro-hondo); }
.kpi-icono { color: var(--ed-champan); }
.kpi-cifra { color: var(--ed-tinta); }
.kpi.estado-positivo .kpi-cifra { color: var(--ed-verde); }
.kpi.estado-negativo .kpi-cifra { color: var(--ed-rojo); }
.kpi.estado-alerta .kpi-cifra { color: var(--ed-ambar); }
.kpi.estado-positivo .kpi-icono, .kpi.estado-negativo .kpi-icono, .kpi.estado-alerta .kpi-icono, .kpi.estado-neutro .kpi-icono { color: var(--ed-champan); }
.kpi-pie { line-height: 1.65; color: var(--ed-texto); }

/* La barra del período de la Bóveda y del Informe Anual: sobre el marfil */
.filtros-tiempo { background-color: transparent; border-bottom-color: var(--ed-filete); }
.filtros-tiempo select { background-color: var(--ed-papel); border-color: var(--ed-borde); }

/* Los paneles */
.panel { border: 1px solid var(--ed-filete); box-shadow: var(--ed-sombra); background: var(--ed-papel); }
.panel-cabecera { border-bottom-color: var(--ed-filete); }
.panel-sub { color: var(--ed-tenue); }

/* Los botones y las fichas: rectos, con el trazo exacto */
.btn-refrescar { border-color: rgba(12, 11, 10, 0.22); }
.btn-refrescar:hover { background: var(--ed-tinta); border-color: var(--ed-tinta); color: var(--ed-marfil); }
.btn-tabla { border-color: rgba(12, 11, 10, 0.16); color: var(--ed-texto); }
.btn-usu { border-color: rgba(12, 11, 10, 0.2); color: var(--ed-texto); }
.btn-usu.principal, .usu-btn-nuevo { background: var(--ed-tinta); border-color: var(--ed-tinta); color: var(--ed-marfil); }
.btn-usu.principal:hover, .usu-btn-nuevo:hover { background: #000; border-color: var(--ed-oro); color: var(--ed-champan); }
.btn-usu.peligro { background: var(--ed-rojo); border-color: var(--ed-rojo); }
.btn-usu.peligro:hover { background: #6E1F1F; border-color: #6E1F1F; }
.btn-usu:focus-visible, .btn-refrescar:focus-visible, .btn-tabla:focus-visible, .chip-filtro:focus-visible,
.usu-btn-nuevo:focus-visible, .usu-btn-fila:focus-visible { outline: 1px solid var(--ed-oro); outline-offset: 3px; }
.chip-filtro { border-color: rgba(12, 11, 10, 0.16); color: var(--ed-texto); }
.chip-filtro.activo { background: var(--ed-tinta); border-color: var(--ed-tinta); color: var(--ed-marfil); }
.usu-opcion-modo:has(input:checked) { background: var(--ed-tinta); border-color: var(--ed-tinta); }

/* Las pestañas: texto con un subrayado de oro, no píldoras. La activa se
   distingue también sin color: por su subrayado. */
.cnt-pestanas, .ctr-pestanas, .imp-pestanas { border-bottom: 1px solid var(--ed-filete); }
.imp-pestanas { background: transparent; padding-left: 0; padding-right: 0; }
.cnt-pestana, .ctr-pestana, .imp-pestana {
    background: transparent; border: 0; border-bottom: 2px solid transparent;
    margin-bottom: -1px; color: var(--ed-tenue); letter-spacing: 0.12em; box-shadow: none;
}
.cnt-pestana:hover, .ctr-pestana:hover, .imp-pestana:hover { color: var(--ed-tinta); border-color: transparent; border-bottom-color: var(--ed-filete); background: transparent; }
.cnt-pestana i, .ctr-pestana i, .imp-pestana i { color: var(--ed-champan); }
.cnt-pestana.activa, .ctr-pestana.activa, .imp-pestana.activa { background: transparent; color: var(--ed-tinta); border-color: transparent; border-bottom-color: var(--ed-oro); box-shadow: none; }
.cnt-pestana.activa i, .ctr-pestana.activa i, .imp-pestana.activa i { color: var(--ed-oro); }
/* El subrayado de la activa se apoya en el filete del contenedor; en el
   teléfono, las pestañas no se apilan en una columna: se desplazan en un
   solo renglón, como las de la Bóveda. */
.cnt-pestanas, .ctr-pestanas { padding-bottom: 0; }
@media (max-width: 720px) {
    .cnt-pestanas, .ctr-pestanas { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: thin; }
    .cnt-pestana, .ctr-pestana { flex: 0 0 auto; white-space: nowrap; }
}
.boveda-pestanas, .pat-pestanas { background: transparent; padding: 0; box-shadow: inset 0 -1px 0 var(--ed-filete); }
.boveda-pestana, .pat-pestana { background: transparent; color: var(--ed-tenue); letter-spacing: 0.12em; }
.boveda-pestana:hover, .pat-pestana:hover { background: transparent; color: var(--ed-tinta); box-shadow: inset 0 -1px 0 var(--ed-borde); }
.boveda-pestana.activa, .pat-pestana.activa { background: transparent; color: var(--ed-tinta); box-shadow: inset 0 -2px 0 var(--ed-oro); }
.boveda-pestana:focus-visible, .pat-pestana:focus-visible { outline: 1px solid var(--ed-oro); }

/* Los modales: papel tibio con un filete de oro arriba, el título en
   Playfair ligera */
.usu-modal { background: rgba(12, 11, 10, 0.66); }
.usu-caja { border-top: 2px solid var(--ed-oro); background: var(--ed-papel-tibio); box-shadow: 0 40px 90px rgba(0, 0, 0, 0.42); }
.usu-cabecera { border-bottom-color: var(--ed-filete); }
.usu-cabecera > i { color: var(--ed-oro); }
.usu-cerrar:hover { background: var(--ed-tinta); color: var(--ed-marfil); }
.auge-modal-caja, .pat-modal-caja, .caja-empleado, .caja-duplicado, .caja-certificado { border-top: 2px solid var(--ed-oro); }

/* Los campos de los formularios: de línea, con el foco en oro, como los de
   Flujo de Caja y el CRM */
.usu-campo label, .emp-campo label, .liq-campo label, .pat-campo label { font-weight: 500; letter-spacing: 0.22em; color: var(--ed-oro-hondo); }
.usu-campo input, .usu-campo select, .emp-campo input, .emp-campo select, .pat-campo input, .pat-campo select,
.campo-pago input, .campo-pago select, .nd-campo input[type="text"], .nd-campo input[type="number"], .nd-campo select,
.correo-campo input[type="email"], .entrada-campo input, .entrada-campo select, .auge-campo {
    border: 0; border-bottom: 1px solid rgba(12, 11, 10, 0.25);
    background-color: transparent; padding-left: 0.1rem; padding-right: 0.1rem;
}
.usu-campo select, .emp-campo select, .pat-campo select, .campo-pago select, .nd-campo select, .entrada-campo select {
    -webkit-appearance: none; appearance: none; padding-right: 1.6rem; cursor: pointer;
    background: no-repeat right 0.2rem center / 12px 8px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%2384653A' stroke-width='1.2'/%3E%3C/svg%3E");
}
.usu-campo input:focus, .usu-campo select:focus, .emp-campo input:focus, .emp-campo select:focus,
.pat-campo input:focus, .pat-campo select:focus, .campo-pago input:focus, .campo-pago select:focus,
.nd-campo input:focus, .nd-campo select:focus, .correo-campo input[type="email"]:focus,
.entrada-campo input:focus, .entrada-campo select:focus, .auge-campo:focus {
    outline: none; border-bottom-color: var(--ed-tinta); box-shadow: 0 1px 0 0 var(--ed-oro);
}
.usu-campo input[readonly], .usu-campo select:disabled, .emp-campo input[readonly], .emp-campo select:disabled { background-color: rgba(12, 11, 10, 0.03); }
.emp-campo input.corregido { border-bottom-color: var(--ed-oro); background-color: rgba(184, 146, 90, 0.08); }
/* Las casillas dentro de una tabla o de una fila conservan su caja: sin ella
   se pierden entre las líneas. Solo el trazo cambia. */
.liq-campo input, .liq-campo select, .liq-libranza select, .liq-libranza input, .ne-dias input,
.ncp-tabla input, .imp-tabla-columnas select, .fe-frase input, .pla-fe-frase input, .linea-item input,
.linea-item select, .desc-box input, .fiscal-campo input, .palanca-pie input[type="number"],
.palanca-credito input, .campo input, .campo select {
    border-color: var(--ed-borde);
}
.usu-campo textarea, .emp-campo textarea, .anul-motivo textarea, .ren-campo-nota textarea, #par-notas,
#dec-notas, #rendec-notas, #icadec-notas, #pla-motivo, #pla-eliminar-motivo, #pla-vin-nota {
    border-color: rgba(12, 11, 10, 0.2); background-color: var(--ed-papel);
}
.usu-campo textarea:focus, .emp-campo textarea:focus { border-color: var(--ed-tinta); }
/* Los buscadores y los selectores de período: una caja recta de filete */
.usu-buscador input, .buscador-plantilla input, .ren-buscador, .selector-periodo, .filtro-mes,
#selector-periodo, .search-box, .man-buscar-caja input {
    border-color: var(--ed-borde); background-color: var(--ed-papel);
}

/* Las notas y los avisos: un filete a la izquierda y un velo que se
   desvanece */
.usu-notas p { border-left-width: 1px; background: linear-gradient(90deg, rgba(184, 146, 90, 0.11), rgba(184, 146, 90, 0) 85%); }
.usu-notas p.alerta { background: linear-gradient(90deg, rgba(154, 91, 30, 0.10), rgba(154, 91, 30, 0) 85%); }
.usu-estado { border-left-width: 1px; background: linear-gradient(90deg, rgba(142, 42, 42, 0.08), rgba(142, 42, 42, 0) 85%); }

/* Las tablas: el encabezado en versalitas de oro sobre papel tibio, las
   filas con un filete fino. Las de Inventario y Flujo de Caja conservan su
   encabezado de tinta. */
.cnt-tabla-marco, .usu-tabla-roles { border-color: var(--ed-filete); background: var(--ed-papel); }
.cnt-tabla-marco thead th, .cnt-tabla-lineas th, .cnt-lineas th, .cnt-tabla-parametros th,
.ctr-lineas th, .pla-fe-tabla th, .ter-tabla th, .usu-roles thead th, .imp-tabla-filas thead th {
    color: var(--ed-oro-hondo); letter-spacing: 0.18em; font-weight: 600; background-color: var(--ed-papel-tibio);
}
.cnt-tabla-marco td, .cnt-tabla-lineas td, .cnt-tabla-parametros td { border-bottom-color: var(--ed-filete-suave); }
.cnt-tabla-marco tbody tr:hover td { background-color: #FCFAF6; }

/* La puerta del ERP —index.html y setup-password.html—: la portada de tinta
   con su marco de oro, y el formulario sin tarjeta, sobre marfil, con campos
   de línea, como la puerta de la sala (fase 64.1). Dentro del formulario,
   --sl-blanco es el marfil: así el autocompletado del navegador, que pinta
   el campo con ese color, no deja un recuadro blanco. */
:root {
    --sl-negro: #0C0B0A; --sl-oro: #B8925A; --sl-oro-claro: #D9C4A0; --sl-hueso: #F5F2EC;
    --sl-borde: #E4DCCF; --sl-texto: #5A544B; --sl-rojo: #8E2A2A; --sl-verde: #2F6B4F;
}
.sl-marca { outline: 1px solid rgba(184, 146, 90, 0.26); outline-offset: -22px; }
@media (max-width: 900px) { .sl-marca { outline: none; } }
.sl-marca-nombre { font-weight: 400; letter-spacing: 0.3em; }
.sl-marca-sub { font-weight: 500; letter-spacing: 0.34em; }
.sl-sello { border-radius: 0; font-weight: 400; }
.login-card {
    --sl-blanco: #F5F2EC;
    background: transparent; border: 0; border-radius: 0; box-shadow: none;
    -webkit-backdrop-filter: none; backdrop-filter: none;
}
.brand-header h1 { font-weight: 400; font-size: 2.2rem; letter-spacing: -0.015em; }
.logo-box { border-radius: 0; font-weight: 400; }
.input-group label { font-weight: 500; letter-spacing: 0.22em; color: var(--ed-oro-hondo); }
.input-group input {
    border: 0; border-bottom: 1px solid rgba(12, 11, 10, 0.25); border-radius: 0;
    background: transparent; padding-left: 0.1rem; padding-right: 0.1rem;
}
.input-group input:hover { border-bottom-color: rgba(12, 11, 10, 0.45); }
.input-group input:focus { border-bottom-color: var(--ed-tinta); box-shadow: 0 1px 0 0 var(--ed-oro); }
.btn-primary { border-radius: 0; letter-spacing: 0.26em; }
.btn-primary:hover:not(:disabled) { box-shadow: none; transform: none; }
.error-box { border-radius: 0; border-left-width: 1px; background: linear-gradient(90deg, rgba(142, 42, 42, 0.08), rgba(142, 42, 42, 0) 85%); color: var(--ed-rojo); }
.sl-idiomas { background: transparent; border: 0; border-radius: 0; padding: 0; gap: 0.9rem; }
.sl-idioma-btn { border-radius: 0; padding: 0.34rem 0; background: transparent; letter-spacing: 0.2em; border-bottom: 1px solid transparent; }
.sl-idioma-btn:hover { background: transparent; color: var(--ed-tinta); }
.sl-idioma-btn.activo { background: transparent; color: var(--ed-tinta); font-weight: 600; border-bottom-color: var(--ed-oro); }
.sl-idioma-bandera { display: none; }

/* -----------------------------------------------------------------------------
   4 · LA GEOMETRÍA: cada esquina, recta (los controles) o con un filo de dos
   píxeles (las cajas). Una línea por pantalla, con el selector exacto de su
   hoja para ganarle por llegar después.
   -------------------------------------------------------------------------- */
/* Activos y Patrimonio */
.pat-estado, .pat-pestanas, .pat-pestana, .pat-btn, .pat-alerta, .pat-pago, .pat-guardado,
.pat-campo input, .pat-campo select, .pat-opcion, .auge-toast, .pat-progreso-barra,
.pat-progreso-barra span, .pat-enlace:focus-visible, .pat-vence { border-radius: 0; }
.pat-aviso, .pat-tarjeta, .pat-tabla-caja, .pat-genesis, .pat-form-linea, .pat-aclaracion, .pat-celda,
.pat-modal-caja, .pat-vivo, .pat-interruptor, .pat-credito, .pat-tercero, .pat-modal-estado,
.pat-modal-contexto, .pat-reparto-parte, .pat-tabla-historial, .pat-historial-previas, .pat-ficha-dato { border-radius: 2px; }
/* El Informe Anual */
.etiqueta-servicio { border-radius: 0; }
/* La Bóveda y sus vecinas (auge.css) */
.filtros-tiempo select, .etiqueta-estado, .tooltip-texto, .dato-faltante { border-radius: 0; }
/* La Bóveda */
#selector-periodo, .boveda-btn, .boveda-pestanas, .boveda-pestana, .kpi-etiqueta-pendiente, .insight-nivel,
.valoracion-ver:focus-visible, #sparkline-utilidad .sparkline-barra,
#sparkline-utilidad .sparkline-barra.negativa, .estrategia-deuda .estrategia-situacion { border-radius: 0; }
.boveda-control, .boveda-aviso, #boveda-bench-aviso, .franja-insights, .insight, .insight-vacio,
.kpi-vacio, .val-bloque { border-radius: 2px; }
/* El calendario */
.flatpickr-calendar { border-radius: 2px; }
.flatpickr-months, .flatpickr-month { border-radius: 2px 2px 0 0; }
/* Los certificados y la liquidación, en su diálogo */
.cert-barra-controles select { border-radius: 0; }
.caja-certificado, .lista-avisos li { border-radius: 2px; }
/* Contabilidad */
.cnt-pestana, .cnt-tipo, .cnt-insignia, .usu-campo textarea, .cnt-in, .cnt-btn-icono { border-radius: 0; }
.cnt-nota, .cnt-barra-resumen, .cnt-tabla-marco, .cnt-avisos li, .cnt-propuesta, .cnt-comp, .cnt-acerca,
.cnt-aux-cabecera, .cnt-lineas-marco, .cnt-sumas, .cnt-bloque, .cnt-barra-guardar, .cnt-confirmaciones,
.cnt-lineas tr { border-radius: 2px; }
/* Contratos */
.ctr-pestana, .ctr-version, .ctr-insignia, .ctr-in, .ctr-btn-icono, .ctr-barra, .ctr-barra > div,
.ctr-version-boton, .eje-insignia { border-radius: 0; }
.ctr-bloque, .ctr-nota, .ctr-lineas-marco, .ctr-editor-resumen, .ctr-res-ganancia, .ctr-res-aviso,
.ctr-texto, .eje-acceso { border-radius: 2px; }
/* La fuente de cada fila de la historia (fase 65.15b): el CRM y el kárdex del inventario */
.fuente-historia, .fuente-weibei { border-radius: 0; }
/* Centro de Mando y las pantallas que heredan sus piezas */
.btn-refrescar, .btn-tabla, .distintivo, .leyenda-punto { border-radius: 0; }
.kpi, .panel, .tabla-datos, .alerta-item, .esqueleto { border-radius: 2px; }
/* Flujo de Caja */
.tiempo-real, .btn-masivo, .linea-item input, .linea-item select, .desc-box input, .btn-ejecutar,
.filtro-mes, .btn-ticket, .ficha-alerta, .btn-fac, .fac-transaccion, .opcion-tier, .cliente-elegido,
.fiscal-campo input, .totales-nota, .fac-leyenda-fiscal, .dian-qr, .btn-reenviar-dian, .sello-dian,
.anul-motivo textarea, .btn-anul, .nd-campo input[type="text"], .nd-campo input[type="number"],
.btn-reversar-nd, .fac-reversion, .btn-franja-fe, .dian-ambiente, .btn-archivo-dian, .btn-consultar-dian,
.nd-campo select, .fe-problemas, .btn-fe, .fe-frase input, .correo-aviso, .btn-correo-conocido,
.correo-campo input[type="email"], .ncp-tabla input, .btn-ncp-todo, .tk-ds-prueba, .btn-ir-mercancia { border-radius: 0; }
.panel-formulario, .lineas-container, .panel-historial, .tx-item, .ficha-seleccion, .fac-estado,
.aviso-condicion, .panel-fiscal, .fac-dian, .dian-estado, .fac-dian-pendiente, .aviso-resolucion,
.caja-anulacion, .anul-factura, .nd-liquidacion, .nd-advertencia, .franja-fe, .caja-fe, .fe-seccion,
.fe-cifra, .ncp-error, .tk-ds-documento { border-radius: 2px; }
.autocomplete-lista { border-radius: 0 0 2px 2px; }
/* Traer datos */
.imp-clase-icono, .imp-plantilla, .imp-tabla-columnas select, .imp-frecuentes li, .imp-insignia,
.imp-barra, .imp-barra span { border-radius: 0; }
.imp-guia-paso, .imp-clase-caja, .imp-clase:focus-visible, .imp-zona, .imp-resultado { border-radius: 2px; }
/* Impuestos */
.selector-periodo, .aviso-causacion, .campo-pago input, .campo-pago select, .btn-girar, .pago-item,
.origen-compra, .imp-pestanas, .imp-pestana, .r350-origen, .aviso-causacion .ren-aviso-accion,
.ren-buscador, .sello-fiscal, .btn-revisar, .ren-opcion, .ren-campo-nota textarea, #par-notas, #dec-notas,
#rendec-notas, #icadec-notas { border-radius: 0; }
.ren-regla { border-radius: 2px; }
/* Laboratorio */
.banda-sello, .palanca-pie input[type="number"], .palanca-credito input, .pestana-modo, .campo input,
.campo select { border-radius: 0; }
.banda-sandbox, .palanca, .columna-base, .columna-simulada, .veredicto, .campo-destacado, .zona-descuento,
.tarjeta { border-radius: 2px; }
/* El selector de idioma */
.lang-btn { border-radius: 0; }
/* El Libro de Wei Bei */
.man-btn, .man-portada-marco, .man-portada-sello, .man-ruta, .man-buscar-caja input, .man-indice-ruta,
.man-indice-enlace, .man-chip, .man-contador li::before, .man-donde, .man-donde-ir, .man-pasar-btn { border-radius: 0; }
.man-portada, .man-indice, .man-capitulo, .man-simple, .man-ejemplo, .man-tabla-caja, .man-norma,
.man-contador, .man-cuidado, .man-rutina, .man-novedades { border-radius: 2px; }
/* La navegación */
.auge-hamburguesa, .auge-cerrar, .auge-lateral-enlace, .auge-lateral-salir, .auge-btn, .auge-idiomas,
.auge-idioma-btn { border-radius: 0; }
.auge-modal-caja, .auge-campo, .auge-modal-estado { border-radius: 2px; }
/* Nómina */
.btn-nuevo, .buscador-plantilla input, .chip-filtro, .btn-editar-ficha, .liq-campo input,
.liq-campo select, .btn-procesar, .sello-nomina, .emp-campo input, .emp-campo select, .btn-emp,
.nom-kpis .kpi .kpi-accion, .btn-pagar-fila, .ne-pruebas, .ne-dias input, .emp-campo textarea,
.liq-libranza select, .liq-libranza input, .liq-libranza-quitar, .pestana-nomina-iv { border-radius: 0; }
.empleado-item, .perfil-empleado, .perfil-banda, .liq-resumen, .liq-aviso, .caja-empleado, .caja-duplicado,
.dup-detalle, .pila-total, .liq-grupo, .liq-costo, .prest-parametros, .ne-periodo, .ne-estado,
.ne-resultado, .ne-total, .ne-documento, .liq-seccion, .liq-seccion > summary, .emp-retiro, .lq-entrada { border-radius: 2px; }
.liq-seccion[open] > summary { border-radius: 2px 2px 0 0; }
/* Plataforma */
#pla-eliminar-motivo, #pla-motivo, .pla-fe-frase input,
.pla-fe-prod-responsabilidades .pla-fe-prod-opciones label, #pla-vin-nota { border-radius: 0; }
.pla-fila, .pla-eliminar-lista, .pla-fe-cargando, .pla-fe-avisos, .pla-fe-seccion, .pla-fe-resultado,
.pla-vin-item, .pla-vin-form { border-radius: 2px; }
/* Terceros */
.ter-chip, .ter-ds-faltantes { border-radius: 0; }
.ter-fila, .ter-ejemplo { border-radius: 2px; }
/* Usuarios y las piezas que comparten las pantallas nuevas */
.usu-btn-nuevo, .usu-buscador input, .usu-insignia, .usu-etiqueta, .usu-btn-fila, .usu-nivel,
.usu-campo input, .usu-campo select, .usu-opcion-modo, .btn-usu, .usu-credenciales code, .usu-copiar { border-radius: 0; }
.usu-aviso-caja, .usu-fila, .usu-tabla-roles, .usu-registro, .usu-caja, .usu-delegar, .usu-notas p,
.usu-seccion, .usu-estado, .usu-nota-clave { border-radius: 2px; }
/* CRM (su hoja va dentro de la página) */
.search-box, .badge, .tipo-toggle, .btn-tipo, .tipo-doc, .aviso-modal { border-radius: 0; }
.fs-dian { border-radius: 2px; }
/* Ingreso de facturas (su hoja va dentro de la página) */
#preview-img { border-radius: 0; }
.upload-zone { border-radius: 2px; }
/* Inventario (su hoja va dentro de la página) */
.status, .btn-entrada, .entrada-campo input, .entrada-campo select { border-radius: 0; }
.prod-img { border-radius: 2px; }

/* -----------------------------------------------------------------------------
   5 · EL TEXTO QUE SE LEE: el oro hondo donde el oro es texto sobre un fondo
   claro, y el tenue donde un gris no alcanzaba (fase 64.5). Con el selector
   exacto de su hoja, para ganarle por llegar después.
   -------------------------------------------------------------------------- */
/* Flujo de Caja: el comprobante y la factura, la transacción, el sello del
   documento soporte, la sincronía y el código de una opción */
.fac-sello, .fac-bloque h4, .fac-transaccion-etiqueta, .dian-cufe-rotulo, .tk-ds h4,
.indicador-sync, .opcion-codigo { color: var(--ed-oro-hondo); }
.sello-dian.no-enviada { color: var(--ed-texto); }
/* El Laboratorio: los títulos de la auditoría del modo real */
.auditoria-bloque h4 { color: var(--ed-oro-hondo); }
/* Activos y Patrimonio: la flecha de la historia */
.pat-flecha { color: var(--ed-oro-hondo); }
/* La Bóveda: la ayuda de cada cifra —el ícono es lo único que lleva a ella:
   no es adorno— */
.icono-info { color: var(--ed-oro-hondo); }
/* El CRM: la pestaña bajo el puntero y la insignia de cada nivel */
.btn-tab:hover:not(.active) { color: var(--ed-oro-hondo); }
.badge.gold { color: var(--ed-oro-hondo); }
/* El CRM (fase 65.15b): el botón de la historia de compras bajo el puntero */
.btn-historia-cliente:hover { color: var(--ed-oro-hondo); }
.badge.diamond { color: #006A9C; }
.badge.platinum { color: #5F6E7A; }
/* El Libro de Wei Bei: las rayas del folio */
.man-folio::before, .man-folio::after { color: var(--ed-oro-hondo); }
/* El Centro de Mando: el nivel sin clientes se distingue por su punto y su
   tenue, no por un velo que dejaba el texto a 1,9 a 1 */
.leyenda-tiers li.sin-clientes { opacity: 1; }
.leyenda-tiers li.sin-clientes .leyenda-punto { opacity: 0.35; }
.leyenda-tiers li.sin-clientes .leyenda-nombre, .leyenda-tiers li.sin-clientes .leyenda-dato { color: var(--ed-tenue); font-weight: 500; }
/* Impuestos: el conteo junto a cada renglón de la liquidación, sin velo */
.liq-fila small, .liq-fila.detalle small { opacity: 1; color: var(--ed-tenue); }
/* El Informe Anual: los meses sin movimientos, en tenue */
.tabla-financiera .fila-apagada th, .tabla-financiera .fila-apagada td { color: var(--ed-tenue); }
/* Usuarios y Accesos: el permiso que un rol no tiene */
.usu-nivel.ninguno { color: var(--ed-tenue); }
/* La Bóveda: la nota de la auditoría de reinversión, sobre el marfil, en el
   tenue (el gris de su hoja quedaba en 4,2 a 1) */
.reinv-nota { color: var(--ed-tenue); }
/* El Libro de Wei Bei: en la portada negra, el sello de la edición en un oro
   más claro —el de siempre, bajo el resplandor de oro de la portada, quedaba en
   3,7 a 1— y el pie sin el velo del 45 %, que lo dejaba en 3,6 */
.man-portada-sello { color: #CDB08A; }
.man-portada-pie { color: rgba(245, 243, 239, 0.72); }

@media (prefers-reduced-motion: reduce) {
    .kpi, .kpi:hover { transition: none; transform: none; }
}
