/*
Theme Name: completeSTOP
Theme URI: https://example.com
Author: completeSTOP
Description: Mobile-first fashion store theme for WooCommerce: app-style storefront, filters and sorting, coupons, pincode check, reviews, login, cart sync, desktop layout. Elementor ready.
Version: 3.1.0
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Tags: e-commerce, woocommerce, elementor, fashion, mobile, custom-logo, custom-menu
Text Domain: completestop
Domain Path: /languages
*/

/* ================= Global + inner pages (blog, Woo cart/checkout/account, Elementor) ================= */
body{font-family:'Plus Jakarta Sans',sans-serif;background-color:#f8fafc;-webkit-tap-highlight-color:transparent}
.no-scrollbar::-webkit-scrollbar{display:none}
.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}
.cs-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.cs-page{background:#f8fafc;font-family:'Plus Jakarta Sans',sans-serif;margin:0}
.cs-topbar{background:#fff;border-bottom:1px solid #f1f5f9;padding:14px 20px;position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:16px}
.cs-topbar a{font-size:20px;color:#171717;text-decoration:none}
.cs-topbar b{color:#e11d48;font-weight:800}
.cs-topbar .custom-logo{max-height:34px;width:auto;display:block}
.cs-topbar .cs-nav ul{display:flex;gap:18px;margin:0;padding:0;list-style:none}
.cs-topbar .cs-nav a{font-size:13px;font-weight:600;color:#404040}
.cs-content{max-width:960px;margin:0 auto;padding:24px 16px 64px}
.cs-content *,.cs-content *::before,.cs-content *::after{box-sizing:border-box}
.cs-content h1{font-size:24px;font-weight:800;margin-bottom:12px}
.cs-content img{max-width:100%;height:auto}
.cs-with-sidebar{display:grid;grid-template-columns:minmax(0,1fr);gap:32px;max-width:1140px}
@media(min-width:900px){.cs-with-sidebar{grid-template-columns:minmax(0,1fr) 300px}}
.cs-post-card{background:#fff;border:1px solid #f1f5f9;border-radius:16px;padding:16px;margin-bottom:16px}
.cs-post-card h2{font-size:18px;font-weight:800;margin:8px 0}
.cs-post-card a{color:#171717;text-decoration:none}
.cs-post-card img{border-radius:12px;width:100%;height:auto}
.cs-meta{color:#9ca3af;font-size:12px;margin-bottom:12px}
.cs-widget{background:#fff;border:1px solid #f1f5f9;border-radius:16px;padding:16px;margin-bottom:16px;font-size:14px}
.cs-widget-title{font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;margin:0 0 10px}
.cs-comments{margin-top:32px}
.cs-comment-list{list-style:none;padding:0}
.cs-comment-list li{background:#fff;border:1px solid #f1f5f9;border-radius:12px;padding:12px;margin-bottom:10px;font-size:14px}
.cs-comments input[type=text],.cs-comments input[type=email],.cs-comments input[type=url],.cs-comments textarea{width:100%;border:1px solid #e5e7eb;border-radius:12px;padding:10px 12px}
.cs-comments input[type=submit]{background:#e11d48;color:#fff;border:0;border-radius:12px;padding:10px 18px;font-weight:700;cursor:pointer}

/* Hide/Reveal on scroll (mobile only) - transition */
.shf-item{transition:transform .3s ease;will-change:transform}
@media(max-width:768px){
  .shf-up.shf-hidden{transform:translateY(-100%)}
  .shf-down.shf-hidden{transform:translateY(100%)}
}
@media (prefers-reduced-motion:reduce){.shf-item{transition:none}}
.cs-footer{text-align:center;color:#6b7280;font-size:13px;padding:32px 16px;background:#fff;border-top:1px solid #f1f5f9;margin-top:24px}
.cs-footer-widgets{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;max-width:1100px;margin:0 auto 24px;text-align:left}
@media(min-width:768px){.cs-footer-widgets{grid-template-columns:repeat(3,minmax(0,1fr))}}
.cs-footer-menu{list-style:none;display:flex;flex-wrap:wrap;gap:8px 20px;justify-content:center;margin:0 0 12px;padding:0}
.cs-footer-menu a{color:#404040;font-weight:600;text-decoration:none}
.cs-footer-menu a:hover{color:#e11d48}
.cs-copy{margin:0;color:#9ca3af;font-size:12px}
.cs-page .elementor-widget-cs_app_store .cs-app-embed{width:100%}

/* WooCommerce inside the theme wrapper */
.woocommerce a.button,.woocommerce button.button,.woocommerce #respond input#submit,.woocommerce a.button.alt,.woocommerce button.button.alt{background:#e11d48;color:#fff;border-radius:12px}
.cs-content .woocommerce{font-size:14px}
.cs-content .woocommerce-message,.cs-content .woocommerce-info{border-top-color:#e11d48}
.cs-content .woocommerce-message::before,.cs-content .woocommerce-info::before{color:#e11d48}
.cs-content table.shop_table{border-radius:12px;background:#fff}
.cs-content .woocommerce form .form-row input.input-text,.cs-content .woocommerce form .form-row textarea{border:1px solid #e5e7eb;border-radius:12px;padding:10px 12px}
.cs-content ul.products{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:0;padding:0;list-style:none}
.cs-content ul.products li.product{width:auto!important;margin:0!important;float:none!important}
@media(min-width:768px){.cs-content ul.products{grid-template-columns:repeat(4,1fr)}}

/* Elementor Full Width template: leave page layout to Elementor widgets/containers. */
body.page-template-elementor-full-width-php .cs-elementor-full-width{width:100%;max-width:none;margin:0;padding:0;}
body.page-template-elementor-full-width-php .cs-elementor-full-width > .elementor{width:100%;max-width:none;}


/* Desktop-only professional full-width layouts for all pages except single product.
   No rules in this block run below 1024px; single-product detail stays untouched. */
@media (min-width: 1024px) {
  body:not(.single-product) .cs-content,
  body:not(.single-product) .site-content,
  body:not(.single-product) .content-area {
    width: 100%;
    max-width: none;
  }
  body:not(.single-product) .cs-content {
    max-width: 1440px;
    margin-left: auto;
    margin-right: auto;
    padding: 32px 40px 72px;
  }
  body:not(.single-product).woocommerce-shop .cs-content,
  body:not(.single-product).post-type-archive-product .cs-content,
  body:not(.single-product).tax-product_cat .cs-content,
  body:not(.single-product).tax-product_tag .cs-content,
  body:not(.single-product).woocommerce-cart .cs-content,
  body:not(.single-product).woocommerce-checkout .cs-content {
    max-width: 1600px;
    padding-left: 40px;
    padding-right: 40px;
  }
  body:not(.single-product) .cs-with-sidebar {
    grid-template-columns: minmax(0, 1fr) 300px;
    max-width: 1600px;
  }
  body:not(.single-product) .woocommerce ul.products,
  body:not(.single-product) ul.products {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 28px 20px;
  }
  body:not(.single-product) .woocommerce ul.products::before,
  body:not(.single-product) .woocommerce ul.products::after,
  body:not(.single-product) ul.products::before,
  body:not(.single-product) ul.products::after {
    display: none !important;
    content: none !important;
  }
  body:not(.single-product) .woocommerce ul.products li.product,
  body:not(.single-product) ul.products li.product {
    float: none;
    width: auto;
    margin: 0;
    min-width: 0;
  }
  body:not(.single-product) .cs-topbar {
    padding-left: max(32px, calc((100vw - 1520px) / 2));
    padding-right: max(32px, calc((100vw - 1520px) / 2));
  }
  body:not(.single-product) .cs-post-card {
    padding: 24px;
    border-radius: 18px;
  }
}
@media (min-width: 1024px) and (max-width: 1200px) {
  body:not(.single-product) .woocommerce ul.products,
  body:not(.single-product) ul.products {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  body:not(.single-product) .cs-content {
    padding-left: 28px;
    padding-right: 28px;
  }
}
