/*
Theme Name: KukuMall Commerce
Author: KukuMall
Description: Clean responsive WooCommerce + Dokan marketplace theme.
Version: 1.0.0
Text Domain: kukumall-commerce
*/
:root{--p:#7b2cbf;--pk:#e91e9b;--d:#29243a;--m:#747486;--bg:#f7f7fb;--b:#e7e3ef}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--d);font-family:Segoe UI,Arial,sans-serif;overflow-x:hidden}a{text-decoration:none;color:inherit}img{max-width:100%;height:auto}.container{width:min(1200px,calc(100% - 32px));margin:auto}
.km-topbar{height:34px;background:#35134f;color:#fff;font-size:12px}.km-topbar .container{height:100%;display:flex;justify-content:space-between;align-items:center}
.km-header{background:#fff;border-bottom:1px solid var(--b);position:relative;z-index:50}.km-header-main{height:72px;display:flex;align-items:center;gap:28px}.km-logo{display:flex;align-items:center;gap:8px;font-size:21px;font-weight:800;color:var(--p);white-space:nowrap}.km-logo-mark{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:linear-gradient(135deg,var(--p),var(--pk));color:#fff}
.km-search{flex:1;height:42px;display:flex;background:#f8f6fb;border:1px solid var(--b);border-radius:12px;overflow:hidden}.km-search input{flex:1;border:0;outline:0;background:transparent;padding:0 14px}.km-search button{width:48px;border:0;background:transparent}.km-actions{display:flex;gap:10px}.km-icon-btn{width:42px;height:42px;border:1px solid var(--b);border-radius:12px;background:#fff;display:grid;place-items:center;position:relative}.km-badge{position:absolute;top:-7px;right:-5px;min-width:18px;height:18px;border-radius:20px;background:#f02a9a;color:#fff;font-size:10px;display:grid;place-items:center}
.km-nav{background:#fff;border-top:1px solid #f0edf4}.km-nav .container{height:48px;display:flex;align-items:center;gap:30px}.km-nav a{font-size:14px;font-weight:600}.km-nav a:hover{color:var(--p)}
.km-breadcrumb{padding:24px 0 8px;color:var(--m);font-size:12px}.page-title{font-size:30px;margin:10px 0 24px}
.km-home-hero{padding:34px 0 20px}.km-hero{border-radius:22px;padding:48px;background:linear-gradient(135deg,#381252,#8b2fc8 55%,#e91e9b);color:#fff;display:grid;grid-template-columns:1.2fr .8fr;gap:30px;align-items:center}.km-hero h1{font-size:46px;line-height:1.05;margin:0 0 15px}.km-btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:10px;padding:11px 18px;font-weight:700}.km-btn-light{background:#fff;color:var(--p)}
.km-section{padding:26px 0}.km-section-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.km-section-title{font-size:22px;margin:0}.km-section-link{color:var(--p);font-weight:700}.km-cat-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}.km-cat-card{background:#fff;border:1px solid var(--b);border-radius:16px;padding:18px;text-align:center}.km-cat-icon{width:54px;height:54px;margin:auto auto 10px;border-radius:50%;background:#f3e9fb;color:var(--p);display:grid;place-items:center;font-weight:800}
.km-shop-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.km-shop-meta{color:var(--m);font-size:13px}.km-sort select{height:40px;border:1px solid var(--b);border-radius:9px;background:#fff;padding:0 12px}
.km-shop-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:22px;align-items:start}.km-filter-box{background:#fff;border:1px solid var(--b);border-radius:16px;padding:16px;position:sticky;top:18px}.km-filter-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.km-filter-close{display:none}.km-filter-group{margin-bottom:15px}.km-filter-group label{display:block;font-size:12px;font-weight:700;margin-bottom:7px}.km-filter-box select,.km-filter-box input{width:100%;height:40px;border:1px solid #ddd6e8;border-radius:9px;background:#fff;padding:0 10px}.km-price-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.km-check{display:flex!important;align-items:center;gap:8px}.km-check input{width:16px!important;height:16px!important}.km-filter-submit{width:100%;height:42px;color:#fff;background:linear-gradient(135deg,var(--p),var(--pk));border:0;border-radius:9px;font-weight:800}.km-filter-clear{display:block;text-align:center;color:var(--m);font-size:12px;margin-top:10px}.km-mobile-filter-button{display:none}
.woocommerce ul.products,.woocommerce-page ul.products{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:16px!important;margin:0!important;padding:0!important}.woocommerce ul.products:before,.woocommerce ul.products:after{display:none!important}.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{width:100%!important;margin:0!important;float:none!important;clear:none!important;background:#fff;border:1px solid var(--b);border-radius:14px;padding:10px;overflow:hidden;position:relative}.woocommerce ul.products li.product a img{width:100%!important;aspect-ratio:1/1;object-fit:contain;margin:0 0 10px!important;background:#faf9fc;border-radius:10px}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:14px;font-weight:700;min-height:42px;padding:0!important}.woocommerce ul.products li.product .price{font-size:14px;font-weight:800;color:#9b8500;margin:7px 0 10px!important}.woocommerce ul.products li.product .button{width:100%;height:38px;display:flex;align-items:center;justify-content:center;margin:0!important;border:0!important;border-radius:9px!important;background:linear-gradient(135deg,var(--p),var(--pk))!important;color:#fff!important;font-size:11px;font-weight:800}.woocommerce span.onsale{background:#a9a900!important;min-width:40px!important;min-height:40px!important;padding:0!important;display:grid!important;place-items:center;font-size:10px!important;right:7px!important;top:7px!important}
.km-footer{background:#271037;color:#fff;margin-top:40px;padding:45px 0 80px}.km-footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:30px}.km-footer p,.km-footer a{color:#d9cfe1;font-size:13px}.km-footer-links{display:grid;gap:8px}.km-copyright{border-top:1px solid #ffffff1f;margin-top:28px;padding-top:18px;color:#bfb1c9;font-size:12px}.km-mobile-bottom{display:none}
@media(max-width:900px){.km-hero{grid-template-columns:1fr;padding:34px}.km-cat-grid{grid-template-columns:repeat(3,1fr)}.km-shop-layout{grid-template-columns:210px minmax(0,1fr)}.woocommerce ul.products,.woocommerce-page ul.products{grid-template-columns:repeat(3,minmax(0,1fr))!important}.km-footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.container{width:calc(100% - 24px)}.km-topbar{display:none}.km-header-main{height:58px;gap:10px}.km-logo{font-size:17px}.km-logo-mark{width:30px;height:30px}.km-search{position:absolute;top:65px;left:12px;right:12px;height:38px}.km-actions{margin-left:auto}.km-icon-btn{width:36px;height:36px}.km-nav{margin-top:47px}.km-nav .container{height:42px;gap:18px;overflow:auto;white-space:nowrap}.km-nav a{font-size:12px}.page-title{font-size:24px}.km-hero{padding:25px;border-radius:16px}.km-hero h1{font-size:31px}.km-cat-grid{grid-template-columns:repeat(3,1fr);gap:8px}.km-cat-card{padding:12px 5px}.km-cat-icon{width:42px;height:42px}.km-shop-layout{display:block}.km-filter-box{display:none;position:fixed;z-index:200;left:12px;right:12px;top:78px;max-height:calc(100vh - 150px);overflow:auto;box-shadow:0 20px 60px #0004}.km-filter-box.km-mobile-filter-open{display:block}.km-filter-close{display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--b);border-radius:8px;background:#fff}.km-mobile-filter-button{display:flex;width:100%;height:40px;align-items:center;justify-content:center;border:1px solid var(--b);border-radius:10px;background:#fff;font-weight:800;margin-bottom:12px}.km-shop-toolbar{flex-wrap:wrap}.km-sort{margin-left:auto}.woocommerce ul.products,.woocommerce-page ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{padding:7px}.woocommerce ul.products li.product a img{margin-bottom:7px!important}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:12px;min-height:36px}.woocommerce ul.products li.product .price{font-size:12px}.woocommerce ul.products li.product .button{height:34px;font-size:10px}.woocommerce span.onsale{min-width:32px!important;min-height:32px!important;font-size:8px!important}.km-footer-grid{grid-template-columns:1fr}.km-mobile-bottom{position:fixed;display:grid;grid-template-columns:repeat(5,1fr);bottom:0;left:0;right:0;height:58px;background:#fff;border-top:1px solid var(--b);z-index:150;box-shadow:0 -5px 20px #0001}.km-mobile-bottom a{display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:9px;color:#686476;gap:3px}}


/* HOME CATEGORY CARDS */
.km-home-categories{padding-top:18px}
.km-home-categories .km-cat-grid{grid-template-columns:repeat(8,minmax(0,1fr));gap:12px}
.km-home-categories .km-cat-card{
  min-height:128px;
  padding:14px 8px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:5px;
  transition:transform .2s,box-shadow .2s,border-color .2s;
}
.km-home-categories .km-cat-card:hover{
  transform:translateY(-3px);
  box-shadow:0 8px 22px rgba(38,34,56,.10);
  border-color:#d9c6e8;
}
.km-home-categories .km-cat-icon{
  width:58px;
  height:58px;
  margin:0 0 5px;
  overflow:hidden;
  flex:none;
}
.km-home-categories .km-cat-icon .km-cat-image{
  width:100%;
  height:100%;
  object-fit:cover;
  border-radius:50%;
}
.km-home-categories .km-cat-card strong{
  font-size:12px;
  line-height:1.2;
  text-align:center;
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.km-home-categories .km-cat-card span{
  font-size:10px;
  color:var(--m);
}
.km-no-categories{
  background:#fff;
  border:1px solid var(--b);
  border-radius:14px;
  padding:20px;
  text-align:center;
  color:var(--m);
}
@media(max-width:900px){
 .km-home-categories .km-cat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:700px){
 .km-home-categories{padding-top:10px}
 .km-home-categories .km-cat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
 .km-home-categories .km-cat-card{min-height:100px;padding:9px 4px;border-radius:12px}
 .km-home-categories .km-cat-icon{width:44px;height:44px}
 .km-home-categories .km-cat-card strong{font-size:10px}
 .km-home-categories .km-cat-card span{font-size:8px}
}
/* =====================================
   KUKUMALL SHOP FILTER - FINAL FIX
===================================== */

html body .km-filter-open{
    display:block !important;
    width:100%;
    min-height:44px;
    margin-bottom:15px;
}

html body .km-filter-panel{
    display:none !important;
}

html body .km-filter-panel.km-filter-show{
    display:block !important;
}

@media (max-width:700px){

    html body .km-filter-open{
        display:block !important;
        min-height:44px;
        margin-bottom:12px;
    }

    html body .km-filter-panel{
        display:none !important;
    }

    html body .km-filter-panel.km-filter-show{
        display:block !important;
    }

}
/* =========================================
   SHOP FILTER - DESKTOP HIDE ONLY
   Android/Mobile unchanged
========================================= */

@media (min-width: 701px) {

    .km-shop-filter-area,
    .km-filter-wrapper,
    .km-filter-open,
    .km-filter-panel,
    .km-new-filter-panel,
    .km-filter-button,
    .km-filter-form {
        display: none !important;
    }

}
/* KukuMall - Hide Shop Filter on Desktop */
@media (min-width: 701px) {
    body .km-shop-filter-area {
        display: none !important;
        visibility: hidden !important;
        height: 0 !important;
        overflow: hidden !important;
        margin: 0 !important;
        padding: 0 !important;
    }
}
/* =========================================================
   KUKUMALL - FINAL MY ACCOUNT ORDERS DESIGN
   Orders / Invoice / Tracking Ready
   ========================================================= */

body.woocommerce-account .woocommerce-orders-table {
    width: 100%;
    border-collapse: separate !important;
    border-spacing: 0;
    background: #fff;
    border: 1px solid #eadff7;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 8px 25px rgba(45, 20, 70, 0.06);
}

body.woocommerce-account .woocommerce-orders-table thead th {
    background: #faf7ff;
    color: #342047;
    font-size: 13px;
    font-weight: 700;
    padding: 16px 14px;
    border-bottom: 1px solid #eadff7;
    white-space: nowrap;
}

body.woocommerce-account .woocommerce-orders-table tbody td {
    padding: 17px 14px;
    color: #4b4354;
    font-size: 13px;
    border-bottom: 1px solid #f0eaf5;
    vertical-align: middle;
}

body.woocommerce-account .woocommerce-orders-table tbody tr:last-child td {
    border-bottom: 0;
}

body.woocommerce-account .woocommerce-orders-table tbody tr:hover {
    background: #fcfaff;
}

body.woocommerce-account .woocommerce-orders-table__cell-order-number a {
    color: #6324d8;
    font-weight: 800;
    text-decoration: none;
}

body.woocommerce-account .woocommerce-orders-table__cell-order-status {
    font-weight: 700;
}

/* Status */

body.woocommerce-account .woocommerce-orders-table__cell-order-status {
    color: #16804a;
}

/* Action button */

body.woocommerce-account .woocommerce-orders-table__cell-order-actions a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 72px;
    height: 36px;
    padding: 0 15px;
    background: linear-gradient(135deg, #7224e8, #5b16c9);
    color: #fff !important;
    border: 0;
    border-radius: 9px;
    font-size: 12px;
    font-weight: 700;
    text-decoration: none !important;
    transition: all .2s ease;
}

body.woocommerce-account .woocommerce-orders-table__cell-order-actions a:hover {
    transform: translateY(-1px);
    box-shadow: 0 5px 14px rgba(114,36,232,.25);
}

/* Order details page */

body.woocommerce-account .woocommerce-order {
    background: transparent;
}

body.woocommerce-account .woocommerce-order h2 {
    color: #29223a;
    font-size: 24px;
    font-weight: 800;
    margin-top: 28px;
    margin-bottom: 16px;
}

body.woocommerce-account .woocommerce-order .woocommerce-table {
    width: 100%;
    background: #fff;
    border: 1px solid #eadff7;
    border-radius: 14px;
    overflow: hidden;
    border-collapse: separate;
    border-spacing: 0;
}

body.woocommerce-account .woocommerce-order .woocommerce-table th,
body.woocommerce-account .woocommerce-order .woocommerce-table td {
    padding: 14px 15px;
    border-bottom: 1px solid #eee8f4;
}

body.woocommerce-account .woocommerce-order .woocommerce-table tr:last-child th,
body.woocommerce-account .woocommerce-order .woocommerce-table tr:last-child td {
    border-bottom: 0;
}

/* Address cards */

body.woocommerce-account .woocommerce-customer-details address {
    background: #fff;
    border: 1px solid #eadff7;
    border-radius: 14px;
    padding: 18px !important;
    box-shadow: 0 6px 20px rgba(45,20,70,.05);
}

/* Mobile */

@media (max-width: 700px) {

    body.woocommerce-account .woocommerce-orders-table {
        display: block;
        border: 0;
        box-shadow: none;
        background: transparent;
        overflow: visible;
    }

    body.woocommerce-account .woocommerce-orders-table thead {
        display: none;
    }

    body.woocommerce-account .woocommerce-orders-table tbody,
    body.woocommerce-account .woocommerce-orders-table tr,
    body.woocommerce-account .woocommerce-orders-table td {
        display: block;
        width: 100%;
        box-sizing: border-box;
    }

    body.woocommerce-account .woocommerce-orders-table tbody tr {
        background: #fff;
        border: 1px solid #eadff7;
        border-radius: 14px;
        margin-bottom: 14px;
        padding: 13px;
        box-shadow: 0 5px 18px rgba(45,20,70,.05);
    }

    body.woocommerce-account .woocommerce-orders-table tbody td {
        border: 0;
        padding: 7px 4px;
        display: flex;
        justify-content: space-between;
        align-items: center;
        gap: 10px;
    }

    body.woocommerce-account .woocommerce-orders-table tbody td::before {
        font-weight: 700;
        color: #342047;
    }

    body.woocommerce-account .woocommerce-orders-table__cell-order-number::before {
        content: "Order";
    }

    body.woocommerce-account .woocommerce-orders-table__cell-order-date::before {
        content: "Date";
    }

    body.woocommerce-account .woocommerce-orders-table__cell-order-status::before {
        content: "Status";
    }

    body.woocommerce-account .woocommerce-orders-table__cell-order-total::before {
        content: "Total";
    }

    body.woocommerce-account .woocommerce-orders-table__cell-order-actions {
        margin-top: 8px;
        padding-top: 11px !important;
        border-top: 1px solid #eee8f4 !important;
    }

    body.woocommerce-account .woocommerce-orders-table__cell-order-actions::before {
        content: "Actions";
    }

    body.woocommerce-account .woocommerce-orders-table__cell-order-actions a {
        min-width: 82px;
        height: 38px;
    }

    body.woocommerce-account .woocommerce-order h2 {
        font-size: 20px;
    }

    body.woocommerce-account .woocommerce-order .woocommerce-table {
        font-size: 12px;
    }

    body.woocommerce-account .woocommerce-order .woocommerce-table th,
    body.woocommerce-account .woocommerce-order .woocommerce-table td {
        padding: 11px 9px;
    }

}
