﻿/* 🔹 Contenedor general */
.contenedor {
    display: flex;
    flex-direction: row;
    gap: 1.5rem;
    padding: 1.5rem;
    width: 100%;
    box-sizing: border-box;
    background: var(--neutral-layer-2);
    color: var(--neutral-foreground-rest);
}

/* 🔹 Sección principal (40%) */
.seccion-principal {
    flex: 0 0 35%;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

/* 🔹 Sección secundaria (60%) */
.seccion-secundaria {
    flex: 65%;
    display: flex;
    flex-direction: column;
    background: var(--neutral-layer-2);
    color: var(--neutral-foreground-rest);
    border-radius: 1rem;
    padding: 1rem 1.5rem;
    box-shadow: 0 4px 12px rgba(0,0,0,0.08);
}

/* 🔹 Sección de filtros moderna */
.filtros {
    /* Fondo con gradiente moderno */
    background: linear-gradient( 145deg, color-mix(in srgb, var(--accent-fill-rest) 95%, #ffffff 15%) 0%, color-mix(in srgb, var(--accent-fill-rest) 80%, #ff9d76 10%) 40%, color-mix(in srgb, var(--accent-fill-rest) 70%, #6a5acd 20%) 75%, color-mix(in srgb, var(--accent-fill-rest) 60%, #00c6ff 15%) 100% );
    /* Opcional: efecto ligero de brillo */
    background-blend-mode: soft-light;
    padding: 5px; /* más espacio para un look más “aireado” */
    border-radius: 1rem; /* bordes más redondeados y modernos */
    display: flex;
    flex-wrap: wrap;
    box-shadow: 0 4px 12px rgba(0,0,0,0.08); /* sombra suave para profundidad */
}

.filtros-generales {
    padding: 0.5rem; /* más espacio para un look más “aireado” */
    margin: 0.5rem; /* más espacio para un look más “aireado” */
    border-radius: 1rem; /* bordes más redondeados y modernos */
    display: flex;
    border: 1px solid var(--accent-fill-rest);
    flex-wrap: wrap;
    box-shadow: 0 4px 12px rgba(0,0,0,0.08); /* sombra suave para profundidad */
}


/* Responsividad: en pantallas pequeñas se apilan verticalmente */
@media (max-width: 768px) {
    .filtros {
        flex-direction: column;
        align-items: stretch;
    }
}


/* 🔹 Tarjetas */
.tarjeta {
    background: #fff;
    border-radius: 1rem;
    padding: 1.25rem;
    box-shadow: 0 6px 14px rgba(0,0,0,0.06);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

    .tarjeta:hover {
        transform: translateY(-5px);
        box-shadow: 0 8px 20px rgba(0,0,0,0.12);
    }

.fila-flex {
    display: flex;
    flex-wrap: wrap; /* Permite que las columnas bajen si no caben */
    width: 100%;
    gap: 10px; /* Espacio entre columnas */
    box-sizing: border-box;
}

.columna-flex {
    flex: 1 1 0; /* Cada columna ocupa el mismo espacio disponible */
    min-width: 250px; /* Evita que se encoja demasiado */
    padding: 5px 10px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
}


.contenedor-flex-filtro {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 5px 20px;
    margin-top: 15px;
    box-sizing: border-box;
    border-radius: 14px;
    background-blend-mode: soft-light;
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.15), 0 2px 6px rgba(0, 0, 0, 0.1);
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.contenedor-flex-barra {
    display: flex;
    align-items: center;
    padding: 10px 20px;
    box-sizing: border-box;
    border-radius: 14px;
    gap:1rem;
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.15), 0 2px 6px rgba(0, 0, 0, 0.1);
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}

/* 🔹 Responsivo */
@media (max-width: 1024px) {
    .contenedor {
        flex-direction: column;
    }

    .seccion-principal,
    .seccion-secundaria {
        flex: 1 1 100%;
    }
}

.fila-hrz {
    display: flex;
    flex-direction: row; /* horizontal */
    gap: 1rem; /* espacio entre columnas */
    align-items: center; /* centra verticalmente los controles */
}

.columna-hrz {
    flex: 1; /* cada columna ocupa mismo espacio */
}