/* ⚠ EL CALENDARIO (jQuery UI datepicker) SE VEÍA DETRÁS DE LA BARRA SUPERIOR (2026-08-01).
 * Reportado por Grupo Gabia: el picker de fechas de "Consultar por fechas" abría bajo la pestaña
 * "Herramientas" y no se podía tocar.
 *
 * Causa medida: este paquete de jQuery UI le pone la clase `ui-front` (z-index:100) a menu,
 * autocomplete y dialog — pero NUNCA al datepicker (grep en js2/jquery-ui-evinuxnet.js confirmado).
 * Sin esa clase, jQuery calcula el z-index del popup subiendo por los ancestros del input hasta
 * encontrar el primero con z-index explícito; si no encuentra ninguno, cae en un valor bajísimo
 * (1 o 2). La barra superior del rediseño (`--vx-z-appbar: 50`, position:sticky) queda por encima
 * sin esfuerzo y tapa el calendario.
 *
 * `!important` porque jQuery pone su propio z-index como estilo INLINE en cada apertura del
 * calendario, y un inline gana a cualquier regla sin !important. Por encima de todas las capas del
 * sistema de diseño (appbar 50, rail 40, bottomnav 60, sheet 80, toast 90): el usuario lo está
 * tocando en ese momento, así que nada de la app debe poder taparlo. */
.ui-datepicker {
    z-index: 9999 !important;
}

.ui-jqgrid .ui-jqgrid-htable th div {
    height: 17px !important;
    overflow: hidden;
    padding: 0 2px;
    position: relative;
    vertical-align: middle;
    white-space: nowrap !important;
    font-weight: bold !important;
}

.bold {
    font-weight: bold !important;
}

#MenuEmisortabs {
    height: 600px;
    font-size: 14px;
}

#MenuEmisortabs ul li {
    font-weight: bold;
}

#MenuEmisortabs ul li .menuemisor {
    font-size: 16px;
}

#MenuEmisortabs hr {
    border-top-style: solid;
    border-right-style: solid;
    border-bottom-style: solid;
    border-left-style: solid;
    border-top-color: black;
    border-right-color: black;
    border-bottom-color: black;
    border-left-color: black;
    background-color: black;
    border-width: 1px;
    width: 90%;
    margin-left: 0;
}

.txt_title_add {
    font-size: 16px;
    font-weight: bold;
}

.txt_title {
    font-size: 15px;
}

.rojo_blanco {
    background-color: white;
    color: red;
    font-weight: bold;
}

.negro_blanco {
    background-color: white;
    color: blue;
    font-weight: bold;
}

.gridFondoVerde {
    background-color: #6fa2ff;
}

.gridFondoRojo {
    background-color: #ff7f7f;
}

.txt_verticalaligntop {
    vertical-align: top;
}

.txt_verticalalignbottom {
    vertical-align: bottom;
}

.txt_verticalaligncenter {
    vertical-align: middle;
}

.jqg_bold td {
    font-weight: bold !important;
}

.txt_usd td {
    background-color: #8cffcd;
    background: #8cffcd;
    color: black;
    font-weight: bold;
}

.txt_ocurr td {
    background-color: #67a4ff;
    background: #67a4ff;
    color: black;
    font-weight: bold;
}

.ticket {
    font-family: Arial !important;
    font-size: 17px !important;
}

@media screen {
    .txt_13px {
        font-size: 11px !important;
    }

    .txt_12px {
        font-size: 10px !important;
    }

    .txt_11px {
        font-size: 9px !important;
    }
}

fieldset.black {
    border-color: black;
    border-top-color: black;
    border-right-color: black;
    border-bottom-color: black;
    border-left-color: black;
}

.tbl_title_wo_border {
    border: 0px !important;
}

.txt_usd_green {
    color: #009353;
    font-weight: bold;
}

label.ui-state-active {
    background-color: #566c89 !important;
    background: #566c89 !important;
    color: #ffffff !important;
}

.txt_14px {
    font-size: 14px !important;
}
.txt_15px {
    font-size: 15px !important;
}
.txt_16px {
    font-size: 16px !important;
}
.txt_17px {
    font-size: 17px !important;
}
.txt_18px {
    font-size: 18px !important;
}

/* ============================================================
   Corner modernization: replace 10×10px GIF corners with CSS
   border-radius on the corner <td> cells.

   Constraint: border-radius on <td> requires border-collapse:separate.
   border-spacing:0 preserves existing visual spacing.
   Nested tables are unaffected (global rule wins over inheritance).
   ============================================================ */

table.tbl_bckgrnd_brite {
    border-collapse: separate;
    border-spacing: 0;
}

/* Prevent border-collapse:separate from leaking into nested tables (jqGrid, etc.) */
table.tbl_bckgrnd_brite table {
    border-collapse: collapse;
}

td.tbl_top_corner.txt_leftaligned    { border-top-left-radius:     10px; }
td.tbl_top_corner.txt_rightaligned   { border-top-right-radius:    10px; }
td.tbl_bottom_corner.txt_leftaligned { border-bottom-left-radius:  10px; }
td.tbl_bottom_corner.txt_rightaligned{ border-bottom-right-radius: 10px; }

img.tbl_top_corner,
img.tbl_bottom_corner {
    display: none;
}

:root {
    --app-bg: var(--theme-canvas, #eef3f8);
    --app-bg-strong: var(--theme-canvas-strong, #dde7f1);
    --surface-1: var(--theme-surface-1, rgba(255, 255, 255, 0.94));
    --surface-2: var(--theme-surface-2, rgba(247, 250, 253, 0.98));
    --surface-3: var(--theme-surface-3, rgba(240, 245, 250, 0.96));
    --surface-glass: var(--theme-surface-glass, rgba(255, 255, 255, 0.82));
    --text-1: var(--theme-text-1, #18324a);
    --text-2: var(--theme-text-2, #4f6478);
    --text-3: var(--theme-text-3, #7c8fa1);
    --accent-1: var(--theme-accent-1, #1f6fa5);
    --accent-2: var(--theme-accent-2, #15557d);
    --accent-soft: var(--theme-accent-soft, rgba(31, 111, 165, 0.12));
    --accent-softer: var(--theme-accent-softer, rgba(31, 111, 165, 0.06));
    --accent-focus: var(--theme-accent-focus, rgba(31, 111, 165, 0.10));
    --title-bg: var(--theme-title-bg, #1f648f);
    --title-bg-strong: var(--theme-title-bg-strong, #2a7eb5);
    --title-border: var(--theme-title-border, #174765);
    --title-text: var(--theme-title-text, #f5fbff);
    --border-soft: var(--theme-border-soft, rgba(24, 50, 74, 0.10));
    --border-strong: var(--theme-border-strong, rgba(24, 50, 74, 0.18));
    --danger-soft: rgba(185, 74, 72, 0.12);
    --success-soft: rgba(55, 125, 80, 0.12);
    --shadow-sm: 0 1px 2px rgba(16, 39, 61, 0.06);
    --shadow-md: 0 10px 30px rgba(20, 42, 63, 0.10), 0 2px 8px rgba(20, 42, 63, 0.06);
    --shadow-lg: 0 20px 48px rgba(20, 42, 63, 0.16), 0 8px 18px rgba(20, 42, 63, 0.08);
    --radius-sm: 6px;
    --radius-md: 10px;
    --radius-lg: 16px;
    --space-1: 4px;
    --space-2: 8px;
    --space-3: 12px;
    --space-4: 16px;
    --space-5: 24px;
    --space-6: 32px;
}

body {
    color: var(--text-1);
    line-height: 1.2;
    background-color: var(--app-bg) !important;
    background-image: radial-gradient(circle at top left, rgba(255, 255, 255, 0.72), transparent 36%),
                      linear-gradient(180deg, rgba(255, 255, 255, 0.42), rgba(221, 231, 241, 0.35));
}

.vx-page-frame {
    max-width: 1480px;
    margin: 0;
    padding: 12px;
}

.vx-page-shell {
    position: relative;
    overflow: hidden;
}

.vx-page-shell::before {
    content: "";
    position: absolute;
    inset: 0 auto auto 0;
    width: 100%;
    height: 4px;
    background: linear-gradient(90deg, var(--title-bg-strong), var(--title-bg));
    opacity: 0.92;
    z-index: 1;
}

.vx-page-shell > * {
    position: relative;
    z-index: 2;
}

.vx-section-shell {
    margin: 10px 0;
    padding: 12px;
    border-radius: var(--radius-md);
    background: var(--surface-glass);
    border: 1px solid rgba(255, 255, 255, 0.76);
    box-shadow: var(--shadow-md);
}

.vx-section-shell--compact {
    padding: 8px 10px;
}

.vx-section-head {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 12px;
    flex-wrap: wrap;
    margin-bottom: 8px;
}

.vx-section-kicker {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 4px 8px;
    border-radius: 999px;
    background: var(--accent-soft);
    color: var(--accent-2);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.vx-section-title {
    margin: 6px 0 0;
    color: var(--text-1);
    font-size: 21px;
    line-height: 1.08;
}

.vx-section-copy {
    margin: 4px 0 0;
    color: var(--text-2);
    line-height: 1.5;
    max-width: 760px;
}

.vx-toolbar-shell {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: flex-end;
    padding: 8px 10px;
    border-radius: var(--radius-md);
    background: var(--surface-glass);
    border: 1px solid rgba(255, 255, 255, 0.78);
    box-shadow: var(--shadow-sm);
}

.vx-kpi-strip {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
    gap: 10px;
    margin: 0 0 12px;
}

.vx-kpi-card {
    position: relative;
    overflow: hidden;
    padding: 11px;
    border-radius: var(--radius-md);
    background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(244,248,252,.98));
    border: 1px solid rgba(255,255,255,.78);
    box-shadow: var(--shadow-md);
}

.vx-kpi-card::before {
    content: "";
    position: absolute;
    inset: 0 auto auto 0;
    width: 100%;
    height: 4px;
    background: linear-gradient(90deg, var(--title-bg-strong), var(--title-bg));
}

.vx-kpi-label {
    color: var(--text-2);
    font-weight: 600;
}

.vx-kpi-value {
    margin-top: 8px;
    color: var(--text-1);
    font-size: 24px;
    font-weight: 800;
    line-height: 1;
}

.vx-report-shell,
.vx-menu-shell,
.vx-work-shell {
    width: 100%;
}

.vx-report-shell .tbl_title,
.vx-report-shell .tbl_title_1,
.vx-menu-shell .tbl_title,
.vx-menu-shell .tbl_title_1,
.vx-work-shell .tbl_title,
.vx-work-shell .tbl_title_1 {
    letter-spacing: 0.02em;
}

.vx-report-shell .tbl_top_corner img,
.vx-report-shell .tbl_bottom_corner img,
.vx-menu-shell .tbl_top_corner img,
.vx-menu-shell .tbl_bottom_corner img,
.vx-work-shell .tbl_top_corner img,
.vx-work-shell .tbl_bottom_corner img {
    opacity: 0.94;
}

.vx-page-frame .menuemisor {
    line-height: 1.18;
}

@media (max-width: 960px) {
    .vx-page-frame {
        padding: 12px;
    }

    .vx-section-title {
        font-size: 22px;
    }
}

body.vx-report-page,
body.vx-menu-page {
    min-width: 320px;
}

body.vx-report-page .vx-page-frame,
body.vx-menu-page .vx-page-frame {
    max-width: 1520px;
}

body.vx-report-page #gridContainer,
body.vx-menu-page .vx-menu-shell {
    width: min(1480px, 100%) !important;
    max-width: 1480px;
    margin: 0 auto;
}

body.vx-report-page #gridContainer > tbody > tr:first-child > td,
body.vx-menu-page .vx-menu-shell > tbody > tr:first-child > td {
    padding-top: 8px;
}

body.vx-report-page #gridContainer > tbody > tr:first-child > td.txt_centered,
body.vx-menu-page .vx-menu-shell > tbody > tr:first-child > td.txt_centered {
    vertical-align: middle;
}

body.vx-report-page #gridContainer img,
body.vx-menu-page .vx-menu-shell img {
    max-width: 100%;
    height: auto;
}

body.vx-report-page .vx-section-shell {
    margin-top: 8px;
}

body.vx-report-page .ui-jqgrid,
body.vx-report-page [id^='div_wrapper_gr_'] {
    max-width: 100%;
}

body.vx-report-page [id$='_cr_01'],
body.vx-report-page [id^='div_wrapper_gr_'] {
    border-radius: var(--radius-md);
}

body.vx-menu-page #MenuEmisortabs {
    margin-top: 8px;
}

body.vx-menu-page #MenuEmisortabs > div {
    margin-top: 10px;
    padding: 8px 10px;
    border-radius: var(--radius-md);
    background: var(--surface-glass);
    border: 1px solid rgba(255, 255, 255, 0.78);
    box-shadow: var(--shadow-sm);
}

body.vx-menu-page #MenuEmisortabs > div > ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

body.vx-menu-page #MenuEmisortabs > div > ul > li {
    margin: 0;
}

body.vx-menu-page #MenuEmisortabs > div > ul > li > a,
body.vx-menu-page #MenuEmisortabs > div > ul > li > span.menuemisor > a,
body.vx-menu-page #MenuEmisortabs > div > ul > li > form > span.menuemisor {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    max-width: 100%;
    padding: 4px 7px;
    border-radius: 12px;
    background: rgba(255,255,255,0.55);
    box-shadow: var(--shadow-sm);
}

body.vx-menu-page #MenuEmisortabs > div > ul > li > a:hover,
body.vx-menu-page #MenuEmisortabs > div > ul > li > span.menuemisor > a:hover {
    background: var(--accent-soft);
}

body.vx-menu-page #MenuEmisortabs > div hr {
    margin: 12px 0;
}

body.vx-menu-page #MenuEmisortabs input.vxdatepicker,
body.vx-menu-page #MenuEmisortabs select {
    min-width: 140px;
}

body.nvocfd40-responsive .nvocfd40-shell {
    box-shadow: var(--shadow-lg);
}

body.nvocfd40-responsive #DatosReceptor,
body.nvocfd40-responsive #TablaCamposCFDI,
body.nvocfd40-responsive #Totales {
    background: var(--surface-glass);
    border-radius: var(--radius-md);
    border: 1px solid rgba(255, 255, 255, 0.78);
    box-shadow: var(--shadow-sm);
}

body.nvocfd40-responsive #DatosReceptor > tbody > tr:first-child > td,
body.nvocfd40-responsive #TablaCamposCFDI > tbody > tr:first-child > td,
body.nvocfd40-responsive #Totales > tbody > tr:first-child > td {
    padding-top: 8px;
}

body.nvocfd40-responsive #DatosReceptor strong,
body.nvocfd40-responsive #TablaCamposCFDI strong,
body.nvocfd40-responsive #Totales strong {
    color: var(--text-2);
}

table td,
table th {
    padding: 2px 4px;
}

a {
    color: var(--accent-2);
    transition: color 0.16s ease, opacity 0.16s ease, text-shadow 0.16s ease;
}

a:hover {
    color: var(--accent-1);
    opacity: 1;
}

::selection {
    background: var(--accent-soft);
    color: inherit;
}

table.tbl_bckgrnd_brite {
    background: linear-gradient(180deg, var(--surface-1), var(--surface-2));
    border: 1px solid var(--theme-shell-border, rgba(255, 255, 255, 0.72));
    box-shadow: var(--shadow-lg);
}

.tbl_title,
.tbl_title_1 {
    color: var(--title-text) !important;
    background: linear-gradient(180deg, var(--title-bg-strong), var(--title-bg)) !important;
    border-color: var(--title-border) !important;
    padding: 5px 9px;
    letter-spacing: 0.015em;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.18);
}

.tbl_title_1,
.txt_title_add,
.txt_title {
    color: var(--text-1);
}

hr,
#MenuEmisortabs hr {
    border: none;
    border-top: 1px solid rgba(24, 50, 74, 0.12);
    background: none;
    height: 0;
    margin: 10px 0;
}

.tbl_bdr,
.tbl_bdr_left,
.tbl_bdr_right,
.tbl_bdr_top,
.tbl_bdr_bottom,
.tbl_bdr_not_top,
.tbl_bdr_not_bottom {
    border-color: var(--border-soft) !important;
}

.lbl,
label,
.txt_dark {
    color: var(--text-2);
}

.dved {
    padding: 2px 5px;
}

input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not(.ui-pg-input),
textarea,
select:not(.ui-pg-selbox) {
    color: var(--text-1);
    border-radius: var(--radius-sm);
    padding: 3px 7px;
    border: 1px solid var(--border-strong);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), var(--surface-2));
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.92), var(--shadow-sm);
    transition: border-color 0.18s ease, box-shadow 0.18s ease, background-color 0.18s ease, transform 0.18s ease;
}

input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not(.ui-pg-input):hover,
textarea:hover,
select:not(.ui-pg-selbox):hover {
    border-color: rgba(24, 50, 74, 0.24);
    background: rgba(255, 255, 255, 0.98);
}

input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not(.ui-pg-input):focus,
textarea:focus,
select:not(.ui-pg-selbox):focus,
input.hasDatepicker:focus {
    border-color: var(--accent-1) !important;
    box-shadow: 0 0 0 4px var(--accent-soft), 0 8px 20px var(--accent-focus);
    background: rgba(255, 255, 255, 1);
    outline: none;
}

input.readonly,
textarea.readonly,
input[readonly],
textarea[readonly] {
    color: var(--text-2);
    background: rgba(231, 238, 244, 0.96) !important;
    border-style: solid;
    border-color: rgba(24, 50, 74, 0.10) !important;
    box-shadow: none;
    cursor: default;
}

input.currency,
input.netoapagar {
    letter-spacing: 0.02em;
}

select:not(.ui-pg-selbox) {
    background-image: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(245, 248, 251, 0.96));
}

.ui-datepicker,
#ui-datepicker-div,
.ui-autocomplete,
.ui-tooltip,
.ui-multiselect,
.selectize-dropdown,
.selectize-control.single .selectize-input {
    background: var(--surface-glass);
    border: 1px solid rgba(255, 255, 255, 0.72) !important;
    border-radius: var(--radius-md) !important;
    box-shadow: var(--shadow-md) !important;
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}

.ui-datepicker {
    padding: 4px;
}

.ui-datepicker .ui-datepicker-header {
    background: linear-gradient(180deg, var(--surface-2), var(--surface-3)) !important;
    border: 1px solid rgba(24, 50, 74, 0.08) !important;
    border-radius: 8px;
    color: var(--text-1) !important;
    margin-bottom: 8px;
}

.ui-datepicker .ui-datepicker-calendar th {
    color: var(--text-2);
    font-weight: 600;
}

.ui-datepicker .ui-datepicker-calendar td a,
.ui-datepicker .ui-datepicker-calendar td span {
    border-radius: 8px !important;
    text-align: center;
}

.ui-datepicker .ui-state-active,
.ui-datepicker .ui-datepicker-calendar td a.ui-state-active {
    background: linear-gradient(180deg, var(--title-bg-strong), var(--title-bg)) !important;
    border-color: var(--title-bg) !important;
    color: #ffffff !important;
}

.ui-datepicker .ui-state-hover,
.ui-datepicker .ui-datepicker-current-day a:hover,
.ui-datepicker .ui-datepicker-calendar td a:hover {
    background: var(--accent-soft) !important;
    border-color: var(--accent-1) !important;
    color: var(--text-1) !important;
}

.ui-autocomplete .ui-menu-item {
    padding: 6px 10px !important;
    border-radius: 7px;
    margin: 2px 4px;
    transition: background-color 0.12s ease, transform 0.12s ease;
}

.ui-autocomplete .ui-menu-item-wrapper.ui-state-active,
.ui-autocomplete .ui-menu-item-wrapper:hover {
    background: var(--accent-soft) !important;
    border: 1px solid var(--accent-1) !important;
    color: var(--text-1) !important;
}

fieldset {
    background: rgba(255, 255, 255, 0.42);
    border-radius: var(--radius-md);
    border: 1px solid rgba(24, 50, 74, 0.12);
    padding: 10px 12px;
}

fieldset legend {
    color: var(--text-1);
    font-weight: 700;
    padding: 0 8px;
}

fieldset.black {
    border-color: rgba(24, 50, 74, 0.30);
}

.ui-dialog {
    background: var(--surface-glass);
    border-radius: var(--radius-lg);
    border: 1px solid rgba(255, 255, 255, 0.80);
    box-shadow: 0 24px 60px rgba(13, 32, 52, 0.18), 0 8px 18px rgba(13, 32, 52, 0.10);
    overflow: hidden;
}

.ui-dialog .ui-dialog-titlebar {
    background: linear-gradient(180deg, rgba(248, 251, 254, 0.98), rgba(234, 242, 248, 0.94)) !important;
    border: none !important;
    border-bottom: 1px solid rgba(24, 50, 74, 0.08) !important;
    padding: 6px 10px;
}

.ui-dialog .ui-dialog-title {
    color: var(--text-1);
    font-weight: 700;
    letter-spacing: 0.01em;
}

.ui-dialog .ui-dialog-content,
.ui-dialog .ui-dialog-buttonpane {
    background: transparent;
}

.ui-dialog .ui-dialog-buttonpane {
    border-top: 1px solid rgba(24, 50, 74, 0.08) !important;
    padding: 6px 10px;
}

.ui-widget-overlay {
    background: rgba(13, 32, 52, 0.38) !important;
    opacity: 1 !important;
    filter: none !important;
    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px);
}

.btn,
.ui-button,
button,
input[type="button"],
input[type="submit"],
input[type="reset"] {
    border-radius: var(--radius-sm);
    border: 1px solid rgba(24, 50, 74, 0.10);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(235, 243, 249, 0.95));
    color: var(--text-1);
    box-shadow: var(--shadow-sm);
    cursor: pointer;
    transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease, background-color 0.18s ease;
}

.btn:hover,
.ui-button:hover,
button:hover,
input[type="button"]:hover,
input[type="submit"]:hover,
input[type="reset"]:hover {
    transform: translateY(-1px);
    border-color: var(--accent-1);
    box-shadow: 0 10px 20px rgba(20, 42, 63, 0.10), 0 2px 6px rgba(20, 42, 63, 0.06);
}

.btn:active,
.ui-button:active,
button:active,
input[type="button"]:active,
input[type="submit"]:active,
input[type="reset"]:active {
    transform: translateY(0);
    box-shadow: var(--shadow-sm);
}

.ui-button.ui-state-active,
.ui-dialog .ui-dialog-buttonpane .ui-button.ui-state-active,
label.ui-state-active {
    background: linear-gradient(180deg, var(--title-bg-strong), var(--title-bg)) !important;
    border-color: var(--title-bg) !important;
    color: #ffffff !important;
}

.ui-tabs {
    border: none !important;
    background: transparent !important;
}

#MenuEmisortabs {
    min-height: 300px;
    height: auto;
    font-size: 14px;
    color: var(--text-1);
}

.ui-tabs .ui-tabs-panel {
    padding: 6px 10px !important;
}

#MenuEmisortabs > .ui-tabs-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    background: rgba(255, 255, 255, 0.58);
    border: 1px solid rgba(255, 255, 255, 0.72) !important;
    border-radius: 14px;
    box-shadow: var(--shadow-sm);
    padding: 4px;
}

#MenuEmisortabs > .ui-tabs-nav > li {
    border: none !important;
    background: transparent !important;
    border-radius: 10px;
    margin: 0;
    padding: 0;
    transition: transform 0.18s ease, box-shadow 0.18s ease, background-color 0.18s ease;
}

#MenuEmisortabs > .ui-tabs-nav > li a {
    padding: 5px 10px;
    border-radius: 10px;
    color: var(--text-2) !important;
}

#MenuEmisortabs > .ui-tabs-nav > li:hover {
    background: rgba(255, 255, 255, 0.56) !important;
}

#MenuEmisortabs > .ui-tabs-nav > li.ui-tabs-active {
    background: var(--accent-soft) !important;
    box-shadow: inset 0 0 0 1px var(--accent-1), 0 8px 20px var(--accent-focus);
}

#MenuEmisortabs > .ui-tabs-nav > li.ui-tabs-active a,
#MenuEmisortabs > .ui-tabs-nav > li.ui-tabs-active .menuemisor,
#MenuEmisortabs > .ui-tabs-nav > li.ui-tabs-active em {
    color: var(--accent-2) !important;
}

#MenuEmisortabs ul li .menuemisor {
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 0.01em;
}

#MenuEmisortabs em {
    color: var(--text-2) !important;
    font-style: normal;
    line-height: 1.1;
}

.ui-jqgrid {
    background: rgba(255, 255, 255, 0.88) !important;
    border: 1px solid rgba(255, 255, 255, 0.76) !important;
    border-radius: 14px !important;
    box-shadow: var(--shadow-md) !important;
    overflow: visible;
}

.ui-jqgrid .ui-jqgrid-view,
.ui-jqgrid .ui-jqgrid-hdiv,
.ui-jqgrid .ui-jqgrid-bdiv,
.ui-jqgrid .ui-jqgrid-pager,
.ui-jqgrid .ui-jqgrid-titlebar {
    background: transparent !important;
}

.ui-jqgrid .ui-jqgrid-titlebar {
    border: none !important;
    border-bottom: 1px solid rgba(24, 50, 74, 0.08) !important;
    /* themes ship near-white caption text (made for the old dark header); on the white card it was invisible */
    color: #1e293b !important;
    font-weight: 700;
}

.ui-jqgrid .ui-jqgrid-hdiv {
    border-bottom: 1px solid rgba(24, 50, 74, 0.10) !important;
}

.ui-jqgrid .ui-jqgrid-htable th {
    background: var(--surface-3) !important;
    color: var(--text-1) !important;
    padding: 0 2px !important;
    font-weight: 700 !important;
    border-right-color: rgba(24, 50, 74, 0.06) !important;
}

.ui-jqgrid tr.jqgrow td {
    border-bottom: 1px solid rgba(24, 50, 74, 0.06) !important;
    color: var(--text-1);
    padding: 0 2px !important;
}

.ui-jqgrid tr.jqfoot td,
.ui-jqgrid tr.footrow td,
.ui-jqgrid tr.jqgfirstrow td,
.ui-jqgrid td.jqgrid-rownum {
    padding: 2px 2px !important;
}

.ui-jqgrid tr.ui-search-toolbar th {
    height: 30px !important;
    padding: 2px 2px !important;
}

.ui-jqgrid tr.ui-search-toolbar th div {
    height: auto !important;
    min-height: 24px;
    padding: 1px 2px !important;
    white-space: normal !important;
}

.ui-jqgrid tr.ui-search-toolbar input,
.ui-jqgrid tr.ui-search-toolbar select {
    height: 24px !important;
    margin: 1px 0 !important;
    padding-top: 2px !important;
    padding-bottom: 2px !important;
}

.ui-jqgrid .ui-search-table,
.ui-jqgrid .ui-search-table td {
    height: auto !important;
    padding: 0 !important;
}

.ui-jqgrid tr.jqgrow:nth-child(even) td {
    background-color: rgba(19, 46, 70, 0.018) !important;
}

.ui-jqgrid tr.jqgrow:hover td {
    background-color: var(--accent-softer) !important;
}

.ui-jqgrid tr.ui-state-highlight td {
    background-color: var(--accent-soft) !important;
    color: var(--text-1) !important;
}

.ui-jqgrid .ui-jqgrid-pager {
    border-top: 1px solid rgba(24, 50, 74, 0.08) !important;
    padding: 5px 6px !important;
    min-height: 34px;
    height: auto !important;
}

.ui-jqgrid .ui-pg-table td,
.ui-jqgrid .ui-jqgrid-pager td {
    vertical-align: middle;
    padding-top: 3px !important;
    padding-bottom: 3px !important;
}

.ui-jqgrid .ui-pg-input,
.ui-jqgrid .ui-pg-selbox {
    min-height: 26px;
    height: 26px !important;
    padding: 3px 5px !important;
    border-radius: var(--radius-sm);
    border: 1px solid var(--border-strong) !important;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), var(--surface-2));
    color: var(--text-1) !important;
    box-shadow: var(--shadow-sm);
}

.ui-jqgrid .ui-pg-button {
    border-radius: var(--radius-sm);
    border: 1px solid transparent;
    transition: transform 0.18s ease, box-shadow 0.18s ease, background-color 0.18s ease, border-color 0.18s ease;
}

.ui-jqgrid .ui-pg-button:hover {
    background: var(--accent-soft) !important;
    border-color: var(--accent-1);
    transform: translateY(-1px);
}

.ui-jqgrid .ui-pg-button.ui-state-disabled,
.ui-jqgrid .ui-pg-button.ui-state-disabled:hover {
    opacity: 0.42;
    background: transparent !important;
    border-color: transparent;
    transform: none;
    box-shadow: none;
}

.ui-jqgrid .ui-pg-table .ui-icon,
.ui-jqgrid .ui-jqgrid-pager .ui-icon {
    opacity: 0.86;
}

.formError .formErrorContent {
    width: auto;
    min-width: 180px;
    max-width: 280px;
    background: linear-gradient(180deg, #fff8f8, #ffe7e7) !important;
    color: #9d2f2f !important;
    font-size: 13px;
    line-height: 1.35;
    border: 1px solid rgba(157, 47, 47, 0.18) !important;
    box-shadow: var(--shadow-md) !important;
    padding: 5px 8px;
    border-radius: var(--radius-md);
}

.greenPopup .formErrorContent {
    background: linear-gradient(180deg, #f3fff5, #def7e4) !important;
    color: #286b3c !important;
    border-color: rgba(40, 107, 60, 0.16) !important;
}

.blackPopup .formErrorContent {
    background: linear-gradient(180deg, #233645, #172632) !important;
    color: #eff6fb !important;
    border-color: rgba(239, 246, 251, 0.12) !important;
}

.formError .formErrorArrow div,
.greenPopup .formErrorArrow div,
.blackPopup .formErrorArrow div {
    border-left: none !important;
    border-right: none !important;
    box-shadow: none !important;
}

.formError .formErrorArrow .line1,
.formError .formErrorArrow .line2,
.formError .formErrorArrow .line3,
.formError .formErrorArrow .line4,
.formError .formErrorArrow .line5,
.formError .formErrorArrow .line6,
.formError .formErrorArrow .line7,
.formError .formErrorArrow .line8,
.formError .formErrorArrow .line9,
.formError .formErrorArrow .line10,
.greenPopup .formErrorArrow .line1,
.greenPopup .formErrorArrow .line2,
.greenPopup .formErrorArrow .line3,
.greenPopup .formErrorArrow .line4,
.greenPopup .formErrorArrow .line5,
.greenPopup .formErrorArrow .line6,
.greenPopup .formErrorArrow .line7,
.greenPopup .formErrorArrow .line8,
.greenPopup .formErrorArrow .line9,
.greenPopup .formErrorArrow .line10,
.blackPopup .formErrorArrow .line1,
.blackPopup .formErrorArrow .line2,
.blackPopup .formErrorArrow .line3,
.blackPopup .formErrorArrow .line4,
.blackPopup .formErrorArrow .line5,
.blackPopup .formErrorArrow .line6,
.blackPopup .formErrorArrow .line7,
.blackPopup .formErrorArrow .line8,
.blackPopup .formErrorArrow .line9,
.blackPopup .formErrorArrow .line10 {
    box-shadow: none !important;
}

.formError .formErrorArrow div {
    background: #ffe7e7 !important;
}

.greenPopup .formErrorArrow div {
    background: #def7e4 !important;
}

.blackPopup .formErrorArrow div {
    background: #172632 !important;
}

input:disabled,
textarea:disabled,
select:disabled,
button:disabled,
.ui-button:disabled,
.ui-state-disabled,
.ui-widget-content .ui-state-disabled,
.ui-widget-header .ui-state-disabled {
    opacity: 0.55;
    cursor: not-allowed !important;
    color: var(--text-3) !important;
}

input:disabled,
textarea:disabled,
select:disabled,
button:disabled,
.ui-button:disabled {
    background: rgba(24, 50, 74, 0.06) !important;
    border-color: rgba(24, 50, 74, 0.12) !important;
    box-shadow: none !important;
}

.txt_cfdcancelado,
.txt_cfdnc,
.rojo_blanco,
.negro_blanco,
.validation-advice,
.ui-state-error {
    border: 1px solid transparent;
}

.ui-state-error,
.validation-advice {
    background: linear-gradient(180deg, #fff6f6, #ffe8e8) !important;
    border-color: rgba(185, 74, 72, 0.18) !important;
    color: #9d2f2f !important;
    border-radius: var(--radius-sm);
    box-shadow: var(--shadow-sm);
}

.ui-widget,
.ui-widget input,
.ui-widget select,
.ui-widget textarea,
.ui-widget button {
    color: var(--text-1);
}

.ui-state-hover,
.ui-state-focus,
.ui-state-active {
    transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
}

.txt_cfdcancelado,
.txt_cfdnc,
.rojo_blanco,
.negro_blanco {
    border-radius: 999px;
    padding: 2px 10px;
    font-size: 0.92em;
    letter-spacing: 0.015em;
    box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.08);
}

.txt_cfdcancelado,
.rojo_blanco {
    background: var(--danger-soft);
}

.negro_blanco {
    background: var(--accent-soft);
}

::-webkit-scrollbar {
    width: 10px;
    height: 10px;
}

::-webkit-scrollbar-track {
    background: rgba(24, 50, 74, 0.04);
    border-radius: 999px;
}

::-webkit-scrollbar-thumb {
    background: rgba(24, 50, 74, 0.18);
    border-radius: 999px;
    border: 2px solid transparent;
    background-clip: padding-box;
}

::-webkit-scrollbar-thumb:hover {
    background: rgba(24, 50, 74, 0.30);
    border: 2px solid transparent;
    background-clip: padding-box;
}

* {
    scrollbar-width: thin;
    scrollbar-color: rgba(24, 50, 74, 0.18) rgba(24, 50, 74, 0.04);
}
