/* =========================================================
   KAMAYO HOME CSS - CLEAN CUSTOMER FRIENDLY STABLE v20260503-a11y
   ---------------------------------------------------------
   Upload as: /assets/css/home.css

   Rules:
   - Desktop hero preserved
   - Mobile hero/cards stable
   - Product card CSS moved to /assets/css/home/product-card.css
   - Category section CSS moved to /assets/css/home/category-section.css
   - home.css keeps common homepage, mini-cart and sticky cart layout
   - Variant modal CSS moved to /assets/css/home/variant-modal.css
   - No cart calculation / delivery logic here
========================================================= */

:root{
    --km-green:#16a34a;
    --km-green-2:#22c55e;
    --km-green-dark:#166534;
    --km-green-deep:#14532d;
    --km-green-soft:#ecfdf3;
    --km-green-soft-2:#f0fdf4;
    --km-text:#111827;
    --km-text-2:#1f2937;
    --km-soft:#667085;
    --km-muted:#98a2b3;
    --km-border:rgba(16,24,40,.08);
    --km-border-2:rgba(16,24,40,.05);
    --km-bg:#f4f8f5;
    --km-white:#ffffff;
    --km-red:#ef4444;
    --km-orange:#f59e0b;
    --km-shadow:0 8px 22px rgba(15,23,42,.06);
    --km-shadow-2:0 14px 36px rgba(15,23,42,.10);
    --km-radius:18px;
    --km-radius-lg:24px;
}

*{box-sizing:border-box;}
html,body{max-width:100%;overflow-x:hidden;}
body{
    margin:0;
    background:var(--km-bg);
    color:var(--km-text);
}
img{max-width:100%;}
button,input,select,textarea{font:inherit;}
button{touch-action:manipulation;}
a{text-decoration:none;color:inherit;}

/* =========================================================
   ACCESSIBILITY POLISH - 2026-05-03
   Safe focus ring + tap highlight. No layout/calculation changes.
========================================================= */
:where(a,button,input,select,textarea,[role="button"],[tabindex]):focus-visible{
    outline:3px solid rgba(20,83,45,.42);
    outline-offset:3px;
    box-shadow:0 0 0 4px rgba(220,252,231,.95);
}

:where(button,a,[role="button"]){
    -webkit-tap-highlight-color:rgba(22,163,74,.16);
}

.km-home-wrap,
#km-home-page{
    width:100%;
    min-width:0;
    background:linear-gradient(180deg,#f1f6f3 0%,#f8fbf9 18%,#f4f8f5 100%);
    padding-top:10px;
    padding-bottom:96px;
}

/* =========================================================
   COMMON SECTIONS
========================================================= */

.km-section,
.km-category-section{
    width:100%;
    min-width:0;
    max-width:1280px;
    margin:0 auto 16px;
    padding-left:12px;
    padding-right:12px;
}

.km-home-section-shell{
    border-radius:var(--km-radius-lg);
    background:rgba(255,255,255,.88);
    border:1px solid rgba(16,24,40,.045);
    box-shadow:0 10px 28px rgba(15,23,42,.045);
    padding:14px;
}

.km-home-section-shell + .km-home-section-shell{
    margin-top:14px;
}

.km-section-head,
.km-category-shelf-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:12px;
    margin:0 0 12px;
}

.km-section-title{
    margin:0;
    color:var(--km-text);
    font-size:22px;
    line-height:1.16;
    font-weight:950;
    letter-spacing:-.035em;
}

.km-section-sub{
    margin:5px 0 0;
    color:var(--km-soft);
    font-size:12px;
    line-height:1.45;
    font-weight:650;
}

.km-section-link{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:34px;
    padding:0 13px;
    border:1px solid rgba(22,163,74,.18);
    border-radius:999px;
    background:#fff;
    color:var(--km-green-dark);
    text-decoration:none;
    font-size:12px;
    font-weight:900;
    white-space:nowrap;
}

.km-empty{
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:110px;
    padding:18px;
    border:1px dashed rgba(16,24,40,.14);
    border-radius:18px;
    background:#fff;
    color:#6b7280;
    text-align:center;
    font-size:13px;
    line-height:1.45;
}

/* =========================================================
   HERO SECTION CSS MOVED OUT
========================================================= */

/*
   Hero section layout, main banner, hero cards, slider arrows,
   dots and hero mobile/app-force rules now live in:

   /assets/css/home/hero-section.css
*/

/* =========================================================
   QUICK STRIP / FEATURE / PROMO CSS MOVED OUT
========================================================= */

/*
   Quick strip, feature/highlight cards and CTA/promo banner CSS
   now live in:

   /assets/css/home/quick-strip.css
*/

/* =========================================================
   CATEGORY SECTION CSS MOVED OUT
========================================================= */

/*
   Category grid, category cards, icons/thumbs, labels and
   category responsive/mobile-force rules now live in:

   /assets/css/home/category-section.css
*/

/* =========================================================
   PRODUCT CARD CSS MOVED OUT
========================================================= */

/*
   Product tabs, product grid, product cards, shelf product cards,
   product action buttons and product skeleton loaders now live in:

   /assets/css/home/product-card.css

   Keep home.css focused on common homepage layout, shared wrappers,
   mini-cart and sticky cart. Variant modal lives separately.
*/

/* =========================================================
   VARIANT MODAL CSS MOVED OUT
========================================================= */

/*
   Variant popup/modal layout now lives in:

   /assets/css/home/variant-modal.css

   Mini cart and sticky cart remain below in home.css for now.
*/

/* =========================================================
   MINI CART / STICKY CART
========================================================= */

.km-mini-cart-overlay,
#km-mini-cart-overlay,
#mini-cart-overlay{
    position:fixed;
    inset:0;
    z-index:9996;
    display:none;
    background:rgba(15,23,42,.50);
    backdrop-filter:blur(4px);
}

.km-mini-cart-overlay.is-open,
.km-mini-cart-overlay.is-active,
.km-mini-cart-overlay.active,
.km-mini-cart-overlay.open,
.km-mini-cart-overlay.show,
#km-mini-cart-overlay.is-open,
#km-mini-cart-overlay.is-active,
#km-mini-cart-overlay.active,
#km-mini-cart-overlay.open,
#km-mini-cart-overlay.show,
#mini-cart-overlay.is-open,
#mini-cart-overlay.is-active,
#mini-cart-overlay.active,
#mini-cart-overlay.open,
#mini-cart-overlay.show,
body.km-cart-open .km-mini-cart-overlay,
body.km-mini-cart-open .km-mini-cart-overlay,
body.mini-cart-open .km-mini-cart-overlay,
body.cart-open .km-mini-cart-overlay,
body.km-cart-open #km-mini-cart-overlay,
body.km-mini-cart-open #km-mini-cart-overlay,
body.mini-cart-open #km-mini-cart-overlay,
body.cart-open #km-mini-cart-overlay{
    display:block!important;
}

.km-mini-cart,
#km-mini-cart,
#mini-cart,
.km-mini-cart-panel,
.km-mini-cart-drawer{
    position:fixed;
    right:14px;
    bottom:86px;
    z-index:9997;
    display:none;
    width:min(420px,calc(100vw - 28px));
    max-height:min(74vh,640px);
    overflow:hidden;
    border-radius:22px;
    background:#fff;
    box-shadow:0 24px 70px rgba(15,23,42,.25);
    border:1px solid rgba(16,24,40,.08);
}

.km-mini-cart.is-open,
.km-mini-cart.is-active,
.km-mini-cart.active,
.km-mini-cart.open,
.km-mini-cart.show,
#km-mini-cart.is-open,
#km-mini-cart.is-active,
#km-mini-cart.active,
#km-mini-cart.open,
#km-mini-cart.show,
#mini-cart.is-open,
#mini-cart.is-active,
#mini-cart.active,
#mini-cart.open,
#mini-cart.show,
.km-mini-cart-panel.is-open,
.km-mini-cart-panel.is-active,
.km-mini-cart-panel.active,
.km-mini-cart-panel.open,
.km-mini-cart-panel.show,
.km-mini-cart-drawer.is-open,
.km-mini-cart-drawer.is-active,
.km-mini-cart-drawer.active,
.km-mini-cart-drawer.open,
.km-mini-cart-drawer.show,
body.km-cart-open .km-mini-cart,
body.km-mini-cart-open .km-mini-cart,
body.mini-cart-open .km-mini-cart,
body.cart-open .km-mini-cart,
body.km-cart-open #km-mini-cart,
body.km-mini-cart-open #km-mini-cart,
body.mini-cart-open #km-mini-cart,
body.cart-open #km-mini-cart,
body.km-cart-open .km-mini-cart-panel,
body.km-mini-cart-open .km-mini-cart-panel,
body.mini-cart-open .km-mini-cart-panel,
body.cart-open .km-mini-cart-panel,
body.km-cart-open .km-mini-cart-drawer,
body.km-mini-cart-open .km-mini-cart-drawer,
body.mini-cart-open .km-mini-cart-drawer,
body.cart-open .km-mini-cart-drawer{
    display:flex!important;
    flex-direction:column;
}

.km-mini-cart-head,
.km-mini-cart-header{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:14px 16px;
    border-bottom:1px solid rgba(16,24,40,.06);
}

.km-mini-cart-title{font-size:16px;font-weight:950;color:#111827;}
.km-mini-cart-close{width:40px;height:40px;border-radius:12px;border:1px solid rgba(16,24,40,.08);background:#fff;color:#111827;cursor:pointer;}
.km-mini-cart-items{overflow:auto;padding:12px;display:flex;flex-direction:column;gap:10px;}
.km-mini-cart-foot,.km-mini-cart-footer{border-top:1px solid rgba(16,24,40,.06);padding:12px 16px;background:#fff;}

.km-sticky-bar{
    position:fixed;
    left:12px;
    right:12px;
    bottom:12px;
    z-index:9995;
    display:none;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    max-width:760px;
    margin:0 auto;
    padding:10px 12px;
    border-radius:18px;
    background:#0f172a;
    color:#fff;
    box-shadow:0 18px 48px rgba(15,23,42,.22);
}

.km-sticky-bar.is-visible{display:flex;}
.km-sticky-info{min-width:0;}
.km-sticky-title{font-size:12px;font-weight:950;}
.km-sticky-sub{font-size:11px;color:rgba(255,255,255,.72);}
.km-sticky-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto;}
.km-sticky-btn,.km-sticky-link{display:flex;align-items:center;justify-content:center;min-height:42px;padding:0 14px;border-radius:12px;text-decoration:none;font-size:11px;font-weight:950;white-space:nowrap;}
.km-sticky-btn{appearance:none;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.08);color:#fff;cursor:pointer;}
.km-sticky-link{border:0;background:#22c55e;color:#fff;}

body.km-cart-open .km-sticky-bar,
body.km-mini-cart-open .km-sticky-bar,
body.mini-cart-open .km-sticky-bar,
body.cart-open .km-sticky-bar{display:none!important;}

body.km-cart-open,
body.km-mini-cart-open,
body.mini-cart-open,
body.cart-open,
body.km-modal-open{overflow:hidden;touch-action:none;}

/* =========================================================
   PRODUCT SKELETON CSS MOVED OUT
========================================================= */

/* Product skeleton loaders live in /assets/css/home/product-card.css. */

/* =========================================================
   RESPONSIVE
========================================================= */

/* Hero responsive rules moved to /assets/css/home/hero-section.css. */
@media (max-width:767.98px){
    .km-home-wrap,#km-home-page{padding-top:8px;padding-bottom:128px;}

    .km-section,
    .km-category-section{padding-left:8px;padding-right:8px;margin-bottom:13px;}

    .km-home-section-shell{border-radius:22px;padding:12px;}

    .km-section-title{font-size:21px;}
    .km-section-sub{font-size:12px;}

    /* Category mobile rules moved to category-section.css. */
/* Product card responsive rules moved to product-card.css. */

    /* Variant modal mobile rules moved to variant-modal.css. */

    .km-mini-cart,
    #km-mini-cart,
    #mini-cart,
    .km-mini-cart-panel,
    .km-mini-cart-drawer{
        left:10px;
        right:10px;
        bottom:78px;
        width:auto;
        max-height:72vh;
    }
}

/* Hero small-mobile rules moved to /assets/css/home/hero-section.css. */
/* Result mode: keep product page clean after search/category */
body.km-result-mode .km-home-quick-strip,
body.km-search-mode .km-category-shelf-section{
    display:none!important;
}

/* Hero reduced-motion rules moved to /assets/css/home/hero-section.css. */

/* =========================================================
   KAMAYO MINI CART SCOPE FIX - 2026-04-29
   Merged into full home.css. Not an extra CSS file.
   Mini cart uses compact cart rows; product cards/variant modal keep their own controls.
========================================================= */

.km-mini-cart,
#km-mini-cart,
#mini-cart,
.km-mini-cart-panel,
.km-mini-cart-drawer{
    width:min(430px,calc(100vw - 28px))!important;
    max-height:min(78vh,660px)!important;
    overflow:hidden!important;
}

.km-mini-cart-items,
#km-mini-cart-items,
.mini-cart-items{
    display:flex!important;
    flex-direction:column!important;
    gap:10px!important;
    padding:12px!important;
    overflow:auto!important;
    background:#f8fafc!important;
}

.km-mini-cart-items > *:not(.km-empty),
#km-mini-cart-items > *:not(.km-empty),
.mini-cart-items > *:not(.km-empty),
.km-mini-cart-item,
.mini-cart-item,
.cart-mini-item,
.km-cart-item{
    display:grid!important;
    grid-template-columns:70px minmax(0,1fr) 112px!important;
    gap:10px!important;
    align-items:center!important;
    min-height:92px!important;
    padding:10px!important;
    border-radius:16px!important;
    background:#ffffff!important;
    border:1px solid rgba(16,24,40,.07)!important;
    box-shadow:0 8px 18px rgba(15,23,42,.05)!important;
    overflow:hidden!important;
}

.km-mini-cart-items > *:not(.km-empty) img,
#km-mini-cart-items > *:not(.km-empty) img,
.mini-cart-items > *:not(.km-empty) img,
.km-mini-cart-item img,
.mini-cart-item img,
.cart-mini-item img,
.km-cart-item img{
    width:70px!important;
    height:70px!important;
    max-width:70px!important;
    max-height:70px!important;
    object-fit:contain!important;
    display:block!important;
    border-radius:14px!important;
    background:#f3f6f8!important;
    padding:4px!important;
    margin:0!important;
    justify-self:center!important;
    align-self:center!important;
}

.km-mini-cart-item-name,
.mini-cart-item-name,
.km-cart-item-name,
.km-mini-cart-product-name,
.mini-cart-product-name{
    color:#111827!important;
    font-size:12px!important;
    line-height:1.25!important;
    font-weight:850!important;
    display:-webkit-box!important;
    -webkit-line-clamp:2!important;
    -webkit-box-orient:vertical!important;
    overflow:hidden!important;
    margin:0 0 4px!important;
}

.km-mini-cart-item-meta,
.mini-cart-item-meta,
.km-cart-item-meta,
.km-mini-cart-price,
.mini-cart-price{
    color:#475569!important;
    font-size:11px!important;
    line-height:1.25!important;
    font-weight:750!important;
    margin:2px 0!important;
}

/* Mini cart quantity must be compact, not full-width product-card control */
.km-mini-cart .km-qty-controller,
#km-mini-cart .km-qty-controller,
#mini-cart .km-qty-controller,
.km-mini-cart-panel .km-qty-controller,
.km-mini-cart-drawer .km-qty-controller,
.km-mini-cart .qty-control,
#km-mini-cart .qty-control,
#mini-cart .qty-control,
.km-mini-cart-panel .qty-control,
.km-mini-cart-drawer .qty-control,
.km-mini-cart .quantity-control,
#km-mini-cart .quantity-control,
#mini-cart .quantity-control,
.km-mini-cart-panel .quantity-control,
.km-mini-cart-drawer .quantity-control{
    width:112px!important;
    min-width:112px!important;
    max-width:112px!important;
    height:36px!important;
    min-height:36px!important;
    display:grid!important;
    grid-template-columns:34px 1fr 34px!important;
    gap:0!important;
    padding:0!important;
    border-radius:12px!important;
    background:#16a34a!important;
    border:1px solid #16a34a!important;
    color:#fff!important;
    overflow:hidden!important;
    justify-self:end!important;
    align-self:center!important;
}

.km-mini-cart .km-qty-btn,
#km-mini-cart .km-qty-btn,
#mini-cart .km-qty-btn,
.km-mini-cart-panel .km-qty-btn,
.km-mini-cart-drawer .km-qty-btn,
.km-mini-cart .qty-btn,
#km-mini-cart .qty-btn,
#mini-cart .qty-btn{
    width:34px!important;
    min-width:34px!important;
    height:34px!important;
    border-radius:10px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    color:#fff!important;
    background:transparent!important;
    border:0!important;
    font-size:18px!important;
    font-weight:950!important;
    line-height:1!important;
}

.km-mini-cart .km-qty-number,
#km-mini-cart .km-qty-number,
#mini-cart .km-qty-number,
.km-mini-cart-panel .km-qty-number,
.km-mini-cart-drawer .km-qty-number,
.km-mini-cart .qty-number,
#km-mini-cart .qty-number,
#mini-cart .qty-number,
.km-mini-cart .qty-count,
#km-mini-cart .qty-count,
#mini-cart .qty-count{
    min-width:0!important;
    text-align:center!important;
    color:#fff!important;
    font-size:12px!important;
    font-weight:950!important;
    line-height:1!important;
    align-self:center!important;
}

.km-mini-cart .km-add-btn,
#km-mini-cart .km-add-btn,
#mini-cart .km-add-btn,
.km-mini-cart-panel .km-add-btn,
.km-mini-cart-drawer .km-add-btn,
.km-mini-cart .add-btn,
#km-mini-cart .add-btn,
#mini-cart .add-btn{
    width:96px!important;
    min-width:96px!important;
    max-width:96px!important;
    height:36px!important;
    min-height:36px!important;
    border-radius:12px!important;
    justify-self:end!important;
}

@media (max-width:575.98px){
    .km-mini-cart,
    #km-mini-cart,
    #mini-cart,
    .km-mini-cart-panel,
    .km-mini-cart-drawer{
        left:10px!important;
        right:10px!important;
        bottom:74px!important;
        width:auto!important;
        max-height:min(76vh,620px)!important;
        border-radius:20px!important;
    }

    .km-mini-cart-items > *:not(.km-empty),
    #km-mini-cart-items > *:not(.km-empty),
    .mini-cart-items > *:not(.km-empty),
    .km-mini-cart-item,
    .mini-cart-item,
    .cart-mini-item,
    .km-cart-item{
        grid-template-columns:62px minmax(0,1fr) 104px!important;
        min-height:84px!important;
        gap:8px!important;
        padding:9px!important;
        border-radius:15px!important;
    }

    .km-mini-cart-items > *:not(.km-empty) img,
    #km-mini-cart-items > *:not(.km-empty) img,
    .mini-cart-items > *:not(.km-empty) img,
    .km-mini-cart-item img,
    .mini-cart-item img,
    .cart-mini-item img,
    .km-cart-item img{
        width:62px!important;
        height:62px!important;
        max-width:62px!important;
        max-height:62px!important;
        border-radius:13px!important;
    }

    .km-mini-cart .km-qty-controller,
    #km-mini-cart .km-qty-controller,
    #mini-cart .km-qty-controller,
    .km-mini-cart-panel .km-qty-controller,
    .km-mini-cart-drawer .km-qty-controller,
    .km-mini-cart .qty-control,
    #km-mini-cart .qty-control,
    #mini-cart .qty-control,
    .km-mini-cart-panel .qty-control,
    .km-mini-cart-drawer .qty-control,
    .km-mini-cart .quantity-control,
    #km-mini-cart .quantity-control,
    #mini-cart .quantity-control,
    .km-mini-cart-panel .quantity-control,
    .km-mini-cart-drawer .quantity-control{
        width:104px!important;
        min-width:104px!important;
        max-width:104px!important;
        height:34px!important;
        min-height:34px!important;
        grid-template-columns:32px 1fr 32px!important;
    }
}

/* =========================================================
   KAMAYO MINI CART FOOTER + CART QTY POLISH - 2026-05-03
   Variant row polish moved to /assets/css/home/variant-modal.css.
========================================================= */

/* Mini cart footer buttons and scoped cart qty should remain cart style only */
.km-mini-cart-actions,
.km-mini-cart-foot .km-mini-cart-actions{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:10px !important;
    margin-top:12px !important;
}

.km-mini-cart-open-btn,
.km-mini-cart-checkout-btn,
.km-mini-cart-foot a[href*="cart"],
.km-mini-cart-foot a[href*="checkout"]{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-height:42px !important;
    padding:0 14px !important;
    border-radius:12px !important;
    font-size:12px !important;
    font-weight:900 !important;
    text-decoration:none !important;
    white-space:nowrap !important;
}

.km-mini-cart-open-btn,
.km-mini-cart-foot a[href*="cart"]{
    background:#f8fafc !important;
    color:#334155 !important;
    border:1px solid rgba(16,24,40,.08) !important;
}

.km-mini-cart-checkout-btn,
.km-mini-cart-foot a[href*="checkout"]{
    background:linear-gradient(135deg,#16a34a,#15803d) !important;
    color:#ffffff !important;
    border:1px solid #16a34a !important;
}

.km-mini-cart-item .km-qty-controller{
    width:126px !important;
    min-width:126px !important;
    max-width:126px !important;
    height:38px !important;
    min-height:38px !important;
    display:grid !important;
    grid-template-columns:34px minmax(30px,1fr) 34px !important;
    gap:4px !important;
    padding:4px !important;
    border-radius:12px !important;
    background:#16a34a !important;
}

.km-mini-cart-item .km-qty-btn{
    width:34px !important;
    min-width:34px !important;
    height:30px !important;
    border-radius:9px !important;
}

.km-mini-cart-item .km-qty-number{
    font-size:12px !important;
    font-weight:950 !important;
}

@media (max-width:575.98px){
    /* Variant row small-mobile rules moved to variant-modal.css. */

    .km-mini-cart-actions,
    .km-mini-cart-foot .km-mini-cart-actions{
        grid-template-columns:1fr 1fr !important;
        gap:8px !important;
    }

    .km-mini-cart-open-btn,
    .km-mini-cart-checkout-btn,
    .km-mini-cart-foot a[href*="cart"],
    .km-mini-cart-foot a[href*="checkout"]{
        min-height:38px !important;
        padding:0 10px !important;
        font-size:11px !important;
    }
}

/* Bundle/Festive section CSS moved to:
   - /assets/css/home/bundle-section.css
   - /assets/css/home/festive-section.css
*/


/* =========================================================
   KAMAYO APP MOBILE FORCE v20260502
   Purpose: Android/TWA/Chrome sometimes reports desktop viewport.
   This class is added by header.php and also by JS/pointer fallback.
   It does not change cart/order calculations.
========================================================= */
html.km-mobile-device,
html.km-mobile-device body{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    overflow-x:hidden!important;
    -webkit-text-size-adjust:100%!important;
    text-size-adjust:100%!important;
}

html.km-mobile-device .km-home-wrap,
html.km-mobile-device #km-home-page{
    padding-top:6px!important;
    padding-bottom:128px!important;
}

html.km-mobile-device .km-section,
html.km-mobile-device .km-category-section{
    width:100%!important;
    max-width:100%!important;
    padding-left:8px!important;
    padding-right:8px!important;
    margin-left:auto!important;
    margin-right:auto!important;
}

html.km-mobile-device .km-home-section-shell{
    padding:11px!important;
    border-radius:20px!important;
}

html.km-mobile-device .km-section-head,
html.km-mobile-device .km-category-shelf-head{
    gap:8px!important;
    margin-bottom:10px!important;
}

html.km-mobile-device .km-section-title{
    font-size:20px!important;
    line-height:1.15!important;
}

html.km-mobile-device .km-section-sub{
    font-size:11.5px!important;
    line-height:1.35!important;
}

/* Hero mobile-device rules moved to /assets/css/home/hero-section.css. */


/* Category mobile-force rules moved to category-section.css. */
/* Product card mobile-force rules moved to product-card.css. */

/* Variant modal mobile-device rules moved to /assets/css/home/variant-modal.css. */

html.km-mobile-device .km-mini-cart,
html.km-mobile-device #km-mini-cart,
html.km-mobile-device #mini-cart,
html.km-mobile-device .km-mini-cart-panel,
html.km-mobile-device .km-mini-cart-drawer{
    left:10px!important;
    right:10px!important;
    bottom:74px!important;
    width:auto!important;
    max-height:min(76dvh,620px)!important;
    border-radius:20px!important;
}

html.km-mobile-device .km-mini-cart-items > *:not(.km-empty),
html.km-mobile-device #km-mini-cart-items > *:not(.km-empty),
html.km-mobile-device .mini-cart-items > *:not(.km-empty),
html.km-mobile-device .km-mini-cart-item,
html.km-mobile-device .mini-cart-item,
html.km-mobile-device .cart-mini-item,
html.km-mobile-device .km-cart-item{
    grid-template-columns:58px minmax(0,1fr) 96px!important;
    min-height:82px!important;
    gap:8px!important;
    padding:9px!important;
}

html.km-mobile-device .km-mini-cart-items > *:not(.km-empty) img,
html.km-mobile-device #km-mini-cart-items > *:not(.km-empty) img,
html.km-mobile-device .mini-cart-items > *:not(.km-empty) img,
html.km-mobile-device .km-mini-cart-item img,
html.km-mobile-device .mini-cart-item img,
html.km-mobile-device .cart-mini-item img,
html.km-mobile-device .km-cart-item img{
    width:58px!important;
    height:58px!important;
    max-width:58px!important;
    max-height:58px!important;
}

html.km-mobile-device .km-mini-cart .km-qty-controller,
html.km-mobile-device #km-mini-cart .km-qty-controller,
html.km-mobile-device #mini-cart .km-qty-controller,
html.km-mobile-device .km-mini-cart-panel .km-qty-controller,
html.km-mobile-device .km-mini-cart-drawer .km-qty-controller{
    width:96px!important;
    min-width:96px!important;
    max-width:96px!important;
    height:34px!important;
    min-height:34px!important;
    grid-template-columns:30px 1fr 30px!important;
}

/* Hero touch fallback moved to /assets/css/home/hero-section.css. */
