/*
 * Native WooCommerce adapter for control.form, control.form-field and
 * control.button. Every selector stays below the explicit body context and an
 * inventoried form root.
 */

body.turri-woocommerce-form-context :where(
    form.woocommerce-form-login,
    form.woocommerce-form-register,
    form.rwmb-form.mbup-form,
    form.woocommerce-ResetPassword,
    form.woocommerce-EditAccountForm,
    .woocommerce-MyAccount-content > form:not(.turri-account-favorites__remove),
    form#add_payment_method,
    form.woocommerce-form-track-order,
    form.woocommerce-form-coupon,
    form.checkout_coupon,
    form.woocommerce-verify-email,
    form#order_review,
    form.woocommerce-cart-form,
    form.woocommerce-shipping-calculator,
    form[aria-labelledby^="wc_bis_form_heading_"],
    .turri-product-single--v2 form.variations_form.cart
) {
    --turri-woocommerce-form-adapter: 1;
    color: var(--turri-form-foreground);
}

body.turri-woocommerce-form-context :where(
    form.woocommerce-form-login,
    form.woocommerce-form-register,
    form.rwmb-form.mbup-form,
    form.woocommerce-ResetPassword,
    form.woocommerce-EditAccountForm,
    .woocommerce-MyAccount-content > form:not(.turri-account-favorites__remove),
    form.woocommerce-form-track-order,
    form.woocommerce-verify-email,
    form[aria-labelledby^="wc_bis_form_heading_"],
    .turri-product-single--v2 form.variations_form.cart
) {
    display: grid;
    gap: var(--turri-form-field-gap);
    width: 100%;
    margin: 0;
    padding: var(--turri-form-section-gap);
    border: var(--turri-form-control-border-width) solid var(--turri-form-border);
    border-radius: calc(var(--turri-form-control-radius) * 2);
    background: var(--turri-form-surface);
}

body.turri-woocommerce-form-context :where(
    form.woocommerce-form-login,
    form.woocommerce-form-register,
    form.rwmb-form.mbup-form,
    form.woocommerce-ResetPassword,
    form.woocommerce-EditAccountForm,
    .woocommerce-MyAccount-content > form:not(.turri-account-favorites__remove),
    form#add_payment_method,
    form.woocommerce-form-track-order,
    form.woocommerce-form-coupon,
    form.checkout_coupon,
    form.woocommerce-verify-email,
    form#order_review,
    form.woocommerce-cart-form,
    form.woocommerce-shipping-calculator,
    form[aria-labelledby^="wc_bis_form_heading_"],
    .turri-product-single--v2 form.variations_form.cart
),
body.turri-woocommerce-form-context :where(
    form.woocommerce-form-login,
    form.woocommerce-form-register,
    form.rwmb-form.mbup-form,
    form.woocommerce-ResetPassword,
    form.woocommerce-EditAccountForm,
    .woocommerce-MyAccount-content > form:not(.turri-account-favorites__remove),
    form#add_payment_method,
    form.woocommerce-form-track-order,
    form.woocommerce-form-coupon,
    form.checkout_coupon,
    form.woocommerce-verify-email,
    form#order_review,
    form.woocommerce-cart-form,
    form.woocommerce-shipping-calculator,
    form[aria-labelledby^="wc_bis_form_heading_"],
    .turri-product-single--v2 form.variations_form.cart
) * {
    box-sizing: border-box;
}

body.turri-woocommerce-form-context :where(
    form.woocommerce-form-login,
    form.woocommerce-form-register,
    form.rwmb-form.mbup-form,
    form.woocommerce-ResetPassword,
    form.woocommerce-EditAccountForm,
    .woocommerce-MyAccount-content > form:not(.turri-account-favorites__remove),
    form#add_payment_method,
    form.woocommerce-form-track-order,
    form.woocommerce-form-coupon,
    form.checkout_coupon,
    form.woocommerce-verify-email,
    form#order_review,
    form.woocommerce-cart-form,
    form.woocommerce-shipping-calculator,
    form[aria-labelledby^="wc_bis_form_heading_"],
    .turri-product-single--v2 form.variations_form.cart
) :where(.form-row, .woocommerce-form-row, .rwmb-field) {
    display: grid;
    float: none;
    gap: var(--turri-form-field-internal-gap);
    width: 100%;
    margin: 0 0 var(--turri-form-field-gap);
    padding: 0;
}

body.turri-woocommerce-form-context :where(
    form.woocommerce-form-login,
    form.woocommerce-form-register,
    form.rwmb-form.mbup-form,
    form.woocommerce-ResetPassword,
    form.woocommerce-EditAccountForm,
    .woocommerce-MyAccount-content > form:not(.turri-account-favorites__remove),
    form#add_payment_method,
    form.woocommerce-form-track-order,
    form.woocommerce-form-coupon,
    form.checkout_coupon,
    form.woocommerce-verify-email,
    form#order_review,
    form.woocommerce-cart-form,
    form.woocommerce-shipping-calculator,
    form[aria-labelledby^="wc_bis_form_heading_"],
    .turri-product-single--v2 form.variations_form.cart
) label {
    margin: 0;
    color: var(--turri-form-foreground);
    font-size: var(--turri-form-label-font-size);
    font-weight: var(--turri-form-label-font-weight);
    line-height: var(--turri-label-line-height);
}

body.turri-woocommerce-form-context :where(
    form.woocommerce-form-login,
    form.woocommerce-form-register,
    form.rwmb-form.mbup-form,
    form.woocommerce-ResetPassword,
    form.woocommerce-EditAccountForm,
    .woocommerce-MyAccount-content > form:not(.turri-account-favorites__remove),
    form#add_payment_method,
    form.woocommerce-form-track-order,
    form.woocommerce-form-coupon,
    form.checkout_coupon,
    form.woocommerce-verify-email,
    form#order_review,
    form.woocommerce-cart-form,
    form.woocommerce-shipping-calculator,
    form[aria-labelledby^="wc_bis_form_heading_"],
    .turri-product-single--v2 form.variations_form.cart
) :where(.optional, .description, em) {
    color: var(--turri-form-secondary);
    font-size: var(--turri-form-help-font-size);
    font-weight: 400;
    line-height: var(--turri-help-line-height);
}

body.turri-woocommerce-form-context :where(
    form.woocommerce-form-login,
    form.woocommerce-form-register,
    form.rwmb-form.mbup-form,
    form.woocommerce-ResetPassword,
    form.woocommerce-EditAccountForm,
    .woocommerce-MyAccount-content > form:not(.turri-account-favorites__remove),
    form#add_payment_method,
    form.woocommerce-form-track-order,
    form.woocommerce-form-coupon,
    form.checkout_coupon,
    form.woocommerce-verify-email,
    form#order_review,
    form.woocommerce-cart-form,
    form.woocommerce-shipping-calculator,
    form[aria-labelledby^="wc_bis_form_heading_"],
    .turri-product-single--v2 form.variations_form.cart
) :where(.required:not(.rwmb-field), .rwmb-required) {
    color: var(--turri-form-error);
    font-weight: 700;
    text-decoration: none;
}

body.turri-woocommerce-form-context :where(
    form.woocommerce-form-login,
    form.woocommerce-form-register,
    form.rwmb-form.mbup-form,
    form.woocommerce-ResetPassword,
    form.woocommerce-EditAccountForm,
    .woocommerce-MyAccount-content > form:not(.turri-account-favorites__remove),
    form#add_payment_method,
    form.woocommerce-form-track-order,
    form.woocommerce-form-coupon,
    form.checkout_coupon,
    form.woocommerce-verify-email,
    form#order_review,
    form.woocommerce-cart-form,
    form.woocommerce-shipping-calculator,
    form[aria-labelledby^="wc_bis_form_heading_"],
    .turri-product-single--v2 form.variations_form.cart
) :where(
    input.input-text,
    input[type="text"],
    input[type="email"],
    input[type="tel"],
    input[type="password"],
    input[type="url"],
    input[type="date"],
    input[type="number"]:not(.qty):not([name^="quantity"]),
    select,
    textarea
) {
    width: 100%;
    min-width: 0;
    min-height: var(--turri-form-control-min-block-size);
    margin: 0;
    padding: var(--turri-control-padding-block) var(--turri-form-control-padding-inline);
    border: var(--turri-form-control-border-width) solid var(--turri-form-border);
    border-radius: var(--turri-form-control-radius);
    background: var(--turri-form-surface);
    color: var(--turri-form-foreground);
    font: inherit;
    font-size: var(--turri-form-control-font-size);
    line-height: var(--turri-label-line-height);
    transition:
        background-color var(--turri-form-motion-duration) ease,
        border-color var(--turri-form-motion-duration) ease,
        box-shadow var(--turri-form-motion-duration) ease;
}

body.turri-woocommerce-form-context :where(
    form.woocommerce-form-login,
    form.woocommerce-form-register,
    form.rwmb-form.mbup-form,
    form.woocommerce-ResetPassword,
    form.woocommerce-EditAccountForm,
    .woocommerce-MyAccount-content > form:not(.turri-account-favorites__remove),
    form#add_payment_method,
    form.woocommerce-form-track-order,
    form.woocommerce-form-coupon,
    form.checkout_coupon,
    form.woocommerce-verify-email,
    form#order_review,
    form.woocommerce-cart-form,
    form.woocommerce-shipping-calculator,
    form[aria-labelledby^="wc_bis_form_heading_"],
    .turri-product-single--v2 form.variations_form.cart
) textarea {
    min-height: var(--turri-form-textarea-min-block-size);
    resize: vertical;
}

body.turri-woocommerce-form-context :where(
    form.woocommerce-form-login,
    form.woocommerce-form-register,
    form.rwmb-form.mbup-form,
    form.woocommerce-ResetPassword,
    form.woocommerce-EditAccountForm,
    .woocommerce-MyAccount-content > form:not(.turri-account-favorites__remove),
    form#add_payment_method,
    form.woocommerce-form-track-order,
    form.woocommerce-form-coupon,
    form.checkout_coupon,
    form.woocommerce-verify-email,
    form#order_review,
    form.woocommerce-cart-form,
    form.woocommerce-shipping-calculator,
    form[aria-labelledby^="wc_bis_form_heading_"],
    .turri-product-single--v2 form.variations_form.cart
) :where(input, textarea)::placeholder {
    color: var(--turri-form-secondary);
    opacity: 0.72;
}

body.turri-woocommerce-form-context :where(
    form.woocommerce-form-login,
    form.woocommerce-form-register,
    form.rwmb-form.mbup-form,
    form.woocommerce-ResetPassword,
    form.woocommerce-EditAccountForm,
    .woocommerce-MyAccount-content > form:not(.turri-account-favorites__remove),
    form#add_payment_method,
    form.woocommerce-form-track-order,
    form.woocommerce-form-coupon,
    form.checkout_coupon,
    form.woocommerce-verify-email,
    form#order_review,
    form.woocommerce-cart-form,
    form.woocommerce-shipping-calculator,
    form[aria-labelledby^="wc_bis_form_heading_"],
    .turri-product-single--v2 form.variations_form.cart
) :where(input.input-text, input:not([type]), input[type="text"], input[type="email"], input[type="tel"], input[type="password"], input[type="url"], input[type="date"], input[type="number"]:not(.qty):not([name^="quantity"]), select, textarea):hover:not(:disabled) {
    border-color: var(--turri-color-action-secondary-border);
}

body.turri-woocommerce-form-context :where(
    form.woocommerce-form-login,
    form.woocommerce-form-register,
    form.rwmb-form.mbup-form,
    form.woocommerce-ResetPassword,
    form.woocommerce-EditAccountForm,
    .woocommerce-MyAccount-content > form:not(.turri-account-favorites__remove),
    form#add_payment_method,
    form.woocommerce-form-track-order,
    form.woocommerce-form-coupon,
    form.checkout_coupon,
    form.woocommerce-verify-email,
    form#order_review,
    form.woocommerce-cart-form,
    form.woocommerce-shipping-calculator,
    form[aria-labelledby^="wc_bis_form_heading_"],
    .turri-product-single--v2 form.variations_form.cart
) :where(input.input-text, input:not([type]), input[type="text"], input[type="email"], input[type="tel"], input[type="password"], input[type="url"], input[type="date"], input[type="number"]:not(.qty):not([name^="quantity"]), select, textarea):focus-visible {
    border-color: var(--turri-form-focus);
    outline: var(--turri-focus-width) solid var(--turri-form-focus);
    outline-offset: var(--turri-focus-offset);
    box-shadow: none;
}

body.turri-woocommerce-form-context :where(
    form.woocommerce-form-login,
    form.woocommerce-form-register,
    form.rwmb-form.mbup-form,
    form.woocommerce-ResetPassword,
    form.woocommerce-EditAccountForm,
    .woocommerce-MyAccount-content > form:not(.turri-account-favorites__remove),
    form#add_payment_method,
    form.woocommerce-form-track-order,
    form.woocommerce-form-coupon,
    form.checkout_coupon,
    form.woocommerce-verify-email,
    form#order_review,
    form.woocommerce-cart-form,
    form.woocommerce-shipping-calculator,
    form[aria-labelledby^="wc_bis_form_heading_"],
    .turri-product-single--v2 form.variations_form.cart
) :where(input, select, textarea):disabled {
    border-color: var(--turri-form-border);
    background: var(--turri-form-disabled-background);
    color: var(--turri-form-disabled-foreground);
    cursor: not-allowed;
}

body.turri-woocommerce-form-context :where(
    form.woocommerce-form-login,
    form.woocommerce-form-register,
    form.rwmb-form.mbup-form,
    form.woocommerce-ResetPassword,
    form.woocommerce-EditAccountForm,
    .woocommerce-MyAccount-content > form:not(.turri-account-favorites__remove),
    form#add_payment_method,
    form.woocommerce-form-track-order,
    form.woocommerce-form-coupon,
    form.checkout_coupon,
    form.woocommerce-verify-email,
    form#order_review,
    form.woocommerce-cart-form,
    form.woocommerce-shipping-calculator,
    form[aria-labelledby^="wc_bis_form_heading_"],
    .turri-product-single--v2 form.variations_form.cart
) :where(.woocommerce-invalid, [aria-invalid="true"]) :where(input, select, textarea),
body.turri-woocommerce-form-context :where(
    form.woocommerce-form-login,
    form.woocommerce-form-register,
    form.rwmb-form.mbup-form,
    form.woocommerce-ResetPassword,
    form.woocommerce-EditAccountForm,
    .woocommerce-MyAccount-content > form:not(.turri-account-favorites__remove),
    form#add_payment_method,
    form.woocommerce-form-track-order,
    form.woocommerce-form-coupon,
    form.checkout_coupon,
    form.woocommerce-verify-email,
    form#order_review,
    form.woocommerce-cart-form,
    form.woocommerce-shipping-calculator,
    form[aria-labelledby^="wc_bis_form_heading_"],
    .turri-product-single--v2 form.variations_form.cart
) :where(input, select, textarea)[aria-invalid="true"] {
    border-color: var(--turri-form-error);
    background: var(--turri-form-error-background);
}

body.turri-woocommerce-form-context :where(
    form.woocommerce-form-login,
    form.woocommerce-form-register,
    form.rwmb-form.mbup-form,
    form.woocommerce-ResetPassword,
    form.woocommerce-EditAccountForm,
    .woocommerce-MyAccount-content > form:not(.turri-account-favorites__remove),
    form#add_payment_method,
    form.woocommerce-form-track-order,
    form.woocommerce-form-coupon,
    form.checkout_coupon,
    form.woocommerce-verify-email,
    form#order_review,
    form.woocommerce-cart-form,
    form.woocommerce-shipping-calculator,
    form[aria-labelledby^="wc_bis_form_heading_"],
    .turri-product-single--v2 form.variations_form.cart
) :where(
    .woocommerce-form__label-for-checkbox,
    .woocommerce-form__label-for-radio,
    .rwmb-checkbox-wrapper label
) {
    display: inline-flex;
    gap: 0.8rem;
    align-items: center;
    min-height: var(--turri-form-control-min-block-size);
    cursor: pointer;
}

body.turri-woocommerce-form-context :where(
    form.woocommerce-form-login,
    form.woocommerce-form-register,
    form.rwmb-form.mbup-form,
    form.woocommerce-ResetPassword,
    form.woocommerce-EditAccountForm,
    .woocommerce-MyAccount-content > form:not(.turri-account-favorites__remove),
    form#add_payment_method,
    form.woocommerce-form-track-order,
    form.woocommerce-form-coupon,
    form.checkout_coupon,
    form.woocommerce-verify-email,
    form#order_review,
    form.woocommerce-cart-form,
    form.woocommerce-shipping-calculator,
    form[aria-labelledby^="wc_bis_form_heading_"],
    .turri-product-single--v2 form.variations_form.cart
) :where(input[type="checkbox"], input[type="radio"]) {
    flex: 0 0 auto;
    width: var(--turri-form-choice-size);
    height: var(--turri-form-choice-size);
    margin: 0;
    accent-color: var(--turri-color-action-primary-background);
}

body.turri-woocommerce-form-context :where(
    form.woocommerce-form-login,
    form.woocommerce-form-register,
    form.rwmb-form.mbup-form,
    form.woocommerce-ResetPassword,
    form.woocommerce-EditAccountForm,
    .woocommerce-MyAccount-content > form:not(.turri-account-favorites__remove),
    form#add_payment_method,
    form.woocommerce-form-track-order,
    form.woocommerce-form-coupon,
    form.checkout_coupon,
    form.woocommerce-verify-email,
    form#order_review,
    form.woocommerce-cart-form,
    form.woocommerce-shipping-calculator,
    form[aria-labelledby^="wc_bis_form_heading_"],
    .turri-product-single--v2 form.variations_form.cart
) :where(input[type="checkbox"], input[type="radio"]):focus-visible {
    outline: var(--turri-focus-width) solid var(--turri-form-focus);
    outline-offset: var(--turri-focus-offset);
}

body.turri-woocommerce-form-context :where(
    form.woocommerce-form-login,
    form.woocommerce-form-register,
    form.rwmb-form.mbup-form,
    form.woocommerce-ResetPassword,
    form.woocommerce-EditAccountForm,
    .woocommerce-MyAccount-content > form:not(.turri-account-favorites__remove),
    form#add_payment_method,
    form.woocommerce-form-track-order,
    form.woocommerce-form-coupon,
    form.checkout_coupon,
    form.woocommerce-verify-email,
    form#order_review,
    form.woocommerce-cart-form,
    form.woocommerce-shipping-calculator,
    form[aria-labelledby^="wc_bis_form_heading_"],
    .turri-product-single--v2 form.variations_form.cart
) .select2-container {
    width: 100%;
    min-width: 0;
}

body.turri-woocommerce-form-context :where(
    form.woocommerce-form-login,
    form.woocommerce-form-register,
    form.rwmb-form.mbup-form,
    form.woocommerce-ResetPassword,
    form.woocommerce-EditAccountForm,
    .woocommerce-MyAccount-content > form:not(.turri-account-favorites__remove),
    form#add_payment_method,
    form.woocommerce-form-track-order,
    form.woocommerce-form-coupon,
    form.checkout_coupon,
    form.woocommerce-verify-email,
    form#order_review,
    form.woocommerce-cart-form,
    form.woocommerce-shipping-calculator,
    form[aria-labelledby^="wc_bis_form_heading_"],
    .turri-product-single--v2 form.variations_form.cart
) .select2-selection--single {
    min-height: var(--turri-form-control-min-block-size);
    border: var(--turri-form-control-border-width) solid var(--turri-form-border);
    border-radius: var(--turri-form-control-radius);
    background: var(--turri-form-surface);
}

body.turri-woocommerce-form-context :where(
    form.woocommerce-form-login,
    form.woocommerce-form-register,
    form.rwmb-form.mbup-form,
    form.woocommerce-ResetPassword,
    form.woocommerce-EditAccountForm,
    .woocommerce-MyAccount-content > form:not(.turri-account-favorites__remove),
    form#add_payment_method,
    form.woocommerce-form-track-order,
    form.woocommerce-form-coupon,
    form.checkout_coupon,
    form.woocommerce-verify-email,
    form#order_review,
    form.woocommerce-cart-form,
    form.woocommerce-shipping-calculator,
    form[aria-labelledby^="wc_bis_form_heading_"],
    .turri-product-single--v2 form.variations_form.cart
) .select2-selection--single .select2-selection__rendered {
    padding: var(--turri-control-padding-block) 3.6rem var(--turri-control-padding-block) var(--turri-form-control-padding-inline);
    color: var(--turri-form-foreground);
    font-size: var(--turri-form-control-font-size);
    line-height: 1.55;
}

body.turri-woocommerce-form-context :where(
    form.woocommerce-form-login,
    form.woocommerce-form-register,
    form.rwmb-form.mbup-form,
    form.woocommerce-ResetPassword,
    form.woocommerce-EditAccountForm,
    .woocommerce-MyAccount-content > form:not(.turri-account-favorites__remove),
    form#add_payment_method,
    form.woocommerce-form-track-order,
    form.woocommerce-form-coupon,
    form.checkout_coupon,
    form.woocommerce-verify-email,
    form#order_review,
    form.woocommerce-cart-form,
    form.woocommerce-shipping-calculator,
    form[aria-labelledby^="wc_bis_form_heading_"],
    .turri-product-single--v2 form.variations_form.cart
) :where(button[type="submit"], input[type="submit"], button.button) {
    display: inline-flex;
    gap: var(--turri-control-content-gap);
    align-items: center;
    justify-content: center;
    min-width: var(--turri-control-min-inline-size);
    min-height: var(--turri-control-min-block-size);
    margin: 0;
    padding: var(--turri-control-padding-block) var(--turri-control-padding-inline);
    border: var(--turri-control-border-width) solid transparent;
    border-radius: var(--turri-control-radius);
    background: var(--turri-color-action-primary-background);
    color: var(--turri-color-action-primary-foreground);
    font-size: var(--turri-control-label-font-size);
    font-weight: var(--turri-control-label-font-weight);
    line-height: 1.2;
    text-align: center;
    text-decoration: none;
    transition:
        background-color var(--turri-control-motion-duration) ease,
        border-color var(--turri-control-motion-duration) ease,
        color var(--turri-control-motion-duration) ease,
        box-shadow var(--turri-control-motion-duration) ease;
}

body.turri-woocommerce-form-context :where(
    form.woocommerce-form-login,
    form.woocommerce-form-register,
    form.rwmb-form.mbup-form,
    form.woocommerce-ResetPassword,
    form.woocommerce-EditAccountForm,
    .woocommerce-MyAccount-content > form:not(.turri-account-favorites__remove),
    form#add_payment_method,
    form.woocommerce-form-track-order,
    form.woocommerce-form-coupon,
    form.checkout_coupon,
    form.woocommerce-verify-email,
    form#order_review,
    form.woocommerce-cart-form,
    form.woocommerce-shipping-calculator,
    form[aria-labelledby^="wc_bis_form_heading_"],
    .turri-product-single--v2 form.variations_form.cart
) :where(button[type="submit"], input[type="submit"], button.button):hover:not(:disabled) {
    background: var(--turri-color-action-primary-hover);
    color: var(--turri-color-action-primary-foreground);
}

body.turri-woocommerce-form-context :where(
    form.woocommerce-form-login,
    form.woocommerce-form-register,
    form.rwmb-form.mbup-form,
    form.woocommerce-ResetPassword,
    form.woocommerce-EditAccountForm,
    .woocommerce-MyAccount-content > form:not(.turri-account-favorites__remove),
    form#add_payment_method,
    form.woocommerce-form-track-order,
    form.woocommerce-form-coupon,
    form.checkout_coupon,
    form.woocommerce-verify-email,
    form#order_review,
    form.woocommerce-cart-form,
    form.woocommerce-shipping-calculator,
    form[aria-labelledby^="wc_bis_form_heading_"],
    .turri-product-single--v2 form.variations_form.cart
) :where(button[type="submit"], input[type="submit"], button.button):focus-visible {
    outline: var(--turri-focus-width) solid var(--turri-form-focus);
    outline-offset: var(--turri-focus-offset);
}

body.turri-woocommerce-form-context :where(
    form.woocommerce-form-login,
    form.woocommerce-form-register,
    form.rwmb-form.mbup-form,
    form.woocommerce-ResetPassword,
    form.woocommerce-EditAccountForm,
    .woocommerce-MyAccount-content > form:not(.turri-account-favorites__remove),
    form#add_payment_method,
    form.woocommerce-form-track-order,
    form.woocommerce-form-coupon,
    form.checkout_coupon,
    form.woocommerce-verify-email,
    form#order_review,
    form.woocommerce-cart-form,
    form.woocommerce-shipping-calculator,
    form[aria-labelledby^="wc_bis_form_heading_"],
    .turri-product-single--v2 form.variations_form.cart
) :where(button[type="submit"], input[type="submit"], button.button):disabled {
    background: var(--turri-form-disabled-background);
    color: var(--turri-form-disabled-foreground);
    cursor: not-allowed;
}

/* Public tab presentation is owned by the shared design-system tabs adapter. */

/* The cart is itself a form, so its complete editable surface adopts the system. */
body.turri-woocommerce-form-context form.woocommerce-cart-form {
    --turri-woocommerce-cart-form-variant: 1;
    width: 100%;
    margin: 0;
    overflow: hidden;
    border: var(--turri-form-control-border-width) solid var(--turri-form-border);
    border-radius: calc(var(--turri-form-control-radius) * 2);
    background: var(--turri-form-surface);
}

body.turri-woocommerce-form-context form.woocommerce-cart-form table.shop_table.cart {
    width: 100%;
    margin: 0;
    border: 0;
    border-collapse: collapse;
    border-spacing: 0;
    background: transparent;
}

body.turri-woocommerce-form-context form.woocommerce-cart-form thead {
    background: var(--turri-form-surface-subtle);
    color: var(--turri-form-secondary);
    line-height: var(--turri-label-line-height);
}

body.turri-woocommerce-form-context form.woocommerce-cart-form thead th {
    padding: 1.2rem 1.6rem;
    border-bottom: var(--turri-form-control-border-width) solid var(--turri-form-border);
    font-size: var(--turri-form-label-font-size);
    font-weight: var(--turri-form-label-font-weight);
    vertical-align: middle;
}

body.turri-woocommerce-form-context form.woocommerce-cart-form tbody tr.woocommerce-cart-form__cart-item {
    border-color: var(--turri-form-border);
}

body.turri-woocommerce-form-context form.woocommerce-cart-form tbody tr.woocommerce-cart-form__cart-item > :where(td, th[scope="row"]) {
    padding: 1.6rem;
    vertical-align: middle;
}

body.turri-woocommerce-form-context form.woocommerce-cart-form .product-remove {
    width: 6rem;
    text-align: center;
}

body.turri-woocommerce-form-context form.woocommerce-cart-form .product-remove a {
    display: inline-grid;
    width: var(--turri-control-min-inline-size);
    height: var(--turri-control-min-block-size);
    border: var(--turri-control-border-width) solid var(--turri-form-border);
    border-radius: 50%;
    background: var(--turri-form-surface-subtle);
    color: var(--turri-form-error);
    font-size: 2.4rem;
    line-height: 1;
    text-align: center;
    text-decoration: none;
    place-items: center;
}

body.turri-woocommerce-form-context form.woocommerce-cart-form .product-remove a:hover {
    background: var(--turri-form-surface-selected);
    color: var(--turri-form-error);
}

body.turri-woocommerce-form-context form.woocommerce-cart-form .product-remove a:focus-visible {
    outline: var(--turri-focus-width) solid var(--turri-form-focus);
    outline-offset: var(--turri-focus-offset);
}

body.turri-woocommerce-form-context form.woocommerce-cart-form .product-thumbnail {
    width: 10rem;
}

body.turri-woocommerce-form-context form.woocommerce-cart-form .product-thumbnail > a {
    display: block;
}

body.turri-woocommerce-form-context form.woocommerce-cart-form .product-thumbnail img {
    display: block;
    width: 7.2rem;
    height: 7.2rem;
    padding: 0.4rem;
    border: var(--turri-form-control-border-width) solid var(--turri-form-border);
    border-radius: var(--turri-form-control-radius);
    background: var(--turri-form-surface-subtle);
    object-fit: contain;
}

body.turri-woocommerce-form-context form.woocommerce-cart-form .product-name a {
    color: var(--turri-form-foreground);
    font-weight: var(--turri-form-label-font-weight);
    line-height: var(--turri-label-line-height);
    text-decoration: none;
}

body.turri-woocommerce-form-context form.woocommerce-cart-form :where(.product-price, .product-subtotal) {
    white-space: nowrap;
    font-variant-numeric: tabular-nums;
}

body.turri-woocommerce-form-context form.woocommerce-cart-form .product-quantity .quantity {
    width: 13.2rem;
    max-width: 100%;
}

body.turri-woocommerce-form-context form.woocommerce-cart-form .product-quantity .quantity :where(.minus, .plus) {
    width: var(--turri-control-min-inline-size);
    min-width: var(--turri-control-min-inline-size);
    min-height: var(--turri-control-min-block-size);
    border-color: var(--turri-form-border);
    background: var(--turri-form-surface-subtle);
    color: var(--turri-form-foreground);
}

body.turri-woocommerce-form-context form.woocommerce-cart-form .product-quantity .quantity .qty {
    min-height: var(--turri-control-min-block-size);
    color: var(--turri-form-foreground);
    font-size: var(--turri-form-control-font-size);
}

body.turri-woocommerce-form-context form.woocommerce-cart-form td.actions {
    padding: 1.6rem;
    border-top: var(--turri-form-control-border-width) solid var(--turri-form-border);
    background: var(--turri-form-surface-subtle);
}

body.turri-woocommerce-form-context form.woocommerce-cart-form td.actions .coupon {
    display: inline-flex;
    float: left;
    gap: 0.8rem;
    align-items: center;
}

body.turri-woocommerce-form-context form.woocommerce-cart-form td.actions .coupon input.input-text {
    width: min(20rem, 100%);
}

body.turri-woocommerce-form-context form.woocommerce-cart-form td.actions > button[name="update_cart"] {
    float: right;
}

@media (max-width: 767px) {
    body.turri-woocommerce-form-context form.woocommerce-cart-form table.shop_table.cart,
    body.turri-woocommerce-form-context form.woocommerce-cart-form table.shop_table.cart tbody {
        display: block;
        width: 100%;
    }

    body.turri-woocommerce-form-context form.woocommerce-cart-form thead {
        display: none;
    }

    body.turri-woocommerce-form-context form.woocommerce-cart-form tbody tr.woocommerce-cart-form__cart-item {
        display: block;
        padding: 1.6rem;
        border-bottom: var(--turri-form-control-border-width) solid var(--turri-form-border);
        background: var(--turri-form-surface);
    }

    body.turri-woocommerce-form-context form.woocommerce-cart-form tbody tr.woocommerce-cart-form__cart-item > :where(td, th[scope="row"]) {
        display: flex;
        width: 100%;
        min-height: var(--turri-control-min-block-size);
        padding: 0.8rem 0;
        border: 0;
        gap: 1.2rem;
        align-items: center;
        justify-content: space-between;
    }

    body.turri-woocommerce-form-context form.woocommerce-cart-form .product-remove {
        justify-content: flex-end;
        width: 100%;
        padding-top: 0;
    }

    body.turri-woocommerce-form-context form.woocommerce-cart-form .product-thumbnail {
        justify-content: center;
        min-height: 0;
        padding-bottom: 1.2rem;
    }

    body.turri-woocommerce-form-context form.woocommerce-cart-form .product-thumbnail::before {
        display: none;
    }

    body.turri-woocommerce-form-context form.woocommerce-cart-form .product-thumbnail > a {
        flex: 0 0 auto;
    }

    body.turri-woocommerce-form-context form.woocommerce-cart-form .product-thumbnail img {
        width: 9.6rem;
        height: 9.6rem;
    }

    body.turri-woocommerce-form-context form.woocommerce-cart-form tbody td[data-title]::before {
        flex: 0 0 auto;
        color: var(--turri-form-secondary);
        font-size: var(--turri-form-label-font-size);
        font-weight: var(--turri-form-label-font-weight);
    }

    body.turri-woocommerce-form-context form.woocommerce-cart-form td.actions {
        display: grid;
        width: 100%;
        padding: 1.6rem;
        gap: 1.2rem;
    }

    body.turri-woocommerce-form-context form.woocommerce-cart-form td.actions .coupon {
        display: grid;
        float: none;
        width: 100%;
        grid-template-columns: minmax(0, 1fr) auto;
        gap: 0.8rem;
    }

    body.turri-woocommerce-form-context form.woocommerce-cart-form td.actions .coupon input.input-text {
        width: 100%;
    }

    body.turri-woocommerce-form-context form.woocommerce-cart-form td.actions > button[name="update_cart"] {
        float: none;
        width: 100%;
    }

    body.turri-woocommerce-form-context :where(
        form.woocommerce-form-login,
        form.woocommerce-form-register,
        form.rwmb-form.mbup-form,
        form.woocommerce-ResetPassword,
        form.woocommerce-EditAccountForm,
        .woocommerce-MyAccount-content > form:not(.turri-account-favorites__remove),
        form.woocommerce-form-track-order,
        form.woocommerce-verify-email,
    form[aria-labelledby^="wc_bis_form_heading_"],
    .turri-product-single--v2 form.variations_form.cart
    ) {
        padding: var(--turri-form-section-gap);
    }
}

@media (prefers-reduced-motion: reduce) {
    body.turri-woocommerce-form-context :where(
        form.woocommerce-form-login,
        form.woocommerce-form-register,
        form.rwmb-form.mbup-form,
        form.woocommerce-ResetPassword,
        form.woocommerce-EditAccountForm,
        .woocommerce-MyAccount-content > form:not(.turri-account-favorites__remove),
        form#add_payment_method,
        form.woocommerce-form-track-order,
        form.woocommerce-form-coupon,
        form.checkout_coupon,
        form.woocommerce-verify-email,
        form#order_review,
        form.woocommerce-cart-form,
        form.woocommerce-shipping-calculator,
    form[aria-labelledby^="wc_bis_form_heading_"],
    .turri-product-single--v2 form.variations_form.cart
    ) :where(input, select, textarea, button) {
        transition-duration: var(--turri-motion-reduced-duration);
    }
}
