
:root{--km-primary:#6d28d9;--km-accent:#ff6b1a;--km-dark:#17121f;--km-bg:#f6f7fb;--km-card:#fff;--km-text:#18151f;--km-muted:#777281;--km-border:#e7e3ee;--km-max:1280px;--km-radius:18px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--km-bg);color:var(--km-text);font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.45}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}button,input,select,textarea{font:inherit}.km-wrap{width:min(calc(100% - 32px),var(--km-max));margin:auto}
.km-top{background:var(--km-dark);color:#fff;font-size:12px}.km-top .km-wrap{height:34px;display:flex;align-items:center;justify-content:space-between}
.km-head{background:#fff;border-bottom:1px solid var(--km-border);position:sticky;top:32px;z-index:99}.km-head-row{min-height:72px;display:flex;align-items:center;gap:16px}.km-logo{display:flex;align-items:center;gap:9px;font-weight:900;font-size:25px;letter-spacing:-1px;white-space:nowrap}.km-logo-mark{width:40px;height:40px;border-radius:12px;background:linear-gradient(135deg,var(--km-primary),var(--km-accent));color:#fff;display:grid;place-items:center}.km-logo em{font-style:normal;color:var(--km-primary)}
.km-nav ul{list-style:none;display:flex;gap:17px;margin:0;padding:0}.km-nav li{font-size:13px;font-weight:800}.km-nav a:hover{color:var(--km-primary)}
.km-search{height:44px;display:flex;flex:1;border:1px solid var(--km-border);background:#f5f3f8;border-radius:999px;overflow:hidden}.km-search input{flex:1;min-width:70px;border:0;outline:0;background:transparent;padding:0 16px}.km-search button{border:0;background:var(--km-primary);color:#fff;padding:0 21px;font-weight:800;cursor:pointer}.km-actions{display:flex;gap:8px}.km-icon-btn{width:43px;height:43px;border:1px solid var(--km-border);border-radius:13px;background:#fff;display:grid;place-items:center;position:relative}.km-badge{position:absolute;right:-4px;top:-5px;background:var(--km-accent);color:#fff;border-radius:20px;min-width:17px;height:17px;font-size:9px;display:grid;place-items:center}.km-mobile-menu{display:none;border:0;background:none;font-size:25px}
.km-main{padding-bottom:35px}.km-hero{padding:22px 0 10px}.km-slider{position:relative;border-radius:26px;overflow:hidden;box-shadow:0 18px 50px #2c164418}.km-slide{display:none;min-height:420px;position:relative;align-items:center;padding:60px 65px;background:linear-gradient(115deg,#24113d,#6d28d9 58%,#d7258d);color:#fff}.km-slide.active{display:flex}.km-slide-bg{position:absolute;inset:0;background-size:cover;background-position:center}.km-slide-bg:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#24113dea,#6d28d9a8,#d7258d30)}.km-slide-content{position:relative;z-index:2;max-width:700px}.km-kicker{font-size:12px;font-weight:900;letter-spacing:2px}.km-slide h1{font-size:clamp(40px,5vw,70px);line-height:.98;letter-spacing:-3px;margin:12px 0 18px}.km-slide p{max-width:620px;color:#f5eefa;font-size:17px;margin:0}.km-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;margin-top:21px;padding:13px 20px;border-radius:12px;background:#fff;color:#34115b;font-weight:900;font-size:13px}.km-dots{position:absolute;left:65px;bottom:20px;z-index:5;display:flex;gap:7px}.km-dot{width:29px;height:4px;border:0;border-radius:8px;background:#fff5;cursor:pointer}.km-dot.active{background:#fff}
.km-section{padding:25px 0}.km-titlebar{display:flex;justify-content:space-between;align-items:end;margin-bottom:15px}.km-titlebar h2{margin:0;font-size:25px;letter-spacing:-.7px}.km-titlebar p{margin:4px 0 0;color:var(--km-muted);font-size:13px}.km-view{color:var(--km-primary);font-size:13px;font-weight:900}
.km-categories{display:grid;grid-template-columns:repeat(8,1fr);gap:12px}.km-cat{background:#fff;border:1px solid var(--km-border);border-radius:18px;padding:11px 8px;text-align:center;transition:.2s}.km-cat:hover{transform:translateY(-3px);box-shadow:0 12px 28px #2b115c12}.km-cat-pic{height:76px;border-radius:15px;background:linear-gradient(145deg,#f3effd,#fff);display:grid;place-items:center;font-size:31px}.km-cat-name{display:block;margin-top:9px;font-size:12px;font-weight:800}
.km-products{display:grid;grid-template-columns:repeat(5,1fr);gap:15px}.km-card{background:#fff;border:1px solid var(--km-border);border-radius:18px;overflow:hidden;position:relative;transition:.2s}.km-card:hover{transform:translateY(-3px);box-shadow:0 14px 34px #2b115c12}.km-card-media{aspect-ratio:1/1;background:#eef0f4;display:grid;place-items:center}.km-card-media img{width:100%;height:100%;object-fit:cover}.km-emoji{font-size:58px}.km-sale{position:absolute;left:10px;top:10px;background:var(--km-accent);color:#fff;padding:5px 8px;border-radius:99px;font-size:10px;font-weight:900}.km-heart{position:absolute;right:10px;top:10px;width:35px;height:35px;border:0;border-radius:50%;background:#fff;box-shadow:0 4px 12px #0002}.km-card-info{padding:13px}.km-card-name{font-size:13px;font-weight:850;min-height:38px}.km-price{font-size:17px;font-weight:900;margin-top:5px}.km-old{font-size:11px;color:#999;text-decoration:line-through;margin-left:6px;font-weight:500}.km-rating{font-size:11px;margin-top:7px;color:#555}
.km-flash{border-radius:23px;padding:23px;background:linear-gradient(100deg,#24113d,#6d28d9);color:#fff;display:flex;justify-content:space-between;align-items:center}.km-flash h2{margin:0}.km-flash p{margin:4px 0 0;color:#e9def2;font-size:13px}
.km-promos{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:14px}.km-promo{min-height:195px;border-radius:22px;padding:27px;color:#fff;background:linear-gradient(135deg,#26113f,#6d28d9)}.km-promo:nth-child(2){background:linear-gradient(135deg,#ff7918,#ee3283)}.km-promo:nth-child(3){background:linear-gradient(135deg,#101827,#344054)}.km-promo small{font-weight:900;letter-spacing:1.4px}.km-promo h3{font-size:27px;margin:8px 0}.km-promo p{font-size:13px;color:#eee}
.km-sellers{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.km-seller{background:#fff;border:1px solid var(--km-border);border-radius:18px;padding:18px}.km-seller-logo{height:54px;width:54px;border-radius:15px;background:#f0eaff;color:var(--km-primary);display:grid;place-items:center;font-weight:900;font-size:21px}.km-seller h3{font-size:15px;margin:10px 0 3px}.km-seller p{font-size:12px;color:var(--km-muted);margin:0}
.km-benefits{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.km-benefit{background:#fff;border:1px solid var(--km-border);border-radius:17px;padding:18px}.km-benefit b{display:block;margin:7px 0 2px}.km-benefit span{font-size:12px;color:var(--km-muted)}
.km-cta{background:#fff;border:1px solid var(--km-border);border-radius:24px;padding:30px;display:flex;align-items:center;justify-content:space-between}.km-cta h2{margin:0;font-size:28px}.km-cta p{margin:6px 0;color:var(--km-muted)}
.km-page{padding:35px 0}.km-page-box{background:#fff;border:1px solid var(--km-border);border-radius:22px;padding:30px}.km-page-box h1{margin-top:0}
.km-footer{background:#12101a;color:#fff;padding:48px 0 85px}.km-footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:30px}.km-footer p{color:#bbb5c7;font-size:13px}.km-footer h4{margin:0 0 11px}.km-footer a{display:block;color:#c9c4d1;font-size:13px;margin:8px 0}.km-mobile-nav{display:none}
@media(max-width:1050px){.km-nav{display:none}.km-mobile-menu{display:block}.km-categories{grid-template-columns:repeat(4,1fr)}.km-products{grid-template-columns:repeat(3,1fr)}.km-promos{grid-template-columns:1fr 1fr}.km-promo:first-child{grid-column:1/-1}.km-sellers{grid-template-columns:repeat(2,1fr)}.km-benefits{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.km-wrap{width:calc(100% - 20px)}.km-top .km-wrap{justify-content:center}.km-top .km-wrap span:last-child{display:none}.km-head{top:32px}.km-head-row{min-height:60px;flex-wrap:wrap;padding:7px 0;gap:8px}.km-logo{font-size:21px;flex:1}.km-logo-mark{width:33px;height:33px}.km-actions .km-icon-btn:first-child{display:none}.km-search{order:5;flex-basis:100%;height:43px}.km-search button{padding:0 15px}.km-hero{padding-top:12px}.km-slide{min-height:355px;padding:31px 27px}.km-slide h1{font-size:40px;letter-spacing:-1.8px}.km-slide p{font-size:14px}.km-dots{left:27px}.km-categories{grid-template-columns:repeat(4,1fr);gap:7px}.km-cat{padding:8px 4px;border-radius:14px}.km-cat-pic{height:56px;font-size:22px}.km-cat-name{font-size:10px}.km-products{grid-template-columns:repeat(2,1fr);gap:9px}.km-card{border-radius:15px}.km-card-info{padding:10px}.km-card-name{font-size:12px}.km-price{font-size:15px}.km-flash{display:block;padding:18px}.km-flash .km-btn{margin-top:13px}.km-promos{grid-template-columns:1fr}.km-promo:first-child{grid-column:auto}.km-sellers{grid-template-columns:1fr 1fr}.km-benefits{grid-template-columns:1fr 1fr}.km-cta{display:block;padding:23px}.km-footer-grid{grid-template-columns:1fr 1fr}.km-mobile-nav{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:200;background:#fff;border-top:1px solid var(--km-border);justify-content:space-around;padding:8px 3px;box-shadow:0 -6px 20px #0001}.km-mobile-nav a{text-align:center;font-size:10px;color:#555}.km-mobile-nav b{display:block;color:var(--km-primary);font-size:19px;line-height:20px}}

/* KukuMall v4.1 banner manager enhancements */
.km-hero{min-height:var(--km-banner-height,360px)}
.km-slider{min-height:var(--km-banner-height,360px)}
.km-slide{min-height:var(--km-banner-height,360px);position:relative;overflow:hidden}
.km-slide-bg{position:absolute;inset:0;background-size:cover;background-position:center;z-index:0}
.km-slide-bg:after{content:"";position:absolute;inset:0;background:rgba(0,0,0,var(--km-banner-overlay,.12))}
.km-slide-content{position:relative;z-index:2}
.km-mobile-bg{display:none}
@media(max-width:700px){
 .km-hero,.km-slider,.km-slide{min-height:430px}
 .km-desktop-bg{display:none}
 .km-mobile-bg{display:block}
 .km-slide-content{padding:42px 24px}
 .km-slide-content h1{font-size:clamp(32px,10vw,50px);line-height:1.02}
}

/* v4.2 robust hero media rendering */
.km-slide-media{position:absolute;inset:0;display:block;z-index:0}
.km-slide-media img{width:100%;height:100%;display:block;object-fit:cover;object-position:center}
.km-slide-media:after{content:"";position:absolute;inset:0;background:rgba(0,0,0,var(--km-banner-overlay,.12))}
.km-slide-media + .km-slide-content{position:relative;z-index:2}
@media(max-width:700px){.km-slide-media img{object-position:center}}

/* Phase 2 category images */
.km-cat-pic{overflow:hidden;position:relative}
.km-cat-pic img{width:100%;height:100%;display:block;object-fit:cover;border-radius:inherit}
.km-cat-pic span{font-size:32px}
@media(max-width:700px){.km-cat-pic{height:74px}.km-cat-name{font-size:13px}}

/* Phase 2.1: compact product cards + shopping actions */
.km-product-link{display:block;color:inherit;text-decoration:none}
.km-card-media{aspect-ratio:1/0.78;min-height:145px}
.km-emoji{font-size:50px}
.km-card-info{padding:11px 12px 13px}
.km-card-name{font-size:13px;line-height:1.3;min-height:34px}
.km-price{font-size:16px;margin-top:3px}
.km-rating{margin-top:5px}
.km-product-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:10px}
.km-product-actions a{display:flex;align-items:center;justify-content:center;min-height:34px;border-radius:9px;font-size:11px;font-weight:900;text-decoration:none}
.km-add-cart{background:var(--km-primary);color:#fff}
.km-buy-now{background:var(--km-accent);color:#fff}
@media(max-width:700px){
 .km-hero,.km-slider,.km-slide{min-height:300px}
 .km-slide-content{padding:28px 20px 48px}
 .km-slide-content h1{font-size:clamp(27px,8.5vw,42px)}
 .km-slide-content p{font-size:12px;max-width:90%}
 .km-btn{margin-top:14px;padding:10px 15px}
 .km-dots{left:20px;bottom:15px}
 .km-products{grid-template-columns:repeat(2,1fr);gap:10px}
 .km-card-media{min-height:120px;aspect-ratio:1/0.82}
 .km-emoji{font-size:40px}
 .km-card-info{padding:9px}
 .km-card-name{font-size:12px;min-height:31px}
 .km-price{font-size:14px}
 .km-old{font-size:9px;margin-left:3px}
 .km-product-actions{gap:5px;margin-top:8px}
 .km-product-actions a{min-height:32px;font-size:10px}
}

/* v5.2: compact product image area */
.km-card-media{aspect-ratio:1.45/1;min-height:0;height:auto}
.km-card-media .km-emoji{font-size:44px}
@media(min-width:701px){
 .km-card-media{height:190px;aspect-ratio:auto}
}
@media(max-width:700px){
 .km-card-media{height:125px;aspect-ratio:auto}
 .km-card-media .km-emoji{font-size:38px}
}

/* v5.3: keep every homepage section aligned to the same content width */
body .km-wrap{width:min(calc(100% - 32px),1100px);margin-left:auto;margin-right:auto}
body .km-wrap .km-section{width:100%;max-width:1100px;margin-left:auto;margin-right:auto}
body .km-flash{width:100%}
/* Smaller desktop product cards */
.km-card-media{height:150px!important;min-height:0!important}
.km-card-info{padding:9px 10px 11px}
.km-card-name{font-size:12px;min-height:30px}
.km-price{font-size:15px}
.km-rating{font-size:10px}
.km-product-actions{margin-top:8px}
.km-product-actions a{min-height:31px;font-size:10px}
@media(max-width:700px){
 body .km-wrap{width:calc(100% - 20px)}
 body .km-wrap .km-section{max-width:100%}
 .km-card-media{height:105px!important}
 .km-card-info{padding:8px}
 .km-card-name{font-size:11px;min-height:28px}
 .km-price{font-size:13px}
 .km-product-actions a{min-height:29px;font-size:9px}
}

/* v5.4: hard-align all homepage sections with the header/footer content column */
.km-section{
  width:min(calc(100% - 32px),1100px)!important;
  max-width:1100px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
}
.km-section .km-flash,
.km-section .km-products,
.km-section .km-categories,
.km-section .km-promos,
.km-section .km-sellers,
.km-section .km-benefits,
.km-section .km-cta{width:100%;max-width:100%}
.km-products{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.km-card{border-radius:14px}
.km-card-media{height:120px!important}
.km-card-info{padding:7px 9px 9px}
.km-card-name{font-size:11px;min-height:27px}
.km-price{font-size:14px;margin-top:3px}
.km-rating{font-size:9px;margin-top:4px}
.km-sale{left:7px;top:7px;padding:4px 6px;font-size:9px}
.km-heart{right:7px;top:7px;width:29px;height:29px}
.km-product-actions{gap:5px;margin-top:6px}
.km-product-actions a{min-height:28px;border-radius:7px;font-size:9px}
@media(max-width:700px){
 .km-section{width:calc(100% - 20px)!important;max-width:none!important}
 .km-products{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .km-card-media{height:100px!important}
 .km-card-info{padding:7px}
 .km-card-name{font-size:10.5px;min-height:26px}
 .km-price{font-size:13px}
 .km-product-actions a{min-height:27px;font-size:8.5px}
}

/* v6 Soft Premium Theme: calmer colors, less visual intensity */
:root{
 --km-primary:#4f46a5;
 --km-accent:#f07a45;
 --km-dark:#20212a;
 --km-bg:#f7f7f8;
 --km-card:#ffffff;
 --km-text:#202124;
 --km-muted:#777983;
 --km-border:#e6e6ea;
 --km-max:1100px;
 --km-radius:14px;
}
body{background:#f7f7f8;color:#202124}
.km-top{background:#24242c}
.km-head{background:#fff;border-bottom:1px solid #e8e8ec}
.km-search{background:#f5f5f7!important;border-color:#dedee5!important}
.km-search button{background:#4f46a5!important}
.km-btn{background:#4f46a5!important}
.km-view{color:#4f46a5}
.km-hero{box-shadow:0 10px 28px rgba(35,32,55,.08)}
.km-slide-content h1{letter-spacing:-1.5px}
.km-categories .km-cat{box-shadow:0 2px 10px rgba(30,30,45,.035)}
.km-cat-pic{background:#f4f3f8!important}
.km-flash{background:linear-gradient(100deg,#3d3268,#6657a8)!important}
.km-promo{background:#4a416d!important}
.km-promo:nth-child(2){background:#d97854!important}
.km-promo:nth-child(3){background:#343845!important}
.km-card{border-color:#e5e5e9;box-shadow:0 2px 8px rgba(30,30,45,.025)}
.km-card:hover{box-shadow:0 10px 24px rgba(30,30,45,.08)}
.km-card-media{background:#f1f2f4!important}
.km-sale{background:#ee7544!important}
.km-add-cart{background:#4f46a5!important}
.km-buy-now{background:#f07a45!important}
.km-seller,.km-benefit,.km-cta{box-shadow:0 2px 10px rgba(30,30,45,.035)}
.km-cta{background:#fff!important}
.km-footer{background:#20212a!important}
@media(max-width:700px){
 .km-hero{box-shadow:0 6px 18px rgba(35,32,55,.06)}
 .km-flash{background:linear-gradient(100deg,#3d3268,#6657a8)!important}
}


/* v7 Mobile Compact Fix
   - Remove hamburger menu on mobile
   - Keep header compact and clean
   - Make hero/banner short on mobile
   - Keep uploaded banner image visible without changing desktop layout
*/
@media(max-width:650px){
  .km-mobile-menu{display:none!important}
  .km-head-row{min-height:56px!important;flex-wrap:nowrap!important;padding:6px 0!important;gap:8px!important}
  .km-logo{font-size:20px!important;flex:1 1 auto!important}
  .km-logo-mark{width:34px!important;height:34px!important;border-radius:10px!important}
  .km-search{order:unset!important;flex:0 0 43px!important;width:43px!important;height:43px!important;border:0!important;background:transparent!important;overflow:visible!important}
  .km-search input{display:none!important}
  .km-search button{font-size:0!important;width:43px!important;height:43px!important;border-radius:12px!important;padding:0!important;position:relative!important}
  .km-search button:before{content:"⌕";font-size:23px!important;line-height:43px!important}
  .km-actions{gap:6px!important}
  .km-actions .km-icon-btn:first-child{display:none!important}
  .km-actions .km-icon-btn{width:43px!important;height:43px!important;border-radius:12px!important}

  .km-main{padding-bottom:70px!important}
  .km-hero{padding:8px 0 5px!important;min-height:0!important}
  .km-slider{min-height:0!important;height:145px!important;border-radius:18px!important;box-shadow:0 5px 15px rgba(35,32,55,.07)!important}
  .km-slide{min-height:145px!important;height:145px!important;padding:16px 18px 30px!important;align-items:center!important}
  .km-slide-media img{object-fit:cover!important;object-position:center!important}
  .km-slide-media:after{background:rgba(0,0,0,.24)!important}
  .km-slide-content{padding:0!important;max-width:70%!important}
  .km-kicker{font-size:8px!important;letter-spacing:1.2px!important}
  .km-slide h1{font-size:25px!important;line-height:1.02!important;letter-spacing:-.7px!important;margin:5px 0 5px!important}
  .km-slide p{font-size:10px!important;line-height:1.25!important;max-width:100%!important;margin:0!important}
  .km-slide .km-btn{margin-top:7px!important;padding:7px 11px!important;border-radius:8px!important;font-size:9px!important}
  .km-dots{left:18px!important;bottom:9px!important;gap:5px!important}
  .km-dot{width:22px!important;height:3px!important}

  .km-section{width:calc(100% - 20px)!important;padding:17px 0!important}
  .km-titlebar{margin-bottom:10px!important}
  .km-titlebar h2{font-size:21px!important}
  .km-titlebar p{font-size:11px!important}
  .km-view{font-size:11px!important}
}

/* If the mobile bottom navigation is enabled, preserve it without affecting page width. */
@media(max-width:650px){
  .km-mobile-nav{width:100%!important;max-width:none!important;left:0!important;right:0!important}
}


/* v9 MOBILE HEADER FIX
   Header stays fixed/sticky while the home-page content scrolls underneath it.
   The full search bar remains below the logo.
*/
@media(max-width:650px){
  /* Keep the complete site header visible while scrolling. */
  .km-head{position:sticky!important;top:0!important;z-index:9999!important;background:#fff!important}
  .km-top{position:relative!important;z-index:9998!important}

  /* No hamburger. Logo/actions on first row, full search on second row. */
  .km-mobile-menu{display:none!important}
  .km-head-row{
    min-height:0!important;
    display:flex!important;
    flex-wrap:wrap!important;
    align-items:center!important;
    gap:8px!important;
    padding:8px 0 10px!important;
  }
  .km-logo{order:1!important;flex:1 1 auto!important;font-size:21px!important;min-width:0!important}
  .km-logo-mark{width:36px!important;height:36px!important;border-radius:10px!important}
  .km-actions{order:2!important;display:flex!important;gap:6px!important}
  .km-actions .km-icon-btn:first-child{display:none!important}
  .km-actions .km-icon-btn{display:grid!important;width:43px!important;height:43px!important;border-radius:12px!important}

  /* Full search bar stays below the logo, as requested. */
  .km-search{
    order:3!important;
    flex:0 0 100%!important;
    width:100%!important;
    height:42px!important;
    min-height:42px!important;
    display:flex!important;
    border:1px solid #dedee5!important;
    border-radius:22px!important;
    background:#f5f5f7!important;
    overflow:hidden!important;
  }
  .km-search input{
    display:block!important;
    flex:1 1 auto!important;
    width:auto!important;
    min-width:0!important;
    height:100%!important;
    padding:0 14px!important;
    font-size:14px!important;
    color:#202124!important;
    background:transparent!important;
  }
  .km-search button{
    display:block!important;
    position:static!important;
    width:auto!important;
    height:100%!important;
    min-width:82px!important;
    border-radius:0!important;
    padding:0 16px!important;
    font-size:13px!important;
    line-height:42px!important;
  }
  .km-search button:before{display:none!important;content:none!important}

  /* Keep hero short and make sure it starts below the normal header. */
  .km-main{padding-bottom:72px!important}
  .km-hero{padding:8px 0 6px!important;min-height:0!important}
  .km-slider{height:125px!important;min-height:125px!important;border-radius:18px!important;overflow:hidden!important}
  .km-slide{height:125px!important;min-height:125px!important;padding:12px 18px 27px!important}
  .km-slide-media,.km-slide-media img{height:100%!important;width:100%!important;display:block!important}
  .km-slide-media img{object-fit:cover!important;object-position:center!important}
  .km-slide-content{max-width:72%!important}
  .km-kicker{font-size:8px!important;letter-spacing:1px!important}
  .km-slide h1{font-size:24px!important;line-height:1.02!important;margin:4px 0 4px!important;letter-spacing:-.7px!important}
  .km-slide p{font-size:10px!important;line-height:1.2!important}
  .km-slide .km-btn{margin-top:6px!important;padding:6px 10px!important;font-size:9px!important;border-radius:8px!important}
  .km-dots{left:18px!important;bottom:7px!important}
}

/* v10 MOBILE HEADER — truly fixed, with reserved page space
   Mobile header remains visible while the page content scrolls.
*/
@media (max-width:650px){
  html,body{overflow-x:hidden!important}
  .km-top{display:none!important}
  .km-head{
    position:fixed!important;
    top:0!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    z-index:100000!important;
    margin:0!important;
    background:#fff!important;
    border-bottom:1px solid #e8e8ec!important;
    box-shadow:0 2px 12px rgba(0,0,0,.07)!important;
  }
  body.admin-bar .km-head{top:46px!important}
  .km-head-row{
    width:calc(100% - 20px)!important;
    max-width:none!important;
    margin:0 auto!important;
    padding:7px 0 9px!important;
    display:flex!important;
    flex-wrap:wrap!important;
    gap:7px!important;
  }
  .km-logo{order:1!important;flex:1 1 auto!important;min-width:0!important}
  .km-actions{order:2!important;flex:0 0 auto!important}
  .km-search{
    order:3!important;
    flex:0 0 100%!important;
    width:100%!important;
    height:42px!important;
    min-height:42px!important;
    display:flex!important;
    margin:0!important;
  }
  .km-search input{display:block!important;min-width:0!important;flex:1 1 auto!important}
  .km-search button{display:block!important;min-width:78px!important}
  .km-main{
    padding-top:var(--km-mobile-header-height,112px)!important;
    padding-bottom:72px!important;
  }
}


/* v11 — premium dynamic Top Sellers */
.km-seller{position:relative;overflow:hidden;transition:transform .2s,box-shadow .2s,border-color .2s}
.km-seller:hover{transform:translateY(-4px);box-shadow:0 16px 35px #2b115c14;border-color:#ddd3f5}
.km-seller-top{display:flex;align-items:center;justify-content:space-between}
.km-seller-logo{overflow:hidden;border:1px solid #eee5ff;background:#f5f1ff}
.km-seller-logo img{width:100%;height:100%;object-fit:cover;display:block}
.km-seller-badge{font-size:9px;font-weight:900;letter-spacing:.8px;padding:5px 8px;border-radius:99px;background:#fff3e8;color:#d95c00}
.km-seller h3{margin-top:12px}
.km-seller p{display:flex;align-items:center;gap:5px;flex-wrap:wrap}
.km-stars{letter-spacing:1px;color:#f59e0b;font-size:11px}
.km-seller-sales{margin-left:auto;padding-left:5px;color:#777;font-size:11px}
@media(max-width:650px){.km-sellers{gap:10px}.km-seller{padding:13px}.km-seller-logo{width:45px;height:45px}.km-seller-badge{font-size:8px}.km-seller h3{font-size:14px}.km-seller-sales{width:100%;margin-left:0;padding-left:0}}

/* v12 — Soft Premium visual depth: reduce the plain-white feel without heavy colors */
body{background:#f3f4f8!important}
.km-main{background:linear-gradient(180deg,#f3f4f8 0%,#f7f7fa 45%,#f1f2f6 100%)}
.km-section{position:relative;padding:30px 0}
.km-section:nth-of-type(odd){background:linear-gradient(90deg,rgba(109,40,217,.035),rgba(255,255,255,.25),rgba(240,120,69,.025));border-radius:26px}
.km-titlebar h2{font-size:27px!important;color:#17151c}
.km-titlebar h2:after{content:"";display:block;width:38px;height:3px;border-radius:8px;background:linear-gradient(90deg,#6354b5,#f07a45);margin-top:7px}
.km-titlebar p{color:#747482!important}
.km-view{padding:8px 12px;border-radius:10px;background:#eeeafb;color:#5545a3!important}
.km-cat{background:linear-gradient(180deg,#fff,#faf9fd)!important;box-shadow:0 5px 18px rgba(35,32,55,.045)}
.km-cat-pic{background:linear-gradient(145deg,#eeeafb,#f8f7fb)!important}
.km-flash{box-shadow:0 12px 30px rgba(48,35,95,.12);background:linear-gradient(105deg,#3a285f,#6654a7)!important}
.km-card{box-shadow:0 5px 18px rgba(35,32,55,.045)!important}
.km-card-info{background:#fff}
.km-promos .km-promo{box-shadow:0 10px 28px rgba(35,32,55,.11)}
.km-sellers{gap:16px}
.km-seller{background:linear-gradient(180deg,#ffffff 0%,#faf9fd 100%)!important;box-shadow:0 7px 22px rgba(35,32,55,.06)!important;border-color:#e2ddec!important}
.km-seller:before{content:"";display:block;height:4px;position:absolute;left:0;right:0;top:0;background:linear-gradient(90deg,#6354b5,#a44ed0,#f07a45)}
.km-seller-logo{background:linear-gradient(145deg,#eeeafb,#fff)!important}
.km-seller-badge{background:#fff0e5!important;color:#d8651e!important}
.km-benefit{background:linear-gradient(180deg,#fff,#fafafd)!important;box-shadow:0 6px 20px rgba(35,32,55,.05);border-color:#e3e1e9!important}
.km-benefit:first-child{border-top:3px solid #5b4aa4}.km-benefit:nth-child(2){border-top:3px solid #6c5bb2}.km-benefit:nth-child(3){border-top:3px solid #e8794b}.km-benefit:nth-child(4){border-top:3px solid #f0a33d}
.km-cta{background:linear-gradient(105deg,#fff,#f4f1fb)!important;box-shadow:0 8px 25px rgba(35,32,55,.06);border-color:#ded9e8!important}
.km-cta .km-btn{background:#5a4aa7!important;color:#fff!important}
@media(max-width:650px){
 .km-main{background:#f4f4f7!important}
 .km-section{padding:23px 0!important}
 .km-titlebar h2{font-size:22px!important}
 .km-titlebar h2:after{width:30px;height:2px;margin-top:5px}
 .km-view{font-size:11px!important;padding:6px 9px!important}
 .km-sellers{gap:10px!important}
 .km-seller{box-shadow:0 5px 15px rgba(35,32,55,.055)!important}
 .km-benefit{padding:14px!important}
}

/* v13 — dedicated Become a Seller CTA: desktop + mobile */
.km-seller-cta-section{padding-top:34px!important;padding-bottom:38px!important}
.km-seller-cta{position:relative;overflow:hidden;min-height:280px;border:1px solid #ddd8ee;border-radius:28px;background:linear-gradient(115deg,#211536 0%,#49317f 55%,#6d56b0 100%);box-shadow:0 18px 45px rgba(38,24,72,.16);color:#fff;display:flex;align-items:stretch}
.km-seller-cta-content{position:relative;z-index:3;width:58%;padding:42px 44px 38px}
.km-seller-cta-kicker{display:inline-flex;align-items:center;padding:6px 10px;border:1px solid rgba(255,255,255,.2);border-radius:999px;background:rgba(255,255,255,.09);font-size:10px;font-weight:800;letter-spacing:1.5px}
.km-seller-cta h2{margin:13px 0 9px!important;max-width:610px;font-size:34px!important;line-height:1.08!important;letter-spacing:-.8px;color:#fff!important}
.km-seller-cta p{max-width:600px;margin:0;color:rgba(255,255,255,.82)!important;font-size:14px;line-height:1.6}
.km-seller-cta-points{display:flex;gap:18px;flex-wrap:wrap;margin:18px 0 21px;font-size:11px;font-weight:700;color:#f5f1ff}
.km-seller-cta-btn{display:inline-flex;align-items:center;gap:13px;padding:12px 17px;border-radius:12px;background:#fff;color:#3e2b79!important;font-weight:800;font-size:12px;box-shadow:0 8px 20px rgba(0,0,0,.12)}
.km-seller-cta-btn span{font-size:16px;line-height:1}
.km-seller-cta-art{position:absolute;right:0;top:0;width:44%;height:100%;z-index:1}
.km-seller-cta-glow{position:absolute;width:330px;height:330px;right:90px;top:-100px;border-radius:50%;background:rgba(255,255,255,.08);filter:blur(1px)}
.km-seller-cta-orb{position:absolute;border-radius:50%;filter:blur(.2px)}
.km-seller-cta-orb.orb-a{width:190px;height:190px;right:55px;top:45px;background:rgba(244,127,87,.20)}
.km-seller-cta-orb.orb-b{width:125px;height:125px;right:235px;bottom:25px;background:rgba(255,255,255,.10)}
.km-seller-cta-card{position:absolute;z-index:4;background:rgba(255,255,255,.94);color:#241b38;border:1px solid rgba(255,255,255,.45);box-shadow:0 16px 35px rgba(12,5,28,.22);backdrop-filter:blur(8px)}
.km-seller-cta-card.card-main{right:72px;top:73px;width:190px;padding:19px;border-radius:18px;display:grid;grid-template-columns:38px 1fr;gap:2px 10px}
.km-seller-cta-card.card-main b{grid-row:1/3;width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:#f1eafa;color:#5a45a0;font-size:20px}
.km-seller-cta-card.card-main span{font-size:10px;color:#777}.km-seller-cta-card.card-main strong{font-size:18px;color:#4d9b63}
.km-seller-cta-card.card-mini{right:205px;bottom:55px;display:flex;align-items:center;gap:10px;padding:10px 13px;border-radius:14px}
.km-seller-cta-card.card-mini>span{font-size:19px}.km-seller-cta-card.card-mini b{display:block;font-size:10px}.km-seller-cta-card.card-mini small{display:block;color:#777;font-size:8px;margin-top:2px}
@media(max-width:650px){
 .km-seller-cta-section{padding:18px 0 25px!important}
 .km-seller-cta{min-height:0;border-radius:22px;display:block;background:linear-gradient(145deg,#24183b,#4b3581 70%,#6651a1)}
 .km-seller-cta-content{width:auto;padding:25px 21px 24px}
 .km-seller-cta-kicker{font-size:8px;padding:5px 8px;letter-spacing:1.2px}
 .km-seller-cta h2{font-size:25px!important;line-height:1.08!important;margin:10px 0 8px!important;letter-spacing:-.5px}
 .km-seller-cta p{font-size:11px;line-height:1.5;max-width:none}
 .km-seller-cta-points{display:grid;grid-template-columns:1fr 1fr;gap:7px 10px;margin:15px 0 18px;font-size:9px}
 .km-seller-cta-btn{padding:10px 13px;border-radius:10px;font-size:10px}
 .km-seller-cta-art{position:relative;width:100%;height:105px;border-top:1px solid rgba(255,255,255,.12)}
 .km-seller-cta-glow{width:180px;height:180px;right:15px;top:-60px}
 .km-seller-cta-orb.orb-a{width:105px;height:105px;right:40px;top:15px}.km-seller-cta-orb.orb-b{width:65px;height:65px;right:180px;bottom:10px}
 .km-seller-cta-card.card-main{right:22px;top:17px;width:150px;padding:11px;border-radius:13px;grid-template-columns:29px 1fr;gap:1px 7px}
 .km-seller-cta-card.card-main b{width:29px;height:29px;border-radius:8px;font-size:15px}.km-seller-cta-card.card-main span{font-size:8px}.km-seller-cta-card.card-main strong{font-size:13px}
 .km-seller-cta-card.card-mini{right:auto;left:22px;bottom:14px;padding:7px 9px;border-radius:10px;gap:7px}.km-seller-cta-card.card-mini>span{font-size:14px}.km-seller-cta-card.card-mini b{font-size:8px}.km-seller-cta-card.card-mini small{font-size:7px}
}


/* v14 — FORCE mobile Become a Seller redesign; intentionally distinct from desktop */
@media screen and (max-width: 700px){
  .km-seller-cta-section{width:100%!important;padding:20px 0 28px!important;margin:0!important}
  .km-seller-cta-section .km-seller-cta{
    width:100%!important; min-height:0!important; height:auto!important;
    display:flex!important; flex-direction:column!important;
    border-radius:20px!important; overflow:hidden!important;
    background:#ffffff!important; color:#17121f!important;
    border:1px solid #e4dfef!important;
    box-shadow:0 10px 28px rgba(35,25,60,.10)!important;
  }
  .km-seller-cta-section .km-seller-cta-content{
    order:1!important;width:100%!important;padding:22px 19px 18px!important;
    background:linear-gradient(135deg,#f8f5ff 0%,#ffffff 72%)!important;
  }
  .km-seller-cta-section .km-seller-cta-kicker{
    color:#5b45a5!important;background:#eee9fb!important;border:1px solid #ddd4f5!important;
    font-size:8px!important;padding:5px 9px!important;letter-spacing:1.1px!important;
  }
  .km-seller-cta-section .km-seller-cta h2{
    color:#17121f!important;font-size:24px!important;line-height:1.12!important;
    letter-spacing:-.5px!important;margin:10px 0 8px!important;max-width:none!important;
  }
  .km-seller-cta-section .km-seller-cta p{
    color:#686274!important;font-size:11px!important;line-height:1.5!important;margin:0!important;
  }
  .km-seller-cta-section .km-seller-cta-points{
    display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;
    margin:14px 0 16px!important;font-size:9px!important;color:#403b4b!important;
  }
  .km-seller-cta-section .km-seller-cta-points span{
    background:#fff!important;border:1px solid #e7e2ef!important;border-radius:9px!important;
    padding:7px 8px!important;
  }
  .km-seller-cta-section .km-seller-cta-btn{
    background:#5b45a5!important;color:#fff!important;border-radius:10px!important;
    padding:11px 14px!important;font-size:10px!important;box-shadow:none!important;
  }
  .km-seller-cta-section .km-seller-cta-art{
    order:2!important;position:relative!important;right:auto!important;top:auto!important;
    width:100%!important;height:92px!important;display:block!important;
    background:linear-gradient(110deg,#312252,#5b45a5)!important;
    border-top:0!important;overflow:hidden!important;
  }
  .km-seller-cta-section .km-seller-cta-glow{width:160px!important;height:160px!important;right:-30px!important;top:-65px!important;background:rgba(255,255,255,.11)!important}
  .km-seller-cta-section .km-seller-cta-orb.orb-a{width:92px!important;height:92px!important;right:34px!important;top:13px!important;background:rgba(240,123,75,.18)!important}
  .km-seller-cta-section .km-seller-cta-orb.orb-b{width:55px!important;height:55px!important;right:180px!important;bottom:-12px!important;background:rgba(255,255,255,.10)!important}
  .km-seller-cta-section .km-seller-cta-card.card-main{
    right:18px!important;top:16px!important;width:142px!important;padding:9px 10px!important;
    border-radius:11px!important;grid-template-columns:27px 1fr!important;gap:1px 7px!important;
  }
  .km-seller-cta-section .km-seller-cta-card.card-main b{width:27px!important;height:27px!important;border-radius:7px!important;font-size:14px!important}
  .km-seller-cta-section .km-seller-cta-card.card-main span{font-size:7px!important}.km-seller-cta-section .km-seller-cta-card.card-main strong{font-size:12px!important}
  .km-seller-cta-section .km-seller-cta-card.card-mini{
    left:18px!important;right:auto!important;bottom:13px!important;padding:6px 8px!important;
    border-radius:9px!important;gap:6px!important;
  }
  .km-seller-cta-section .km-seller-cta-card.card-mini>span{font-size:13px!important}
  .km-seller-cta-section .km-seller-cta-card.card-mini b{font-size:7px!important}.km-seller-cta-section .km-seller-cta-card.card-mini small{font-size:6px!important}
}


/* v15 FINAL — Become a Seller completely redesigned on mobile and desktop */
.km-seller-cta-section{margin-top:26px!important;margin-bottom:30px!important}
.km-seller-cta-section .km-seller-cta{background:#fff!important;color:#17151d!important;border:1px solid #ded9ea!important;border-radius:24px!important;box-shadow:0 12px 34px rgba(36,25,64,.08)!important;min-height:245px!important;position:relative!important;overflow:hidden!important;display:grid!important;grid-template-columns:1.25fr .75fr!important}
.km-seller-cta-section .km-seller-cta-content{padding:32px 36px!important;width:auto!important;z-index:3!important;background:linear-gradient(135deg,#fff 0%,#faf8ff 100%)!important}
.km-seller-cta-section .km-seller-cta-kicker{background:#f1edfb!important;color:#5b45a5!important;border:1px solid #e2dbf3!important}
.km-seller-cta-section .km-seller-cta h2{color:#17151d!important;font-size:31px!important;line-height:1.12!important;margin:12px 0 8px!important}
.km-seller-cta-section .km-seller-cta p{color:#686274!important}
.km-seller-cta-section .km-seller-cta-points{color:#4b4655!important;margin:15px 0 18px!important}
.km-seller-cta-section .km-seller-cta-points span{background:#fff;border:1px solid #e9e4f1;border-radius:10px;padding:7px 9px}
.km-seller-cta-section .km-seller-cta-btn{background:#5b45a5!important;color:#fff!important;border-radius:10px!important;padding:12px 17px!important}
.km-seller-cta-section .km-seller-cta-art{position:relative!important;right:auto!important;top:auto!important;width:auto!important;height:auto!important;background:linear-gradient(145deg,#eee9fb,#dcd3f3)!important;overflow:hidden!important}
.km-seller-cta-section .km-seller-cta-glow{right:-50px;top:-90px;background:rgba(255,255,255,.7)!important}
.km-seller-cta-section .km-seller-cta-orb.orb-a{right:30px;top:32px;background:rgba(240,123,75,.20)!important}
.km-seller-cta-section .km-seller-cta-orb.orb-b{right:200px;bottom:12px;background:rgba(91,69,165,.12)!important}
.km-seller-cta-section .km-seller-cta-card.card-main{right:42px!important;top:48px!important;background:#fff!important;color:#241f2d!important}
.km-seller-cta-section .km-seller-cta-card.card-mini{right:175px!important;bottom:38px!important;background:#fff!important;color:#241f2d!important}
@media(max-width:650px){
 .km-seller-cta-section{margin-top:18px!important;margin-bottom:24px!important;padding:0 0 5px!important}
 .km-seller-cta-section .km-seller-cta{display:block!important;min-height:0!important;border-radius:18px!important;background:#fff!important}
 .km-seller-cta-section .km-seller-cta-content{padding:20px 17px 18px!important;background:linear-gradient(135deg,#fff 0%,#faf8ff 100%)!important}
 .km-seller-cta-section .km-seller-cta h2{font-size:22px!important;line-height:1.15!important;margin:9px 0 7px!important}
 .km-seller-cta-section .km-seller-cta p{font-size:11px!important;line-height:1.45!important}
 .km-seller-cta-section .km-seller-cta-points{grid-template-columns:1fr 1fr!important;gap:6px!important;margin:12px 0 14px!important;font-size:8px!important}
 .km-seller-cta-section .km-seller-cta-points span{padding:7px 6px!important;border-radius:8px!important}
 .km-seller-cta-section .km-seller-cta-btn{padding:10px 13px!important;font-size:10px!important}
 .km-seller-cta-section .km-seller-cta-art{height:78px!important;display:block!important;background:linear-gradient(135deg,#eee9fb,#d9d0f1)!important}
 .km-seller-cta-section .km-seller-cta-card.card-main{right:14px!important;top:12px!important;width:125px!important;padding:8px!important}
 .km-seller-cta-section .km-seller-cta-card.card-mini{left:14px!important;right:auto!important;bottom:11px!important;padding:6px 8px!important}
}

/* KukuMall v17: mobile functional/touch improvements */
.km-product-actions a{cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.km-product-actions a[aria-busy="true"]{opacity:.65;pointer-events:none}
.km-cat,.km-view,.km-btn,.km-icon-btn,.km-mobile-nav a{touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.woocommerce .quantity .qty{min-height:44px}
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{min-height:44px;border-radius:10px}
@media(max-width:650px){
  body{padding-bottom:64px}
  .km-head{position:sticky;top:32px}
  .km-main{padding-top:0}
  .km-product-actions{gap:6px}
  .km-product-actions a{min-height:40px;font-size:11px}
  .km-cat{min-height:126px;display:block}
  .km-cat-pic{height:72px}
  .km-mobile-nav{padding-bottom:max(8px,env(safe-area-inset-bottom))}
  .woocommerce .products{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .woocommerce ul.products li.product{width:auto!important;margin:0!important;float:none!important}
  .woocommerce div.product{width:100%}
  .woocommerce div.product form.cart .button{width:100%;min-height:48px}
  .woocommerce div.product .woocommerce-product-gallery,
  .woocommerce div.product .summary{width:100%!important;float:none!important}
  .woocommerce div.product .summary{margin-top:18px}
}

.km-empty-products{grid-column:1/-1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:42px 20px;background:#fff;border:1px dashed var(--km-border);border-radius:18px;text-align:center}.km-empty-products strong{font-size:18px}.km-empty-products span{color:var(--km-muted)}.km-empty-products .km-btn{margin-top:10px}


/* v18.1 Android mobile reliability */
@media(max-width:650px){
  .km-head, .km-head * { -webkit-tap-highlight-color: transparent; }
  .km-product-actions a,
  .km-cat,
  .km-product-link,
  .km-mobile-nav a,
  .km-icon-btn,
  .km-search button,
  .km-btn {
    touch-action: manipulation;
    -webkit-tap-highlight-color: rgba(79,70,165,.12);
  }
  .km-product-actions a{cursor:pointer;position:relative;z-index:5}
  .km-card{isolation:isolate}
  .km-card-info{position:relative;z-index:2}
  .km-main{padding-top:var(--km-mobile-header-height,120px)!important}
  .km-mobile-nav{padding-bottom:max(8px,env(safe-area-inset-bottom))!important}
}


/* v18.4 live-product mobile grid */
@media(max-width:650px),(max-device-width:650px){
  .km-products{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .km-products .km-empty-products{grid-column:1/-1!important}
}


/* v19 final real-device mobile layout */
@media screen and (max-width: 700px), screen and (max-device-width: 700px){
  html,body{width:100%!important;max-width:100%!important;overflow-x:hidden!important}
  .km-top{display:none!important}
  .km-head{
    position:fixed!important;top:0!important;left:0!important;right:0!important;
    width:100%!important;z-index:100000!important;background:#fff!important;
  }
  body.admin-bar .km-head{top:46px!important}
  .km-head-row{
    width:calc(100% - 20px)!important;max-width:none!important;margin:0 auto!important;
    display:flex!important;flex-wrap:wrap!important;align-items:center!important;
    gap:7px!important;padding:7px 0 9px!important;
  }
  .km-logo{order:1!important;flex:1 1 auto!important;min-width:0!important}
  .km-actions{order:2!important;flex:0 0 auto!important}
  .km-search{
    order:3!important;flex:0 0 100%!important;width:100%!important;
    height:42px!important;min-height:42px!important;display:flex!important;margin:0!important;
  }
  .km-search input{display:block!important;flex:1 1 auto!important;min-width:0!important}
  .km-search button{display:block!important;min-width:78px!important}
  .km-mobile-menu{display:none!important}
  .km-main{padding-top:120px!important;padding-bottom:82px!important}
  .km-wrap{width:calc(100% - 20px)!important;max-width:none!important}
  .km-section{width:100%!important;max-width:none!important}
  .km-products{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
  .km-card{min-width:0!important;overflow:hidden!important}
  .km-card-media{height:120px!important;min-height:0!important}
  .km-card-info{padding:8px!important}
  .km-product-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:5px!important}
  .km-product-actions a{min-width:0!important;min-height:34px!important;font-size:10px!important}
  .km-mobile-nav{display:flex!important;position:fixed!important;left:0!important;right:0!important;bottom:0!important;width:100%!important;z-index:100001!important}
}


/* KukuMall v20 product page */
.km-product-shell{background:var(--km-bg);padding:22px 0 70px;min-height:70vh}
.km-product-shell .km-wrap{max-width:1100px}
.km-breadcrumb{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12px;color:#777;margin:4px 0 18px}
.km-breadcrumb a{color:#5b4bb7;text-decoration:none;font-weight:700}
.km-breadcrumb strong{color:#222;font-weight:700;max-width:360px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.km-product-main{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:42px;background:#fff;border:1px solid var(--km-border,#e7e5ef);border-radius:22px;padding:28px;box-shadow:0 8px 28px rgba(20,15,30,.05)}
.km-product-gallery{min-width:0;position:relative}
.km-product-badge{height:30px;position:absolute;left:0;top:0;z-index:3}
.km-product-badge span{display:inline-flex;background:var(--km-accent);color:#fff;font-weight:900;border-radius:999px;padding:7px 12px;font-size:11px}
.km-product-image{height:460px;border-radius:18px;background:#f5f5f8;display:flex;align-items:center;justify-content:center;overflow:hidden}
.km-product-image img{width:100%;height:100%;object-fit:contain;display:block}
.km-no-product-image{font-size:90px}
.km-product-thumbs{display:flex;gap:9px;margin-top:12px;overflow:auto}
.km-product-thumb{width:68px;height:68px;flex:0 0 68px;border:1px solid #e4e2ea;border-radius:10px;background:#f7f7fa;overflow:hidden}
.km-product-thumb img{width:100%;height:100%;object-fit:cover}
.km-product-summary{padding:10px 0}
.km-product-cat-label{color:var(--km-primary);font-weight:900;text-transform:uppercase;font-size:11px;letter-spacing:.7px;margin-bottom:8px}
.km-product-title{font-size:36px;line-height:1.08;letter-spacing:-1.2px;margin:0 0 12px;color:#17121f}
.km-product-rating-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:12px;color:#777}
.km-stars .star-rating{float:none;margin:0}
.km-review-count{font-weight:700}
.km-sku{border-left:1px solid #ddd;padding-left:10px}
.km-product-price{font-size:29px;font-weight:950;margin:20px 0 8px;color:#17121f}
.km-product-price del{font-size:16px;color:#999;font-weight:600;margin-right:7px}
.km-product-price ins{text-decoration:none;color:var(--km-primary)}
.km-stock{font-size:13px;color:#198754;font-weight:800;margin-bottom:14px}
.km-stock span{display:inline-flex;width:22px;height:22px;border-radius:50%;background:#e8f7ee;align-items:center;justify-content:center;margin-right:5px}
.km-out-stock{color:#c0392b}.km-out-stock span{background:#fdecea}
.km-product-short{font-size:14px;line-height:1.65;color:#555;border-top:1px solid #eee;border-bottom:1px solid #eee;padding:15px 0;margin:8px 0 18px}
.km-product-purchase{display:flex;gap:9px;align-items:stretch;flex-wrap:wrap}
.km-product-purchase form.cart{margin:0!important;display:flex!important;align-items:center;gap:8px;flex-wrap:wrap}
.km-product-purchase form.cart .quantity input{height:46px!important;width:70px!important;border:1px solid #ddd!important;border-radius:10px!important}
.km-product-purchase form.cart .single_add_to_cart_button,
.km-single-buy{border:0!important;min-height:46px!important;border-radius:11px!important;padding:0 24px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;font-size:14px!important;font-weight:900!important;text-decoration:none!important;cursor:pointer!important}
.km-product-purchase form.cart .single_add_to_cart_button{background:var(--km-primary)!important;color:#fff!important}
.km-single-buy{background:var(--km-accent)!important;color:#fff!important}
.km-product-purchase form.cart .variations{margin-bottom:10px!important}
.km-product-benefits{display:grid;grid-template-columns:1fr;gap:9px;margin-top:22px}
.km-product-benefits>div{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid #eee;border-radius:12px;background:#fafafd}
.km-product-benefits b{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#f0edff;border-radius:9px}
.km-product-benefits span{display:flex;flex-direction:column;font-size:12px}.km-product-benefits small{font-size:10px;color:#777;margin-top:2px}
.km-product-details{background:#fff;border:1px solid var(--km-border,#e7e5ef);border-radius:18px;margin-top:20px;padding:0 24px 25px}
.km-details-tabs{display:flex;gap:4px;border-bottom:1px solid #eee;margin:0 -24px 20px;padding:0 24px}
.km-details-tabs button{background:none;border:0;padding:16px 8px 13px;font-weight:900;color:#777;cursor:pointer;border-bottom:2px solid transparent}
.km-details-tabs button.active{color:var(--km-primary);border-bottom-color:var(--km-primary)}
.km-description{font-size:14px;line-height:1.75;color:#444;overflow-wrap:anywhere}
.km-description img{max-width:100%;height:auto}
.km-related-section{margin-top:28px}
.km-related-section .km-products{margin-top:14px}
@media(max-width:700px){
 .km-product-shell{padding:10px 0 92px}
 .km-product-shell .km-wrap{width:calc(100% - 20px)}
 .km-breadcrumb{font-size:10px;margin-bottom:10px;gap:5px}
 .km-product-main{display:block;padding:12px;border-radius:16px}
 .km-product-image{height:300px;border-radius:13px}
 .km-no-product-image{font-size:60px}
 .km-product-summary{padding:16px 2px 4px}
 .km-product-title{font-size:25px;letter-spacing:-.7px}
 .km-product-price{font-size:23px;margin:14px 0 7px}
 .km-product-price del{font-size:13px}
 .km-product-short{font-size:13px;padding:12px 0;margin:6px 0 14px}
 .km-product-purchase{display:block}
 .km-product-purchase form.cart{width:100%;display:grid!important;grid-template-columns:82px 1fr;gap:7px}
 .km-product-purchase form.cart .quantity{width:100%}
 .km-product-purchase form.cart .quantity input{width:100%!important;height:44px!important}
 .km-product-purchase form.cart .single_add_to_cart_button{width:100%!important;padding:0 10px!important}
 .km-single-buy{width:100%;margin-top:7px;min-height:44px!important}
 .km-product-benefits{margin-top:15px}
 .km-product-details{border-radius:14px;padding:0 13px 18px}
 .km-details-tabs{margin:0 -13px 15px;padding:0 13px}
 .km-details-tabs button{font-size:12px;padding:13px 6px 11px}
 .km-description{font-size:13px}
 .km-related-section .km-products{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}


/* V21: short-description overflow fix */
.km-product-short{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
  overflow-wrap:anywhere!important;
  word-break:break-word!important;
  white-space:normal!important;
}
.km-product-short p,
.km-product-short div,
.km-product-short span,
.km-product-short a{
  max-width:100%!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  word-break:break-word!important;
}
.km-product-short p{margin:0 0 6px!important}
.km-product-short p:last-child{margin-bottom:0!important}

/* Keep an accidentally huge short description from stretching the product page.
   Full description remains available in the Description section below. */
.km-product-short{
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:4!important;
}
@media(max-width:700px){
  .km-product-short{
    -webkit-line-clamp:5!important;
    font-size:13px!important;
    line-height:1.55!important;
  }
}


/* V22: product image hover zoom */
.km-product-image{
  position:relative;
  cursor:zoom-in;
  overflow:hidden!important;
}
.km-product-image .km-main-product-img{
  transform:scale(1);
  transform-origin:center center;
  transition:transform .35s ease;
  will-change:transform;
}
@media (hover:hover) and (pointer:fine) and (min-width:701px){
  .km-product-image:hover .km-main-product-img{
    transform:scale(1.55);
  }
  .km-product-image::after{
    content:'Move mouse to zoom';
    position:absolute;
    right:12px;
    bottom:12px;
    background:rgba(20,18,25,.72);
    color:#fff;
    font-size:10px;
    font-weight:800;
    padding:7px 9px;
    border-radius:999px;
    opacity:0;
    transform:translateY(4px);
    transition:opacity .2s ease,transform .2s ease;
    pointer-events:none;
  }
  .km-product-image:hover::after{
    opacity:1;
    transform:translateY(0);
  }
}
.km-product-thumb{
  cursor:pointer;
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;
}
.km-product-thumb:hover{
  transform:translateY(-2px);
  border-color:var(--km-primary);
}
.km-product-thumb.is-active{
  border:2px solid var(--km-primary);
  box-shadow:0 0 0 2px rgba(91,75,183,.10);
}
@media(max-width:700px){
  .km-product-image{cursor:default}
  .km-product-image .km-main-product-img{transform:none!important}
}


/* V23: identical Add to Cart / Buy Now button sizing */
.km-product-purchase .km-single-buy,
.km-product-purchase form.cart .single_add_to_cart_button{
  box-sizing:border-box!important;
  width:150px!important;
  min-width:150px!important;
  max-width:150px!important;
  height:46px!important;
  min-height:46px!important;
  max-height:46px!important;
  padding:0 14px!important;
  margin:0!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  line-height:1!important;
  white-space:nowrap!important;
  text-align:center!important;
  vertical-align:middle!important;
}
.km-product-purchase form.cart{
  align-items:center!important;
}
@media(max-width:700px){
  .km-product-purchase form.cart .single_add_to_cart_button,
  .km-product-purchase .km-single-buy{
    width:calc(50% - 4px)!important;
    min-width:0!important;
    max-width:none!important;
    height:44px!important;
    min-height:44px!important;
    max-height:44px!important;
    padding:0 8px!important;
    font-size:13px!important;
  }
  .km-product-purchase form.cart{
    display:flex!important;
    width:100%!important;
    flex-wrap:wrap!important;
  }
  .km-product-purchase form.cart .quantity{
    width:82px!important;
    flex:0 0 82px!important;
  }
}


/* V24: mobile purchase controls stay on one clean row */
@media screen and (max-width:700px){
  .km-product-purchase{width:100%!important;display:block!important}
  .km-product-purchase form.cart{
    width:100%!important;
    display:flex!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    gap:6px!important;
    margin:0!important;
  }
  .km-product-purchase form.cart .quantity{
    flex:0 0 64px!important;
    width:64px!important;
    margin:0!important;
  }
  .km-product-purchase form.cart .quantity input{
    width:64px!important;
    height:44px!important;
    padding:0 5px!important;
    box-sizing:border-box!important;
  }
  .km-product-purchase form.cart .single_add_to_cart_button{
    flex:1 1 0!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    height:44px!important;
    min-height:44px!important;
    padding:0 7px!important;
    font-size:12px!important;
    white-space:nowrap!important;
    margin:0!important;
  }
  .km-product-purchase .km-single-buy{
    display:flex!important;
    width:100%!important;
    height:44px!important;
    min-height:44px!important;
    margin:6px 0 0!important;
    font-size:13px!important;
  }
  /* Give the fixed mobile navigation enough bottom breathing room. */
  .km-product-shell{padding-bottom:95px!important}
  .km-mobile-nav{height:70px!important;min-height:70px!important}
  body{padding-bottom:0!important}
}


/* V25: clean product-card image/price separation */
.km-card{
  display:flex!important;
  flex-direction:column!important;
  min-width:0!important;
}
.km-card-media{
  position:relative!important;
  flex:0 0 180px!important;
  height:180px!important;
  min-height:180px!important;
  aspect-ratio:auto!important;
  background:#f5f5f7!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
}
.km-card-media img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center!important;
}
.km-card-info{
  position:relative!important;
  z-index:2!important;
  background:#fff!important;
  flex:1 1 auto!important;
  min-width:0!important;
  padding:10px 11px 11px!important;
}
.km-card-name{
  display:block!important;
  width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  line-height:1.35!important;
  min-height:19px!important;
}
.km-price{
  display:flex!important;
  align-items:baseline!important;
  flex-wrap:wrap!important;
  gap:2px!important;
  width:100%!important;
  min-height:22px!important;
  margin-top:5px!important;
  line-height:1.2!important;
  overflow:hidden!important;
}
.km-price del{
  color:#999!important;
  font-size:11px!important;
  font-weight:500!important;
  white-space:nowrap!important;
}
.km-price ins{
  color:var(--km-primary)!important;
  text-decoration:none!important;
  font-weight:950!important;
  white-space:nowrap!important;
}
.km-price .woocommerce-Price-amount,
.km-price bdi{
  white-space:nowrap!important;
}
@media(max-width:700px){
  .km-card-media{
    flex-basis:128px!important;
    height:128px!important;
    min-height:128px!important;
  }
  .km-card-info{padding:8px 8px 9px!important}
  .km-card-name{
    font-size:12px!important;
    min-height:17px!important;
  }
  .km-price{
    font-size:14px!important;
    min-height:20px!important;
    margin-top:4px!important;
  }
}


/* V26: KukuMall WooCommerce cart page */
.km-cart-page{padding:28px 0 110px}
.km-page-head{margin-bottom:20px}.km-page-head h1{margin:4px 0 5px;font-size:34px}.km-page-head p{margin:0;color:var(--km-muted);font-size:13px}
.km-eyebrow{font-size:10px;letter-spacing:1.5px;font-weight:900;color:var(--km-primary)}
.km-cart-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:18px;align-items:start}
.km-cart-items{min-width:0}
.km-cart-item{background:#fff;border:1px solid var(--km-border);border-radius:18px;padding:13px;display:flex;gap:15px;margin-bottom:12px}
.km-cart-thumb{width:120px;height:120px;flex:0 0 120px;background:#f5f5f7;border-radius:13px;overflow:hidden;display:grid;place-items:center}
.km-cart-thumb img{width:100%;height:100%;object-fit:contain}
.km-cart-info{flex:1;min-width:0}.km-cart-top{display:flex;justify-content:space-between;gap:10px}
.km-cart-cat{font-size:9px;text-transform:uppercase;color:var(--km-primary);font-weight:900;letter-spacing:1px}
.km-cart-title{font-size:17px;margin:5px 0 3px;line-height:1.3}.km-cart-title a{color:#17151d;text-decoration:none}
.km-cart-remove .remove{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#f6f6f8;color:#555;text-decoration:none;font-size:22px}
.km-cart-bottom{display:flex;align-items:center;gap:16px;margin-top:15px}.km-cart-unit{font-size:13px;color:#666}.km-cart-qty .quantity{margin:0}.km-cart-qty input{width:58px;height:38px;border:1px solid var(--km-border);border-radius:9px;text-align:center}.km-cart-line{margin-left:auto;font-size:16px;font-weight:900;color:var(--km-primary)}
.km-cart-actions{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:14px}.km-cart-continue{text-decoration:none;color:var(--km-primary);font-weight:800;font-size:13px}.km-update-cart{border:0!important;background:#eeeaf9!important;color:var(--km-primary)!important;border-radius:9px!important;padding:11px 16px!important;font-weight:800!important}
.km-cart-summary{background:#fff;border:1px solid var(--km-border);border-radius:18px;padding:20px;position:sticky;top:95px}.km-cart-summary h2{font-size:20px;margin:0 0 16px}.km-summary-row{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid #eee;font-size:13px}.km-summary-total{font-size:17px;border-bottom:0;padding-top:15px}.km-summary-total strong{color:var(--km-primary)}
.km-checkout-btn{display:flex;justify-content:center;align-items:center;background:var(--km-accent);color:#fff;text-decoration:none;border-radius:10px;height:46px;font-size:14px;font-weight:900;margin:8px 0 15px}.km-trust-row{font-size:11px;color:#555;padding:9px 0;border-top:1px solid #eee}.km-trust-row span{margin-right:8px}
@media(max-width:700px){
 .km-cart-page{padding:16px 0 95px}.km-page-head h1{font-size:26px}.km-page-head p{font-size:11px}
 .km-cart-layout{display:block}.km-cart-item{padding:9px;gap:10px;border-radius:14px}.km-cart-thumb{width:92px;height:92px;flex-basis:92px}.km-cart-title{font-size:14px}.km-cart-cat{font-size:8px}.km-cart-bottom{gap:8px;margin-top:9px;flex-wrap:wrap}.km-cart-unit{font-size:12px}.km-cart-line{margin-left:auto;font-size:14px}.km-cart-qty input{width:50px;height:34px}
 .km-cart-summary{position:static;margin-top:14px;padding:15px}.km-cart-actions{margin-top:10px}.km-cart-continue{font-size:11px}.km-update-cart{padding:9px 12px!important;font-size:11px!important}
}


/* V27: WooCommerce Cart Block overflow + KukuMall layout fix */
.wc-block-cart,
.wc-block-cart__main,
.wc-block-cart__sidebar,
.wc-block-cart-items,
.wc-block-cart-item,
.wc-block-cart-item__wrap,
.wc-block-cart-item__product,
.wc-block-cart-item__quantity,
.wc-block-components-totals-wrapper{
  min-width:0!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
.wc-block-cart{
  width:100%!important;
  margin:0 auto!important;
  padding:28px 0 110px!important;
}
.wc-block-cart .wc-block-cart__main{
  overflow:hidden!important;
}
.wc-block-cart-item__product,
.wc-block-cart-item__product a,
.wc-block-cart-item__product span,
.wc-block-cart-item__product div,
.wc-block-cart-item__product p{
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  word-break:break-word!important;
}
.wc-block-cart-item__product{
  overflow:hidden!important;
}
.wc-block-cart-item__product .wc-block-components-product-name{
  font-weight:800!important;
  line-height:1.35!important;
}
.wc-block-cart-item__product .wc-block-components-product-metadata{
  max-width:100%!important;
  overflow:hidden!important;
}
.wc-block-cart-item__product .wc-block-components-product-metadata,
.wc-block-cart-item__product .wc-block-components-product-metadata *{
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  word-break:break-word!important;
}
.wc-block-cart-item{
  border:1px solid var(--km-border)!important;
  border-radius:16px!important;
  padding:14px!important;
  margin-bottom:12px!important;
  background:#fff!important;
}
.wc-block-cart-item__image{
  flex:0 0 110px!important;
  width:110px!important;
  height:110px!important;
}
.wc-block-cart-item__image img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  border-radius:12px!important;
}
.wc-block-cart__sidebar{
  background:#fff!important;
  border:1px solid var(--km-border)!important;
  border-radius:18px!important;
  padding:18px!important;
}
.wc-block-components-totals-wrapper,
.wc-block-components-totals-item{
  min-width:0!important;
}
.wc-block-cart__submit-container{
  border-radius:10px!important;
}
.wc-block-cart__submit-button{
  min-height:46px!important;
  border-radius:10px!important;
  font-weight:900!important;
}
@media(max-width:700px){
  .wc-block-cart{
    padding:14px 10px 100px!important;
  }
  .wc-block-cart-item{
    padding:9px!important;
  }
  .wc-block-cart-item__image{
    flex:0 0 82px!important;
    width:82px!important;
    height:82px!important;
  }
  .wc-block-cart-item__product .wc-block-components-product-name{
    font-size:14px!important;
  }
  .wc-block-cart-item__product{
    font-size:12px!important;
  }
  .wc-block-cart__sidebar{
    margin-top:12px!important;
    padding:14px!important;
  }
}
/* Prevent any long WooCommerce cart text from creating horizontal page scroll. */
.woocommerce-cart,
.woocommerce-cart .site-main,
.woocommerce-cart #content,
.woocommerce-cart .entry-content{
  max-width:100%!important;
  overflow-x:hidden!important;
}


/* V28: Clean WooCommerce Cart Block + theme checkout color */
.woocommerce-cart .wc-block-components-product-metadata,
.woocommerce-cart .wc-block-components-product-metadata__description,
.woocommerce-cart .wc-block-components-product-metadata__single{
  display:none!important;
}
.woocommerce-cart .wc-block-cart-item__product{
  overflow:hidden!important;
}
.woocommerce-cart .wc-block-cart-item__product .wc-block-components-product-name{
  display:block!important;
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.woocommerce-cart .wc-block-cart-item__product .wc-block-components-product-price{
  margin-top:4px!important;
}
.woocommerce-cart .wc-block-cart-item__quantity{
  max-width:100%!important;
}
.woocommerce-cart .wc-block-cart-item__quantity .wc-block-components-quantity-selector{
  margin-top:8px!important;
}
.woocommerce-cart .wc-block-cart__sidebar .wc-block-cart__submit-button,
.woocommerce-cart .wc-block-components-checkout-place-order-button{
  background:var(--km-primary)!important;
  background-color:var(--km-primary)!important;
  color:#fff!important;
  border-color:var(--km-primary)!important;
  border-radius:10px!important;
  min-height:48px!important;
  font-weight:900!important;
}
.woocommerce-cart .wc-block-cart__sidebar .wc-block-cart__submit-button:hover{
  filter:brightness(.94)!important;
}
.woocommerce-cart .wc-block-components-totals-item__label,
.woocommerce-cart .wc-block-components-totals-item__value{
  min-width:0!important;
}
@media(max-width:700px){
  .woocommerce-cart .wc-block-cart{
    padding-left:10px!important;
    padding-right:10px!important;
  }
  .woocommerce-cart .wc-block-cart-item__product .wc-block-components-product-name{
    white-space:normal!important;
    display:-webkit-box!important;
    -webkit-line-clamp:2!important;
    -webkit-box-orient:vertical!important;
  }
  .woocommerce-cart .wc-block-cart-item__image{
    width:84px!important;
    flex-basis:84px!important;
    height:84px!important;
  }
}


/* V29: KukuMall WooCommerce Checkout */
.woocommerce-checkout{background:#f7f7f9}
.woocommerce-checkout .wc-block-checkout,
.woocommerce-checkout .wp-block-woocommerce-checkout{
  max-width:100%!important;
  width:100%!important;
  box-sizing:border-box!important;
}
.woocommerce-checkout .wc-block-components-checkout-step{
  background:#fff!important;
  border:1px solid var(--km-border)!important;
  border-radius:16px!important;
  padding:18px!important;
  margin-bottom:12px!important;
  box-sizing:border-box!important;
}
.woocommerce-checkout .wc-block-components-checkout-step__heading{
  margin-bottom:12px!important;
}
.woocommerce-checkout .wc-block-components-checkout-step__title{
  font-size:18px!important;
  font-weight:900!important;
}
.woocommerce-checkout .wc-block-components-text-input input,
.woocommerce-checkout .wc-block-components-combobox .components-combobox-control__input,
.woocommerce-checkout .wc-block-components-address-form input,
.woocommerce-checkout .wc-block-components-address-form select{
  border:1px solid #dcdce3!important;
  border-radius:10px!important;
  min-height:46px!important;
  background:#fff!important;
}
.woocommerce-checkout .wc-block-components-text-input label,
.woocommerce-checkout .wc-block-components-combobox label{
  color:#555!important;
}
.woocommerce-checkout .wc-block-components-order-summary{
  background:#fff!important;
  border:1px solid var(--km-border)!important;
  border-radius:16px!important;
  padding:16px!important;
}
.woocommerce-checkout .wc-block-components-order-summary-item{
  border-bottom:1px solid #eee!important;
  padding:10px 0!important;
}
.woocommerce-checkout .wc-block-components-order-summary-item__description{
  min-width:0!important;
}
.woocommerce-checkout .wc-block-components-order-summary-item__description,
.woocommerce-checkout .wc-block-components-order-summary-item__description *{
  overflow-wrap:anywhere!important;
  word-break:break-word!important;
}
.woocommerce-checkout .wc-block-components-order-summary-item__description .wc-block-components-product-metadata{
  display:none!important;
}
.woocommerce-checkout .wc-block-components-order-summary-item__quantity{
  background:var(--km-primary)!important;
}
.woocommerce-checkout .wc-block-components-totals-item{
  min-width:0!important;
  padding:9px 0!important;
}
.woocommerce-checkout .wc-block-components-totals-item__label,
.woocommerce-checkout .wc-block-components-totals-item__value{
  font-size:13px!important;
}
.woocommerce-checkout .wc-block-components-totals-footer-item{
  border-top:1px solid #ddd!important;
  margin-top:5px!important;
  padding-top:14px!important;
}
.woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__value{
  color:var(--km-primary)!important;
  font-size:19px!important;
  font-weight:900!important;
}
.woocommerce-checkout .wc-block-components-checkout-place-order-button{
  background:var(--km-primary)!important;
  background-color:var(--km-primary)!important;
  color:#fff!important;
  border:0!important;
  border-radius:10px!important;
  min-height:50px!important;
  font-weight:900!important;
}
.woocommerce-checkout .wc-block-components-checkout-place-order-button:hover{
  filter:brightness(.94)!important;
}
.woocommerce-checkout .wc-block-components-radio-control__option{
  border:1px solid #ddd!important;
  border-radius:10px!important;
  margin-bottom:8px!important;
  padding:12px!important;
}
.woocommerce-checkout .wc-block-components-checkbox label{
  font-size:12px!important;
}
.woocommerce-checkout .wc-block-checkout__actions{
  margin-top:14px!important;
}
.woocommerce-checkout .wc-block-checkout__actions_row{
  gap:10px!important;
}
.woocommerce-checkout .wc-block-checkout__actions .wc-block-components-button{
  background:var(--km-primary)!important;
  color:#fff!important;
  border-radius:10px!important;
  font-weight:900!important;
}
.woocommerce-checkout .wc-block-components-notice-banner{
  border-radius:10px!important;
}
@media(min-width:901px){
  .woocommerce-checkout .wc-block-checkout{
    padding:28px 0 110px!important;
  }
  .woocommerce-checkout .wc-block-checkout__main{
    max-width:760px!important;
  }
  .woocommerce-checkout .wc-block-checkout__sidebar{
    max-width:380px!important;
  }
}
@media(max-width:700px){
  .woocommerce-checkout .wc-block-checkout{
    padding:12px 10px 100px!important;
  }
  .woocommerce-checkout .wc-block-components-checkout-step{
    padding:13px!important;
    border-radius:14px!important;
  }
  .woocommerce-checkout .wc-block-components-checkout-step__title{
    font-size:16px!important;
  }
  .woocommerce-checkout .wc-block-components-text-input input,
  .woocommerce-checkout .wc-block-components-address-form input,
  .woocommerce-checkout .wc-block-components-address-form select{
    min-height:44px!important;
  }
  .woocommerce-checkout .wc-block-components-order-summary{
    padding:13px!important;
  }
  .woocommerce-checkout .wc-block-components-order-summary-item__image{
    width:64px!important;
    height:64px!important;
  }
  .woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__value{
    font-size:18px!important;
  }
}


/* V29 classic checkout compatibility */
.woocommerce-checkout form.checkout{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 360px!important;
  gap:18px!important;
}
.woocommerce-checkout form.checkout .col2-set,
.woocommerce-checkout form.checkout #order_review_heading,
.woocommerce-checkout form.checkout #order_review{
  background:#fff;
  border:1px solid var(--km-border);
  border-radius:16px;
  padding:18px;
}
.woocommerce-checkout #place_order{
  width:100%!important;
  background:var(--km-primary)!important;
  color:#fff!important;
  border:0!important;
  border-radius:10px!important;
  min-height:48px!important;
  font-weight:900!important;
}
.woocommerce-checkout .woocommerce-checkout-review-order-table{
  width:100%!important;
  font-size:13px!important;
}
@media(max-width:800px){
 .woocommerce-checkout form.checkout{display:block!important}
 .woocommerce-checkout form.checkout #order_review_heading{margin-top:12px}
}


/* V30: Premium Subtotal / Total design */
.woocommerce-checkout .wc-block-components-totals-item{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  padding:13px 0!important;
  border-bottom:1px solid #eee!important;
}
.woocommerce-checkout .wc-block-components-totals-item__label{
  color:#4c4c55!important;
  font-size:13px!important;
  font-weight:700!important;
}
.woocommerce-checkout .wc-block-components-totals-item__value{
  color:#24232a!important;
  font-size:14px!important;
  font-weight:800!important;
  text-align:right!important;
}
.woocommerce-checkout .wc-block-components-totals-footer-item{
  margin-top:6px!important;
  padding:16px 0 4px!important;
  border-top:2px solid #eee!important;
  border-bottom:0!important;
}
.woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__label{
  color:#17151d!important;
  font-size:17px!important;
  font-weight:900!important;
}
.woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__value{
  color:var(--km-primary)!important;
  font-size:22px!important;
  font-weight:900!important;
}
.woocommerce-checkout .wc-block-components-order-summary .wc-block-components-totals-item__value{
  letter-spacing:.1px!important;
}
.woocommerce-checkout .wc-block-components-order-summary{
  box-shadow:0 8px 24px rgba(25,20,45,.05)!important;
}
@media(max-width:700px){
  .woocommerce-checkout .wc-block-components-totals-item{
    padding:11px 0!important;
  }
  .woocommerce-checkout .wc-block-components-totals-item__label{
    font-size:12px!important;
  }
  .woocommerce-checkout .wc-block-components-totals-item__value{
    font-size:13px!important;
  }
  .woocommerce-checkout .wc-block-components-totals-footer-item{
    padding-top:14px!important;
  }
  .woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__label{
    font-size:16px!important;
  }
  .woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__value{
    font-size:20px!important;
  }
}


/* V31: Unique KukuMall Order Summary typography */
.woocommerce-checkout .wc-block-components-order-summary{
  border-radius:18px!important;
  overflow:hidden!important;
}
.woocommerce-checkout .wc-block-components-order-summary .wc-block-components-totals-item{
  position:relative!important;
}
.woocommerce-checkout .wc-block-components-totals-item__label{
  letter-spacing:.15px!important;
}
.woocommerce-checkout .wc-block-components-totals-item__value{
  letter-spacing:.2px!important;
  font-variant-numeric:tabular-nums!important;
}
.woocommerce-checkout .wc-block-components-totals-item__label::before{
  content:"•"!important;
  color:var(--km-accent)!important;
  font-size:17px!important;
  margin-right:8px!important;
  vertical-align:-1px!important;
}
.woocommerce-checkout .wc-block-components-totals-footer-item{
  position:relative!important;
  margin:10px -16px -16px!important;
  padding:16px!important;
  background:linear-gradient(90deg,#f7f4ff,#fff)!important;
  border-top:1px solid #e5e1f1!important;
}
.woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__label::before{
  content:"✓"!important;
  display:inline-grid!important;
  place-items:center!important;
  width:22px!important;
  height:22px!important;
  margin-right:8px!important;
  border-radius:50%!important;
  background:var(--km-primary)!important;
  color:#fff!important;
  font-size:12px!important;
  font-weight:900!important;
}
.woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__value{
  color:var(--km-primary)!important;
  font-size:23px!important;
  letter-spacing:.3px!important;
}
@media(max-width:700px){
  .woocommerce-checkout .wc-block-components-totals-footer-item{
    margin:8px -13px -13px!important;
    padding:14px 13px!important;
  }
  .woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__value{
    font-size:20px!important;
  }
}


/* V32: KukuMall real checkout layout - data/functionality remains WooCommerce driven */
.woocommerce-checkout{background:#f6f7fb!important}
.woocommerce-checkout .wc-block-checkout,
.woocommerce-checkout .wp-block-woocommerce-checkout{
  max-width:1240px!important;
  margin:0 auto!important;
  padding:28px 18px 120px!important;
  box-sizing:border-box!important;
}
.woocommerce-checkout .wc-block-checkout__main{min-width:0!important}
.woocommerce-checkout .wc-block-checkout__sidebar{min-width:0!important}
.woocommerce-checkout .wc-block-components-checkout-step,
.woocommerce-checkout .wc-block-components-order-summary{
  box-shadow:0 6px 24px rgba(30,24,55,.055)!important;
}
.woocommerce-checkout .wc-block-components-checkout-step__heading{
  display:flex!important;align-items:center!important;gap:10px!important;
}
.woocommerce-checkout .wc-block-components-checkout-step__title{
  color:#17151d!important;font-size:20px!important;line-height:1.2!important;
}
.woocommerce-checkout .wc-block-components-checkout-step__description{color:#6b6873!important}
.woocommerce-checkout .wc-block-components-text-input input,
.woocommerce-checkout .wc-block-components-combobox .components-combobox-control__input,
.woocommerce-checkout .wc-block-components-address-form input,
.woocommerce-checkout .wc-block-components-address-form select,
.woocommerce-checkout .wc-block-components-address-form textarea{
  border:1px solid #dedde5!important;border-radius:12px!important;
  min-height:48px!important;background:#fff!important;box-shadow:none!important;
}
.woocommerce-checkout .wc-block-components-text-input input:focus,
.woocommerce-checkout .wc-block-components-combobox .components-combobox-control__input:focus,
.woocommerce-checkout .wc-block-components-address-form input:focus,
.woocommerce-checkout .wc-block-components-address-form select:focus,
.woocommerce-checkout .wc-block-components-address-form textarea:focus{
  border-color:var(--km-primary)!important;box-shadow:0 0 0 3px rgba(109,40,217,.10)!important;outline:0!important;
}
/* Keep checkout item details useful: product title/price/quantity only; never let descriptions stretch the page. */
.woocommerce-checkout .wc-block-components-order-summary-item__description{
  min-width:0!important;overflow:hidden!important;
}
.woocommerce-checkout .wc-block-components-order-summary-item__description p,
.woocommerce-checkout .wc-block-components-order-summary-item__description .wc-block-components-product-metadata{
  display:none!important;
}
.woocommerce-checkout .wc-block-components-order-summary-item__description > div:not(.wc-block-components-product-metadata){
  max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;
}
.woocommerce-checkout .wc-block-components-order-summary-item__image{
  border-radius:10px!important;border:1px solid #eceaf1!important;background:#fafafd!important;
}
.woocommerce-checkout .wc-block-components-order-summary-item{
  padding:12px 0!important;border-bottom:1px solid #eeeaf3!important;gap:12px!important;
}
.woocommerce-checkout .wc-block-components-order-summary-item:last-child{border-bottom:0!important}
.woocommerce-checkout .wc-block-components-totals-item{
  border-bottom:1px solid #eeeaf3!important;padding:12px 0!important;
}
.woocommerce-checkout .wc-block-components-totals-item__label{
  color:#4b4852!important;font-size:14px!important;font-weight:700!important;
}
.woocommerce-checkout .wc-block-components-totals-item__label::before{content:none!important}
.woocommerce-checkout .wc-block-components-totals-item__value{
  color:#24212a!important;font-size:14px!important;font-weight:800!important;
}
.woocommerce-checkout .wc-block-components-totals-footer-item{
  margin:8px -16px -16px!important;padding:17px 16px!important;
  background:linear-gradient(90deg,#f7f3ff,#fff)!important;border-top:1px solid #e7e0f5!important;
}
.woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__label::before{
  content:"✓"!important;width:22px!important;height:22px!important;display:inline-grid!important;place-items:center!important;
  background:var(--km-primary)!important;color:#fff!important;border-radius:50%!important;font-size:12px!important;
}
.woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__label{
  color:#17151d!important;font-size:17px!important;font-weight:900!important;
}
.woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__value{
  color:var(--km-primary)!important;font-size:24px!important;font-weight:950!important;
}
.woocommerce-checkout .wc-block-components-checkout-place-order-button,
.woocommerce-checkout .wc-block-checkout__actions .wc-block-components-button{
  min-height:54px!important;border:0!important;border-radius:12px!important;
  background:var(--km-accent)!important;color:#fff!important;font-weight:900!important;
  box-shadow:0 7px 18px rgba(255,107,26,.20)!important;
}
.woocommerce-checkout .wc-block-components-checkout-place-order-button:hover,
.woocommerce-checkout .wc-block-checkout__actions .wc-block-components-button:hover{filter:brightness(.96)!important}
.woocommerce-checkout .wc-block-components-notice-banner{border-radius:12px!important}
.woocommerce-checkout .wc-block-components-radio-control__option{background:#fff!important;border-radius:12px!important}
.woocommerce-checkout .wc-block-components-order-summary__button-text{font-weight:800!important;color:var(--km-primary)!important}

@media(min-width:901px){
  .woocommerce-checkout .wc-block-checkout{display:grid!important;grid-template-columns:minmax(0,1fr) 390px!important;gap:22px!important;align-items:start!important}
  .woocommerce-checkout .wc-block-checkout__main{max-width:none!important}
  .woocommerce-checkout .wc-block-checkout__sidebar{max-width:none!important;position:sticky!important;top:92px!important}
  .woocommerce-checkout .wc-block-components-order-summary{border-radius:18px!important}
}
@media(max-width:900px){
  .woocommerce-checkout .wc-block-checkout{padding:12px 10px 105px!important;display:block!important}
  .woocommerce-checkout .wc-block-checkout__sidebar{margin-top:12px!important}
  .woocommerce-checkout .wc-block-components-checkout-step{padding:14px!important;border-radius:14px!important}
  .woocommerce-checkout .wc-block-components-checkout-step__title{font-size:17px!important}
  .woocommerce-checkout .wc-block-components-order-summary{padding:14px!important;border-radius:14px!important}
}
@media(max-width:520px){
  .woocommerce-checkout .wc-block-checkout{padding-left:8px!important;padding-right:8px!important}
  .woocommerce-checkout .wc-block-components-checkout-step{padding:12px!important;margin-bottom:10px!important}
  .woocommerce-checkout .wc-block-components-text-input input,
  .woocommerce-checkout .wc-block-components-combobox .components-combobox-control__input,
  .woocommerce-checkout .wc-block-components-address-form input,
  .woocommerce-checkout .wc-block-components-address-form select{min-height:45px!important}
  .woocommerce-checkout .wc-block-components-order-summary-item__image{width:58px!important;height:58px!important}
  .woocommerce-checkout .wc-block-components-totals-footer-item{margin:8px -14px -14px!important;padding:14px!important}
  .woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__label{font-size:16px!important}
  .woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__value{font-size:21px!important}
}

/* Classic WooCommerce checkout: same KukuMall visual language, real fields and totals preserved. */
.woocommerce-checkout form.checkout .form-row label{font-weight:700!important;color:#4b4852!important;font-size:13px!important}
.woocommerce-checkout form.checkout .form-row input,
.woocommerce-checkout form.checkout .form-row select,
.woocommerce-checkout form.checkout .form-row textarea{
  border:1px solid #dedde5!important;border-radius:12px!important;min-height:48px!important;background:#fff!important;padding:10px 12px!important;
}
.woocommerce-checkout form.checkout #order_review_heading{font-size:20px!important}
.woocommerce-checkout form.checkout #order_review{background:#fff!important}
.woocommerce-checkout form.checkout .shop_table{border-collapse:separate!important;border-spacing:0!important}
.woocommerce-checkout form.checkout .shop_table th,
.woocommerce-checkout form.checkout .shop_table td{padding:11px 0!important;border-bottom:1px solid #eeeaf3!important}
.woocommerce-checkout form.checkout #place_order{background:var(--km-accent)!important;min-height:54px!important;border-radius:12px!important}

/* V34: Checkout Block width/layout repair */
.woocommerce-checkout .wc-block-checkout,
.woocommerce-checkout .wp-block-woocommerce-checkout{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(300px,380px)!important;
  column-gap:24px!important;
  row-gap:18px!important;
  align-items:start!important;
  width:100%!important;
  max-width:1100px!important;
  margin:0 auto!important;
  padding:28px 0 110px!important;
  box-sizing:border-box!important;
}
.woocommerce-checkout .wc-block-checkout__main{
  grid-column:1!important;
  min-width:0!important;
  width:100%!important;
  max-width:none!important;
  box-sizing:border-box!important;
}
.woocommerce-checkout .wc-block-checkout__sidebar{
  grid-column:2!important;
  min-width:300px!important;
  width:100%!important;
  max-width:none!important;
  box-sizing:border-box!important;
  position:sticky!important;
  top:20px!important;
}
.woocommerce-checkout .wc-block-checkout__main > *,
.woocommerce-checkout .wc-block-checkout__sidebar > *{
  min-width:0!important;
  max-width:none!important;
  box-sizing:border-box!important;
}
.woocommerce-checkout .wc-block-components-checkout-step{
  width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
}
.woocommerce-checkout .wc-block-components-order-summary{
  width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
}
.woocommerce-checkout .wc-block-components-order-summary-item{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
}
.woocommerce-checkout .wc-block-components-order-summary-item__image{
  flex:0 0 64px!important;
  width:64px!important;
  height:64px!important;
}
.woocommerce-checkout .wc-block-components-order-summary-item__description{
  flex:1 1 auto!important;
  min-width:0!important;
  width:auto!important;
}
.woocommerce-checkout .wc-block-components-order-summary-item__total{
  flex:0 0 auto!important;
  white-space:nowrap!important;
  text-align:right!important;
}
.woocommerce-checkout .wc-block-components-text-input,
.woocommerce-checkout .wc-block-components-combobox,
.woocommerce-checkout .wc-block-components-address-form{
  width:100%!important;
  min-width:0!important;
}
@media(max-width:900px){
  .woocommerce-checkout .wc-block-checkout,
  .woocommerce-checkout .wp-block-woocommerce-checkout{
    display:block!important;
    width:100%!important;
    max-width:700px!important;
    padding:16px 12px 100px!important;
  }
  .woocommerce-checkout .wc-block-checkout__main,
  .woocommerce-checkout .wc-block-checkout__sidebar{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
  }
  .woocommerce-checkout .wc-block-checkout__sidebar{
    position:static!important;
    margin-top:16px!important;
  }
}
