/**
 * WPBravo Location Filter — Public CSS
 */
.wblf-filter-wrap{--wblf-accent:#8b0032;--wblf-accent-h:#6d0027;--wblf-border:#e0e0e0;--wblf-text:#1d2327;--wblf-muted:#757575;--wblf-radius:4px;background:#fff;border:1px solid var(--wblf-border);border-radius:var(--wblf-radius);overflow:hidden;font-size:.875rem}
.wblf-section{border-bottom:1px solid var(--wblf-border)}.wblf-section:last-of-type{border-bottom:none}
.wblf-section-header{display:flex;align-items:center;padding:12px 16px;gap:6px;user-select:none}
.wblf-section-title{flex:1;font-size:.8125rem;font-weight:700;color:var(--wblf-text);text-transform:uppercase;letter-spacing:.04em}
.wblf-toggle-btn{background:none;border:none;padding:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:3px;transition:background .15s;flex-shrink:0}
.wblf-toggle-btn:hover{background:#f0f0f0}
.wblf-chevron-icon{display:inline-block;width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:6px solid var(--wblf-muted);transition:transform .2s ease}
.wblf-toggle-btn.is-collapsed .wblf-chevron-icon{transform:rotate(-90deg)}
.wblf-reset-btn{background:none;border:1px solid var(--wblf-border);border-radius:3px;padding:2px 8px;font-size:.75rem;color:var(--wblf-accent);cursor:pointer;flex-shrink:0;transition:all .15s}
.wblf-reset-btn:hover{background:var(--wblf-accent);color:#fff;border-color:var(--wblf-accent)}
.wblf-section-body{padding:0 16px 14px}.wblf-section.wblf-collapsed .wblf-section-body{display:none}
.wblf-autocomplete-wrap{position:relative}
.wblf-input,.wblf-location-input{width:100%;height:36px;padding:0 10px;border:1px solid var(--wblf-border);border-radius:var(--wblf-radius);font-size:.875rem;box-sizing:border-box;background:#fff;transition:border-color .15s}
.wblf-input:focus,.wblf-location-input:focus{outline:none;border-color:var(--wblf-accent);box-shadow:0 0 0 2px rgba(139,0,50,.12)}
.wblf-autocomplete-list{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid var(--wblf-border);border-top:none;border-radius:0 0 var(--wblf-radius) var(--wblf-radius);list-style:none;margin:0;padding:0;z-index:9999;box-shadow:0 4px 12px rgba(0,0,0,.1);max-height:200px;overflow-y:auto}
.wblf-ac-item{padding:8px 12px;cursor:pointer;font-size:.875rem;display:flex;align-items:center;gap:6px;transition:background .1s}
.wblf-ac-item:hover,.wblf-ac-item.wblf-ac-focus{background:#f6f0f3;color:var(--wblf-accent)}
.wblf-ac-pin{font-size:.8rem;opacity:.7}
.wblf-location-status{display:block;font-size:.78rem;margin-top:4px;font-style:italic;min-height:1.2em}
.wblf-st-ok{color:#1a7f37}.wblf-st-err{color:#d63638}.wblf-st-loading{color:var(--wblf-muted)}
.wblf-distance-row{display:flex;align-items:center;gap:8px;margin-top:10px}
.wblf-distance-label{font-size:.8rem;color:var(--wblf-muted);white-space:nowrap}
.wblf-select{flex:1;height:34px;padding:0 8px;border:1px solid var(--wblf-border);border-radius:var(--wblf-radius);font-size:.8rem;background:#fff}
.wblf-check-label{display:flex;align-items:center;gap:8px;padding:5px 0;cursor:pointer;font-size:.875rem;color:var(--wblf-text);line-height:1.3}
.wblf-check-label:hover{color:var(--wblf-accent)}
.wblf-checkbox,.wblf-radio{accent-color:var(--wblf-accent);width:14px;height:14px;flex-shrink:0;cursor:pointer}
.wblf-check-text{flex:1}.wblf-count{color:var(--wblf-muted);font-size:.8rem}
.wblf-stars-wrap{display:flex;align-items:center;gap:1px}
.wblf-star{font-size:1rem;color:#ddd;transition:color .1s}.wblf-star.active{color:var(--wblf-accent)}
.wblf-check-label:hover .wblf-star.active{color:var(--wblf-accent-h)}
.wblf-and-up{font-size:.75rem;color:var(--wblf-muted);margin-left:3px}
.wblf-price-badges{display:flex;align-items:center;gap:8px;margin-bottom:12px}
.wblf-price-badge{background:var(--wblf-accent);color:#fff;font-size:.78rem;font-weight:700;padding:3px 10px;border-radius:20px}
.wblf-price-sep{color:var(--wblf-muted)}
.wblf-slider-wrap{position:relative;height:20px;margin:4px 0 6px}
.wblf-slider-track{position:absolute;top:50%;transform:translateY(-50%);left:0;right:0;height:4px;background:#e0e0e0;border-radius:2px}
.wblf-slider-fill{position:absolute;top:50%;transform:translateY(-50%);height:4px;background:var(--wblf-accent);border-radius:2px;pointer-events:none}
.wblf-range{position:absolute;top:50%;transform:translateY(-50%);width:100%;height:4px;background:transparent;-webkit-appearance:none;appearance:none;pointer-events:none}
.wblf-range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:18px;height:18px;border-radius:50%;background:var(--wblf-accent);border:2px solid #fff;box-shadow:0 1px 4px rgba(0,0,0,.2);cursor:pointer;pointer-events:all}
.wblf-range::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:var(--wblf-accent);border:2px solid #fff;cursor:pointer;pointer-events:all}
.wblf-actions{display:flex;align-items:center;gap:10px;padding:14px 16px;border-top:1px solid var(--wblf-border);background:#fafafa}
.wblf-filter-submit{flex:1;height:38px;background:var(--wblf-accent)!important;color:#fff!important;border:none!important;border-radius:var(--wblf-radius)!important;font-size:.875rem;font-weight:600;cursor:pointer;transition:background .15s;display:flex;align-items:center;justify-content:center}
.wblf-filter-submit:hover{background:var(--wblf-accent-h)!important}
.wblf-clear-all{font-size:.8rem;color:var(--wblf-muted);text-decoration:underline;cursor:pointer;white-space:nowrap}
.wblf-clear-all:hover{color:var(--wblf-accent)}
.wblf-active-tags{display:flex;flex-wrap:wrap;gap:5px;padding:0 16px 12px}
.wblf-tag{display:inline-flex;align-items:center;background:#f6f0f3;color:var(--wblf-accent);border:1px solid #e6c9d4;border-radius:20px;padding:2px 10px;font-size:.78rem;font-weight:600}

/* ── WPBravo Location Search Widget ──────────────────────────────────────── */
.wblf-search-wrap{text-align:center;padding:24px 16px}
.wblf-search-heading{font-size:1.75rem;font-weight:700;color:#1d2327;margin:0 0 8px}
.wblf-search-subheading{font-size:1rem;color:#757575;margin:0 0 24px}

/* Inline layout — input + button side by side */
.wblf-search-form-wrap{
    display:flex!important;
    flex-direction:row!important;
    align-items:stretch!important;
    justify-content:center!important;
    gap:0!important;
    max-width:600px;
    margin:0 auto;
    border-radius:6px;
    overflow:hidden;
    box-shadow:0 2px 12px rgba(0,0,0,.1);
}

/* Stacked layout override */
.wblf-search-form-wrap.wblf-search-stacked{
    flex-direction:column!important;
    overflow:visible!important;
    box-shadow:none!important;
    gap:10px!important;
}
.wblf-search-stacked .wblf-search-input-wrap{
    border-right:1px solid #e0e0e0!important;
    border-radius:6px!important;
    width:100%!important;
    box-shadow:0 2px 8px rgba(0,0,0,.1)!important;
}
.wblf-search-stacked .wblf-search-btn{
    border-radius:6px!important;
    width:100%!important;
    max-width:600px!important;
}

.wblf-search-input-wrap{
    display:flex!important;
    align-items:center!important;
    flex:1 1 auto!important;
    background:#fff!important;
    border:1px solid #e0e0e0!important;
    border-right:none!important;
    border-radius:6px 0 0 6px!important;
    padding:0 12px!important;
    height:52px!important;
    min-width:0!important;
}
.wblf-search-pin-icon{font-size:1rem;margin-right:8px;opacity:.5;flex-shrink:0}
.wblf-search-input{
    flex:1!important;
    border:none!important;
    outline:none!important;
    background:transparent!important;
    font-size:.9375rem!important;
    color:#1d2327!important;
    height:100%!important;
    min-width:0!important;
    box-shadow:none!important;
    padding:0!important;
}
.wblf-search-input::placeholder{color:#aaa}

/* Search button — force white text */
.wblf-search-btn,
button.wblf-search-btn,
.wblf-search-wrap button.wblf-search-btn{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    height:52px!important;
    padding:0 28px!important;
    background:#8b0032!important;
    color:#fff!important;
    border:none!important;
    border-radius:0 6px 6px 0!important;
    font-size:.9375rem!important;
    font-weight:600!important;
    cursor:pointer!important;
    white-space:nowrap!important;
    transition:background .15s!important;
    flex-shrink:0!important;
    text-decoration:none!important;
    line-height:1!important;
}
.wblf-search-btn:hover,
button.wblf-search-btn:hover{background:#6d0027!important;color:#fff!important;}

/* Use my location — text link style, NOT a button */
button.wblf-use-location,
.wblf-use-location{
    display:inline-flex!important;
    align-items:center!important;
    gap:5px!important;
    margin-top:12px!important;
    background:none!important;
    background-color:transparent!important;
    border:none!important;
    box-shadow:none!important;
    padding:0!important;
    font-size:.85rem!important;
    color:#8b0032!important;
    cursor:pointer!important;
    text-decoration:underline!important;
    text-underline-offset:3px!important;
    height:auto!important;
    border-radius:0!important;
}
button.wblf-use-location:hover,.wblf-use-location:hover{color:#6d0027!important;background:none!important;}
.wblf-use-location-icon{font-size:.85rem}
.wblf-geo-status{display:block;font-size:.8rem;margin-top:6px;font-style:italic;min-height:1.2em;color:#757575;text-align:center}

/* pac-container z-index */
.pac-container{z-index:999999!important}

@media(max-width:600px){
    .wblf-search-heading{font-size:1.35rem}
    .wblf-search-form-wrap{
        flex-direction:column!important;
        box-shadow:none!important;
        gap:10px!important;
        overflow:visible!important;
    }
    .wblf-search-input-wrap{
        border-right:1px solid #e0e0e0!important;
        border-radius:6px!important;
        width:100%!important;
        box-shadow:0 2px 8px rgba(0,0,0,.1)!important;
    }
    .wblf-search-btn,button.wblf-search-btn{
        border-radius:6px!important;
        width:100%!important;
    }
}
