
.filtros-blog-wrapper,
.filtros-blog-wrapper.bg-dark {
  background: #ffffff !important;
  background-color: #ffffff !important;
  border: 2px solid #000 !important;
  border-radius: 8px !important;
  padding: 2rem !important;
  max-width: 1400px !important; /* Mismo ancho que el grid de posts */
  width: 100% !important;
  margin: 0 auto 2rem;
}

/* Eliminar clase bg-dark y text-white del HTML si existe */
.filtros-blog-wrapper * {
  color: inherit;
}

/* Ocultar botones inicialmente */
.filtros-blog-wrapper .d-flex.mt-4 {
  display: none !important;
}

/* Mostrar botones cuando se activa */
.filtros-blog-wrapper.active .d-flex.mt-4 {
  display: flex !important;
}

/* Acordeón en horizontal - FONDO BLANCO */
.filtros-blog-wrapper .accordion {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0;
  border-top: 2px solid #000;
  background: #fff !important;
}

/* Items del acordeón - FONDO BLANCO */
.filtros-blog-wrapper .accordion-item,
.filtros-blog-wrapper .accordion-item.bg-dark {
  background: #ffffff !important;
  background-color: #ffffff !important;
  border: none !important;
  border-right: 2px solid #000 !important;
  border-bottom: 2px solid #000 !important;
}

.filtros-blog-wrapper .accordion-item:last-child {
  border-right: none !important;
}

/* Headers - TEXTO NEGRO en FONDO BLANCO */
.filtros-blog-wrapper .accordion-button,
.filtros-blog-wrapper .accordion-button.bg-dark,
.filtros-blog-wrapper .accordion-button.text-white {
  background: #ffffff !important;
  background-color: #ffffff !important;
  color: #000000 !important;
  border: none !important;
  font-size: 1.125rem;
  font-weight: 600;
  padding: 1rem 1.5rem;
  justify-content: center;
  text-align: center;
}

.filtros-blog-wrapper .accordion-button:focus {
  box-shadow: none;
  background: #ffffff !important;
}

.filtros-blog-wrapper .accordion-button:not(.collapsed) {
  background: #f5f5f5 !important;
  color: #000 !important;
}

.filtros-blog-wrapper .accordion-button::after {
  filter: none !important;
  margin-left: 0.5rem;
}

/* Contenido que se expande */
.filtros-blog-wrapper .accordion-collapse {
  grid-column: 1 / -1;
  background: #fff !important;
}

/* Cuerpo del acordeón - FONDO BLANCO */
.filtros-blog-wrapper .accordion-body {
  padding: 1.5rem;
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  border-top: 1px solid rgba(0,0,0,0.1);
  background: #ffffff !important;
  background-color: #ffffff !important;
}

/* Ocultar checkboxes nativos */
.filtros-blog-wrapper .form-check {
  margin: 0;
  padding: 0;
}

.filtros-blog-wrapper .form-check-input {
  display: none;
}

/* Pills - TEXTO NEGRO con borde */
.filtros-blog-wrapper .form-check-label {
  display: inline-block;
  padding: 0.5rem 1.25rem;
  background: transparent;
  color: #000 !important;
  border: 1px solid #000;
  border-radius: 4px;
  cursor: pointer;
  transition: all 0.2s ease;
  font-size: 0.9375rem;
  font-weight: 400;
  margin: 0;
  white-space: nowrap;
}

.filtros-blog-wrapper .form-check-label:hover {
  background: rgba(0,0,0,0.05);
  border-color: #000;
  color: #000 !important;
}

/* Estado seleccionado - FONDO NEGRO */
.filtros-blog-wrapper .form-check-input:checked + .form-check-label {
  background: #4E61F6 !important;
  color: #fff !important;
  border-color: #000;
  font-weight: 500;
}

/* Badge contador */
.filtros-blog-wrapper .badge {
  font-size: 0.75rem;
  padding: 0.25rem 0.5rem;
  font-weight: 600;
  margin-left: 0.5rem;
  background: #4E61F6 !important;
  color: #fff !important;
}

/* Botones de acción */
.filtros-blog-wrapper .d-flex {
  margin-top: 2rem;
  justify-content: flex-end;
  gap: 1rem;
}

.filtros-blog-wrapper #borrarFiltros,
.filtros-blog-wrapper #borrarFiltros.text-white {
  color: #000 !important;
  text-decoration: none;
  padding: 0.625rem 1.5rem;
  font-weight: 500;
  border: 1px solid #000;
  border-radius: 4px;
  background: transparent !important;
}

.filtros-blog-wrapper #borrarFiltros:hover {
  background: #4E61F6 !important;
  color: #f8f9fa !important;
}

.filtros-blog-wrapper #aplicarFiltros {
  background: #4E61F6 !important;
  border-color: #4E61F6 !important;
  color: white !important;
  padding: 0.625rem 2rem;
  font-weight: 600;
  border-radius: 4px;
}

.filtros-blog-wrapper #aplicarFiltros:hover {
  background: #4E61F6 !important;
  border-color: #4E61F6 !important;
}

/* Responsive */
@media (max-width: 991px) {
  .filtros-blog-wrapper .accordion {
    grid-template-columns: 1fr;
  }
  
  .filtros-blog-wrapper .accordion-item {
    border-right: none !important;
  }
  
  .filtros-blog-wrapper .accordion-collapse {
    grid-column: auto;
  }
}

@media (max-width: 768px) {
  .filtros-blog-wrapper {
    padding: 1rem !important;
  }
  
  .filtros-blog-wrapper .accordion-body {
    gap: 0.5rem;
    padding: 1rem;
  }
  
  .filtros-blog-wrapper .form-check-label {
    font-size: 0.875rem;
    padding: 0.4rem 1rem;
  }
}