/* =============================================================
   CHECKOUT — Cart + checkout (Fluid Checkout overrides)
   Sources: style.css L120-243; Customizer CSS L113-309
   ============================================================= */

/* ==================== FLUID CHECKOUT — SHIPPING METHOD ==================== */

.fc-shipping-method,
li.shipping_method {
    display: flex !important;
    align-items: center !important;
    min-height: 60px !important;
    position: relative !important;
}

.fc-shipping-method__label,
.shipping_method + label {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    padding-right: 110px !important;
    padding-left: 35px !important;
    box-sizing: border-box !important;
    margin-bottom: 0 !important;
    position: relative !important;
}

.fc-shipping-method__label::before,
.fc-shipping-method__label::after,
li.shipping_method label::before,
input[name^="shipping_method"] {
    top: 50% !important;
    transform: translateY(-50%) !important;
    margin-top: 0 !important;
}

/* Price pinned to right */
.fc-shipping-method__price,
.shipping_method + label .amount,
.shipping-method__option-price {
    position: absolute !important;
    right: 20px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    margin: 0 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    font-weight: bold !important;
    z-index: 2;
}

/* Courier icon */
img.courier-icon {
    width: 30px !important;
    height: auto !important;
    margin-right: 12px !important;
    flex-shrink: 0 !important;
    display: block !important;
}

/* Label text — fixed corrupted white-space property */
.fc-shipping-method__label-text,
.shipping-method__option-text {
    white-space: normal !important;
    line-height: 1.3 !important;
    display: block !important;
}

/* Foxpost plugin wrapper */
.shipping-method__option-label-wrapper {
    display: block !important;
    width: auto !important;
}

/* ==================== FLUID CHECKOUT — MISC ==================== */

.fc-cart-order-review__inner {
    background-color: transparent !important;
}

.fc-step__substep-save {
    padding: 10px !important;
    font-size: 16px !important;
}

.fc-step__substep-text {
    font-size: 0.88rem !important;
}

.fc-step__substep-edit {
    top: 15px !important;
}

.fc-text-field {
    margin-bottom: 0 !important;
}

/* Fluid Checkout brand colour variable */
:root body.woocommerce-page.has-fc-design-template--split {
    --fluidcheckout--option-box--label-border-color--checked: var(--global-palette1) !important;
}

/* Stripe Accordion */
.p-Accordion .AccordionItem {
    border: none !important;
    box-shadow: none !important;
}

/* FC inside responsive */
@media (max-width: 999px) {
    .fc-inside {
        width: 100% !important;
    }
}

/* ==================== STRIPE PAYMENT ==================== */

div.payment_method_stripe,
div.payment_method_cod {
    background-color: transparent !important;
}

div.payment_method_stripe > fieldset {
    border: none !important;
}

li.woocommerce-SavedPaymentMethods-token > label,
.woocommerce-SavedPaymentMethods-new > label {
    border: none !important;
    font-size: 1.1em !important;
}

#payment {
    font-size: 0.98em !important;
}

.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods {
    font-size: 13px;
}

/* ==================== COUPON ==================== */

.coupon_inner_checkout {
    display: none;
}

/* ==================== VPW PONT (PAYMENT GATEWAY) ==================== */

.vp-woo-pont-review-order {
    display: none !important;
}

/* ==================== PAYMENT METHOD ICON ==================== */

.wc_payment_method > label > img {
    height: 20px !important;
}

/* ==================== MODERN INPUT STYLES ==================== */

/* Base — underline-only input */
.modern-input input {
    border: none !important;
    background-color: transparent !important;
    padding-block: 15px;
    padding-inline: 5px;
    border-bottom: 3px solid var(--global-palette4) !important;
    border-radius: 0 !important;
    transition: all 0.5s ease-in-out;
}

/* Focus state — all input types */
.modern-input input[type="text"]:focus,
.modern-input input[type="password"]:focus,
.modern-input input[type="email"]:focus,
.modern-input input[type="number"]:focus,
.modern-input input[type="tel"]:focus,
.modern-input input[type="url"]:focus,
.modern-input input[type="search"]:focus,
.modern-input input[type="date"]:focus,
.modern-input input[type="datetime-local"]:focus,
.modern-input input[type="month"]:focus,
.modern-input input[type="week"]:focus,
.modern-input input[type="time"]:focus,
.modern-input input[type="color"]:focus,
.modern-input input[type="file"]:focus,
.modern-input input[type="range"]:focus,
.modern-input input[type="checkbox"]:focus,
.modern-input input[type="radio"]:focus,
.modern-input input[type="submit"]:focus,
.modern-input input[type="reset"]:focus,
.modern-input input[type="button"]:focus,
.modern-input textarea:focus,
.modern-input select:focus {
    outline: 0 !important;
    border-bottom-color: var(--global-palette1) !important;
}

/* WooCommerce form row focus — deeper selector */
div.woocommerce form .form-row.modern-input .woocommerce-input-wrapper input[type="text"]:focus,
div.woocommerce form .form-row.modern-input .woocommerce-input-wrapper input[type="password"]:focus,
div.woocommerce form .form-row.modern-input .woocommerce-input-wrapper input[type="email"]:focus,
div.woocommerce form .form-row.modern-input .woocommerce-input-wrapper input[type="number"]:focus,
div.woocommerce form .form-row.modern-input .woocommerce-input-wrapper input[type="tel"]:focus,
div.woocommerce form .form-row.modern-input .woocommerce-input-wrapper input[type="url"]:focus,
div.woocommerce form .form-row.modern-input .woocommerce-input-wrapper input[type="search"]:focus,
div.woocommerce form .form-row.modern-input .woocommerce-input-wrapper input[type="date"]:focus,
div.woocommerce form .form-row.modern-input .woocommerce-input-wrapper input[type="datetime-local"]:focus,
div.woocommerce form .form-row.modern-input .woocommerce-input-wrapper input[type="month"]:focus,
div.woocommerce form .form-row.modern-input .woocommerce-input-wrapper input[type="week"]:focus,
div.woocommerce form .form-row.modern-input .woocommerce-input-wrapper input[type="time"]:focus,
div.woocommerce form .form-row.modern-input .woocommerce-input-wrapper input[type="color"]:focus,
div.woocommerce form .form-row.modern-input .woocommerce-input-wrapper input[type="file"]:focus,
div.woocommerce form .form-row.modern-input .woocommerce-input-wrapper input[type="range"]:focus,
div.woocommerce form .form-row.modern-input .woocommerce-input-wrapper input[type="checkbox"]:focus,
div.woocommerce form .form-row.modern-input .woocommerce-input-wrapper input[type="radio"]:focus,
div.woocommerce form .form-row.modern-input .woocommerce-input-wrapper input[type="submit"]:focus,
div.woocommerce form .form-row.modern-input .woocommerce-input-wrapper input[type="reset"]:focus,
div.woocommerce form .form-row.modern-input .woocommerce-input-wrapper input[type="button"]:focus,
div.woocommerce form .form-row.modern-input .woocommerce-input-wrapper textarea:focus,
div.woocommerce form .form-row.modern-input .woocommerce-input-wrapper select:focus {
    outline: none !important;
    border-bottom-color: var(--global-palette2) !important;
    padding-bottom: 8px !important;
}

/* WC validated row checkmark alignment */
div.woocommerce form .form-row.woocommerce-validated:not([class*="woocommerce-invalid"]):not(.fc-no-validation-icon):not(.fc-select2-field) .woocommerce-input-wrapper::after {
    line-height: 1.5 !important;
}

/* Form row label/input global */
.form-row label {
    font-weight: 600 !important;
}

.form-row input {
    font-size: 1.05rem !important;
}

/* ==================== INPUT HEIGHT / RADIUS ==================== */

/* Tom Select dropdown control */
.ts-control {
    border-radius: 13px !important;
    height: 55px !important;
    display: flex !important;
    align-items: center !important;
}

/* Standard checkout/account text inputs */
.woocommerce-checkout .input-text,
.woocommerce-account .input-text {
    height: 55px !important;
    padding-inline: 10px;
    border-radius: 13px !important;
}
