/* Executive visual layer
   Scoped to logged pages via body.theme-executive
   Goal: improve look and readability without touching behavior. */

body.theme-executive {
    --exec-bg: #f3f6fa;
    --exec-surface: #ffffff;
    --exec-surface-soft: #f7f9fc;
    --exec-border: #d8e0ea;
    --exec-text: #1f2d3d;
    --exec-muted: #617083;
    --exec-primary: #274b73;
    --exec-primary-soft: #33628f;
    --exec-hero-start: #2b4f78;
    --exec-hero-end: #3a668f;
    --exec-table-head-start: #355c86;
    --exec-table-head-end: #2c4f76;
    --exec-success: #2f7658;
    --exec-info: #2f5f83;
    --exec-warning: #3b6f9d;
    --exec-warning-dark: #2f5f89;
    --exec-warning-soft: #e9f1f8;
    --exec-danger: #b4545f;
    --exec-shadow: 0 8px 20px rgba(15, 23, 42, 0.06);
    --primary-color: #2f5f89;
    --custom-primary-color: #2f5f89;
    --c-blue-light-color: #eaf1f8;
    color: var(--exec-text);
}

body.theme-executive .page-wrapper,
body.theme-executive .container-fluid {
    background-color: var(--exec-bg);
}

body.theme-executive .topbar,
body.theme-executive .topbar .navbar-header {
    background: linear-gradient(90deg, #152b46 0%, #213d60 100%) !important;
}

body.theme-executive .topbar .navbar-light .navbar-nav .nav-item > a.nav-link,
body.theme-executive .topbar .navbar-light .navbar-nav .nav-item > a.nav-link i,
body.theme-executive .topbar .navbar-light .navbar-nav .nav-item > a.nav-link svg {
    color: #dbe5f1 !important;
}

body.theme-executive .topbar .top-navbar .navbar-nav > .nav-item > .nav-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 42px;
    min-height: 42px;
    padding: 0 10px;
    margin: 0 2px;
    line-height: 1;
    border-radius: 10px;
}

body.theme-executive .topbar .top-navbar .navbar-nav > .nav-item > .nav-link i,
body.theme-executive .topbar .top-navbar .navbar-nav > .nav-item > .nav-link svg {
    width: 20px;
    height: 20px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

body.theme-executive .topbar .top-navbar .navbar-collapse.no-xs > a > .btn {
    width: 42px;
    height: 42px;
    padding: 0;
    border-radius: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

body.theme-executive .topbar .sunat_btn .btn-topbar-pill {
    min-height: 42px;
    padding: 0 16px !important;
    border-radius: 12px !important;
    border: 1px solid rgba(217, 231, 247, 0.34) !important;
    color: #f4f8ff !important;
    font-weight: 700;
    letter-spacing: 0.2px;
    box-shadow: 0 6px 14px rgba(8, 20, 36, 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.12);
    transition: transform 0.16s ease, filter 0.16s ease, box-shadow 0.16s ease;
}

body.theme-executive .topbar .sunat_btn .btn-topbar-pill i {
    margin-right: 6px;
}

body.theme-executive .topbar .sunat_btn .btn-topbar-web {
    background: linear-gradient(135deg, #2c78ad 0%, #205f8f 100%) !important;
}

body.theme-executive .topbar .sunat_btn .btn-topbar-prod {
    background: linear-gradient(135deg, #1f7a58 0%, #2f9a6f 100%) !important;
}

body.theme-executive .topbar .sunat_btn .btn-topbar-demo {
    background: linear-gradient(135deg, #4f5c71 0%, #3d495d 100%) !important;
}

body.theme-executive .topbar .sunat_btn .btn-topbar-pill:hover {
    transform: translateY(-1px);
    filter: brightness(1.05);
    box-shadow: 0 8px 16px rgba(8, 20, 36, 0.26), inset 0 1px 0 rgba(255, 255, 255, 0.14);
}

body.theme-executive .topbar .sunat_btn .btn-topbar-pill:focus {
    box-shadow: 0 0 0 0.2rem rgba(143, 177, 210, 0.25), 0 6px 14px rgba(8, 20, 36, 0.22);
}

body.theme-executive .btn-rapidos {
    width: 20px;
    height: 20px;
    font-size: 20px;
    line-height: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

body.theme-executive .btn-rapidos i,
body.theme-executive .btn-rapidos svg {
    line-height: 1;
}

body.theme-executive .left-sidebar {
    background-color: #152b46;
    box-shadow: 2px 0 16px rgba(10, 20, 35, 0.18);
}

body.theme-executive .scroll-sidebar,
body.theme-executive .sidebar-nav {
    background: transparent !important;
}

body.theme-executive .sidebar-nav ul li a {
    color: #d1deec;
    font-weight: 500;
}

body.theme-executive .sidebar-nav ul li a.active,
body.theme-executive .sidebar-nav ul li a:hover {
    color: #ffffff;
    background: rgba(68, 118, 168, 0.35);
}

body.theme-executive .sidebar-nav #sidebarnav > li > a {
    display: flex;
    align-items: center;
    gap: 12px;
    min-height: 44px;
    padding: 10px 16px 10px 14px;
    border-radius: 10px;
}

body.theme-executive .sidebar-nav #sidebarnav > li > a i,
body.theme-executive .sidebar-nav #sidebarnav > li > a svg {
    width: 20px;
    min-width: 20px;
    height: 20px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    color: #d1deec;
    stroke: currentColor;
}

body.theme-executive .sidebar-nav #sidebarnav > li > a:hover i,
body.theme-executive .sidebar-nav #sidebarnav > li > a:hover svg,
body.theme-executive .sidebar-nav #sidebarnav > li > a.active i,
body.theme-executive .sidebar-nav #sidebarnav > li > a.active svg,
body.theme-executive .sidebar-nav #sidebarnav > li.active > a i,
body.theme-executive .sidebar-nav #sidebarnav > li.active > a svg {
    color: #ffffff !important;
    stroke: currentColor;
}

body.theme-executive .sidebar-nav #sidebarnav > li > a .hide-menu {
    line-height: 1.2;
}

body.theme-executive .sidebar-nav #sidebarnav > li.active > a,
body.theme-executive .sidebar-nav #sidebarnav > li > a.active {
    background: linear-gradient(90deg, #0f223a 0%, #1c3f66 100%) !important;
    color: #ffffff !important;
    box-shadow: 0 8px 18px rgba(8, 24, 45, 0.32) !important;
}

body.theme-executive .sidebar-nav #sidebarnav > li > ul {
    padding-top: 6px;
    padding-left: 8px;
}

body.theme-executive .sidebar-nav #sidebarnav > li > ul li a {
    color: #c7d7e8;
    border-radius: 8px;
    padding: 9px 12px !important;
}

body.theme-executive .sidebar-nav #sidebarnav > li > ul li a:hover,
body.theme-executive .sidebar-nav #sidebarnav > li > ul li a.active {
    color: #ffffff !important;
    background: rgba(255, 255, 255, 0.14) !important;
}

body.theme-executive .sidebar-nav .has-arrow::after {
    border-color: #b9cde3 !important;
}

body.theme-executive .sidebar-nav .active > .has-arrow::after,
body.theme-executive .sidebar-nav li > .has-arrow.active::after,
body.theme-executive .sidebar-nav .has-arrow[aria-expanded="true"]::after,
body.theme-executive .sidebar-nav #sidebarnav > li > a:hover.has-arrow::after {
    border-color: #ffffff !important;
}

body.theme-executive .page-titles-modern {
    background: linear-gradient(135deg, var(--exec-hero-start) 0%, var(--exec-hero-end) 100%) !important;
    border-radius: 16px;
    box-shadow: 0 12px 24px rgba(28, 58, 88, 0.18);
}

body.theme-executive .page-titles-modern h4,
body.theme-executive .page-titles-modern .text-white {
    color: #f4f8ff !important;
}

body.theme-executive .page-titles-modern .breadcrumb-modern {
    background: rgba(255, 255, 255, 0.14);
}

/* POS de-violet: overrides de alta prioridad para venta/orden */
body.theme-executive {
    --exec-pos-primary: #2f5f89;
    --exec-pos-secondary: #3b6c97;
}

body.theme-executive #main-wrapper .list-salones .nav-link.zonas.active,
body.theme-executive #main-wrapper .btn-primary-modern,
body.theme-executive #main-wrapper .btn.btn-primary-modern {
    background: linear-gradient(135deg, var(--exec-pos-primary) 0%, var(--exec-pos-secondary) 100%) !important;
    border-color: transparent !important;
    box-shadow: 0 4px 14px rgba(34, 76, 116, 0.28) !important;
}

body.theme-executive #main-wrapper .list-salones .nav-link.zonas.active,
body.theme-executive #main-wrapper .list-salones .nav-link.zonas.active span,
body.theme-executive #main-wrapper .list-salones .nav-link.zonas.active .font-14,
body.theme-executive #main-wrapper .tabs-horizontal .nav-link.zonas.active,
body.theme-executive #main-wrapper .tabs-horizontal .nav-link.zonas.active span {
    color: #f4f8ff !important;
    text-shadow: 0 1px 2px rgba(18, 36, 58, 0.35);
}

body.theme-executive #main-wrapper .list-salones .nav-link.zonas:not(.active) {
    color: #334155 !important;
}

body.theme-executive #main-wrapper .po-header,
body.theme-executive #main-wrapper .card-header.po-header {
    background: linear-gradient(135deg, var(--exec-pos-primary) 0%, var(--exec-pos-secondary) 100%) !important;
    box-shadow: 0 4px 14px rgba(34, 76, 116, 0.28) !important;
}

body.theme-executive #main-wrapper .cont01 {
    background: linear-gradient(135deg, #355c86 0%, #2c4f76 100%) !important;
}

body.theme-executive #main-wrapper .cont01::before {
    background-image:
        radial-gradient(circle at 20% 50%, rgba(255, 255, 255, 0.1) 0%, transparent 50%),
        radial-gradient(circle at 80% 80%, rgba(255, 255, 255, 0.06) 0%, transparent 50%) !important;
}

body.theme-executive #main-wrapper .cont01 h4,
body.theme-executive #main-wrapper .cont01 h6,
body.theme-executive #main-wrapper .cont01 .text-white {
    color: #f4f8ff !important;
}

body.theme-executive .channel-icon.btn.btn-circle {
    width: 50px;
    height: 50px;
    padding: 0;
    border-radius: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

body.theme-executive .channel-icon.btn.btn-circle i,
body.theme-executive .channel-icon.btn.btn-circle svg {
    font-size: 17px;
    line-height: 1;
}

body.theme-executive .stat-row .stat-icon {
    width: 42px;
    height: 42px;
    margin-right: 1rem;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

body.theme-executive .stat-row .stat-icon i {
    width: 1em;
    height: 1em;
    font-size: 16px;
    line-height: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

body.theme-executive .stat-row .stat-icon i.ti {
    font-size: 15px;
}

body.theme-executive .stat-icon-yape {
    background: #4f5f82 !important;
}

body.theme-executive .stat-icon-plin {
    background: #2f6f8d !important;
}

body.theme-executive .card,
body.theme-executive .card-modern {
    border: 1px solid var(--exec-border) !important;
    border-radius: 12px;
    box-shadow: var(--exec-shadow);
    background-color: var(--exec-surface);
}

body.theme-executive .card-header {
    background-color: var(--exec-surface-soft);
    border-bottom: 1px solid var(--exec-border);
}

body.theme-executive .text-primary,
body.theme-executive .text-purple {
    color: var(--exec-primary) !important;
}

body.theme-executive .bg-primary {
    background-color: var(--exec-primary) !important;
}

body.theme-executive .badge-primary,
body.theme-executive .label-primary {
    background-color: var(--exec-primary) !important;
}

body.theme-executive .btn {
    border-radius: 10px;
    font-weight: 500;
    transition: all 0.18s ease;
}

body.theme-executive .btn:focus,
body.theme-executive .btn.focus {
    box-shadow: 0 0 0 0.2rem rgba(45, 86, 127, 0.2);
}

body.theme-executive .btn-primary,
body.theme-executive .btn-modern-primary {
    background-color: var(--exec-primary);
    border-color: var(--exec-primary);
    box-shadow: 0 2px 10px rgba(31, 59, 93, 0.2);
}

body.theme-executive .btn-primary:hover,
body.theme-executive .btn-modern-primary:hover {
    background-color: var(--exec-primary-soft);
    border-color: var(--exec-primary-soft);
}

body.theme-executive .btn-success,
body.theme-executive .btn-modern-success {
    background-color: var(--exec-success);
    border-color: var(--exec-success);
    box-shadow: 0 2px 10px rgba(47, 118, 88, 0.2);
}

body.theme-executive .btn-success:hover,
body.theme-executive .btn-modern-success:hover {
    background-color: #276549;
    border-color: #276549;
}

body.theme-executive .btn-info {
    background-color: var(--exec-info);
    border-color: var(--exec-info);
    box-shadow: 0 2px 10px rgba(47, 95, 131, 0.2);
}

body.theme-executive .btn-warning {
    background-color: var(--exec-warning);
    border-color: var(--exec-warning);
}

body.theme-executive .btn-warning,
body.theme-executive .btn-warning.disabled,
body.theme-executive .btn-warning:focus,
body.theme-executive .btn-warning:not(:disabled):not(.disabled).active,
body.theme-executive .show > .btn-warning.dropdown-toggle {
    color: #f4f8ff !important;
    background-color: var(--exec-warning) !important;
    border-color: var(--exec-warning) !important;
    box-shadow: 0 2px 10px rgba(47, 95, 131, 0.24) !important;
}

body.theme-executive .btn-warning:hover,
body.theme-executive .btn-warning.disabled:hover {
    color: #f4f8ff !important;
    background-color: var(--exec-warning-dark) !important;
    border-color: var(--exec-warning-dark) !important;
}

body.theme-executive .btn-danger,
body.theme-executive .btn-orange {
    background-color: var(--exec-danger);
    border-color: var(--exec-danger);
}

body.theme-executive .text-warning {
    color: #2f5f89 !important;
}

body.theme-executive .label-warning,
body.theme-executive .badge-warning {
    color: #2f4f74 !important;
    background-color: var(--exec-warning-soft) !important;
    border: 1px solid #c8d9ea !important;
}

body.theme-executive .bg-warning {
    color: #f4f8ff !important;
    background-color: var(--exec-warning) !important;
}

body.theme-executive .alert-warning {
    color: #2f4f74 !important;
    background-color: #eef4fb !important;
    border-color: #c8d9ea !important;
}

body.theme-executive .btn-outline-primary {
    color: var(--exec-primary);
    border-color: var(--exec-primary);
}

body.theme-executive .btn-outline-primary:hover {
    background-color: var(--exec-primary);
    border-color: var(--exec-primary);
}

body.theme-executive .btn-outline-info {
    color: var(--exec-info);
    border-color: var(--exec-info);
}

body.theme-executive .btn-outline-success {
    color: var(--exec-success);
    border-color: var(--exec-success);
}

body.theme-executive .btn-outline-danger {
    color: var(--exec-danger);
    border-color: var(--exec-danger);
}

body.theme-executive .form-control,
body.theme-executive .custom-select,
body.theme-executive .input-group-text,
body.theme-executive .bootstrap-select .dropdown-toggle {
    border-color: var(--exec-border) !important;
    border-radius: 10px;
    color: var(--exec-text) !important;
    background-color: #ffffff;
}

body.theme-executive .form-control::placeholder {
    color: #8b98aa;
}

body.theme-executive .form-control:focus,
body.theme-executive .custom-select:focus,
body.theme-executive .bootstrap-select .dropdown-toggle:focus {
    border-color: #7e93ad !important;
    box-shadow: 0 0 0 0.18rem rgba(45, 86, 127, 0.18) !important;
}

body.theme-executive .table thead th,
body.theme-executive .table-modern thead th,
body.theme-executive .table-responsive .table-modern thead th,
body.theme-executive .table-responsive-modern .table-modern thead th {
    background-color: var(--exec-table-head-start) !important;
    background: linear-gradient(135deg, var(--exec-table-head-start) 0%, var(--exec-table-head-end) 100%) !important;
    color: #f4f8ff !important;
    border-color: #40658f !important;
}

body.theme-executive .bg-header,
body.theme-executive .card-header.bg-header {
    background: linear-gradient(135deg, var(--exec-table-head-start) 0%, var(--exec-table-head-end) 100%) !important;
    color: #f4f8ff !important;
    border-color: #40658f !important;
}

body.theme-executive .table tbody td,
body.theme-executive .table-modern tbody td {
    color: var(--exec-text);
    border-color: #e7edf5;
}

body.theme-executive .table-hover tbody tr:hover,
body.theme-executive .table-modern tbody tr:hover {
    background-color: #f5f8fc !important;
}

body.theme-executive .table-responsive,
body.theme-executive .table-responsive-modern {
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch;
}

/* Delivery modal + panel palette cleanup (remove warm yellow cast) */
body.theme-executive .dialogBtnDelivery {
    background: #f7f9fc !important;
    border: 1px solid #d8e0ea !important;
    box-shadow: 0 12px 28px rgba(15, 23, 42, 0.14) !important;
}

body.theme-executive .dialogBtnDelivery .form-control,
body.theme-executive .dialogBtnDelivery .bootstrap-select .dropdown-toggle,
body.theme-executive .dialogBtnDelivery .form-control-modern {
    background: #ffffff !important;
    border-color: #d8e0ea !important;
}

/* Discount/commission dialog must not inherit dark table-header theme */
body.theme-executive .modern-dialog,
body.theme-executive .dialogBtn.modern-dialog {
    background: #ffffff !important;
    color: #334155 !important;
    border: 1px solid #d8e0ea !important;
    box-shadow: 0 14px 30px rgba(15, 23, 42, 0.16) !important;
}

body.theme-executive .modern-dialog .table thead th,
body.theme-executive .dialogBtn.modern-dialog .table thead th {
    background: #ffffff !important;
    color: #334155 !important;
    border-color: #e3ebf5 !important;
}

body.theme-executive .modern-dialog .table thead th:first-child,
body.theme-executive .dialogBtn.modern-dialog .table thead th:first-child {
    background: #f6f9fc !important;
    color: #46576d !important;
    border-right: 1px solid #e3ebf5 !important;
}

body.theme-executive .modern-dialog .table thead tr,
body.theme-executive .dialogBtn.modern-dialog .table thead tr {
    border-bottom: 1px solid #e9eff6 !important;
}

body.theme-executive .modern-dialog .table thead tr:last-child,
body.theme-executive .dialogBtn.modern-dialog .table thead tr:last-child {
    border-bottom: 0 !important;
}

body.theme-executive .modern-dialog .input-group-text,
body.theme-executive .dialogBtn.modern-dialog .input-group-text {
    background: #f3f7fb !important;
    color: #40556f !important;
    border-color: #d8e3ef !important;
}

body.theme-executive .modern-dialog .form-control,
body.theme-executive .modern-dialog select.form-control,
body.theme-executive .dialogBtn.modern-dialog .form-control,
body.theme-executive .dialogBtn.modern-dialog select.form-control {
    background: #ffffff !important;
    color: #243447 !important;
    border-color: #d8e3ef !important;
}

body.theme-executive .modern-dialog .link,
body.theme-executive .dialogBtn.modern-dialog .link {
    color: #2f5f89 !important;
}

body.theme-executive #delivery01 > .p-0 > .p-l-10.p-t-10.b-b {
    background: #2f5f89 !important;
}

body.theme-executive #delivery02 > .p-0 > .p-l-10.p-t-10.b-b {
    background: #3c6d97 !important;
}

body.theme-executive #delivery03 > .p-0 > .p-l-10.p-t-10.b-b {
    background: #3c7f86 !important;
}

body.theme-executive #delivery04 > .p-0 > .p-l-10.p-t-10.b-b {
    background: #2f7a67 !important;
}

body.theme-executive #delivery01 > .p-0 > .p-l-10.p-t-10.b-b h6,
body.theme-executive #delivery02 > .p-0 > .p-l-10.p-t-10.b-b h6,
body.theme-executive #delivery03 > .p-0 > .p-l-10.p-t-10.b-b h6,
body.theme-executive #delivery04 > .p-0 > .p-l-10.p-t-10.b-b h6,
body.theme-executive #delivery03 > .p-0 > .p-l-10.p-t-10.b-b .text-black {
    color: #f4f8ff !important;
}

body.theme-executive .bg-descuento {
    background-color: #e9f1f8 !important;
}

body.theme-executive .btn-tipo-entrega-1.active,
body.theme-executive .btn-tipo-entrega-2.active {
    color: #f4f8ff !important;
    background: linear-gradient(135deg, #2f5f89 0%, #3b6c97 100%) !important;
    border-color: transparent !important;
    box-shadow: 0 4px 10px rgba(47, 95, 137, 0.28) !important;
}

body.theme-executive .btn-tipo-entrega-1,
body.theme-executive .btn-tipo-entrega-2 {
    color: #4b6077 !important;
    background: #f3f7fb !important;
    border-color: #d5e0ec !important;
}

body.theme-executive .round,
body.theme-executive .btn-circle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

body.theme-executive .round i,
body.theme-executive .round svg,
body.theme-executive .btn-circle i,
body.theme-executive .btn-circle svg {
    line-height: 1;
}

body.theme-executive .nav-tabs .nav-link {
    color: #4f5f73;
}

body.theme-executive .nav-tabs .nav-link.active {
    color: var(--exec-primary);
    border-color: transparent transparent var(--exec-primary) transparent;
}

/* POS document-type pills: clearer hover + active state */
body.theme-executive .card-settings .btn-group-toggle .btn[class*="btn-tipo-doc-"] {
    color: #4a5f77 !important;
    background: #eef3f9 !important;
    border: 1px solid #d2dde9 !important;
    border-radius: 999px !important;
    font-weight: 700;
    letter-spacing: 0.2px;
    transition: all 0.16s ease;
}

body.theme-executive .card-settings .btn-group-toggle .btn[class*="btn-tipo-doc-"]:hover {
    color: #2f5f89 !important;
    background: #f8fbff !important;
    border-color: #8aa7c3 !important;
    box-shadow: 0 3px 10px rgba(47, 95, 137, 0.18);
}

body.theme-executive .card-settings .btn-group-toggle .btn[class*="btn-tipo-doc-"].active,
body.theme-executive .card-settings .btn-group-toggle .btn[class*="btn-tipo-doc-"]:active {
    color: #f4f8ff !important;
    background: linear-gradient(135deg, #2f5f89 0%, #3b6c97 100%) !important;
    border-color: transparent !important;
    box-shadow: 0 5px 12px rgba(34, 76, 116, 0.3);
}

/* Print action buttons (precuenta/comanda/ticket) with clear contrast */
body.theme-executive .card-header .imprimir_precuenta,
body.theme-executive .card-header .imprimir_ticket_reparto {
    color: #f4f8ff !important;
    background: linear-gradient(135deg, #1f7283 0%, #2f5f89 100%) !important;
    border: 1px solid rgba(174, 208, 230, 0.38) !important;
    box-shadow: 0 4px 10px rgba(18, 53, 84, 0.28);
}

body.theme-executive .card-header #btnDropdownComandas,
body.theme-executive .card-header #btn_dropdown_comandas_mozo,
body.theme-executive .btn-imp .btn-warning.dropdown-toggle {
    color: #f4f8ff !important;
    background: linear-gradient(135deg, #465e93 0%, #385283 100%) !important;
    border: 1px solid rgba(179, 194, 232, 0.34) !important;
    box-shadow: 0 4px 10px rgba(31, 56, 96, 0.28);
}

body.theme-executive .card-header .imprimir_precuenta:hover,
body.theme-executive .card-header .imprimir_ticket_reparto:hover,
body.theme-executive .card-header #btnDropdownComandas:hover,
body.theme-executive .card-header #btn_dropdown_comandas_mozo:hover,
body.theme-executive .btn-imp .btn-warning.dropdown-toggle:hover {
    filter: brightness(1.08);
    transform: translateY(-1px);
}

/* Respect JS visibility toggles in responsive payment area */
body.theme-executive #content_pagos[style*="display:none"],
body.theme-executive #content_pagos[style*="display: none"] {
    display: none !important;
}

body.theme-executive #payment-inputs-top .display-pago-efectivo[style*="display:none"],
body.theme-executive #payment-inputs-top .display-pago-efectivo[style*="display: none"],
body.theme-executive #payment-inputs-top .display-pago-tarjeta[style*="display:none"],
body.theme-executive #payment-inputs-top .display-pago-tarjeta[style*="display: none"],
body.theme-executive #payment-inputs-top .display-codigo-operacion[style*="display:none"],
body.theme-executive #payment-inputs-top .display-codigo-operacion[style*="display: none"],
body.theme-executive #payment-inputs-top .display-cod-voucher[style*="display:none"],
body.theme-executive #payment-inputs-top .display-cod-voucher[style*="display: none"] {
    display: none !important;
}

body.theme-executive #content_pagos .display-pago-efectivo[style*="display:none"],
body.theme-executive #content_pagos .display-pago-efectivo[style*="display: none"],
body.theme-executive #content_pagos .display-pago-tarjeta[style*="display:none"],
body.theme-executive #content_pagos .display-pago-tarjeta[style*="display: none"],
body.theme-executive #content_pagos .display-codigo-operacion[style*="display:none"],
body.theme-executive #content_pagos .display-codigo-operacion[style*="display: none"],
body.theme-executive #content_pagos .display-cod-voucher[style*="display:none"],
body.theme-executive #content_pagos .display-cod-voucher[style*="display: none"] {
    display: none !important;
}

body.theme-executive .breadcrumb-modern,
body.theme-executive .breadcrumb-modern a {
    color: #d9e4f0;
}

/* Product categories: make long lists always scrollable */
body.theme-executive .display-categoria-list.category-list-wrap {
    display: flex;
    flex-direction: column;
    min-height: 0;
}

body.theme-executive #ul-cat.category-list-scroll {
    flex: 1 1 auto;
    min-height: 240px;
    max-height: min(64vh, 620px);
    overflow-y: auto !important;
    overflow-x: hidden !important;
    padding-right: 4px;
}

body.theme-executive #ul-cat.category-list-scroll .nav-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    white-space: normal;
    word-break: break-word;
}

body.theme-executive #ul-cat.category-list-scroll .nav-link > span {
    flex-shrink: 0;
}

body.theme-executive #ul-cat.category-list-scroll::-webkit-scrollbar {
    width: 8px;
}

body.theme-executive #ul-cat.category-list-scroll::-webkit-scrollbar-track {
    background: #edf2f8;
    border-radius: 8px;
}

body.theme-executive #ul-cat.category-list-scroll::-webkit-scrollbar-thumb {
    background: #b7c2d1;
    border-radius: 8px;
}

@media (max-width: 767.98px) {
    body.theme-executive .btn-up,
    body.theme-executive .btn-down,
    body.theme-executive .btn-categ {
        display: inline-flex !important;
    }

    body.theme-executive .topbar .top-navbar .navbar-nav > .nav-item > .nav-link {
        min-width: 38px;
        min-height: 38px;
        padding: 0 8px;
    }

    body.theme-executive .topbar .top-navbar .navbar-collapse.no-xs > a > .btn {
        width: 38px;
        height: 38px;
    }

    body.theme-executive .channel-icon.btn.btn-circle {
        width: 46px;
        height: 46px;
        border-radius: 12px;
    }

    body.theme-executive .channel-icon.btn.btn-circle i,
    body.theme-executive .channel-icon.btn.btn-circle svg {
        font-size: 16px;
    }

    body.theme-executive .stat-row .stat-icon {
        width: 40px;
        height: 40px;
        margin-right: 0.85rem;
    }

    body.theme-executive #ul-cat.category-list-scroll {
        min-height: 200px;
        max-height: 46vh;
    }
}

@media (max-width: 991.98px) {
    body.theme-executive .table-responsive > .table-modern,
    body.theme-executive .table-responsive-modern > .table-modern,
    body.theme-executive .table-responsive > .table,
    body.theme-executive .table-responsive-modern > .table {
        min-width: 720px;
    }

    body.theme-executive .list_categorias_menu {
        min-width: 0 !important;
        width: 100% !important;
    }

    body.theme-executive #modal-facturar .modal-dialog.modal-fullscreen {
        width: 98vw !important;
        max-width: 98vw !important;
    }

    body.theme-executive #modal-facturar .row.p-l-0 > .col-md-5,
    body.theme-executive #modal-facturar .row.p-l-0 > .col-md-7 {
        flex: 0 0 100%;
        max-width: 100%;
    }
}

@media (max-width: 767.98px) {
    body.theme-executive .nav-tabs {
        flex-wrap: nowrap;
        overflow-x: auto;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch;
        white-space: nowrap;
    }

    body.theme-executive .nav-tabs .nav-item {
        float: none;
        display: inline-block;
    }
}

@media (min-width: 768px) {
    body.theme-executive .btn-up,
    body.theme-executive .btn-down,
    body.theme-executive .btn-categ {
        display: none !important;
    }

    body.theme-executive.mini-sidebar .sidebar-nav #sidebarnav > li > a {
        width: 52px;
        padding: 10px 0;
        justify-content: center;
        gap: 0;
    }

    body.theme-executive.mini-sidebar .sidebar-nav #sidebarnav > li:hover > a {
        width: 260px;
        padding: 10px 16px;
        justify-content: flex-start;
        gap: 12px;
        background: linear-gradient(90deg, #1d3a5d 0%, #2a4f79 100%) !important;
        color: #f4f8ff !important;
        border-color: #3f6f9d !important;
        box-shadow: 0 8px 20px rgba(10, 25, 45, 0.28);
    }

    body.theme-executive.mini-sidebar .sidebar-nav #sidebarnav > li:hover > a i,
    body.theme-executive.mini-sidebar .sidebar-nav #sidebarnav > li:hover > a svg {
        color: #f4f8ff !important;
    }

    body.theme-executive.mini-sidebar .sidebar-nav #sidebarnav > li:hover > ul,
    body.theme-executive.mini-sidebar .sidebar-nav #sidebarnav > li:hover > ul.collapse {
        background: #16314d !important;
        border: 1px solid rgba(137, 165, 197, 0.28);
        border-top: 0;
        border-radius: 0 0 12px 12px;
        box-shadow: 0 12px 24px rgba(10, 25, 45, 0.3);
        padding: 8px;
    }

    body.theme-executive.mini-sidebar .sidebar-nav #sidebarnav > li:hover > ul li a {
        color: #cbd9e9 !important;
        background: transparent !important;
        border-radius: 8px;
        padding: 9px 12px !important;
    }

    body.theme-executive.mini-sidebar .sidebar-nav #sidebarnav > li:hover > ul li a:hover,
    body.theme-executive.mini-sidebar .sidebar-nav #sidebarnav > li:hover > ul li a.active {
        color: #ffffff !important;
        background: rgba(255, 255, 255, 0.12) !important;
    }
}

/* ── Modal header con fondo oscuro/degradado: forzar texto blanco ───────────── */
/* Cubre tanto .modal-header-modern como .modal-content-modern .modal-header     */
.modal-header-modern,
.modal-header-modern .modal-title,
.modal-header-modern h1,
.modal-header-modern h2,
.modal-header-modern h3,
.modal-header-modern h4,
.modal-header-modern h5,
.modal-header-modern h6,
.modal-content-modern .modal-header,
.modal-content-modern .modal-header .modal-title,
.modal-content-modern .modal-header h1,
.modal-content-modern .modal-header h2,
.modal-content-modern .modal-header h3,
.modal-content-modern .modal-header h4,
.modal-content-modern .modal-header h5,
.modal-content-modern .modal-header h6 {
    color: #ffffff !important;
}
.modal-header-modern .close,
.modal-header-modern .close span,
.modal-content-modern .modal-header .close,
.modal-content-modern .modal-header .close span {
    color: #ffffff !important;
    opacity: 0.85;
    text-shadow: none;
}
