/* =========================
   FH Service Centres Loader
   ========================= */

.fh-sc-loader{
    position: relative;
    display: none;
    align-items: center;
    justify-content: center;
    background: #fff;
    z-index: 2;
    padding: 0 0 24px;
}

.fh-sc-loader__spinner{
    width: 32px;
    height: 32px;
    border-radius: 50%;
    border: 2px solid #000;
    border-top-color: transparent;
    animation: fh-sc-spin .7s linear infinite;
}

@keyframes fh-sc-spin{
    to { transform: rotate(360deg); }
}

/* Results wrapper must be relative so loader can overlay inside it */
.fh-sc-results{
    position: relative;
    min-height: 72px; /* so loader has space even when empty */
}

/* Loader now overlays ONLY the results area */
.fh-sc-results .fh-sc-loader{
    position: absolute;
    inset: 0;
    display: none;
    align-items: center;
    justify-content: center;
    background: rgba(255,255,255,.85);
    z-index: 2;
    padding: 24px 0;
}

/* Show loader when loading */
.fh-sc.is-loading .fh-sc-results .fh-sc-loader{
    display: flex;
}

/* Disable only the form + results list while loading (NOT the loader itself) */
.fh-sc.is-loading .fh-sc-form{
    opacity: 0.35;
    pointer-events: none;
}

.fh-sc.is-loading .fh-sc-results__list{
    opacity: 0.35;
    pointer-events: none;
}

/* Disabled button look (optional but useful) */
.fh-sc-search-btn:disabled{
    opacity: .5;
    cursor: not-allowed;
}