/* ============================================================
   Niarka Herbal Care — v2 additions (WooCommerce-connected design)
   Loaded after home.css on every page. home.css stays untouched.
   ============================================================ */

/* ---------- design tokens on any .niarka-home element, so the header and
   footer wrappers on Astra pages (cart, checkout…) get them too ---------- */
.niarka-home{
  --green:#1f5d3a; --green-d:#173f2a; --green-dd:#102c1d;
  --sage:#7c9266; --sage-tint:#edefe1; --sage-line:#cdd2bb;
  --cream:#faf6ec; --cream-d:#f1ead7; --cream-dd:#e9dfc4;
  --gold:#a87d2e; --gold-l:#c69a44;
  --ink:#3a3225; --ink-soft:#766c56;
  --line:#d9d3bc;
  --shadow:0 8px 24px rgba(40,30,15,.08);
  --shadow-lg:0 18px 50px rgba(40,30,15,.14);
}

/* ---------- header/footer wrappers on Astra pages ---------- */
.n-chrome, .n-chrome *, .n-chrome *::before, .n-chrome *::after{ box-sizing:border-box; }
.n-chrome{
  font-family:'Jost','Helvetica Neue',Arial,sans-serif; font-size:16px; line-height:1.6;
  color:var(--ink); -webkit-font-smoothing:antialiased;
}
.n-chrome img{ display:block; max-width:100%; height:auto; }
.n-chrome a{ color:inherit; text-decoration:none; }
.n-chrome .serif{ font-family:'Cormorant Garamond','Times New Roman',serif; font-weight:600; letter-spacing:-.005em; }
.n-chrome-top{ position:sticky; top:0; z-index:999; }
.n-chrome-top .n-bar{ position:relative; }
body.admin-bar .n-chrome-top, body.admin-bar.niarka-home .n-bar{ top:32px; }
body.admin-bar .n-chrome-top .n-bar{ top:0; }

/* ---------- header: account icon + live cart count ---------- */
.niarka-home .n-icon{ position:relative; }
.niarka-home .n-cart-count{
  position:absolute; top:-5px; right:-6px; min-width:18px; height:18px; padding:0 5px;
  border-radius:9px; background:var(--gold); color:#fff; border:2px solid var(--cream);
  font-size:10px; font-weight:600; line-height:14px; text-align:center;
}
.niarka-home .n-cart-count[data-count="0"]{ display:none; }
.niarka-home .n-bar-tools{ gap:10px; }
/* Astra styles every <button>; give the menu button back its v1 look */
.niarka-home .n-burger{
  padding:0; margin:0; background:none; color:var(--green); box-shadow:none; line-height:0;
  width:38px; height:38px; border:1px solid var(--line); border-radius:50%;
}
.niarka-home .n-burger:hover, .niarka-home .n-burger:focus{ background:var(--green); color:#fff; border-color:var(--green); }
@media (max-width:640px){
  .niarka-home .n-icon-account{ display:none; }
  .niarka-home .n-brand-wm{ white-space:nowrap; font-size:17px; }
  /* the whole card is the link; on small cards the "View" pill only crowds the price */
  .niarka-home .n-shop-card .n-pill{ display:none; }
}

/* Astra's back-to-top button, in Niarka colours */
.niarka-v2 #ast-scroll-top{
  background:#1f5d3a; color:#fff; border-radius:50%; box-shadow:0 8px 24px rgba(40,30,15,.18);
}
.niarka-v2 #ast-scroll-top svg{ fill:currentColor; width:14px; height:14px; }

/* ---------- product cards: badges, sub-title, sale price, placeholder ---------- */
/* WooCommerce product photos are square (often with text near the edges), so show them whole */
.niarka-home .n-shop-img{ position:relative; aspect-ratio:1 / 1; }
/* keep the price row on the same line across a row, whatever the name length */
.niarka-home .n-shop-card{ height:100%; }
.niarka-home .n-shop-body{ display:flex; flex-direction:column; flex:1; }
.niarka-home .n-shop-body h4{ min-height:0; }
.niarka-home .n-shop-row{ margin-top:auto; }
.niarka-home .n-badge{
  position:absolute; top:12px; left:12px; padding:4px 11px; border-radius:999px;
  background:var(--gold); color:#fff; font-size:10px; letter-spacing:1.8px; text-transform:uppercase; font-weight:600;
  box-shadow:0 2px 8px rgba(40,30,15,.15);
}
.niarka-home .n-badge-out{ background:var(--ink-soft); }
.niarka-home .n-soldout .n-shop-img img{ filter:grayscale(.55); opacity:.72; }
.niarka-home .n-shop-sub{
  display:block; margin-top:6px; font-family:'Jost',sans-serif; font-size:10.5px; font-weight:600;
  letter-spacing:1.8px; text-transform:uppercase; color:var(--gold); line-height:1.3;
}
.niarka-home .n-price del{ color:var(--ink-soft); font-weight:400; font-size:.78em; margin-right:3px; }
.niarka-home .n-price small{
  font-size:.6em; font-weight:500; color:var(--ink-soft); text-transform:uppercase; letter-spacing:1px;
}
.niarka-home .n-shop-head h3 a:hover{ color:var(--green-d); text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:4px; }

/* ---------- shop & category pages ---------- */
.niarka-shop .n-cat-hero{
  padding:64px 0 6px; text-align:center;
  background:radial-gradient(800px 380px at 88% 0%, rgba(108,148,80,.14), transparent 60%), var(--cream);
}
.niarka-shop .n-cat-hero h1{ font-size:58px; line-height:1.04; color:var(--green); margin:10px 0 10px; }
.niarka-shop .n-cat-hero p{ color:var(--ink-soft); font-size:16px; max-width:620px; margin:0 auto 10px; }
.niarka-shop .n-cat-count{
  display:inline-block; font-size:10.5px; letter-spacing:2.4px; text-transform:uppercase; color:var(--gold); font-weight:600;
}
.niarka-shop .n-cat-hero .n-chips{ margin-top:26px; }
.niarka-home .n-chip.is-active{ background:var(--green); color:#fff; border-color:var(--green); }
.niarka-shop .n-shop-archive{ padding-top:48px; }
.niarka-shop .n-shop-archive .n-shop-section:first-of-type{ margin-top:0; }
.niarka-home .n-empty{ text-align:center; color:var(--ink-soft); padding:40px 0; }
.niarka-home .woocommerce-pagination ul.page-numbers{
  display:flex; gap:8px; justify-content:center; list-style:none; margin:44px 0 0; padding:0; border:0;
}
.niarka-home .woocommerce-pagination ul.page-numbers li{ border:0; float:none; }
.niarka-home .woocommerce-pagination .page-numbers a,
.niarka-home .woocommerce-pagination .page-numbers span{
  display:inline-flex; min-width:40px; height:40px; align-items:center; justify-content:center; padding:0 12px;
  border:1.5px solid var(--line); border-radius:999px; background:#fff; color:var(--green); font-weight:600; font-size:14px;
}
.niarka-home .woocommerce-pagination .page-numbers .current{ background:var(--green); color:#fff; border-color:var(--green); }

/* ---------- WooCommerce notices on v2 pages ---------- */
.niarka-home .woocommerce-message,
.niarka-home .woocommerce-info,
.niarka-home .woocommerce-error{
  list-style:none; margin:0 0 28px; padding:14px 18px; border-radius:12px; border:1px solid var(--line);
  border-left:4px solid var(--green); background:#fff; color:var(--ink); font-size:14.5px;
  display:flex; align-items:center; justify-content:space-between; gap:14px; flex-wrap:wrap;
}
.niarka-home .woocommerce-error{ border-left-color:#9b3d2e; }
.niarka-home .woocommerce-message::before,
.niarka-home .woocommerce-info::before,
.niarka-home .woocommerce-error::before{ display:none; }
.niarka-home .woocommerce-message a.button,
.niarka-home .woocommerce-info a.button{
  order:2; padding:8px 16px; border-radius:999px; background:var(--green); color:#fff; font-size:13px; font-weight:600;
}

/* ---------- product page ---------- */
.niarka-product .n-product-page{ padding:26px 0 90px; }
.niarka-product .n-crumbs{ font-size:12.5px; color:var(--ink-soft); margin-bottom:22px; letter-spacing:.3px; }
.niarka-product .n-crumbs a:hover{ color:var(--green); }
.niarka-product .n-crumb-sep{ margin:0 8px; color:var(--line); }

/* Astra makes div.product an inline-block white panel; v2 lays it out as a 2-column grid */
body.niarka-product .n-product-page div.product{
  position:relative; display:grid !important; grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
  gap:56px; align-items:start; width:100%;
  background:transparent !important; padding:0 !important; margin:0 !important; border:0 !important; box-shadow:none !important;
}
/* Astra repeats the breadcrumb inside the summary; v2 already shows one above */
.niarka-product .summary .woocommerce-breadcrumb{ display:none; }
/* Astra's sale badge */
.niarka-product div.product > .ast-onsale-card{
  position:absolute; top:16px; left:16px; z-index:9; margin:0; padding:5px 13px; border:0; border-radius:999px;
  background:var(--gold); color:#fff; font-size:10.5px; font-weight:600; letter-spacing:1.8px; text-transform:uppercase; line-height:1.4;
}
.niarka-product div.product > .woocommerce-product-gallery,
.niarka-product div.product > .summary{ width:auto !important; float:none !important; margin:0 !important; }
.niarka-product div.product > .woocommerce-product-gallery{ grid-column:1; }
.niarka-product div.product > .summary{ grid-column:2; }
.niarka-product div.product > .woocommerce-tabs,
.niarka-product div.product > .related,
.niarka-product div.product > .upsells,
.niarka-product div.product > .n-related{ grid-column:1 / -1; }

.niarka-product div.product > span.onsale{
  position:absolute; top:16px; left:16px; z-index:9; margin:0; min-width:0; min-height:0;
  padding:5px 13px; border-radius:999px; background:var(--gold); color:#fff;
  font-size:10.5px; font-weight:600; letter-spacing:1.8px; text-transform:uppercase; line-height:1.4;
}

/* gallery */
.niarka-product .woocommerce-product-gallery{ position:relative; }
.niarka-product .woocommerce-product-gallery .flex-viewport,
.niarka-product .woocommerce-product-gallery__wrapper > .woocommerce-product-gallery__image:only-child{
  border-radius:18px; overflow:hidden; background:#fff; border:1px solid var(--line); box-shadow:var(--shadow);
}
.niarka-product .woocommerce-product-gallery__image img{ width:100%; height:auto; }
.niarka-product .woocommerce-product-gallery .flex-control-thumbs{
  display:grid; grid-template-columns:repeat(5, 1fr); gap:10px; margin:12px 0 0; padding:0; list-style:none;
}
.niarka-product .woocommerce-product-gallery .flex-control-thumbs li{ width:auto !important; float:none !important; margin:0 !important; }
.niarka-product .woocommerce-product-gallery .flex-control-thumbs img{
  border-radius:10px; border:1.5px solid var(--line); opacity:.65; cursor:pointer; transition:opacity .15s, border-color .15s;
}
.niarka-product .woocommerce-product-gallery .flex-control-thumbs img.flex-active,
.niarka-product .woocommerce-product-gallery .flex-control-thumbs img:hover{ opacity:1; border-color:var(--green); }
.niarka-product .woocommerce-product-gallery__trigger{
  position:absolute; top:14px; right:14px; z-index:9; width:38px; height:38px; border-radius:50%;
  background:#fff; border:1px solid var(--line); display:flex; align-items:center; justify-content:center;
}

/* summary */
.niarka-product .summary .product_title{
  font-family:'Cormorant Garamond','Times New Roman',serif; font-weight:600;
  font-size:46px; line-height:1.05; color:var(--green); margin:0 0 12px;
}
.niarka-product .summary .woocommerce-product-rating{ font-size:13px; color:var(--ink-soft); margin-bottom:6px; }
.niarka-product .summary .star-rating{ color:var(--gold); }
.niarka-product .summary .price{
  display:block; font-family:'Jost',sans-serif; font-size:28px; font-weight:600; color:var(--ink); margin:12px 0 18px;
}
.niarka-product .summary .price del{ color:var(--ink-soft); font-size:.68em; font-weight:400; margin-right:6px; }
.niarka-product .summary .price ins{ text-decoration:none; }
.niarka-product .woocommerce-product-details__short-description{
  color:var(--ink); font-size:15.5px; border-top:1px solid var(--line); padding-top:18px; margin-top:4px;
}
.niarka-product .woocommerce-product-details__short-description hr{ display:none; }
.niarka-product .summary p.stock{ font-size:13.5px; font-weight:600; color:var(--green); }
.niarka-product .summary p.stock.out-of-stock{ color:#9b3d2e; }

/* options + add to cart */
.niarka-product form.cart{ margin:22px 0 14px; }
.niarka-product form.cart:not(.variations_form),
.niarka-product .woocommerce-variation-add-to-cart{ display:flex; flex-wrap:wrap; gap:12px; align-items:center; }
.niarka-product table.variations{ width:100%; margin:0 0 8px; border:0; border-collapse:collapse; }
.niarka-product table.variations th,
.niarka-product table.variations td{ display:block; padding:0 0 8px; border:0; background:none; text-align:left; }
.niarka-product table.variations th.label label,
.niarka-product table.variations td.label label{
  font-size:11px; letter-spacing:2.2px; text-transform:uppercase; color:var(--gold); font-weight:600;
}
.niarka-product table.variations select{
  min-width:220px; height:46px; padding:0 14px; border:1.5px solid var(--line); border-radius:12px; background:#fff; color:var(--ink);
}
.niarka-product .reset_variations{ font-size:12px; color:var(--ink-soft); margin-left:10px; }
.niarka-product .single_variation_wrap{ width:100%; }
.niarka-product .woocommerce-variation-price{ margin-bottom:10px; }
.niarka-product .quantity{ display:inline-flex; align-items:center; }
.niarka-product .quantity input.qty{
  height:48px; width:74px; border:1.5px solid var(--line); border-radius:999px; background:#fff;
  text-align:center; font-size:15px; color:var(--ink);
}
.niarka-product .quantity .minus,
.niarka-product .quantity .plus{
  height:48px; width:40px; border:1.5px solid var(--line); background:#fff; color:var(--green); font-size:18px;
}
.niarka-product .quantity .minus{ border-radius:999px 0 0 999px; border-right:0; }
.niarka-product .quantity .plus{ border-radius:0 999px 999px 0; border-left:0; }
.niarka-product .quantity .minus ~ input.qty{ border-radius:0; }
.niarka-product button.single_add_to_cart_button{
  height:48px; padding:0 32px !important; border:0 !important; border-radius:999px !important;
  background:var(--green) !important; color:#fff !important;
  font-family:'Jost',sans-serif; font-size:14.5px; font-weight:600; letter-spacing:.3px; text-transform:none;
  transition:background .15s, transform .12s;
}
.niarka-product button.single_add_to_cart_button:hover{ background:var(--green-d) !important; transform:translateY(-1px); }
.niarka-product button.single_add_to_cart_button.disabled{ opacity:.5; }
.niarka-product .n-wa-order{ margin:2px 0 22px; }
.niarka-product .n-wa-order svg{ width:18px; height:18px; }
.niarka-product .product_meta{
  display:flex; flex-direction:column; gap:4px; font-size:13px; color:var(--ink-soft);
  border-top:1px solid var(--line); padding-top:16px;
}
.niarka-product .product_meta a{ color:var(--green); }

/* tabs */
.niarka-product .woocommerce-tabs{ margin-top:64px; }
.niarka-product .woocommerce-tabs ul.tabs{
  display:flex; gap:30px; margin:0 0 28px; padding:0; list-style:none; border-bottom:1px solid var(--line); overflow-x:auto;
}
.niarka-product .woocommerce-tabs ul.tabs::before,
.niarka-product .woocommerce-tabs ul.tabs::after,
.niarka-product .woocommerce-tabs ul.tabs li::before,
.niarka-product .woocommerce-tabs ul.tabs li::after{ display:none !important; }
.niarka-product .woocommerce-tabs ul.tabs li{
  margin:0 !important; padding:0 !important; border:0 !important; border-radius:0 !important; background:none !important;
}
.niarka-product .woocommerce-tabs ul.tabs li a{
  display:block; padding:12px 0 !important; white-space:nowrap;
  font-size:12.5px; letter-spacing:2px; text-transform:uppercase; font-weight:600; color:var(--ink-soft) !important;
}
.niarka-product .woocommerce-tabs ul.tabs li.active a{ color:var(--green) !important; box-shadow:inset 0 -2px 0 var(--gold); }
.niarka-product .woocommerce-Tabs-panel{ max-width:820px; font-size:15.5px; color:var(--ink); }
.niarka-product .woocommerce-Tabs-panel h2{
  font-family:'Cormorant Garamond',serif; font-weight:600; font-size:30px; color:var(--green); margin:0 0 14px;
}
.niarka-product .woocommerce-Tabs-panel table.shop_attributes{ border:0; }
.niarka-product .woocommerce-Tabs-panel table.shop_attributes th,
.niarka-product .woocommerce-Tabs-panel table.shop_attributes td{ border-bottom:1px solid var(--line); padding:10px 0; background:none; }

/* related products (our cards) */
.niarka-product .n-related{ margin-top:72px; }
.niarka-product .n-related .n-shop-head h3{ font-size:32px; }

/* ---------- responsive ---------- */
@media (max-width:980px){
  body.niarka-product .n-product-page div.product{ grid-template-columns:minmax(0,1fr); gap:30px; }
  .niarka-product div.product > .woocommerce-product-gallery,
  .niarka-product div.product > .summary{ grid-column:1; }
  .niarka-product .summary .product_title{ font-size:38px; }
  .niarka-shop .n-cat-hero h1{ font-size:44px; }
}
@media (max-width:782px){
  body.admin-bar .n-chrome-top, body.admin-bar.niarka-home .n-bar{ top:46px; }
}
@media (max-width:640px){
  .niarka-shop .n-cat-hero{ padding-top:44px; }
  .niarka-shop .n-cat-hero h1{ font-size:36px; }
  .niarka-product .summary .product_title{ font-size:32px; }
  .niarka-product .summary .price{ font-size:24px; }
  .niarka-product .woocommerce-tabs ul.tabs{ gap:20px; }
}
