/*
Theme Name: Smart Store
Theme URI: https://example.com/
Author: Smart Store
Description: Custom premium WooCommerce electronics store theme for Pakistan. Teal, gray and white.
Version: 4.5.50
Requires at least: 6.3
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: smart-store
*/

:root{
 --ss-teal:#009fa3;
 --ss-teal-dark:#007f83;
 --ss-navy:#0b1f3a;
 --ss-amber:#ffb000;
 --ss-gray-900:#1f2937;
 --ss-gray-700:#4b5563;
 --ss-gray-100:#f3f4f6;
 --ss-gray-200:#e5e7eb;
 --ss-white:#fff;
 --ss-radius:14px;
 --ss-shadow:0 8px 28px rgba(15,23,42,.08);
}
*{box-sizing:border-box}
body{margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ss-gray-900);background:#fff;line-height:1.55}
a{color:var(--ss-teal);text-decoration:none}
a:hover{color:var(--ss-teal-dark)}
img{max-width:100%;height:auto}
.ss-container{width:min(1240px,calc(100% - 32px));margin:auto}
.ss-topbar{background:var(--ss-navy);color:#fff;font-size:13px}
.ss-topbar .ss-container{display:flex;justify-content:space-between;gap:20px;padding:8px 0}
.ss-header{background:#fff;border-bottom:1px solid var(--ss-gray-200);position:sticky;top:0;z-index:50}
.ss-main-header{display:grid;grid-template-columns:220px 1fr auto;align-items:center;gap:24px;padding:16px 0}
.ss-logo img{max-height:54px;width:auto}
.ss-search{display:flex;border:2px solid var(--ss-teal);border-radius:10px;overflow:hidden;background:#fff}
.ss-search input{border:0;outline:0;padding:13px 15px;flex:1;font-size:15px}
.ss-search button{border:0;background:var(--ss-teal);color:#fff;padding:0 20px;font-weight:700;cursor:pointer}
.ss-actions{display:flex;gap:10px;align-items:center}
.ss-action{display:inline-flex;flex-direction:column;align-items:center;color:var(--ss-gray-700);font-size:12px;min-width:55px}
.ss-action span:first-child{font-size:20px}
.ss-nav{border-top:1px solid var(--ss-gray-100);background:#fff}
.ss-nav-inner{display:flex;align-items:center;gap:24px;min-height:48px}
.ss-nav a{font-weight:700;color:var(--ss-gray-900);font-size:14px}
.ss-nav-dropdown{position:relative;align-self:stretch;display:flex;align-items:center}
.ss-nav-parent{display:flex;align-items:center;gap:4px;height:100%}
.ss-nav-parent span{font-size:10px;color:var(--ss-gray-700)}
.ss-nav-dropdown-panel{display:none;position:absolute;top:100%;left:-18px;z-index:250;background:#fff;border:1px solid var(--ss-gray-200);border-radius:0 0 12px 12px;box-shadow:0 16px 35px rgba(15,23,42,.14);padding:20px;min-width:260px}
.ss-nav-dropdown:hover .ss-nav-dropdown-panel,.ss-nav-dropdown:focus-within .ss-nav-dropdown-panel{display:grid}
.ss-nav-dropdown-wide{grid-template-columns:repeat(2,minmax(190px,1fr));gap:24px;min-width:470px}
.ss-nav-dropdown-col{display:flex;flex-direction:column;gap:9px}
.ss-nav-dropdown-col strong{font-size:13px;color:var(--ss-teal);padding-bottom:7px;border-bottom:1px solid var(--ss-gray-100)}
.ss-nav-dropdown-col a{font-weight:600;font-size:13px;color:var(--ss-gray-700)}
.ss-nav-dropdown-col a:hover{color:var(--ss-teal)}
.ss-nav-dropdown-col .ss-nav-view-all{color:var(--ss-teal);font-weight:800;margin-top:3px}
.ss-cascade-menu{min-width:240px;padding:0;border-radius:0 0 12px 12px;overflow:visible}
.ss-cascade-types{width:240px;padding:16px;display:flex;flex-direction:column;gap:4px}
.ss-cascade-types>strong,.ss-cascade-level>strong{color:var(--ss-teal);font-size:13px;padding:4px 10px 10px;border-bottom:1px solid var(--ss-gray-100);margin-bottom:4px}
.ss-cascade-types a,.ss-cascade-level a{display:flex;justify-content:space-between;gap:18px;padding:8px 10px;border-radius:7px;color:var(--ss-gray-700);font-size:13px;font-weight:650}
.ss-cascade-types a:hover,.ss-cascade-level a:hover{background:#eefafa;color:var(--ss-teal)}
.ss-cascade-item{position:relative}
.ss-cascade-level{display:none;position:absolute;left:100%;top:-16px;width:240px;min-height:100%;padding:16px;background:#fff;border:1px solid var(--ss-gray-200);box-shadow:0 16px 35px rgba(15,23,42,.14)}
.ss-cascade-item:hover>.ss-cascade-level,.ss-cascade-item:focus-within>.ss-cascade-level{display:block}
.ss-cascade-models{top:-1px;width:320px;max-height:430px;overflow:auto;border-radius:0 12px 12px 0}
.ss-cascade-brands{border-radius:0}
.ss-allcats-menu{display:block!important;width:850px!important;min-height:380px;padding:0!important;overflow:visible!important;grid-template-columns:none!important;margin-top:0;border-radius:0 16px 16px 16px!important;box-shadow:0 24px 48px rgba(15,23,42,.16)!important}
.ss-allcats-main{position:static;width:260px;min-height:380px;padding:12px 0 12px 12px;background:#f8fafc;border-radius:0 0 0 16px}
.ss-allcats-item{position:static}
.ss-allcats-item>a{margin-right:12px;display:flex!important;justify-content:space-between;padding:11px 14px;border-radius:8px;font-size:14px!important;color:var(--ss-gray-900)!important}
.ss-allcats-item:hover>a,.ss-allcats-item:focus-within>a{background:#fff;color:var(--ss-teal)!important;box-shadow:0 1px 6px rgba(15,23,42,.08)}
.ss-allcats-subpanel{display:none;position:absolute;left:260px;top:0;bottom:0;width:590px;min-height:380px;background:#fff;border-left:1px solid var(--ss-gray-200);border-radius:0 16px 16px 0;padding:28px 28px 28px 32px;overflow:auto;grid-template-columns:1fr 220px;gap:24px}
.ss-allcats-item:hover>.ss-allcats-subpanel,.ss-allcats-item:focus-within>.ss-allcats-subpanel{display:grid}
.ss-allcats-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:8px 18px}
.ss-allcats-links>strong{grid-column:1/-1;color:var(--ss-teal);font-size:15px;padding-bottom:10px;border-bottom:1px solid var(--ss-gray-100);margin-bottom:4px}
.ss-allcats-links>a{font-size:14px!important;font-weight:500!important;color:var(--ss-gray-700)!important;padding:4px 0}
.ss-allcats-links>a.ss-allcats-viewall{grid-column:1/-1;margin-top:10px;padding-top:14px;border-top:1px solid var(--ss-gray-100);color:var(--ss-teal)!important;font-weight:800!important}
.ss-allcats-links>a:hover{color:var(--ss-teal)!important}
.ss-allcats-promo{align-self:stretch;border-radius:14px;padding:24px!important;background:linear-gradient(145deg,var(--ss-navy),#123b65);color:#fff!important;display:flex!important;flex-direction:column;justify-content:flex-end;gap:8px}
.ss-allcats-promo small{color:var(--ss-amber);font-weight:900;letter-spacing:1px}
.ss-allcats-promo strong{font-size:24px}
.ss-allcats-promo span{font-size:13px;color:#dbeafe}
.ss-allcats{background:var(--ss-teal);color:#fff!important;padding:13px 18px;border-radius:8px 8px 0 0}
.ss-hero{background:linear-gradient(135deg,#e7fbfb,#f7f8fa);padding:28px 0}
.ss-hero-grid{display:grid;grid-template-columns:2fr 1fr;gap:18px}
.ss-hero-card{border-radius:18px;overflow:hidden;min-height:320px;display:flex;align-items:center;padding:42px;background:linear-gradient(135deg,var(--ss-teal-dark),var(--ss-teal));color:#fff}
.ss-hero-card h1{font-size:clamp(34px,5vw,58px);line-height:1.05;margin:0 0 14px}
.ss-hero-card p{font-size:18px;max-width:580px}
.ss-btn{display:inline-block;background:var(--ss-teal);color:#fff;padding:11px 18px;border-radius:9px;font-weight:800;border:0;cursor:pointer}
.ss-btn:hover{background:var(--ss-teal-dark);color:#fff}
.ss-btn-light{background:#fff;color:var(--ss-teal)}
.ss-promo-stack{display:grid;gap:18px}
.ss-promo{border-radius:18px;background:#fff;border:1px solid var(--ss-gray-200);padding:26px;box-shadow:var(--ss-shadow)}
.ss-section{padding:42px 0}
.ss-section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:20px}
.ss-section-head h2{margin:0;font-size:28px}
.ss-cats{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}
.ss-cat{padding:22px 14px;border:1px solid var(--ss-gray-200);border-radius:var(--ss-radius);text-align:center;background:#fff;transition:.2s}
.ss-cat:hover{transform:translateY(-3px);box-shadow:var(--ss-shadow);border-color:#b7e7e8}
.ss-cat-icon{font-size:32px;margin-bottom:8px}
.ss-products{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.ss-product{border:1px solid var(--ss-gray-200);border-radius:var(--ss-radius);overflow:hidden;background:#fff;position:relative;transition:.2s}
.ss-product:hover{transform:translateY(-3px);box-shadow:var(--ss-shadow)}
.ss-product-media{background:#f8fafc;aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;padding:20px;position:relative}
.ss-product-media img{width:100%;height:100%;object-fit:contain}
.ss-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;text-align:center;color:var(--ss-gray-700);font-weight:800;padding:20px}
.ss-badge{position:absolute;top:12px;left:12px;background:var(--ss-teal);color:#fff;padding:5px 8px;border-radius:7px;font-size:11px;font-weight:800}
.ss-product-body{padding:16px}
.ss-brand{font-size:12px;color:var(--ss-teal);font-weight:800}
.ss-product h3{font-size:15px;line-height:1.35;margin:5px 0 8px}
.ss-price{font-size:18px;font-weight:900;color:var(--ss-gray-900)}
.ss-old{font-size:13px;color:#9ca3af;text-decoration:line-through;margin-right:6px}
.ss-card-actions{display:flex;gap:8px;margin-top:12px}
.ss-card-actions .ss-btn{flex:1;text-align:center;padding:9px 8px;font-size:13px}
.ss-icon-btn{border:1px solid var(--ss-gray-200);background:#fff;border-radius:8px;padding:8px 10px;cursor:pointer}
.ss-trust{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.ss-trust-card{border:1px solid var(--ss-gray-200);border-radius:var(--ss-radius);padding:20px;background:#fff}
.ss-trust-card strong{display:block;margin-bottom:5px}
.ss-footer{background:var(--ss-navy);color:#d1d5db;margin-top:40px}
.ss-footer a{color:#e5e7eb}
.ss-footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:32px;padding:42px 0}
.ss-footer h3{color:#fff;font-size:16px}
.ss-footer ul{list-style:none;padding:0;margin:0}
.ss-footer li{margin:8px 0}
.ss-copyright{border-top:1px solid #374151;padding:16px 0;font-size:13px}
.ss-live-results{position:absolute;left:0;right:0;top:100%;background:#fff;border:1px solid var(--ss-gray-200);border-radius:0 0 12px 12px;box-shadow:var(--ss-shadow);z-index:100;display:none;max-height:420px;overflow:auto}
.ss-search-wrap{position:relative}
.ss-live-header{position:sticky;top:0;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px;background:#fff;border-bottom:1px solid var(--ss-gray-100);font-size:13px;color:var(--ss-gray-700)}
.ss-live-close{border:0;background:var(--ss-gray-100);color:var(--ss-gray-700);width:26px;height:26px;line-height:1;border-radius:50%;font-size:16px;cursor:pointer;flex:none}
.ss-live-close:hover{background:var(--ss-gray-200)}
.ss-live-empty{padding:20px 14px;color:var(--ss-gray-700);font-size:14px}
.ss-live-categories{display:flex;flex-wrap:wrap;gap:8px;padding:10px 14px;border-bottom:1px solid var(--ss-gray-100)}
.ss-live-category{background:var(--ss-gray-100);color:var(--ss-gray-900);font-size:13px;padding:5px 12px;border-radius:999px}
.ss-live-category:hover{background:var(--ss-gray-200);color:var(--ss-gray-900)}
.ss-live-products{display:flex;flex-direction:column}
.ss-live-item{display:flex;align-items:center;gap:12px;padding:10px 14px;color:inherit;border-bottom:1px solid var(--ss-gray-100)}
.ss-live-item:last-child{border-bottom:0}
.ss-live-item:hover{background:var(--ss-gray-100);color:inherit}
.ss-live-thumb{width:48px;height:48px;flex:none;border-radius:8px;overflow:hidden;background:var(--ss-gray-100);display:flex;align-items:center;justify-content:center}
.ss-live-thumb img{width:100%;height:100%;object-fit:cover}
.ss-live-info{display:flex;flex-direction:column;gap:2px;min-width:0}
.ss-live-name{font-size:14px;color:var(--ss-teal-dark);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ss-live-price{font-size:13px;font-weight:700;color:var(--ss-gray-900)}
.ss-live-item{display:flex;gap:12px;padding:12px;border-bottom:1px solid var(--ss-gray-100);color:inherit}
.ss-live-item img{width:52px;height:52px;object-fit:contain;background:#f8fafc;border-radius:8px}
.ss-live-item small{color:var(--ss-gray-700)}
.ss-cart-drawer{position:fixed;top:0;right:-430px;width:min(430px,100%);height:100vh;background:#fff;z-index:1000;box-shadow:-10px 0 30px rgba(0,0,0,.18);transition:.25s;padding:24px;overflow:auto}
.ss-cart-drawer.open{right:0}
.ss-cart-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.35);z-index:999}
.ss-cart-overlay.open{display:block}
.ss-mobile-bar{display:none}
.woocommerce .site-main,.site-main{padding:30px 0}
.woocommerce ul.products{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.woocommerce ul.products::before,.woocommerce ul.products::after{display:none!important}
.woocommerce ul.products li.product{width:auto!important;margin:0!important;border:1px solid var(--ss-gray-200);border-radius:var(--ss-radius);padding:14px;background:#fff}
.woocommerce div.product{background:#fff}
.woocommerce div.product .product_title{font-size:32px}
.woocommerce span.onsale{background:var(--ss-teal)}
.woocommerce button.button,.woocommerce a.button{background:var(--ss-teal);color:#fff;border-radius:8px}
.woocommerce button.button:hover,.woocommerce a.button:hover{background:var(--ss-teal-dark);color:#fff}
@media(max-width:1000px){
 .ss-main-header{grid-template-columns:170px 1fr}
 .ss-actions{display:none}
 .ss-cats{grid-template-columns:repeat(3,1fr)}
 .ss-products,.woocommerce ul.products{grid-template-columns:repeat(3,1fr)}
 .ss-trust{grid-template-columns:repeat(2,1fr)}
 .ss-footer-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:700px){
 .ss-topbar{display:none}
 .ss-main-header{grid-template-columns:1fr auto;gap:10px;padding:10px 0}
 .ss-logo img{max-height:42px}
 .ss-search-wrap{grid-column:1/-1;grid-row:2}
 .ss-nav{display:none}
 .ss-hero-grid{grid-template-columns:1fr}
 .ss-hero-card{min-height:300px;padding:28px}
 .ss-cats{grid-template-columns:repeat(2,1fr)}
 .ss-products,.woocommerce ul.products{grid-template-columns:repeat(2,1fr);gap:10px}
 .ss-product-body{padding:11px}
 .ss-product h3{font-size:13px}
 .ss-card-actions{flex-direction:column}
 .ss-trust{grid-template-columns:1fr}
 .ss-footer-grid{grid-template-columns:1fr}
 .ss-mobile-bar{display:flex;position:fixed;bottom:0;left:0;right:0;background:#fff;border-top:1px solid var(--ss-gray-200);z-index:90;justify-content:space-around;padding:8px}
 .ss-mobile-bar a{font-size:11px;text-align:center;color:var(--ss-gray-900)}
}

/* Smart Store v2 catalog + filters */
.ss-shop-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}
.ss-shop-head h1{margin:0}
.ss-shop-layout{display:grid;grid-template-columns:270px minmax(0,1fr);gap:28px;align-items:start}
.ss-shop-products{min-width:0}
.ss-filter-panel{border:1px solid var(--ss-gray-200);border-radius:var(--ss-radius);background:#fff;position:sticky;top:118px;max-height:calc(100vh - 138px);overflow:auto}
.ss-filter-head{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid var(--ss-gray-200);font-size:17px}
.ss-filter-close{display:none;border:0;background:none;font-size:28px;line-height:1;cursor:pointer}
.ss-filter-form{padding:0 18px 18px}
.ss-filter-group{padding:16px 0;border-bottom:1px solid var(--ss-gray-100)}
.ss-filter-group h4{font-size:14px;margin:0 0 10px}
.ss-filter-options{display:grid;gap:8px;max-height:190px;overflow:auto}
.ss-filter-options label{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center;font-size:13px;cursor:pointer}
.ss-filter-options small{color:#9ca3af}
.ss-price-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.ss-price-row input{width:100%;border:1px solid var(--ss-gray-200);border-radius:8px;padding:9px}
.ss-filter-actions{display:grid;gap:10px;padding-top:18px}
.ss-clear-filter{text-align:center;font-size:13px}
.ss-spec-chips{font-size:12px;color:var(--ss-gray-700);margin-top:5px;line-height:1.4}
.ss-mobile-filter-toggle{display:none;border:1px solid var(--ss-gray-200);background:#fff;border-radius:8px;padding:10px 14px;font-weight:700}
.ss-filter-overlay{display:none}
@media(max-width:900px){
 .ss-shop-layout{grid-template-columns:1fr}
 .ss-mobile-filter-toggle{display:inline-block}
 .ss-filter-panel{position:fixed;left:-340px;top:0;bottom:0;width:min(330px,88vw);max-height:none;border-radius:0;z-index:1200;transition:.25s;overflow:auto}
 .ss-filter-panel.open{left:0}
 .ss-filter-close{display:block}
 .ss-filter-overlay{position:fixed;inset:0;background:rgba(0,0,0,.35);z-index:1190}
 .ss-filter-overlay.open{display:block}
}


/* Smart Store v2.5 polish */
.ss-action-icon{width:23px;height:23px;display:flex;align-items:center;justify-content:center}
.ss-action-icon svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.ss-action span:first-child{font-size:inherit}
.ss-actions .ss-action{gap:3px}
.ss-social-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:16px}
.ss-social-links a{display:inline-flex;padding:7px 10px;border:1px solid #4b5563;border-radius:8px;font-size:12px}
.ss-active-filters{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 16px;padding:12px 14px;background:#f8fafc;border:1px solid var(--ss-gray-200);border-radius:12px}
.ss-active-filters strong{font-size:13px}
.ss-filter-chip{display:inline-flex;align-items:center;padding:6px 9px;background:#fff;border:1px solid #cbd5e1;border-radius:999px;color:var(--ss-gray-900);font-size:12px}
.ss-filter-chip:hover{border-color:var(--ss-teal);color:var(--ss-teal)}
.ss-clear-all{margin-left:auto;font-size:12px;font-weight:800}
.ss-stock{font-size:12px;margin-top:7px;font-weight:700}
.ss-in-stock{color:#15803d}
.ss-out-stock{color:#b91c1c}
.ss-product-video{max-width:980px}
.ss-product-video iframe{width:100%;aspect-ratio:16/9;height:auto;border:0;border-radius:14px}
.woocommerce ul.products li.product{position:relative;transition:.2s}
.woocommerce ul.products li.product:hover{transform:translateY(-3px);box-shadow:var(--ss-shadow)}
.woocommerce ul.products li.product img{background:#f8fafc;border-radius:10px;aspect-ratio:1/1;object-fit:contain}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:15px!important;line-height:1.4;min-height:42px}
.woocommerce ul.products li.product .price{font-weight:900;color:var(--ss-gray-900)!important}
.woocommerce .woocommerce-ordering select{border:1px solid var(--ss-gray-200);border-radius:8px;padding:9px 12px;background:#fff}
@media(max-width:700px){
 .ss-active-filters{align-items:flex-start}
 .ss-clear-all{margin-left:0;width:100%}
}


/* Smart Store v2.6 — consistent single-product page width */
.single-product .site-main,
.single-product main.site-main,
.single-product #primary,
.single-product .content-area{
    width:min(1240px,calc(100% - 32px));
    max-width:1240px;
    margin-left:auto;
    margin-right:auto;
}

.single-product .woocommerce-breadcrumb{
    margin-top:26px;
    margin-bottom:18px;
}

.single-product div.product{
    width:100%;
    max-width:none;
}

@media(max-width:700px){
    .single-product .site-main,
    .single-product main.site-main,
    .single-product #primary,
    .single-product .content-area{
        width:min(100% - 20px,1240px);
    }
}


/* Smart Store v2.7 — keep the entire single-product page aligned */
.ss-single-product-page{
    padding:28px 0 44px;
}
.ss-single-product-page > .ss-container{
    width:min(1240px,calc(100% - 32px));
    max-width:1240px;
    margin:0 auto;
}
.ss-single-product-page .woocommerce-breadcrumb{
    margin:0 0 20px;
}
.ss-single-product-page div.product,
.ss-single-product-page .woocommerce-tabs,
.ss-single-product-page .related,
.ss-single-product-page .upsells{
    width:100%;
    max-width:none;
}
.ss-single-product-page .woocommerce-tabs{
    clear:both;
    margin-top:36px;
}
.ss-single-product-page .woocommerce-tabs .panel{
    width:100%;
}
@media(max-width:700px){
    .ss-single-product-page > .ss-container{
        width:min(100% - 20px,1240px);
    }
}


/* Smart Store v2.8 — Product Experience */
.single-product div.product .summary .price{font-size:25px;font-weight:900;color:var(--ss-gray-900)!important;margin-bottom:8px}
.ss-savings{display:inline-flex;gap:5px;align-items:center;background:#fff7ed;color:#9a3412;border:1px solid #fed7aa;border-radius:8px;padding:7px 10px;font-size:13px;margin:0 0 16px}
.ss-variation-help{font-size:13px;color:var(--ss-gray-600);margin:4px 0 12px}
.single-product table.variations{margin-bottom:10px}
.single-product table.variations th{vertical-align:top;padding-top:11px}
.single-product table.variations select.ss-select-fallback{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important}
.ss-variation-pills{display:flex;gap:8px;flex-wrap:wrap;padding:3px 0 8px}
.ss-variation-pill{appearance:none;border:1px solid #cbd5e1;background:#fff;color:var(--ss-gray-900);border-radius:8px;padding:9px 13px;font:inherit;font-size:13px;font-weight:700;cursor:pointer;transition:.15s}
.ss-variation-pill:hover{border-color:var(--ss-teal);color:var(--ss-teal)}
.ss-variation-pill.is-active{border-color:var(--ss-teal);background:var(--ss-teal);color:#fff;box-shadow:0 0 0 2px rgba(15,139,141,.12)}
.ss-variation-pill.is-disabled{opacity:.35;text-decoration:line-through;cursor:not-allowed}
.single-product form.cart{display:flex!important;align-items:center;gap:10px;flex-wrap:wrap;margin-top:18px}
.single-product form.cart .quantity{display:inline-flex!important;align-items:center;height:46px;border:1px solid #cbd5e1;border-radius:9px;overflow:hidden;background:#fff;margin:0!important}
.single-product form.cart .quantity .qty{width:48px!important;height:44px!important;border:0!important;border-left:1px solid #e5e7eb!important;border-right:1px solid #e5e7eb!important;border-radius:0!important;text-align:center!important;padding:0!important;box-shadow:none!important;-moz-appearance:textfield}
.single-product form.cart .quantity .qty::-webkit-inner-spin-button,.single-product form.cart .quantity .qty::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.ss-qty-btn{width:38px;height:44px;border:0;background:#fff;color:var(--ss-gray-900);font-size:20px;font-weight:700;cursor:pointer}
.ss-qty-btn:hover{background:#f1f5f9;color:var(--ss-teal)}
.single-product form.cart .single_add_to_cart_button,
.single-product form.cart .ss-whatsapp-product,
.single-product form.cart button:not(.ss-qty-btn):not(.ss-variation-pill){min-height:46px!important;border-radius:9px!important;padding:0 20px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;font-weight:800!important}
.single-product form.cart .single_add_to_cart_button{background:var(--ss-teal)!important;color:#fff!important;border:1px solid var(--ss-teal)!important}
.single-product form.cart .single_add_to_cart_button:hover{filter:brightness(.94)}
.single-product form.cart .ss-whatsapp-product{background:#fff!important;color:var(--ss-gray-900)!important;border:1px solid #cbd5e1!important}
.ss-buying-confidence{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:20px 0 4px;padding-top:18px;border-top:1px solid #e5e7eb}
.ss-buying-confidence>div{display:flex;flex-direction:column;gap:2px;background:#f8fafc;border:1px solid #e5e7eb;border-radius:10px;padding:11px 12px}
.ss-buying-confidence strong{font-size:12px;color:var(--ss-gray-900)}
.ss-buying-confidence span{font-size:11px;color:var(--ss-gray-600)}
.single-product .woocommerce-product-gallery{background:#f8fafc;border:1px solid #eef2f7;border-radius:16px;padding:16px}
.single-product .woocommerce-product-gallery img{object-fit:contain}
.single-product .woocommerce-tabs{border-top:1px solid #e5e7eb;padding-top:24px}
.single-product .woocommerce-tabs ul.tabs{display:flex;gap:4px;flex-wrap:wrap;padding:0!important;margin-bottom:24px!important}
.single-product .woocommerce-tabs ul.tabs:before{display:none!important}
.single-product .woocommerce-tabs ul.tabs li{border:1px solid #dbe1e8!important;background:#f8fafc!important;border-radius:8px 8px 0 0!important;margin:0!important;padding:0!important}
.single-product .woocommerce-tabs ul.tabs li a{padding:11px 16px!important}
.single-product .woocommerce-tabs ul.tabs li.active{background:#fff!important;border-bottom-color:#fff!important}
@media(max-width:700px){
 .ss-buying-confidence{grid-template-columns:1fr}
 .single-product form.cart{gap:8px}
 .single-product form.cart .single_add_to_cart_button{flex:1}
 .ss-variation-pill{padding:9px 11px}
}


/* Smart Store v2.9 — quantity/cart reliability */
.single-product form.cart .quantity{
    display:inline-flex!important;
    align-items:center!important;
    height:46px!important;
    border:1px solid #cbd5e1!important;
    border-radius:9px!important;
    overflow:hidden!important;
    background:#fff!important;
    margin:0!important;
    vertical-align:middle!important;
}
.single-product form.cart .quantity .ss-qty-btn{
    flex:0 0 38px;
    width:38px!important;
    min-width:38px!important;
    height:44px!important;
    line-height:44px!important;
    padding:0!important;
    margin:0!important;
    border:0!important;
    border-radius:0!important;
    background:#fff!important;
    color:var(--ss-gray-900)!important;
    font-size:20px!important;
    font-weight:800!important;
    text-align:center!important;
    cursor:pointer!important;
}
.single-product form.cart .quantity .ss-qty-btn:hover{
    background:#f1f5f9!important;
    color:var(--ss-teal)!important;
}
.single-product form.cart .quantity input.qty{
    flex:0 0 52px!important;
    width:52px!important;
    min-width:52px!important;
    height:44px!important;
    margin:0!important;
    padding:0 4px!important;
    border:0!important;
    border-left:1px solid #e5e7eb!important;
    border-right:1px solid #e5e7eb!important;
    border-radius:0!important;
    text-align:center!important;
    background:#fff!important;
    box-shadow:none!important;
}


/* Smart Store v3.2 — core WooCommerce pages */
.ss-core-page{padding:28px 0 48px}
.ss-core-page>h1,.ss-core-page article>h1{margin-top:0}
.ss-core-page .woocommerce{width:100%}


/* Smart Store v3.3 — storefront visual upgrade */
.ss-mega-wrap{position:relative}
.ss-mega-menu{position:absolute;top:100%;left:0;width:min(980px,92vw);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;background:#fff;border:1px solid var(--ss-gray-200);border-radius:0 0 16px 16px;padding:22px;box-shadow:var(--ss-shadow);opacity:0;visibility:hidden;transform:translateY(8px);transition:.16s;z-index:120}
.ss-mega-wrap:hover .ss-mega-menu,.ss-mega-wrap:focus-within .ss-mega-menu,.ss-mega-wrap.is-open .ss-mega-menu{opacity:1;visibility:visible;transform:translateY(0)}
.ss-mega-col{display:flex;flex-direction:column;gap:7px}
.ss-mega-col>a{font-weight:500;font-size:13px;color:var(--ss-gray-700)}
.ss-mega-col>a:hover{color:var(--ss-teal)}
.ss-mega-title{font-weight:900!important;color:var(--ss-gray-900)!important;font-size:14px!important;margin-bottom:3px}

.ss-live-heading{padding:9px 12px;background:#f8fafc;border-bottom:1px solid #eef2f7;font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:900;color:#64748b}
.ss-live-category{display:inline-flex;margin:8px 0 8px 10px;padding:6px 9px;border:1px solid #dbe4ea;border-radius:999px;font-size:12px;color:var(--ss-gray-900)}
.ss-live-empty{padding:16px}
.ss-live-placeholder{width:52px;height:52px;background:#f3f4f6;border-radius:8px;flex:0 0 52px}
.ss-live-item div{display:flex;flex-direction:column;gap:2px}
.ss-live-item span{font-size:13px;font-weight:900;color:var(--ss-gray-900)}
.ss-live-item small{font-size:11px;color:var(--ss-teal);font-weight:700}

.woocommerce ul.products li.product{overflow:hidden}
.ss-loop-brand{font-size:11px!important;text-transform:uppercase;letter-spacing:.04em;color:var(--ss-teal);font-weight:900;margin-top:8px}
.ss-condition-badge{position:absolute;top:12px;left:12px;z-index:3;background:#334155;color:#fff;padding:5px 8px;border-radius:7px;font-size:10px;font-weight:900}
.ss-sale-badge{background:#f59e0b!important;color:#111827!important;min-width:auto!important;min-height:auto!important;line-height:1!important;padding:7px 8px!important;border-radius:8px!important;top:12px!important;right:12px!important;left:auto!important;margin:0!important}
.ss-loop-specs{display:flex;gap:5px;flex-wrap:wrap;margin:6px 0 7px}
.ss-loop-specs span{font-size:10px;padding:4px 6px;border-radius:6px;background:#f1f5f9;color:#475569}
.ss-card-tools{display:flex;gap:6px;margin-top:9px;flex-wrap:wrap}
.ss-card-tool{flex:1;min-width:72px;padding:7px 8px;border:1px solid #dbe4ea;border-radius:7px;background:#fff;color:#475569;font-size:10px;font-weight:800;text-align:center;cursor:pointer}
.ss-card-tool:hover{border-color:var(--ss-teal);color:var(--ss-teal)}
.woocommerce ul.products li.product .button{width:100%;text-align:center;margin-top:10px!important}
.woocommerce ul.products li.product .star-rating{font-size:12px}

.ss-brand-strip{display:flex;gap:10px;overflow:auto;padding-bottom:4px;scrollbar-width:thin}
.ss-brand-strip a{flex:0 0 auto;padding:12px 18px;border:1px solid #dfe5ea;border-radius:10px;background:#fff;color:#334155;font-weight:800;font-size:13px}
.ss-brand-strip a:hover{border-color:var(--ss-teal);color:var(--ss-teal);box-shadow:0 4px 14px rgba(15,23,42,.06)}

.ss-promo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.ss-home-promo{min-height:185px;border-radius:16px;padding:24px;display:flex;flex-direction:column;justify-content:flex-end;position:relative;overflow:hidden;color:#fff!important}
.ss-home-promo:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,23,42,.05),rgba(15,23,42,.72));z-index:0}
.ss-home-promo>*{position:relative;z-index:1}
.ss-home-promo span{font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.ss-home-promo strong{font-size:24px;line-height:1.15;margin-top:5px}
.ss-home-promo small{margin-top:7px;font-size:12px}
.ss-promo-mobiles{background:linear-gradient(135deg,var(--ss-teal),var(--ss-navy))}
.ss-promo-laptops{background:linear-gradient(135deg,#334155,#0f172a)}
.ss-promo-used{background:linear-gradient(135deg,#64748b,#334155)}

.ss-qv-overlay,
.ss-qs-overlay{position:fixed;inset:0;background:rgba(15,23,42,.72);z-index:9999;display:flex;align-items:center;justify-content:center;padding:20px;backdrop-filter:blur(4px);animation:ssFadeIn .2s ease-out}
.ss-qv-modal,
.ss-qs-modal{width:min(800px,96vw);max-height:90vh;background:#fff;border-radius:18px;overflow-y:auto;position:relative;box-shadow:0 25px 80px rgba(0,0,0,.35);padding:24px}
.ss-qv-modal iframe{width:100%;height:100%;border:0}
.ss-qv-close,
.ss-qs-close{position:absolute;right:14px;top:14px;z-index:10;width:34px;height:34px;border:0;border-radius:50%;background:#f1f5f9;color:#0f172a;font-size:22px;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}
.ss-qv-close:hover,
.ss-qs-close:hover{background:#0f172a;color:#fff}
body.ss-modal-open{overflow:hidden}

@keyframes ssFadeIn{from{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}

/* Quick Select Modal Styling */
.ss-qs-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:12px;color:#64748b;font-weight:600}
.ss-qs-error{padding:40px 20px;text-align:center;color:#e11d48;font-weight:600}
.ss-spinner{width:32px;height:32px;border:3px solid #e2e8f0;border-top-color:var(--ss-teal);border-radius:50%;animation:ssSpin .7s linear infinite}
@keyframes ssSpin{to{transform:rotate(360deg)}}

.ss-qs-wrapper{display:grid;grid-template-columns:260px 1fr;gap:24px;align-items:start}
.ss-qs-gallery{background:#f8fafc;border-radius:14px;padding:14px;display:flex;align-items:center;justify-content:center;border:1px solid #e2e8f0;position:sticky;top:0;max-height:290px}
.ss-qs-gallery .ss-qs-main-image{width:100%;display:flex;align-items:center;justify-content:center;min-height:220px}
.ss-qs-gallery img.ss-qs-img{max-width:100%;height:auto;max-height:260px;object-fit:contain;border-radius:8px;transition:opacity .2s}
.ss-qs-summary{display:flex;flex-direction:column;gap:10px}
.ss-qs-brand span{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--ss-teal);font-weight:800}
.ss-qs-title{font-size:20px;line-height:1.3;margin:0;color:#0f172a;font-weight:800}
.ss-qs-price{font-size:20px;font-weight:900;color:var(--ss-teal);margin-bottom:6px}
.ss-qs-price del{font-size:15px;color:#94a3b8;font-weight:500;margin-right:6px}
.ss-qs-price ins{text-decoration:none}

.ss-qs-form-container form.cart{margin:0;display:flex;flex-direction:column;gap:14px}
/* Hide WooCommerce default variation table inside popup — smart UI replaces it */
.ss-qs-form-container table.variations,
.ss-qs-form-container .ss-select-fallback,
.ss-qs-form-container .reset_variations,
.ss-qs-form-container .ss-smart-hidden-attribute{display:none!important}

.ss-qs-form-container table.variations{width:100%;border-collapse:collapse;margin-bottom:6px}
.ss-qs-form-container table.variations td,
.ss-qs-form-container table.variations th{padding:6px 0;border:0;display:block;width:100%;text-align:left}
.ss-qs-form-container table.variations .label label{font-size:13px;font-weight:700;color:#334155;text-transform:uppercase;letter-spacing:.04em}

.ss-qs-form-container .ss-variation-pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}
.ss-qs-form-container .ss-variation-pill{border:1px solid #cbd5e1;background:#fff;border-radius:8px;padding:7px 14px;font-size:13px;font-weight:700;color:#1e293b;cursor:pointer;transition:all .15s ease}
.ss-qs-form-container .ss-variation-pill:hover{border-color:var(--ss-teal);color:var(--ss-teal)}
.ss-qs-form-container .ss-variation-pill.is-active{border-color:var(--ss-teal);background:var(--ss-teal);color:#fff;box-shadow:0 3px 10px rgba(0,159,163,.25)}
.ss-qs-form-container .ss-variation-pill.is-disabled{opacity:.4;cursor:not-allowed;text-decoration:line-through;background:#f1f5f9}

.ss-qs-form-container .single_variation_wrap{margin-top:6px}
.ss-qs-form-container .woocommerce-variation-price{display:none}
.ss-qs-form-container .woocommerce-variation-availability{font-size:13px;margin-bottom:10px}
.ss-qs-form-container .woocommerce-variation-add-to-cart{display:flex;gap:10px;align-items:center;flex-wrap:wrap}

/* Smart variation UI inside popup */
.ss-qs-form-container .ss-smart-variation-ui{margin:0 0 12px}
.ss-qs-form-container .ss-smart-var-group{grid-template-columns:80px minmax(0,1fr);gap:10px}
.ss-qs-form-container .ss-smart-var-label{font-size:12px;font-weight:800;color:#334155;text-transform:uppercase;letter-spacing:.04em;padding-top:8px}
.ss-qs-form-container .ss-smart-config{min-width:auto;font-size:12px;padding:7px 12px;min-height:40px}
.ss-qs-form-container .ss-smart-color{min-width:80px}
.ss-qs-form-container .ss-smart-color-name{font-size:11px}
.ss-qs-form-container .ss-smart-color-media{width:44px;height:44px}
.ss-qs-form-container .ss-smart-color-media img{width:100%;height:100%}

/* Add to cart + WhatsApp buttons in popup */
.ss-qs-form-container .woocommerce-variation-add-to-cart{display:flex;flex-direction:column;gap:10px}
.ss-qs-form-container .woocommerce-variation-add-to-cart .quantity{display:flex;align-items:center;gap:8px;width:100%;justify-content:flex-start}
.ss-qs-form-container .woocommerce-variation-add-to-cart .ss-qs-cart-actions{display:flex;flex-direction:column;gap:8px;width:100%}
.ss-qs-form-container .single_add_to_cart_button{width:100%;background:var(--ss-teal)!important;color:#fff!important;border:0!important;border-radius:12px!important;padding:14px 22px!important;font-size:15px!important;font-weight:800!important;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 14px rgba(0,159,163,.25);text-align:center}
.ss-qs-form-container .single_add_to_cart_button:hover{filter:brightness(1.08);transform:translateY(-1px)}
.ss-qs-form-container .single_add_to_cart_button.disabled,
.ss-qs-form-container .single_add_to_cart_button:disabled{opacity:.5;cursor:not-allowed;transform:none}
.ss-qs-form-container .ss-whatsapp-product{width:100%;min-height:46px!important;border-radius:12px!important;padding:12px 16px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;font-weight:700!important;font-size:14px!important;background:#25D366!important;color:#fff!important;border:2px solid #20BA5A!important;cursor:pointer;transition:all .2s ease;text-decoration:none!important;margin-top:4px}
.ss-qs-form-container .ss-whatsapp-product:hover{background:#20BA5A!important;border-color:#1DA851!important;transform:translateY(-1px);box-shadow:0 4px 12px rgba(37,211,102,.3)!important}
.ss-qs-form-container .ss-whatsapp-product::before{content:'💬 ';font-size:16px;margin-right:4px}

.ss-qs-footer-link{margin-top:14px;padding-top:12px;border-top:1px solid #f1f5f9}
.ss-qs-footer-link a{font-size:13px;font-weight:700;color:#64748b;text-decoration:none;transition:color .2s}
.ss-qs-footer-link a:hover{color:var(--ss-teal);text-decoration:underline}

@media(max-width:700px){
 .ss-qs-wrapper{grid-template-columns:1fr;gap:16px}
 .ss-qs-gallery{position:static}
 .ss-qs-gallery img.ss-qs-img{max-height:200px}
 .ss-qs-modal{padding:18px}
}

@media(max-width:1000px){
 .ss-mega-menu{grid-template-columns:repeat(2,1fr);max-height:70vh;overflow:auto}
 .ss-promo-grid{grid-template-columns:1fr}
}
@media(max-width:700px){
 .woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:13px!important;min-height:36px}
 .ss-card-tools{display:grid;grid-template-columns:1fr 1fr}
 .ss-quick-view{grid-column:1/-1}
 .ss-home-promo{min-height:150px}
 .ss-home-promo strong{font-size:20px}
}


/* Smart Store v3.4 — growth + corporate */
.ss-featured-promo{width:min(1240px,calc(100% - 32px));margin:18px auto 0;display:flex;justify-content:center;align-items:center;gap:14px;flex-wrap:wrap;background:#fff7ed;border:1px solid #fed7aa;color:#9a3412;border-radius:12px;padding:11px 14px;font-size:13px}
.ss-copy-coupon{border:1px dashed #f59e0b;background:#fff;color:#9a3412;border-radius:8px;padding:7px 10px;font-weight:800;cursor:pointer}
.ss-corporate-product-cta{margin:22px 0 0;padding:16px;border:1px solid #cfe9e9;background:#f2fbfb;border-radius:12px;display:grid;grid-template-columns:1fr auto;gap:5px 16px;align-items:center}
.ss-corporate-product-cta strong{font-size:14px}
.ss-corporate-product-cta span{font-size:12px;color:#64748b}
.ss-corporate-product-cta .ss-btn{grid-column:2;grid-row:1/3;white-space:nowrap}

.ss-corporate-hero{display:grid;grid-template-columns:1.2fr 1fr;gap:36px;align-items:center;padding:42px 0}
.ss-eyebrow{display:inline-block;color:var(--ss-teal);font-weight:900;text-transform:uppercase;letter-spacing:.08em;font-size:12px;margin-bottom:8px}
.ss-corporate-hero h1{font-size:clamp(34px,5vw,56px);line-height:1.05;margin:0 0 16px}
.ss-corporate-hero p{font-size:17px;color:#475569;max-width:680px}
.ss-corporate-benefits{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ss-corporate-benefits>div{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:16px}
.ss-corporate-benefits strong{display:block;font-size:13px;margin-bottom:4px}
.ss-corporate-benefits span{font-size:12px;color:#64748b}
.ss-corporate-form-wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:34px;padding:20px 0 56px}
.ss-corporate-form-card{border:1px solid #e2e8f0;border-radius:16px;padding:24px;background:#fff;box-shadow:0 10px 30px rgba(15,23,42,.06)}
.ss-notice{padding:14px;background:#fff7ed;border:1px solid #fed7aa;border-radius:10px}

@media(max-width:800px){
 .ss-corporate-product-cta{grid-template-columns:1fr}
 .ss-corporate-product-cta .ss-btn{grid-column:auto;grid-row:auto;margin-top:8px;text-align:center}
 .ss-corporate-hero,.ss-corporate-form-wrap{grid-template-columns:1fr}
 .ss-corporate-benefits{grid-template-columns:1fr}
}

.ss-single-stock{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:8px 0 14px;font-size:13px}
.ss-single-stock span{color:#64748b}.ss-single-stock.ss-in-stock strong{color:#15803d}.ss-single-stock.ss-out-stock strong{color:#b91c1c}


/* Smart Store v4.0 — filtered archives show products only */
.ss-has-active-filters.woocommerce-shop ul.products li.product-category,
.ss-has-active-filters.tax-product_cat ul.products li.product-category{
    display:none!important;
}

/* Make WooCommerce notices look less alarming for stock-limit guidance */
.woocommerce-info,
.woocommerce-message{
    border-top-color:var(--ss-teal)!important;
}
.woocommerce-info::before,
.woocommerce-message::before{
    color:var(--ss-teal)!important;
}


/* Smart Store v4.1 — shop products only + live cart badge */
.woocommerce-shop ul.products li.product-category{
    display:none!important;
}
.ss-cart-action .ss-action-icon{position:relative}
.ss-cart-count{
    position:absolute;
    top:-8px;
    right:-10px;
    min-width:18px;
    height:18px;
    padding:0 5px;
    border-radius:999px;
    background:#f59e0b;
    color:#111827;
    border:2px solid #fff;
    font-size:10px;
    line-height:14px;
    font-weight:900;
    display:inline-flex;
    align-items:center;
    justify-content:center;
}
.ss-cart-count.is-empty{display:none}
@media(max-width:700px){
  .ss-cart-count{top:-7px;right:-8px}
}

ul.products{align-items:stretch}
ul.products li.product{display:flex!important;flex-direction:column;height:100%}
ul.products li.product .woocommerce-LoopProduct-link{display:flex;flex-direction:column;flex:1 1 auto}
ul.products li.product img{aspect-ratio:1/1;object-fit:contain}
ul.products li.product .woocommerce-loop-product__title{min-height:3.2em;line-height:1.55;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ss-card-specs{display:flex;flex-wrap:wrap;gap:5px;min-height:28px;margin:7px 0}
.ss-card-specs span{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:6px;padding:4px 7px;font-size:10px;color:#475569;line-height:1}
ul.products li.product .price{margin-top:auto}
ul.products li.product .button{margin-top:10px}
.ss-single-key-specs{display:flex;flex-wrap:wrap;gap:7px;margin:10px 0 14px}
.ss-single-key-specs span{padding:7px 9px;border:1px solid #dbe4ea;background:#f8fafc;border-radius:8px;font-size:12px;color:#334155}
.ss-buy-now{display:block!important;width:100%;text-align:center;margin:10px 0 12px!important;background:var(--ss-teal)!important;color:#fff!important;border-radius:8px!important;font-weight:800!important}
.ss-delivery-panel{display:flex;align-items:center;gap:12px;border:1px solid #dbe4ea;border-radius:10px;padding:13px 15px;margin:14px 0;background:#fff}
.ss-delivery-panel strong{display:block;font-size:13px}.ss-delivery-panel small{display:block;color:#64748b;margin-top:2px}


/* Smart Store v4.3 — single-line graphical category carousel */
.ss-category-carousel-section{overflow:hidden}
.ss-cat-controls{display:flex;align-items:center;gap:8px}
.ss-cat-arrow{width:34px;height:34px;border:1px solid #dbe4ea;border-radius:50%;background:#fff;color:var(--ss-gray-900);font-size:22px;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}
.ss-cat-arrow:hover{border-color:var(--ss-teal);color:var(--ss-teal)}
.ss-category-carousel-wrap{position:relative;overflow:hidden}
.ss-category-carousel{display:flex;flex-wrap:nowrap;gap:14px;overflow-x:auto;scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none;padding:4px 2px 10px}
.ss-category-carousel::-webkit-scrollbar{display:none}
.ss-cat-slide{flex:0 0 145px;text-align:center;color:var(--ss-gray-900);display:flex;flex-direction:column;align-items:center;gap:10px}
.ss-cat-slide strong{font-size:13px;line-height:1.25;max-width:135px}
.ss-cat-circle{width:128px;height:128px;border-radius:50%;background:#f3f4f6;border:1px solid #edf0f2;display:flex;align-items:center;justify-content:center;overflow:hidden;transition:.2s ease}
.ss-cat-circle img{width:82%;height:82%;object-fit:contain}
.ss-cat-fallback{font-size:44px;line-height:1}
.ss-cat-slide:hover .ss-cat-circle{transform:translateY(-3px);border-color:#c8e8e8;box-shadow:0 8px 22px rgba(15,23,42,.08)}
.ss-cat-slide:hover strong{color:var(--ss-teal)}
@media(max-width:700px){
 .ss-cat-slide{flex-basis:112px}
 .ss-cat-circle{width:96px;height:96px}
 .ss-cat-slide strong{font-size:12px;max-width:105px}
 .ss-cat-fallback{font-size:34px}
 .ss-cat-arrow{display:none}
}


/* Smart Store v4.5 — cleaner checkout fields */
.woocommerce-checkout .ss-hidden-checkout-field{display:none!important}
.woocommerce-checkout .form-row-wide{width:100%!important;float:none!important}
.woocommerce-checkout .form-row input.input-text,
.woocommerce-checkout .form-row textarea,
.woocommerce-checkout .form-row select{
    min-height:46px;
    border:1px solid #cbd5e1;
    border-radius:9px;
    padding:10px 12px;
}
.woocommerce-checkout .form-row label{font-weight:700;font-size:13px}
.woocommerce-checkout .required{color:#dc2626}
.woocommerce-checkout .optional{display:none!important}


/* Smart Store v4.5.1 — isolated right-side cart drawer */
.ss-cart-panel-overlay{position:fixed;inset:0;background:rgba(15,23,42,.48);opacity:0;visibility:hidden;transition:.2s;z-index:9997}
.ss-cart-panel-overlay.is-open{opacity:1;visibility:visible}
.ss-cart-panel{position:fixed;top:0;right:0;width:min(430px,94vw);height:100vh;background:#fff;z-index:9998;transform:translateX(100%);transition:transform .25s ease;display:flex;flex-direction:column;box-shadow:-18px 0 48px rgba(15,23,42,.2)}
.ss-cart-panel.is-open{transform:translateX(0)}
body.ss-cart-panel-open{overflow:hidden}
.ss-cart-panel-head{height:64px;padding:0 18px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e5e7eb}
.ss-cart-panel-head strong{font-size:18px}
.ss-cart-panel-close{width:36px;height:36px;border:0;border-radius:50%;background:#fff;color:#475569;font-size:25px;cursor:pointer}
.ss-cart-panel-body{flex:1;overflow:auto;padding:16px 18px}
.ss-drawer-items{display:flex;flex-direction:column;gap:16px}
.ss-drawer-item{display:grid;grid-template-columns:82px minmax(0,1fr);gap:12px;padding-bottom:16px;border-bottom:1px solid #eef2f7}
.ss-drawer-thumb img{width:82px;height:82px;object-fit:contain;background:#f8fafc;border-radius:10px}
.ss-drawer-name{display:block;color:#1f2937;font-size:13px;font-weight:800;line-height:1.35;margin-bottom:6px}
.ss-drawer-price{font-size:13px;font-weight:900;margin-bottom:8px}
.ss-drawer-meta{display:flex;justify-content:space-between;gap:8px;font-size:12px;color:#64748b}
.ss-drawer-meta a{color:#b91c1c;font-size:11px}
.ss-drawer-empty{min-height:220px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;color:#64748b}
.ss-cart-panel-foot{border-top:1px solid #e5e7eb;padding:16px 18px}
.ss-cart-panel-subtotal{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.ss-cart-panel-actions{display:grid;grid-template-columns:1fr 1.25fr;gap:10px}
.ss-panel-view-cart,.ss-panel-checkout{min-height:44px;border-radius:9px;display:flex;align-items:center;justify-content:center;font-weight:900}
.ss-panel-view-cart{border:1px solid #cbd5e1;color:#334155;background:#fff}
.ss-panel-checkout{background:var(--ss-teal);color:#fff!important}
@media(max-width:520px){.ss-cart-panel{width:100vw}}


/* Smart Store v4.5.2 — premium checkout redesign (visual only) */
.ss-checkout-page{
    background:#f6f8fa;
    min-height:70vh;
}
.ss-checkout-shell{
    padding-top:28px;
    padding-bottom:56px;
}
.ss-checkout-shell>h1{
    margin:0 0 24px;
    font-size:30px;
    line-height:1.15;
}

/* Coupon / returning customer notices */
.ss-checkout-page .woocommerce-form-coupon-toggle,
.ss-checkout-page .woocommerce-form-login-toggle{
    max-width:760px;
}
.ss-checkout-page .woocommerce-info{
    background:#fff;
    border:1px solid #dbe4ea;
    border-top:0!important;
    border-radius:10px;
    padding:13px 16px 13px 44px!important;
    margin-bottom:14px!important;
    box-shadow:none;
}
.ss-checkout-page form.checkout_coupon{
    background:#fff;
    border:1px solid #dbe4ea;
    border-radius:12px;
    padding:16px!important;
    margin:0 0 20px!important;
    max-width:760px;
}
.ss-checkout-page form.checkout_coupon .form-row{
    margin-bottom:0!important;
}

/* Two-column desktop structure */
.ss-checkout-page form.checkout.woocommerce-checkout{
    display:grid;
    grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);
    grid-template-areas:
      "customer heading"
      "customer order";
    gap:0 30px;
    align-items:start;
}
.ss-checkout-page #customer_details{
    grid-area:customer;
    float:none!important;
    width:auto!important;
    display:block!important;
}
.ss-checkout-page #order_review_heading{
    grid-area:heading;
    float:none!important;
    width:auto!important;
    margin:0!important;
    padding:20px 22px 10px;
    background:#fff;
    border:1px solid #e2e8f0;
    border-bottom:0;
    border-radius:16px 16px 0 0;
    font-size:20px;
}
.ss-checkout-page #order_review{
    grid-area:order;
    float:none!important;
    width:auto!important;
    background:#fff;
    border:1px solid #e2e8f0;
    border-top:0;
    border-radius:0 0 16px 16px;
    padding:0 22px 22px;
    position:sticky;
    top:150px;
    box-shadow:0 10px 30px rgba(15,23,42,.05);
}

/* Billing/shipping cards */
.ss-checkout-page .woocommerce-billing-fields,
.ss-checkout-page .woocommerce-shipping-fields,
.ss-checkout-page .woocommerce-additional-fields{
    background:#fff;
    border:1px solid #e2e8f0;
    border-radius:16px;
    padding:22px;
    margin-bottom:18px;
}
.ss-checkout-page .woocommerce-billing-fields>h3,
.ss-checkout-page .woocommerce-shipping-fields>h3,
.ss-checkout-page .woocommerce-additional-fields>h3{
    margin:0 0 18px;
    font-size:20px;
}
.ss-checkout-page .woocommerce-billing-fields__field-wrapper,
.ss-checkout-page .woocommerce-shipping-fields__field-wrapper{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:2px 12px;
}
.ss-checkout-page .form-row{
    width:100%!important;
    float:none!important;
    margin:0 0 13px!important;
}
.ss-checkout-page .form-row-wide,
.ss-checkout-page #billing_first_name_field,
.ss-checkout-page #billing_address_1_field,
.ss-checkout-page #billing_address_2_field,
.ss-checkout-page #billing_email_field,
.ss-checkout-page #billing_phone_field,
.ss-checkout-page #shipping_first_name_field,
.ss-checkout-page #shipping_address_1_field,
.ss-checkout-page #shipping_address_2_field{
    grid-column:1/-1;
}
.ss-checkout-page .form-row label{
    display:block;
    font-size:12px!important;
    font-weight:800!important;
    color:#334155;
    margin-bottom:6px;
}
.ss-checkout-page .form-row .optional{
    color:#94a3b8;
    font-weight:500;
}
.ss-checkout-page .input-text,
.ss-checkout-page select,
.ss-checkout-page .select2-selection{
    width:100%;
    min-height:47px!important;
    border:1px solid #cbd5e1!important;
    border-radius:9px!important;
    background:#fff!important;
    box-shadow:none!important;
}
.ss-checkout-page input.input-text,
.ss-checkout-page textarea.input-text{
    padding:11px 12px!important;
}
.ss-checkout-page .select2-selection__rendered{
    line-height:45px!important;
    padding-left:12px!important;
}
.ss-checkout-page .select2-selection__arrow{
    height:45px!important;
}

/* Order notes visually secondary */
.ss-checkout-page .woocommerce-additional-fields{
    padding:18px 22px;
}
.ss-checkout-page .woocommerce-additional-fields h3{
    font-size:16px;
}
.ss-checkout-page #order_comments{
    min-height:84px!important;
}

/* Order review */
.ss-checkout-page table.shop_table{
    border:0!important;
    border-radius:0!important;
    margin:0!important;
}
.ss-checkout-page table.shop_table th,
.ss-checkout-page table.shop_table td{
    border-color:#edf2f7!important;
    padding:14px 6px!important;
}
.ss-checkout-page table.shop_table thead th{
    color:#64748b;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:.05em;
}
.ss-checkout-page table.shop_table .product-total,
.ss-checkout-page table.shop_table tfoot td{
    text-align:right;
}
.ss-checkout-product-line{
    display:flex;
    align-items:center;
    gap:10px;
}
.ss-checkout-thumb-wrap{
    width:54px;
    height:54px;
    flex:0 0 54px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#f8fafc;
    border:1px solid #edf2f7;
    border-radius:9px;
    overflow:hidden;
}
.ss-checkout-product-thumb{
    width:48px!important;
    height:48px!important;
    margin:0!important;
    object-fit:contain;
}
.ss-checkout-product-name{
    min-width:0;
    font-size:12px;
    font-weight:800;
    line-height:1.35;
}

/* Shipping/payment cards */
.ss-checkout-page #shipping_method{
    margin:0!important;
}
.ss-checkout-page #shipping_method li{
    padding:10px 12px!important;
    background:#f8fafc;
    border:1px solid #e2e8f0;
    border-radius:9px;
    margin:6px 0!important;
}
.ss-checkout-page #payment{
    background:transparent!important;
    border-radius:0!important;
}
.ss-checkout-page #payment ul.payment_methods{
    border:0!important;
    padding:14px 0!important;
}
.ss-checkout-page #payment ul.payment_methods>li{
    background:#f8fafc;
    border:1px solid #e2e8f0;
    border-radius:10px;
    padding:11px 12px;
    margin:8px 0!important;
}
.ss-checkout-page #payment div.payment_box{
    background:#fff!important;
    border:1px solid #e2e8f0;
    border-radius:8px;
    font-size:12px;
    color:#475569;
}
.ss-checkout-page #payment div.payment_box:before{display:none!important}
.ss-checkout-page #payment .place-order{
    padding:14px 0 0!important;
    margin:0!important;
}
.ss-checkout-page #place_order{
    width:100%;
    min-height:50px;
    border-radius:10px!important;
    background:var(--ss-teal)!important;
    color:#fff!important;
    font-size:15px!important;
    font-weight:900!important;
    box-shadow:none!important;
}
.ss-checkout-page #place_order:hover{
    background:var(--ss-teal-dark)!important;
}

/* Totals emphasis */
.ss-checkout-page .order-total th,
.ss-checkout-page .order-total td{
    font-size:16px!important;
    font-weight:900!important;
    color:#0f172a;
}

/* Compact trust line below checkout action */
.ss-checkout-page .woocommerce-privacy-policy-text{
    color:#64748b;
    font-size:11px;
    line-height:1.5;
}

/* Responsive checkout */
@media(max-width:960px){
    .ss-checkout-page form.checkout.woocommerce-checkout{
        grid-template-columns:1fr;
        grid-template-areas:
          "customer"
          "heading"
          "order";
        gap:0;
    }
    .ss-checkout-page #order_review_heading{
        margin-top:8px!important;
    }
    .ss-checkout-page #order_review{
        position:static;
    }
}
@media(max-width:620px){
    .ss-checkout-shell{
        width:min(100% - 20px,1240px);
        padding-top:18px;
    }
    .ss-checkout-shell>h1{
        font-size:25px;
    }
    .ss-checkout-page .woocommerce-billing-fields,
    .ss-checkout-page .woocommerce-shipping-fields,
    .ss-checkout-page .woocommerce-additional-fields{
        padding:16px;
        border-radius:12px;
    }
    .ss-checkout-page .woocommerce-billing-fields__field-wrapper,
    .ss-checkout-page .woocommerce-shipping-fields__field-wrapper{
        grid-template-columns:1fr;
    }
    .ss-checkout-page .form-row{
        grid-column:1!important;
    }
    .ss-checkout-page #order_review_heading{
        padding:17px 16px 8px;
        border-radius:12px 12px 0 0;
    }
    .ss-checkout-page #order_review{
        padding:0 16px 16px;
        border-radius:0 0 12px 12px;
    }
}


/* Smart Store v4.5.3 — checkout two-column layout correction
   Presentation only: no checkout, Buy Now, cart or payment logic changed. */

.ss-checkout-page form.checkout.woocommerce-checkout{
    display:grid !important;
    grid-template-columns:minmax(0, 1.08fr) minmax(390px, .92fr) !important;
    grid-template-areas:
        "customer heading"
        "customer order" !important;
    column-gap:32px !important;
    row-gap:0 !important;
    align-items:start !important;
}

/* Critical fix: WooCommerce's two inner columns must stack vertically
   inside the LEFT checkout column instead of becoming side-by-side. */
.ss-checkout-page #customer_details{
    grid-area:customer !important;
    display:block !important;
    width:100% !important;
    min-width:0 !important;
}
.ss-checkout-page #customer_details .col-1,
.ss-checkout-page #customer_details .col-2{
    float:none !important;
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 !important;
}
.ss-checkout-page #customer_details .col-2{
    margin-top:18px !important;
}

/* Billing gets the full left-column width. */
.ss-checkout-page .woocommerce-billing-fields,
.ss-checkout-page .woocommerce-shipping-fields,
.ss-checkout-page .woocommerce-additional-fields{
    width:100% !important;
    max-width:none !important;
    box-sizing:border-box !important;
}

/* Keep notes under address rather than beside it. */
.ss-checkout-page .woocommerce-additional-fields{
    margin-top:0 !important;
}

/* A balanced field grid without squeezing long address fields. */
.ss-checkout-page .woocommerce-billing-fields__field-wrapper,
.ss-checkout-page .woocommerce-shipping-fields__field-wrapper{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
}
.ss-checkout-page #billing_first_name_field,
.ss-checkout-page #billing_address_1_field,
.ss-checkout-page #billing_address_2_field,
.ss-checkout-page #billing_email_field,
.ss-checkout-page #billing_phone_field,
.ss-checkout-page #shipping_first_name_field,
.ss-checkout-page #shipping_address_1_field,
.ss-checkout-page #shipping_address_2_field{
    grid-column:1 / -1 !important;
}

/* Prevent input content from being visually clipped by narrow boxes. */
.ss-checkout-page .input-text,
.ss-checkout-page select,
.ss-checkout-page .select2-container{
    max-width:100% !important;
    box-sizing:border-box !important;
}

/* Right order card alignment. */
.ss-checkout-page #order_review_heading{
    grid-area:heading !important;
    width:100% !important;
    box-sizing:border-box !important;
}
.ss-checkout-page #order_review{
    grid-area:order !important;
    width:100% !important;
    box-sizing:border-box !important;
}

/* Required phone visual marker.
   Validation/business rules remain exactly as in the working baseline. */
.ss-checkout-page #billing_phone_field > label .optional{
    display:none !important;
}
.ss-checkout-page #billing_phone_field > label::after{
    content:" *";
    color:#b91c1c;
}

/* Postcode remains visibly optional / without a required star. */
.ss-checkout-page #billing_postcode_field > label abbr.required{
    display:none !important;
}

/* Tablet/mobile: clean single column. */
@media(max-width:960px){
    .ss-checkout-page form.checkout.woocommerce-checkout{
        grid-template-columns:1fr !important;
        grid-template-areas:
            "customer"
            "heading"
            "order" !important;
        column-gap:0 !important;
    }
}
@media(max-width:620px){
    .ss-checkout-page .woocommerce-billing-fields__field-wrapper,
    .ss-checkout-page .woocommerce-shipping-fields__field-wrapper{
        grid-template-columns:1fr !important;
    }
    .ss-checkout-page #customer_details .col-2{
        margin-top:14px !important;
    }
}

.ss-checkout-page form.checkout.woocommerce-checkout{
  grid-template-columns:minmax(0,1.04fr) minmax(410px,.96fr)!important;
  grid-template-areas:none!important;
  grid-template-rows:auto auto!important;
  column-gap:24px!important;
}
.ss-checkout-page #customer_details{grid-column:1!important;grid-row:1 / span 2!important;align-self:start!important}
.ss-checkout-page #order_review_heading{grid-column:2!important;grid-row:1!important;align-self:end!important;padding:18px 20px 9px!important}
.ss-checkout-page #order_review{grid-column:2!important;grid-row:2!important;align-self:start!important;margin-top:0!important;padding:0 20px 20px!important}
.ss-checkout-page .ss-checkout-empty-block,
.ss-checkout-page #customer_details .col-2:empty,
.ss-checkout-page .woocommerce-shipping-fields:empty{display:none!important}
.ss-checkout-page #customer_details .col-2{margin-top:14px!important}
.ss-checkout-page .woocommerce-additional-fields{margin-top:0!important;margin-bottom:0!important}
.ss-checkout-page .woocommerce-billing-fields,
.ss-checkout-page .woocommerce-shipping-fields,
.ss-checkout-page .woocommerce-additional-fields{margin-bottom:14px!important}
.ss-checkout-page table.shop_table th,
.ss-checkout-page table.shop_table td{padding-top:11px!important;padding-bottom:11px!important}
.ss-checkout-page #payment ul.payment_methods{padding-top:10px!important}
@media(max-width:960px){
  .ss-checkout-page form.checkout.woocommerce-checkout{grid-template-columns:1fr!important;grid-template-rows:auto!important;column-gap:0!important}
  .ss-checkout-page #customer_details,
  .ss-checkout-page #order_review_heading,
  .ss-checkout-page #order_review{grid-column:1!important;grid-row:auto!important}
  .ss-checkout-page #order_review_heading{margin-top:8px!important}
}


/* Smart Store v4.5.5 — definitive checkout two-column alignment fix */
.ss-checkout-page form.checkout.woocommerce-checkout{
    display:grid!important;
    grid-template-columns:minmax(0,1.05fr) minmax(410px,.95fr)!important;
    grid-template-areas:none!important;
    grid-template-rows:auto!important;
    gap:24px!important;
    align-items:start!important;
}

/* Left side */
.ss-checkout-page #customer_details{
    grid-column:1!important;
    grid-row:1!important;
    width:100%!important;
    min-width:0!important;
    align-self:start!important;
}

/* Right side: JS wraps heading + review together so they begin at the top. */
.ss-checkout-page .ss-order-column{
    grid-column:2!important;
    grid-row:1!important;
    width:100%!important;
    min-width:0!important;
    align-self:start!important;
    position:sticky;
    top:150px;
}

/* Neutralize previous per-element grid placement. */
.ss-checkout-page .ss-order-column #order_review_heading,
.ss-checkout-page .ss-order-column #order_review{
    grid-column:auto!important;
    grid-row:auto!important;
    width:100%!important;
    margin:0!important;
    position:static!important;
}
.ss-checkout-page .ss-order-column #order_review_heading{
    padding:18px 20px 9px!important;
    border-radius:16px 16px 0 0!important;
}
.ss-checkout-page .ss-order-column #order_review{
    padding:0 20px 20px!important;
    border-radius:0 0 16px 16px!important;
}

/* Additional information remains directly below billing on the left. */
.ss-checkout-page #customer_details .col-2{
    width:100%!important;
    float:none!important;
    margin-top:14px!important;
}
.ss-checkout-page .woocommerce-additional-fields{
    width:100%!important;
    margin-top:0!important;
}

/* Mobile/tablet */
@media(max-width:960px){
    .ss-checkout-page form.checkout.woocommerce-checkout{
        grid-template-columns:1fr!important;
        gap:16px!important;
    }
    .ss-checkout-page #customer_details,
    .ss-checkout-page .ss-order-column{
        grid-column:1!important;
        grid-row:auto!important;
    }
    .ss-checkout-page .ss-order-column{
        position:static!important;
    }
}


/* Smart Store v4.5.6 — compact checkout field rows
   Presentation only: checkout/Buy Now/cart/payment logic untouched. */

/* Keep the billing field wrapper as a clean two-column grid on desktop. */
.ss-checkout-page .woocommerce-billing-fields__field-wrapper{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    column-gap:14px!important;
    row-gap:0!important;
}

/* Full-width rows */
.ss-checkout-page #billing_first_name_field,
.ss-checkout-page #billing_address_1_field,
.ss-checkout-page #billing_address_2_field,
.ss-checkout-page #billing_city_field{
    grid-column:1 / -1!important;
}

/* Pair Country + State on one line */
.ss-checkout-page #billing_country_field{
    grid-column:1!important;
}
.ss-checkout-page #billing_state_field{
    grid-column:2!important;
}

/* Postcode stays full width for now for easier typing/clarity */
.ss-checkout-page #billing_postcode_field{
    grid-column:1 / -1!important;
}

/* Pair Phone + Email on one line */
.ss-checkout-page #billing_phone_field{
    grid-column:1!important;
}
.ss-checkout-page #billing_email_field{
    grid-column:2!important;
}

/* Fix WooCommerce's single-country output (e.g. Pakistan) looking like tiny text.
   When only one selling country is enabled WooCommerce can render plain text
   instead of a select box; style that text like the other checkout fields. */
.ss-checkout-page #billing_country_field .woocommerce-input-wrapper{
    display:block!important;
    width:100%!important;
}
.ss-checkout-page #billing_country_field .woocommerce-input-wrapper > strong,
.ss-checkout-page #billing_country_field .woocommerce-input-wrapper > span:not(.select2),
.ss-checkout-page #billing_country_field .woocommerce-input-wrapper > input,
.ss-checkout-page #billing_country_field select{
    display:flex!important;
    width:100%!important;
    min-height:47px!important;
    align-items:center!important;
    padding:11px 12px!important;
    border:1px solid #cbd5e1!important;
    border-radius:9px!important;
    background:#fff!important;
    color:#1f2937!important;
    font-weight:500!important;
    line-height:1.4!important;
    box-sizing:border-box!important;
}

/* If WooCommerce prints only plain country text directly in the wrapper */
.ss-checkout-page #billing_country_field .woocommerce-input-wrapper{
    min-height:47px!important;
    border-radius:9px!important;
}

/* Prevent paired fields from being forced wide by older rules. */
.ss-checkout-page #billing_country_field.form-row-wide,
.ss-checkout-page #billing_state_field.form-row-wide,
.ss-checkout-page #billing_phone_field.form-row-wide,
.ss-checkout-page #billing_email_field.form-row-wide{
    grid-column:auto!important;
}

/* Mobile: return everything to a single column. */
@media(max-width:700px){
    .ss-checkout-page .woocommerce-billing-fields__field-wrapper{
        grid-template-columns:1fr!important;
    }
    .ss-checkout-page #billing_country_field,
    .ss-checkout-page #billing_state_field,
    .ss-checkout-page #billing_postcode_field,
    .ss-checkout-page #billing_phone_field,
    .ss-checkout-page #billing_email_field{
        grid-column:1!important;
    }
}


/* Smart Store v4.5.7 — Country + State + Postcode compact row */
@media(min-width:701px){
    .ss-checkout-page .woocommerce-billing-fields__field-wrapper{
        grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr)!important;
        column-gap:12px!important;
    }

    /* Full-width rows above the compact location row */
    .ss-checkout-page #billing_first_name_field,
    .ss-checkout-page #billing_address_1_field,
    .ss-checkout-page #billing_address_2_field,
    .ss-checkout-page #billing_city_field{
        grid-column:1 / -1!important;
    }

    /* Country + State + Postcode in one row */
    .ss-checkout-page #billing_country_field{
        grid-column:1!important;
    }
    .ss-checkout-page #billing_state_field{
        grid-column:2!important;
    }
    .ss-checkout-page #billing_postcode_field{
        grid-column:3!important;
    }

    /* Phone + Email: balanced half-width row underneath */
    .ss-checkout-page #billing_phone_field{
        grid-column:1 / span 1!important;
    }
    .ss-checkout-page #billing_email_field{
        grid-column:2 / span 2!important;
    }

    /* Make fixed-country output fill its grid cell cleanly */
    .ss-checkout-page #billing_country_field,
    .ss-checkout-page #billing_state_field,
    .ss-checkout-page #billing_postcode_field,
    .ss-checkout-page #billing_phone_field,
    .ss-checkout-page #billing_email_field{
        width:100%!important;
        min-width:0!important;
    }
    .ss-checkout-page #billing_country_field .woocommerce-input-wrapper,
    .ss-checkout-page #billing_country_field .woocommerce-input-wrapper > strong,
    .ss-checkout-page #billing_country_field .woocommerce-input-wrapper > span:not(.select2),
    .ss-checkout-page #billing_country_field select,
    .ss-checkout-page #billing_state_field select,
    .ss-checkout-page #billing_postcode_field input,
    .ss-checkout-page #billing_phone_field input,
    .ss-checkout-page #billing_email_field input{
        width:100%!important;
        max-width:100%!important;
        box-sizing:border-box!important;
    }
}

/* On smaller screens keep every field comfortably stacked. */
@media(max-width:700px){
    .ss-checkout-page .woocommerce-billing-fields__field-wrapper{
        grid-template-columns:1fr!important;
    }
    .ss-checkout-page #billing_country_field,
    .ss-checkout-page #billing_state_field,
    .ss-checkout-page #billing_postcode_field,
    .ss-checkout-page #billing_phone_field,
    .ss-checkout-page #billing_email_field{
        grid-column:1!important;
    }
}


/* Smart Store v4.5.8 — final checkout compact field layout */

/* Let the wrapper rows control layout instead of older individual grid rules. */
.ss-checkout-page .woocommerce-billing-fields__field-wrapper{
    display:block!important;
}

.ss-checkout-page .ss-location-fields-row{
    display:grid!important;
    grid-template-columns:minmax(0,1.15fr) minmax(0,1fr) minmax(0,.85fr)!important;
    gap:12px!important;
    width:100%!important;
    margin:0 0 2px!important;
    align-items:end!important;
}

.ss-checkout-page .ss-contact-fields-row{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    gap:12px!important;
    width:100%!important;
    margin:0!important;
    align-items:end!important;
}

/* Reset WooCommerce field widths/classes inside our grouped rows. */
.ss-checkout-page .ss-location-fields-row > .form-row,
.ss-checkout-page .ss-contact-fields-row > .form-row{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    float:none!important;
    clear:none!important;
    margin:0 0 13px!important;
    padding:0!important;
    grid-column:auto!important;
}

/* Every control fills its allocated cell. */
.ss-checkout-page .ss-location-fields-row .woocommerce-input-wrapper,
.ss-checkout-page .ss-contact-fields-row .woocommerce-input-wrapper,
.ss-checkout-page .ss-location-fields-row input,
.ss-checkout-page .ss-location-fields-row select,
.ss-checkout-page .ss-location-fields-row .select2-container,
.ss-checkout-page .ss-contact-fields-row input{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
}

/* Fixed country text (Pakistan) must look like a normal field. */
.ss-checkout-page #billing_country_field .woocommerce-input-wrapper{
    min-height:47px!important;
    padding:11px 12px!important;
    border:1px solid #cbd5e1!important;
    border-radius:9px!important;
    background:#fff!important;
    color:#1f2937!important;
    line-height:23px!important;
}
.ss-checkout-page #billing_country_field .woocommerce-input-wrapper > strong,
.ss-checkout-page #billing_country_field .woocommerce-input-wrapper > span:not(.select2){
    display:inline!important;
    width:auto!important;
    min-height:0!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    line-height:inherit!important;
}

/* Stop older v4.5.6 / v4.5.7 rules from forcing these fields elsewhere. */
.ss-checkout-page #billing_country_field,
.ss-checkout-page #billing_state_field,
.ss-checkout-page #billing_postcode_field,
.ss-checkout-page #billing_phone_field,
.ss-checkout-page #billing_email_field{
    grid-column:auto!important;
}

/* Keep Phone and Email visually balanced. */
.ss-checkout-page #billing_phone_field input,
.ss-checkout-page #billing_email_field input{
    min-height:47px!important;
}

/* Mobile remains simple and comfortable. */
@media(max-width:700px){
    .ss-checkout-page .ss-location-fields-row,
    .ss-checkout-page .ss-contact-fields-row{
        grid-template-columns:1fr!important;
        gap:0!important;
    }
}


/* Smart Store v4.5.9 — final checkout cosmetic cleanup
   Presentation only. No checkout/cart/Buy Now/payment logic changed. */

/* Coupon notice should align with the whole checkout width, not look like a half-width box. */
.ss-checkout-page .woocommerce-form-coupon-toggle{
    width:100%!important;
    max-width:none!important;
    margin:0 0 14px!important;
}
.ss-checkout-page .woocommerce-form-coupon-toggle .woocommerce-info{
    width:100%!important;
    max-width:none!important;
    box-sizing:border-box!important;
}

/* Remove the double-box look around fixed country (Pakistan).
   The field wrapper itself becomes the single visual input. */
.ss-checkout-page #billing_country_field .woocommerce-input-wrapper{
    display:flex!important;
    align-items:center!important;
    width:100%!important;
    min-height:47px!important;
    padding:0 12px!important;
    border:1px solid #cbd5e1!important;
    border-radius:9px!important;
    background:#fff!important;
    box-sizing:border-box!important;
    color:#1f2937!important;
    font-weight:500!important;
}

/* WooCommerce may print the fixed country inside strong/span.
   Strip all nested input-like styling so only one border remains. */
.ss-checkout-page #billing_country_field .woocommerce-input-wrapper > strong,
.ss-checkout-page #billing_country_field .woocommerce-input-wrapper > span:not(.select2){
    display:inline!important;
    width:auto!important;
    min-width:0!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    color:inherit!important;
    font:inherit!important;
    line-height:1.4!important;
}

/* If WooCommerce renders a real select instead, do not wrap it in a second visual box. */
.ss-checkout-page #billing_country_field .woocommerce-input-wrapper:has(select),
.ss-checkout-page #billing_country_field .woocommerce-input-wrapper:has(.select2-container){
    padding:0!important;
    border:0!important;
    background:transparent!important;
    min-height:0!important;
}


/* Smart Store v4.5.10 — equal-height location controls
   Cosmetic only. */

/* Country, State and Postcode must have exactly the same control height. */
.ss-checkout-page .ss-location-fields-row{
    align-items:end!important;
}
.ss-checkout-page #billing_country_field .woocommerce-input-wrapper,
.ss-checkout-page #billing_state_field .woocommerce-input-wrapper,
.ss-checkout-page #billing_postcode_field .woocommerce-input-wrapper{
    width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
}

/* Native/state select */
.ss-checkout-page #billing_state_field select,
.ss-checkout-page #billing_state_field .select2-selection,
.ss-checkout-page #billing_state_field .select2-selection--single{
    height:47px!important;
    min-height:47px!important;
    line-height:45px!important;
    padding-top:0!important;
    padding-bottom:0!important;
    box-sizing:border-box!important;
    border-radius:9px!important;
}

/* Select2 text + arrow vertical centering */
.ss-checkout-page #billing_state_field .select2-selection__rendered{
    height:45px!important;
    line-height:45px!important;
    padding-top:0!important;
    padding-bottom:0!important;
}
.ss-checkout-page #billing_state_field .select2-selection__arrow{
    height:45px!important;
    top:1px!important;
}

/* Postcode matches Country and State */
.ss-checkout-page #billing_postcode_field input{
    height:47px!important;
    min-height:47px!important;
    padding-top:0!important;
    padding-bottom:0!important;
    box-sizing:border-box!important;
}

/* Fixed Pakistan control already uses 47px; enforce exact height. */
.ss-checkout-page #billing_country_field .woocommerce-input-wrapper{
    height:47px!important;
    min-height:47px!important;
}


/* Smart Store v4.5.11 — promotional announcement bar */
.ss-promo-bar{
    background:var(--ss-teal);
    color:#fff;
    font-size:13px;
    line-height:1.35;
}
.ss-promo-inner{
    min-height:38px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:18px;
    position:relative;
    padding-top:7px;
    padding-bottom:7px;
}
.ss-promo-message{
    display:flex;
    align-items:center;
    justify-content:center;
    flex-wrap:wrap;
    gap:7px;
    text-align:center;
}
.ss-promo-icon{font-size:15px}
.ss-promo-text{font-weight:800}
.ss-promo-code{
    padding-left:8px;
    border-left:1px solid rgba(255,255,255,.45);
}
.ss-promo-code strong{
    letter-spacing:.04em;
}
.ss-promo-link{
    color:#fff!important;
    font-weight:900;
    white-space:nowrap;
    text-decoration:underline;
    text-underline-offset:3px;
}
.ss-promo-link:hover{opacity:.86}
@media(min-width:780px){
    .ss-promo-link{
        position:absolute;
        right:0;
    }
}
@media(max-width:779px){
    .ss-promo-inner{
        gap:8px;
        flex-direction:column;
    }
    .ss-promo-code{
        padding-left:0;
        border-left:0;
    }
}


/* Smart Store v4.5.12 — copyable promotion code */
.ss-promo-copy{
    display:inline-flex;
    align-items:center;
    gap:6px;
    margin-left:3px;
    padding:3px 7px;
    border:1px dashed rgba(255,255,255,.72);
    border-radius:6px;
    background:rgba(255,255,255,.10);
    color:#fff;
    font:inherit;
    cursor:pointer;
    vertical-align:middle;
}
.ss-promo-copy strong{letter-spacing:.05em}
.ss-promo-copy-label{
    font-size:10px;
    font-weight:800;
    opacity:.86;
    text-transform:uppercase;
}
.ss-promo-copy:hover,
.ss-promo-copy.is-copied{
    background:rgba(255,255,255,.20);
}


/* Smart Store v4.5.13 — Today's Deals */
.ss-flash-sale-section{
    position:relative;
}
.ss-flash-sale-section .ss-container{
    background:linear-gradient(180deg,#fffaf0 0%,#ffffff 100%);
    border:1px solid #fde7b0;
    border-radius:18px;
    padding:22px;
}
.ss-deals-head{
    align-items:flex-end;
}
.ss-deals-head h2{
    margin:2px 0 0;
}
.ss-deals-kicker{
    display:block;
    color:#b45309;
    font-size:11px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.09em;
}
.ss-view-deals{
    font-weight:900!important;
    color:#b45309!important;
}
.ss-flash-sale-section .ss-product{
    position:relative;
    background:#fff;
    border-color:#f3ddaa;
}
.ss-home-sale-badge{
    position:absolute;
    top:10px;
    right:10px;
    z-index:4;
    display:inline-flex;
    min-height:29px;
    align-items:center;
    justify-content:center;
    padding:0 9px;
    border-radius:8px;
    background:#f59e0b;
    color:#111827;
    font-size:11px;
    font-weight:900;
    box-shadow:0 4px 10px rgba(15,23,42,.10);
}
.ss-home-card-price del{
    color:#94a3b8;
    font-size:12px;
}
.ss-home-card-price ins{
    text-decoration:none;
    font-weight:900;
}
.ss-home-saving{
    margin-top:3px;
    color:#15803d;
    font-size:11px;
    font-weight:800;
}
@media(max-width:700px){
    .ss-flash-sale-section .ss-container{
        padding:16px;
        border-radius:14px;
    }
    .ss-deals-head{
        align-items:center;
    }
}


/* Smart Store v4.5.15 — clean starting price on variable-product cards */
.ss-starting-price{
    display:inline-flex;
    align-items:baseline;
    gap:4px;
    font-weight:800;
}
.ss-starting-label{
    color:#64748b;
    font-size:11px;
    font-weight:700;
}


/* Smart Store v4.5.16 — grouped technical specifications */
.ss-specifications{
    max-width:1050px;
}
.ss-spec-intro{
    margin-bottom:20px;
}
.ss-spec-intro h2{
    margin:0 0 5px;
    font-size:24px;
}
.ss-spec-intro p{
    margin:0;
    color:#64748b;
    font-size:13px;
}
.ss-spec-group{
    display:grid;
    grid-template-columns:170px minmax(0,1fr);
    border:1px solid #e2e8f0;
    border-radius:12px;
    overflow:hidden;
    margin-bottom:14px;
    background:#fff;
}
.ss-spec-group h3{
    margin:0;
    padding:16px;
    background:#f0fafa;
    color:var(--ss-teal-dark);
    font-size:14px;
    font-weight:900;
    border-right:1px solid #dbe8e8;
}
.ss-spec-table{
    min-width:0;
}
.ss-spec-row{
    display:grid;
    grid-template-columns:minmax(150px,.8fr) minmax(0,1.8fr);
    border-bottom:1px solid #edf2f7;
}
.ss-spec-row:last-child{
    border-bottom:0;
}
.ss-spec-name,
.ss-spec-value{
    padding:12px 14px;
    font-size:13px;
    line-height:1.45;
}
.ss-spec-name{
    font-weight:800;
    color:#334155;
    background:#fbfcfd;
    border-right:1px solid #edf2f7;
}
.ss-spec-value{
    color:#111827;
}
@media(max-width:720px){
    .ss-spec-group{
        grid-template-columns:1fr;
    }
    .ss-spec-group h3{
        border-right:0;
        border-bottom:1px solid #dbe8e8;
        padding:12px 14px;
    }
    .ss-spec-row{
        grid-template-columns:minmax(115px,.8fr) minmax(0,1.4fr);
    }
    .ss-spec-name,
    .ss-spec-value{
        padding:10px 11px;
        font-size:12px;
    }
}
@media(max-width:460px){
    .ss-spec-row{
        grid-template-columns:1fr;
    }
    .ss-spec-name{
        border-right:0;
        border-bottom:1px solid #f1f5f9;
        padding-bottom:6px;
    }
    .ss-spec-value{
        padding-top:7px;
    }
}


/* Smart Store v4.5.18 — product purchase panel polish */
.ss-quick-highlights{
    margin:12px 0 16px;
    padding-left:20px;
    color:#334155;
}
.ss-quick-highlights li{
    margin:5px 0;
    line-height:1.45;
    font-size:14px;
}
.ss-quick-highlights strong{
    color:#0f172a;
}

.ss-product-facts{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:0;
    margin:14px 0 0;
    border-top:1px solid #e2e8f0;
    border-bottom:1px solid #e2e8f0;
    padding:10px 0;
}
.ss-product-fact{
    display:grid;
    grid-template-columns:110px minmax(0,1fr);
    gap:10px;
    padding:7px 10px;
    min-width:0;
}
.ss-product-fact span{
    color:#64748b;
    font-size:12px;
}
.ss-product-fact strong{
    color:#0f172a;
    font-size:12px;
    font-weight:800;
    overflow-wrap:anywhere;
}

.ss-product-accordions{
    margin-top:12px;
    border-top:1px solid #e2e8f0;
}
.ss-product-accordions details{
    border-bottom:1px solid #e2e8f0;
}
.ss-product-accordions summary{
    list-style:none;
    cursor:pointer;
    padding:14px 2px;
    font-weight:800;
    position:relative;
}
.ss-product-accordions summary::-webkit-details-marker{display:none}
.ss-product-accordions summary::after{
    content:"+";
    position:absolute;
    right:4px;
    top:50%;
    transform:translateY(-50%);
    font-size:20px;
    font-weight:400;
}
.ss-product-accordions details[open] summary::after{
    content:"−";
}
.ss-accordion-content{
    padding:0 2px 14px;
    color:#64748b;
    font-size:13px;
    line-height:1.55;
}
.ss-accordion-content p{margin:0}

@media(max-width:760px){
    .ss-product-facts{
        grid-template-columns:1fr;
    }
    .ss-product-fact{
        grid-template-columns:100px minmax(0,1fr);
    }
}


/* Smart Store v4.5.19 — cleaner purchase-panel ending */
.ss-compact-product-meta{
    display:flex;
    flex-wrap:wrap;
    gap:8px 14px;
    margin:12px 0 0;
    padding:12px 14px;
    border:1px solid #e2e8f0;
    border-radius:10px;
    background:#f8fafc;
}
.ss-meta-item{
    display:inline-flex;
    align-items:baseline;
    gap:6px;
    min-width:0;
}
.ss-meta-label{
    color:#64748b;
    font-size:11px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.04em;
}
.ss-meta-value{
    color:#0f172a;
    font-size:12px;
    font-weight:700;
    overflow-wrap:anywhere;
}
.ss-meta-value a{
    color:var(--ss-teal);
    font-weight:800;
}
.ss-meta-value a:hover{
    text-decoration:underline;
}

/* Remove any leftover spacing from the deprecated product facts block. */
.ss-product-facts{
    display:none!important;
}

/* Keep accordions visually grouped before metadata. */
.ss-product-accordions{
    margin-bottom:0!important;
}
.ss-product-accordions + .ss-compact-product-meta{
    margin-top:12px;
}

@media(max-width:600px){
    .ss-compact-product-meta{
        display:grid;
        grid-template-columns:1fr;
        gap:8px;
    }
    .ss-meta-item{
        display:grid;
        grid-template-columns:72px minmax(0,1fr);
        align-items:start;
    }
}


/* Smart Store v4.5.20 — sticky product gallery on desktop
   Keeps the product image visible while the customer scrolls through
   the taller buying panel, then releases naturally before tabs/related content. */
@media(min-width:961px){
    .single-product div.product{
        display:flow-root;
    }

    .single-product div.product .woocommerce-product-gallery{
        position:-webkit-sticky!important;
        position:sticky!important;
        top:110px!important;
        align-self:flex-start!important;
        z-index:3;
    }

    /* Avoid a theme/container overflow rule breaking position:sticky. */
    .ss-single-product-page,
    .ss-single-product-page > .ss-container,
    .single-product div.product{
        overflow:visible!important;
    }
}

/* Tablet/mobile should scroll normally. */
@media(max-width:960px){
    .single-product div.product .woocommerce-product-gallery{
        position:relative!important;
        top:auto!important;
    }
}


/* Smart Store v4.5.21 — sticky gallery boundary fix */
@media(min-width:961px){
    .single-product div.product{
        display:block!important;
    }

    .single-product .ss-product-top{
        display:grid!important;
        grid-template-columns:minmax(0,1fr) minmax(0,1.05fr)!important;
        gap:36px!important;
        align-items:start!important;
        width:100%!important;
        position:relative!important;
        overflow:visible!important;
    }

    .single-product .ss-product-top > .woocommerce-product-gallery,
    .single-product .ss-product-top > .summary.entry-summary{
        float:none!important;
        width:100%!important;
        margin:0!important;
        min-width:0!important;
    }

    .single-product .ss-product-top > .woocommerce-product-gallery{
        position:-webkit-sticky!important;
        position:sticky!important;
        top:110px!important;
        z-index:3!important;
        align-self:start!important;
    }

    /* Tabs / description / related products sit outside ss-product-top,
       so the sticky image stops before them instead of covering them. */
    .single-product div.product > .woocommerce-tabs,
    .single-product div.product > .related,
    .single-product div.product > .upsells{
        clear:both!important;
        position:relative!important;
        z-index:4!important;
        background:#fff;
    }
}

@media(max-width:960px){
    .single-product .ss-product-top{
        display:block!important;
    }

    .single-product .ss-product-top > .woocommerce-product-gallery,
    .single-product .ss-product-top > .summary.entry-summary{
        width:100%!important;
        float:none!important;
    }

    .single-product .ss-product-top > .woocommerce-product-gallery{
        position:relative!important;
        top:auto!important;
    }
}


/* Smart Store v4.5.22 — stable product gallery dimensions
   Prevents page/layout jumping when gallery images have different aspect ratios. */

/* Main gallery viewport keeps a consistent square stage. */
.single-product .woocommerce-product-gallery .flex-viewport{
    aspect-ratio:1 / 1!important;
    height:auto!important;
    min-height:0!important;
    overflow:hidden!important;
    background:#fff;
}

/* WooCommerce may set slide heights from the image itself; normalize them. */
.single-product .woocommerce-product-gallery .woocommerce-product-gallery__wrapper,
.single-product .woocommerce-product-gallery .woocommerce-product-gallery__image,
.single-product .woocommerce-product-gallery .woocommerce-product-gallery__image > a{
    height:100%!important;
    min-height:0!important;
}

/* Main product images always fit inside the same stage without cropping. */
.single-product .woocommerce-product-gallery .woocommerce-product-gallery__image img{
    width:100%!important;
    height:100%!important;
    max-height:none!important;
    object-fit:contain!important;
    object-position:center center!important;
    display:block!important;
}

/* Keep thumbnails visually uniform as well. */
.single-product .woocommerce-product-gallery .flex-control-thumbs{
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:10px!important;
    margin-top:12px!important;
}
.single-product .woocommerce-product-gallery .flex-control-thumbs li{
    width:auto!important;
    float:none!important;
    margin:0!important;
    aspect-ratio:1 / 1!important;
    border:1px solid #e2e8f0;
    border-radius:8px;
    overflow:hidden;
    background:#fff;
}
.single-product .woocommerce-product-gallery .flex-control-thumbs img{
    width:100%!important;
    height:100%!important;
    object-fit:contain!important;
    display:block!important;
}

/* If FlexSlider is not active yet, keep the first image stage stable too. */
.single-product .woocommerce-product-gallery:not(.woocommerce-product-gallery--with-images) .woocommerce-product-gallery__wrapper,
.single-product .woocommerce-product-gallery .woocommerce-product-gallery__wrapper{
    min-height:0!important;
}

/* Mobile: keep a consistent square stage, but reduce thumbnail columns. */
@media(max-width:700px){
    .single-product .woocommerce-product-gallery .flex-control-thumbs{
        grid-template-columns:repeat(4,minmax(0,1fr))!important;
        gap:8px!important;
    }
}


/* Smart Store v4.5.27 — no-crop catalog cards.
   Single-product gallery deliberately retains the proven v4.5.22 CSS. */
.ss-product-media{
    aspect-ratio:1 / 1!important;
    overflow:hidden!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:14px!important;
    box-sizing:border-box!important;
    background:#fff!important;
}
.ss-product-media img{
    width:100%!important;
    height:100%!important;
    max-width:100%!important;
    max-height:100%!important;
    object-fit:contain!important;
    object-position:center!important;
    display:block!important;
}

.woocommerce ul.products li.product .woocommerce-LoopProduct-link img,
ul.products li.product .woocommerce-LoopProduct-link img{
    width:100%!important;
    height:auto!important;
    aspect-ratio:1 / 1!important;
    object-fit:contain!important;
    object-position:center!important;
    background:#fff!important;
    display:block!important;
}


/* Smart Store v4.5.29 — smarter variable-product chooser
   - Combines Storage + RAM into one valid configuration chooser.
   - Shows visual Color choices (variation image when available, color chip fallback).
   - Auto-selects/hides attributes with only one possible option (e.g. PTA Approved).
   WooCommerce's native selects remain in the DOM as the source of truth. */

.ss-smart-variation-ui{
    display:grid;
    gap:18px;
    margin:10px 0 16px;
}
.ss-smart-var-group{
    display:grid;
    grid-template-columns:92px minmax(0,1fr);
    gap:16px;
    align-items:start;
}
.ss-smart-var-label{
    font-weight:800;
    color:var(--ss-gray-900);
    padding-top:10px;
}
.ss-smart-var-options{
    display:flex;
    flex-wrap:wrap;
    gap:9px;
}
.ss-smart-config,
.ss-smart-color{
    appearance:none;
    border:1px solid #cbd5e1;
    background:#fff;
    color:var(--ss-gray-900);
    border-radius:9px;
    min-height:48px;
    padding:8px 14px;
    font:inherit;
    font-size:13px;
    font-weight:750;
    cursor:pointer;
    transition:.15s ease;
}
.ss-smart-config:hover,
.ss-smart-color:hover{
    border-color:var(--ss-teal);
    box-shadow:0 0 0 2px rgba(15,139,141,.08);
}
.ss-smart-config.is-active,
.ss-smart-color.is-active{
    border-color:var(--ss-teal);
    box-shadow:0 0 0 2px rgba(15,139,141,.14);
    background:#f0fdfa;
}
.ss-smart-config.is-disabled,
.ss-smart-color.is-disabled{
    opacity:.38;
    cursor:not-allowed;
    text-decoration:line-through;
}
.ss-smart-config{
    min-width:126px;
}
.ss-smart-color{
    min-width:92px;
    padding:7px 9px;
    display:grid;
    justify-items:center;
    gap:5px;
}
.ss-smart-color-media{
    width:58px;
    height:58px;
    border-radius:8px;
    display:grid;
    place-items:center;
    overflow:hidden;
    background:#f8fafc;
}
.ss-smart-color-media img{
    width:100%;
    height:100%;
    object-fit:contain;
    display:block;
}
.ss-smart-color-dot{
    width:34px;
    height:34px;
    border-radius:50%;
    border:1px solid rgba(15,23,42,.15);
    box-shadow:inset 0 0 0 3px rgba(255,255,255,.65);
}
.ss-smart-color-name{
    line-height:1.15;
    text-align:center;
}
tr.ss-smart-hidden-attribute{
    position:absolute!important;
    width:1px!important;
    height:1px!important;
    overflow:hidden!important;
    clip:rect(0,0,0,0)!important;
    white-space:nowrap!important;
    pointer-events:none!important;
}
@media(max-width:700px){
    .ss-smart-var-group{
        grid-template-columns:1fr;
        gap:6px;
    }
    .ss-smart-var-label{
        padding-top:0;
    }
    .ss-smart-config{
        min-width:0;
    }
    .ss-smart-color{
        min-width:84px;
    }
}


/* Smart Store v4.5.37 — Sold Out badges on visual variation options */
.ss-smart-color,
.ss-smart-config{
    position:relative;
}
.ss-sold-out-badge{
    position:absolute;
    top:-7px;
    left:-6px;
    z-index:3;
    font-size:9px;
    line-height:1;
    padding:4px 6px;
    border-radius:5px;
    background:#d1d5db;
    color:#475569;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.02em;
    box-shadow:0 1px 2px rgba(15,23,42,.08);
}
.ss-smart-color.is-sold-out,
.ss-smart-config.is-sold-out{
    opacity:.52;
}
.ss-smart-color.is-sold-out:hover,
.ss-smart-config.is-sold-out:hover{
    box-shadow:none;
}
.ss-smart-color.is-sold-out .ss-smart-color-name,
.ss-smart-config.is-sold-out{
    color:#64748b;
}

/* Smart Store v4.5.47 — brand/tag archives have no filter sidebar: use full-width product grid */
.ss-shop-layout.ss-no-filters{grid-template-columns:minmax(0,1fr)}
