/* Native Woo/Elementor checkout, using KYOM's existing brand tokens. */
body.woocommerce-checkout .elementor[data-elementor-type="single"] > .e-con.e-parent {
  --container-max-width:1200px;
  padding:48px 24px 64px;
  margin-inline:auto;
  min-height:0;
}
body.woocommerce-checkout .elementor[data-elementor-type="single"] > .e-con.e-parent > .e-con-inner {padding:0;gap:0}
body.woocommerce-checkout .elementor-widget-woocommerce-checkout-page.elementor-element {
  --sections-background-color:var(--k-paper2);
  --sections-border-type:solid;
  --sections-border-color:var(--k-hair);
  --sections-border-radius:2px;
  --sections-padding:0px;
  --forms-fields-background-color:var(--k-paper);
  --forms-fields-border-color:var(--k-mocha);
  --forms-fields-border-radius:2px;
  --forms-labels-color:var(--k-ink);
  --forms-fields-color:var(--k-ink);
  --purchase-button-normal-background-color:var(--k-plum);
  --purchase-button-normal-text-color:var(--k-paper);
  --purchase-button-hover-background-color:var(--k-deep);
  --purchase-button-hover-text-color:var(--k-paper);
  color:var(--k-ink);font:500 16px/1.8 var(--k-font);
}
body.woocommerce-checkout .kyom-checkout-heading {display:flex;align-items:baseline;justify-content:space-between;gap:24px;margin:0 0 32px}
body.woocommerce-checkout .kyom-checkout-heading h1 {font:600 33px/1.4 var(--k-font);color:var(--k-ink);margin:0;text-wrap:balance}
body.woocommerce-checkout .kyom-checkout-heading a {font-size:14px;color:var(--k-ink);text-underline-offset:5px;padding-block:10px;flex-shrink:0}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce .e-checkout__container {display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:32px;align-items:start}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce .e-checkout__column {width:auto;min-width:0;flex-basis:auto}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce .e-checkout__column-inner {position:static;top:auto;width:auto}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce #customer_details,
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce .e-checkout__column-end .e-checkout__column-inner {
  background:var(--k-paper2);border:1px solid var(--k-hair);border-radius:2px;padding:32px;
}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce #customer_details .col-1,
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce #customer_details .col-2,
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce :is(.woocommerce-billing-fields,.woocommerce-shipping-fields,.woocommerce-additional-fields,.e-checkout__order_review,.e-checkout__order_review-2,.e-coupon-box,.e-woocommerce-login-section),
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce #order_review,
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce #payment {
  background:transparent;border:0;box-shadow:none;border-radius:0;padding:0;float:none;width:100%;
}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce .e-woocommerce-login-section {margin:0 0 24px;text-align:start}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce :is(h3,.e-checkout__section-title) {font:600 21px/1.5 var(--k-font);color:var(--k-ink);text-align:start;margin:0 0 24px}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce :is(p,label,table,button,input,select,textarea,.select2-selection__rendered) {font-family:var(--k-font);letter-spacing:normal}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce .woocommerce-billing-fields__field-wrapper,
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce .woocommerce-shipping-fields__field-wrapper {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce .form-row {float:none;width:auto;padding:0;margin:0;min-width:0}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce .form-row-wide {grid-column:1/-1}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce :is(#customer_details,.e-coupon-box,.e-woocommerce-login-anchor) .form-row label {font-size:14px;line-height:1.6;font-weight:500;color:var(--k-ink);margin:0 0 8px;text-align:start}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce .form-row .optional {color:var(--k-muted);font-size:13px}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce :is(#customer_details,.e-coupon-box,.e-woocommerce-login-anchor) :is(input.input-text,textarea,select,.select2-container .select2-selection--single) {
  width:100%;max-width:100%;min-height:52px;border:1px solid var(--k-field-border,var(--k-mocha));border-radius:var(--k-field-radius,2px);
  padding:var(--k-field-padding,12px 14px);background:var(--k-field-bg,var(--k-paper));color:var(--k-field-text,var(--k-ink));font-size:var(--k-field-size,16px);font-weight:500;line-height:1.6;box-shadow:none;
  transition:border-color 150ms ease-out,background-color 150ms ease-out;caret-color:var(--k-plum);
}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce #customer_details input::placeholder,
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce #customer_details textarea::placeholder {color:var(--k-muted);opacity:1}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce .select2-container {max-width:100%;min-width:0}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce :is(#customer_details,.e-coupon-box,.e-woocommerce-login-anchor) .select2-container .select2-selection--single {height:auto;display:flex;align-items:center;padding-inline-end:32px}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce .select2-container .select2-selection__rendered {color:var(--k-field-text,var(--k-ink));font-size:var(--k-field-size,16px);line-height:1.6;padding:0}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce .select2-container .select2-selection__arrow {height:100%;top:0}
body.woocommerce-checkout :is(input,select,textarea,.select2-selection):focus-visible {outline:2px solid var(--k-field-focus,var(--k-plum));outline-offset:3px}
body.woocommerce-checkout :is(button,a):focus-visible {outline:2px solid var(--k-plum);outline-offset:3px}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce .woocommerce-invalid :is(input.input-text,.select2-selection) {border-color:var(--k-err)}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce :is(input[type="email"],input[type="tel"]) {direction:ltr;text-align:start}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce :is(.woocommerce-account-fields,.create-account) {margin-top:24px}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce :is(input[type="checkbox"],input[type="radio"]) {accent-color:var(--k-plum);width:20px;height:20px;vertical-align:middle;flex-shrink:0;margin-inline:0 8px}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce label.checkbox {display:inline-block;padding-block:10px;min-height:44px;cursor:pointer}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce form.checkout table.shop_table {border:0;border-collapse:collapse;border-radius:0;background:transparent;margin:0;width:100%;table-layout:auto}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce form.checkout table.shop_table :is(th,td) {border:0;border-bottom:1px solid var(--k-hair);padding:16px 0;font-size:16px;line-height:1.7;color:var(--k-ink);vertical-align:top;font-weight:500;text-align:start}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce form.checkout table.shop_table thead th {font-size:13px;color:var(--k-muted);padding-top:0}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce form.checkout table.shop_table :is(.product-total,td:last-child) {text-align:end;white-space:nowrap;padding-inline-start:16px}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce form.checkout table.shop_table .product-name {overflow-wrap:anywhere}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce .product-quantity {white-space:nowrap;color:var(--k-muted);font-size:13px}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce form.checkout table.shop_table .order-total :is(th,td,strong) {font-size:21px;font-weight:600;border-bottom:0;color:var(--k-ink)}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce .e-coupon-box {padding-block:24px;margin-block:8px 24px;border-block:1px solid var(--k-hair)}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce .e-coupon-box :is(p,.woocommerce-info) {margin:0;padding:0;background:transparent;border:0;text-align:start;font-size:14px;color:var(--k-muted)}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce :is(.woocommerce-info,.woocommerce-message,.woocommerce-error) {border:1px solid var(--k-hair);border-radius:2px;padding:16px 24px;margin-bottom:24px;font-size:14px;line-height:1.8;box-shadow:none}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce .woocommerce-message {background:var(--k-ok-bg);color:var(--k-ok)}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce .woocommerce-info {background:var(--k-paper2);color:var(--k-ink)}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce .woocommerce-error {background:var(--k-err-bg);color:var(--k-err)}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce :is(.woocommerce-message,.woocommerce-info,.woocommerce-error)::before {display:none}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce #payment ul.payment_methods {border:0;padding:0;margin:0;list-style:none}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce #payment ul.payment_methods > li {padding:16px 0;margin:0;border-bottom:1px solid var(--k-hair);line-height:1.8}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce #payment ul.payment_methods > li > label {display:inline-block;padding-block:10px;font-size:16px;font-weight:500;color:var(--k-ink);cursor:pointer}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce #payment .payment_box {padding:16px;margin:8px 0 0;background:var(--k-paper);color:var(--k-ink);border-radius:2px;font-size:14px;line-height:1.9}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce #payment .payment_box::before {display:none}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce #payment .payment_box p {margin:0 0 8px;font-size:14px;color:var(--k-ink)}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce #payment .place-order {padding:24px 0 0;margin:0}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce .woocommerce-privacy-policy-text p {font-size:13px;line-height:1.9;color:var(--k-muted);margin:0 0 16px}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce .woocommerce-terms-and-conditions-wrapper label {font-size:14px;line-height:1.9;color:var(--k-ink)}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce #payment #place_order {display:block;float:none;width:100%;min-height:52px;padding:16px 24px;margin:24px 0 0;background:var(--k-plum);color:var(--k-paper);border:1px solid var(--k-plum);border-radius:2px;font:500 16px/1.5 var(--k-font);box-shadow:none;transform:none}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce #payment #place_order:hover {background:var(--k-deep);border-color:var(--k-deep)}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce #payment #place_order:disabled {opacity:.55;cursor:wait}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce :is(a,.amount) {color:var(--k-ink)}
body.woocommerce-checkout .select2-dropdown {border:1px solid var(--k-field-border,var(--k-mocha));border-radius:var(--k-field-radius,2px);background:var(--k-field-bg,var(--k-paper2));color:var(--k-field-text,var(--k-ink));font:500 var(--k-field-size,16px)/1.7 var(--k-font)}
body.woocommerce-checkout .select2-container--default .select2-results__option--highlighted[aria-selected] {background:var(--k-plum);color:var(--k-paper)}
body.woocommerce-checkout .select2-search__field {min-height:44px;font:500 var(--k-field-size,16px)/1.6 var(--k-font);border:1px solid var(--k-field-border,var(--k-mocha));border-radius:var(--k-field-radius,2px);padding:var(--k-field-padding,8px);background:var(--k-field-bg,var(--k-paper2));color:var(--k-field-text,var(--k-ink))}
body.woocommerce-checkout .woocommerce-order {max-width:100%;font:500 16px/1.8 var(--k-font);color:var(--k-ink)}
body.woocommerce-checkout .woocommerce-order :is(.woocommerce-order-details,.woocommerce-customer-details,.woocommerce-order-downloads) {background:var(--k-paper2);border:1px solid var(--k-hair);padding:32px;margin-block:24px;border-radius:2px}
body.woocommerce-checkout .woocommerce-order :is(h2,h3) {font:600 25px/1.5 var(--k-font);color:var(--k-ink);margin:0 0 24px}
body.woocommerce-checkout .woocommerce-order table :is(th,td) {padding:16px 8px;overflow-wrap:anywhere}
body.woocommerce-checkout .woocommerce-order .woocommerce-customer-details address {border:0;line-height:1.9}
body.woocommerce-checkout .woocommerce-order :is(.woocommerce-button,.woocommerce-MyAccount-downloads-file) {background:var(--k-plum);color:var(--k-paper);min-height:48px;border-radius:2px;padding:12px 24px}
@media(max-width:900px) {
  body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce .e-checkout__container {grid-template-columns:minmax(0,1fr);gap:24px}
  body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce .e-checkout__column-end .e-checkout__column-inner {position:static}
}
@media(max-width:600px) {
  body.woocommerce-checkout .elementor[data-elementor-type="single"] > .e-con.e-parent {padding:32px 16px 48px}
  body.woocommerce-checkout .kyom-checkout-heading {align-items:flex-start;gap:16px;margin-bottom:24px}
  body.woocommerce-checkout .kyom-checkout-heading h1 {font-size:25px}
  body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce #customer_details,
  body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce .e-checkout__column-end .e-checkout__column-inner,
  body.woocommerce-checkout .woocommerce-order :is(.woocommerce-order-details,.woocommerce-customer-details,.woocommerce-order-downloads) {padding:24px 16px}
  body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce :is(.woocommerce-billing-fields__field-wrapper,.woocommerce-shipping-fields__field-wrapper) {grid-template-columns:minmax(0,1fr)}
  body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce .form-row {grid-column:1}
  body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce form.checkout table.shop_table :is(th,td) {font-size:14px}
  body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce form.checkout table.shop_table .order-total :is(th,td,strong) {font-size:18px}
  body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce .e-coupon-box {padding-block:16px}
  body.woocommerce-checkout .woocommerce-order ul.order_details {display:grid;gap:16px;margin:24px 0;padding:0}
  body.woocommerce-checkout .woocommerce-order ul.order_details li {float:none;border:0;margin:0;padding:0;font-size:13px}
}
@media(prefers-reduced-motion:reduce) {
  body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce :is(input,select,textarea,button,a) {transition:none;animation:none}
}

body.woocommerce-checkout .kyom-book-delivery {padding:24px;background:var(--k-paper2);border:1px solid var(--k-hair);color:var(--k-ink);font:500 16px/1.9 var(--k-font);margin:0 0 24px;border-radius:2px}

/* Keep the native radio and its label in one row; the secure fields span the next row. */
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce #payment ul.payment_methods > li {display:grid;grid-template-columns:20px minmax(0,1fr);column-gap:12px;align-items:start}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce #payment ul.payment_methods > li > input.input-radio {grid-column:1;grid-row:1;margin:14px 0 0;float:none}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce #payment ul.payment_methods > li > label {grid-column:2;grid-row:1;width:auto;min-height:44px;margin:0;line-height:1.5;overflow-wrap:anywhere}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce #payment ul.payment_methods > li > .payment_box {grid-column:1/-1;min-width:0;width:auto;max-width:100%;box-sizing:border-box}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce #payment :is(.wc-stripe-upe-element,.StripeElement,fieldset) {min-width:0;max-width:100%;box-sizing:border-box}

body.woocommerce-checkout .woocommerce-notices-wrapper .woocommerce-message {text-align:start;overflow-wrap:anywhere;line-height:1.9;padding:16px 20px;font:500 15px/1.9 var(--k-font)}
body.woocommerce-checkout .woocommerce-order :is(.woocommerce-button,.woocommerce-MyAccount-downloads-file) {text-decoration:none}
@media(min-width:901px) {
  body.woocommerce-checkout .e-checkout__container:has(.e-woocommerce-login-section) .e-checkout__column-start {display:contents}
  body.woocommerce-checkout .e-checkout__container:has(.e-woocommerce-login-section) .e-woocommerce-login-section {grid-column:1/-1;margin-bottom:0!important}
  body.woocommerce-checkout .e-checkout__container:has(.e-woocommerce-login-section) #customer_details {grid-column:1;grid-row:2}
  body.woocommerce-checkout .e-checkout__container:has(.e-woocommerce-login-section) .e-checkout__column-end {grid-column:2;grid-row:2}
}

/* Keep the native cart usable for existing course and mixed purchases. */
body.woocommerce-cart .elementor[data-elementor-type="single"] > .e-con.e-parent {padding:40px 24px 64px}
body.woocommerce-cart .elementor-widget-theme-post-content .woocommerce {max-width:1200px;margin-inline:auto;color:var(--k-ink);font:500 16px/1.8 var(--k-font)}
body.woocommerce-cart .woocommerce :is(.woocommerce-cart-form,.cart-collaterals,.cart_totals) {float:none;width:100%;min-width:0}
body.woocommerce-cart .woocommerce :is(.woocommerce-cart-form,.cart_totals) {padding:24px;background:var(--k-paper2);border:1px solid var(--k-hair);border-radius:2px;margin-bottom:24px}
body.woocommerce-cart .woocommerce table.shop_table {width:100%;border:0;border-collapse:collapse;background:transparent;margin:0}
body.woocommerce-cart .woocommerce table.shop_table :is(th,td) {padding:16px 12px;border:0;border-bottom:1px solid var(--k-hair);background:transparent;font-size:15px;line-height:1.8;vertical-align:middle;color:var(--k-ink);overflow-wrap:anywhere}
body.woocommerce-cart .woocommerce .cart_totals h2 {font:600 25px/1.5 var(--k-font);color:var(--k-ink);margin:0 0 24px}
body.woocommerce-cart .woocommerce :is(.button,button.button,.wc-proceed-to-checkout a.checkout-button) {font:500 16px/1.6 var(--k-font);padding:14px 20px;min-height:48px;border:1px solid var(--k-plum);background:var(--k-plum);color:var(--k-paper);border-radius:2px;text-decoration:none;box-shadow:none;white-space:normal}
body.woocommerce-cart .woocommerce .button:disabled {opacity:.55}
body.woocommerce-cart .woocommerce .coupon {display:flex;gap:12px;flex-wrap:wrap;float:none}
body.woocommerce-cart .woocommerce .coupon #coupon_code {width:auto;min-width:0;flex:1;min-height:48px;border:1px solid var(--k-mocha);background:var(--k-paper);padding:12px;font:500 16px/1.5 var(--k-font);border-radius:2px}
body.woocommerce-cart .woocommerce .wc-proceed-to-checkout {padding:24px 0 0}
body.woocommerce-cart .woocommerce .wc-proceed-to-checkout a.checkout-button {display:block;margin:0;text-align:center}
body.woocommerce-cart .woocommerce a {color:var(--k-ink)}
body.woocommerce-cart .woocommerce .product-thumbnail img {width:64px;height:auto}
@media(max-width:600px) {
  body.woocommerce-cart .elementor[data-elementor-type="single"] > .e-con.e-parent {padding:24px 16px 48px}
  body.woocommerce-cart .woocommerce :is(.woocommerce-cart-form,.cart_totals) {padding:20px 16px}
  body.woocommerce-cart .woocommerce table.shop_table td {padding:12px 0;text-align:end!important}
  body.woocommerce-cart .woocommerce table.shop_table td::before {float:inline-start;margin-inline-end:16px}
  body.woocommerce-cart .woocommerce table.shop_table td.actions {text-align:start!important}
  body.woocommerce-cart .woocommerce .coupon {width:100%;margin-bottom:16px}
  body.woocommerce-cart .woocommerce .coupon :is(#coupon_code,.button) {width:100%;flex-basis:100%;margin:0}
  body.woocommerce-cart .woocommerce .cart_totals h2 {font-size:23px}
}
body.woocommerce-checkout .elementor[data-elementor-type] .elementor-widget-woocommerce-checkout-page .woocommerce .woocommerce-form-login-toggle {color:var(--k-ink)}
body.woocommerce-checkout .woocommerce-privacy-policy-text a {text-decoration:underline;text-underline-offset:3px}
/* Stripe's invisible appearance probe must stay inside its own form. */
body.woocommerce-checkout #payment .wc-upe-form {position:relative}
body.woocommerce-checkout #payment #wc-stripe-hidden-style-input {margin:0;max-width:100%;inset-inline-start:0;box-sizing:border-box}

/* Native fieldset defaults were drawing extra frames around Stripe's responsive element. */
body.woocommerce-checkout #payment .payment_method_stripe fieldset {border:0;padding:0;margin:0;min-width:0;width:100%}
@media(max-width:600px) {
  body.woocommerce-checkout .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce #payment .payment_box {padding:12px}
}
body.woocommerce-order-received .woocommerce-order table.shop_table {width:100%;table-layout:fixed;border-collapse:collapse;background:transparent}
body.woocommerce-order-received .woocommerce-order table.shop_table :is(th,td,.nobr) {white-space:normal;text-align:start;overflow-wrap:anywhere;vertical-align:top}
body.woocommerce-order-received .woocommerce-order .woocommerce-MyAccount-downloads-file {display:inline-block;max-width:100%;white-space:normal;text-align:center;text-decoration:none;line-height:1.7;box-sizing:border-box}
body.woocommerce-order-received .woocommerce-order ul.order_details {display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:20px;margin:24px 0;padding:0}
body.woocommerce-order-received .woocommerce-order ul.order_details li {float:none;min-width:0;margin:0;padding:0 0 16px;border:0;border-bottom:1px solid var(--k-hair);overflow-wrap:anywhere;line-height:1.8}
@media(max-width:600px) {
  body.woocommerce-order-received .woocommerce-order .woocommerce-table--order-downloads thead {display:none}
  body.woocommerce-order-received .woocommerce-order .woocommerce-table--order-downloads :is(tbody,tr,td) {display:block;width:100%;box-sizing:border-box}
  body.woocommerce-order-received .woocommerce-order .woocommerce-table--order-downloads td {text-align:start!important;padding:12px 0;border-bottom:1px solid var(--k-hair)}
  body.woocommerce-order-received .woocommerce-order .woocommerce-table--order-downloads td::before {content:attr(data-title);display:block;float:none;font:500 13px/1.7 var(--k-font);color:var(--k-muted);margin-bottom:6px}
  body.woocommerce-order-received .woocommerce-order .woocommerce-table--order-downloads .woocommerce-MyAccount-downloads-file {display:block;width:100%}
  body.woocommerce-order-received .woocommerce-order .woocommerce-customer-details :is(.col2-set,.col-1,.col-2) {float:none;width:100%}
}
/* The floating chat button overlaps secure payment fields on narrow screens. */
@media(max-width:600px) {
  body.woocommerce-checkout .wa__widget_container {display:none}
}
body.woocommerce-order-received .elementor[data-elementor-type] .elementor-element.elementor-widget-woocommerce-checkout-page .woocommerce .woocommerce-order a.woocommerce-MyAccount-downloads-file {background:var(--k-plum);color:var(--k-paper);border:1px solid var(--k-plum);font:500 16px/1.7 var(--k-font);padding:14px 20px;min-height:52px;text-decoration:none;white-space:normal}

body.woocommerce-checkout .kyom-wallet-pending {position:relative;min-height:52px}
body.woocommerce-checkout .kyom-wallet-loading {position:absolute;inset-inline:0;top:4px;height:48px;display:grid;place-items:center;font:500 14px/1.7 var(--k-font);color:var(--k-ink);text-align:center;pointer-events:none}
body.woocommerce-checkout .kyom-wallet-loading__shape {position:absolute;inset:0;border-radius:2px;background:var(--k-hair);animation:kyom-wallet-pulse 1.4s ease-in-out infinite}
body.woocommerce-checkout .kyom-wallet-loading > :last-child {position:relative;padding-inline:12px}
@keyframes kyom-wallet-pulse {0%,100%{opacity:.45}50%{opacity:.85}}
@media(prefers-reduced-motion:reduce) {body.woocommerce-checkout .kyom-wallet-loading__shape {animation:none;opacity:.65}}

/* A separate line preserves long RTL titles and a comfortable touch target. */
body.woocommerce-checkout #order_review .kyom-checkout-remove {
  display:flex;align-items:center;width:fit-content;min-height:44px;padding:8px 12px;
  margin:8px 0 -8px;color:var(--k-muted);font:500 14px/1.6 var(--k-font);
  text-decoration:underline;text-underline-offset:4px;border:0;background:transparent;
}
body.woocommerce-checkout #order_review .kyom-checkout-remove:hover {color:var(--k-ink)}
body.woocommerce-checkout #order_review .kyom-checkout-remove:focus-visible {outline:2px solid var(--k-plum);outline-offset:2px}
