/* Cart only: both page and shortcode namespace are required.
 * !important is limited to documented competing site/plugin declarations. */
.khqa-cart-page :is(.khqa-cart,.khqa-cart-notices) {
 --khqa-cart-ink:#181818; --khqa-cart-muted:#666; --khqa-cart-line:#e7e5e2;
 --khqa-cart-accent:#ad2b2e; --khqa-cart-font:'KalamehFaNum-Regular',sans-serif;
 color:var(--khqa-cart-ink); font-family:var(--khqa-cart-font); font-size:16px;
 line-height:1.8; direction:rtl; text-align:start; min-width:0; padding-bottom:40px;
}
/* Elementor sets Roboto on .woocommerce. Fix inheritance at its source. */
.khqa-cart-page .khqa-cart .woocommerce,
.khqa-cart-page .khqa-cart .woocommerce .e-cart__container,
.khqa-cart-page .khqa-cart .woocommerce .cart_totals,
.khqa-cart-page .khqa-cart .woocommerce :is(h2,th,td,input,button,.button,.amount,bdi) { font-family:var(--khqa-cart-font); }
.khqa-cart-page .khqa-cart .woocommerce *,
.khqa-cart-page .khqa-cart .woocommerce *::before,
.khqa-cart-page .khqa-cart .woocommerce *::after { box-sizing:border-box; }
.khqa-cart-page .khqa-cart .woocommerce .e-cart__container { display:grid; grid-template-columns:minmax(0,1fr); gap:32px; }
.khqa-cart-page .khqa-cart .woocommerce :is(.e-cart__column,.e-cart__column-inner,.woocommerce-cart-form,.cart-collaterals,.cart_totals) { width:100%; min-width:0; float:none; }
.khqa-cart-page .khqa-cart .woocommerce .e-sticky-right-column { position:static; }
.khqa-cart-page .khqa-cart .woocommerce .woocommerce-cart-form { margin:0; padding:0 24px; background:#fff; border:1px solid var(--khqa-cart-line); border-radius:12px; }
.khqa-cart-page .khqa-cart .woocommerce :is(.e-shop-table,.e-cart-totals,.coupon) { margin:0; padding:0; border:0; border-radius:0; background:transparent; box-shadow:none; }
.khqa-cart-page .khqa-cart .woocommerce table.shop_table { width:100%; margin:0; border:0; border-collapse:collapse; border-spacing:0; font-size:15px; }
.khqa-cart-page .khqa-cart .woocommerce .woocommerce-cart-form__contents :is(thead,tbody) { display:block; }
.khqa-cart-page .khqa-cart .woocommerce .woocommerce-cart-form__contents tr { display:grid; grid-template-columns:88px minmax(0,1fr) minmax(125px,.5fr) 140px minmax(125px,.5fr) 44px; grid-template-areas:'thumbnail name price quantity subtotal remove'; align-items:center; gap:20px; }
.khqa-cart-page .khqa-cart .woocommerce .woocommerce-cart-form__contents :is(th,td) { width:auto; min-width:0; padding:0; border:0; background:transparent; color:var(--khqa-cart-ink); text-align:start; line-height:1.8; }
.khqa-cart-page .khqa-cart .woocommerce .woocommerce-cart-form__contents thead tr { padding:18px 0; border-bottom:1px solid var(--khqa-cart-line); }
.khqa-cart-page .khqa-cart .woocommerce .woocommerce-cart-form__contents th { font-size:13px; font-weight:400; color:var(--khqa-cart-muted); }
.khqa-cart-page .khqa-cart .woocommerce .woocommerce-cart-form__contents .cart_item { padding:22px 0; border-bottom:1px solid var(--khqa-cart-line); }
.khqa-cart-page .khqa-cart .woocommerce .woocommerce-cart-form__contents .product-thumbnail { grid-area:thumbnail; position:static; }
.khqa-cart-page .khqa-cart .woocommerce .woocommerce-cart-form__contents .product-name { grid-area:name; overflow-wrap:anywhere; }
.khqa-cart-page .khqa-cart .woocommerce .woocommerce-cart-form__contents .product-price { grid-area:price; }
.khqa-cart-page .khqa-cart .woocommerce .woocommerce-cart-form__contents .product-quantity { grid-area:quantity; }
.khqa-cart-page .khqa-cart .woocommerce .woocommerce-cart-form__contents .product-subtotal { grid-area:subtotal; }
.khqa-cart-page .khqa-cart .woocommerce .woocommerce-cart-form__contents .product-remove { grid-area:remove; position:static; z-index:auto; }
.khqa-cart-page .khqa-cart .woocommerce .woocommerce-cart-form .product-thumbnail img { display:block; width:88px; max-width:100%; height:110px; object-fit:cover; border-radius:8px; }
.khqa-cart-page .khqa-cart .woocommerce .product-name a { color:var(--khqa-cart-ink); font-size:16px; font-weight:600; line-height:1.9; text-decoration:none; }
.khqa-cart-page .khqa-cart .woocommerce .product-name :is(dl,dd,dt,p) { margin:0; font-size:14px; line-height:1.8; }
.khqa-cart-page .khqa-cart .woocommerce .product-name dl { margin-top:6px; color:var(--khqa-cart-muted); }
.khqa-cart-page .khqa-cart .woocommerce .product-name dt { font-weight:400; }
.khqa-cart-page .khqa-cart .woocommerce .amount { white-space:nowrap; font-variant-numeric:tabular-nums; }
/* wp-custom-css globally forces amount color with !important. */
.khqa-cart-page .khqa-cart .woocommerce .woocommerce-Price-amount.amount { color:var(--khqa-cart-ink) !important; }
.khqa-cart-page .khqa-cart .woocommerce .woocommerce-Price-currencySymbol { font-size:.8em; font-weight:400; margin-inline-start:3px; }
.khqa-cart-page .khqa-cart .woocommerce .product-subtotal { font-weight:600; }
.khqa-cart-page .khqa-cart .woocommerce .product-price { font-size:14px; }
.khqa-cart-page .khqa-cart .woocommerce .product-price del { color:var(--khqa-cart-muted); font-size:12px; }
.khqa-cart-page .khqa-cart .woocommerce .product-price ins { background:none; text-decoration:none; }
.khqa-cart-page .khqa-cart .woocommerce .woocommerce-cart-form .product-remove a.remove { display:inline-grid; place-items:center; width:44px; height:44px; min-width:44px; margin:0; padding:0; font:24px/1 Arial,sans-serif; text-align:center; text-decoration:none;
 /* WooCommerce uses !important for the remove color. */
 color:#555 !important; background:#fff; border:1px solid var(--khqa-cart-line); border-radius:50%; touch-action:manipulation; transition:background-color .15s ease,border-color .15s ease;
}
.khqa-cart-page .khqa-cart .woocommerce .woocommerce-cart-form .product-remove a.remove::before { content:none; }
.khqa-cart-page .khqa-cart .woocommerce .woocommerce-cart-form .product-remove a.remove:hover { background:#faf4f4; border-color:#c9a4a4; }
/* Preserve the existing quantity plugin's buttons, validation and live limits. */
.khqa-cart-page .khqa-cart .woocommerce .product-quantity .quantity { display:inline-grid; grid-template-columns:44px 48px 44px; grid-template-areas:'plus input minus' 'message message message'; gap:0; width:136px; min-height:44px; margin:0; padding:0; color:var(--khqa-cart-ink); background:transparent; border:0; border-radius:0; direction:rtl; }
.khqa-cart-page .khqa-cart .woocommerce .quantity::before { content:none; }
.khqa-cart-page .khqa-cart .woocommerce .quantity .khs-qty-button { min-width:44px; width:44px; height:44px; min-height:44px; font-size:20px; }
.khqa-cart-page .khqa-cart .woocommerce .quantity input.qty { grid-area:input;
 /* wp-custom-css constrains quantity to 20px !important. */
 width:48px !important; min-width:48px; max-width:48px; height:44px; min-height:44px; max-height:none; font-size:16px; line-height:normal; color:var(--khqa-cart-ink); direction:ltr;
}
.khqa-cart-page .khqa-cart .woocommerce .quantity .khs-qty-limit-message { max-width:136px; margin-top:4px; font-size:12px; line-height:1.7; color:var(--khqa-cart-muted); }
.khqa-cart-page .khqa-cart .woocommerce .quantity .khs-qty-button--plus { grid-area:plus; }
.khqa-cart-page .khqa-cart .woocommerce .quantity .khs-qty-button--minus { grid-area:minus; }
/* Elementor gives the final tbody row table-row display; keep a full-width action row. */
.khqa-cart-page .khqa-cart .woocommerce .woocommerce-cart-form__contents tbody tr:has(> td.actions) { display:block; width:100%; padding:0; }
.khqa-cart-page .khqa-cart .woocommerce .woocommerce-cart-form__contents td.actions { display:flex; justify-content:flex-start; width:100%; padding:18px 0; }
.khqa-cart-page .khqa-cart .woocommerce :is(button.button[name='update_cart'],button.button[name='apply_coupon'],.return-to-shop .button) { display:inline-flex; justify-content:center; align-items:center; min-height:48px; width:auto; margin:0; padding:10px 20px; font-size:15px; font-weight:500; line-height:1.6; color:var(--khqa-cart-ink); background:#fff; border:1px solid #c9c6c2; border-radius:8px; box-shadow:none; text-decoration:none; touch-action:manipulation; cursor:pointer; }
/* Elementor post-8 targets .shop_table .button:disabled[disabled]:hover.
 * Scope and specify every state together so its dark hover cannot leak in. */
.khqa-cart-page .khqa-cart .woocommerce .woocommerce-cart-form .actions button.button[name='update_cart']:disabled,
.khqa-cart-page .khqa-cart .woocommerce .woocommerce-cart-form .actions button.button[name='update_cart']:disabled:is(:hover,:focus,:active) { opacity:1; color:#777; border-color:var(--khqa-cart-line); background:#fafafa; box-shadow:none; cursor:default; }
.khqa-cart-page .khqa-cart .woocommerce .woocommerce-cart-form button.button:is([name='update_cart'],[name='apply_coupon']):not(:disabled):is(:hover,:focus-visible,:active) { color:var(--khqa-cart-ink); background:#f6f5f3; border-color:#aaa59f; box-shadow:none; }
/* Reserve the label's space before AJAX enhancement to prevent a layout jump. */
.khqa-cart-page .khqa-cart .woocommerce .coupon { position:relative; display:block; width:100%; padding:50px 0 24px; border-top:1px solid var(--khqa-cart-line); float:none; }
.khqa-cart-page .khqa-cart .woocommerce .khqa-cart__coupon-label { position:absolute; inset-block-start:18px; inset-inline-start:0; display:block; margin:0; color:var(--khqa-cart-muted); font-size:14px; line-height:24px; }
.khqa-cart-page .khqa-cart .woocommerce .coupon .form-row { display:flex; flex-direction:row; align-items:stretch; gap:12px; width:100%; margin:0; padding:0; }
.khqa-cart-page .khqa-cart .woocommerce .coupon .coupon-col-start { flex:1 1 auto; width:auto; min-width:0; padding:0; }
.khqa-cart-page .khqa-cart .woocommerce .coupon .coupon-col-end { flex:0 0 auto; width:auto; padding:0; }
.khqa-cart-page .khqa-cart .woocommerce .coupon input.input-text { width:100%; min-width:0; min-height:48px; margin:0; padding:10px 14px; color:var(--khqa-cart-ink); font-size:16px; line-height:1.6; text-align:start; background:#fff; border:1px solid #c9c6c2; border-radius:8px; box-shadow:none; }
.khqa-cart-page .khqa-cart .woocommerce .coupon input.has-error { border-color:var(--khqa-cart-accent); }
.khqa-cart-page .khqa-cart .woocommerce .coupon-error-notice { margin:8px 0 0; color:var(--khqa-cart-accent); font-size:14px; line-height:1.9; overflow-wrap:anywhere; }
.khqa-cart-page .khqa-cart .woocommerce .e-cart-totals { padding:0 24px; }
.khqa-cart-page .khqa-cart .woocommerce .cart-collaterals { margin-top:0; }
.khqa-cart-page .khqa-cart .woocommerce .cart_totals h2 { margin:0 0 16px; padding:0; color:var(--khqa-cart-ink); font-size:22px; font-weight:600; line-height:1.8; }
.khqa-cart-page .khqa-cart .woocommerce .cart_totals table { display:table; }
.khqa-cart-page .khqa-cart .woocommerce .cart_totals table tr { display:table-row; background:#fff; }
.khqa-cart-page .khqa-cart .woocommerce .cart_totals table.shop_table_responsive tbody :is(th,td) { display:table-cell; padding:12px 0; border:0; background:#fff; color:var(--khqa-cart-ink); font-size:15px; font-weight:400; line-height:1.8; text-align:start; vertical-align:top; }
.khqa-cart-page .khqa-cart .woocommerce .cart_totals th { width:50%; overflow-wrap:anywhere; padding-inline-end:16px; }
.khqa-cart-page .khqa-cart .woocommerce .cart_totals td { width:50%; text-align:end; }
.khqa-cart-page .khqa-cart .woocommerce .cart_totals table.shop_table_responsive td::before { display:none; content:none; }
.khqa-cart-page .khqa-cart .woocommerce .cart_totals:not(:has(.cart-discount,.fee,.tax-rate,.tax-total)) .cart-subtotal { display:none; }
.khqa-cart-page .khqa-cart .woocommerce .cart_totals .order-total :is(th,td) { border-top:1px solid var(--khqa-cart-line); padding-top:18px; font-size:17px; font-weight:600; }
.khqa-cart-page .khqa-cart .woocommerce .cart_totals .order-total .amount { font-size:22px; font-weight:600; }
.khqa-cart-page .khqa-cart .woocommerce .cart_totals .woocommerce-remove-coupon { display:inline-flex; align-items:center; min-height:44px; padding-inline-start:12px; color:var(--khqa-cart-accent); font-size:14px; }
.khqa-cart-page .khqa-cart .woocommerce .wc-proceed-to-checkout { padding:0; margin:4px 0 0; }
.khqa-cart-page .khqa-cart .woocommerce .khqa-cart__shipping-note { margin:0 0 16px; color:var(--khqa-cart-muted); font-size:14px; line-height:1.9; }
.khqa-cart-page .khqa-cart .woocommerce a.checkout-button { display:flex; align-items:center; justify-content:center; width:100%; min-height:52px; margin:0; padding:12px 20px; color:#fff; background:var(--khqa-cart-accent); border:1px solid var(--khqa-cart-accent); border-radius:8px; box-shadow:none; font-size:17px; font-weight:600; line-height:1.6; text-align:center; text-decoration:none; scroll-margin-block:150px; }
.khqa-cart-page .khqa-cart .woocommerce a.checkout-button:hover { background:#902326; color:#fff; }
.khqa-cart-page .khqa-cart .woocommerce :is(a,button,input):focus-visible { outline:2px solid var(--khqa-cart-accent); outline-offset:3px; }
/* Elementor footer hides WC notices globally. Restore only the Cart namespace. */
.khqa-cart-page .khqa-cart .woocommerce .woocommerce-notices-wrapper { display:block; }
.khqa-cart-page .khqa-cart-notices { padding-bottom:0; }
.khqa-cart-page .khqa-cart-notices :is(.woocommerce-error,.woocommerce-message,.woocommerce-info),
.khqa-cart-page .khqa-cart .woocommerce :is(.woocommerce-error,.woocommerce-message,.woocommerce-info) { display:block; margin:0 0 20px; padding:14px 18px; color:var(--khqa-cart-ink); font:inherit; font-size:15px; background:#f7f7f5; border:1px solid var(--khqa-cart-line); border-inline-start:3px solid #72776b; border-radius:8px; box-shadow:none; list-style:none; }
.khqa-cart-page .khqa-cart-notices .woocommerce-error,
.khqa-cart-page .khqa-cart .woocommerce .woocommerce-error { background:#fff7f6; border-inline-start-color:var(--khqa-cart-accent); }
.khqa-cart-page .khqa-cart-notices :is(.woocommerce-error,.woocommerce-message,.woocommerce-info)::before,
.khqa-cart-page .khqa-cart .woocommerce :is(.woocommerce-error,.woocommerce-message,.woocommerce-info)::before { display:none; }
.khqa-cart-page .khqa-cart-notices :is(.woocommerce-error,.woocommerce-message,.woocommerce-info) a,
.khqa-cart-page .khqa-cart .woocommerce :is(.woocommerce-error,.woocommerce-message,.woocommerce-info) a { color:var(--khqa-cart-ink); text-decoration:underline; }
.khqa-cart-page .khqa-cart-notices .cart-empty.woocommerce-info,
.khqa-cart-page .khqa-cart .woocommerce .cart-empty.woocommerce-info { margin:0; padding:32px 20px 16px; border:0; background:#fff; text-align:center; font-size:20px; }
.khqa-cart-page .khqa-cart .woocommerce .return-to-shop { margin:0; padding:0 20px 48px; text-align:center; }
.khqa-cart-page .khqa-cart .woocommerce .return-to-shop a.button { background:var(--khqa-cart-accent); color:#fff; border-color:var(--khqa-cart-accent); }
.khqa-cart-page .khqa-cart .woocommerce .blockUI.blockOverlay { cursor:progress; }
@media (max-width:1024px) {
 .khqa-cart-page .khqa-cart .woocommerce .woocommerce-cart-form { padding-inline:20px; }
 .khqa-cart-page .khqa-cart .woocommerce .woocommerce-cart-form__contents tr { grid-template-columns:72px minmax(0,1fr) 110px 136px 110px 44px; gap:12px; }
 .khqa-cart-page .khqa-cart .woocommerce .woocommerce-cart-form .product-thumbnail img { width:72px; height:90px; }
}
@media (max-width:900px) {
 .khqa-cart-page .khqa-cart { padding-bottom:calc(140px + env(safe-area-inset-bottom,0px)); }
 .khqa-cart-page .khqa-cart .woocommerce .e-cart__container { gap:26px; }
 .khqa-cart-page .khqa-cart .woocommerce .woocommerce-cart-form { padding-inline:16px; }
 .khqa-cart-page .khqa-cart .woocommerce .woocommerce-cart-form__contents thead { display:none; }
 .khqa-cart-page .khqa-cart .woocommerce .woocommerce-cart-form__contents,
 .khqa-cart-page .khqa-cart .woocommerce .woocommerce-cart-form__contents tbody { display:block; width:100%; }
 .khqa-cart-page .khqa-cart .woocommerce .woocommerce-cart-form__contents .cart_item { grid-template-columns:72px minmax(0,1fr) 44px; grid-template-areas:'thumbnail name name' 'thumbnail price price' 'quantity quantity remove' 'subtotal subtotal subtotal'; gap:10px 14px; padding:20px 0; }
 .khqa-cart-page .khqa-cart .woocommerce .woocommerce-cart-form__contents .cart_item td {
 /* Site CSS forces table-cell/80px padding; Woo's RTL smallscreen sheet
  * forces left alignment !important for its label/value table pattern. */
 display:block !important; padding:0 !important; text-align:start !important; position:static; background:transparent;
 }
 .khqa-cart-page .khqa-cart .woocommerce .woocommerce-cart-form__contents td::before { display:none; }
 .khqa-cart-page .khqa-cart .woocommerce .product-thumbnail { align-self:start; }
 .khqa-cart-page .khqa-cart .woocommerce .woocommerce-cart-form .product-thumbnail img { max-width:100%; width:72px; height:90px; }
 .khqa-cart-page .khqa-cart .woocommerce .product-name { align-self:end; }
 .khqa-cart-page .khqa-cart .woocommerce .product-name a { font-size:16px; }
 .khqa-cart-page .khqa-cart .woocommerce .product-price { align-self:start; font-size:14px; }
 .khqa-cart-page .khqa-cart .woocommerce .product-quantity { margin-top:4px; }
 .khqa-cart-page .khqa-cart .woocommerce .product-remove { align-self:start; margin-top:4px; }
 .khqa-cart-page .khqa-cart .woocommerce .woocommerce-cart-form__contents .cart_item td.product-subtotal { display:flex !important; justify-content:space-between; align-items:baseline; gap:8px; margin-top:2px; font-size:16px; }
 .khqa-cart-page .khqa-cart .woocommerce .woocommerce-cart-form__contents .product-subtotal::before { display:block; float:none; content:attr(data-title); color:var(--khqa-cart-muted); font-size:14px; font-weight:400; }
 .khqa-cart-page .khqa-cart .woocommerce .woocommerce-cart-form__contents td.actions { padding:16px 0; }
 .khqa-cart-page .khqa-cart .woocommerce .e-cart-totals { padding-inline:4px; }
 .khqa-cart-page .khqa-cart .woocommerce .cart_totals table.shop_table_responsive tbody :is(th,td) { display:table-cell; }
 .khqa-cart-page .khqa-cart .woocommerce .cart_totals h2 { font-size:20px; }
 .khqa-cart-page .khqa-cart .woocommerce .cart_totals .order-total .amount { font-size:20px; }
}
@media (max-width:600px) {
 .khqa-cart-page .khqa-cart .woocommerce .woocommerce-cart-form { --update-cart-button-width:100%; }
 .khqa-cart-page .khqa-cart .woocommerce .coupon .form-row { flex-direction:column; gap:10px; }
 .khqa-cart-page .khqa-cart .woocommerce .coupon :is(.coupon-col-start,.coupon-col-end) { width:100%; }
 .khqa-cart-page .khqa-cart .woocommerce :is(button.button[name='update_cart'],button.button[name='apply_coupon']) { width:100%; }
 .khqa-cart-page .khqa-cart .woocommerce .cart_totals .order-total th { width:42%; font-size:15px; }
 .khqa-cart-page .khqa-cart .woocommerce .cart_totals .order-total td { width:58%; }
}
@media (prefers-reduced-motion:reduce) {
 .khqa-cart-page .khqa-cart .woocommerce .woocommerce-cart-form .product-remove a.remove { transition:none; }
}
