/*
 Theme Name:   N7 Golf Club Child Theme (Migrated)
 Theme URI:    https://golfclub.themerex.net
 Description:  N7 Golf Club Child Theme - Migrated version with business logic moved to react-app-booking plugin
 Author:       ThemeREX / eMonster
 Author URI:   https://themerex.net
 Template:     n7-golf-club
 Version:      2.0.0
 Tags:         flexible-header, custom-background, custom-colors, custom-header, custom-menu, featured-image-header, featured-images, full-width-template, microformats, post-formats, theme-options, threaded-comments, translation-ready
 Text Domain:  n7-golf-club
*/

/*
 * MIGRATION NOTES:
 * ================
 * This theme has been migrated to work with the react-app-booking plugin v1.5.0+
 * 
 * The following functionality has been moved to the plugin:
 * - AJAX handlers (assign_room, check_room, end_booking_early, etc.)
 * - WooCommerce order hooks and filters
 * - Booking availability logic
 * - Subscription discount calculations
 * - Order status management
 * 
 * See: docs/features/04-theme-migration-guide.md for details
 */


/* =Theme customization starts here
------------------------------------------------------------ */

/* Checkout Page Customizations */
input#wc-stripe-new-payment-method {
    display: none !important;
}

.woocommerce-billing-fields__field-wrapper p#billing_company_field {
    display: none !important;
}

.woocommerce-billing-fields__field-wrapper p#billing_country_field {
    display: none !important;
}

.woocommerce-billing-fields__field-wrapper p#billing_address_1_field {
    display: none !important;
}

.woocommerce-billing-fields__field-wrapper p#billing_address_2_field {
    display: none !important;
}

.woocommerce-billing-fields__field-wrapper p#billing_city_field {
    display: none !important;
}

.woocommerce-billing-fields__field-wrapper p#billing_state_field {
    display: none !important;
}

.woocommerce-billing-fields__field-wrapper p#billing_postcode_field {
    display: none !important;
}

.woocommerce-form-coupon-toggle {
    display: none !important;
}

form.woocommerce-checkout > h3#order_review_heading {
    order: 1;
}

form.woocommerce-checkout #order_review {
    order: 2;
    width: 100%;
}

.woocommerce-NoticeGroup.woocommerce-NoticeGroup-checkout {
    order: 3;
    width: -webkit-fill-available;
}

form.woocommerce-checkout #customer_details {
    order: 4;
    width: 60%;
    float: left;
    overflow: hidden;
    padding-right: 140px;
    -webkit-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

/* Styles for mobile devices */
@media (max-width: 767px) {
    form.woocommerce-checkout #customer_details {
        width: 100% !important;
        padding: 0 !important;
    }
}

.woocommerce-checkout #payment {
    order: 5;
    float: right;
    width: 40%;
    border-radius: 5px;
    margin: 0px 0 0 0 !important;
}

/* Styles for mobile devices */
@media (max-width: 767px) {
    .woocommerce-checkout #payment {
        width: 100% !important;
    }
}

form.woocommerce-checkout #customer_details .woocommerce-billing-fields h3 {
    font-size: 35px;
    line-height: 1.1em;
}

#add_payment_method #payment div.form-row, 
.woocommerce-cart #payment div.form-row, 
.woocommerce-checkout #payment div.form-row {
    padding: 5px 0px 0px;
    font-size: 14px;
    font-weight: 300;
    line-height: 1.6em;
    color: var(--theme-color-alter_text);
    text-align: left;
}

.__PrivateStripeElement iframe {
    min-height: 0;
}

.woocommerce #payment #place_order, 
.woocommerce-page #payment #place_order {
    width: 100%;
    display: block;
}

.footer_wrap {
    background: #221c16;
}

.woocommerce-checkout .woocommerce-order .woocommerce_status_bar {
    display: none;
}

.woocommerce .order_details.woocommerce-thankyou-order-details {
    background-color: white !important;
    border: solid;
    border-width: 1px !important;
}

.woocommerce .shop_table_order_details {
    background-color: white !important;
    border: solid;
    border-width: 1px !important;
}

ul#menu_mobile span {
    font-size: 12pt;
}

.input-person-minus, 
.input-person-plus {
    color: black !important;
    border: 1px solid black !important;
}

/* React Loading Page */
.wp-react-loading-spinner {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: rgba(255, 255, 255);
    z-index: 9999;
}

.spinner {
    border: 4px solid transparent;
    border-top: 4px solid #8C5A39;
    border-bottom: 4px solid #8C5A39;
    border-radius: 50%;
    width: 10rem;
}