/* BOKO cart + checkout. WooCommerce markup and behaviour remain native. */
:root { --boko-ink:#171717; --boko-soft:#525252; --boko-muted:#737373; --boko-line:#e5e5e5; --boko-panel:#f7f7f5; }
body.boko-commerce { margin:0; background:#fff; color:var(--boko-ink); font:15px/1.55 Geist,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; -webkit-font-smoothing:antialiased; }
body.boko-commerce * { box-sizing:border-box; }
body.boko-commerce a { color:inherit; }
body.boko-commerce .boko-commerce-wrap { width:min(calc(100% - 40px),1120px); margin-inline:auto; }

body.boko-commerce .boko-commerce-head { border-bottom:1px solid var(--boko-line); background:#fff; }
body.boko-commerce .boko-commerce-head__in { width:min(calc(100% - 40px),1120px); min-height:77px; margin-inline:auto; display:flex; align-items:center; justify-content:space-between; gap:16px; }
body.boko-commerce .boko-commerce-logo { display:inline-flex; align-items:center; flex:none; }
body.boko-commerce .boko-commerce-logo img { display:block; width:112px; height:44px; object-fit:contain; object-position:left center; }
body.boko-commerce .boko-commerce-nav { display:flex; gap:22px; margin-left:auto; font-size:13.5px; color:var(--boko-soft); }
body.boko-commerce .boko-commerce-nav a,
body.boko-commerce .boko-commerce-back { text-decoration:none; }
body.boko-commerce .boko-commerce-cta { height:40px; padding:0 18px; border-radius:999px; background:var(--boko-ink); color:#fff; display:inline-flex; align-items:center; font-size:13.5px; text-decoration:none; }
body.boko-commerce .boko-commerce-back { font-size:13px; color:var(--boko-muted); }

body.boko-commerce .boko-commerce-intro { padding-top:22px; }
body.boko-commerce .boko-commerce-steps { display:flex; gap:8px; align-items:center; font-size:12px; letter-spacing:.06em; text-transform:uppercase; color:var(--boko-muted); }
body.boko-commerce .boko-commerce-steps b { color:var(--boko-ink); font-weight:500; }
body.boko-commerce .boko-commerce-steps i { color:var(--boko-line); font-style:normal; }
body.boko-commerce .boko-commerce-intro h1 { margin:14px 0 4px; font-size:clamp(1.9rem,4vw,2.6rem); line-height:1.1; letter-spacing:-.035em; font-weight:600; }
body.boko-commerce .boko-commerce-intro p { margin:0 0 34px; color:var(--boko-soft); }
body.boko-commerce .boko-commerce-content { padding-bottom:80px; }
body.boko-commerce :is(button,input,select,textarea,a):focus-visible { outline:2px solid var(--boko-ink); outline-offset:3px; }

/* CART */
body.boko-commerce-cart .boko-commerce-content > .woocommerce { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(280px,.85fr); gap:0 56px; align-items:start; }
body.boko-commerce-cart .boko-commerce-content > .woocommerce > :is(.woocommerce-notices-wrapper,.woocommerce-message,.woocommerce-error,.woocommerce-info) { grid-column:1/-1; }
body.boko-commerce-cart .woocommerce-cart-form { grid-column:1; min-width:0; }
body.boko-commerce-cart .cart-collaterals { grid-column:2; grid-row:2/span 3; position:sticky; top:24px; min-width:0; }
body.boko-commerce-cart .woocommerce-cart-form > .row { margin:0; }
body.boko-commerce-cart .tb-cart-form { width:100%; max-width:none; flex:0 0 100%; padding:0; }
body.boko-commerce-cart .shop_table.cart { border:0; }
body.boko-commerce-cart .shop_table.cart > .cart_item.head { display:none; }
body.boko-commerce-cart .shop_table.cart > .cart_item { display:grid; grid-template-columns:104px minmax(0,1fr) auto; gap:6px 18px; padding:22px 0; border-top:1px solid var(--boko-line); align-items:start; }
body.boko-commerce-cart .shop_table.cart > .cart_item:nth-child(2) { border-top:0; padding-top:0; }
body.boko-commerce-cart .cart_item .product-info { grid-column:1/3; display:grid; grid-template-columns:104px minmax(0,1fr); gap:18px; min-width:0; }
body.boko-commerce-cart .cart_item .product-info > a:first-child { grid-row:1/8; }
body.boko-commerce-cart .cart_item .product-info > a:first-child > img { width:104px; height:130px; border-radius:14px; object-fit:cover; display:block; }
body.boko-commerce-cart .cart_item .product-name { min-width:0; }
body.boko-commerce-cart .cart_item .product-name > a.name { display:block; margin:0 0 3px; color:var(--boko-ink); font-size:17px; font-weight:500; letter-spacing:-.02em; text-decoration:none; }
body.boko-commerce-cart .cart_item .product-name::after { content:"Made to order · 4–5 weeks"; display:block; margin:3px 0 0; font-size:12.5px; color:var(--boko-muted); }
body.boko-commerce-cart .cart_item dl.variation { grid-column:2; display:grid; grid-template-columns:max-content minmax(0,1fr); gap:5px 12px; margin:12px 0 0; max-width:390px; font-size:13px; color:var(--boko-soft); }
body.boko-commerce-cart .cart_item dl.variation dt { color:var(--boko-muted); font-weight:400; }
body.boko-commerce-cart .cart_item dl.variation dd { margin:0; }
body.boko-commerce-cart .cart_item dl.variation :is(p,span) { margin:0; font:inherit; }
body.boko-commerce-cart .cart_item .wcpa_cart_type_image-group img { position:static!important; width:80px; height:auto; border-radius:0; object-fit:contain; }
body.boko-commerce-cart .cart_item .wcpa_cart_price { color:#a3a3a3; font-size:11.5px; white-space:nowrap; }
body.boko-commerce-cart .cart_item .product-price { grid-column:3; grid-row:1; text-align:right; font-weight:500; white-space:nowrap; }
body.boko-commerce-cart .cart_item .product-quantity { grid-column:2; margin-top:10px; }
body.boko-commerce-cart .cart_item .product-subtotal { grid-column:3; grid-row:1; text-align:right; font-weight:500; white-space:nowrap; }
body.boko-commerce-cart .cart_item .product-price { display:none; }
body.boko-commerce-cart .cart_item .product-remove { grid-column:2; margin-top:-42px; margin-left:138px; }
body.boko-commerce-cart .cart_item .product-remove a { color:var(--boko-muted); text-decoration:underline; text-underline-offset:3px; font-size:0; }
body.boko-commerce-cart .cart_item .product-remove a::after { content:"Remove"; font-size:13px; }
body.boko-commerce-cart .quantity { display:inline-flex; align-items:center; height:40px; border:1px solid var(--boko-line); border-radius:999px; overflow:hidden; }
body.boko-commerce-cart .quantity :is(button,input) { height:38px; border:0!important; background:none!important; box-shadow:none!important; }
body.boko-commerce-cart .quantity button { width:40px; color:var(--boko-soft); }
body.boko-commerce-cart .quantity input { width:38px; padding:0; text-align:center; }
body.boko-commerce-cart .cart-actions { margin-top:24px; }
body.boko-commerce-cart .cart-actions .continue-shopping { color:var(--boko-soft); font-size:13.5px; text-decoration:underline; text-underline-offset:3px; }
body.boko-commerce-cart .cart-actions button[name="update_cart"] { border-radius:999px; }
body.boko-commerce-cart .coupon { margin-top:18px; padding-top:16px; border-top:1px solid var(--boko-line); }
body.boko-commerce-cart .coupon input { min-height:42px; border:1px solid var(--boko-line); border-radius:10px; }
body.boko-commerce-cart .coupon button { min-height:42px; border:1px solid var(--boko-ink); border-radius:10px; background:#fff; color:var(--boko-ink); }
body.boko-commerce-cart .cart_totals { width:100%!important; padding:22px; border:1px solid var(--boko-line); border-radius:20px; background:var(--boko-panel); }
body.boko-commerce-cart .cart_totals h2 { margin:0 0 14px; color:var(--boko-muted); font-size:12px; font-weight:500; letter-spacing:.1em; text-transform:uppercase; }
body.boko-commerce-cart .cart_totals table { margin:0; border:0; }
body.boko-commerce-cart .cart_totals :is(th,td) { padding:7px 0; border:0; background:none; font-size:14px; }
body.boko-commerce-cart .cart_totals th { font-weight:400; color:var(--boko-soft); }
body.boko-commerce-cart .cart_totals td { text-align:right; }
body.boko-commerce-cart .cart_totals .order-total :is(th,td) { padding-top:14px; border-top:1px solid var(--boko-line); font-size:19px; color:var(--boko-ink); }
body.boko-commerce-cart .wc-proceed-to-checkout a.checkout-button { min-height:54px; margin:18px 0 0; border-radius:999px; background:var(--boko-ink); color:#fff; display:flex; align-items:center; justify-content:center; font:500 15px/1.4 Geist,sans-serif; }

/* CHECKOUT */
body.boko-commerce-checkout .boko-commerce-content > .woocommerce > .wrapper-login-coupon { margin-bottom:18px; }
body.boko-commerce-checkout form.checkout { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(300px,.9fr); gap:56px; margin:0; align-items:start; }
body.boko-commerce-checkout form.checkout > .billing-wrapper { width:100%; max-width:none; padding:0; }
body.boko-commerce-checkout form.checkout > :is(.review-wrapper,.order-review-wrapper,.orders-wrapper,.order-wrapper) { width:100%; max-width:none; padding:22px; border:1px solid var(--boko-line); border-radius:20px; background:var(--boko-panel); position:sticky; top:24px; }
body.boko-commerce-checkout #customer_details { margin:0; }
body.boko-commerce-checkout #customer_details > :is(.col-1,.col-2) { width:100%; max-width:none; padding:0; }
body.boko-commerce-checkout :is(.woocommerce-billing-fields,.woocommerce-shipping-fields,.woocommerce-additional-fields) h3,
body.boko-commerce-checkout #order_review_heading { margin:0 0 14px; color:var(--boko-muted); font-size:12px; font-weight:500; letter-spacing:.1em; text-transform:uppercase; }
body.boko-commerce-checkout .form-row { margin:0 0 12px; }
body.boko-commerce-checkout .form-row label { margin-bottom:6px; color:var(--boko-soft); font-size:12.5px; line-height:1.4; }
body.boko-commerce-checkout .form-row :is(input.input-text,select,textarea,.select2-selection) { min-height:46px; padding:10px 14px; border:1px solid var(--boko-line); border-radius:12px; background:#fff; color:var(--boko-ink); box-shadow:none; font:inherit; }
body.boko-commerce-checkout .form-row textarea { min-height:96px; }
body.boko-commerce-checkout .form-row-first,
body.boko-commerce-checkout .form-row-last { width:calc(50% - 6px); }
body.boko-commerce-checkout #order_review { font-size:14px; }
body.boko-commerce-checkout #order_review table { border:0; margin:0; }
body.boko-commerce-checkout #order_review :is(th,td) { padding:8px 0; border-color:var(--boko-line); background:none; }
body.boko-commerce-checkout #order_review td { text-align:right; }
body.boko-commerce-checkout #payment { margin-top:22px; border:1px solid var(--boko-line); border-radius:16px; overflow:hidden; background:#fff; }
body.boko-commerce-checkout #payment .payment_methods { border:0; }
body.boko-commerce-checkout #payment .payment_box { background:#fff; }
body.boko-commerce-checkout #place_order { width:100%; min-height:54px; border:0; border-radius:999px; background:var(--boko-ink); color:#fff; font:500 15px/1.4 Geist,sans-serif; }
body.boko-commerce-checkout .woocommerce-privacy-policy-text,
body.boko-commerce-checkout .woocommerce-terms-and-conditions-wrapper { color:var(--boko-muted); font-size:12.5px; line-height:1.5; }
body.boko-commerce-checkout .boko-order-mobile-toggle-wrap { display:none; }
/* ORDER RECEIVED: native WooCommerce details and conversion hooks stay in the_content(). */
body.boko-commerce-received .boko-confirmation-summary { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin-bottom:16px; }
body.boko-commerce-received .boko-confirmation-summary > div { min-width:0; padding:22px 24px; border:1px solid var(--boko-line); border-radius:20px; background:var(--boko-panel); }
body.boko-commerce-received .boko-confirmation-summary span { display:block; margin-bottom:8px; color:var(--boko-muted); font-size:12px; letter-spacing:.06em; text-transform:uppercase; }
body.boko-commerce-received .boko-confirmation-summary strong { display:block; overflow-wrap:anywhere; color:var(--boko-ink); font-size:20px; font-weight:500; letter-spacing:-.02em; }
body.boko-commerce-received .boko-confirmation-help { margin-bottom:30px; color:var(--boko-soft); }
body.boko-commerce-received .boko-confirmation-help a { color:var(--boko-ink); text-underline-offset:3px; }
body.boko-commerce-received .boko-commerce-content > .woocommerce { max-width:880px; }
body.boko-commerce-received :is(.woocommerce-order-overview,.woocommerce-order-details,.woocommerce-customer-details) { margin-bottom:32px; }
body.boko-commerce-received .woocommerce-order-details table { width:100%!important; max-width:100%!important; table-layout:fixed; }
body.boko-commerce-received .woocommerce-order-details :is(th,td) { width:auto!important; min-width:0!important; overflow-wrap:anywhere; white-space:normal!important; }
body.boko-commerce-received .woocommerce-order { min-width:0; max-width:100%; }

body.boko-commerce .boko-commerce-foot { border-top:1px solid var(--boko-line); }
body.boko-commerce .boko-commerce-foot__in { min-height:84px; padding-block:22px; display:flex; align-items:flex-start; gap:18px; flex-wrap:wrap; color:var(--boko-muted); font-size:12.5px; }
body.boko-commerce .boko-commerce-foot a { text-decoration:none; }

@media (max-width:900px) {
  body.boko-commerce-received .boko-confirmation-summary { grid-template-columns:1fr; }
  body.boko-commerce .boko-commerce-nav { display:none; }
  body.boko-commerce .boko-commerce-head__in { min-height:72px; }
  body.boko-commerce .boko-commerce-logo img { width:96px; }
  body.boko-commerce .boko-commerce-content { padding-bottom:56px; }
  body.boko-commerce-cart .boko-commerce-content > .woocommerce { grid-template-columns:1fr; gap:28px; }
  body.boko-commerce-cart .woocommerce-cart-form,
  body.boko-commerce-cart .cart-collaterals { grid-column:1; grid-row:auto; position:static; }
  body.boko-commerce-cart .cart_totals .order-total,
  body.boko-commerce-cart .wc-proceed-to-checkout a.checkout-button { position:static!important; inset:auto!important; width:auto!important; }
  body.boko-commerce-cart .shop_table.cart > .cart_item { grid-template-columns:84px minmax(0,1fr); gap:6px 14px; }
  body.boko-commerce-cart .cart_item .product-info { grid-column:1/3; grid-template-columns:84px minmax(0,1fr); gap:14px; }
  body.boko-commerce-cart .cart_item .product-info > a:first-child > img { width:84px; height:105px; border-radius:12px; }
  body.boko-commerce-cart .cart_item .product-subtotal { grid-column:2; grid-row:auto; text-align:left; }
  body.boko-commerce-cart .cart_item .product-quantity { grid-column:2; }
  body.boko-commerce-cart .cart_item .product-remove { grid-column:2; }
  body.boko-commerce-checkout .boko-order-mobile-toggle-wrap { display:block; margin-bottom:16px; }
  body.boko-commerce-checkout .boko-order-mobile-toggle { width:100%; min-height:54px; padding:0 16px; border:1px solid var(--boko-line); border-radius:16px; background:var(--boko-panel); color:var(--boko-ink); display:flex; align-items:center; justify-content:space-between; }
  body.boko-commerce-checkout .boko-order-mobile-toggle b { font-size:17px; }
  body.boko-commerce-checkout .boko-order-mobile-toggle span { color:var(--boko-muted); font-size:13px; }
  body.boko-commerce-checkout form.checkout { grid-template-columns:1fr; gap:28px; }
  body.boko-commerce-checkout form.checkout > :is(.review-wrapper,.order-review-wrapper,.orders-wrapper,.order-wrapper) { grid-row:1; position:static; padding:16px; }
  body.boko-commerce-checkout form.checkout > .billing-wrapper { grid-row:2; }
  body.boko-commerce-checkout #order_review.boko-order-review-collapsed { display:none; }
  body.boko-commerce-checkout #place_order { position:static!important; inset:auto!important; width:100%!important; }
  body.boko-commerce-checkout .form-row-first,
  body.boko-commerce-checkout .form-row-last { width:100%; float:none; }
}

@media (max-width:480px) {
  body.boko-commerce .boko-commerce-wrap,
  body.boko-commerce .boko-commerce-head__in { width:calc(100% - 32px); }
  body.boko-commerce .boko-commerce-cta { height:38px; padding-inline:14px; font-size:12.5px; }
  body.boko-commerce .boko-commerce-intro { padding-top:18px; }
  body.boko-commerce .boko-commerce-intro p { margin-bottom:26px; }
  body.boko-commerce-cart .cart_item dl.variation { grid-template-columns:minmax(82px,max-content) 1fr; gap:4px 10px; }
  body.boko-commerce-cart .cart_item .product-info { display:grid!important; grid-template-columns:84px minmax(0,1fr)!important; gap:14px!important; align-items:start; width:100%!important; }
  body.boko-commerce-cart .cart_item .product-info > a:first-child { grid-column:1; grid-row:1/span 3; width:84px!important; min-width:84px; }
  body.boko-commerce-cart .cart_item .product-info > a:first-child > img { position:static!important; }
  body.boko-commerce-cart .cart_item .product-name { grid-column:2; width:auto!important; min-width:0; overflow-wrap:anywhere; }
  body.boko-commerce-cart .cart_item .product-name > a.name { white-space:normal!important; overflow:visible!important; text-overflow:clip!important; }
  body.boko-commerce-cart .cart_item dl.variation { display:grid!important; width:100%!important; grid-template-columns:100px minmax(0,1fr)!important; }
  body.boko-commerce-cart .cart_item .product-remove { position:static!important; grid-column:2; grid-row:2; justify-self:end; width:auto!important; min-width:72px!important; justify-content:flex-end; margin:-40px 0 0!important; }
  body.boko-commerce-cart [id^="wc-stripe-express-checkout-element-"] { width:100%!important; max-width:100%!important; min-width:0!important; }
  body.boko-commerce-cart [id^="wc-stripe-express-checkout-element-"] iframe { width:100%!important; max-width:100%!important; }
  body.boko-commerce-cart #wc-stripe-express-checkout-element { display:grid!important; grid-template-columns:minmax(0,1fr)!important; width:100%!important; }
  body.boko-commerce-cart #wc-stripe-express-checkout-element > .StripeElement { width:100%!important; min-width:0!important; max-width:100%!important; }
}

body.boko-commerce-cart .cart_item .product-remove { min-width:86px!important; overflow:visible!important; }
body.boko-commerce-cart .cart_item .product-remove a { display:inline-flex!important; align-items:center; gap:4px; white-space:nowrap!important; overflow:visible!important; }

body.boko-commerce-cart .cart_item .product-remove a { width:auto!important; max-width:none!important; }

@media (max-width:480px) {
  body.boko-commerce-cart .cart_item .product-info { display:block!important; }
  body.boko-commerce-cart .cart_item .product-info > a:first-child { float:left!important; margin:0 14px 14px 0!important; }
  body.boko-commerce-cart .cart_item .product-name { display:block!important; }
  body.boko-commerce-cart .cart_item dl.variation { clear:both; width:100%!important; grid-template-columns:100px minmax(0,1fr)!important; }
  body.boko-commerce-cart .cart_item dl.variation dd { min-width:0; overflow-wrap:anywhere; }
}

@media (max-width:480px) {
  body.boko-commerce-checkout #order_review .cart_item { display:block; }
  body.boko-commerce-checkout #order_review table tbody { max-height:none!important; height:auto!important; overflow:visible!important; }
  body.boko-commerce-checkout #order_review .cart_item td { display:block; width:100%; min-width:0; text-align:left; }
  body.boko-commerce-checkout #order_review .cart_item .product-name img { float:left; width:80px; height:80px; object-fit:cover; margin:0 12px 10px 0; }
  body.boko-commerce-checkout #order_review .cart_item dl.variation { clear:both; display:grid; grid-template-columns:100px minmax(0,1fr); gap:4px 8px; width:100%; }
  body.boko-commerce-checkout #order_review .cart_item dl.variation :is(dt,dd) { min-width:0; margin:0; overflow-wrap:anywhere; text-align:left; }
  body.boko-commerce-checkout #order_review .cart_item .product-total { text-align:right; font-weight:600; }
}
/* Hara nests cart totals inside the cart form. */
@media (min-width:901px) {
  body.boko-commerce-cart .boko-commerce-content > .woocommerce { display:block; }
  body.boko-commerce-cart .woocommerce-cart-form > .row { display:grid!important; grid-template-columns:minmax(0,1.6fr) minmax(300px,.85fr); gap:56px; align-items:start; }
  body.boko-commerce-cart .woocommerce-cart-form > .row > .tb-cart-form,
  body.boko-commerce-cart .woocommerce-cart-form > .row > .tb-cart-total { width:100%!important; max-width:none!important; flex:none!important; padding:0!important; min-width:0; }
  body.boko-commerce-cart .tb-cart-total > .row { display:block!important; margin:0!important; }
  body.boko-commerce-cart .tb-cart-total > .row > div { display:block!important; width:100%!important; max-width:none!important; flex:none!important; padding:0!important; }
  body.boko-commerce-cart .cart_item .product-info { display:grid!important; }
  body.boko-commerce-cart .cart_item .product-info > a:first-child { grid-row:1; }
  body.boko-commerce-cart .cart_item .product-name { grid-column:2; grid-row:1; }
  body.boko-commerce-cart .cart_item dl.variation { display:grid!important; grid-template-columns:max-content minmax(0,1fr); }
  body.boko-commerce-cart .cart_item dl.variation :is(dt,dd) { display:block!important; }
  body.boko-commerce-checkout form.checkout { grid-template-columns:minmax(0,1.1fr) minmax(470px,1fr); gap:40px; }
  body.boko-commerce-checkout #order_review table tbody { display:table-row-group!important; max-height:none!important; height:auto!important; overflow:visible!important; }
  body.boko-commerce-checkout #order_review .cart_item { display:table-row!important; }
  body.boko-commerce-checkout #order_review .cart_item td { display:table-cell!important; vertical-align:top; }
  body.boko-commerce-checkout #order_review .cart_item .product-name { text-align:left!important; }
  body.boko-commerce-checkout #order_review .cart_item dl.variation { display:grid!important; grid-template-columns:100px minmax(0,1fr); gap:4px 8px; width:100%; }
  body.boko-commerce-checkout #order_review .cart_item dl.variation :is(dt,dd) { display:block!important; min-width:0; margin:0; overflow-wrap:anywhere; text-align:left; }
}

/* Cart refinements, staging 2026-09-26. Visual changes only. */
body.boko-commerce-cart .cart_item dd.variation-BedSize .wcpa_cart_price { display:none!important; }
body.boko-commerce-cart .cart_item :is(dt,dd).variation-Acrylicwithchrome { display:none!important; }
body.boko-commerce-cart .cart_item dl.variation .wcpa_cart_price { color:var(--boko-ink)!important; }
body.boko-commerce-cart .cart_item :is(.product-subtotal,.product-price,.amount),
body.boko-commerce-cart .cart_totals :is(.amount,.woocommerce-Price-amount,.woocommerce-Price-currencySymbol),
body.boko-commerce-cart .cart_totals .woocommerce-shipping-methods,
body.boko-commerce-cart .cart_totals .order-total :is(th,td) { color:var(--boko-ink)!important; }
body.boko-commerce-cart .cart-actions .continue-shopping,
body.boko-commerce-cart .cart-actions .continue-shopping:hover,
body.boko-commerce-cart .cart_item .product-remove a,
body.boko-commerce-cart .cart_totals .shipping-calculator-button { color:var(--boko-ink)!important; }
body.boko-commerce-cart .cart-actions .continue-shopping { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:0 18px; border:1px solid var(--boko-ink)!important; border-radius:999px; background:#fff!important; text-decoration:none!important; }
body.boko-commerce-cart .cart-actions .continue-shopping :is(i,svg) { display:none!important; }
body.boko-commerce-cart .coupon input[name=apply_coupon] { background:#fff!important; color:var(--boko-ink)!important; border:1px solid var(--boko-ink)!important; border-radius:999px!important; box-shadow:none!important; }
body.boko-commerce-cart .cart_item .product-remove a { text-decoration:none!important; }
body.boko-commerce-cart .cart_item .product-remove a:hover { color:#000!important; }
body.boko-commerce-cart .cart_totals .shipping-calculator-button { font-size:0!important; text-decoration:underline; text-underline-offset:3px; }
body.boko-commerce-cart .cart_totals .shipping-calculator-button::after { content:'Calculated at checkout'; font-size:13px; }
body.boko-commerce-cart .tb-cart-total > .row > :nth-child(2) { padding:22px 22px 0!important; border:1px solid var(--boko-line); border-bottom:0; border-radius:20px 20px 0 0; background:var(--boko-panel); }
body.boko-commerce-cart .tb-cart-total > .row > :nth-child(3) { padding:0 22px 22px!important; border:1px solid var(--boko-line); border-top:0; border-radius:0 0 20px 20px; background:var(--boko-panel); }
body.boko-commerce-cart .cart_totals { padding:0!important; border:0!important; border-radius:0!important; background:transparent!important; }
body.boko-commerce-cart .tb-cart-total .wc-proceed-to-checkout:has(a.checkout-button) { display:block!important; width:100%!important; margin:0!important; padding:0!important; }
body.boko-commerce-cart .tb-cart-total .wc-proceed-to-checkout a.checkout-button { width:100%!important; max-width:none!important; margin:0!important; min-height:56px; background:var(--boko-ink)!important; color:#fff!important; box-shadow:none!important; }
body.boko-commerce-cart .woocommerce-info { border:1px solid var(--boko-line)!important; border-radius:16px; padding:20px!important; background:var(--boko-panel)!important; color:var(--boko-ink)!important; }
body.boko-commerce-cart .woocommerce-info::before { display:none!important; }
body.boko-commerce-cart .return-to-shop .button { display:inline-flex!important; align-items:center; justify-content:center; min-height:48px; padding:0 24px!important; border:0!important; border-radius:999px!important; background:var(--boko-ink)!important; color:#fff!important; box-shadow:none!important; text-decoration:none!important; }
body.boko-commerce-cart .return-to-shop .button::after { content:'Continue shopping'; font-size:14px; }
body.boko-commerce-cart .return-to-shop .button { font-size:0!important; }
@media (max-width:900px) {
  body.boko-commerce-cart .tb-cart-total > .row > :nth-child(2),
  body.boko-commerce-cart .tb-cart-total > .row > :nth-child(3) { width:100%!important; max-width:none!important; }
}

/* Cart finishing rules. */
body.boko-commerce-cart .cart_item dl.variation dt.variation-Acrylicwithchrome,
body.boko-commerce-cart .cart_item dl.variation dd.variation-Acrylicwithchrome { display:none!important; }
body.boko-commerce-cart .continue-to-shop a,
body.boko-commerce-cart .continue-to-shop a:hover { display:inline-flex!important; align-items:center; justify-content:center; min-height:44px; padding:0 18px!important; border:1px solid var(--boko-ink)!important; border-radius:999px!important; background:#fff!important; color:var(--boko-ink)!important; box-shadow:none!important; text-decoration:none!important; }
body.boko-commerce-cart .continue-to-shop a i { display:none!important; }
body.boko-commerce-cart .cart_totals .shipping-calculator-button::after { display:inline!important; color:var(--boko-ink)!important; }
body.boko-commerce-cart .cart_totals .order-total { background:transparent!important; box-shadow:none!important; }
body.boko-commerce-cart .cart_totals .order-total :is(th,td) { background:transparent!important; box-shadow:none!important; }

body.boko-commerce-cart .cart_totals tr.shipping:has(.woocommerce-shipping-methods) .shipping-calculator-button { font-size:13px!important; font-family:Geist,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif!important; }
body.boko-commerce-cart .cart_totals tr.shipping:has(.woocommerce-shipping-methods) .shipping-calculator-button::after { content:none!important; display:none!important; }
body.boko-commerce-cart .cart_totals tr.shipping:not(:has(.woocommerce-shipping-methods)) .shipping-calculator-button::after { font:400 13px/1.5 Geist,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif!important; }

body.boko-commerce-cart .woocommerce-message { border:1px solid var(--boko-line)!important; border-radius:16px!important; padding:18px 20px!important; background:var(--boko-panel)!important; color:var(--boko-ink)!important; box-shadow:none!important; }
body.boko-commerce-cart .woocommerce-message::before,
body.boko-commerce-cart .return-to-shop .button::before { display:none!important; content:none!important; }
body.boko-commerce-cart .return-to-shop .button { gap:0!important; }

/* The image-only WCPA row immediately after the selected leg name is redundant. */
body.boko-commerce-cart .cart_item dl.variation dd.variation-BedFrameLegs + dt:has(+ dd .wcpa_cart_type_image-group),
body.boko-commerce-cart .cart_item dl.variation dd.variation-BedFrameLegs + dt + dd:has(.wcpa_cart_type_image-group) { display:none!important; }

/* Cart wallet and coupon disclosure — staging 2026-09-26. */
body.boko-commerce-cart .cart_totals > .wc-proceed-to-checkout {width:100%!important;max-width:none!important;float:none!important;clear:both!important;padding:0!important;margin:18px 0 0!important;}
body.boko-commerce-cart #wc-stripe-express-checkout-element {width:100%!important;min-width:0!important;max-width:none!important;margin:0!important;display:block!important;}
body.boko-commerce-cart #wc-stripe-express-checkout-element > .StripeElement {width:100%!important;max-width:none!important;margin:0 0 10px!important;}
body.boko-commerce-cart #wc-stripe-express-checkout-element > .StripeElement:last-child {margin-bottom:0!important;}
body.boko-commerce-cart .tb-cart-total .wc-proceed-to-checkout:has(a.checkout-button)::before {content:"or";display:flex;align-items:center;gap:12px;margin:14px 0;color:#737373;font:400 13px/1.4 Geist,sans-serif;text-align:center;}
body.boko-commerce-cart .tb-cart-total .wc-proceed-to-checkout:has(a.checkout-button)::before {background:linear-gradient(#d7d7d7,#d7d7d7) left center/43% 1px no-repeat,linear-gradient(#d7d7d7,#d7d7d7) right center/43% 1px no-repeat;justify-content:center;}
body.boko-commerce-cart .coupon.boko-coupon-ready {margin-top:18px;padding-top:0;border-top:1px solid var(--boko-line);}
body.boko-commerce-cart .boko-coupon-toggle {display:flex;align-items:center;justify-content:space-between;width:100%;min-height:48px;padding:12px 0;border:0;background:transparent;color:var(--boko-ink);font:500 14px/1.4 Geist,sans-serif;text-align:left;cursor:pointer;}
body.boko-commerce-cart .boko-coupon-toggle::after {content:"+";font-size:20px;font-weight:400;}
body.boko-commerce-cart .boko-coupon-toggle[aria-expanded="true"]::after {content:"−";}
body.boko-commerce-cart .coupon.boko-coupon-ready .box[hidden] {display:none!important;}

/* Cart navigation copied from the existing product shell. */
body.boko-commerce .boko-commerce-head__in {position:relative;}
body.boko-commerce .boko-alex-menu-toggle,body.boko-commerce .boko-alex-close {display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:5px;width:44px;height:44px;min-height:44px;padding:0!important;border:0!important;border-radius:50%;background:transparent!important;color:#171717;cursor:pointer;}
body.boko-commerce .boko-alex-menu-toggle {position:absolute;left:50%;transform:translateX(-50%);}
body.boko-commerce :is(.boko-alex-menu-toggle,.boko-alex-close) i {display:block;width:24px;height:1.5px;background:#171717;}
body.boko-commerce .boko-alex-close {position:relative;}
body.boko-commerce .boko-alex-close i {position:absolute;transform:rotate(45deg);}
body.boko-commerce .boko-alex-close i:last-child {transform:rotate(-45deg);}
body.boko-commerce .boko-alex-drawer-backdrop {position:fixed;inset:0;z-index:1060;background:rgb(0 0 0 / 45%);backdrop-filter:blur(4px);}
body.boko-commerce .boko-alex-drawer {position:fixed;top:0;right:0;bottom:0;width:448px;max-width:100%;z-index:1070;box-sizing:border-box;overflow-y:auto;padding:20px 24px 40px;background:#fff;color:#171717;box-shadow:-20px 0 80px rgb(0 0 0 / 8%);}
body.boko-commerce :is(.boko-alex-drawer,.boko-alex-drawer-backdrop)[hidden] {display:none!important;}
body.boko-commerce.admin-bar .boko-alex-drawer {top:32px;}
body.boko-commerce .boko-alex-drawer-head {display:flex;align-items:center;justify-content:space-between;}
body.boko-commerce .boko-alex-logo img {width:112px;height:48px;object-fit:contain;object-position:left;}
body.boko-commerce .boko-alex-menu-links {list-style:none;margin:40px 8px 0;padding:0;}
body.boko-commerce .boko-alex-menu-links a {display:block;padding:10px 0;font:500 30px/1.4 Geist,sans-serif;color:#171717;letter-spacing:-.035em;text-decoration:none;}
body.boko-commerce .boko-alex-menu-links a:hover {color:#737373;}
body.boko-commerce .boko-alex-drawer-cta {display:inline-flex;align-items:center;justify-content:center;min-height:46px;margin:32px 8px 0;padding:12px 24px;border-radius:999px;background:#171717;color:#fff;font:500 14px/1.5 Geist,sans-serif;text-decoration:none;}
body.boko-commerce-cart .coupon.boko-coupon-ready > label[for="coupon_code"] {display:none!important;}
body.boko-commerce-cart .coupon.boko-coupon-ready .boko-coupon-toggle {border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;}

/* Keep Stripe’s own grid layout so wallet iframe sizing can initialize. */
body.boko-commerce-cart #wc-stripe-express-checkout-element {display:grid!important;grid-template-columns:minmax(0,1fr)!important;}

/* 2026-10-09: show WooCommerce's existing line subtotal, including options.
   The legacy child-theme .price rule hides this element; no price is calculated here. */
body.boko-commerce-cart .woocommerce-cart-form .cart_item:not(.head) > .product-subtotal.price {
  display:block!important;
}
