/* =========================================================
   DAMIAN PHILPOTT — STEP 1 BUTTON HOVER FIX V3
   ---------------------------------------------------------
   Desktop Step 1 only.

   Fixes the hover cascade on the exact native Booknetic button:
   <button class="booknetic_btn_primary booknetic_next_step booknetic_next_step_btn">

   The previous grey default selector was more specific than the
   hover selector, so its !important background could win while
   the pointer was over the button.

   This patch gives hover/focus equal-or-greater state specificity.
   Existing charcoal glass default, gold ready state and arrow
   movement are preserved.
   ========================================================= */

@media screen and (min-width: 1001px) {

    /* NO STYLIST SELECTED — rollover must override charcoal glass. */
    body:has(#booknetic_theme_8)
    .wp-block-booknetic-booking
    #booknetic_theme_8.booknetic_appointment:has(
        .booknetic_appointment_step_element.booknetic_active_step[data-step-id="staff"]
    ):not(:has([data-step-id="staff"] .booknetic_card.booknetic_card_selected))
    .booknetic_appointment_container_footer
    button.booknetic_btn_primary.booknetic_next_step.booknetic_next_step_btn:hover,

    body:has(#booknetic_theme_8)
    .wp-block-booknetic-booking
    #booknetic_theme_8.booknetic_appointment:has(
        .booknetic_appointment_step_element.booknetic_active_step[data-step-id="staff"]
    ):not(:has([data-step-id="staff"] .booknetic_card.booknetic_card_selected))
    .booknetic_appointment_container_footer
    button.booknetic_btn_primary.booknetic_next_step.booknetic_next_step_btn:focus-visible,

    /* STYLIST SELECTED — rollover changes gold ready-state to bright yellow. */
    body:has(#booknetic_theme_8)
    .wp-block-booknetic-booking
    #booknetic_theme_8.booknetic_appointment:has(
        .booknetic_appointment_step_element.booknetic_active_step[data-step-id="staff"]
    ):has([data-step-id="staff"] .booknetic_card.booknetic_card_selected)
    .booknetic_appointment_container_footer
    button.booknetic_btn_primary.booknetic_next_step.booknetic_next_step_btn:hover,

    body:has(#booknetic_theme_8)
    .wp-block-booknetic-booking
    #booknetic_theme_8.booknetic_appointment:has(
        .booknetic_appointment_step_element.booknetic_active_step[data-step-id="staff"]
    ):has([data-step-id="staff"] .booknetic_card.booknetic_card_selected)
    .booknetic_appointment_container_footer
    button.booknetic_btn_primary.booknetic_next_step.booknetic_next_step_btn:focus-visible {
        background: #FFD700 !important;
        background-color: #FFD700 !important;
        background-image: linear-gradient(
            180deg,
            rgba(255,255,255,.20) 0%,
            rgba(255,255,255,.04) 48%,
            rgba(0,0,0,.06) 100%
        ) !important;
        border-color: #FFD700 !important;
        color: #070707 !important;
        box-shadow:
            inset 0 1px 0 rgba(255,255,255,.34),
            0 8px 22px rgba(255,215,0,.16) !important;
        transform: translateY(-1px) !important;
    }

    /* Arrow retains the v1.0.102 movement on the now-working hover state. */
    body:has(#booknetic_theme_8)
    .wp-block-booknetic-booking
    #booknetic_theme_8.booknetic_appointment:has(
        .booknetic_appointment_step_element.booknetic_active_step[data-step-id="staff"]
    ) .booknetic_appointment_container_footer
    button.booknetic_btn_primary.booknetic_next_step.booknetic_next_step_btn:hover::after,

    body:has(#booknetic_theme_8)
    .wp-block-booknetic-booking
    #booknetic_theme_8.booknetic_appointment:has(
        .booknetic_appointment_step_element.booknetic_active_step[data-step-id="staff"]
    ) .booknetic_appointment_container_footer
    button.booknetic_btn_primary.booknetic_next_step.booknetic_next_step_btn:focus-visible::after {
        transform: translateX(5px) !important;
        color: currentColor !important;
    }
}
