/* Graphite & Signal: bring WooCommerce's own markup onto the palette.
   Source of truth: assets/theme.css in the project repo. */

:root{
  --tya-bg:#F2F6FA; --tya-surface:#FFFFFF; --tya-ink:#0E2B4F;
  --tya-muted:#586A80; --tya-line:#DCE4EE; --tya-accent:#12BFDA; --tya-sale:#C4372F;
}

body{background:var(--tya-bg);color:var(--tya-ink);}

/* ---------- Sidebar filter widgets ---------- */
.elementor-widget-wp-widget-woocommerce_product_categories .widget-title,
.elementor-widget-wp-widget-woocommerce_layered_nav .widget-title,
.elementor-widget-wp-widget-woocommerce_price_filter .widget-title,
.elementor-widget-wp-widget-woocommerce_brand_nav .widget-title,
.elementor-widget-wp-widget-woocommerce_layered_nav_filters .widget-title{
  font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:14px;
  color:var(--tya-ink); margin:0 0 10px; padding-bottom:8px;
  border-bottom:1px solid var(--tya-line);
}
.widget_product_categories ul,
.woocommerce-widget-layered-nav ul,
.widget_layered_nav_filters ul,
.wc-brand-list-layered-nav-brand ul{list-style:none;margin:0;padding:0;}
.widget_product_categories li,
.woocommerce-widget-layered-nav li,
.wc-brand-list-layered-nav-brand li{margin:0;padding:3px 0;}
.widget_product_categories a,
.woocommerce-widget-layered-nav a,
.wc-brand-list-layered-nav-brand a{
  font-family:Manrope,sans-serif; font-size:14px;
  color:var(--tya-muted); text-decoration:none;
}
.widget_product_categories a:hover,
.woocommerce-widget-layered-nav a:hover,
.wc-brand-list-layered-nav-brand a:hover{color:var(--tya-ink);}
.widget_product_categories .count,
.woocommerce-widget-layered-nav .count{color:#8E9DB0;font-size:12px;}
.widget_product_categories .children{padding-left:12px;}
.woocommerce-widget-layered-nav-list__item.chosen a{color:var(--tya-ink);font-weight:700;}

/* Active filter chips: pill outline, filling to accent. */
.widget_layered_nav_filters ul li a{
  display:inline-block; font-family:Manrope,sans-serif; font-size:13px; font-weight:600;
  color:var(--tya-ink); background:var(--tya-accent);
  border-radius:999px; padding:5px 12px; margin:0 6px 6px 0; text-decoration:none;
}
.widget_layered_nav_filters ul li{padding:0;}

/* Price filter slider */
.price_slider_wrapper .ui-slider{background:var(--tya-line);height:3px;border-radius:999px;}
.price_slider_wrapper .ui-slider .ui-slider-range{background:var(--tya-ink);}
.price_slider_wrapper .ui-slider .ui-slider-handle{
  background:var(--tya-ink); border:2px solid var(--tya-surface);
  width:14px;height:14px;border-radius:999px;top:-6px;
}
.price_slider_amount .button{
  background:var(--tya-accent)!important; color:var(--tya-ink)!important;
  border-radius:6px!important; font-family:Manrope,sans-serif; font-weight:700; font-size:13px;
}
.price_slider_amount .price_label{font-family:Manrope,sans-serif;font-size:13px;color:var(--tya-muted);}

/* ---------- Product grid ---------- */
ul.products li.product{
  background:var(--tya-surface); border:1px solid var(--tya-line); border-radius:6px;
  padding:14px; box-shadow:none; transition:border-color .15s ease;
}
ul.products li.product:hover{border-color:var(--tya-ink);}
ul.products li.product img{border-radius:4px;margin-bottom:12px;}
ul.products li.product .woocommerce-loop-product__title{
  font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:15px;
  line-height:1.25; color:var(--tya-ink); padding:0; margin:0 0 6px;
}
ul.products li.product .price{
  font-family:Manrope,sans-serif; font-weight:700; font-size:15px; color:var(--tya-ink);
}
ul.products li.product .price del{color:var(--tya-muted);font-weight:400;opacity:1;}
ul.products li.product .price ins{color:var(--tya-sale);text-decoration:none;}
ul.products li.product .button,
ul.products li.product .added_to_cart{
  font-family:Manrope,sans-serif; font-weight:700; font-size:13px;
  background:transparent; color:var(--tya-ink);
  border:1px solid var(--tya-ink); border-radius:6px; padding:9px 14px; margin-top:10px;
}
ul.products li.product .button:hover{background:var(--tya-accent);border-color:var(--tya-accent);}
span.onsale{
  background:var(--tya-sale); color:#fff; border-radius:6px;
  font-family:Manrope,sans-serif; font-weight:700; font-size:12px;
  min-height:0; min-width:0; padding:4px 10px; line-height:1.4;
}

/* ---------- Result count, sorting, pagination ---------- */
.woocommerce-result-count,.woocommerce-ordering select{
  font-family:Manrope,sans-serif; font-size:14px; color:var(--tya-muted);
}
.woocommerce-ordering select{
  border:1px solid var(--tya-line); border-radius:6px; padding:9px 12px;
  background:var(--tya-surface); color:var(--tya-ink);
}
.woocommerce-pagination ul.page-numbers{border:0;display:flex;gap:6px;}
.woocommerce-pagination ul.page-numbers li{border:0;}
.woocommerce-pagination .page-numbers{
  font-family:Manrope,sans-serif; font-weight:600; font-size:14px;
  border:1px solid var(--tya-line); border-radius:6px; padding:8px 13px;
  color:var(--tya-ink); background:var(--tya-surface);
}
.woocommerce-pagination .page-numbers.current{
  background:var(--tya-accent); border-color:var(--tya-accent); color:var(--tya-ink);
}

/* ---------- Single product ---------- */
.woocommerce div.product form.cart .variations{margin-bottom:14px;}
.woocommerce div.product form.cart .variations label{
  font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:13px; color:var(--tya-ink);
}
.woocommerce div.product form.cart .variations select{
  border:1px solid var(--tya-line); border-radius:6px; padding:11px 12px;
  font-family:Manrope,sans-serif; font-size:14px; color:var(--tya-ink);
  background:var(--tya-surface); min-width:220px;
}
.woocommerce .quantity .qty{
  border:1px solid var(--tya-line); border-radius:6px; padding:12px 8px;
  font-family:Manrope,sans-serif; color:var(--tya-ink); background:var(--tya-surface);
}
.woocommerce div.product .woocommerce-tabs ul.tabs{border-bottom:1px solid var(--tya-line);padding:0;margin:0 0 20px;}
.woocommerce div.product .woocommerce-tabs ul.tabs::before{border:0;}
.woocommerce div.product .woocommerce-tabs ul.tabs li{
  background:transparent; border:0; border-radius:0; margin:0 22px 0 0; padding:0;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after{display:none;}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{
  font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:15px;
  color:var(--tya-muted); padding:10px 0; display:block;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{
  color:var(--tya-ink); box-shadow:inset 0 -2px 0 var(--tya-ink);
}
.woocommerce div.product .woocommerce-tabs .panel h2{
  font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:20px; color:var(--tya-ink);
}
.woocommerce div.product .woocommerce-tabs .panel{
  font-family:Manrope,sans-serif; color:var(--tya-muted); line-height:1.7;
}
.woocommerce div.product .woocommerce-tabs .panel h1,
.woocommerce div.product .woocommerce-tabs .panel h3{
  font-family:'Space Grotesk',sans-serif; color:var(--tya-ink);
}

/* ---------- Breadcrumb, notices, buttons ---------- */
.woocommerce-breadcrumb,.woocommerce-breadcrumb a{
  font-family:Manrope,sans-serif; font-size:13px; color:var(--tya-muted); text-decoration:none;
}
.woocommerce-breadcrumb a:hover{color:var(--tya-ink);}
.woocommerce-message,.woocommerce-info,.woocommerce-error{
  border-top-color:var(--tya-ink); background:var(--tya-surface);
  font-family:Manrope,sans-serif; border-radius:6px;
}
.woocommerce-message::before,.woocommerce-info::before{color:var(--tya-ink);}
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,
.woocommerce a.button.alt,.woocommerce button.button.alt{
  font-family:Manrope,sans-serif; font-weight:700; border-radius:6px;
  background:var(--tya-accent); color:var(--tya-ink);
}
.woocommerce a.button:hover,.woocommerce button.button:hover,
.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover{
  background:#0EA5C2; color:var(--tya-ink);
}

/* Nav wrap guard: keep the primary menu on one line at desktop. */
@media (min-width:1025px){
  .elementor-nav-menu--main .elementor-nav-menu{flex-wrap:nowrap;}
  .elementor-nav-menu--main .elementor-nav-menu>li>a{white-space:nowrap;}
}
