/* =========================================================
   NEXENG DUCT PRESSURE V21 - MODAL + FINAL LOGO LOCK
   Objetivo:
   - El modal de accesorios siempre queda encima de header, acciones,
     resumen y encabezado fijo de columnas.
   - Mantiene el logotipo horizontal final que ya gustó.
   - No toca cálculos, selección ni columnas.
   ========================================================= */

/* Logo final horizontal dentro de la app */
.nx-app-standard-v3 .nx-brand,
.nx-app-standard-v3 a.nx-brand,
.nx-topbar .nx-brand,
.nx-header .nx-brand {
    position: relative !important;
    display: block !important;
    width: 260px !important;
    min-width: 260px !important;
    height: 50px !important;
    min-height: 50px !important;
    flex: 0 0 260px !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
}

.nx-app-standard-v3 .nx-brand::before,
.nx-app-standard-v3 a.nx-brand::before,
.nx-topbar .nx-brand::before,
.nx-header .nx-brand::before {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    top: 50% !important;
    width: 252px !important;
    height: 44px !important;
    transform: translateY(-50%) !important;
    background: url('/assets/brand/nexeng-logo-header-v21.png?v=21.0.0') left center / contain no-repeat !important;
    filter: none !important;
    opacity: 1 !important;
}

.nx-app-standard-v3 .nx-brand-mark,
.nx-app-standard-v3 .nx-brand-text,
.nx-topbar .nx-brand-mark,
.nx-topbar .nx-brand-text,
.nx-header .nx-brand-mark,
.nx-header .nx-brand-text {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
}

/* Modal por encima de todo el stack fijo */
.nx-modal-overlay,
#accessoriesModal.nx-modal-overlay {
    z-index: 90000 !important;
    isolation: isolate !important;
    background: rgba(15, 35, 60, 0.48) !important;
    backdrop-filter: blur(13px) saturate(0.88) !important;
}

.nx-modal-overlay.is-active,
#accessoriesModal.nx-modal-overlay.is-active {
    z-index: 90000 !important;
    pointer-events: all !important;
}

.nx-modal-box,
#accessoriesModal .nx-modal-box {
    position: relative !important;
    z-index: 90010 !important;
    max-height: min(86vh, 860px) !important;
}

/* Cuando hay modal abierto, el stack fijo de trabajo queda visualmente detrás.
   No lo borramos; solo evitamos que compita con el modal. */
body.nx-dp-modal-open .nx-dp-action-dock-v13,
body.nx-dp-modal-open .nx-dp-action-dock-v12,
body.nx-dp-modal-open .nx-dp-action-dock-v11,
body.nx-dp-modal-open .nx-dp-action-dock-v6,
body.nx-dp-modal-open .nx-dp-v13-colbar,
body.nx-dp-modal-open .nx-dp-v12-colbar,
body.nx-dp-modal-open .nx-dp-v19-colbar,
body.nx-dp-modal-open .nx-summary-grid,
body.nx-dp-modal-open .nx-pressure-summary-grid {
    z-index: 10 !important;
}

/* Evita que la barra clonada se vea sobre el modal en navegadores agresivos */
body.nx-dp-modal-open .nx-dp-v13-colbar,
body.nx-dp-modal-open .nx-dp-v12-colbar,
body.nx-dp-modal-open .nx-dp-v19-colbar {
    visibility: hidden !important;
    opacity: 0 !important;
}

/* El header queda cubierto por el modal, pero no lo ocultamos para evitar saltos */
body.nx-dp-modal-open .nx-topbar,
body.nx-dp-modal-open .nx-header {
    z-index: 20 !important;
}

@media (max-width: 820px) {
    .nx-app-standard-v3 .nx-brand,
    .nx-app-standard-v3 a.nx-brand,
    .nx-topbar .nx-brand,
    .nx-header .nx-brand {
        width: 212px !important;
        min-width: 212px !important;
        flex-basis: 212px !important;
        height: 46px !important;
        min-height: 46px !important;
    }

    .nx-app-standard-v3 .nx-brand::before,
    .nx-app-standard-v3 a.nx-brand::before,
    .nx-topbar .nx-brand::before,
    .nx-header .nx-brand::before {
        width: 204px !important;
        height: 38px !important;
    }
}

@media (max-width: 560px) {
    .nx-app-standard-v3 .nx-brand,
    .nx-app-standard-v3 a.nx-brand,
    .nx-topbar .nx-brand,
    .nx-header .nx-brand {
        width: 154px !important;
        min-width: 154px !important;
        flex-basis: 154px !important;
        height: 42px !important;
        min-height: 42px !important;
    }

    .nx-app-standard-v3 .nx-brand::before,
    .nx-app-standard-v3 a.nx-brand::before,
    .nx-topbar .nx-brand::before,
    .nx-header .nx-brand::before {
        width: 150px !important;
        height: 31px !important;
    }

    #accessoriesModal .nx-modal-box {
        max-height: 90vh !important;
        border-radius: 22px !important;
    }
}
