/* =========================================================================
   EmmiHome — WooCommerce + content styles
   ========================================================================= */

/* ---------- Blog / content layout ---------- */
.blog-layout{display:grid;grid-template-columns:1fr 300px;gap:36px;align-items:start}
.blog-main{min-width:0}
.posts-grid--blog{grid-template-columns:1fr 1fr}
.single-article,.page-article{background:#fff;border:1px solid var(--c-line);border-radius:var(--radius);padding:34px}
.entry-cats a{display:inline-block;background:var(--c-primary-soft);color:var(--c-primary);font-size:.72rem;font-weight:600;padding:4px 11px;border-radius:20px;margin:0 6px 6px 0}
.entry-title{font-size:1.9rem;margin:6px 0 12px}
.entry-meta{display:flex;flex-wrap:wrap;gap:18px;color:var(--c-muted);font-size:.82rem;align-items:center}
.entry-meta svg{width:15px;height:15px;vertical-align:-3px;color:var(--c-primary)}
.entry-thumb{margin:22px 0;border-radius:var(--radius);overflow:hidden}
.entry-thumb img{width:100%;display:block}
.entry-content{font-size:1rem;line-height:1.85;color:var(--c-body)}
.entry-content h2,.entry-content h3,.entry-content h4{margin:1.5em 0 .6em;color:var(--c-ink)}
.entry-content a{color:var(--c-primary);text-decoration:underline}
.entry-content ul,.entry-content ol{margin:0 0 1.2em 1.3em}
.entry-content ul{list-style:disc}.entry-content ol{list-style:decimal}
.entry-content li{margin-bottom:.5em}
.entry-content blockquote{border-left:4px solid var(--c-primary);background:var(--c-bg-soft);padding:16px 22px;border-radius:0 var(--radius) var(--radius) 0;margin:1.4em 0;font-style:italic;color:var(--c-ink)}
.entry-footer{margin-top:26px;padding-top:18px;border-top:1px solid var(--c-line)}
.tags-label{font-weight:600;color:var(--c-ink)}
.entry-footer a{display:inline-block;background:var(--c-bg-soft);padding:4px 11px;border-radius:20px;font-size:.78rem;margin:0 4px 4px 0;color:var(--c-body)}
.page-links{margin-top:18px;font-weight:600}

/* ---------- Sidebar / widgets ---------- */
.sidebar .widget,.widget{margin-bottom:26px;background:#fff;border:1px solid var(--c-line);border-radius:var(--radius);padding:22px}
.widget-title{font-size:1rem;margin:0 0 16px;padding-bottom:12px;border-bottom:1px solid var(--c-line)}
.widget ul li{padding:8px 0;border-bottom:1px solid var(--c-line-2);font-size:.88rem;display:flex;justify-content:space-between;gap:8px}
.widget ul li:last-child{border-bottom:none}
.widget ul li a{color:var(--c-body)}
.widget ul li a:hover{color:var(--c-primary)}
.widget select{width:100%;padding:10px 12px;border:1px solid var(--c-line);border-radius:var(--radius-sm)}

/* ---------- Search form (default WP) ---------- */
.search-form:not(.header-search .search-form){}
.widget .search-form,.no-results .search-form{display:flex;border:2px solid var(--c-primary);border-radius:var(--radius-sm);overflow:hidden}
.widget .search-field,.no-results .search-field{flex:1;border:none;padding:11px 14px}
.widget .search-submit,.no-results .search-submit{border:none;background:var(--c-primary);color:#fff;padding:0 18px;font-weight:600}

/* ---------- Pagination (blog) ---------- */
.navigation.pagination{margin-top:36px}
.navigation .nav-links{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}
.navigation .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;padding:0 12px;border:1px solid var(--c-line);border-radius:var(--radius-sm);background:#fff;color:var(--c-ink);font-weight:500}
.navigation .page-numbers.current,.navigation .page-numbers:hover{background:var(--c-primary);border-color:var(--c-primary);color:#fff}

/* =========================================================================
   WOOCOMMERCE
   ========================================================================= */

/* Hide WooCommerce default demo store + duplicate breadcrumb */
.woocommerce-breadcrumb{display:none}

/* ---------- Shop layout ---------- */
.shop-layout{display:grid;grid-template-columns:262px 1fr;gap:30px;align-items:start}
.shop-main{min-width:0}
.shop-filter-toggle{display:none}

/* Products header / toolbar */
.woocommerce-products-header__title.page-title{font-size:1.7rem;margin-bottom:14px}
.woocommerce .woocommerce-result-count{float:left;margin:0;color:var(--c-muted);font-size:.85rem;line-height:44px}
.woocommerce .woocommerce-ordering{float:right;margin:0 0 18px}
.woocommerce .woocommerce-ordering select,select.orderby{padding:11px 36px 11px 14px;border:1px solid var(--c-line);border-radius:var(--radius-sm);background:#fff;font-size:.85rem;cursor:pointer}
.woocommerce-page .shop-main::after,.woocommerce .columns-4::after{content:"";display:table;clear:both}

/* Product grid */
.woocommerce ul.products,.woocommerce-page ul.products{display:grid!important;grid-template-columns:repeat(4,1fr);gap:18px;margin:0;padding:14px 0 0;clear:both}
.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{width:auto!important;margin:0!important;float:none!important;padding:0!important;clear:none!important}
.woocommerce ul.products li.product::before{display:none!important}
.woocommerce ul.products.columns-1{grid-template-columns:1fr}
.woocommerce ul.products.columns-2{grid-template-columns:repeat(2,1fr)}
.woocommerce ul.products.columns-3{grid-template-columns:repeat(3,1fr)}
.woocommerce ul.products.columns-5{grid-template-columns:repeat(5,1fr)}

/* Card add-to-cart override (beats generic woo button) */
.woocommerce .product-card a.button,.woocommerce .product-card a.add_to_cart_button{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;background:var(--c-bg-soft);color:var(--c-ink);font-weight:600;font-size:.84rem;padding:11px;border-radius:var(--radius-sm);border:none}
.woocommerce .product-card a.button:hover,.woocommerce .product-card a.add_to_cart_button:hover{background:var(--c-primary);color:#fff}
.woocommerce .product-card a.added_to_cart{display:flex;align-items:center;justify-content:center;width:100%;background:var(--c-success);color:#fff;font-weight:600;padding:11px;border-radius:var(--radius-sm);margin-top:6px}
.product-card .button.loading{opacity:.7}

/* Star rating recolor */
.star-rating{color:var(--c-accent);font-size:.9em}
.woocommerce .star-rating span::before{color:var(--c-accent)}

/* Buttons (generic woo) */
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,.woocommerce .button,.woocommerce-page .button{background:var(--c-primary);color:#fff;border-radius:var(--radius-sm);padding:13px 24px;font-weight:600;border:none;font-size:.9rem;transition:all .25s;cursor:pointer}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover,.woocommerce #respond input#submit:hover,.woocommerce .button:hover{background:var(--c-primary-dark);color:#fff}
.woocommerce .button.alt,.woocommerce #respond input#submit.alt{background:var(--c-secondary)}
.woocommerce .button.alt:hover{background:var(--c-secondary-dark)}
.woocommerce .single_add_to_cart_button{padding:15px 32px!important;text-transform:none}

/* Quantity */
.woocommerce .quantity{display:inline-flex;align-items:center;border:1px solid var(--c-line);border-radius:var(--radius-sm);overflow:hidden}
.woocommerce .quantity .qty{width:62px;height:48px;border:none;text-align:center;font-weight:600;background:#fff}

/* Sale flash */
.woocommerce span.onsale{background:var(--c-secondary);color:#fff;border-radius:20px;padding:6px 12px;font-weight:600;font-size:.78rem;min-height:auto;min-width:auto;line-height:1;top:14px;left:14px;margin:0}

/* ---------- Single product ---------- */
.single-product div.product{display:grid;grid-template-columns:minmax(0,1.05fr) 1fr;gap:44px}
.single-product div.product .woocommerce-product-gallery{float:none;width:100%;margin:0}
.single-product .woocommerce-product-gallery__image img{border-radius:var(--radius)}
.single-product div.product .summary{float:none;width:100%;margin:0}
.single-product .product_title{font-size:1.9rem;margin-bottom:12px}
.single-product .woocommerce-product-rating{margin-bottom:14px;display:flex;align-items:center;gap:10px}
.single-product .woocommerce-product-rating .woocommerce-review-link{color:var(--c-muted);font-size:.84rem}
.single-product .price,.single-product .summary .price{color:var(--c-ink);font-size:1.7rem;font-weight:700;margin-bottom:16px}
.single-product .price del{color:var(--c-muted);font-size:1rem;font-weight:400;margin-right:8px}
.single-product .price ins{color:var(--c-secondary);text-decoration:none}
.woocommerce-product-details__short-description{color:var(--c-body);line-height:1.75;margin-bottom:20px}
.single-product form.cart{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:22px 0}
.single-product .product_meta{font-size:.85rem;color:var(--c-muted);margin-top:18px;border-top:1px solid var(--c-line);padding-top:16px}
.single-product .product_meta>span{display:block;margin-bottom:6px}
.single-product .product_meta a{color:var(--c-primary)}

/* Tabs */
.woocommerce-tabs{grid-column:1/-1;margin-top:46px}
.woocommerce-tabs ul.tabs{display:flex;flex-wrap:wrap;gap:8px;border:none;padding:0;margin:0 0 22px}
.woocommerce-tabs ul.tabs::before{display:none}
.woocommerce-tabs ul.tabs li{background:var(--c-bg-soft);border:none;border-radius:30px;margin:0;padding:0}
.woocommerce-tabs ul.tabs li::before,.woocommerce-tabs ul.tabs li::after{display:none}
.woocommerce-tabs ul.tabs li a{padding:10px 20px;font-weight:600;color:var(--c-body)}
.woocommerce-tabs ul.tabs li.active{background:var(--c-primary)}
.woocommerce-tabs ul.tabs li.active a{color:#fff}
.woocommerce-Tabs-panel h2{font-size:1.3rem}
.woocommerce-Tabs-panel{line-height:1.8}

/* Related / upsells */
.related.products,.upsells.products,.cross-sells{grid-column:1/-1;margin-top:36px}
.related.products>h2,.upsells.products>h2{font-size:1.4rem;margin-bottom:20px}

/* ---------- Cart ---------- */
.woocommerce table.shop_table{border:1px solid var(--c-line);border-radius:var(--radius);border-collapse:separate;border-spacing:0;overflow:hidden}
.woocommerce table.shop_table th{background:var(--c-bg-soft);padding:16px;font-weight:600;color:var(--c-ink)}
.woocommerce table.shop_table td{padding:16px;border-top:1px solid var(--c-line-2)}
.woocommerce .cart_item img{width:64px;border-radius:var(--radius-sm)}
.woocommerce a.remove{color:var(--c-secondary)!important;border:1px solid var(--c-line);line-height:1.6}
.woocommerce a.remove:hover{background:var(--c-secondary)!important;color:#fff!important}
.cart-collaterals .cart_totals{float:right;width:42%}
.cart-collaterals .cart_totals h2{font-size:1.3rem;margin-bottom:14px}
.woocommerce .cart-collaterals .cart_totals table{width:100%}
.woocommerce-cart .wc-proceed-to-checkout .checkout-button{display:block;text-align:center;font-size:1rem;padding:16px}
.woocommerce .cart input.button,.woocommerce .actions .button{padding:13px 22px}
@media(min-width:993px){.woocommerce-cart .woocommerce>.woocommerce-notices-wrapper{grid-column:1/-1}}

/* ---------- Checkout ---------- */
.woocommerce .col2-set,.woocommerce-page .col2-set{display:grid;grid-template-columns:1fr 1fr;gap:30px;width:100%}
.woocommerce .col2-set .col-1,.woocommerce .col2-set .col-2{width:auto;float:none}
.woocommerce-checkout h3{font-size:1.2rem;margin-bottom:16px}
.woocommerce-checkout #customer_details{margin-bottom:30px}
#order_review,#order_review_heading{padding:0}
.woocommerce-checkout #payment{background:var(--c-bg-soft);border-radius:var(--radius);padding:20px}
.woocommerce-checkout #payment ul.payment_methods{border-bottom:1px solid var(--c-line)}
.woocommerce-checkout #payment div.payment_box{background:#fff;border-radius:var(--radius-sm)}
.woocommerce-checkout #payment div.payment_box::before{display:none}
.woocommerce-checkout-review-order-table{margin-bottom:20px}

/* ---------- My Account ---------- */
.woocommerce-account .woocommerce::after{content:"";display:table;clear:both}
.woocommerce-MyAccount-navigation{width:24%;float:left}
.woocommerce-MyAccount-navigation ul{border:1px solid var(--c-line);border-radius:var(--radius);overflow:hidden}
.woocommerce-MyAccount-navigation ul li{border-bottom:1px solid var(--c-line-2);padding:0;display:block}
.woocommerce-MyAccount-navigation ul li a{display:block;padding:13px 18px;font-weight:500;color:var(--c-ink)}
.woocommerce-MyAccount-navigation ul li.is-active a,.woocommerce-MyAccount-navigation ul li a:hover{background:var(--c-primary);color:#fff}
.woocommerce-MyAccount-content{width:72%;float:right}
.woocommerce-account .woocommerce-MyAccount-navigation+.woocommerce-MyAccount-content{min-height:200px}

/* Login / register forms */
.woocommerce-form-login,.woocommerce-form-register,.woocommerce form.login,.woocommerce form.register,.woocommerce .col2-set+.woocommerce form{border:1px solid var(--c-line);border-radius:var(--radius);padding:26px}
.woocommerce .col2-set .u-columns{display:grid;grid-template-columns:1fr 1fr;gap:24px}

/* Form fields */
.woocommerce form .form-row{padding:0;margin:0 0 16px}
.woocommerce form .form-row label{font-weight:500;color:var(--c-ink);margin-bottom:6px;display:block;font-size:.88rem}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce .input-text,.woocommerce-page input.input-text,.woocommerce textarea,.comment-form input[type=text],.comment-form input[type=email],.comment-form input[type=url],.comment-form textarea,.woocommerce-ordering+*,.woocommerce input[type=text],.woocommerce input[type=email],.woocommerce input[type=tel],.woocommerce input[type=password]{width:100%;border:1px solid var(--c-line);border-radius:var(--radius-sm);padding:12px 14px;background:#fff;font-size:.9rem;color:var(--c-ink)}
.woocommerce form .form-row input.input-text:focus,.woocommerce textarea:focus,.comment-form input:focus,.comment-form textarea:focus{outline:none;border-color:var(--c-primary);box-shadow:var(--ring)}
.select2-container--default .select2-selection--single{border:1px solid var(--c-line);height:46px;border-radius:var(--radius-sm)}
.select2-container--default .select2-selection--single .select2-selection__rendered{line-height:46px;padding-left:14px}
.select2-container--default .select2-selection--single .select2-selection__arrow{height:44px}

/* Notices */
.woocommerce-message,.woocommerce-info,.woocommerce-error,.woocommerce-noreviews,ul.woocommerce-error{border:none;border-radius:var(--radius);padding:15px 18px 15px 50px;position:relative;list-style:none;margin-bottom:20px;font-size:.9rem}
.woocommerce-message::before,.woocommerce-info::before,.woocommerce-error::before{left:18px;top:50%;transform:translateY(-50%)}
.woocommerce-message{background:#e8f8ef;color:#1c7a45;border-left:4px solid var(--c-success)}
.woocommerce-info{background:var(--c-primary-soft);color:var(--c-primary);border-left:4px solid var(--c-primary)}
.woocommerce-error{background:#fdeaea;color:#b23636;border-left:4px solid var(--c-secondary)}
.woocommerce-message .button,.woocommerce-info .button{padding:8px 16px;font-size:.8rem}

/* Price filter widget */
.price_slider_wrapper .ui-slider{height:5px;background:var(--c-line);border-radius:3px;position:relative;margin:20px 0}
.ui-slider .ui-slider-range{background:var(--c-primary);height:5px;position:absolute;border-radius:3px}
.ui-slider .ui-slider-handle{width:16px;height:16px;background:#fff;border:3px solid var(--c-primary);border-radius:50%;top:-6px;position:absolute;cursor:pointer;margin-left:-8px}
.price_slider_amount{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:.84rem}
.price_slider_amount .button{order:2;padding:8px 16px;font-size:.8rem}
.price_slider_amount .price_label{order:1;color:var(--c-muted)}

/* Widget product lists */
.woocommerce ul.product_list_widget li{display:flex;gap:12px;align-items:center}
.woocommerce ul.product_list_widget li img{width:50px;height:50px;border-radius:var(--radius-sm);float:none;margin:0}
.woocommerce ul.product_list_widget li a{font-weight:500;color:var(--c-ink)}

/* ---------- Mini cart ---------- */
.mini-cart-wrap{position:relative}
.mini-cart-panel{position:absolute;top:100%;right:0;width:340px;background:#fff;border:1px solid var(--c-line);border-radius:var(--radius);box-shadow:var(--shadow-lg);padding:18px;opacity:0;visibility:hidden;transform:translateY(12px);transition:all .25s;z-index:95}
.mini-cart-wrap:hover .mini-cart-panel{opacity:1;visibility:visible;transform:translateY(0)}
.woocommerce .widget_shopping_cart .cart_list,.widget_shopping_cart_content ul.cart_list{margin:0;padding:0}
ul.woocommerce-mini-cart li{padding:12px 0;border-bottom:1px solid var(--c-line-2);display:flex;gap:10px;align-items:center}
ul.woocommerce-mini-cart li a.remove{position:static;margin-left:auto}
ul.woocommerce-mini-cart li img{width:48px!important;height:48px;border-radius:var(--radius-sm);float:none!important;margin:0!important}
ul.woocommerce-mini-cart li a:not(.remove){font-weight:500;color:var(--c-ink);font-size:.86rem}
.woocommerce-mini-cart__total{display:flex;justify-content:space-between;padding:14px 0;font-size:1rem;border-top:1px solid var(--c-line);margin-top:6px}
.woocommerce-mini-cart__buttons{display:flex;gap:10px;margin:0}
.woocommerce-mini-cart__buttons .button{flex:1;text-align:center;padding:11px;font-size:.82rem}
.woocommerce-mini-cart__buttons .button.checkout{background:var(--c-ink)}
.woocommerce-mini-cart__empty-message{padding:16px 0;color:var(--c-muted);text-align:center}

/* ---------- Comments ---------- */
.comments-area{background:#fff;border:1px solid var(--c-line);border-radius:var(--radius);padding:30px;margin-top:30px}
.comments-title,.comment-reply-title{font-size:1.3rem;margin-bottom:20px}
.comment-list{margin-bottom:30px}
.comment-list li{margin-bottom:18px}
.comment-body{background:var(--c-bg-soft);border-radius:var(--radius);padding:18px;position:relative}
.comment-author .avatar{border-radius:50%;margin-right:10px}
.comment-author .fn{font-weight:600;color:var(--c-ink)}
.comment-metadata{font-size:.78rem;color:var(--c-muted);margin-bottom:8px}
.comment-form{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.comment-form .comment-form-comment,.comment-form .form-submit,.comment-form-cookies-consent{grid-column:1/-1}
.comment-form label{font-weight:500;font-size:.85rem;display:block;margin-bottom:6px}
.comment-form input,.comment-form textarea{width:100%;border:1px solid var(--c-line);border-radius:var(--radius-sm);padding:12px 14px}
.comment-form .submit{background:var(--c-primary);color:#fff;border:none;border-radius:var(--radius-sm);padding:13px 26px;font-weight:600;cursor:pointer}

/* ---------- Responsive ---------- */
@media(max-width:1200px){
  .woocommerce ul.products,.woocommerce-page ul.products{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:992px){
  .blog-layout{grid-template-columns:1fr}
  .shop-layout{grid-template-columns:1fr}
  .shop-sidebar{display:none}
  .single-product div.product{grid-template-columns:1fr;gap:24px}
  .cart-collaterals .cart_totals{float:none;width:100%}
  .woocommerce-MyAccount-navigation,.woocommerce-MyAccount-content{width:100%;float:none}
  .woocommerce-MyAccount-navigation{margin-bottom:24px}
}
@media(max-width:768px){
  .posts-grid--blog{grid-template-columns:1fr}
  .woocommerce .col2-set,.woocommerce-page .col2-set,.comment-form{grid-template-columns:1fr}
  .mini-cart-panel{display:none}
  .single-article,.page-article{padding:22px}
}
@media(max-width:560px){
  .woocommerce ul.products,.woocommerce-page ul.products{grid-template-columns:repeat(2,1fr);gap:12px}
}
