/* Styling for vehicle type filter buttons */
.vehicle-type-filter {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
    list-style: none !important;
    padding: 0 !important;
    margin-top: 15px !important;
}

/* Hide native input and Bricks indicator */
.vehicle-type-filter input[type="radio"],
.vehicle-type-filter .brx-input-indicator,
.vehicle-type-filter .brx-option-text {
    display: none !important;
}

/* Restore text for the "All" option, hide its empty icon space */
.vehicle-type-filter .brx-option-all .brx-option-text {
    display: inline-block !important;
    color: #fff !important;
    font-weight: 600 !important;
    font-size: 14px !important;
}
.vehicle-type-filter .brx-option-all label::before {
    display: none !important;
}

/* Style the label as the button block */
.vehicle-type-filter label {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #2566b5 !important;
    padding: 10px !important;
    border-radius: 4px !important;
    cursor: pointer !important;
    transition: background 0.2s ease, transform 0.2s ease !important;
    margin: 0 !important;
    min-width: 44px;
    min-height: 44px;
}

.vehicle-type-filter label:hover {
    background: #1a4985 !important;
    transform: translateY(-1px) !important;
}

/* Active state */
.vehicle-type-filter .brx-option-active label,
.vehicle-type-filter label.brx-option-active {
    background: #143560 !important;
}

/* Base icon styles */
.vehicle-type-filter label::before {
    content: '';
    display: inline-block;
    width: 24px;
    height: 24px;
    background-color: transparent;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    filter: brightness(0) invert(1);
}

/* ----------------------------------
   HIDE CHILD ITEMS (oplegger, aanhanger)
   (Note: These are now also dynamically hidden via PHP, but we keep this for fallback)
   ---------------------------------- */
.vehicle-type-filter li:has(input[value="6"]),
.vehicle-type-filter li:has(input[value="oplegger"]),
.vehicle-type-filter li:has(input[value="9"]),
.vehicle-type-filter li:has(input[value="aanhanger"]) {
    display: none !important;
}

/* TOOLTIPS OP HOVER (Puur CSS) */
.vehicle-type-filter label {
    position: relative !important;
    overflow: visible !important;
}

.vehicle-type-filter li:not(.brx-option-all) label::after, 
.vehicle-type-filter label:has(input[value=""])::after {
    content: attr(data-tooltip);
    position: absolute;
    bottom: calc(100% + 8px);
    left: 50%;
    transform: translateX(-50%) translateY(5px);
    background: #143560; /* Donkerblauw, passend bij thema */
    color: #fff;
    padding: 6px 12px;
    border-radius: 4px;
    font-size: 13px;
    white-space: nowrap;
    pointer-events: none;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.2s ease, transform 0.2s ease;
    z-index: 99;
    font-weight: 500;
    text-transform: none;
    box-shadow: 0 3px 6px rgba(0,0,0,0.15);
}

.vehicle-type-filter li:not(.brx-option-all) label:hover::after, 
.vehicle-type-filter label:has(input[value=""]):hover::after {
    opacity: 1;
    visibility: visible;
    transform: translateX(-50%) translateY(0);
}


.vehicle-type-filter .brx-option-all label::after,
.vehicle-type-filter label:has(input[value=""])::after {
    display: none !important;
}


/* Styling for Transporteurs filter */
.brand-filter {
    display: inline-flex !important;
    background-color: #f1f2f6 !important;
    border-radius: 8px !important;
    padding: 5px !important;
    gap: 5px !important;
    list-style: none !important;
    margin-top: 15px !important;
    margin-bottom: 20px !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    max-width: 100% !important;
}
/* Hide the scrollbar for a cleaner look */
.brand-filter::-webkit-scrollbar {
    display: none;
}
/* Hide the post count (0) */
.brand-filter .brx-option-count {
    display: none !important;
}

.brand-filter li {
    margin: 0 !important;
    padding: 0 !important;
}

.brand-filter input[type="radio"],
.brand-filter .brx-input-indicator {
    display: none !important;
}

.brand-filter label {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 8px 18px !important;
    border-radius: 6px !important;
    cursor: pointer !important;
    background-color: transparent !important;
    color: #082F5F !important;
    font-weight: 500 !important;
    font-size: 15px !important;
    transition: all 0.2s ease !important;
    margin: 0 !important;
    white-space: nowrap !important;
}

.brand-filter label:hover {
    background-color: rgba(20, 53, 96, 0.05) !important;
}

.brand-filter .brx-option-active label,
.brand-filter label.brx-option-active {
    background-color: #ffffff !important;
    box-shadow: 0 1px 4px rgba(0,0,0,0.08) !important;
}
.brand-filter .brx-option-active .brx-option-text,
.brand-filter label.brx-option-active .brx-option-text {
    color: #082F5F !important;
    font-weight: 600 !important;
}

.brand-filter .brx-option-text {
    display: inline-block !important;
    color: #082F5F !important;
    white-space: nowrap !important;
}
