:root{
  --km-primary:#16a34a;
  --km-primary-dark:#0f7f3a;
  --km-navy:#073b36;
  --km-text:#15231f;
  --km-muted:#6c7873;
  --km-soft:#edf8f0;
  --km-surface:#f5f8f6;
  --km-border:#e1e9e4;
  --km-white:#fff;
  --km-danger:#c83b4a;
  --km-radius:20px;
  --km-shadow:0 18px 55px rgba(7,59,54,.09);
  --km-app-width:1180px;
  --km-nav-width:660px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#f7f9f8;color:var(--km-text);font-family:var(--km-font,Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif);line-height:1.55;padding-bottom:98px;-webkit-font-smoothing:antialiased}
body:before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 10% 0%,rgba(22,163,74,.035),transparent 25%),radial-gradient(circle at 95% 10%,rgba(7,59,54,.035),transparent 23%);z-index:-1}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
img{max-width:100%;height:auto}
.km-container{width:min(calc(100% - 32px),var(--km-app-width));margin-inline:auto}
.km-icon{display:inline-flex;width:20px;height:20px;vertical-align:middle;flex:0 0 auto}
.km-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.km-icon-btn{border:0;background:transparent;color:var(--km-navy);padding:9px;border-radius:12px;display:grid;place-items:center}
.km-icon-btn:hover{background:var(--km-soft)}

/* Header */
.km-header{position:sticky;top:0;z-index:80;background:rgba(255,255,255,.94);backdrop-filter:blur(20px);border-bottom:1px solid rgba(225,233,228,.9)}
.km-header__inner{min-height:68px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px}
.km-menu-toggle{display:grid;justify-self:start}
.km-brand{justify-self:center;line-height:0}
.km-logo{display:inline-flex;align-items:center;gap:8px;color:var(--km-navy);font-size:21px;font-weight:950;letter-spacing:-.045em}
.km-logo>span:last-child>span{color:var(--km-primary)}
.km-logo-mark{width:35px;height:35px;border-radius:11px;background:var(--km-primary);color:#fff;display:grid;place-items:center;font-size:18px;box-shadow:0 7px 18px rgba(22,163,74,.18)}
.custom-logo-link{display:inline-flex;align-items:center}
.custom-logo-link img{display:block;max-width:210px;max-height:48px;width:auto;height:auto}
.km-location{display:none}
.km-header-actions{display:flex;align-items:center;justify-self:end;gap:4px}
.km-account-link,.km-cart-link{min-height:42px;display:flex;align-items:center;gap:6px;padding:0 8px;border-radius:13px;font-weight:800;font-size:12px}
.km-account-link:hover,.km-cart-link:hover{background:var(--km-soft)}
.km-account-link>.km-icon,.km-cart-link>.km-icon{width:20px}
.km-cart-link{position:relative}
.km-cart-count{min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:var(--km-primary);color:#fff;display:inline-grid;place-items:center;font-size:10px;font-weight:900;line-height:1}
.km-mobile-search-wrap{padding-bottom:12px}
.km-header-search{height:48px;background:#f1f5f3;border:1px solid transparent;border-radius:15px;display:flex;align-items:center;padding:0 15px;gap:10px;transition:.18s ease}
.km-header-search:focus-within{background:#fff;border-color:#cfe0d6;box-shadow:0 0 0 4px rgba(22,163,74,.06)}
.km-header-search>.km-icon,.km-header-search>span>.km-icon{color:#75817c;width:20px}
.km-header-search input{border:0;outline:0;background:transparent;width:100%;min-width:0;color:var(--km-text);font-size:14px}
.km-header-search input::placeholder{color:#8b9591}
.km-header-search--desktop{display:block;position:absolute;left:50%;top:76px;transform:translateX(-50%);width:min(calc(100% - 32px),var(--km-app-width));z-index:2}
.km-header{padding-bottom:58px}
.km-mobile-search-wrap{display:none}
.km-mobile-drawer{position:fixed;top:0;left:0;right:auto;bottom:0;width:min(390px,90vw);background:#fff;box-shadow:30px 0 70px rgba(0,0,0,.18);padding:22px;transform:translateX(-105%);transition:transform .24s ease;z-index:9999;overflow:auto;max-height:100dvh;-webkit-overflow-scrolling:touch}
.km-mobile-drawer.is-open{transform:translateX(0)}
.km-drawer-backdrop{position:fixed;inset:0;background:rgba(6,20,15,.36);opacity:0;visibility:hidden;transition:.2s;z-index:9998}
.km-drawer-backdrop.is-visible{opacity:1;visibility:visible}
body.km-menu-open{overflow:hidden}
.km-mobile-drawer__head{display:flex;justify-content:space-between;align-items:center;padding-bottom:18px;border-bottom:1px solid var(--km-border)}
.km-mobile-drawer__head .km-logo{font-size:18px}
.km-mobile-drawer__head .km-logo-mark{width:31px;height:31px;font-size:15px;border-radius:9px}
.km-drawer-location{display:flex;align-items:center;gap:10px;background:var(--km-soft);border-radius:16px;padding:14px;margin:18px 0}
.km-drawer-location>span{color:var(--km-primary)}
.km-location small,.km-drawer-location small{display:block;color:#8a9490;text-transform:uppercase;font-size:9px;font-weight:800;letter-spacing:.12em}
.km-location strong,.km-drawer-location strong{display:block;font-size:12px;line-height:1.2}
.km-mobile-drawer ul{list-style:none;padding:0;margin:0}
.km-mobile-drawer li a,.km-drawer-links a{display:block;padding:14px 8px;font-weight:850;border-bottom:1px solid #f0f3f1}
.km-drawer-links{margin-top:4px}
.km-drawer-links a:last-child{color:var(--km-primary-dark)}

/* Persistent app navigation */
.km-bottom-nav{position:fixed;left:50%;bottom:12px;transform:translateX(-50%);width:min(calc(100% - 24px),var(--km-nav-width));height:68px;padding:7px;display:grid;grid-template-columns:repeat(5,1fr);gap:4px;background:rgba(255,255,255,.97);border:1px solid #dfe8e3;border-radius:23px;box-shadow:0 18px 55px rgba(9,39,29,.17);backdrop-filter:blur(18px);z-index:90}
.km-bottom-nav__item{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border-radius:17px;color:#78837f;font-size:10px;font-weight:850}
.km-bottom-nav__item span{height:25px;display:grid;place-items:center}
.km-bottom-nav__item .km-icon{width:20px;height:20px}
.km-bottom-nav__item small{font-size:9px}
.km-bottom-nav__item.is-active{color:var(--km-primary-dark);background:var(--km-soft)}
.km-bottom-cart-icon{position:relative}
.km-bottom-cart-icon b{position:absolute;right:-10px;top:-6px;min-width:16px;height:16px;font-size:8px;border:2px solid #fff}

/* Global UI */
.km-home-main,.km-main{min-height:50vh}
.km-main{padding:28px 0 45px}
.km-main>.km-container{background:transparent}
.km-eyebrow{display:inline-block;color:var(--km-primary-dark);font-size:10px;text-transform:uppercase;letter-spacing:.16em;font-weight:950}
.km-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:14px;padding:13px 18px;font-size:12px;font-weight:900;line-height:1.2;transition:.18s ease}
.km-btn .km-icon{width:16px}
.km-btn--primary{background:var(--km-primary);color:#fff;box-shadow:0 10px 22px rgba(22,163,74,.18)}
.km-btn--primary:hover{background:var(--km-primary-dark);transform:translateY(-1px)}
.km-btn--ghost{background:#fff;border:1px solid #dce5df}
.km-btn--soft{background:var(--km-soft);color:var(--km-primary-dark)}
.km-btn--dark{background:var(--km-navy);color:#fff}
.km-btn--full{width:100%}

/* Full-bleed marketing slider. Image only, no text layer and no reserved whitespace. */
.km-home-slider-section{width:100%;margin:0;padding:0;background:#fff}
.km-home-slider{position:relative;width:100%;overflow:hidden;background:#eef3f0}
.km-home-slider__track{position:relative;width:100%}
.km-home-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .35s ease;z-index:1}
.km-home-slide.is-active{position:relative;opacity:1;visibility:visible;z-index:2}
.km-home-slide__link,.km-home-slide img{display:block;width:100%}
.km-home-slide img{height:auto;min-height:0;object-fit:cover;object-position:center}
.km-home-slide__link:focus-visible{outline:3px solid var(--km-primary);outline-offset:-3px}
.km-home-slider__dots{position:absolute;left:50%;bottom:16px;transform:translateX(-50%);display:flex;gap:6px;z-index:5;padding:6px 9px;border-radius:999px;background:rgba(255,255,255,.76);backdrop-filter:blur(10px)}
.km-home-slider__dots button{width:22px;height:4px;border:0;border-radius:99px;background:#c8d5ce;padding:0}
.km-home-slider__dots button.is-active{width:34px;background:var(--km-primary)}

/* Home sections */
.km-section{padding:48px 0}
.km-section--categories{padding-top:42px}
.km-section--tint{background:#eff7f1}
.km-section--soft{background:#fbfcfb}
.km-section-heading{display:flex;align-items:end;justify-content:space-between;gap:15px;margin-bottom:20px}
.km-section-heading h2,.km-shop-head h1{font-size:29px;line-height:1.08;letter-spacing:-.045em;margin:4px 0 0;color:var(--km-navy)}
.km-view-all{display:inline-flex;align-items:center;gap:4px;color:var(--km-primary-dark);font-size:12px;font-weight:900}
.km-view-all .km-icon{width:15px}
.km-category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.km-category-card{display:grid;grid-template-columns:58px 1fr auto;gap:11px;align-items:center;min-height:84px;background:#fff;border:1px solid var(--km-border);border-radius:18px;padding:10px;transition:.18s ease}
.km-category-card:hover{transform:translateY(-2px);box-shadow:var(--km-shadow);border-color:#cbdcd1}
.km-category-card__image{width:58px;height:58px;border-radius:15px;overflow:hidden;background:var(--km-soft)}
.km-category-card__image img{width:100%;height:100%;object-fit:cover}
.km-category-card strong{display:block;font-size:12px;color:var(--km-navy)}
.km-category-card span{display:block;color:#8a9490;font-size:9px;margin-top:3px}
.km-category-card>.km-icon{width:15px;color:#9aa59f}
.km-empty-inline{color:var(--km-muted)}
.km-promo{display:grid;grid-template-columns:1fr 260px;gap:30px;align-items:center;background:linear-gradient(135deg,#fff,#f2faf5);border:1px solid var(--km-border);border-radius:25px;padding:32px 36px;overflow:hidden}
.km-promo h2{font-size:32px;line-height:1.06;letter-spacing:-.045em;color:var(--km-navy);margin:8px 0 10px;max-width:600px}
.km-promo p{color:var(--km-muted);font-size:13px;max-width:570px;margin:0 0 18px}
.km-promo-art{width:190px;height:190px;border-radius:50%;background:#dff2e5;display:grid;place-items:center;justify-self:center;box-shadow:inset 0 0 0 20px rgba(255,255,255,.35)}
.km-promo-art span{font-size:43px;line-height:1;font-weight:950;color:var(--km-navy);letter-spacing:-.06em}
.km-promo-art small{margin-top:-48px;font-size:10px;color:var(--km-primary-dark);font-weight:900;text-transform:uppercase;letter-spacing:.1em}
.km-service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.km-service-grid>div{background:#fff;border:1px solid var(--km-border);border-radius:19px;padding:22px}
.km-service-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:var(--km-soft);color:var(--km-primary-dark);font-size:10px;font-weight:950}
.km-service-grid h3{font-size:15px;color:var(--km-navy);margin:14px 0 6px}
.km-service-grid p{font-size:11px;color:var(--km-muted);margin:0}

/* Product cards */
.km-products-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.km-product-card{background:#fff;border:1px solid var(--km-border);border-radius:19px;overflow:hidden;min-width:0;box-shadow:0 5px 18px rgba(11,61,58,.035);transition:.18s ease}
.km-product-card:hover{transform:translateY(-3px);box-shadow:var(--km-shadow)}
.km-product-card__media{position:relative;aspect-ratio:1/1;background:#f6f8f6;overflow:hidden}
.km-product-card__media>a:first-of-type{display:block;width:100%;height:100%}
.km-product-card__media img{display:block;width:100%;height:100%;object-fit:cover;transition:.25s ease}
.km-product-card:hover .km-product-card__media img{transform:scale(1.025)}
.km-product-card__badges{position:absolute;left:9px;top:9px;z-index:3;display:flex;gap:4px;flex-wrap:wrap}
.km-badge{display:inline-flex;padding:5px 7px;border-radius:8px;font-size:8px;text-transform:uppercase;letter-spacing:.08em;font-weight:950}
.km-badge--sale{background:#fff0ef;color:var(--km-danger)}
.km-badge--featured{background:#e9f7ed;color:var(--km-primary-dark)}
.km-wishlist{position:absolute;right:9px;top:9px;width:35px;height:35px;border:0;border-radius:50%;background:rgba(255,255,255,.94);color:#7c8782;display:grid;place-items:center;z-index:3;box-shadow:0 4px 13px rgba(0,0,0,.08)}
.km-wishlist .km-icon{width:17px}
.km-wishlist.is-active{color:#d34b5a;background:#fff3f4}
.km-quick-add{position:absolute;right:9px;bottom:9px;width:40px;height:40px;border-radius:13px;background:var(--km-primary);color:#fff;display:grid;place-items:center;font-size:24px;line-height:1;box-shadow:0 8px 18px rgba(22,163,74,.25);z-index:3}
.km-product-card__body{padding:13px 13px 15px}
.km-product-meta{font-size:8px;text-transform:uppercase;letter-spacing:.12em;font-weight:900;color:#89948f;margin-bottom:6px}
.km-product-card h2,.km-product-card h3{font-size:13px;line-height:1.3;margin:0;min-height:34px;letter-spacing:-.01em}
.km-product-card h2 a,.km-product-card h3 a{color:var(--km-navy)}
.km-product-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:9px}
.km-product-price{font-size:14px;font-weight:950;color:var(--km-navy)}
.km-product-price del{font-size:10px;color:#9aa39f;margin-right:3px}
.km-product-price ins{text-decoration:none;color:var(--km-primary-dark)}

/* Shop */
.km-shop-head{display:flex;justify-content:space-between;align-items:end;gap:15px;margin:6px 0 20px}
.km-shop-head p{margin:7px 0 0;color:var(--km-muted);font-size:12px}
.km-shop-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}
.km-results-count{font-size:10px;color:#7d8984;font-weight:800}
.woocommerce-ordering select,.woocommerce form select{background:#fff;border:1px solid var(--km-border);border-radius:12px;padding:9px 30px 9px 11px;color:var(--km-text);font-size:11px}
.woocommerce .woocommerce-pagination{margin-top:24px}
.woocommerce .woocommerce-pagination ul{border:0;display:flex;gap:6px}
.woocommerce .woocommerce-pagination ul li{border:0!important}
.woocommerce .woocommerce-pagination a,.woocommerce .woocommerce-pagination span{border:1px solid var(--km-border);border-radius:10px;padding:8px 11px!important;font-size:10px}
.woocommerce span.onsale{background:var(--km-primary);min-height:auto;min-width:auto;padding:7px 9px;border-radius:9px;font-size:8px;font-weight:900}
.woocommerce .woocommerce-message,.woocommerce .woocommerce-info,.woocommerce .woocommerce-error{border:1px solid var(--km-border);border-left:0;border-radius:14px;background:#fff;color:var(--km-text);padding:13px 16px;margin:0 0 15px;font-size:11px}
.woocommerce .woocommerce-message:before,.woocommerce .woocommerce-info:before,.woocommerce .woocommerce-error:before{color:var(--km-primary)}

/* Single product */
.km-single-product{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.72fr);gap:32px;align-items:start;max-width:1120px;margin:14px auto 48px}
.km-single-gallery{min-width:0;background:#fff;border:1px solid var(--km-border);border-radius:26px;padding:16px;overflow:hidden;box-shadow:0 8px 28px rgba(7,59,54,.04)}
.km-single-gallery .woocommerce-product-gallery{width:100%!important;float:none!important;margin:0!important}
.km-single-gallery .woocommerce-product-gallery__wrapper{margin:0!important}
.km-single-gallery .woocommerce-product-gallery__image{background:#f6f9f7;border-radius:20px;overflow:hidden}
.km-single-gallery .woocommerce-product-gallery__image img{display:block;width:100%;aspect-ratio:1/1;object-fit:contain;max-height:none}
.km-single-gallery .flex-control-thumbs{display:flex;gap:9px;margin:11px 0 0!important;padding:0!important;overflow:auto}
.km-single-gallery .flex-control-thumbs li{width:70px!important;min-width:70px;border-radius:12px;overflow:hidden;border:1px solid var(--km-border)}
.km-single-summary{min-width:0;position:sticky;top:105px;background:#fff;border:1px solid var(--km-border);border-radius:26px;padding:28px;box-shadow:0 12px 40px rgba(7,59,54,.055)}
.km-single-summary__eyebrow{font-size:9px;color:#87938e;text-transform:uppercase;letter-spacing:.13em;font-weight:900;margin-bottom:8px}
.km-single-summary .product_title{font-size:clamp(30px,3vw,42px);line-height:1.02;letter-spacing:-.055em;color:var(--km-navy);margin:0 0 10px}
.km-single-rating{display:flex;align-items:center;gap:8px;margin:0 0 12px;color:#7b8782;font-size:10px}
.km-single-rating .star-rating{font-size:12px;color:#f0a500}
.km-single-price{font-size:25px;line-height:1.1;font-weight:950;color:var(--km-primary-dark);margin:0 0 18px}
.km-single-price del{font-size:14px;color:#9aa39f;margin-right:5px}
.km-single-price ins{text-decoration:none}
.km-single-summary .woocommerce-product-details__short-description{font-size:13px;color:var(--km-muted);line-height:1.75;margin-bottom:18px}
.km-single-summary .woocommerce-product-details__short-description p{margin:0 0 8px}
.km-single-purchase{border:1px solid var(--km-border);background:#f7faf8;border-radius:19px;padding:11px}
.km-single-purchase form.cart{display:flex;align-items:stretch;gap:9px;margin:0!important;flex-wrap:wrap}
.km-single-purchase form.cart .quantity{display:flex}
.km-single-purchase form.cart .quantity .qty{width:78px;height:56px;border:1px solid var(--km-border);border-radius:14px;background:#fff;text-align:center;font-weight:900;color:var(--km-navy)}
.km-single-purchase form.cart .single_add_to_cart_button{flex:1;min-width:190px;height:56px;border:0;border-radius:14px;background:var(--km-primary);color:#fff;font-size:14px;font-weight:950;box-shadow:0 9px 20px rgba(22,163,74,.18);transition:.18s ease}
.km-single-purchase form.cart .single_add_to_cart_button:hover{background:var(--km-primary-dark);transform:translateY(-1px)}
.km-single-purchase form.cart .variations{width:100%;margin:0 0 8px;border:0}
.km-single-purchase form.cart .variations select{width:100%;min-height:48px;border-radius:13px}
.km-single-purchase .quantity .screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.km-single-benefits{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:15px 0}
.km-single-benefits>div{display:grid;grid-template-columns:28px 1fr;column-gap:8px;align-items:center;padding:11px;border:1px solid #e8efeb;border-radius:14px;background:#fbfcfb}
.km-single-benefits>div>span{grid-row:1/3;width:28px;height:28px;display:grid;place-items:center;border-radius:9px;background:var(--km-soft);color:var(--km-primary-dark)}
.km-single-benefits>div>span .km-icon{width:16px;height:16px}
.km-single-benefits strong{font-size:9px;color:var(--km-navy)}
.km-single-benefits small{font-size:8px;color:#8a9590}
.km-single-summary .product_meta{border-top:1px solid var(--km-border);margin-top:16px;padding-top:15px;color:var(--km-muted);font-size:10px;line-height:1.8}
.km-single-summary .product_meta a{color:var(--km-primary-dark);font-weight:800}
.km-product-tabs{max-width:1120px;margin:0 auto 55px;background:#fff;border:1px solid var(--km-border);border-radius:23px;padding:10px 22px;box-shadow:0 8px 28px rgba(7,59,54,.035)}
.km-product-tabs ul.tabs{display:flex;gap:7px;border:0!important;padding:0!important;margin:0 0 14px!important}
.km-product-tabs ul.tabs:before{display:none!important}
.km-product-tabs ul.tabs li{border:1px solid var(--km-border)!important;border-radius:11px!important;background:#fff!important;margin:0!important;padding:9px 13px!important;font-size:10px!important;font-weight:850}
.km-product-tabs ul.tabs li.active{background:var(--km-soft)!important;color:var(--km-primary-dark)!important}
.km-product-tabs .woocommerce-Tabs-panel{padding:5px 2px 12px!important;font-size:12px;color:var(--km-muted);line-height:1.8}
.km-product-tabs .woocommerce-Tabs-panel h2{font-size:18px;color:var(--km-navy)}

/* Cart */
.km-cart-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:20px;max-width:1120px;margin:10px auto 55px}
.km-cart-items,.km-cart-summary,.km-checkout-card{background:#fff;border:1px solid var(--km-border);border-radius:23px}
.km-cart-items{padding:24px}
.km-cart-summary{padding:22px;height:max-content;position:sticky;top:105px;box-shadow:0 12px 35px rgba(7,59,54,.055)}
.km-cart-summary h2{margin:0 0 16px;color:var(--km-navy);font-size:20px}
.km-cart-summary .cart_totals{width:100%}
.km-cart-summary .cart_totals table{border-collapse:collapse;width:100%}
.km-cart-summary .cart_totals tr{border-bottom:1px solid var(--km-border)}
.km-cart-summary .cart_totals th,.km-cart-summary .cart_totals td{padding:12px 0;font-size:11px}
.km-cart-summary .cart_totals .order-total{font-size:18px;font-weight:950;color:var(--km-navy)}
.km-cart-summary .wc-proceed-to-checkout{display:none}
.km-cart-items table{width:100%;border-collapse:collapse}
.km-cart-items th{font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:#8b9591;text-align:left;padding:8px;border-bottom:1px solid var(--km-border)}
.km-cart-items td{padding:14px 8px;border-bottom:1px solid #edf2ef;font-size:11px;vertical-align:middle}
.km-cart-items .product-name{display:flex;align-items:center;gap:12px;font-weight:850}
.km-cart-items .product-name>div{display:flex;flex-direction:column;gap:4px;min-width:0}
.km-cart-items .product-name img{width:72px;height:72px;object-fit:cover;border-radius:13px;background:#f6f8f6}
.km-cart-items .product-name a{color:var(--km-navy)}
.km-cart-items .product-name .variation{font-size:9px;color:#8a9490}
.km-cart-items .product-remove{width:34px;text-align:right}
.km-cart-items .product-remove a{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:9px;background:#fff3f3;color:var(--km-danger);font-size:18px}
.km-cart-items .product-quantity .quantity .qty{width:74px;height:40px;border:1px solid var(--km-border);border-radius:11px;text-align:center;background:#fff;font-weight:800}
.km-cart-items .actions{padding:17px 8px 3px!important}
.km-coupon{display:flex;gap:8px;margin-bottom:10px}
.km-coupon input{flex:1;min-width:0;border:1px solid var(--km-border);border-radius:12px;padding:11px 12px;outline:0}
.km-coupon input:focus{border-color:#b8d7c2;box-shadow:0 0 0 3px rgba(22,163,74,.05)}

/* Checkout */
.km-checkout-layout{max-width:860px;margin:8px auto 55px}
.km-checkout-main{display:grid;grid-template-columns:1fr;gap:14px}
.km-checkout-card{padding:25px;box-shadow:0 10px 35px rgba(7,59,54,.045)}
.km-checkout-title{display:flex;align-items:flex-start;gap:11px;margin-bottom:18px}
.km-checkout-title>span{width:29px;height:29px;display:grid;place-items:center;border-radius:9px;background:var(--km-soft);color:var(--km-primary-dark);font-size:9px;font-weight:950}
.km-checkout-title h2{font-size:19px;color:var(--km-navy);margin:0;letter-spacing:-.025em}
.km-checkout-title p{font-size:10px;color:var(--km-muted);margin:3px 0 0}
.km-checkout .woocommerce-billing-fields>h3{display:none}
.km-checkout .woocommerce-billing-fields__field-wrapper{display:grid;gap:0}
.km-checkout .form-row{width:100%!important;float:none!important;margin:0 0 12px!important;padding:0!important}
.km-checkout .form-row label{display:block!important;margin-bottom:7px!important;color:var(--km-navy)!important;font-size:10px!important;font-weight:850!important}
.km-checkout .form-row label .required{color:var(--km-danger)}
.km-checkout .form-row input,.km-checkout .form-row textarea,.km-checkout .form-row select{width:100%!important;min-height:52px;border:1px solid var(--km-border)!important;border-radius:14px!important;background:#fff!important;padding:12px 14px!important;color:var(--km-text)!important;font-size:13px!important;outline:0;box-shadow:none!important}
.km-checkout .form-row input:focus,.km-checkout .form-row textarea:focus,.km-checkout .form-row select:focus{border-color:#b7d7c1!important;box-shadow:0 0 0 4px rgba(22,163,74,.055)!important}
.km-checkout .form-row textarea{min-height:105px!important;resize:vertical}
.km-checkout #customer_details .col-2{display:none!important}
.km-checkout .woocommerce-additional-fields,.km-checkout .woocommerce-shipping-fields{display:none!important}
.km-checkout .woocommerce-account-fields{margin:2px 0 15px;padding:12px;background:var(--km-soft);border:1px solid #dbeadf;border-radius:14px}
.km-checkout .woocommerce-account-fields label{display:flex!important;align-items:center;gap:9px;font-size:10px!important;font-weight:850!important}
.km-checkout .woocommerce-account-fields input{width:18px!important;min-height:18px!important}
.km-checkout-review{margin-top:0}
.km-checkout #order_review_heading{display:none}
.km-checkout #order_review{margin:0}
.km-checkout #payment{border:0!important;border-radius:17px!important;background:#f7faf8!important;padding:12px!important}
.km-checkout #payment ul.payment_methods{border:0!important;padding:0!important;margin:0!important}
.km-checkout #payment .wc_payment_method{background:#fff;border:1px solid var(--km-border);border-radius:14px;margin:7px 0;padding:12px!important}
.km-checkout #payment .wc_payment_method label{font-size:11px;font-weight:850}
.km-checkout #payment .place-order{padding:12px 0 0!important;margin:0!important}
.km-checkout #payment .button,#place_order{width:100%;min-height:56px;border:0!important;border-radius:15px!important;background:var(--km-primary)!important;color:#fff!important;font-size:13px!important;font-weight:950!important;box-shadow:0 9px 20px rgba(22,163,74,.17)!important}
.km-checkout #payment .button:hover,#place_order:hover{background:var(--km-primary-dark)!important}
.km-checkout .woocommerce-privacy-policy-text{display:none}
.km-checkout .woocommerce-terms-and-conditions-wrapper{font-size:9px;color:var(--km-muted)}

/* Account / pages */
.km-account-layout{display:grid;grid-template-columns:240px 1fr;gap:18px;max-width:1120px;margin:8px auto 50px}
.km-account-nav,.km-account-content{background:#fff;border:1px solid var(--km-border);border-radius:22px}
.km-account-nav{padding:16px;height:max-content}
.km-account-user{display:flex;align-items:center;gap:9px;padding-bottom:14px;border-bottom:1px solid var(--km-border)}
.km-avatar{width:38px;height:38px;border-radius:12px;background:var(--km-soft);color:var(--km-primary-dark);display:grid;place-items:center;font-weight:950}
.km-account-user strong{display:block;color:var(--km-navy);font-size:11px}
.km-account-user small{display:block;color:#8a9490;font-size:8px;margin-top:2px;word-break:break-all}
.km-account-nav__label{font-size:8px;text-transform:uppercase;letter-spacing:.12em;color:#909a95;font-weight:900;margin:15px 8px 7px}
.woocommerce-MyAccount-navigation ul{list-style:none;padding:0;margin:0}
.woocommerce-MyAccount-navigation li a{display:block;padding:10px 9px;border-radius:10px;font-size:10px;font-weight:800;color:#65716c}
.woocommerce-MyAccount-navigation li.is-active a,.woocommerce-MyAccount-navigation li a:hover{background:var(--km-soft);color:var(--km-primary-dark)}
.km-account-content{padding:24px;min-width:0}
.km-account-mobile-title{margin-bottom:18px}
.km-account-mobile-title h1{font-size:28px;line-height:1;color:var(--km-navy);letter-spacing:-.045em;margin:4px 0 0}
.km-account-content table{border-collapse:collapse;width:100%;font-size:10px}
.km-account-content th,.km-account-content td{padding:10px;border-bottom:1px solid var(--km-border);text-align:left}
.km-page{max-width:900px;margin:0 auto;background:#fff;border:1px solid var(--km-border);border-radius:23px;padding:28px}
.km-page h1{font-size:32px;color:var(--km-navy);letter-spacing:-.045em}
.km-empty{background:#fff;border:1px solid var(--km-border);border-radius:20px;padding:40px;text-align:center}
.km-empty--large{padding:70px 25px}
.km-empty--large>span{font-size:54px;line-height:1;font-weight:950;color:var(--km-primary)}

/* Footer */
.km-footer{background:#063a35;color:#d9e7e2;padding:42px 0 30px}
.km-footer .km-logo{color:#fff}
.km-footer .km-logo>span:last-child>span{color:#4fd37b}
.km-footer__grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.25fr;gap:28px}
.km-footer__grid h3{font-size:11px;color:#fff;text-transform:uppercase;letter-spacing:.1em;margin:3px 0 12px}
.km-footer__grid p,.km-footer__grid a{font-size:10px;color:#a9c0b9;line-height:1.7}
.km-footer__grid a{display:block;margin:5px 0}
.km-footer-logo{margin-bottom:9px}
.km-footer__bottom{display:flex;justify-content:space-between;gap:15px;border-top:1px solid rgba(255,255,255,.1);margin-top:28px;padding-top:15px;font-size:9px;color:#88a69e}

/* Delivery plugin pages should breathe inside the theme without overriding plugin state logic. */
.gdo-rider-app,.gdo-customer-tracking,.gdo-rider-registration{max-width:1120px;margin:10px auto 45px}
.gdo-ct-card,.gdo-rr-card,.gdo-card{border-radius:22px!important}
.gdo-ct-btn--primary,.gdo-rr-btn--primary,.gdo-btn--primary{border-radius:13px!important}

@media (max-width:1000px){
  .km-products-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .km-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .km-single-product{grid-template-columns:minmax(0,1fr) minmax(320px,.72fr);gap:20px}
  .km-cart-layout{grid-template-columns:minmax(0,1fr) 300px}
  .km-footer__grid{grid-template-columns:1.3fr 1fr 1fr}
  .km-footer__grid>div:last-child{display:none}
}
@media (max-width:760px){
  body{padding-bottom:92px}
  .km-container{width:min(calc(100% - 22px),var(--km-app-width))}
  .km-header__inner{min-height:62px}
  .km-header{padding-bottom:10px}
  .km-mobile-search-wrap{display:block;padding-bottom:10px}
  .km-header-search--desktop{display:none}
  .km-account-link span{display:none}
  .km-logo{font-size:18px}
  .km-logo-mark{width:31px;height:31px;font-size:15px;border-radius:9px}
  .custom-logo-link img{max-width:175px;max-height:40px}
  .km-bottom-nav{bottom:8px;width:calc(100% - 18px);height:64px;border-radius:21px}
  .km-home-slider__dots{bottom:9px}
  .km-section{padding:36px 0}
  .km-section-heading{margin-bottom:15px}
  .km-section-heading h2,.km-shop-head h1{font-size:24px}
  .km-category-grid{grid-template-columns:1fr 1fr;gap:9px}
  .km-category-card{grid-template-columns:48px 1fr auto;min-height:72px;border-radius:15px;padding:8px}
  .km-category-card__image{width:48px;height:48px;border-radius:12px}
  .km-category-card strong{font-size:10px}
  .km-category-card span{font-size:8px}
  .km-products-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .km-product-card{border-radius:15px}
  .km-product-card__body{padding:10px}
  .km-product-card h2,.km-product-card h3{font-size:11px;min-height:29px}
  .km-product-price{font-size:12px}
  .km-quick-add{width:36px;height:36px;border-radius:11px}
  .km-promo{grid-template-columns:1fr;padding:24px;border-radius:20px}
  .km-promo h2{font-size:27px}
  .km-promo-art{width:130px;height:130px;justify-self:start}
  .km-promo-art span{font-size:31px}
  .km-promo-art small{margin-top:-34px}
  .km-service-grid{grid-template-columns:1fr}
  .km-single-product{grid-template-columns:1fr;gap:11px;margin:8px auto 35px}
  .km-single-gallery{padding:9px;border-radius:20px}
  .km-single-gallery .woocommerce-product-gallery__image img{aspect-ratio:1/1}
  .km-single-summary{position:static;padding:19px;border-radius:20px}
  .km-single-summary .product_title{font-size:29px}
  .km-single-purchase form.cart .single_add_to_cart_button{min-width:0}
  .km-single-benefits{grid-template-columns:1fr 1fr}
  .km-product-tabs{border-radius:19px;padding:8px 14px;margin-bottom:35px}
  .km-product-tabs ul.tabs{overflow:auto}
  .km-cart-layout{grid-template-columns:1fr;gap:11px;margin:5px auto 35px}
  .km-cart-items{padding:12px;border-radius:19px}
  .km-cart-summary{position:static;padding:17px;border-radius:19px}
  .km-cart-items table,.km-cart-items tbody,.km-cart-items tr,.km-cart-items td{display:block;width:100%}
  .km-cart-items thead{display:none}
  .km-cart-items tr.cart_item{position:relative;padding:12px 0;border-bottom:1px solid var(--km-border)}
  .km-cart-items td{border:0;padding:6px 0}
  .km-cart-items .product-name{padding-right:35px}
  .km-cart-items .product-name img{width:64px;height:64px}
  .km-cart-items td[data-title]:before{content:attr(data-title);display:inline-block;width:78px;color:#8a9490;font-size:8px;text-transform:uppercase;letter-spacing:.08em;font-weight:900}
  .km-cart-items td.product-name:before{display:none}
  .km-cart-items .product-remove{position:absolute;right:0;top:12px;width:auto}
  .km-cart-items .actions{padding-top:14px!important}
  .km-checkout-layout{margin:5px auto 35px}
  .km-checkout-card{padding:17px;border-radius:19px}
  .km-checkout-title{margin-bottom:15px}
  .km-account-layout{grid-template-columns:1fr;margin:5px auto 35px}
  .km-account-nav{padding:10px}
  .km-account-user{display:none}
  .km-account-nav__label{display:none}
  .woocommerce-MyAccount-navigation ul{display:flex;overflow:auto;gap:3px}
  .woocommerce-MyAccount-navigation li{flex:0 0 auto}
  .woocommerce-MyAccount-navigation li a{padding:9px;font-size:9px}
  .km-account-content{border-radius:18px;padding:15px;overflow-x:auto}
  .km-account-mobile-title h1{font-size:23px}
  .km-footer{padding-bottom:25px}
  .km-footer__grid{grid-template-columns:1fr 1fr;gap:18px}
  .km-footer__grid>div:first-child{grid-column:1/-1}
  .km-footer__bottom{flex-direction:column}
}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* ================================================================
   Kroymart commerce UI refresh v1.4.0
   App-inspired grocery UX: clean surfaces, compact cards, strong CTAs.
   ================================================================ */
:root{
  --km-primary:#16a34a;
  --km-primary-dark:#087a3a;
  --km-navy:#073b36;
  --km-text:#17211e;
  --km-muted:#737f7a;
  --km-soft:#eff9f2;
  --km-border:#e5ebe7;
  --km-surface:#f6f8f7;
  --km-orange:#ff5b16;
  --km-radius-lg:24px;
}
body{background:#fff;color:var(--km-text)}
.km-main{padding-top:18px}
.km-header{box-shadow:0 1px 0 rgba(10,35,25,.04)}
.km-header-search{background:#f3f5f4;border-color:#f0f2f1;border-radius:17px;height:52px}
.km-header-search input{font-size:15px}
.km-cart-link{padding-inline:10px}

/* Home: wider promotional rhythm and horizontally scrollable category rail. */
.km-home-slider-section{background:#fff}
.km-home-slider{line-height:0}
.km-home-slider img{width:100%;display:block}
.km-home-slider__dots{bottom:14px}
.km-section{padding:42px 0}
.km-section--categories{padding-top:28px}
.km-section-heading h2,.km-shop-head h1{font-size:26px;font-weight:900}
.km-category-grid{grid-template-columns:repeat(8,minmax(120px,1fr));overflow-x:auto;scrollbar-width:none;gap:12px;padding-bottom:4px}
.km-category-grid::-webkit-scrollbar{display:none}
.km-category-card{display:flex;flex-direction:column;justify-content:center;text-align:center;min-width:120px;min-height:145px;border-radius:20px;padding:12px;background:#f7faf8;border-color:#eef2ef;gap:9px}
.km-category-card__image{width:78px;height:78px;border-radius:50%;margin:auto}
.km-category-card strong{font-size:12px}
.km-category-card span,.km-category-card>.km-icon{display:none}
.km-products-grid{gap:14px}
.km-product-card{border:1px solid #edf0ee;border-radius:20px;background:#fff;box-shadow:0 3px 14px rgba(17,38,28,.035);overflow:hidden}
.km-product-card__media{background:#f8faf9;aspect-ratio:1/1;position:relative}

.km-product-card__media>a:first-of-type img{width:100%;height:100%;object-fit:contain}
.km-quick-add{right:11px;bottom:11px;width:44px;height:44px;border-radius:50%;background:#fff;color:var(--km-orange);border:1px solid #e3e6e4;box-shadow:0 4px 13px rgba(0,0,0,.10);font-size:27px;font-weight:500}
.km-product-card__body{padding:13px 13px 16px}
.km-product-meta{display:none}
.km-product-card h2,.km-product-card h3{font-size:14px;min-height:38px;font-weight:800}
.km-product-bottom{margin-top:8px}
.km-product-price{font-size:15px;font-weight:900}
.km-product-price ins{color:var(--km-text)}
.km-product-price del{font-size:11px}

/* Single product: Talabat-style image-first mobile composition and guaranteed CTA. */
.km-single-page{background:#fff;padding-bottom:20px}
.km-single-product{max-width:1160px;margin:0 auto 28px;grid-template-columns:minmax(0,1.05fr) minmax(390px,.78fr);gap:34px;padding:24px 16px 0}
.km-single-gallery{background:#fafbfa;border:0;border-radius:26px;padding:0;box-shadow:none;overflow:hidden;min-width:0}
.km-single-gallery .woocommerce-product-gallery__image{background:#fafbfa;border-radius:0}
.km-single-gallery .woocommerce-product-gallery__image img{aspect-ratio:1/1;object-fit:contain;padding:18px}
.km-single-gallery .flex-control-thumbs{padding:10px 8px 2px!important;margin:0!important}
.km-single-gallery .flex-control-thumbs li{border:1px solid #e9edeb;border-radius:13px}
.km-single-summary{display:block!important;visibility:visible!important;opacity:1!important;background:#fff;border:0;border-radius:0;padding:12px 6px;box-shadow:none;position:static;min-width:0}
.km-single-category{display:inline-block;background:#f2f5f3;color:#68736f;border-radius:7px;padding:5px 9px;font-size:11px;font-weight:700;margin-bottom:11px}
.km-single-summary .product_title{font-size:clamp(27px,3.1vw,42px);line-height:1.08;letter-spacing:-.045em;margin-bottom:10px}
.km-single-rating-row{display:flex;align-items:center;gap:8px;font-size:12px;margin-bottom:12px}
.km-single-rating-row a{color:#68736f;text-decoration:underline;text-underline-offset:3px}
.km-stars .star-rating{font-size:13px;color:#f3a400}
.km-no-rating{color:#8b9691}
.km-single-price{font-size:28px;color:var(--km-text);margin:2px 0 16px;font-weight:950}
.km-single-price ins{text-decoration:none;color:var(--km-text)}
.km-single-price del{font-size:15px;color:#9ba49f}
.km-single-short-description{font-size:14px;line-height:1.7;color:#65716c;margin-bottom:20px}
.km-single-short-description p{margin:0 0 7px}
.km-single-purchase{border:0;background:#fff;padding:0;margin:4px 0 16px}
.km-single-purchase form.cart{display:grid;grid-template-columns:104px 1fr;gap:10px;align-items:stretch}
.km-single-purchase form.cart .quantity{width:104px}
.km-single-purchase form.cart .quantity .qty{width:100%;height:58px;border-radius:16px;border:1px solid #dfe6e2;font-size:16px}
.km-single-purchase form.cart .single_add_to_cart_button{height:58px;min-width:0;border-radius:17px;background:var(--km-orange);font-size:15px;box-shadow:none}
.km-single-purchase form.cart .single_add_to_cart_button:hover{background:#e94e0d;transform:none}
.km-single-purchase form.cart .variations{grid-column:1/-1}
.km-single-benefits{grid-template-columns:1fr 1fr;margin:15px 0 18px}
.km-single-benefits>div{border:1px solid #edf0ee;background:#fafcfb;border-radius:15px;padding:12px}
.km-single-meta{padding-top:12px;border-top:1px solid #edf0ee;font-size:11px;color:#7a8580}
.km-product-content{max-width:1128px;margin:0 auto 44px;border-top:1px solid #edf0ee;padding:0 16px}
.km-product-tabs-nav{display:flex;gap:25px;border-bottom:1px solid #edf0ee}
.km-product-tabs-nav button{border:0;background:none;padding:17px 2px 14px;color:#7a8580;font-size:14px;font-weight:800;position:relative}
.km-product-tabs-nav button.is-active{color:var(--km-text)}
.km-product-tabs-nav button.is-active:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:3px;border-radius:5px;background:var(--km-orange)}
.km-product-panel{padding:22px 2px}
.km-product-panel[hidden]{display:none}
.km-rich-description{font-size:14px;line-height:1.8;color:#5f6c66;max-width:900px}
.km-rich-description h1,.km-rich-description h2,.km-rich-description h3,.km-rich-description h4{color:var(--km-text);line-height:1.25;margin:22px 0 9px}
.km-rich-description h2{font-size:22px}.km-rich-description h3{font-size:18px}.km-rich-description p{margin:0 0 13px}
.km-rich-description ul,.km-rich-description ol{padding-left:22px;margin:10px 0 16px}
.km-rich-description li{margin:5px 0}
.km-rich-description img{border-radius:15px}
.km-rich-description table{width:100%;border-collapse:collapse;margin:18px 0}.km-rich-description th,.km-rich-description td{padding:10px;border:1px solid #e7ece9;text-align:left}
.km-related-section{padding:0 0 45px;background:#fafbfa}

/* Mobile product layout. */
@media (max-width:760px){
  body.km-single-product-page .km-bottom-nav,.single-product .km-bottom-nav{display:none}
  .km-single-page{padding-bottom:0}
  .km-single-product{display:flex;flex-direction:column;gap:0;padding:0;margin:0 auto 0}
  .km-single-gallery{width:100%;border-radius:0;background:#fafbfa}
  .km-single-gallery .woocommerce-product-gallery__image img{aspect-ratio:1/1;padding:16px 18px}
  .km-single-summary{margin-top:-1px;padding:23px 20px 18px;border-radius:24px 24px 0 0;box-shadow:0 -5px 20px rgba(0,0,0,.035);position:relative;z-index:3}
  .km-single-summary .product_title{font-size:27px}
  .km-single-price{font-size:24px}
  .km-single-purchase{position:sticky;bottom:8px;z-index:45;padding:8px;margin:0 -5px 8px;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);border:1px solid #e7ebe9;border-radius:18px;box-shadow:0 10px 35px rgba(0,0,0,.12)}
  .km-single-purchase form.cart{grid-template-columns:82px 1fr;gap:8px}
  .km-single-purchase form.cart .quantity{width:82px}
  .km-single-purchase form.cart .quantity .qty,.km-single-purchase form.cart .single_add_to_cart_button{height:54px}
  .km-single-benefits{grid-template-columns:1fr 1fr}
  .km-product-content{padding:0 20px;margin-bottom:24px}
  .km-product-tabs-nav{gap:22px}
  .km-product-tabs-nav button{font-size:13px}
  .km-product-panel{padding:18px 0}
  .km-rich-description{font-size:14px}
  .km-related-section{padding:10px 0 30px}
  .km-related-section .km-container{width:100%;padding-left:20px}
  .km-related-section .km-products-grid{display:flex;overflow-x:auto;scrollbar-width:none;padding-right:20px}
  .km-related-section .km-products-grid::-webkit-scrollbar{display:none}
  .km-related-section .km-product-card{flex:0 0 165px}
  .km-category-grid{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:118px}
  .km-category-card{min-width:118px}
}

/* Cart / checkout closer to compact grocery-app layouts. */
.km-cart-layout{max-width:1128px;gap:28px}
.km-cart-items,.km-cart-summary,.km-checkout-card{border-color:#edf0ee;box-shadow:0 4px 18px rgba(20,40,28,.035)}
.km-cart-summary .km-btn--primary{background:var(--km-orange)}
.km-cart-summary .km-btn--primary:hover{background:#e94e0d}
.km-checkout-layout{max-width:900px}
.km-checkout-card{border-radius:20px}
.km-checkout-title>span{background:#f0f8f2}
.km-checkout #payment .button,#place_order{background:var(--km-orange)!important;box-shadow:none!important}
.km-checkout #payment .button:hover,#place_order:hover{background:#e94e0d!important}

/* Completed delivery rider information, visible only after successful delivery. */
.km-completed-rider{margin-top:18px;padding:18px;border:1px solid #e6ece8;border-radius:20px;background:#f9fbfa;max-width:620px}
.km-completed-rider__head{display:flex;justify-content:space-between;gap:12px;align-items:end;margin-bottom:14px}
.km-completed-rider__head span{font-size:10px;text-transform:uppercase;letter-spacing:.09em;color:#7c8782;font-weight:800}
.km-completed-rider__head strong{font-size:12px;color:var(--km-primary-dark)}
.km-completed-rider__profile{display:flex;align-items:center;gap:13px}
.km-completed-rider__profile img{width:58px;height:58px;border-radius:50%;object-fit:cover;background:#edf3ef}
.km-completed-rider__info strong,.km-completed-rider__info span,.km-completed-rider__info small{display:block}
.km-completed-rider__info strong{font-size:16px;color:var(--km-text)}
.km-rider-phone{margin-top:2px;font-size:13px;font-weight:800;color:var(--km-primary-dark);user-select:text}
.km-completed-rider__info small{margin-top:4px;font-size:10px;color:#7b8681}

@media (max-width:760px){
  .km-cart-layout{gap:12px}
  .km-cart-items{padding:10px}
  .km-cart-summary{padding:16px}
  .km-checkout-layout{width:100%;margin-top:0}
  .km-checkout-card{padding:16px;border-radius:18px}
  .km-completed-rider{border-radius:18px}
}

.km-qty-stepper{display:grid;grid-template-columns:28px 1fr 28px;align-items:center;height:58px;border:1px solid #dfe6e2;border-radius:16px;background:#fff;overflow:hidden}
.km-qty-stepper .qty{width:100%!important;height:56px!important;border:0!important;border-radius:0!important;background:#fff!important}
.km-qty-btn{border:0;background:#fff;color:#6f7a75;font-size:21px;line-height:1;height:100%;padding:0;font-weight:500}
.km-qty-btn:hover{background:#f5f7f6;color:var(--km-orange)}
.km-rich-description .woocommerce-Reviews-title{font-size:20px;color:var(--km-text)}
.km-rich-description .comment-form input,.km-product-panel .comment-form input,.km-product-panel .comment-form textarea{width:100%;border:1px solid #e2e8e4;border-radius:13px;padding:11px;background:#fff}
.km-product-panel .comment-form textarea{min-height:110px}
@media(max-width:760px){.km-qty-stepper{height:54px}.km-qty-stepper .qty{height:52px!important}}


/* ================================================================
   v1.4.1 production correction layer
   ================================================================ */
.km-home-product-rail,.km-related-rail{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(185px,1fr);grid-template-columns:none;overflow-x:auto;gap:14px;padding:2px 2px 10px;scroll-snap-type:x proximity;scrollbar-width:none}
.km-home-product-rail::-webkit-scrollbar,.km-related-rail::-webkit-scrollbar{display:none}
.km-home-product-rail>.km-product-card,.km-related-rail>.km-product-card{min-width:0;scroll-snap-align:start}
.km-home-deals-strip{padding-top:20px;padding-bottom:20px}
.km-deals-banner{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 28px;background:linear-gradient(100deg,#eef8f1,#fff7f1);border:1px solid #edf0ee;border-radius:22px}
.km-deals-banner h2{margin:3px 0 5px;color:var(--km-navy);font-size:25px;line-height:1.1;letter-spacing:-.04em}
.km-deals-banner p{margin:0;color:var(--km-muted);font-size:12px}
.km-deals-banner .km-btn{white-space:nowrap;background:var(--km-orange);color:#fff}
.km-single-page{padding-bottom:0}
.km-single-product{margin-bottom:30px}
.km-single-purchase:empty{display:none}
.km-single-purchase .km-fallback-cart{display:grid;grid-template-columns:104px 1fr;gap:10px;margin:0!important;align-items:center}
.km-single-purchase .km-fallback-cart .quantity{width:104px}
.km-single-purchase .km-fallback-cart .single_add_to_cart_button{grid-column:2}
.km-single-purchase form.cart .quantity{min-width:0}
.km-single-purchase form.cart .quantity .km-qty-stepper{display:grid;grid-template-columns:30px 1fr 30px;align-items:center;width:100%;height:58px;background:#fff;border:1px solid #dfe6e2;border-radius:16px;overflow:hidden}
.km-single-purchase form.cart .quantity .km-qty-stepper .qty{width:100%!important;height:56px!important;border:0!important;border-radius:0!important;background:#fff!important;box-shadow:none!important}
.km-qty-btn{height:100%;border:0;background:#fff;color:#697570;font-size:20px;font-weight:800;padding:0}
.km-qty-btn:hover{background:#f5f8f6;color:var(--km-orange)}
.km-single-purchase form.cart .quantity>input.qty{width:100%;height:58px}
.km-related-section{margin-top:0;padding:28px 0 78px;background:#fafbfa}
.km-related-section .km-container{padding-top:0}
.km-related-section .km-section-heading{margin-bottom:18px}
.km-related-rail .km-product-card{background:#fff}
.km-completed-rider{margin:28px 0 0;padding:20px;background:#fff;border:1px solid var(--km-border);border-radius:20px;box-shadow:0 8px 28px rgba(7,59,54,.04)}
.km-completed-rider__profile{display:flex;align-items:center;gap:14px;margin-top:12px}
.km-completed-rider__profile img{width:62px;height:62px;border-radius:50%;object-fit:cover;background:#f2f5f3}
.km-completed-rider__info{display:flex;flex-direction:column;gap:3px}
.km-completed-rider__info strong{font-size:16px;color:var(--km-navy)}
.km-rider-account-label{font-size:10px;color:var(--km-primary-dark);font-weight:800}
.km-rider-phone{display:block;font-size:14px;color:var(--km-text);font-weight:850;letter-spacing:.02em;user-select:text}
.km-completed-rider__info small{font-size:10px;color:var(--km-muted)}

@media (min-width:761px){
  .km-single-product{align-items:start}
  .km-single-gallery{position:sticky;top:102px}
}
@media (max-width:760px){
  .km-home-product-rail,.km-related-rail{grid-auto-columns:minmax(150px,43vw);gap:10px;margin-inline:-1px}
  .km-home-product-rail>.km-product-card,.km-related-rail>.km-product-card{width:100%}
  .km-home-deals-strip{padding:12px 0}
  .km-deals-banner{padding:18px 16px;border-radius:18px;align-items:flex-end}
  .km-deals-banner h2{font-size:20px}
  .km-deals-banner p{font-size:10px}
  .km-deals-banner .km-btn{padding:11px 13px;font-size:10px}
  .km-single-product{margin-bottom:0}
  .km-single-gallery .woocommerce-product-gallery__image img{padding:8px 14px}
  .km-single-summary{padding:22px 20px 12px}
  .km-single-purchase{bottom:7px;margin:0 -2px 7px;padding:7px;border-radius:17px}
  .km-single-purchase form.cart{grid-template-columns:86px 1fr;gap:7px}
  .km-single-purchase form.cart .quantity{width:86px}
  .km-single-purchase form.cart .quantity .km-qty-stepper{height:52px;grid-template-columns:27px 1fr 27px;border-radius:14px}
  .km-single-purchase form.cart .quantity .km-qty-stepper .qty{height:50px!important}
  .km-single-purchase form.cart .single_add_to_cart_button{height:52px;border-radius:14px}
  .km-product-content{margin-bottom:10px}
  .km-related-section{padding:22px 0 92px}
  .km-related-section .km-container{width:calc(100% - 20px)}
  .km-related-section .km-section-heading{margin-bottom:12px}
  .km-completed-rider{margin-top:20px;padding:16px}
}


/* ================================================================
   v1.4.2 focused production correction layer
   Account authentication UI + guaranteed single-product CTA.
   No changes to the existing commerce/home design system.
   ================================================================ */

/* Logged-out account / login screen. The template already contains the
 * app-style structure; these rules restore its visual system after the
 * WooCommerce form styles are removed by the theme. */
.km-auth-shell{width:min(calc(100% - 32px),1120px);margin:24px auto 56px}
.km-auth-intro{max-width:720px;margin:0 auto 18px;text-align:center}
.km-auth-intro h1{margin:6px 0 8px;color:var(--km-navy);font-size:clamp(30px,4vw,48px);line-height:1.02;letter-spacing:-.055em;font-weight:950}
.km-auth-intro p{margin:0;color:var(--km-muted);font-size:13px;line-height:1.7}
.km-auth-switcher{display:flex;width:min(100%,440px);margin:0 auto 18px;padding:4px;background:#f2f6f3;border:1px solid var(--km-border);border-radius:16px;gap:4px}
.km-auth-switcher button,.km-auth-switcher a{flex:1;border:0;background:transparent;color:#77827d;border-radius:12px;padding:11px 12px;font-size:12px;font-weight:900;text-align:center;display:block}
.km-auth-switcher button.is-active,.km-auth-switcher a.is-active{background:#fff;color:var(--km-primary-dark);box-shadow:0 4px 14px rgba(7,59,54,.08)}
.km-auth-panel[hidden]{display:none!important}
.km-auth-card{background:#fff;border:1px solid var(--km-border);border-radius:26px;padding:24px;box-shadow:0 12px 40px rgba(7,59,54,.055)}
.km-auth-card--rider{background:linear-gradient(145deg,#fff,#f8fcf9)}
.km-auth-card__head{display:flex;align-items:center;gap:13px;margin-bottom:20px;padding-bottom:18px;border-bottom:1px solid #edf1ee}
.km-auth-card__icon{width:46px;height:46px;flex:0 0 46px;display:grid;place-items:center;border-radius:14px;background:var(--km-soft);color:var(--km-primary-dark);font-size:18px;font-weight:950}
.km-auth-card__icon--rider{background:#fff0e9;color:var(--km-orange)}
.km-auth-card__head h2{margin:0;color:var(--km-navy);font-size:22px;line-height:1.1;letter-spacing:-.035em}
.km-auth-card__head p{margin:4px 0 0;color:var(--km-muted);font-size:11px;line-height:1.55}
.km-auth-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.km-auth-form-card{min-width:0;background:#fafcfb;border:1px solid #e9efeb;border-radius:20px;padding:20px}
.km-auth-form-card--register{background:#fff}
.km-form-heading{display:flex;align-items:flex-start;gap:10px;margin-bottom:16px}
.km-form-heading>span{display:grid;place-items:center;width:28px;height:28px;flex:0 0 28px;border-radius:9px;background:var(--km-soft);color:var(--km-primary-dark);font-size:9px;font-weight:950}
.km-form-heading h3{margin:0;color:var(--km-navy);font-size:17px;line-height:1.15;letter-spacing:-.025em}
.km-form-heading p{margin:3px 0 0;color:var(--km-muted);font-size:10px}
.km-auth-form-card form p.form-row{margin:0 0 12px!important}
.km-auth-form-card form label{display:block!important;margin:0 0 6px!important;color:var(--km-text);font-size:10px!important;font-weight:850!important}
.km-auth-form-card form input.input-text,.km-auth-form-card form input[type=text],.km-auth-form-card form input[type=email],.km-auth-form-card form input[type=password]{display:block;width:100%!important;min-height:48px!important;padding:0 13px!important;border:1px solid #dce5df!important;border-radius:13px!important;background:#fff!important;color:var(--km-text)!important;outline:0!important;box-shadow:none!important;font-size:12px!important}
.km-auth-form-card form input:focus{border-color:#9acbae!important;box-shadow:0 0 0 4px rgba(22,163,74,.07)!important}
.km-auth-form-card .form-row{width:100%!important;float:none!important}
.km-auth-form-card .woocommerce-form-login__rememberme{display:flex!important;align-items:center;gap:7px;margin:2px 0 12px!important;color:var(--km-muted)!important;font-size:9px!important;font-weight:700!important}
.km-auth-form-card .woocommerce-form-login__rememberme input{width:15px!important;height:15px!important;min-height:15px!important}
.km-auth-form-card .woocommerce-button,.km-auth-form-card button[type=submit]{width:100%!important;min-height:50px!important;border:0!important;border-radius:14px!important;background:var(--km-primary)!important;color:#fff!important;font-size:12px!important;font-weight:950!important;box-shadow:0 9px 20px rgba(22,163,74,.16)!important}
.km-auth-form-card .woocommerce-button:hover,.km-auth-form-card button[type=submit]:hover{background:var(--km-primary-dark)!important}
.km-auth-form-card .woocommerce-LostPassword{margin:9px 0 0!important;text-align:center;font-size:9px!important}
.km-auth-form-card .woocommerce-LostPassword a,.km-forgot-link{color:var(--km-primary-dark)!important;font-weight:850!important;text-decoration:underline;text-underline-offset:2px}
.km-input-wrap{display:block;position:relative}
.km-input-wrap input{padding-right:45px!important}
.km-password-toggle{position:absolute!important;right:7px!important;top:50%!important;transform:translateY(-50%)!important;width:34px!important;height:34px!important;min-height:34px!important;padding:0!important;border:0!important;background:transparent!important;color:#7b8781!important;box-shadow:none!important}
.km-password-toggle .km-icon{width:17px;height:17px}
.km-auth-note{margin:8px 0 13px;color:var(--km-muted);font-size:9px;line-height:1.65}
.km-auth-benefits{margin:0 0 18px;padding:0;list-style:none}
.km-auth-benefits li{position:relative;padding:9px 0 9px 22px;border-bottom:1px solid #edf1ee;color:#5f6b66;font-size:10px}
.km-auth-benefits li:before{content:"✓";position:absolute;left:0;top:8px;color:var(--km-primary);font-weight:950}
.km-auth-form-card .km-btn{font-size:11px}

/* The single-product CTA must remain visible even when a plugin has removed
 * WooCommerce summary callbacks. */
.km-single-purchase{display:block!important;visibility:visible!important;opacity:1!important}
.km-single-purchase form.km-direct-cart{display:block!important;margin:0!important;width:100%!important}
.km-direct-cart__controls{display:grid;grid-template-columns:104px minmax(0,1fr);gap:10px;align-items:stretch;width:100%}
.km-direct-cart__controls .quantity{width:104px!important;min-width:0!important;margin:0!important}
.km-direct-cart__controls .quantity .qty{display:block!important;width:100%!important}
.km-direct-cart__controls .single_add_to_cart_button{display:flex!important;visibility:visible!important;opacity:1!important;align-items:center;justify-content:center;width:100%!important;min-width:0!important;height:58px!important;margin:0!important;border:0!important;border-radius:17px!important;background:var(--km-orange)!important;color:#fff!important;font-size:15px!important;font-weight:950!important;line-height:1!important}
.km-direct-cart__controls .single_add_to_cart_button:hover{background:#e94e0d!important}
.km-product-unavailable{margin:0;padding:13px 15px;border-radius:14px;background:#f6f8f7;color:#78847e;font-size:11px}

@media(max-width:760px){
  .km-auth-shell{width:calc(100% - 22px);margin:14px auto 35px}
  .km-auth-intro{text-align:left;margin-bottom:14px}
  .km-auth-intro h1{font-size:30px}
  .km-auth-intro p{font-size:11px}
  .km-auth-card{padding:14px;border-radius:20px}
  .km-auth-card__head{margin-bottom:14px;padding-bottom:14px}
  .km-auth-card__head h2{font-size:19px}
  .km-auth-card__head p{font-size:10px}
  .km-auth-columns{grid-template-columns:1fr;gap:10px}
  .km-auth-form-card{padding:16px;border-radius:17px}
  .km-form-heading{margin-bottom:13px}
  .km-form-heading h3{font-size:15px}
  .km-auth-switcher{margin-bottom:12px}
  .km-auth-switcher button,.km-auth-switcher a{padding:10px;font-size:10px}
  .km-direct-cart__controls{grid-template-columns:86px minmax(0,1fr);gap:7px}
  .km-direct-cart__controls .quantity{width:86px!important}
  .km-direct-cart__controls .single_add_to_cart_button{height:52px!important;border-radius:14px!important;font-size:13px!important}
}
.km-rider-registration-inline{margin-top:16px;padding:20px;background:#fff;border:1px solid var(--km-border);border-radius:20px}
.km-rider-registration-inline .km-form-heading{margin-bottom:14px}
.km-rider-registration-inline .gdo-rider-registration{max-width:none;margin:0}




/* ================================================================
   v1.4.6 focused correction layer
   1) Keep the native WooCommerce single-product Add to Cart callback available.
   2) Fully style the existing GDO rider registration form without changing its logic.
   ================================================================ */

/* Rider / Hero registration: the form is owned by the existing GDO plugin. These
 * presentation-only rules give its native fields a Kroymart UI while preserving all
 * plugin names, actions, validation and submission behavior. */
.km-rider-registration-inline{color:var(--km-text);font-size:13px;line-height:1.55}
.km-rider-registration-inline .gdo-rider-registration,
.km-rider-registration-inline .gdo-rr-card,
.km-rider-registration-inline .gdo-card{width:100%;max-width:none;margin:0!important}
.km-rider-registration-inline form{display:block;width:100%;margin:0!important}
.km-rider-registration-inline fieldset{min-width:0;margin:0 0 18px;padding:18px;border:1px solid #e5ece8;border-radius:18px;background:#fbfcfb}
.km-rider-registration-inline legend{padding:0 7px;color:var(--km-navy);font-size:16px;font-weight:900}
.km-rider-registration-inline p,
.km-rider-registration-inline .form-row,
.km-rider-registration-inline .gdo-field,
.km-rider-registration-inline .gdo-form-row,
.km-rider-registration-inline .gdo-rr-field,
.km-rider-registration-inline .gdo-field-row{margin:0 0 14px!important}
.km-rider-registration-inline label{display:block!important;margin:0 0 6px!important;color:var(--km-text)!important;font-size:11px!important;font-weight:850!important;line-height:1.35}
.km-rider-registration-inline .required{color:#d94a32}
.km-rider-registration-inline input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]),
.km-rider-registration-inline select,
.km-rider-registration-inline textarea{display:block;width:100%!important;min-height:48px;padding:11px 13px!important;border:1px solid #d9e3dd!important;border-radius:13px!important;background:#fff!important;color:var(--km-text)!important;font:inherit!important;font-size:12px!important;outline:0!important;box-shadow:none!important;box-sizing:border-box!important}
.km-rider-registration-inline textarea{min-height:110px;resize:vertical}
.km-rider-registration-inline input[type=file]{display:block;width:100%;min-height:46px;padding:10px!important;border:1px dashed #cbd9d1!important;border-radius:13px!important;background:#fff!important;color:#66736d!important;font-size:11px!important;box-sizing:border-box!important}
.km-rider-registration-inline input:focus,
.km-rider-registration-inline select:focus,
.km-rider-registration-inline textarea:focus{border-color:#8fc7a2!important;box-shadow:0 0 0 4px rgba(22,163,74,.07)!important}
.km-rider-registration-inline input[type=checkbox],
.km-rider-registration-inline input[type=radio]{width:17px!important;height:17px!important;accent-color:var(--km-primary);vertical-align:middle}
.km-rider-registration-inline label:has(input[type=checkbox]),
.km-rider-registration-inline label:has(input[type=radio]){display:flex!important;align-items:center;gap:8px;font-weight:700!important}
.km-rider-registration-inline button[type=submit],
.km-rider-registration-inline input[type=submit],
.km-rider-registration-inline .gdo-rr-btn--primary,
.km-rider-registration-inline .gdo-btn--primary{display:inline-flex!important;align-items:center;justify-content:center;min-height:52px;padding:0 22px!important;border:0!important;border-radius:14px!important;background:var(--km-primary)!important;color:#fff!important;font-size:12px!important;font-weight:950!important;cursor:pointer!important;box-shadow:0 9px 20px rgba(22,163,74,.14)!important;text-decoration:none!important}
.km-rider-registration-inline button[type=submit]:hover,
.km-rider-registration-inline input[type=submit]:hover,
.km-rider-registration-inline .gdo-rr-btn--primary:hover,
.km-rider-registration-inline .gdo-btn--primary:hover{background:var(--km-primary-dark)!important;transform:translateY(-1px)}
.km-rider-registration-inline .gdo-notice,
.km-rider-registration-inline .notice,
.km-rider-registration-inline .woocommerce-error,
.km-rider-registration-inline .woocommerce-message,
.km-rider-registration-inline .woocommerce-info{padding:12px 14px;border:1px solid #e1e9e4;border-radius:13px;background:#fff;color:var(--km-text);font-size:11px}
.km-rider-registration-inline img{max-width:100%;height:auto;border-radius:13px}
.km-rider-registration-inline table{width:100%;border-collapse:separate;border-spacing:0;overflow:hidden;border:1px solid #e5ece8;border-radius:14px;background:#fff}
.km-rider-registration-inline th,.km-rider-registration-inline td{padding:10px 12px;border-bottom:1px solid #edf1ee;text-align:left;font-size:11px}
.km-rider-registration-inline tr:last-child th,.km-rider-registration-inline tr:last-child td{border-bottom:0}

@media(min-width:761px){
  .km-rider-registration-inline form{max-width:920px}
  .km-rider-registration-inline form>p.form-row,
  .km-rider-registration-inline form>.form-row,
  .km-rider-registration-inline form>.gdo-field-row,
  .km-rider-registration-inline form>.gdo-form-row,
  .km-rider-registration-inline form>.gdo-rr-field-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
  .km-rider-registration-inline form>p.form-row:has(input[type=file]),
  .km-rider-registration-inline form>.form-row:has(input[type=file]),
  .km-rider-registration-inline form>.gdo-field-row:has(input[type=file]),
  .km-rider-registration-inline form>.gdo-form-row:has(input[type=file]){grid-template-columns:1fr}
}
@media(max-width:760px){
  .km-rider-registration-inline{padding:16px}
  .km-rider-registration-inline fieldset{padding:14px}
  .km-rider-registration-inline button[type=submit],
  .km-rider-registration-inline input[type=submit],
  .km-rider-registration-inline .gdo-rr-btn--primary,
  .km-rider-registration-inline .gdo-btn--primary{width:100%!important}
}

/* Single-product CTA hardening: keep WooCommerce's native Add to cart control visible. */
.km-single-purchase form.cart .single_add_to_cart_button{display:flex!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;align-items:center;justify-content:center;cursor:pointer!important}
.km-single-purchase form.cart .single_add_to_cart_button.disabled,.km-single-purchase form.cart .single_add_to_cart_button:disabled{display:flex!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important}
.km-checkout .woocommerce-account-fields{display:none!important}


/* ================================================================
   v1.4.8 single-product presentation correction
   The theme-level woocommerce.php delegates product pages to the
   dedicated Kroymart template. These rules provide the intended
   card-based product presentation without changing other pages.
   ================================================================ */
.single-product .km-single-page{background:linear-gradient(180deg,#f7faf8 0%,#fff 38%);padding:20px 0 46px}
.single-product .km-single-product{width:min(calc(100% - 32px),1160px);margin:0 auto 24px;padding:0;display:grid;grid-template-columns:minmax(0,1.06fr) minmax(380px,.78fr);gap:0;align-items:stretch;background:#fff;border:1px solid #e5ece8;border-radius:30px;overflow:hidden;box-shadow:0 18px 55px rgba(7,59,54,.08)}
.single-product .km-single-gallery{min-width:0;padding:24px;background:linear-gradient(145deg,#f3f8f5,#fbfcfb);border:0;border-radius:0;box-shadow:none;overflow:hidden;display:flex;align-items:center}
.single-product .km-single-gallery .woocommerce-product-gallery{width:100%!important;float:none!important;margin:0!important}
.single-product .km-single-gallery .woocommerce-product-gallery__wrapper{margin:0!important}
.single-product .km-single-gallery .woocommerce-product-gallery__image{background:#fff;border:1px solid #e9efeb;border-radius:24px;overflow:hidden;box-shadow:0 10px 30px rgba(7,59,54,.055)}
.single-product .km-single-gallery .woocommerce-product-gallery__image img{display:block;width:100%;aspect-ratio:1/1;object-fit:contain;padding:24px;max-height:none}
.single-product .km-single-gallery .flex-control-thumbs{display:flex;gap:10px;margin:13px 0 0!important;padding:0!important;overflow:auto}
.single-product .km-single-gallery .flex-control-thumbs li{width:70px!important;min-width:70px;border:1px solid #e4ebe7;border-radius:13px;overflow:hidden;background:#fff}
.single-product .km-single-summary{min-width:0;position:relative!important;top:auto!important;padding:34px 32px 30px;background:#fff;border:0;border-left:1px solid #edf1ee;border-radius:0;box-shadow:none;display:flex!important;flex-direction:column}
.single-product .km-single-category{width:max-content;max-width:100%;background:#edf8f0;color:var(--km-primary-dark);border-radius:999px;padding:6px 11px;font-size:10px;font-weight:850;margin:0 0 13px}
.single-product .km-single-summary .product_title{font-size:clamp(30px,3.2vw,44px);line-height:1.04;letter-spacing:-.05em;color:var(--km-navy);margin:0 0 12px;font-weight:950}
.single-product .km-single-rating-row{display:flex;align-items:center;gap:8px;font-size:11px;margin:0 0 13px;color:#78847f}
.single-product .km-single-price{font-size:30px;line-height:1;color:var(--km-primary-dark);font-weight:950;margin:2px 0 17px}
.single-product .km-single-price ins{text-decoration:none;color:var(--km-primary-dark)}
.single-product .km-single-price del{font-size:14px;color:#9aa49f;margin-right:5px}
.single-product .km-single-short-description{font-size:14px;line-height:1.75;color:#617069;margin:0 0 20px;padding:16px 17px;background:#f8fbf9;border:1px solid #edf2ef;border-radius:17px}
.single-product .km-single-short-description p{margin:0 0 8px}
.single-product .km-single-short-description p:last-child{margin-bottom:0}
.single-product .km-single-purchase{margin:0 0 17px;padding:0;border:0;background:transparent}
.single-product .km-single-purchase form.cart{display:grid!important;grid-template-columns:96px minmax(0,1fr);gap:10px;align-items:stretch;width:100%;margin:0!important}
.single-product .km-single-purchase form.cart .quantity{width:96px;min-width:0;display:flex}
.single-product .km-single-purchase form.cart .quantity .qty{width:100%!important;height:58px!important;border:1px solid #dce6e0!important;border-radius:16px!important;background:#fff!important;color:var(--km-navy)!important;text-align:center;font-size:16px;font-weight:900;box-shadow:none!important}
.single-product .km-single-purchase form.cart .single_add_to_cart_button{display:flex!important;align-items:center;justify-content:center;width:100%!important;min-width:0!important;height:58px!important;margin:0!important;padding:0 20px!important;border:0!important;border-radius:16px!important;background:var(--km-primary)!important;color:#fff!important;font-size:15px!important;font-weight:950!important;line-height:1!important;box-shadow:0 11px 25px rgba(22,163,74,.20)!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important;cursor:pointer!important;transition:transform .18s ease,background .18s ease,box-shadow .18s ease}
.single-product .km-single-purchase form.cart .single_add_to_cart_button:hover{background:var(--km-primary-dark)!important;transform:translateY(-1px);box-shadow:0 14px 28px rgba(15,127,58,.22)!important}
.single-product .km-single-purchase form.cart .variations{grid-column:1/-1;width:100%;margin:0 0 6px;border:0}
.single-product .km-single-purchase form.cart .variations select{width:100%;min-height:48px;border:1px solid #dce6e0;border-radius:14px;background:#fff;padding:0 12px}
.single-product .km-single-benefits{grid-template-columns:1fr 1fr;gap:9px;margin:2px 0 18px}
.single-product .km-single-benefits>div{min-width:0;border:1px solid #edf1ee;background:#fafcfb;border-radius:15px;padding:11px}
.single-product .km-single-meta{padding-top:15px;border-top:1px solid #edf1ee;font-size:11px;color:#7a8580;margin-top:auto}
.single-product .km-product-content{width:min(calc(100% - 32px),1160px);max-width:none;margin:0 auto 28px;padding:0;background:#fff;border:1px solid #e5ece8;border-radius:26px;overflow:hidden;box-shadow:0 12px 36px rgba(7,59,54,.055)}
.single-product .km-product-tabs-nav{padding:0 25px;gap:28px;background:#fff;border-bottom:1px solid #edf1ee}
.single-product .km-product-tabs-nav button{padding:17px 1px 14px;font-size:13px}
.single-product .km-product-panel{padding:24px 26px}
.single-product .km-rich-description{max-width:920px;font-size:14px;line-height:1.85;color:#5e6b65}
.single-product .km-rich-description p:last-child{margin-bottom:0}
.single-product .km-related-section{background:transparent}

@media (max-width:760px){
  .single-product .km-single-page{padding:8px 0 30px;background:#f7faf8}
  .single-product .km-single-product{width:100%;display:flex;flex-direction:column;margin:0;border-radius:0;border-left:0;border-right:0;box-shadow:none}
  .single-product .km-single-gallery{padding:12px;background:#f3f8f5}
  .single-product .km-single-gallery .woocommerce-product-gallery__image{border-radius:20px}
  .single-product .km-single-gallery .woocommerce-product-gallery__image img{padding:14px;aspect-ratio:1/1}
  .single-product .km-single-summary{padding:22px 18px 18px;border-left:0;border-radius:22px 22px 0 0;margin-top:-1px;box-shadow:0 -6px 24px rgba(7,59,54,.055);z-index:3}
  .single-product .km-single-summary .product_title{font-size:28px}
  .single-product .km-single-price{font-size:25px}
  .single-product .km-single-short-description{font-size:13px;padding:14px;margin-bottom:15px}
  .single-product .km-single-purchase{position:sticky;bottom:8px;z-index:45;padding:7px;margin:0 -3px 8px;background:rgba(255,255,255,.96);backdrop-filter:blur(14px);border:1px solid #e5ebe8;border-radius:17px;box-shadow:0 10px 30px rgba(0,0,0,.12)}
  .single-product .km-single-purchase form.cart{grid-template-columns:82px minmax(0,1fr);gap:7px}
  .single-product .km-single-purchase form.cart .quantity{width:82px}
  .single-product .km-single-purchase form.cart .quantity .qty,.single-product .km-single-purchase form.cart .single_add_to_cart_button{height:54px!important}
  .single-product .km-single-purchase form.cart .single_add_to_cart_button{border-radius:14px!important;font-size:14px!important}
  .single-product .km-single-benefits{grid-template-columns:1fr 1fr}
  .single-product .km-product-content{width:calc(100% - 20px);margin:0 auto 20px;border-radius:20px}
  .single-product .km-product-tabs-nav{padding:0 18px;gap:22px}
  .single-product .km-product-tabs-nav button{font-size:12px}
  .single-product .km-product-panel{padding:19px 18px}
}

/* ================================================================
   v1.4.9 UI-only production polish
   Reference direction: modern grocery-app layout.
   No commerce, plugin, account, checkout or tracking logic is changed.
   ================================================================ */
:root{
  --km-page:#fbfcfb;
  --km-card:#fff;
  --km-soft-2:#f3f7f4;
  --km-line:#e8eeea;
  --km-accent:#ff5b16;
}

/* Global spacing / rhythm */
body{background:var(--km-page)}
.km-main{padding:22px 0 54px}
.km-container{width:min(calc(100% - 40px),1180px)}
.km-section{padding:34px 0}
.km-section-heading{margin-bottom:17px;align-items:center}
.km-section-heading h2,.km-shop-head h1{margin:0;font-size:25px;line-height:1.12;letter-spacing:-.035em}
.km-section-heading .km-eyebrow{display:none}
.km-view-all{font-size:12px;text-decoration:underline;text-underline-offset:4px;color:var(--km-text)}

/* Header: compact app-like spacing without changing controls */
.km-header__inner{min-height:72px}

.km-header-search--desktop{top:82px;width:min(calc(100% - 40px),1180px)}
.km-header-search{height:52px;border-radius:18px}

/* Home promotional image remains functional and becomes a clean app surface. */
.km-home-slider-section{padding:0;background:#fff}
.km-home-slider{background:#f3f6f4}
.km-home-slide img{width:100%;height:auto;object-fit:cover}
.km-home-slider__dots{bottom:11px;padding:5px 8px}

/* Home categories: compact horizontal grocery-app cards. */
.km-section--categories{padding:26px 0 32px;background:#fff}
.km-category-grid{
  display:grid;
  grid-template-columns:repeat(8,minmax(112px,1fr));
  grid-auto-flow:column;
  gap:12px;
  overflow-x:auto;
  padding:1px 1px 7px;
  scrollbar-width:none;
}

.km-category-card{
  min-width:112px;
  min-height:142px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  gap:9px;
  padding:10px 8px 12px;
  border:1px solid #edf1ef;
  border-radius:19px;
  background:#f7f9f8;
  box-shadow:none;
  text-align:center;
}
.km-category-card:hover{transform:none;box-shadow:0 8px 20px rgba(7,59,54,.06)}
.km-category-card__image{
  width:92px;height:92px;flex:0 0 92px;
  margin:0;
  border-radius:17px;
  background:#fff;
  overflow:hidden;
}
.km-category-card__image img{object-fit:contain;padding:7px}
.km-category-card strong{font-size:12px;line-height:1.25;font-weight:850;color:var(--km-text)}


/* Home product rails / cards */
.km-home-product-rail,.km-related-rail{
  gap:12px;
  padding:2px 1px 9px;
  margin:0;
  grid-auto-columns:minmax(205px,1fr);
}
.km-product-card{
  border:1px solid #e9eeeb;
  border-radius:20px;
  background:#fff;
  box-shadow:0 3px 14px rgba(17,38,28,.035);
}
.km-product-card__media{background:#f7f8f7;border-radius:0;aspect-ratio:1/1}
.km-product-card__media>a:first-of-type img{object-fit:contain;padding:7px}
.km-product-card__badges{left:10px;top:10px}
.km-quick-add{
  right:10px;bottom:10px;width:44px;height:44px;
  border-radius:50%;color:var(--km-accent);font-size:28px;
  border:1px solid #e1e5e3;box-shadow:0 5px 15px rgba(0,0,0,.10)
}
.km-product-card__body{padding:12px 13px 15px}
.km-product-card h2,.km-product-card h3{font-size:14px;line-height:1.28;min-height:36px;font-weight:800}

.km-product-price{font-size:15px}

/* Home sections that already exist in the theme, cleaned up rather than removed. */
.km-section--tint{background:#f3f8f4}
.km-promo{padding:24px 28px;border-radius:22px}
.km-service-grid{gap:12px}
.km-service-grid>div{padding:20px;border-radius:18px}

/* Shop page: tighter toolbar and app-style product grid. */
.woocommerce-shop .km-main,
.post-type-archive-product .km-main{padding-top:18px}
.km-shop-head{margin:4px 0 16px;padding:0;align-items:flex-end}
.km-shop-head h1{font-size:30px;color:var(--km-navy)}
.km-shop-head p{margin:6px 0 0;font-size:12px;color:var(--km-muted)}
.km-shop-toolbar{margin:0 0 14px;padding:10px 12px;border:1px solid var(--km-line);border-radius:15px;background:#fff}
.km-results-count{font-size:10px}
.woocommerce-ordering select{min-height:38px;border-radius:11px;padding:7px 30px 7px 10px}
.km-products-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.km-products-grid .km-product-card{min-width:0}

/* Single product: balanced card composition, image-first and clear CTA. */
.single-product .km-single-page{padding:18px 0 50px;background:#f7faf8}
.single-product .km-single-product{
  width:min(calc(100% - 40px),1160px);
  margin:0 auto 18px;
  grid-template-columns:minmax(0,1.03fr) minmax(390px,.79fr);
  background:#fff;
  border:1px solid #e4ebe7;
  border-radius:28px;
  box-shadow:0 12px 38px rgba(7,59,54,.065);
}
.single-product .km-single-gallery{padding:20px;background:#f3f7f5}
.single-product .km-single-gallery .woocommerce-product-gallery__image{background:#fff;border:1px solid #e8eeeb;border-radius:21px}
.single-product .km-single-gallery .woocommerce-product-gallery__image img{padding:22px;aspect-ratio:1/1;object-fit:contain}
.single-product .km-single-summary{padding:30px 28px 26px}
.single-product .km-single-category{margin-bottom:12px}
.single-product .km-single-summary .product_title{font-size:clamp(28px,3vw,40px);line-height:1.06;margin-bottom:11px}
.single-product .km-single-rating-row{margin-bottom:12px}
.single-product .km-single-price{font-size:29px;margin-bottom:15px}
.single-product .km-single-short-description{
  margin:0 0 17px;
  padding:15px 16px;
  border-radius:16px;
  background:#f6f9f7;
  border:1px solid #eaf0ed;
}
.single-product .km-single-purchase{margin:0 0 15px}
.single-product .km-single-purchase form.cart{grid-template-columns:92px minmax(0,1fr);gap:9px}
.single-product .km-single-purchase form.cart .quantity{width:92px}
.single-product .km-single-purchase form.cart .quantity .qty{height:56px!important;border-radius:15px!important}
.single-product .km-single-purchase form.cart .single_add_to_cart_button{height:56px!important;border-radius:15px!important;background:var(--km-accent)!important;box-shadow:0 9px 22px rgba(255,91,22,.18)!important;font-size:15px!important}
.single-product .km-single-purchase form.cart .single_add_to_cart_button:hover{background:#e94e0d!important;transform:translateY(-1px)}
.single-product .km-single-benefits{margin:2px 0 16px;gap:8px}
.single-product .km-single-benefits>div{padding:10px;border-radius:14px}
.single-product .km-single-meta{padding-top:13px}
.single-product .km-product-content{
  width:min(calc(100% - 40px),1160px);
  margin:0 auto 22px;
  border:1px solid #e4ebe7;
  border-radius:22px;
  background:#fff;
  box-shadow:0 8px 28px rgba(7,59,54,.045);
}
.single-product .km-product-tabs-nav{padding:0 22px}
.single-product .km-product-panel{padding:22px}
.single-product .km-related-section{padding:10px 0 55px;background:#fff}

/* Prevent default WooCommerce heading/list margins from creating large gaps. */
.woocommerce ul.products,.woocommerce-page ul.products{margin:0!important;padding:0!important}
.woocommerce .woocommerce-result-count{margin:0!important}
.woocommerce .woocommerce-ordering{margin:0!important}
.woocommerce div.product .woocommerce-product-gallery{margin-bottom:0}
.woocommerce div.product .summary{margin-bottom:0}

/* Desktop/tablet spacing corrections. */
@media (max-width:1000px){
  .km-container{width:min(calc(100% - 32px),1180px)}
  .km-products-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
  .single-product .km-single-product{grid-template-columns:minmax(0,1fr) minmax(330px,.78fr);width:min(calc(100% - 32px),1160px)}
  .single-product .km-single-summary{padding:26px 23px}
}

/* Mobile: match the reference's compact, image-first grocery app rhythm. */
@media (max-width:760px){
  body{padding-bottom:88px}
  .km-container{width:calc(100% - 28px)}
  .km-main{padding:12px 0 32px}
  .km-header__inner{min-height:60px}
  .km-header{padding-bottom:9px}
  .km-mobile-search-wrap{padding:0 0 9px}
  .km-header-search{height:50px;border-radius:25px;padding:0 15px}
  .km-header-search input{font-size:14px}

  .km-home-slider-section{margin:0}
  .km-home-slider{border-radius:0}
  .km-home-slider__dots{bottom:8px}

  .km-section{padding:27px 0}
  .km-section--categories{padding:24px 0 27px}
  .km-section-heading{margin-bottom:13px}
  .km-section-heading h2,.km-shop-head h1{font-size:22px}

  .km-category-grid{
    grid-auto-columns:118px;
    grid-template-columns:none;
    gap:9px;
    padding:1px 0 7px;
  }
  .km-category-card{min-width:118px;min-height:148px;padding:9px 7px 11px;border-radius:17px}
  .km-category-card__image{width:96px;height:96px;flex-basis:96px;border-radius:16px}
  .km-category-card strong{font-size:12px}

  .km-home-product-rail,.km-related-rail{grid-auto-columns:calc(50vw - 21px);gap:9px;padding-bottom:8px}
  .km-product-card{border-radius:17px}
  .km-product-card__media{aspect-ratio:1/1}
  .km-product-card__media>a:first-of-type img{padding:5px}
  .km-product-card__body{padding:10px 10px 12px}
  .km-product-card h2,.km-product-card h3{font-size:12px;line-height:1.28;min-height:31px}
  .km-product-price{font-size:13px}
  .km-quick-add{width:40px;height:40px;right:8px;bottom:8px;font-size:25px}

  .km-promo{padding:18px;border-radius:18px}
  .km-promo h2{font-size:23px}
  .km-promo p{font-size:11px}
  .km-service-grid>div{padding:17px}

  .km-shop-head{margin:3px 0 12px}
  .km-shop-head h1{font-size:26px}
  .km-shop-head p{font-size:11px;line-height:1.5}
  .km-shop-toolbar{padding:8px 10px;margin-bottom:11px;border-radius:13px}
  .km-products-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .km-products-grid .km-product-card{border-radius:17px}

  .single-product .km-single-page{padding:0 0 26px;background:#f6f8f7}
  .single-product .km-single-product{width:100%;display:flex;flex-direction:column;margin:0;border:0;border-radius:0;box-shadow:none;background:transparent}
  .single-product .km-single-gallery{padding:10px 14px 12px;background:#f6f8f7}
  .single-product .km-single-gallery .woocommerce-product-gallery__image{border-radius:20px;background:#fff}
  .single-product .km-single-gallery .woocommerce-product-gallery__image img{padding:10px 16px;aspect-ratio:1/1}
  .single-product .km-single-gallery .flex-control-thumbs{margin-top:8px!important;padding:0 2px!important;gap:7px}
  .single-product .km-single-gallery .flex-control-thumbs li{width:58px!important;min-width:58px;border-radius:11px}
  .single-product .km-single-summary{
    padding:20px 18px 10px;
    margin:0;
    border:0;
    border-radius:22px 22px 0 0;
    background:#fff;
    box-shadow:0 -7px 25px rgba(7,59,54,.055);
  }
  .single-product .km-single-category{font-size:10px;padding:5px 8px;margin-bottom:10px}
  .single-product .km-single-summary .product_title{font-size:27px;line-height:1.08;margin-bottom:9px}
  .single-product .km-single-rating-row{font-size:11px;margin-bottom:10px}
  .single-product .km-single-price{font-size:25px;margin-bottom:13px}
  .single-product .km-single-short-description{font-size:13px;line-height:1.65;padding:13px 14px;margin-bottom:13px;border-radius:15px}
  .single-product .km-single-purchase{
    position:sticky;
    bottom:7px;
    z-index:45;
    padding:7px;
    margin:0 -2px 8px;
    border:1px solid #e3e9e5;
    border-radius:17px;
    background:rgba(255,255,255,.96);
    backdrop-filter:blur(14px);
    box-shadow:0 10px 30px rgba(0,0,0,.13);
  }
  .single-product .km-single-purchase form.cart{grid-template-columns:82px minmax(0,1fr);gap:7px}
  .single-product .km-single-purchase form.cart .quantity{width:82px}
  .single-product .km-single-purchase form.cart .quantity .qty,
  .single-product .km-single-purchase form.cart .single_add_to_cart_button{height:53px!important}
  .single-product .km-single-purchase form.cart .single_add_to_cart_button{border-radius:14px!important;font-size:14px!important}
  .single-product .km-single-benefits{grid-template-columns:1fr 1fr;margin:1px 0 13px}
  .single-product .km-single-benefits>div{padding:9px}
  .single-product .km-single-meta{padding-top:11px;font-size:10px}
  .single-product .km-product-content{width:calc(100% - 20px);margin:0 auto 16px;border-radius:19px}
  .single-product .km-product-tabs-nav{padding:0 16px;gap:21px}
  .single-product .km-product-tabs-nav button{padding:15px 1px 12px;font-size:12px}
  .single-product .km-product-panel{padding:17px 16px}
  .single-product .km-rich-description{font-size:13px;line-height:1.75}
  .single-product .km-related-section{padding:8px 0 74px}
  .single-product .km-related-section .km-container{width:calc(100% - 20px)}
}

/* ================================================================
   v1.4.10 checkout / order-received / shop spacing correction
   UI-only: no commerce or plugin behavior changes.
   ================================================================ */

/* Checkout: clean, readable order summary rows. */
.woocommerce-checkout .km-page{margin-bottom:42px}
.km-checkout #order_review .shop_table.woocommerce-checkout-review-order-table{
  width:100%!important;
  border-collapse:separate!important;
  border-spacing:0!important;
  table-layout:fixed;
  background:#fff;
  border:1px solid #e7eeea;
  border-radius:16px;
  overflow:hidden;
  margin:0 0 14px!important;
}
.km-checkout #order_review .shop_table thead th{
  padding:13px 14px!important;
  border-bottom:1px solid #e7eeea!important;
  background:#f7faf8;
  color:var(--km-navy);
  font-size:11px!important;
  font-weight:900!important;
  text-align:left;
}
.km-checkout #order_review .shop_table thead th:last-child{text-align:right}
.km-checkout #order_review .shop_table tbody td,
.km-checkout #order_review .shop_table tfoot th,
.km-checkout #order_review .shop_table tfoot td{
  padding:13px 14px!important;
  border:0!important;
  border-bottom:1px solid #edf2ef!important;
  color:var(--km-text);
  font-size:12px!important;
  line-height:1.45;
  vertical-align:top;
}
.km-checkout #order_review .shop_table tbody tr:last-child td,
.km-checkout #order_review .shop_table tfoot tr:last-child th,
.km-checkout #order_review .shop_table tfoot tr:last-child td{border-bottom:0!important}
.km-checkout #order_review .shop_table .product-name{width:64%;font-weight:750}
.km-checkout #order_review .shop_table .product-total{width:36%;text-align:right;font-weight:850;white-space:nowrap}
.km-checkout #order_review .shop_table tfoot th{width:64%;text-align:left;font-weight:850}
.km-checkout #order_review .shop_table tfoot td{width:36%;text-align:right;font-weight:800;white-space:nowrap}
.km-checkout #order_review .shop_table .order-total th,
.km-checkout #order_review .shop_table .order-total td{font-size:14px!important;font-weight:950!important;color:var(--km-navy)}
.km-checkout #order_review .shop_table .shipping td{line-height:1.55}

/* Payment choices sit in one consistent card instead of inheriting WooCommerce's list styling. */
.km-checkout #payment{margin-top:0!important}
.km-checkout #payment .wc_payment_method{margin:0 0 8px!important;padding:14px!important}
.km-checkout #payment .wc_payment_method:last-child{margin-bottom:0!important}
.km-checkout #payment .payment_box{margin:10px 0 0!important;padding:12px 13px!important;border-radius:12px!important;background:#f6faf7!important;color:var(--km-muted)!important;font-size:11px!important;line-height:1.55!important}

/* Order received: split the native WooCommerce result into readable cards. */
.woocommerce-checkout .woocommerce-order{max-width:900px;margin:0 auto 48px}
.woocommerce-checkout .woocommerce-order>p{margin:0 0 14px!important;padding:18px 20px!important;background:#fff;border:1px solid var(--km-line);border-radius:18px;box-shadow:0 6px 22px rgba(7,59,54,.035);font-size:14px;line-height:1.6}
.woocommerce-checkout .woocommerce-order>ul.order_details{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:10px;
  list-style:none!important;
  margin:0 0 14px!important;
  padding:0!important;
}
.woocommerce-checkout .woocommerce-order>ul.order_details:before,
.woocommerce-checkout .woocommerce-order>ul.order_details:after{display:none!important}
.woocommerce-checkout .woocommerce-order>ul.order_details li{
  float:none!important;
  width:auto!important;
  min-height:76px;
  margin:0!important;
  padding:13px 14px!important;
  border:1px solid var(--km-line)!important;
  border-radius:16px!important;
  background:#fff;
  color:var(--km-muted);
  font-size:10px;
  line-height:1.5;
}
.woocommerce-checkout .woocommerce-order>ul.order_details li strong{display:block;margin-top:5px;color:var(--km-navy);font-size:12px;line-height:1.35;word-break:break-word}
.woocommerce-checkout .woocommerce-order .woocommerce-order-details,
.woocommerce-checkout .woocommerce-order .woocommerce-customer-details{
  margin:0 0 14px!important;
  padding:20px!important;
  background:#fff;
  border:1px solid var(--km-line);
  border-radius:20px;
  box-shadow:0 7px 24px rgba(7,59,54,.04);
}
.woocommerce-checkout .woocommerce-order .woocommerce-order-details h2,
.woocommerce-checkout .woocommerce-order .woocommerce-customer-details h2,
.woocommerce-checkout .woocommerce-order .woocommerce-customer-details h3{
  margin:0 0 14px!important;
  color:var(--km-navy);
  font-size:20px!important;
  line-height:1.2;
}
.woocommerce-checkout .woocommerce-order .woocommerce-order-details table.order_details{
  width:100%!important;
  border-collapse:separate!important;
  border-spacing:0!important;
  overflow:hidden;
  border:1px solid var(--km-line);
  border-radius:14px;
  margin:0!important;
}
.woocommerce-checkout .woocommerce-order .woocommerce-order-details table.order_details th,
.woocommerce-checkout .woocommerce-order .woocommerce-order-details table.order_details td{
  padding:12px 13px!important;
  border:0!important;
  border-bottom:1px solid #edf2ef!important;
  font-size:11px!important;
  text-align:left;
  vertical-align:top;
}
.woocommerce-checkout .woocommerce-order .woocommerce-order-details table.order_details tr:last-child th,
.woocommerce-checkout .woocommerce-order .woocommerce-order-details table.order_details tr:last-child td{border-bottom:0!important}
.woocommerce-checkout .woocommerce-order .woocommerce-order-details table.order_details td:last-child,
.woocommerce-checkout .woocommerce-order .woocommerce-order-details table.order_details th:last-child{text-align:right;white-space:nowrap}
.woocommerce-checkout .woocommerce-order .woocommerce-customer-details address{
  margin:0!important;
  padding:15px 16px!important;
  border:1px solid var(--km-line)!important;
  border-radius:14px!important;
  background:#f8faf9!important;
  font-size:12px!important;
  line-height:1.85!important;
  color:var(--km-text)!important;
}
.woocommerce-checkout .woocommerce-order .woocommerce-customer-details .woocommerce-columns--addresses{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.woocommerce-checkout .woocommerce-order .woocommerce-customer-details .woocommerce-column{float:none!important;width:auto!important;margin:0!important}
.woocommerce-checkout .woocommerce-order .km-order-track{margin:0 0 14px!important;padding:0!important}
.woocommerce-checkout .woocommerce-order .km-order-track .km-btn{min-height:48px;padding-inline:20px}

/* Shop/archive: keep the toolbar, product grid and footer visually separated. */
.woocommerce-shop .km-shop-head,
.post-type-archive-product .km-shop-head{margin-bottom:18px}
.woocommerce-shop .km-shop-toolbar,
.post-type-archive-product .km-shop-toolbar{margin-bottom:18px!important}
.woocommerce-shop .km-products-grid,
.post-type-archive-product .km-products-grid{margin-bottom:38px!important}
.woocommerce-shop .km-products-grid+.woocommerce-pagination,
.post-type-archive-product .km-products-grid+.woocommerce-pagination{margin-top:8px!important;margin-bottom:34px!important}
.woocommerce-shop .km-footer,
.post-type-archive-product .km-footer{margin-top:20px}

/* Avoid the fixed bottom app nav visually colliding with the last row/footer. */
body.woocommerce-shop,body.post-type-archive-product{padding-bottom:118px}

@media(max-width:760px){
  .woocommerce-checkout .woocommerce-order{width:calc(100% - 28px)}
  .woocommerce-checkout .woocommerce-order>p{padding:15px 16px!important;font-size:13px}
  .woocommerce-checkout .woocommerce-order>ul.order_details{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .woocommerce-checkout .woocommerce-order>ul.order_details li{min-height:70px;padding:11px!important}
  .woocommerce-checkout .woocommerce-order>ul.order_details li:last-child{grid-column:1/-1}
  .woocommerce-checkout .woocommerce-order .woocommerce-order-details,
  .woocommerce-checkout .woocommerce-order .woocommerce-customer-details{padding:15px!important;border-radius:17px}
  .woocommerce-checkout .woocommerce-order .woocommerce-order-details h2,
  .woocommerce-checkout .woocommerce-order .woocommerce-customer-details h2,
  .woocommerce-checkout .woocommerce-order .woocommerce-customer-details h3{font-size:18px!important}
  .woocommerce-checkout .woocommerce-order .woocommerce-customer-details .woocommerce-columns--addresses{grid-template-columns:1fr}
  .woocommerce-checkout .woocommerce-order .woocommerce-order-details table.order_details th,
  .woocommerce-checkout .woocommerce-order .woocommerce-order-details table.order_details td{padding:11px 10px!important;font-size:10px!important}
  .km-checkout #order_review .shop_table .product-name{width:60%}
  .km-checkout #order_review .shop_table .product-total{width:40%}
  .km-checkout #order_review .shop_table thead th,
  .km-checkout #order_review .shop_table tbody td,
  .km-checkout #order_review .shop_table tfoot th,
  .km-checkout #order_review .shop_table tfoot td{padding:11px 10px!important;font-size:11px!important}
  .woocommerce-shop .km-products-grid,
  .post-type-archive-product .km-products-grid{margin-bottom:32px!important}
}

/* ================================================================
   v1.4.10 checkout / order-received / shop spacing correction
   UI-only: no commerce or plugin behavior changes.
   ================================================================ */

/* Checkout: clean, readable order summary rows. */

.km-checkout #order_review .shop_table.woocommerce-checkout-review-order-table{width:100%!important;border-collapse:separate!important;border-spacing:0!important;table-layout:fixed;background:#fff;border:1px solid #e7eeea;border-radius:16px;overflow:hidden;margin:0 0 14px!important}
.km-checkout #order_review .shop_table thead th{padding:13px 14px!important;border-bottom:1px solid #e7eeea!important;background:#f7faf8;color:var(--km-navy);font-size:11px!important;font-weight:900!important;text-align:left}

.km-checkout #order_review .shop_table tbody td,.km-checkout #order_review .shop_table tfoot th,.km-checkout #order_review .shop_table tfoot td{padding:13px 14px!important;border:0!important;border-bottom:1px solid #edf2ef!important;color:var(--km-text);font-size:12px!important;line-height:1.45;vertical-align:top}
.km-checkout #order_review .shop_table tbody tr:last-child td,.km-checkout #order_review .shop_table tfoot tr:last-child th,.km-checkout #order_review .shop_table tfoot tr:last-child td{border-bottom:0!important}




.km-checkout #order_review .shop_table .order-total th,.km-checkout #order_review .shop_table .order-total td{font-size:14px!important;font-weight:950!important;color:var(--km-navy)}


/* Payment choices: one consistent readable card per method. */





/* On the order-received screen, keep the page title as its own card and let the native
 * WooCommerce result cards breathe independently. */
.woocommerce-order-received .km-page{background:transparent;border:0;box-shadow:none;padding:0}
.woocommerce-order-received .km-page>h1{margin:0 0 14px!important;padding:20px!important;background:#fff;border:1px solid var(--km-line);border-radius:20px;box-shadow:0 7px 24px rgba(7,59,54,.04)}

/* Order received: separate the native WooCommerce result into readable cards. */


.woocommerce-checkout .woocommerce-order>ul.order_details{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;list-style:none!important;margin:0 0 14px!important;padding:0!important}
.woocommerce-checkout .woocommerce-order>ul.order_details:before,.woocommerce-checkout .woocommerce-order>ul.order_details:after{display:none!important}
.woocommerce-checkout .woocommerce-order>ul.order_details li{float:none!important;width:auto!important;min-height:76px;margin:0!important;padding:13px 14px!important;border:1px solid var(--km-line)!important;border-radius:16px!important;background:#fff;color:var(--km-muted);font-size:10px;line-height:1.5}

.woocommerce-checkout .woocommerce-order .woocommerce-order-details,.woocommerce-checkout .woocommerce-order .woocommerce-customer-details{margin:0 0 14px!important;padding:20px!important;background:#fff;border:1px solid var(--km-line);border-radius:20px;box-shadow:0 7px 24px rgba(7,59,54,.04)}
.woocommerce-checkout .woocommerce-order .woocommerce-order-details h2,.woocommerce-checkout .woocommerce-order .woocommerce-customer-details h2,.woocommerce-checkout .woocommerce-order .woocommerce-customer-details h3{margin:0 0 14px!important;color:var(--km-navy);font-size:20px!important;line-height:1.2}
.woocommerce-checkout .woocommerce-order .woocommerce-order-details table.order_details{width:100%!important;border-collapse:separate!important;border-spacing:0!important;overflow:hidden;border:1px solid var(--km-line);border-radius:14px;margin:0!important}
.woocommerce-checkout .woocommerce-order .woocommerce-order-details table.order_details th,.woocommerce-checkout .woocommerce-order .woocommerce-order-details table.order_details td{padding:12px 13px!important;border:0!important;border-bottom:1px solid #edf2ef!important;font-size:11px!important;text-align:left;vertical-align:top}
.woocommerce-checkout .woocommerce-order .woocommerce-order-details table.order_details tr:last-child th,.woocommerce-checkout .woocommerce-order .woocommerce-order-details table.order_details tr:last-child td{border-bottom:0!important}
.woocommerce-checkout .woocommerce-order .woocommerce-order-details table.order_details td:last-child,.woocommerce-checkout .woocommerce-order .woocommerce-order-details table.order_details th:last-child{text-align:right;white-space:nowrap}
.woocommerce-checkout .woocommerce-order .woocommerce-customer-details address{margin:0!important;padding:15px 16px!important;border:1px solid var(--km-line)!important;border-radius:14px!important;background:#f8faf9!important;font-size:12px!important;line-height:1.85!important;color:var(--km-text)!important}
.woocommerce-checkout .woocommerce-order .woocommerce-customer-details .woocommerce-columns--addresses{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}




/* Shop/archive: visually separate heading, toolbar, products and footer. */
.woocommerce-shop .km-shop-head,.post-type-archive-product .km-shop-head{margin-bottom:18px}
.woocommerce-shop .km-shop-toolbar,.post-type-archive-product .km-shop-toolbar{margin-bottom:18px!important}
.woocommerce-shop .km-products-grid,.post-type-archive-product .km-products-grid{margin-bottom:38px!important}
.woocommerce-shop .km-products-grid+.woocommerce-pagination,.post-type-archive-product .km-products-grid+.woocommerce-pagination{margin-top:8px!important;margin-bottom:34px!important}
.woocommerce-shop .km-footer,.post-type-archive-product .km-footer{margin-top:20px}


@media(max-width:760px){
  .woocommerce-checkout .woocommerce-order{width:calc(100% - 28px)}
  .woocommerce-checkout .woocommerce-order>p{padding:15px 16px!important;font-size:13px}
  .woocommerce-checkout .woocommerce-order>ul.order_details{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .woocommerce-checkout .woocommerce-order>ul.order_details li{min-height:70px;padding:11px!important}
  .woocommerce-checkout .woocommerce-order>ul.order_details li:last-child{grid-column:1/-1}
  .woocommerce-checkout .woocommerce-order .woocommerce-order-details,.woocommerce-checkout .woocommerce-order .woocommerce-customer-details{padding:15px!important;border-radius:17px}
  .woocommerce-checkout .woocommerce-order .woocommerce-order-details h2,.woocommerce-checkout .woocommerce-order .woocommerce-customer-details h2,.woocommerce-checkout .woocommerce-order .woocommerce-customer-details h3{font-size:18px!important}
  .woocommerce-checkout .woocommerce-order .woocommerce-customer-details .woocommerce-columns--addresses{grid-template-columns:1fr}
  .woocommerce-checkout .woocommerce-order .woocommerce-order-details table.order_details th,.woocommerce-checkout .woocommerce-order .woocommerce-order-details table.order_details td{padding:11px 10px!important;font-size:10px!important}
  .km-checkout #order_review .shop_table .product-name{width:60%}
  .km-checkout #order_review .shop_table .product-total{width:40%}
  .km-checkout #order_review .shop_table thead th,.km-checkout #order_review .shop_table tbody td,.km-checkout #order_review .shop_table tfoot th,.km-checkout #order_review .shop_table tfoot td{padding:11px 10px!important;font-size:11px!important}
  .woocommerce-shop .km-products-grid,.post-type-archive-product .km-products-grid{margin-bottom:32px!important}
}

/* ================================================================
   v1.4.11 homepage reference UI layer
   UI-only: existing homepage data, queries, links and functionality untouched.
   ================================================================ */
.km-home-main{background:#fff;overflow:hidden}
.km-home-main .km-section{padding:30px 0}
.km-home-main .km-container{width:min(calc(100% - 32px),1180px)}
.km-home-main .km-home-slider-section{padding:10px 0 0;background:#fff}
.km-home-main .km-home-slider{border-radius:18px;overflow:hidden;background:#f3f7f4;box-shadow:0 5px 18px rgba(7,59,54,.06)}
.km-home-main .km-home-slider__track{width:100%;overflow:hidden}
.km-home-main .km-home-slide img{width:100%;height:auto;display:block;object-fit:cover}
.km-home-main .km-home-slider__dots{bottom:10px;padding:5px 7px;gap:5px;background:rgba(255,255,255,.88);box-shadow:0 3px 10px rgba(0,0,0,.08)}
.km-home-main .km-home-slider__dots button{height:5px;width:18px}
.km-home-main .km-home-slider__dots button.is-active{width:28px}

/* Section headings: compact grocery-app rhythm. */
.km-home-main .km-section-heading{margin:0 0 12px;align-items:center}
.km-home-main .km-section-heading h2{margin:0;font-size:21px;line-height:1.15;letter-spacing:-.035em;color:var(--km-navy);font-weight:900}
.km-home-main .km-view-all{display:inline-flex;align-items:center;gap:3px;color:var(--km-text);font-size:11px;font-weight:850;white-space:nowrap;text-decoration:underline;text-underline-offset:4px}
.km-home-main .km-view-all .km-icon{width:13px;height:13px;text-decoration:none}

/* Categories: reference-style compact 4-column mobile grid. */
.km-home-main .km-section--categories{padding:24px 0 26px;background:#fff}
.km-home-main .km-category-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:10px;overflow-x:auto;padding:0 1px 5px;scrollbar-width:none}
.km-home-main .km-category-grid::-webkit-scrollbar{display:none}
.km-home-main .km-category-card{min-width:0;min-height:0;height:auto;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;text-align:center;gap:6px;padding:8px 5px 7px;border:1px solid #edf0ee;border-radius:15px;background:#f8faf9;box-shadow:none}
.km-home-main .km-category-card__image{width:100%;height:auto;aspect-ratio:1/1;border-radius:13px;margin:0;background:#fff;overflow:hidden}
.km-home-main .km-category-card__image img{width:100%;height:100%;object-fit:contain;padding:5px}
.km-home-main .km-category-card strong{font-size:10px;line-height:1.15;font-weight:850;color:var(--km-text);display:block}
.km-home-main .km-category-card span,.km-home-main .km-category-card>.km-icon{display:none}

/* Product rails: two-up mobile cards, clean whitespace and reference-like CTAs. */
.km-home-main .km-home-product-rail{display:grid;grid-auto-flow:column;grid-auto-columns:calc(50% - 5px);gap:10px;overflow-x:auto;padding:0 1px 5px;scrollbar-width:none}
.km-home-main .km-home-product-rail::-webkit-scrollbar{display:none}
.km-home-main .km-home-product-rail>.km-product-card{width:100%;min-width:0}
.km-home-main .km-product-card{border:1px solid #e7ece9;border-radius:16px;background:#fff;box-shadow:0 2px 10px rgba(7,59,54,.035);overflow:hidden}
.km-home-main .km-product-card__media{aspect-ratio:1/1;background:#f7f8f7}
.km-home-main .km-product-card__media>a:first-of-type img{object-fit:contain;padding:5px}
.km-home-main .km-product-card__body{padding:9px 10px 11px}
.km-home-main .km-product-card h2,.km-home-main .km-product-card h3{font-size:12px;line-height:1.25;min-height:31px;font-weight:850;color:var(--km-text)}
.km-home-main .km-product-bottom{margin-top:7px}
.km-home-main .km-product-price{font-size:13px;font-weight:950;color:var(--km-navy)}
.km-home-main .km-product-price del{font-size:9px}
.km-home-main .km-quick-add{width:38px;height:38px;right:8px;bottom:8px;border-radius:50%;font-size:24px;color:var(--km-orange);background:#fff;border:1px solid #e1e6e3;box-shadow:0 4px 12px rgba(0,0,0,.1)}

/* Everyday section gets the same clean surface as the reference product rails. */
.km-home-main .km-section--soft{background:#fff}
.km-home-main .km-section--soft .km-container{padding-top:0}

/* Existing Good Food promo: preserve the feature, present it as a clean campaign card. */
.km-home-main .km-section--tint{padding:26px 0 30px;background:#f3f8f4}
.km-home-main .km-promo{min-height:210px;grid-template-columns:minmax(0,1fr) 180px;gap:18px;padding:24px 26px;border-radius:20px;background:linear-gradient(135deg,#f7fcf8,#edf8f1);border:1px solid #dfeae3;box-shadow:0 5px 18px rgba(7,59,54,.035)}
.km-home-main .km-promo h2{font-size:27px;line-height:1.08;margin:7px 0 9px}
.km-home-main .km-promo p{font-size:12px;line-height:1.55;margin:0 0 14px}
.km-home-main .km-promo .km-btn{min-height:44px;padding:0 17px;border-radius:13px;font-size:12px}
.km-home-main .km-promo-art{width:150px;height:150px}

/* Existing service cards: keep them, only normalize their spacing. */
.km-home-main .km-service-grid{gap:12px}
.km-home-main .km-service-grid>div{padding:18px;border-radius:17px}

@media (min-width:761px){
  .km-home-main .km-home-slider-section{padding-top:14px}
  .km-home-main .km-section{padding:34px 0}
  .km-home-main .km-section--categories{padding:28px 0 30px}
  .km-home-main .km-category-grid{grid-template-columns:repeat(8,minmax(110px,1fr));overflow-x:auto}
  .km-home-main .km-home-product-rail{grid-auto-columns:minmax(205px,1fr);gap:14px}
}

@media (max-width:760px){
  .km-home-main .km-container{width:calc(100% - 28px)}
  .km-home-main .km-home-slider-section{padding:8px 0 0}
  .km-home-main .km-home-slider{border-radius:15px}
  .km-home-main .km-section{padding:23px 0}
  .km-home-main .km-section-heading{margin-bottom:10px}
  .km-home-main .km-section-heading h2{font-size:20px}
  .km-home-main .km-view-all{font-size:10px}

  .km-home-main .km-section--categories{padding:22px 0 25px}
  .km-home-main .km-category-grid{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-flow:row;overflow:visible;gap:8px;padding:0}
  .km-home-main .km-category-card{width:100%;padding:6px 4px 8px;border-radius:13px;gap:5px}
  .km-home-main .km-category-card__image{width:100%;aspect-ratio:1/1;border-radius:11px}
  .km-home-main .km-category-card__image img{padding:4px}
  .km-home-main .km-category-card strong{font-size:9px;line-height:1.15;min-height:21px;display:flex;align-items:flex-start;justify-content:center}

  .km-home-main .km-home-product-rail{grid-auto-columns:calc(50% - 5px);gap:9px;padding-bottom:4px}
  .km-home-main .km-product-card{border-radius:15px}
  .km-home-main .km-product-card__body{padding:8px 9px 10px}
  .km-home-main .km-product-card h2,.km-home-main .km-product-card h3{font-size:11px;min-height:28px}
  .km-home-main .km-product-price{font-size:12px}
  .km-home-main .km-quick-add{width:37px;height:37px;right:7px;bottom:7px;font-size:23px}

  .km-home-main .km-section--tint{padding:22px 0 25px}
  .km-home-main .km-promo{grid-template-columns:1fr;min-height:0;gap:12px;padding:19px;border-radius:17px}
  .km-home-main .km-promo h2{font-size:22px}
  .km-home-main .km-promo p{font-size:11px}
  .km-home-main .km-promo-art{width:112px;height:112px;justify-self:start}
  .km-home-main .km-promo-art span{font-size:29px}
  .km-home-main .km-promo-art small{font-size:8px;margin-top:-31px}

  .km-home-main .km-service-grid{grid-template-columns:1fr;gap:9px}
}

/* GDO rider registration integration: keep the existing theme card as the
 * single visual shell instead of creating nested layers around the plugin form. */
.km-rider-registration-inline .gdo-rider-registration{max-width:none!important;width:100%!important;margin:0!important;padding:0!important;background:transparent!important}
.km-rider-registration-inline .gdo-rider-registration .gdo-rr-card{max-width:none!important;width:100%!important;margin:0!important;padding:18px!important;border-radius:14px!important;box-shadow:none!important}
.km-rider-registration-inline .gdo-rider-registration .gdo-rr-form{width:100%!important;max-width:none!important;display:block!important}
.km-rider-registration-inline .gdo-rider-registration .gdo-rr-form input,
.km-rider-registration-inline .gdo-rider-registration .gdo-rr-form select{width:100%!important;max-width:none!important}
@media (min-width:768px){.km-rider-registration-inline .gdo-rider-registration .gdo-rr-card{padding:22px!important}}

/* Targeted rider-registration shell correction: keep the existing form and
 * functionality, but remove redundant visual nesting from the account card. */
.km-rider-registration-inline{
  margin-top:16px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
}
.km-rider-registration-inline .gdo-rider-registration{
  padding:0!important;
  margin:0!important;
  background:transparent!important;
}
.km-rider-registration-inline .gdo-rider-registration .gdo-rr-card{
  margin:0!important;
  width:100%!important;
  max-width:none!important;
  padding:20px!important;
  border:1px solid var(--km-border)!important;
  border-radius:18px!important;
  background:#fff!important;
}
.km-rider-registration-inline .gdo-rider-registration .gdo-rr-heading{
  margin-top:0!important;
}
@media(max-width:767px){
  .km-rider-registration-inline .gdo-rider-registration .gdo-rr-card{padding:18px!important}
}
.km-cancel-countdown{
  display:inline-block;
  margin-left:8px;
  font-size:12px;
  font-weight:700;
  color:var(--km-primary);
}

/* ================================================================
 * v1.4.15 targeted production correction
 * Customer My Account order actions + rider registration shell.
 * UI only: no WooCommerce/GDO business logic is changed here.
 * ================================================================ */
html,body{max-width:100%;overflow-x:hidden}

/* Customer Orders: keep every action as a real, separate button. */
.woocommerce-account .woocommerce-orders-table{width:100%;border-collapse:separate!important;border-spacing:0;table-layout:fixed}
.woocommerce-account .woocommerce-orders-table td,
.woocommerce-account .woocommerce-orders-table th{min-width:0;overflow-wrap:anywhere}
.woocommerce-account .woocommerce-orders-table .woocommerce-orders-table__cell-order-actions{width:190px;text-align:right;white-space:normal!important}
.woocommerce-account .woocommerce-orders-table .woocommerce-orders-table__cell-order-actions .woocommerce-button,
.woocommerce-account .woocommerce-orders-table .woocommerce-orders-table__cell-order-actions a.button,
.woocommerce-account .woocommerce-orders-table .woocommerce-orders-table__cell-order-actions a{display:inline-flex!important;align-items:center;justify-content:center;vertical-align:middle;min-height:38px;margin:3px 0 3px 5px!important;padding:8px 11px!important;border:1px solid #dfe8e2!important;border-radius:10px!important;background:#fff!important;color:var(--km-primary-dark)!important;font-size:10px!important;font-weight:850!important;line-height:1.2!important;text-decoration:none!important;white-space:normal!important;box-sizing:border-box;box-shadow:none!important}
.woocommerce-account .woocommerce-orders-table .woocommerce-orders-table__cell-order-actions .woocommerce-button:hover,
.woocommerce-account .woocommerce-orders-table .woocommerce-orders-table__cell-order-actions a.button:hover,
.woocommerce-account .woocommerce-orders-table .woocommerce-orders-table__cell-order-actions a:hover{border-color:#b9d7c3!important;background:#f4fbf6!important;transform:translateY(-1px)}
.woocommerce-account .woocommerce-orders-table .woocommerce-orders-table__cell-order-actions a.gdo-cancel,
.woocommerce-account .woocommerce-orders-table .woocommerce-orders-table__cell-order-actions a[href*="gdo_cancel_order"]{background:var(--km-primary)!important;border-color:var(--km-primary)!important;color:#fff!important}
.woocommerce-account .woocommerce-orders-table .woocommerce-orders-table__cell-order-actions .km-cancel-countdown{display:block;margin:2px 0 3px;font-size:9px;font-weight:800;color:var(--km-primary-dark);line-height:1.3}

/* Make the My Account content a clean responsive surface without horizontal page scroll. */
.woocommerce-account .woocommerce-MyAccount-content{min-width:0;max-width:100%;overflow:hidden}
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-notices-wrapper{max-width:100%}

/* Registration: remove the redundant parent shell when the shortcode is embedded. */
.km-auth-card--rider:has(.km-rider-registration-inline){background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important}
.km-auth-card--rider:has(.km-rider-registration-inline)>.km-auth-card__head{margin:0 0 16px;padding:0 2px 14px;border-bottom:1px solid #edf1ee}
.km-rider-registration-inline{margin:0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
.km-rider-registration-inline>.km-form-heading{margin:0 0 10px!important}
.km-rider-registration-inline .gdo-rider-registration{margin:0!important;padding:0!important;max-width:none!important;width:100%!important;background:transparent!important}
.km-rider-registration-inline .gdo-rider-registration .gdo-rr-card{width:100%!important;max-width:none!important;margin:0!important;padding:20px!important;border:1px solid #e1eae5!important;border-radius:18px!important;background:#fff!important;box-shadow:0 7px 24px rgba(7,59,54,.045)!important}
.km-rider-registration-inline .gdo-rider-registration .gdo-rr-heading{margin:0 0 15px!important;color:var(--km-navy)!important}
.km-rider-registration-inline .gdo-rider-registration .gdo-rr-subheading{margin:22px 0 9px!important}
.km-rider-registration-inline .gdo-rider-registration .gdo-rr-form{position:relative;z-index:1;width:100%!important;max-width:none!important;display:block!important}
.km-rider-registration-inline .gdo-rider-registration .gdo-rr-form label{display:block!important;margin:12px 0 6px!important}
.km-rider-registration-inline .gdo-rider-registration .gdo-rr-form input,
.km-rider-registration-inline .gdo-rider-registration .gdo-rr-form select{width:100%!important;max-width:100%!important;box-sizing:border-box!important}
.km-rider-registration-inline .gdo-rider-registration .gdo-rr-form button[type=submit]{width:100%!important;max-width:100%!important;margin-top:18px!important}

@media(max-width:760px){
  .woocommerce-account .woocommerce-MyAccount-content{width:100%;overflow:hidden}
  .woocommerce-account .woocommerce-orders-table,
  .woocommerce-account .woocommerce-orders-table tbody,
  .woocommerce-account .woocommerce-orders-table tr,
  .woocommerce-account .woocommerce-orders-table td{display:block!important;width:100%!important;max-width:100%!important}
  .woocommerce-account .woocommerce-orders-table thead{display:none!important}
  .woocommerce-account .woocommerce-orders-table tbody{padding:0!important}
  .woocommerce-account .woocommerce-orders-table tr{margin:0 0 12px!important;padding:13px!important;border:1px solid #e4ebe7!important;border-radius:18px!important;background:#fff!important;box-shadow:0 6px 20px rgba(7,59,54,.035);box-sizing:border-box}
  .woocommerce-account .woocommerce-orders-table td{display:grid!important;grid-template-columns:minmax(78px,32%) minmax(0,1fr);gap:10px;align-items:center;padding:8px 0!important;border:0!important;border-bottom:1px solid #eef2ef!important;text-align:right!important;white-space:normal!important;font-size:11px!important;line-height:1.45!important;box-sizing:border-box}
  .woocommerce-account .woocommerce-orders-table td:last-child{border-bottom:0!important}
  .woocommerce-account .woocommerce-orders-table td::before{content:attr(data-title);text-align:left;color:#7a8580;font-size:9px;font-weight:850;letter-spacing:.01em}
  .woocommerce-account .woocommerce-orders-table .woocommerce-orders-table__cell-order-number a{font-weight:950!important}
  .woocommerce-account .woocommerce-orders-table .woocommerce-orders-table__cell-order-actions{display:block!important;width:100%!important;text-align:left!important;padding-top:11px!important}
  .woocommerce-account .woocommerce-orders-table .woocommerce-orders-table__cell-order-actions::before{display:block;margin-bottom:6px}
  .woocommerce-account .woocommerce-orders-table .woocommerce-orders-table__cell-order-actions .woocommerce-button,
  .woocommerce-account .woocommerce-orders-table .woocommerce-orders-table__cell-order-actions a.button,
  .woocommerce-account .woocommerce-orders-table .woocommerce-orders-table__cell-order-actions a{width:100%!important;margin:4px 0!important;min-height:42px!important;border-radius:12px!important;font-size:11px!important}
  .woocommerce-account .woocommerce-orders-table .woocommerce-orders-table__cell-order-actions .km-cancel-countdown{margin:3px 0 5px;text-align:center;font-size:9px}
  .km-rider-registration-inline .gdo-rider-registration .gdo-rr-card{padding:17px!important;border-radius:16px!important}
}

/* v1.4.16: category-driven home merchandising and premium product-card polish. */
.km-home-product-rail .km-product-card,
.km-related-rail .km-product-card,
.km-products-grid .km-product-card{
  border-color:#e4ebe7;
  box-shadow:0 7px 24px rgba(7,59,54,.055);
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.km-home-product-rail .km-product-card:hover,
.km-related-rail .km-product-card:hover,
.km-products-grid .km-product-card:hover{
  transform:translateY(-4px);
  border-color:#d5e3dc;
  box-shadow:0 14px 32px rgba(7,59,54,.10);
}
.km-product-card__media{background:linear-gradient(145deg,#f8faf9 0%,#f2f6f4 100%)}
.km-product-card__media>a:first-of-type img{transition:transform .28s ease, filter .28s ease}
.km-product-card:hover .km-product-card__media>a:first-of-type img{transform:scale(1.045);filter:saturate(1.03)}
.km-product-card__body{position:relative}
.km-product-card h2 a,.km-product-card h3 a{transition:color .18s ease}
.km-product-card h2 a:hover,.km-product-card h3 a:hover{color:var(--km-primary-dark)}
.km-quick-add{transition:transform .18s ease, box-shadow .18s ease, background .18s ease!important}
.km-quick-add:hover{transform:scale(1.06);box-shadow:0 9px 22px rgba(255,91,22,.22)!important;background:#fff!important}
.km-empty-inline{margin:0;padding:18px 0;color:var(--km-muted);font-size:14px}

/* 60-minute delivery promise on the single-product page. */
.km-delivery-promise{
  display:flex;align-items:center;gap:12px;
  margin:0 0 14px;padding:13px 15px;
  border:1px solid #cdebd8;border-radius:17px;
  background:linear-gradient(135deg,#f1fbf4 0%,#e8f8ee 100%);
  color:var(--km-navy);
  box-shadow:0 6px 18px rgba(22,163,74,.07);
}
.km-delivery-promise__icon{width:40px;height:40px;flex:0 0 40px;display:grid;place-items:center;border-radius:12px;background:#fff;color:var(--km-primary-dark);box-shadow:0 3px 10px rgba(7,59,54,.06)}
.km-delivery-promise__icon .km-icon{width:22px;height:22px}
.km-delivery-promise__copy{display:flex;flex-direction:column;gap:3px;min-width:0}
.km-delivery-promise__copy strong{font-size:16px;line-height:1.25;color:#126b42;font-weight:900}
.km-delivery-promise__copy small{font-size:11px;line-height:1.35;color:#66746d}
@media(max-width:760px){
  .km-delivery-promise{margin:0 0 12px;padding:12px 13px;border-radius:15px}
  .km-delivery-promise__icon{width:38px;height:38px;flex-basis:38px}
  .km-delivery-promise__copy strong{font-size:14px}
  .km-delivery-promise__copy small{font-size:10px}
}


/* v1.4.17 homepage merchandising additions. Existing theme styles remain intact. */
html,body{overflow-x:hidden}
.km-home-main .km-deal-section{padding:28px 0;background:#fff}
.km-home-main .km-deal-heading{display:flex;align-items:end;justify-content:space-between;gap:14px;margin-bottom:14px}
.km-home-main .km-deal-heading h2{margin:3px 0 0;font-size:25px;line-height:1.1;color:var(--km-navy);letter-spacing:-.035em}
.km-home-main .km-deal-layout{display:grid;grid-template-columns:minmax(190px,26%) minmax(0,1fr);gap:14px;align-items:stretch;overflow:hidden}
.km-home-main .km-deal-poster{min-width:0;border:1px solid #e5ebe7;border-radius:20px;overflow:hidden;background:#f5f8f6;min-height:100%}
.km-home-main .km-deal-poster img{display:block;width:100%;height:100%;min-height:260px;object-fit:cover}
.km-home-main .km-deal-poster__placeholder{min-height:260px;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:20px;background:linear-gradient(145deg,#eff8f2,#dff0e5);color:var(--km-navy)}
.km-home-main .km-deal-poster__placeholder span{font-size:27px;font-weight:900;line-height:1.05}.km-home-main .km-deal-poster__placeholder small{margin-top:8px;color:#64736c;font-size:11px}
.km-home-main .km-deal-products{min-width:0;overflow:hidden}
.km-home-main .km-deal-products .km-product-card{min-width:0;width:100%}
.km-home-main .km-deal-products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.km-home-main .km-deal-products .km-product-card__media{aspect-ratio:1/1}
.km-home-main .km-home-random-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.km-home-main .km-home-random-grid .km-product-card{min-width:0}
.km-home-main .km-section--random-products{background:#fff}
@media (max-width:1000px){
 .km-home-main .km-deal-layout{grid-template-columns:220px minmax(0,1fr)}
 .km-home-main .km-deal-products{grid-template-columns:repeat(3,minmax(0,1fr))}
 .km-home-main .km-home-random-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media (max-width:760px){
 .km-home-main .km-deal-section{padding:23px 0;background:#fff}
 .km-home-main .km-deal-heading{margin-bottom:10px}.km-home-main .km-deal-heading h2{font-size:20px}
 .km-home-main .km-deal-layout{display:block;overflow:hidden}
 .km-home-main .km-deal-poster{width:100%;height:155px;min-height:155px;border-radius:15px;margin-bottom:10px}
 .km-home-main .km-deal-poster img,.km-home-main .km-deal-poster__placeholder{height:155px;min-height:155px}
 .km-home-main .km-deal-poster__placeholder span{font-size:22px}
 .km-home-main .km-deal-products{display:grid;grid-auto-flow:column;grid-auto-columns:calc(50% - 5px);grid-template-columns:none;gap:9px;overflow-x:auto;overflow-y:hidden;padding:1px 1px 5px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
 .km-home-main .km-deal-products::-webkit-scrollbar{display:none}
 .km-home-main .km-deal-products .km-product-card{width:100%;min-width:0}
 .km-home-main .km-home-random-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
}


/* Compact category cards: shorter footprint without losing the grocery-app look. */
.km-home-main .km-category-card{min-height:0;height:auto;padding:7px 5px 8px;gap:5px;border-radius:15px}
.km-home-main .km-category-card__image{width:82px;height:82px;aspect-ratio:1/1;flex:0 0 82px;border-radius:12px}
.km-home-main .km-category-card strong{font-size:11px;line-height:1.12;min-height:24px}
@media (max-width:760px){
 .km-home-main .km-category-card{padding:5px 4px 7px;border-radius:12px;gap:4px}
 .km-home-main .km-category-card__image{width:78px;height:78px;flex-basis:78px;border-radius:11px}
 .km-home-main .km-category-card strong{font-size:9px;line-height:1.12;min-height:20px}
}


/* v1.4.18 correction: show every top-level category in one swipeable rail. */
.km-home-main .km-category-grid{
  display:flex;
  flex-wrap:nowrap;
  align-items:stretch;
  gap:10px;
  overflow-x:auto;
  overflow-y:hidden;
  overscroll-behavior-x:contain;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:none;
  touch-action:pan-x;
  padding:0 1px 6px;
}

.km-home-main .km-category-card{
  flex:0 0 calc((100% - 70px)/8);
  width:auto;
  min-width:0;
}
@media (max-width:760px){
  .km-home-main .km-category-grid{
    gap:9px;
    padding:1px 0 7px;
  }
  .km-home-main .km-category-card{
    flex:0 0 118px;
    min-width:118px;
  }
}


/* v1.4.19 correction: make horizontal homepage rails visibly swipeable.
 * The hint is shown only while additional content exists and disappears
 * after the user reaches the end of the rail. */
.km-home-main .km-swipe-rail-wrap{
  position:relative;
  min-width:0;
  width:100%;
}
.km-home-main .km-swipe-rail-wrap > .km-category-grid,
.km-home-main .km-swipe-rail-wrap > .km-home-product-rail,
.km-home-main .km-swipe-rail-wrap > .km-deal-products{
  position:relative;
}
.km-home-main .km-swipe-rail-hint{
  position:absolute;
  z-index:5;
  top:50%;
  right:8px;
  transform:translateY(-50%);
  display:flex;
  align-items:center;
  gap:5px;
  padding:7px 9px 7px 11px;
  border:1px solid rgba(255,255,255,.92);
  border-radius:999px;
  background:rgba(7,59,54,.90);
  box-shadow:0 5px 16px rgba(7,59,54,.18);
  color:#fff;
  font-size:10px;
  line-height:1;
  font-weight:850;
  letter-spacing:.01em;
  pointer-events:none;
  opacity:0;
  visibility:hidden;
  transition:opacity .22s ease,visibility .22s ease;
}
.km-home-main .km-swipe-rail-hint__arrow{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:16px;
  line-height:10px;
  animation:kmSwipeHintNudge 1.2s ease-in-out infinite;
}
.km-home-main .km-swipe-rail-wrap.is-scrollable:not(.is-at-end) .km-swipe-rail-hint{
  opacity:1;
  visibility:visible;
}
.km-home-main .km-swipe-rail-wrap.is-scrollable:not(.is-at-end)::after{
  content:"";
  position:absolute;
  z-index:4;
  top:0;
  right:0;
  width:46px;
  height:100%;
  border-radius:0 14px 14px 0;
  background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.92));
  pointer-events:none;
}
.km-home-main .km-swipe-rail-wrap.is-scrollable:not(.is-at-end) > .km-category-grid,
.km-home-main .km-swipe-rail-wrap.is-scrollable:not(.is-at-end) > .km-home-product-rail,
.km-home-main .km-swipe-rail-wrap.is-scrollable:not(.is-at-end) > .km-deal-products{
  scroll-padding-right:46px;
}
@keyframes kmSwipeHintNudge{
  0%,100%{transform:translateX(0)}
  50%{transform:translateX(4px)}
}
@media (max-width:760px){
  .km-home-main .km-swipe-rail-hint{
    right:6px;
    padding:7px 8px 7px 10px;
    font-size:9px;
  }
  .km-home-main .km-swipe-rail-wrap.is-scrollable:not(.is-at-end)::after{
    width:40px;
  }
}
@media (prefers-reduced-motion:reduce){
  .km-home-main .km-swipe-rail-hint__arrow{animation:none}
}

/* ================================================================
 * v1.4.21 focused production correction
 * Customer account typography + responsive My Account containment.
 * Existing commerce and account endpoints are not replaced by the theme.
 * ================================================================ */
.woocommerce-account .km-account-layout{min-width:0;width:min(calc(100% - 32px),1120px)}
.woocommerce-account .km-account-content{min-width:0;max-width:100%;box-sizing:border-box;overflow:visible}
.woocommerce-account .woocommerce-MyAccount-navigation{min-width:0}
.woocommerce-account .woocommerce-MyAccount-navigation ul{min-width:0}
.woocommerce-account .woocommerce-MyAccount-navigation li a{font-size:14px!important;line-height:1.35!important;padding:11px 10px!important}
.woocommerce-account .km-account-nav__label{font-size:11px}
.woocommerce-account .km-account-user strong{font-size:14px}
.woocommerce-account .km-account-user small{font-size:11px}
.woocommerce-account .km-account-content table{font-size:14px}
.woocommerce-account .km-account-content th,.woocommerce-account .km-account-content td{font-size:14px;line-height:1.45}
.woocommerce-account .woocommerce-orders-table .woocommerce-orders-table__cell-order-actions .woocommerce-button,
.woocommerce-account .woocommerce-orders-table .woocommerce-orders-table__cell-order-actions a.button,
.woocommerce-account .woocommerce-orders-table .woocommerce-orders-table__cell-order-actions a{font-size:13px!important}

/* Logged-out customer registration/login: regular mobile-readable sizes. */
.km-auth-form-card form label{font-size:13px!important;line-height:1.4!important}
.km-auth-form-card form input.input-text,
.km-auth-form-card form input[type=text],
.km-auth-form-card form input[type=email],
.km-auth-form-card form input[type=password]{font-size:15px!important;min-height:52px!important}
.km-auth-form-card .woocommerce-form-login__rememberme{font-size:13px!important}
.km-auth-form-card .woocommerce-button,
.km-auth-form-card button[type=submit]{font-size:14px!important}
.km-auth-form-card .woocommerce-LostPassword{font-size:13px!important}
.km-auth-note{font-size:13px!important;line-height:1.65!important}
.km-auth-benefits li{font-size:13px!important}
.km-auth-switcher button,.km-auth-switcher a{font-size:14px!important}
.km-auth-card__head p{font-size:13px}
.km-form-heading p{font-size:12px}

@media(max-width:760px){
  .woocommerce-account .km-account-layout{width:calc(100% - 22px);margin:8px auto 35px;display:block}
  .woocommerce-account .km-account-nav{padding:9px;border-radius:18px;overflow:hidden}
  .woocommerce-account .woocommerce-MyAccount-navigation ul{display:flex!important;gap:4px;overflow-x:auto!important;overflow-y:hidden!important;white-space:nowrap!important;padding:0 1px!important;margin:0!important;scrollbar-width:thin}
  .woocommerce-account .woocommerce-MyAccount-navigation li{flex:0 0 auto!important}
  .woocommerce-account .woocommerce-MyAccount-navigation li a{font-size:14px!important;padding:10px 12px!important;min-height:42px;display:flex!important;align-items:center}
  .woocommerce-account .km-account-content{width:100%;padding:17px!important;border-radius:18px;overflow:visible!important}
  .woocommerce-account .km-account-mobile-title h1{font-size:25px}
  .woocommerce-account .woocommerce-MyAccount-content{width:100%!important;max-width:100%!important;min-width:0!important;overflow:visible!important;box-sizing:border-box}
  .woocommerce-account .woocommerce-orders-table{font-size:14px!important}
  .woocommerce-account .woocommerce-orders-table td{font-size:14px!important;line-height:1.5!important}
  .woocommerce-account .woocommerce-orders-table td::before{font-size:12px!important}
  .woocommerce-account .woocommerce-orders-table .woocommerce-orders-table__cell-order-actions .woocommerce-button,
  .woocommerce-account .woocommerce-orders-table .woocommerce-orders-table__cell-order-actions a.button,
  .woocommerce-account .woocommerce-orders-table .woocommerce-orders-table__cell-order-actions a{font-size:13px!important}
  .km-auth-form-card form label{font-size:14px!important}
  .km-auth-form-card form input.input-text,
  .km-auth-form-card form input[type=text],
  .km-auth-form-card form input[type=email],
  .km-auth-form-card form input[type=password]{font-size:16px!important;min-height:54px!important}
  .km-auth-form-card .woocommerce-form-login__rememberme{font-size:13px!important}
  .km-auth-note{font-size:13px!important}
}



/* ================================================================
 * v1.4.22 focused production correction
 * My Account navigation surface + site-wide motion polish.
 * Presentation only: no commerce endpoints or business logic changed.
 * ================================================================ */

body,
a,button,input,select,textarea,.km-btn,.km-icon-btn,.km-category-card,.km-product-card,.km-promo,.km-account-nav,.km-account-content,.km-bottom-nav,.km-mobile-drawer{transition:background-color .22s ease,color .22s ease,border-color .22s ease,box-shadow .22s ease,transform .22s ease,opacity .22s ease}
.km-account-layout{grid-template-columns:minmax(270px,280px) minmax(0,1fr);gap:22px}
.woocommerce-account .km-account-nav{padding:22px;background:linear-gradient(180deg,#fff 0%,#fbfefc 100%);border:1px solid #d7e5dd;border-radius:26px;box-shadow:0 14px 38px rgba(7,59,54,.07);min-height:100%;box-sizing:border-box}
.woocommerce-account .km-account-user{padding:4px 2px 18px;gap:12px}
.woocommerce-account .km-avatar{width:46px;height:46px;border-radius:14px;font-size:16px}
.woocommerce-account .km-account-user strong{font-size:15px;line-height:1.25}
.woocommerce-account .km-account-user small{font-size:12px;line-height:1.4}
.woocommerce-account .km-account-nav__label{font-size:11px;margin:20px 8px 9px;letter-spacing:.14em}
.woocommerce-account .woocommerce-MyAccount-navigation ul{display:grid;gap:6px}
.woocommerce-account .woocommerce-MyAccount-navigation li a{min-height:48px;display:flex;align-items:center;padding:12px 14px!important;border-radius:14px;font-size:15px!important;line-height:1.35!important;font-weight:850;box-sizing:border-box}
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a{box-shadow:inset 0 0 0 1px rgba(22,163,74,.08)}
.woocommerce-account .km-account-content{padding:28px;background:#fff;border:1px solid #d7e5dd;border-radius:26px;box-shadow:0 14px 38px rgba(7,59,54,.055)}
.woocommerce-account .km-account-mobile-title h1{font-size:32px}

/* Soft, non-distracting reveal for existing homepage surfaces. */
.km-motion-ready .km-home-main .km-section,.km-motion-ready .km-home-main .km-category-card,.km-motion-ready .km-home-main .km-product-card,.km-motion-ready .km-home-main .km-promo,.km-motion-ready .km-home-main .km-deal-section{opacity:0;transform:translateY(12px)}
.km-motion-ready .km-home-main .km-motion-visible{opacity:1;transform:none}
.km-home-main .km-category-card:hover,.km-home-main .km-product-card:hover{transform:translateY(-2px)}
.km-btn:hover,.km-icon-btn:hover,.km-quick-add:hover{transform:translateY(-1px)}
.km-btn:active,.km-icon-btn:active,.km-quick-add:active{transform:translateY(0) scale(.98)}
@media(max-width:760px){
  .woocommerce-account .km-account-layout{width:calc(100% - 18px);margin:8px auto 35px;display:block}
  .woocommerce-account .km-account-nav{padding:12px;border-radius:22px;margin-bottom:14px;min-height:0;box-shadow:0 10px 28px rgba(7,59,54,.06)}
  .woocommerce-account .km-account-user{padding:4px 4px 12px}
  .woocommerce-account .km-account-nav__label{display:none}
  .woocommerce-account .woocommerce-MyAccount-navigation ul{display:flex!important;gap:7px!important;overflow-x:auto!important;overflow-y:hidden!important;white-space:nowrap!important;padding:2px!important;margin:0!important;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .woocommerce-account .woocommerce-MyAccount-navigation ul::-webkit-scrollbar{display:none}
  .woocommerce-account .woocommerce-MyAccount-navigation li{flex:0 0 auto!important}
  .woocommerce-account .woocommerce-MyAccount-navigation li a{min-height:48px!important;padding:12px 16px!important;border-radius:15px;font-size:15px!important}
  .woocommerce-account .km-account-content{padding:20px!important;border-radius:22px}
  .woocommerce-account .km-account-mobile-title h1{font-size:28px}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  body,a,button,input,select,textarea,.km-btn,.km-icon-btn,.km-category-card,.km-product-card,.km-promo,.km-account-nav,.km-account-content,.km-bottom-nav,.km-mobile-drawer{transition:none!important}
  .km-motion-ready .km-home-main .km-section,.km-motion-ready .km-home-main .km-category-card,.km-motion-ready .km-home-main .km-product-card,.km-motion-ready .km-home-main .km-promo,.km-motion-ready .km-home-main .km-deal-section{opacity:1;transform:none}
}


/* ================================================================
 * v1.4.24 production hardening
 * Safe-area spacing, mobile readability, keyboard focus, and legal footer.
 * These rules only correct presentation/accessibility; commerce behavior is unchanged.
 * ================================================================ */
:focus-visible{outline:3px solid var(--km-primary)!important;outline-offset:3px}
.km-mobile-drawer:focus-visible,.km-bottom-nav:focus-visible{outline-offset:-3px}
.km-checkout-account-note{display:block;margin-top:5px;color:var(--km-muted);font-size:12px;line-height:1.45}
.km-footer__grid>div:last-child{display:block}
@media(max-width:1000px){.km-footer__grid{grid-template-columns:1.3fr 1fr 1fr 1fr}.km-footer__grid>div:last-child{display:block}}
@media(max-width:760px){
  body{padding-bottom:calc(98px + env(safe-area-inset-bottom,0px))}
  .km-bottom-nav{bottom:max(8px,env(safe-area-inset-bottom,0px));height:64px;padding:6px}
  .km-bottom-nav__item{font-size:11px;min-width:0}
  .km-bottom-nav__item small{font-size:10px}
  .km-category-card strong{font-size:11px}
  .km-category-card span{font-size:10px}
  .km-product-meta{font-size:10px}
  .km-product-card h2,.km-product-card h3{font-size:12px;line-height:1.3}
  .km-product-price{font-size:13px}
  .km-view-all{font-size:11px}
  .km-promo p{font-size:12px}
  .km-footer{padding-bottom:calc(88px + env(safe-area-inset-bottom,0px))}
  .woocommerce-shop,.post-type-archive-product{padding-bottom:calc(118px + env(safe-area-inset-bottom,0px))!important}
  .single-product .km-single-purchase{bottom:max(7px,env(safe-area-inset-bottom,0px))}
}
@media(prefers-reduced-motion:reduce){.km-mobile-drawer,.km-drawer-backdrop{transition:none!important}}


/* v1.4.24 checkout/order UX and sticky navigation safety */
.km-checkout .woocommerce-NoticeGroup-checkout .woocommerce-error,
.km-checkout .woocommerce-NoticeGroup-checkout .woocommerce-message,
.km-checkout .woocommerce-NoticeGroup-checkout .woocommerce-info{
    margin:0 0 14px!important;
    padding:14px 16px!important;
    border-radius:14px!important;
    font-size:13px!important;
    line-height:1.55!important;
}
.km-checkout .woocommerce-NoticeGroup-checkout .woocommerce-error{
    border-left:4px solid var(--km-danger)!important;
    background:#fff6f6!important;
}
.km-checkout-account-note{background:var(--km-soft);border:1px solid #dbeadf;border-radius:10px;padding:9px 11px}
@media(max-width:760px){
    .single-product .km-single-purchase{bottom:calc(76px + env(safe-area-inset-bottom,0px))!important}
    .single-product .km-single-page{padding-bottom:100px}
    .woocommerce-checkout{padding-bottom:28px}
}
