﻿/* ========================
   Estilos personalizados principales
   ======================== */

/* Botón para abrir el modal */
#buttonModalOpen {
    background-color: #007bff;
    color: #fff;
    padding: 12px 24px;
    border-radius: 5px;
    border: none;
    margin: 50px auto;
    display: block;
    font-size: 16px;
    transition: background-color 0.3s ease;
    cursor: pointer;
}

    #buttonModalOpen:hover {
        background-color: #0056b3;
    }

/* Contenedor del modal */
#modalValidation {
    display: none;
    position: fixed;
    z-index: 1000;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.6);
    align-items: center;
    justify-content: center;
}

/* Contenido del modal */
.modalContentValidation {
    background: #fff;
    border-radius: 8px;
    padding: 30px;
    width: 90%;
    max-width: 500px;
    position: relative;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2);
    animation: slideDown 0.3s ease-out;
}

@keyframes slideDown {
    from {
        transform: translateY(-20px);
        opacity: 0;
    }

    to {
        transform: translateY(0);
        opacity: 1;
    }
}

/* Icono cerrar (X) */
.modalCloseIcon {
    position: absolute;
    top: 15px;
    right: 15px;
    font-size: 24px;
    color: #aaa;
    cursor: pointer;
    transition: color 0.3s ease;
}

    .modalCloseIcon:hover {
        color: #555;
    }

/* Título del modal */
.modalTitleValidation {
    font-size: 22px;
    font-weight: bold;
    margin-bottom: 20px;
    text-align: center;
}

/* Mensajes de error */
.errorMessageValidation {
    color: rgb(230, 123, 123) !important;
    display: block;
    margin: 8px 0;
    font-size: 16px;
    text-decoration: underline;
    cursor: pointer;
}

/* Botón de cerrar */
#buttonClose {
    background: none;
    border: none;
    color: #000;
    padding: 10px;
    font-size: 16px;
    cursor: pointer;
    display: block;
    margin: 0 auto;
}




/* ========================
   Header Sticky
   ======================== */

header.sticky-header {
    position: sticky;
    top: 0;
    z-index: 1050;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
    margin-bottom: 0 !important;
}

    header.sticky-header,
    .navbar,
    .navbar:after,
    .navbar:before,
    header.sticky-header:after,
    header.sticky-header:before,
    .navbar-nav,
    .navbar-nav li,
    .navbar-collapse,
    .pushbar {
        border: none !important;
        box-shadow: none !important;
    }

        header.sticky-header + * {
            margin-top: 0 !important;
            border-top: none !important;
        }

/* ========================
   NAVBAR
   ======================== */

.navbar {
    background-color: #214964 !important;
    border: none !important;
}

.navbar-nav .nav-link,
.navbar-nav .nav-link i {
    color: white !important;
    transition: color 0.3s ease, background-color 0.3s ease;
}

.navbar-nav > .nav-item > .nav-link:hover,
.navbar-nav > .nav-item > .nav-link:focus {
    background-color: #214964 !important;
    color: #FFC637 !important;
}

    .navbar-nav > .nav-item > .nav-link:hover i,
    .navbar-nav > .nav-item > .nav-link:focus i {
        color: #FFC637 !important;
    }

.nav-link.dropdown-toggle::after {
    display: none !important;
}

/* Dropdown Menu */
.dropdown-menu.about {
    background-color: #3586BB;
    border-radius: 8px;
    border: none;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}

.dropdown-menu .dropdown-item:hover,
.dropdown-menu .dropdown-item:focus {
    background-color: #214964 !important;
    color: #FFC637 !important;
}

    .dropdown-menu .dropdown-item:hover i,
    .dropdown-menu .dropdown-item:focus i {
        color: #FFC637 !important;
    }

/* Sell Button */
.sell-button {
    background-color: transparent;
    color: white;
    border: 2px solid white;
    border-radius: 30px;
    padding: 8px 20px;
    font-weight: bold;
    transition: all 0.3s ease;
    box-shadow: 0 2px 6px rgba(255, 255, 255, 0.2);
}

    .sell-button:hover {
        background-color: transparent;
        color: #FFC637;
        border-color: #FFC637;
        box-shadow: 0 4px 10px rgba(255, 198, 55, 0.3);
    }

.navbar-toggler {
    margin-left: auto;
}

/* Mobile Navbar */
@media (max-width: 767.98px) {
    .navbar {
        position: relative;
    }

    .navbar-brand {
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        z-index: 2;
    }

        .navbar-brand img {
            height: 28px;
            width: auto;
        }
}

/* Mobile Modal & Menu */
.pushbar.from_right {
    width: 100% !important;
    height: 100vh !important;
    background-color: #214964;
    padding: 20px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    z-index: 1050;
}

.full-screen-menu {
    width: 100vw !important;
    height: 100vh !important;
    background-color: #214964;
    padding: 20px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    position: fixed;
    top: 0;
    right: 0;
    z-index: 1100;
}

.menu-header {
    width: 100%;
    padding: 0 10px;
}

.logo-mobile img {
    max-width: 150px;
    height: auto;
}

.btn-close-menu {
    background: transparent;
    border: none;
    padding: 10px;
}

.close-icon {
    width: 32px;
    height: 32px;
    filter: brightness(0) invert(1);
    cursor: pointer;
}

/* Ícono de búsqueda SOLO en desktop */
@media (min-width: 992px) {
    .navbar-search .svg-icon {
        width: 25px; /* ajusta el tamaño */
        height: 21px; /* asegura proporción */
    }
}

.mobile-sell-button-container {
    margin-left: 12px;
    margin-top: 25px;
    width: 25%;
    min-width: 100px;
}

.mobile-divider {
    width: 100%;
    height: 1px;
    margin: 20px 0;
    background: rgba(255, 255, 255, 0.2);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    border: none;
}

.nav-item.notif-item .notif-icon {
    width: 30px;
    height: 30px;
}

/* Ajustar el contenedor del ícono si es necesario */
.nav-item.notif-item .circle-icon {
    width: 38px;
    height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}