/* /Components/Common/FilterContainer.razor.rz.scp.css */
/* ============================================
   ESTILOS SCOPEADOS PARA FILTER CONTAINER
   ============================================ */

/* CONTENEDOR PRINCIPAL */
.filter-container[b-ghgjfao63x] {
    display: flex;
    flex-shrink: 0;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem 0;
}
/* /Components/Common/Popup.razor.rz.scp.css */
/* ============================================
   ESTILOS SCOPEADOS PARA POPUP
   ============================================ */

/* OVERLAY DEL POPUP - BASE */
.popup-overlay[b-vuwbquiunp] {
    position: fixed;
    inset: 0;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 50;
    display: flex;
    justify-content: center;
    animation: fadeIn-b-vuwbquiunp 0.2s ease-out;
}

/* OVERLAY - POSICI�N BOTTOM (m�vil-first) */
.popup-overlay-bottom[b-vuwbquiunp] {
    align-items: flex-end;
}

/* OVERLAY - POSICI�N CENTER */
.popup-overlay-center[b-vuwbquiunp] {
    align-items: center;
}

/* CONTENIDO DEL POPUP - BASE */
.popup-content[b-vuwbquiunp] {
    background-color: var(--color-neutral-50);
    width: 100%;
    display: flex;
    flex-direction: column;
    box-shadow: 0 -4px 6px -1px rgba(0, 0, 0, 0.1);
    overflow: hidden;
}

/* CONTENIDO - POSICI�N BOTTOM */
.popup-content-bottom[b-vuwbquiunp] {
    border-radius: 1rem 1rem 0 0;
    max-height: 85vh;
    animation: slideUp-b-vuwbquiunp 0.3s ease-out;
}

/* CONTENIDO - POSICI�N CENTER */
.popup-content-center[b-vuwbquiunp] {
    border-radius: 1rem !important;
    max-height: 90vh;
    max-width: 90vw;
    animation: scaleIn-b-vuwbquiunp 0.3s ease-out;
}

/* HEADER DEL POPUP */
.popup-header[b-vuwbquiunp] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem 1.5rem;
    border-bottom: 1px solid var(--color-neutral-200);
    flex-shrink: 0;
}

/* BODY DEL POPUP (SCROLLABLE) */
.popup-body[b-vuwbquiunp] {
    flex: 1;
    overflow-y: auto;
    padding: 1.5rem;
}

/* Cuando el body es el �ltimo hijo (no hay footer), redondear esquinas inferiores en popups CENTER */
.popup-content-center .popup-body:last-child[b-vuwbquiunp] {
    border-radius: 0 0 1rem 1rem;
}

/* FOOTER DEL POPUP */
.popup-footer[b-vuwbquiunp] {
    display: flex;
    gap: 0.5rem;
    padding: 1rem 1.5rem;
    border-top: 1px solid var(--color-neutral-200);
    background-color: var(--color-neutral-50);
    flex-shrink: 0;
    border-radius: 0 0 1rem 1rem;
}

/* ============================================
   ANIMACIONES
   ============================================ */

@keyframes fadeIn-b-vuwbquiunp {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

/* Animaci�n para popup BOTTOM - desliza desde abajo */
@keyframes slideUp-b-vuwbquiunp {
    from {
        transform: translateY(100%);
    }
    to {
        transform: translateY(0);
    }
}

/* Animaci�n para popup CENTER - escala desde el centro */
@keyframes scaleIn-b-vuwbquiunp {
    from {
        transform: scale(0.9);
        opacity: 0;
    }
    to {
        transform: scale(1);
        opacity: 1;
    }
}

/* ============================================
   RESPONSIVE: AJUSTES PARA PANTALLAS GRANDES
   ============================================ */

/* Para popups BOTTOM: centrar en pantallas grandes */
@media (min-width: 640px) {
    .popup-overlay-bottom[b-vuwbquiunp] {
        align-items: center;
    }

    .popup-content-bottom[b-vuwbquiunp] {
        border-radius: 1rem;
        max-width: 600px;
        max-height: 90vh;
    }
    
    /* Cuando el body es el �ltimo hijo en BOTTOM desktop, redondear esquinas inferiores */
    .popup-content-bottom .popup-body:last-child[b-vuwbquiunp] {
        border-radius: 0 0 1rem 1rem;
    }
    
    /* Footer en BOTTOM desktop tambi�n con esquinas redondeadas */
    .popup-content-bottom .popup-footer[b-vuwbquiunp] {
      border-radius: 0 0 1rem 1rem;
    }
}

@media (min-width: 768px) {
    .popup-content-bottom[b-vuwbquiunp] {
        max-width: 700px;
    }
}

@media (min-width: 1024px) {
    .popup-content-bottom[b-vuwbquiunp] {
        max-width: 800px;
    }
}

/* Para popups CENTER: ajustar tama�o m�ximo (border-radius ya est� definido arriba con !important) */
@media (min-width: 640px) {
    .popup-content-center[b-vuwbquiunp] {
      max-width: 600px;
    }
}

@media (min-width: 768px) {
    .popup-content-center[b-vuwbquiunp] {
        max-width: 700px;
    }
}

@media (min-width: 1024px) {
    .popup-content-center[b-vuwbquiunp] {
        max-width: 800px;
    }
}
/* /Layout/MainLayout.razor.rz.scp.css */
.page[b-ex30e1xh8j] {
    position: relative;
    display: flex;
    flex-direction: column;
}

main[b-ex30e1xh8j] {
    flex: 1;
}

.sidebar[b-ex30e1xh8j] {
    background-color: var(--color-neutral-50);
}

@media (min-width: 768px) {
    .page[b-ex30e1xh8j] {
        flex-direction: row;
    }

    .sidebar[b-ex30e1xh8j] {
        width: 80px;
        height: 100vh;
        position: sticky;
        top: 0;
        border-right-width: 1px;
        border-right-color: var(--color-neutral-300);
    }
}

#blazor-error-ui[b-ex30e1xh8j] {
    background-color: var(--color-yellow-100, #fef3c7);
    border-color: var(--color-yellow-800);
    border-width: 2px;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

#blazor-error-ui .dismiss[b-ex30e1xh8j] {
    cursor: pointer;
    position: absolute;
    right: 3.5rem;
    top: 0.75rem;
    color: var(--color-yellow-800, #92400e);
}

#blazor-error-ui .reload[b-ex30e1xh8j] {
    color: var(--color-yellow-800, #92400e);
}

blazor-error-boundary[b-ex30e1xh8j] {
    background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTYiIGhlaWdodD0iNDkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIG92ZXJmbG93PSJoaWRkZW4iPjxkZWZzPjxjbGlwUGF0aCBpZD0iY2xpcDAiPjxyZWN0IHg9IjIzNSIgeT0iNTEiIHdpZHRoPSI1NiIgaGVpZ2h0PSI0OSIvPjwvY2xpcFBhdGg+PC9kZWZzPjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMCkiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMzUgLTUxKSI+PHBhdGggZD0iTTI2My41MDYgNTFDMjY0LjcxNyA1MSAyNjUuODEzIDUxLjQ4MzcgMjY2LjYwNiA1Mi4yNjU4TDI2Ny4wNTIgNTIuNzk5NSAyNjcuNTI5IDUzLjYyODMgMjkwLjE4NSA5Mi4xODMxIDI5MC41NDUgOTIuNzk1IDI5MC42NTYgOTIuOTk2QzI5MC44NzcgOTMuNTEzIDI5MSA5NC4wODE1IDI5MSA5NC42NzgyIDI5MSA5Ny4wNjUxIDI4OS4wMzggOTkgMjg2LjYxNyA5OUwyNDAuMzgzIDk5QzIzNy45NjMgOTkgMjM2IDk3LjA2NTEgMjM2IDk0LjY3ODIgMjM2IDk0LjM3OTkgMjM2LjAzMSA5NC4wODg2IDIzNi4wODkgOTMuODA3MkwyMzYuMzM4IDkzLjAxNjIgMjM2Ljg1OCA5Mi4xMzE0IDI1OS40NzMgNTMuNjI5NCAyNTkuOTUxIDUyLjc5ODUgMjYwLjM5NyA1Mi4yNjU4QzI2MS4xODkgNTEuNDgzNyAyNjIuMjg1IDUxIDI2My41MDYgNTFaTTI2My41ODYgNjYuMUMyNjIuOTg2IDY2LjEgMjYyLjQ4NiA2Ni41MzMzIDI2Mi4zMDYgNjcuMTAwMkwyNjIuMjY5IDY3LjMzNzggMjYxLjY5NSA4Mi40MzcxIDI2MS41NDUgODMuMTM4MSAyNjEuNTQzIDgzLjE4ODUgMjYxLjU0MiA4My4yMDg1IDI2MS41NDIgODMuNTI1MSAyNjEuNTQzIDgzLjYwNDUgMjYxLjU0OSA4My42ODUzIDI2MS41NjQgODMuNzY4QzI2MS44ODkgODQuNjM5MyAyNjIuNjgyIDg1LjI1MTEgMjYzLjU4NiA4NS4yNTExIDI2NC40NTkgODUuMjUxMSAyNjUuMjM4IDg0LjY3NyAyNjUuNTggODMuODQzNCAyNjUuNTk0IDgzLjc2MzUgMjY1LjYwMSA4My42ODQ0IDI2NS42MDYgODMuNjA1OCAyNjUuNjA5IDgzLjUyNTEgMjY1LjYwOCA4My4zODU2IDI2NS42MDEgODMuMTkyMyAyNjUuMDExIDY3LjMzODEgMjY0Ljg3NSA2Ni42MDk3IDI2NC42ODggNjYuMTE2QzI2NC40NTkgNjUuNTAxMyAyNjMuOTE2IDY2LjEgMjYzLjU4NiA2Ni4xWk0yNjMuNTkxIDcxLjk4OTdDMjYyLjUyMiA3MS45ODk3IDI2MS42NTggNzIuODY0MSAyNjEuNjU4IDczLjk1ODggMjYxLjY1OCA3NS4wNTM1IDI2Mi41MjIgNzUuOTI3OSAyNjMuNTkxIDc1LjkyNzkgMjY0LjY2IDc1LjkyNzkgMjY1LjUyNCA3NS4wNTM1IDI2NS41MjQgNzMuOTU4OCAyNjFubTUCMTYwLjA0MiA0NmMwIDAgMTYuMjY1IDAgMzQuMzYyIDAgNTAuMzYyIDAgNjQuMjAwIDAgNy43MjA4MiBxLTQuNDM5NiAwLTEuOTI0IDItMi41NjYtMy4zOTY2QzI3OS43MzkgMjY0LjY2IDY5LjI3NCAyMDIuNzY2IDEzLjIEN24uNTY0OS0xMy4xMTY2IDMuMjItLjVjOS43NzkuNDkuMTYzNiA5MC4zNy42OC4zYy0yOC45OTQg...
/* /Layout/NavMenu.razor.rz.scp.css */
.navbar-toggler[b-n7um2ahhtx] {
    appearance: none;
    cursor: pointer;
    width: 3.5rem;
    height: 2.5rem;
    position: absolute;
    top: 0.5rem;
    right: 1rem;
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") no-repeat center/1.75rem rgba(255, 255, 255, 0.1);
}

.navbar-toggler:checked[b-n7um2ahhtx] {
    background-color: rgba(255, 255, 255, 0.5);
}

.top-row[b-n7um2ahhtx] {
    min-height: 3.5rem;
    background-color: rgba(0,0,0,0.4);
}

.navbar-brand[b-n7um2ahhtx] {
    font-size: 1.1rem;
}

/* Hidden by default; overlay on small screens; persistent from md */
.nav-scrollable[b-n7um2ahhtx] {
    display: none;
}

.nav-scrollable.open[b-n7um2ahhtx] {
    display: block;
}

/* Overlay behavior for small screens */
@media (max-width:767.98px) {
    .nav-scrollable[b-n7um2ahhtx] {
    position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
  width: 100vw;
        height: 100vh;
      z-index: 40; /* below toggle button */
        background-color: var(--color-neutral-50);
    }
}

/* Persistent sidebar from md */
@media (min-width:768px) {
    .navbar-toggler[b-n7um2ahhtx] {
        display: none;
    }

    .nav-scrollable[b-n7um2ahhtx] {
        display: block;
        position: static;
        height: 100vh;
        overflow-y: auto;
    z-index: auto;
    }
}

/* Layout and spacing */
.nav[b-n7um2ahhtx] {
    display: flex;
    flex-direction: column;
    min-height: 100%;
}

.nav-main[b-n7um2ahhtx] {
    flex: 0 0 auto;
}

.nav-footer[b-n7um2ahhtx] {
    margin-top: auto;
    padding-bottom: 1rem;
}

/* Item visuals */
.nav-item[b-n7um2ahhtx] {
    font-size: 0.9rem;
    padding: 0;
    margin: 0;
}

.nav-item[b-n7um2ahhtx]  .nav-link {
    background: none;
    border: none;
    border-radius: 0;
    height: 4rem;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 3rem;
    width: 100%;
    position: relative;
    overflow: visible;
    padding: 0.25rem 1.25rem;
    box-sizing: border-box;
}

.nav-item[b-n7um2ahhtx]  a.active {
    background-color: var(--color-primary-50);
    border-radius: 0.5rem;
}

/* Dark mode: background del recuadro cuando est� seleccionado */
.dark .nav-item[b-n7um2ahhtx]  a.active {
    background-color: var(--color-primary-300);
    border-radius: 0.5rem;
}

.nav-item[b-n7um2ahhtx]  .nav-link:hover {
    background-color: var(--color-neutral-100);
    border-radius: 0.5rem;
}

/* Dark mode: background en hover */
.dark .nav-item[b-n7um2ahhtx]  .nav-link:hover {
    background-color: var(--color-neutral-500);
    border-radius: 0.5rem;
}

/* Dark mode: color de iconos cuando el link est� activo */
.dark .nav-item[b-n7um2ahhtx]  a.active span {
    color: var(--color-primary-600);
}

/* Ensure isotipo logo stays perfectly square on all sizes */
.nav .nav-item[b-n7um2ahhtx]  img {
    width: 3rem;
    height: 3rem;
    object-fit: contain;
    aspect-ratio: 1 / 1;
}

/* Left-align items on small screens and add larger left padding */
.nav .nav-item[b-n7um2ahhtx]  .nav-link {
    justify-content: flex-start;
    padding-left: 1.5rem;
}
