/* =========================================================
   DAMIAN PHILPOTT — GLOBAL FOOTER STANDARD V1
   ---------------------------------------------------------
   Desktop Booknetic Steps 1–7.

   Locks the approved footer language across the whole booking flow:

   FORWARD / NEXT / CONFIRM
   - dark charcoal default
   - thin grey border
   - lighter type
   - yellow hover/focus
   - moving arrow

   BACK
   - yellow default
   - dark charcoal hover/focus

   FOOTER POSITION
   - footer is pinned to the true bottom of each booking shell
   - natural step height is preserved
   - no equal-height forcing
   - 62px bottom reserve prevents content overlapping the footer

   Step 1's selected-stylist yellow NEXT state remains handled by
   the existing locked Step 1 module.
   ========================================================= */

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

    /* -----------------------------------------------------
       ALL BOOKING SHELLS — reserve the native footer space.
       This replaces the footer's normal flow height after it
       is pinned to the true bottom.
       ----------------------------------------------------- */
    body:has(#booknetic_theme_8)
    .wp-block-booknetic-booking
    #booknetic_theme_8.booknetic_appointment
    .booknetic_appointment_container {
        position: relative !important;
        box-sizing: border-box !important;
        padding-bottom: 62px !important;
    }

    /* -----------------------------------------------------
       GLOBAL FOOTER — true bottom, same visual surface.
       ----------------------------------------------------- */
    body:has(#booknetic_theme_8)
    .wp-block-booknetic-booking
    #booknetic_theme_8.booknetic_appointment
    .booknetic_appointment_container_footer {
        position: absolute !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        z-index: 40 !important;

        display: flex !important;
        align-items: center !important;

        width: 100% !important;
        height: auto !important;
        min-height: 62px !important;

        margin: 0 !important;
        padding: 10px 20px !important;

        box-sizing: border-box !important;
        overflow: visible !important;

        background-color: rgba(5,5,5,.18) !important;
        background-image: none !important;

        border-top: 1px solid rgba(255,255,255,.10) !important;
        border-radius: 0 0 7px 7px !important;

        box-shadow: none !important;
        filter: none !important;

        -webkit-backdrop-filter: none !important;
        backdrop-filter: none !important;
    }

    /* -----------------------------------------------------
       FORWARD BUTTONS — v1.0.110 standard everywhere.
       Covers NEXT STEP and the final CONFIRM BOOKING action.
       ----------------------------------------------------- */
    body:has(#booknetic_theme_8)
    .wp-block-booknetic-booking
    #booknetic_theme_8.booknetic_appointment
    .booknetic_appointment_container_footer
    button.booknetic_btn_primary.booknetic_next_step,

    body:has(#booknetic_theme_8)
    .wp-block-booknetic-booking
    #booknetic_theme_8.booknetic_appointment
    .booknetic_appointment_container_footer
    button.booknetic_btn_primary.booknetic_confirm_booking_btn {
        min-width: 150px !important;
        height: 38px !important;
        padding: 0 20px !important;

        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;

        background: rgba(15,15,15,.92) !important;
        background-image: none !important;

        border: 1px solid rgba(255,255,255,.20) !important;
        border-radius: 3px !important;

        color: rgba(255,255,255,.86) !important;

        font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
        font-size: 11px !important;
        font-weight: 350 !important;
        font-variation-settings: "wght" 350 !important;
        line-height: 1 !important;
        letter-spacing: .065em !important;
        text-shadow: none !important;

        box-shadow: none !important;
        -webkit-backdrop-filter: none !important;
        backdrop-filter: none !important;

        transition:
            background-color .18s ease,
            border-color .18s ease,
            color .18s ease,
            transform .18s ease !important;
    }

    /* Forward hover / focus */
    body:has(#booknetic_theme_8)
    .wp-block-booknetic-booking
    #booknetic_theme_8.booknetic_appointment
    .booknetic_appointment_container_footer
    button.booknetic_btn_primary.booknetic_next_step:hover,

    body:has(#booknetic_theme_8)
    .wp-block-booknetic-booking
    #booknetic_theme_8.booknetic_appointment
    .booknetic_appointment_container_footer
    button.booknetic_btn_primary.booknetic_next_step:focus-visible,

    body:has(#booknetic_theme_8)
    .wp-block-booknetic-booking
    #booknetic_theme_8.booknetic_appointment
    .booknetic_appointment_container_footer
    button.booknetic_btn_primary.booknetic_confirm_booking_btn:hover,

    body:has(#booknetic_theme_8)
    .wp-block-booknetic-booking
    #booknetic_theme_8.booknetic_appointment
    .booknetic_appointment_container_footer
    button.booknetic_btn_primary.booknetic_confirm_booking_btn:focus-visible {
        background: #FFD700 !important;
        border-color: #FFD700 !important;
        color: #080808 !important;
        box-shadow: none !important;
        transform: none !important;
    }

    /* Tiny click response */
    body:has(#booknetic_theme_8)
    .wp-block-booknetic-booking
    #booknetic_theme_8.booknetic_appointment
    .booknetic_appointment_container_footer
    button.booknetic_btn_primary.booknetic_next_step:active,

    body:has(#booknetic_theme_8)
    .wp-block-booknetic-booking
    #booknetic_theme_8.booknetic_appointment
    .booknetic_appointment_container_footer
    button.booknetic_btn_primary.booknetic_confirm_booking_btn:active {
        transform: translateY(1px) !important;
    }

    /* -----------------------------------------------------
       FORWARD ARROW — same motion language on every step.
       ----------------------------------------------------- */
    body:has(#booknetic_theme_8)
    .wp-block-booknetic-booking
    #booknetic_theme_8.booknetic_appointment
    .booknetic_appointment_container_footer
    button.booknetic_btn_primary.booknetic_next_step_btn::after,

    body:has(#booknetic_theme_8)
    .wp-block-booknetic-booking
    #booknetic_theme_8.booknetic_appointment
    .booknetic_appointment_container_footer
    button.booknetic_btn_primary.booknetic_confirm_booking_btn::after {
        content: "→" !important;
        display: inline-block !important;
        margin-left: 9px !important;
        color: currentColor !important;
        line-height: 1 !important;
        transition: transform .18s ease !important;
    }

    body:has(#booknetic_theme_8)
    .wp-block-booknetic-booking
    #booknetic_theme_8.booknetic_appointment
    .booknetic_appointment_container_footer
    button.booknetic_btn_primary.booknetic_next_step_btn:hover::after,

    body:has(#booknetic_theme_8)
    .wp-block-booknetic-booking
    #booknetic_theme_8.booknetic_appointment
    .booknetic_appointment_container_footer
    button.booknetic_btn_primary.booknetic_next_step_btn:focus-visible::after,

    body:has(#booknetic_theme_8)
    .wp-block-booknetic-booking
    #booknetic_theme_8.booknetic_appointment
    .booknetic_appointment_container_footer
    button.booknetic_btn_primary.booknetic_confirm_booking_btn:hover::after,

    body:has(#booknetic_theme_8)
    .wp-block-booknetic-booking
    #booknetic_theme_8.booknetic_appointment
    .booknetic_appointment_container_footer
    button.booknetic_btn_primary.booknetic_confirm_booking_btn:focus-visible::after {
        transform: translateX(5px) !important;
    }

    /* -----------------------------------------------------
       BACK — exact reverse of the new forward standard.
       ----------------------------------------------------- */
    body:has(#booknetic_theme_8)
    .wp-block-booknetic-booking
    #booknetic_theme_8.booknetic_appointment
    .booknetic_appointment_container_footer
    button.booknetic_btn_secondary.booknetic_prev_step {
        min-width: 110px !important;
        height: 38px !important;
        padding: 0 18px !important;

        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;

        background: #FFD700 !important;
        background-image: none !important;

        border: 1px solid #FFD700 !important;
        border-radius: 3px !important;

        color: #080808 !important;

        font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
        font-size: 11px !important;
        font-weight: 350 !important;
        font-variation-settings: "wght" 350 !important;
        line-height: 1 !important;
        letter-spacing: .065em !important;
        text-shadow: none !important;

        box-shadow: none !important;
        -webkit-backdrop-filter: none !important;
        backdrop-filter: none !important;

        transition:
            background-color .18s ease,
            border-color .18s ease,
            color .18s ease,
            transform .18s ease !important;
    }

    /* BACK hover / focus — reverse to charcoal */
    body:has(#booknetic_theme_8)
    .wp-block-booknetic-booking
    #booknetic_theme_8.booknetic_appointment
    .booknetic_appointment_container_footer
    button.booknetic_btn_secondary.booknetic_prev_step:hover,

    body:has(#booknetic_theme_8)
    .wp-block-booknetic-booking
    #booknetic_theme_8.booknetic_appointment
    .booknetic_appointment_container_footer
    button.booknetic_btn_secondary.booknetic_prev_step:focus-visible {
        background: rgba(15,15,15,.92) !important;
        border-color: rgba(255,255,255,.20) !important;
        color: rgba(255,255,255,.86) !important;
        box-shadow: none !important;
        transform: none !important;
    }

    body:has(#booknetic_theme_8)
    .wp-block-booknetic-booking
    #booknetic_theme_8.booknetic_appointment
    .booknetic_appointment_container_footer
    button.booknetic_btn_secondary.booknetic_prev_step:active {
        transform: translateY(1px) !important;
    }

    /* -----------------------------------------------------
       STEP 1 READY STATE — preserve the locked yellow NEXT
       once Damian is selected.
       ----------------------------------------------------- */
    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_btn:not(:hover):not(:focus-visible) {
        background: #FFD700 !important;
        border-color: #FFD700 !important;
        color: #080808 !important;
    }

    /* Warning remains part of the common footer surface. */
    body:has(#booknetic_theme_8)
    .wp-block-booknetic-booking
    #booknetic_theme_8.booknetic_appointment
    .booknetic_appointment_container_footer
    .booknetic_warning_message {
        align-self: center !important;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }
}
