/* Hustlefella clean taxonomy picker v3.13.0 */
.hfcp-picker{
    position:relative;
    width:100%;
    margin:0 0 18px;
    box-sizing:border-box;
    font-family:inherit;
    z-index:8;
}
.hfcp-head{
    display:flex;
    align-items:baseline;
    justify-content:space-between;
    gap:12px;
    margin:0 0 4px;
}
.hfcp-title{
    color:#172033;
    font-size:15px;
    line-height:1.35;
    font-weight:800;
}
.hfcp-count{
    color:#667085;
    font-size:12px;
    line-height:1.35;
    font-weight:700;
    white-space:nowrap;
}
.hfcp-help{
    margin:0 0 10px;
    color:#667085;
    font-size:12.5px;
    line-height:1.45;
}
.hfcp-chips{
    display:flex;
    flex-wrap:wrap;
    gap:7px;
    margin:0 0 10px;
}
.hfcp-chip{
    display:inline-flex;
    align-items:center;
    max-width:100%;
    min-height:34px;
    padding:5px 5px 5px 11px;
    border:1px solid #ffd0b1;
    border-radius:999px;
    background:#fff5ee;
    color:#8a3b00;
    box-sizing:border-box;
    font-size:13px;
    line-height:1.25;
    font-weight:750;
}
.hfcp-chip-label{
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.hfcp-chip-remove{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    flex:0 0 auto;
    width:25px!important;
    height:25px!important;
    min-width:25px!important;
    margin:0 0 0 5px!important;
    padding:0!important;
    border:0!important;
    border-radius:50%!important;
    background:transparent!important;
    color:#9a4300!important;
    font:700 19px/1 Arial,sans-serif!important;
    cursor:pointer!important;
    box-shadow:none!important;
}
.hfcp-chip-remove:hover,.hfcp-chip-remove:focus-visible{
    background:rgba(255,102,0,.12)!important;
    outline:0!important;
}

.hfcp-chip{
    cursor:pointer;
    transition:border-color .15s ease,background-color .15s ease,box-shadow .15s ease;
}
.hfcp-chip:hover,.hfcp-chip:focus-visible{
    border-color:#ff9e5e;
    background:#fff0e5;
    outline:0;
    box-shadow:0 0 0 3px rgba(255,102,0,.10);
}
.hfcp-chip.is-editing{
    border-color:#ff6600;
    background:#fff0e5;
    box-shadow:0 0 0 3px rgba(255,102,0,.10);
}
.hfcp-editing-note{
    display:flex;
    flex-wrap:wrap;
    align-items:baseline;
    gap:5px 8px;
    margin:0 0 6px;
    padding:9px 10px;
    border-radius:8px;
    background:#fff7f1;
    color:#8a3b00;
    font-size:12px;
    line-height:1.35;
}
.hfcp-editing-note strong{font-weight:850;}
.hfcp-editing-note span{color:#667085;font-weight:600;}
.hfcp-option.is-current-selection{
    background:#fff5ee!important;
    box-shadow:inset 3px 0 0 #ff6600!important;
}
.hfcp-control{
    position:relative;
    display:flex;
    align-items:stretch;
    width:100%;
}
.hfcp-search-icon{
    position:absolute;
    left:13px;
    top:50%;
    z-index:2;
    transform:translateY(-52%);
    color:#667085;
    font-size:20px;
    line-height:1;
    pointer-events:none;
}
.hfcp-input{
    width:100%!important;
    min-height:48px!important;
    margin:0!important;
    padding:11px 132px 11px 40px!important;
    border:1px solid #cfd6df!important;
    border-radius:10px!important;
    background:#fff!important;
    color:#172033!important;
    font-family:inherit!important;
    font-size:15px!important;
    line-height:1.4!important;
    font-weight:500!important;
    box-shadow:0 1px 2px rgba(16,24,40,.04)!important;
    outline:0!important;
    box-sizing:border-box!important;
    transition:border-color .15s ease,box-shadow .15s ease!important;
}
.hfcp-input:focus{
    border-color:#ff6600!important;
    box-shadow:0 0 0 3px rgba(255,102,0,.12)!important;
}
.hfcp-browse{
    position:absolute!important;
    top:5px;
    right:5px;
    bottom:5px;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-width:116px!important;
    margin:0!important;
    padding:0 11px!important;
    border:0!important;
    border-left:1px solid #e4e7ec!important;
    border-radius:0 7px 7px 0!important;
    background:#f8fafc!important;
    color:#344054!important;
    font-size:12px!important;
    line-height:1.2!important;
    font-weight:750!important;
    text-transform:none!important;
    box-shadow:none!important;
    cursor:pointer!important;
}
.hfcp-browse:hover,.hfcp-browse:focus-visible{
    background:#fff3eb!important;
    color:#a14500!important;
    outline:0!important;
}
.hfcp-results{
    position:absolute;
    left:0;
    right:0;
    top:calc(100% + 7px);
    max-height:390px;
    overflow:auto;
    padding:6px;
    border:1px solid #d0d5dd;
    border-radius:11px;
    background:#fff;
    box-shadow:0 18px 42px rgba(16,24,40,.16);
    z-index:999999;
    box-sizing:border-box;
    overscroll-behavior:contain;
}
.hfcp-option{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    width:100%!important;
    margin:0!important;
    padding:10px 11px!important;
    border:0!important;
    border-radius:8px!important;
    background:#fff!important;
    color:#172033!important;
    text-align:left!important;
    text-transform:none!important;
    box-shadow:none!important;
    cursor:pointer!important;
}
.hfcp-option:hover,.hfcp-option:focus-visible{
    background:#fff4ed!important;
    outline:0!important;
}
.hfcp-option-main{
    grid-column:1;
    display:block;
    overflow:hidden;
    color:#172033;
    font-size:14px;
    line-height:1.35;
    font-weight:780;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.hfcp-option-path{
    grid-column:1;
    display:block;
    margin-top:2px;
    overflow:hidden;
    color:#667085;
    font-size:11.5px;
    line-height:1.35;
    font-weight:500;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.hfcp-option-action{
    grid-column:2;
    grid-row:1 / span 2;
    align-self:center;
    margin-left:12px;
    color:#f05d00;
    font-size:12px;
    line-height:1.25;
    font-weight:800;
    white-space:nowrap;
}

.hfcp-option-dual{
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:center!important;
    cursor:default!important;
}
.hfcp-option-dual:hover{
    background:#fff!important;
}
.hfcp-option-copy{
    min-width:0;
}
.hfcp-option-copy-deeper{
    display:block!important;
    width:100%!important;
    margin:0!important;
    padding:4px 6px!important;
    border:0!important;
    border-radius:8px!important;
    background:transparent!important;
    color:inherit!important;
    font:inherit!important;
    text-align:left!important;
    text-transform:none!important;
    box-shadow:none!important;
    cursor:pointer!important;
}
.hfcp-option-copy-deeper:hover,
.hfcp-option-copy-deeper:focus-visible{
    background:#f8fafc!important;
    outline:0!important;
}
.hfcp-option-copy-deeper:hover .hfcp-option-main,
.hfcp-option-copy-deeper:focus-visible .hfcp-option-main{
    color:#b54708;
}
.hfcp-option-copy-select{
    display:block!important;
    width:100%!important;
    margin:0!important;
    padding:4px 6px!important;
    border:0!important;
    border-radius:8px!important;
    background:transparent!important;
    color:inherit!important;
    font:inherit!important;
    text-align:left!important;
    text-transform:none!important;
    box-shadow:none!important;
    cursor:pointer!important;
}
.hfcp-option-copy-select:hover,
.hfcp-option-copy-select:focus-visible{
    background:#fff8f3!important;
    outline:0!important;
}
.hfcp-option-copy-select:hover .hfcp-option-main,
.hfcp-option-copy-select:focus-visible .hfcp-option-main{
    color:#b54708;
}
.hfcp-option-dual .hfcp-option-main,
.hfcp-option-dual .hfcp-option-path{
    grid-column:auto;
}
.hfcp-option-actions{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:7px;
    margin-left:12px;
}
.hfcp-choice{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:34px!important;
    margin:0!important;
    padding:7px 10px!important;
    border:1px solid #d0d5dd!important;
    border-radius:8px!important;
    background:#fff!important;
    color:#344054!important;
    font-family:inherit!important;
    font-size:11.5px!important;
    line-height:1.15!important;
    font-weight:800!important;
    text-transform:none!important;
    white-space:nowrap!important;
    box-shadow:none!important;
    cursor:pointer!important;
}
.hfcp-choice-select{
    border-color:#ffc69f!important;
    background:#fff4ed!important;
    color:#a14500!important;
}
.hfcp-choice-select:hover,.hfcp-choice-select:focus-visible{
    border-color:#ff6600!important;
    background:#ffeadc!important;
    color:#7a3300!important;
    outline:0!important;
}
.hfcp-choice-deeper:hover,.hfcp-choice-deeper:focus-visible{
    border-color:#98a2b3!important;
    background:#f2f4f7!important;
    color:#172033!important;
    outline:0!important;
}

.hfcp-browse-intro{
    padding:7px 10px 9px;
    border-bottom:1px solid #eaecf0;
    color:#667085;
    font-size:11px;
    line-height:1.3;
    font-weight:800;
    letter-spacing:.04em;
    text-transform:uppercase;
}
.hfcp-browse-top{
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    align-items:center;
    gap:8px;
    margin:0 0 4px;
    padding:6px 6px 9px;
    border-bottom:1px solid #eaecf0;
}
.hfcp-back,.hfcp-use-current{
    margin:0!important;
    padding:7px 8px!important;
    border:0!important;
    border-radius:7px!important;
    background:#f2f4f7!important;
    color:#344054!important;
    font-size:11.5px!important;
    line-height:1.2!important;
    font-weight:750!important;
    text-transform:none!important;
    box-shadow:none!important;
    cursor:pointer!important;
}
.hfcp-use-current{
    background:#fff0e6!important;
    color:#a14500!important;
}
.hfcp-back:hover,.hfcp-use-current:hover{
    background:#ffe4d2!important;
}
.hfcp-crumb{
    overflow:hidden;
    color:#667085;
    font-size:11px;
    line-height:1.3;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.hfcp-empty{
    padding:18px 12px;
    color:#667085;
    font-size:13px;
    line-height:1.4;
    text-align:center;
}
.hfcp-status{
    display:none;
    align-items:center;
    gap:7px;
    margin-top:7px;
    color:#667085;
    font-size:11.5px;
    font-weight:650;
}
.hfcp-picker.is-syncing .hfcp-status{display:flex}
.hfcp-spinner{
    width:12px;
    height:12px;
    border:2px solid #ffd4b7;
    border-top-color:#ff6600;
    border-radius:50%;
    animation:hfcp-spin .7s linear infinite;
}
@keyframes hfcp-spin{to{transform:rotate(360deg)}}
.hfcp-error{
    margin-top:7px;
    color:#b42318;
    font-size:12px;
    line-height:1.4;
    font-weight:650;
}
.hfcp-error:empty{display:none}
.hfcp-fallback{
    margin:7px 0 0!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    color:#667085!important;
    font-size:11.5px!important;
    line-height:1.3!important;
    font-weight:700!important;
    text-decoration:underline!important;
    text-transform:none!important;
    box-shadow:none!important;
    cursor:pointer!important;
}
.hfcp-native-hidden,.hfcp-native-select-hidden,.hfcp-addmore-hidden{display:none!important}
.hfcp-picker.has-fallback-open{margin-bottom:10px}

@media(max-width:767px){
    .hfcp-picker{margin-bottom:16px}
    .hfcp-title{font-size:15px}
    .hfcp-help{font-size:12.5px}
    .hfcp-input{
        min-height:50px!important;
        padding-right:46px!important;
        font-size:16px!important;
    }
    .hfcp-browse{
        width:40px!important;
        min-width:40px!important;
        padding:0!important;
        overflow:hidden;
        font-size:0!important;
    }
    .hfcp-browse::after{
        content:'⌄';
        font-size:19px;
        line-height:1;
    }
    .hfcp-results{
        position:static;
        max-height:52vh;
        margin-top:7px;
        box-shadow:0 10px 28px rgba(16,24,40,.12);
    }
    .hfcp-browse-top{
        grid-template-columns:auto minmax(0,1fr);
    }
    .hfcp-use-current{
        grid-column:1 / -1;
        width:100%!important;
        min-height:38px!important;
    }
    .hfcp-chip{max-width:100%}
    .hfcp-option{padding:12px 10px!important}

    .hfcp-option-dual{
        grid-template-columns:minmax(0,1fr)!important;
        gap:9px!important;
        padding:12px 10px!important;
    }
    .hfcp-option-copy-deeper{
        min-height:44px!important;
        padding:7px 8px!important;
    }
    .hfcp-option-actions{
        display:grid;
        grid-template-columns:1fr 1fr;
        width:100%;
        gap:8px;
        margin:0;
    }
    .hfcp-choice{
        width:100%!important;
        min-height:42px!important;
        padding:9px 8px!important;
        font-size:12px!important;
    }
    .hfcp-option-main{font-size:14px}
    .hfcp-option-action{font-size:11.5px}
}

/* v3.12.3: location picker intentionally omits the duplicated heading/help copy. */
.hfcp-head[hidden], .hfcp-help[hidden]{display:none!important;}


/* v3.13.0: admin listing Locations uses the same clean picker UI. */
body.wp-admin .hfcp-picker{
    z-index:20;
    max-width:100%;
}
body.wp-admin .hfcp-results{
    z-index:1000000;
}
body.wp-admin .hfcp-input{
    line-height:1.4!important;
}
body.wp-admin .hfcp-chip-remove,
body.wp-admin .hfcp-browse,
body.wp-admin .hfcp-choice,
body.wp-admin .hfcp-back,
body.wp-admin .hfcp-use-current,
body.wp-admin .hfcp-fallback{
    box-sizing:border-box!important;
}
