/* Native Woo product, account and checkout controls. */
.theempath-commerce-page input[type="checkbox"],
.theempath-commerce-page input[type="radio"] {
    display: inline-block !important;
    width: 1.125rem !important;
    height: 1.125rem !important;
    min-height: 0 !important;
    max-width: 1.125rem;
    margin: .15rem .5rem 0 0 !important;
    padding: 0 !important;
    vertical-align: text-top;
    accent-color: var(--theempath-navy, #193152);
}
.theempath-intake label:has(input[type="checkbox"]),
.theempath-reading-preparation label:has(input[type="checkbox"]) {
    display: flex;
    align-items: flex-start;
    gap: .5rem;
}
.theempath-intake label input[type="checkbox"],
.theempath-reading-preparation label input[type="checkbox"] { flex: 0 0 1.125rem; }
.theempath-service-sidebar .theempath-button { margin-bottom: .75rem; }
.theempath-reading-preparation textarea { width: 100%; min-height: 7rem; }
.theempath-reading-preparation select { width: 100%; }

/* Email account guidance; native payment and billing remain visible. */
.theempath-quick-controls { display: block; clear: both; }
.theempath-quick-description { display: block; margin: .75rem 0; font-size: .95rem; }

.theempath-contact-trap { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.theempath-contact-form[hidden], #contact-feedback[hidden], #contact-another[hidden] { display: none !important; }
#contact-feedback[role="alert"] { border-left-color: #9b2832; }
.theempath-contact-form button:disabled { opacity: .65; cursor: wait; }

/* PAYMENTS-01: native fields, real methods and calculated summary remain visible. */
.theempath-commerce-page form.checkout { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr); column-gap: clamp(1.5rem, 4vw, 4rem); align-items: start; max-width: 1160px; margin-inline: auto; }
.theempath-commerce-page form.checkout > * { min-width: 0; }
.theempath-commerce-page form.checkout nav.theempath-payment-choices { clear: both; float: none; width: 100%; margin: .5rem 0 1.5rem; padding: 1rem 1.25rem; border: 1px solid #ddd4e3; border-radius: 12px; background: #f5f1f8; }
.theempath-payment-choices h2 { font-size: 1.3rem; margin: 0 0 .35rem; }
.theempath-payment-choices p { margin: 0 0 .75rem; font-size: .95rem; }
.theempath-payment-choices ul { display: flex; flex-wrap: wrap; gap: .6rem 1.25rem; list-style: none; padding: 0; margin: 0; }
.theempath-payment-choices a { display: inline-block; padding: .5rem 0; font-weight: 600; text-underline-offset: .2em; }
.theempath-payment-choices .theempath-cart-recovery { margin: .5rem 0 0; font-size: .85rem; }
.theempath-payment-choices .theempath-cart-recovery a { font-weight: 400; padding: 0; }
.theempath-commerce-page form.checkout #customer_details { grid-column: 1; grid-row: 2 / span 2; width: 100%; }
.theempath-commerce-page form.checkout #customer_details .col-1,
.theempath-commerce-page form.checkout #customer_details .col-2 { float: none; width: 100%; }
.theempath-commerce-page #theempath-quick-checkout h2 { font-size: 1.65rem; margin-top: 0; }
.theempath-commerce-page .woocommerce-billing-fields > h3 { display: none; }
.theempath-commerce-page form.checkout #order_review_heading { grid-column: 2; grid-row: 2; font-size: 1.65rem; margin: 0 0 1rem; }
.theempath-commerce-page form.checkout #order_review { grid-column: 2; grid-row: 3; padding: 1.25rem; border: 1px solid #ddd4c9; border-radius: 12px; background: #fffaf3; }
.theempath-commerce-page #order_review table { width: 100%; margin-bottom: 1.25rem; font-size: .96rem; overflow-wrap: anywhere; }
.theempath-commerce-page #order_review .product-total { width: 32%; }
.theempath-commerce-page #payment { background: transparent; border-radius: 0; }
.theempath-commerce-page #payment ul.payment_methods { padding: 0 0 1rem; }
.theempath-commerce-page #payment div.payment_box { margin-inline: 0; width: 100%; padding: 1rem; background: #ede7f1; color: #193152; font-size: .95rem; }
.theempath-commerce-page #payment div.place-order { padding: 1rem 0 0; margin: 0; }
.theempath-commerce-page #payment #place_order { width: 100%; white-space: normal; }
.theempath-commerce-page #payment .woocommerce-terms-and-conditions-wrapper { font-size: .9rem; line-height: 1.6; }
.theempath-commerce-page form.checkout input:not([type=checkbox]):not([type=radio]), .theempath-commerce-page form.checkout select { min-height: 48px; }
.theempath-commerce-page form.checkout :focus-visible { outline: 3px solid #79559b; outline-offset: 3px; }
.theempath-commerce-page .theempath-transfer-instructions { padding: 1.5rem; border: 1px solid #ddd4e3; border-radius: 12px; }
@media (min-width: 1000px) and (min-height: 900px) {
 .theempath-commerce-page form.checkout #order_review { position: sticky; top: 1rem; }
}
@media (max-width: 999px) {
 .theempath-commerce-page form.checkout { display: block; }
 .theempath-commerce-page form.checkout #order_review { margin-top: 1rem; }
 .theempath-commerce-page form.checkout #order_review_heading { margin-top: 2rem; }
 .theempath-commerce-page .theempath-payment-choices { padding: 1rem; }
}
@media (max-width: 480px) {
 .theempath-commerce-page form.checkout .form-row-first,.theempath-commerce-page form.checkout .form-row-last { float: none; width: 100%; }
 .theempath-commerce-page form.checkout #order_review { padding: .8rem; }
}
@media (prefers-reduced-motion: reduce) {
 .theempath-commerce-page form.checkout * { scroll-behavior: auto !important; animation: none !important; transition: none !important; }
}

/* PAYMENTS-01R1A: actual native gateway selection immediately after email/country. */
.theempath-commerce-page form.checkout #payment { margin: 1.25rem 0; padding: 1.25rem; border: 1px solid #d9cce4; border-radius: 12px; background: #fbf8fc; }
.theempath-commerce-page #payment h2 { font-size: 1.6rem; margin: 0 0 .75rem; }
.theempath-commerce-page #payment ul.payment_methods { padding: 0; border: 0; }
.theempath-commerce-page #payment .wc_payment_method { display: block; position: relative; padding: 1rem 0; border-bottom: 1px solid #ded6e4; line-height: 1.55; }
.theempath-commerce-page #payment .wc_payment_method:last-child { border: 0; }
.theempath-commerce-page #payment .wc_payment_method > input { position: absolute; inset-inline-end: 0; top: 1.1rem; }
.theempath-commerce-page #payment .wc_payment_method > label { display: block; min-height: 2rem; padding-right: 2rem; font-weight: 600; cursor: pointer; font-size: 1.05rem; color: #193152; }
.theempath-commerce-page #payment .wc_payment_method > label img { max-height: 1.5rem; width: auto; }
.theempath-commerce-page #payment .payment_box { clear: both; }
.theempath-commerce-page #payment .payment_box::before { display: none; }
.theempath-commerce-page #payment .payment_box p:last-child { margin-bottom: 0; }
.theempath-commerce-page .theempath-demo-notice { padding: .8rem; background: #ede6f2; border-left: 3px solid #79559b; font-size: .9rem; line-height: 1.55; }
.theempath-commerce-page #theempath-billing-guidance { clear: both; font-size: .95rem; }
.theempath-commerce-page #theempath-billing-details .theempath-billing-heading { display: block; font-size: 1.35rem; }
.theempath-commerce-page #theempath-billing-details .theempath-billing-inactive,
.theempath-commerce-page #theempath-billing-details.theempath-billing-empty { display: none !important; }
.theempath-commerce-page .theempath-checkout-confirmation .place-order { padding: 0; margin: 0; width: 100%; }
.theempath-commerce-page .theempath-checkout-confirmation #place_order { width: 100%; white-space: normal; }
.theempath-commerce-page .theempath-checkout-confirmation .woocommerce-terms-and-conditions-wrapper { font-size: .9rem; line-height: 1.6; }
.theempath-commerce-page #order_review { position: static !important; }
@media (min-width: 1000px) {
 .theempath-commerce-page form.checkout #order_review { grid-row: 2 / span 2; margin-top: 3.5rem; }
}
@media (min-width: 1000px) and (min-height: 900px) { .theempath-commerce-page form.checkout #order_review { position: sticky !important; top: 1rem; } }
@media (max-width: 480px) { .theempath-commerce-page form.checkout #payment { padding: 1rem; } }

/* Keep order changes beside the service they affect. */
.theempath-checkout-edit-guidance { font-size: .9rem; }
.theempath-checkout-edit-guidance p { margin: 0 0 .65rem; }
#theempath-cart-feedback:empty { display: none; }
#theempath-cart-feedback[role="alert"] { color: #9b2832; }
.theempath-checkout-item-controls[hidden] { display: none !important; }
.theempath-checkout-item-controls { margin: .65rem 0; font-size: .9rem; }
.theempath-cart-editor summary { cursor: pointer; text-decoration: underline; text-underline-offset: .2em; padding-block: .5rem; }
.theempath-cart-editor-fields { padding: .5rem 0; }
.theempath-cart-editor-fields label { display: block; margin-bottom: .4rem; }
.theempath-cart-editor-fields select { display: block; width: 100%; max-width: 100%; margin-bottom: .75rem; font-size: .85rem; }
.theempath-cart-editor-fields p { font-size: .85rem; line-height: 1.5; }
.theempath-cart-replay { display: flex !important; align-items: flex-start; gap: .4rem; }
.theempath-cart-editor-actions { display: flex; flex-wrap: wrap; gap: .5rem; }
.theempath-commerce-page .theempath-cart-save { background: #193152; color: #fff; border: 1px solid #193152; border-radius: 6px; padding: .6rem .75rem; font-size: .85rem; cursor: pointer; }
.theempath-commerce-page .theempath-cart-remove,.theempath-commerce-page .theempath-cart-cancel { background: transparent; border: 0; color: #193152; text-decoration: underline; text-underline-offset: .2em; padding: .5rem .25rem; font-size: .9rem; cursor: pointer; }
.theempath-cart-remove:disabled,.theempath-cart-save:disabled { opacity: .55; cursor: wait; }
