 .filters {
     padding: 1rem 2rem;
     max-width: 1400px;
     margin: 0 auto;
     position: relative;
 }

 .filters__container {
     background: white;
     border-radius: 24px;
     padding: 1rem 2rem;
     box-shadow: var(--shadow-lg);
     border: 1px solid rgb(255 255 255 / 0.2);
     backdrop-filter: blur(20px);
     position: relative;
 }

 .filters__block {
     margin-bottom: 2rem;
 }

 .filters__header {
     margin-bottom: 1.5rem;
 }

 .filters__title {
     font-size: 1.5rem;
     margin: 0;
     text-align: center;
     color: var(--color-text);
 }

 .filters__inputs {
     display: grid;
     grid-template-columns: repeat(5, 1fr);
     gap: 0.5rem;
 }

 .filters__input-group {
     position: relative;
     transition: var(--transition-default);
 }

 .filters__input-group:hover {
     transform: translateY(-2px);
 }

 .filters__input-group:hover .filters__label {
     color: var(--color-primary);
 }

 .filters__label {
     display: block;
     font-size: 0.875rem;
     font-weight: 600;
     color: var(--color-text);
     margin-bottom: 0.25rem;
     transition: var(--transition-default);
 }

 .filters__select-wrapper {
     position: relative;
 }

 .filters__select {
     width: 100%;
     padding: 0.75rem 1rem;
     border: 2px solid var(--color-primary);
     border-radius: 16px;
     font-size: 0.9rem;
     color: var(--color-text);
     background: white;
     transition: var(--transition-default);
     outline: none;
     cursor: pointer;
     appearance: none;
     background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");
     background-position: right 0.75rem center;
     background-repeat: no-repeat;
     background-size: 1.25em 1.25em;
     padding-right: 2.5rem;
 }

 .filters__select:hover {
     border-color: var(--color-primary);
     box-shadow: var(--shadow-lg);
 }

 .filters__select:focus {
     border-color: var(--color-primary);
     box-shadow: 0 0 0 3px rgb(0 124 184 / 0.1);
     transform: translateY(-1px);
     background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%23007cb8' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");
 }

 .filters__actions {
     display: flex;
     justify-content: center;
     align-items: center;
     flex-wrap: wrap;
     gap: 1rem;
     margin-top: 1rem;
 }

 .filters__button {
     animation: fadeIn 0.3s ease;
     display: inline-flex;
     align-items: center;
     gap: 0.5rem;
     padding: 0.75rem 1.5rem;
     border-radius: 12px;
     border: none;
     font-weight: 600;
     cursor: pointer;
 }

 .filters__button--clear {
     background-color: var(--color-warning);
     color: #fff;
 }

 .filters__button--primary {
     background-color: var(--color-primary);
     color: #fff;
 }

 .filters__button:focus {
     outline: none;
     box-shadow: 0 0 0 3px rgba(0, 124, 184, 0.3);
 }

 .filters__icon {
     width: 18px;
     height: 18px;
     transition: transform 0.3s ease, opacity 0.3s ease;
 }

 .filters__button:hover .filters__icon {
     transform: scale(1.2) rotate(8deg);
 }

 /* BOTÓN FLOTANTE */
 .filters__floating-btn {
     position: fixed;
     bottom: 2rem;
     right: 2rem;
     width: 64px;
     height: 64px;
     background: var(--gradient-primary);
     border: none;
     border-radius: 50%;
     color: white;
     font-size: 1.5rem;
     cursor: pointer;
     transition: var(--transition-default);
     z-index: 1000;
     opacity: 0;
     visibility: hidden;
     transform: translateY(20px);
     display: flex;
     align-items: center;
     justify-content: center;
 }

 .filters__floating-btn:hover {
     transform: translateY(-3px) scale(1.1);
     box-shadow: 0 20px 40px rgb(0 124 184 / 0.3);
     transition: all .3s ease;
 }

 .filters__floating-btn:hover::after {
     opacity: 1;
     visibility: visible;
 }

 .filters__floating-btn:active {
     transform: translateY(-1px) scale(1.05);
 }

 .filters__floating-btn svg {
     width: 24px;
     height: 24px;
 }

 .filters__floating-btn--visible {
     opacity: 1;
     visibility: visible;
     transform: translateY(0);
 }

 .filters__floating-btn--pulse {
     animation: pulse 2s infinite;
 }

 /* RESPONSIVE */
 @media (max-width: 768px) {
     .filters {
         padding: 1rem;
     }

     .filters__container {
         padding: 0.5rem 1rem;
     }

     .filters__header {
         margin-bottom: 0.5rem;
     }

     .filters__title {
         font-size: 1rem;
         text-align: center;
     }

     .filters__inputs {
         display: flex;
         flex-direction: column;
         gap: 1rem;
     }

     .filters__label {
         font-size: 0.8rem;
         margin-bottom: 0.25rem;
     }

     .filters__select {
         font-size: 0.85rem;
         padding: 0.5rem;
     }

     .filters__actions {
         flex-direction: column-reverse;
     }

     .filters__button {
         font-size: 0.9rem;
         padding: 0.75rem 1.5rem;
     }
 }

 @keyframes pulse {
     0% {
         box-shadow: 0 4px 50px rgba(217, 67, 154, 0.3);
     }

     50% {
         box-shadow: 0 4px 100px rgba(217, 67, 154, 0.5);
     }

     100% {
         box-shadow: 0 4px 50px rgba(217, 67, 154, 0.3);
     }
 }