:root {
    --z-bg: #0b0b0d;
    --z-text: #e2e2e2;
    --z-gold-light: #F8E7A0;
    --z-gold-mid: #D6B65A;
    --z-gold-dark: #A0782B;
}

/* @import url('tailwind.min.css'); */
footer.bg--dark {
    background: #072146;
}

footer.space--xs {
    padding-top: 1.71428571em;
    padding-bottom: 1.71428571em;
}

.menu-toggle i {
    top: 7px;
}

.bar__module {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
}

.bg--dark {
    background: #072146;
    background: linear-gradient(150deg, rgba(7, 33, 70, 1) 0%, rgba(61, 93, 142, 1) 100%);
}

.bg-menu {
    background-color: #1B1C1D !important;
}

.bar {
    padding: 0.85714286em 0;
}

.bar .logo {
    max-height: 2.85714286em;
    top: 0px;
}

.side-menu {
    background: #191919 !important;
}

.notification.side-menu .notification-close-cross {
    font-size: 20px;
}

.side-menu__module {
    margin-top: 50px;
    height: 100%;
    background: #313841;
    padding: 0px !important;
}

.bar-login-name {
    font-size: 0.9rem !important;
    display: flex !important;
    align-items: center;
}

.menu-vertical li {
    text-align: left;
    margin: 0 !important;
    padding: 8px 4px;
    padding-left: 2.78571429em;
}

.menu-vertical li:hover {
    background: #191919;
}

.menu-vertical li a {
    display: block;
}

button.swal2-confirm {
    background: #1860BD;
}

.swal2-title {
    background: #F5F8FB;
    padding: 0.2em 0;
    font-weight: 300;
}

.swal2-confirm {
    min-width: 150px;
}

.swal2-actions {
    border: none;
    border-top: 1px solid #F5F8FB;
    width: 100%;
}

div:where(.swal2-container) div:where(.swal2-popup) {
    padding-bottom: 0;
}

.login-page .language-selector {
    float: left;
    display: none;
}


/* Estilos por defecto para móviles (Mobile First) */
.swal2-popup {
    /* Forzar el 100% del ancho del contenedor del Swal */
    width: 100% !important;
    /* Limitar el ancho máximo para evitar que sea demasiado grande en tablets */
    max-width: 90vw !important;
}

/* Aplicar 700px solo en pantallas medianas o grandes (desktop) */
@media (min-width: 768px) {

    /* md: en Tailwind */
    .swal2-popup {
        width: 700px !important;
        /* Restablecer el max-width al valor que tenga el width */
        max-width: 700px !important;
    }
}



/* Estilos premium para componentes específicos */
footer.bg--dark {
    background: linear-gradient(135deg, #0f0c15 0%, #1a1625 100%);
    border-top: 1px solid #e4b451;
}

footer.space--xs {
    padding-top: 1.71428571em;
    padding-bottom: 1.71428571em;
}

.bg--dark {
    background: linear-gradient(135deg, #0f0c15 0%, #1a1625 50%, #0f0c15 100%);
}

.bg-menu {
    background: linear-gradient(135deg, #1a1625 0%, #2a2438 100%) !important;
    border-bottom: 1px solid #e4b451;
}

.side-menu {
    background: linear-gradient(135deg, #1a1625 0%, #2a2438 100%) !important;
    border-left: 1px solid #e4b451;
}

.menu-vertical li:hover {
    background: linear-gradient(135deg, #e4b45115 0%, #f5d10f10 100%);
}

/* Botones SweetAlert premium */
button.swal2-confirm {
    background: linear-gradient(135deg, #e4b451 0%, #f5d10f 100%) !important;
    color: #1a1625 !important;
    font-weight: 600 !important;
    border: none !important;
}

.swal2-title {
    background: linear-gradient(135deg, #fefbe8 0%, #fdf4c4 100%) !important;
    color: #1a1625 !important;
    font-weight: 600 !important;
}

.swal2-toast .swal2-title {
    background: transparent !important;
}

.zento-card {
    position: relative;
}

.zento-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 6px;
    background: linear-gradient(135deg, var(--z-gold-light) 0%, var(--z-gold-mid) 40%, var(--z-gold-dark) 100%);
    border-radius: 8px 8px 0 0;
    z-index: 9;
}