/* Ei Commerce Studio 0.1.0: cosmetics scoped to WooCommerce pages only.
 * No JS, font requests, rewrites of checkout/payment markup, or global resets. */
body.ei-commerce-active .ei-commerce-shell {
  --eic-border:var(--ei-border,#bfc5d1);
  --eic-muted:var(--ei-muted,#64748b);
  color:var(--eic-text);
  padding:clamp(24px,4vw,64px) 16px;
  min-height:60vh;
  background-color:var(--eic-outer-color,transparent);
  background-image:var(--eic-outer-image,none);
  background-position:center top;
  background-size:cover;
  background-repeat:no-repeat;
}
body.ei-commerce-active .ei-commerce-shell .ei-commerce-container {
  width:min(var(--eic-width,1180px),100%);
  max-width:none;
  margin:0 auto;
  padding:clamp(16px,3vw,var(--eic-padding,36px));
  color:var(--eic-text);
  /* Keep the surface transparent: the background is painted on ::before only. */
  background:transparent;
  position:relative;
  isolation:isolate;
  border:1px solid var(--eic-border);
  border-radius:var(--eic-radius,8px);
  min-width:0;
  overflow-wrap:break-word;
}
body.ei-commerce-active .ei-commerce-shell .ei-commerce-container::before {
  content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  pointer-events:none;
  border-radius:inherit;
  opacity:var(--eic-panel-opacity,.94);
  background-color:var(--eic-panel-bg,var(--ei-surface,#fff));
  background-image:var(--eic-panel-image,none);
  background-position:center top;
  background-size:cover;
  background-repeat:no-repeat;
}
body.ei-commerce-active .ei-commerce-shell .ei-commerce-container::after {
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  border-radius:inherit;
  opacity:var(--eic-panel-overlay-opacity,0);
  background:var(--eic-panel-overlay-color,#000000);
}
body.ei-commerce-active .ei-commerce-shell h1,
body.ei-commerce-active .ei-commerce-shell h2,
body.ei-commerce-active .ei-commerce-shell h3,
body.ei-commerce-active .ei-commerce-shell h4,
body.ei-commerce-active .ei-commerce-shell .product_title,
body.ei-commerce-active .ei-commerce-shell .woocommerce-loop-product__title { color:var(--eic-text); text-shadow:none; }
body.ei-commerce-active .ei-commerce-shell .ei-commerce-page-title {font-size:clamp(1.7rem,3vw,2.3rem);line-height:1.3;margin:0 0 1.5em;}
body.ei-commerce-active .ei-commerce-shell a:not(.button):not(.wp-block-button__link) {color:var(--eic-accent);}
body.ei-commerce-active .ei-commerce-shell .woocommerce-breadcrumb,
body.ei-commerce-active .ei-commerce-shell .woocommerce-result-count,
body.ei-commerce-active .ei-commerce-shell .product_meta,
body.ei-commerce-active .ei-commerce-shell .woocommerce-review-link {color:var(--eic-muted);}
body.ei-commerce-active .ei-commerce-shell .woocommerce-breadcrumb{margin:0 0 24px;font-size:.85rem;}
body.ei-commerce-active .ei-commerce-shell .woocommerce-notices-wrapper{margin-bottom:15px;}
body.ei-commerce-active .ei-commerce-shell .woocommerce-error,
body.ei-commerce-active .ei-commerce-shell .woocommerce-info,
body.ei-commerce-active .ei-commerce-shell .woocommerce-message {color:var(--eic-text);background:var(--ei-surface-2,var(--ei-surface));border-top-color:var(--eic-accent);}
body.ei-commerce-active .ei-commerce-shell .woocommerce ul.products,
body.ei-commerce-active .ei-commerce-shell ul.products {
  display:grid;
  grid-template-columns:repeat(var(--eic-cols,3),minmax(0,1fr));
  column-gap:clamp(12px,2.4vw,28px);
  row-gap:clamp(18px,3vw,32px);
  margin:22px 0 32px;
  padding:0;
}
body.ei-commerce-active .ei-commerce-shell .woocommerce ul.products::before,
body.ei-commerce-active .ei-commerce-shell .woocommerce ul.products::after,
body.ei-commerce-active .ei-commerce-shell ul.products::before,
body.ei-commerce-active .ei-commerce-shell ul.products::after {display:none;content:none;}
body.ei-commerce-active .ei-commerce-shell .woocommerce ul.products li.product,
body.ei-commerce-active .ei-commerce-shell ul.products li.product {
  width:auto;float:none;clear:none;margin:0;padding:0;min-width:0;
  display:flex;flex-direction:column;gap:6px;
}
body.ei-commerce-active .ei-commerce-shell ul.products li.product a img { width:100%;max-width:100%;height:auto;border-radius:max(0px,calc(var(--eic-radius) / 2));margin:0 0 12px;object-fit:contain;image-rendering:auto;filter:none; }
body.ei-commerce-active .ei-commerce-shell .woocommerce-loop-product__title {font-size:1.12rem;line-height:1.35;}
body.ei-commerce-active .ei-commerce-shell .price,
body.ei-commerce-active .ei-commerce-shell .woocommerce div.product p.price,
body.ei-commerce-active .ei-commerce-shell .woocommerce div.product span.price {color:var(--eic-accent);font-weight:700;}
body.ei-commerce-active .ei-commerce-shell .woocommerce div.product div.images {width:43%;max-width:100%;}
body.ei-commerce-active .ei-commerce-shell .woocommerce div.product div.summary {width:53%;max-width:100%;}
/* v0.1.12: match WooCommerce's real single-product DOM.  The .woocommerce
 * class is on BODY in the Ei Theme template, not necessarily a nested wrapper.
 * Keep the selectors scoped to single-product pages and the Commerce shell. */
body.ei-commerce-active.ei-commerce-product .ei-commerce-shell .woocommerce-tabs {
  clear:both;
  padding-top:24px;
}
body.ei-commerce-active.ei-commerce-product .ei-commerce-shell .woocommerce-tabs ul.tabs::before {
  border-color:var(--eic-border);
}
body.ei-commerce-active.ei-commerce-product .ei-commerce-shell .woocommerce-tabs ul.tabs li {
  background:var(--eic-tab-bg,#eef3f9) !important;
  border-color:var(--eic-border);
}
body.ei-commerce-active.ei-commerce-product .ei-commerce-shell .woocommerce-tabs ul.tabs li > a,
body.ei-commerce-active.ei-commerce-product .ei-commerce-shell .woocommerce-tabs ul.tabs li > a:hover,
body.ei-commerce-active.ei-commerce-product .ei-commerce-shell .woocommerce-tabs ul.tabs li > a:focus-visible {
  color:var(--eic-tab-text,#1a2c44) !important;
  text-shadow:none;
}
body.ei-commerce-active.ei-commerce-product .ei-commerce-shell .woocommerce-tabs ul.tabs li.active,
body.ei-commerce-active.ei-commerce-product .ei-commerce-shell .woocommerce-tabs ul.tabs li[aria-selected="true"] {
  background:var(--eic-tab-active-bg,#ffffff) !important;
  border-bottom-color:var(--eic-tab-active-bg,#ffffff);
}
body.ei-commerce-active.ei-commerce-product .ei-commerce-shell .woocommerce-tabs ul.tabs li.active > a,
body.ei-commerce-active.ei-commerce-product .ei-commerce-shell .woocommerce-tabs ul.tabs li.active > a:hover,
body.ei-commerce-active.ei-commerce-product .ei-commerce-shell .woocommerce-tabs ul.tabs li.active > a:focus-visible,
body.ei-commerce-active.ei-commerce-product .ei-commerce-shell .woocommerce-tabs ul.tabs li[aria-selected="true"] > a,
body.ei-commerce-active.ei-commerce-product .ei-commerce-shell .woocommerce-tabs ul.tabs li > a[aria-selected="true"] {
  color:var(--eic-tab-active-text,#1a2c44) !important;
  text-shadow:none;
}
body.ei-commerce-active.ei-commerce-product .ei-commerce-shell .woocommerce-tabs ul.tabs li > a:focus-visible {
  outline:2px solid var(--eic-accent,#245cac);
  outline-offset:2px;
}
/* WooCommerce's default curved corner pseudo-elements must not leave white
 * patches when the selected background uses a custom color. */
body.ei-commerce-active.ei-commerce-product .ei-commerce-shell .woocommerce-tabs ul.tabs li::before,
body.ei-commerce-active.ei-commerce-product .ei-commerce-shell .woocommerce-tabs ul.tabs li::after {
  display:none;
}
body.ei-commerce-active .ei-commerce-shell :is(.button,button.button,input.button,.wp-element-button,.wp-block-button__link,
  .wc-block-components-button,.wc-block-components-checkout-place-order-button) {
  background:var(--eic-accent);color:var(--eic-accent-text);border:1px solid transparent;
  border-radius:max(2px,calc(var(--eic-radius) / 2));padding:.7em 1.15em;
  font-weight:600;line-height:1.35;text-decoration:none;box-shadow:none;
}
body.ei-commerce-active .ei-commerce-shell :is(.button,button.button,input.button,.wp-element-button,.wp-block-button__link,
  .wc-block-components-button,.wc-block-components-checkout-place-order-button):hover {filter:brightness(1.08);background:var(--eic-accent);color:var(--eic-accent-text);}
body.ei-commerce-active .ei-commerce-shell :is(.button,button.button,input.button,.wp-element-button,.wc-block-components-button):focus-visible {outline:3px solid var(--eic-accent);outline-offset:3px;}
body.ei-commerce-active .ei-commerce-shell :is(input.input-text,input[type="text"],input[type="email"],input[type="tel"],input[type="number"],select,textarea) {
  color:var(--eic-text);background:var(--ei-surface,#fff);border:1px solid var(--eic-border);border-radius:max(2px,calc(var(--eic-radius) / 2));max-width:100%;
}
body.ei-commerce-active .ei-commerce-shell :is(.woocommerce table.shop_table,.woocommerce table.shop_table td,.woocommerce table.shop_table th,
  .woocommerce-cart-form__cart-item,.wc-block-cart-items,.wc-block-cart-items__row) {border-color:var(--eic-border);}
body.ei-commerce-active .ei-commerce-shell .woocommerce table.shop_table {background:transparent;color:var(--eic-text);border-collapse:separate;}
body.ei-commerce-active .ei-commerce-shell :is(.cart_totals,.woocommerce-checkout-review-order,.woocommerce-MyAccount-content,.woocommerce-order,.wc-block-components-sidebar,.wc-block-components-order-summary) {color:var(--eic-text);}
body.ei-commerce-active .ei-commerce-shell .woocommerce-MyAccount-navigation ul {list-style:none;margin:0;padding:0;}
body.ei-commerce-active .ei-commerce-shell .woocommerce-MyAccount-navigation li {border-bottom:1px solid var(--eic-border);}
body.ei-commerce-active .ei-commerce-shell .woocommerce-MyAccount-navigation a {display:block;padding:.45em .2em;}
body.ei-commerce-active .ei-commerce-shell :is(.wc-block-checkout,.wc-block-cart,.wc-block-components-sidebar-layout,.wc-block-components-main,.wc-block-components-sidebar){min-width:0;}
body.ei-commerce-active .ei-commerce-shell :is(.wc-block-components-text-input input,.wc-block-components-combobox input,.wc-block-components-textarea,.wc-block-components-select select){background:var(--ei-surface,#fff);color:var(--eic-text);border-color:var(--eic-border);}
body.ei-commerce-active .ei-commerce-shell :is(.wc-block-components-checkout-step__title,.wc-block-components-title,.wc-block-components-product-name,.wc-block-components-order-summary-item__description){color:var(--eic-text);}
body.ei-commerce-active .ei-commerce-shell :is(.wc-block-components-totals-wrapper,.wc-block-components-order-summary,.wc-block-components-checkout-step){border-color:var(--eic-border);}
body.ei-commerce-active .ei-commerce-shell :is(.woocommerce-form-login,.woocommerce-form-register,.woocommerce-form-coupon) {background:transparent;color:var(--eic-text);border-color:var(--eic-border);}
@media(max-width:900px){
 body.ei-commerce-active .ei-commerce-shell ul.products,
 body.ei-commerce-active .ei-commerce-shell .woocommerce ul.products {grid-template-columns:repeat(min(2,var(--eic-cols,3)),minmax(0,1fr));}
 body.ei-commerce-active .ei-commerce-shell .woocommerce div.product div.images,
 body.ei-commerce-active .ei-commerce-shell .woocommerce div.product div.summary {width:100%;float:none;}
}
@media(max-width:620px){
 body.ei-commerce-active .ei-commerce-shell {padding:14px 10px;}
 body.ei-commerce-active .ei-commerce-shell .ei-commerce-container {padding:20px 14px;}
 body.ei-commerce-active .ei-commerce-shell ul.products,
 body.ei-commerce-active .ei-commerce-shell .woocommerce ul.products {grid-template-columns:repeat(min(2,var(--eic-cols,3)),minmax(0,1fr));gap:16px 12px;}
 body.ei-commerce-active .ei-commerce-shell .woocommerce-page table.cart td.actions .coupon {width:100%;}
 body.ei-commerce-active .ei-commerce-shell .woocommerce-page table.cart td.actions .coupon .input-text {width:auto;max-width:50%;}
}
/* v0.1.5 — scoped WooCommerce typography controls. */
body.ei-commerce-active .ei-commerce-shell .ei-commerce-container {font-size:var(--eic-font-body)!important;}
body.ei-commerce-active .ei-commerce-shell :is(p,li,td,th,dd,dt,label,textarea,input,select,.woocommerce-product-details__short-description,.woocommerce-Tabs-panel) {font-size:var(--eic-font-body)!important;}
body.ei-commerce-active .ei-commerce-shell :is(h1,.ei-commerce-page-title,h1.product_title) {font-size:var(--eic-font-page-title)!important;line-height:1.3;}
body.ei-commerce-active .ei-commerce-shell :is(h2,h3,h4,.woocommerce-tabs h2,.wc-block-components-title,.wc-block-checkout__title) {font-size:var(--eic-font-heading)!important;line-height:1.35;}
body.ei-commerce-active .ei-commerce-shell :is(.woocommerce-loop-product__title,.wc-block-components-product-name,.wc-block-grid__product-title) {font-size:var(--eic-font-product-title)!important;line-height:1.4;}
body.ei-commerce-active .ei-commerce-shell :is(.woocommerce-breadcrumb,.woocommerce-result-count,.product_meta,.woocommerce-review-link,.woocommerce-ordering,.wc-block-components-product-metadata,.wc-block-components-totals-item__description,.woocommerce-privacy-policy-text) {font-size:var(--eic-font-meta)!important;}
body.ei-commerce-active .ei-commerce-shell :is(.button,button.button,input.button,.wp-element-button,.wp-block-button__link,.wc-block-components-button,.wc-block-components-checkout-place-order-button) {font-size:var(--eic-font-button)!important;}
/* Classic Woo, product lists, prices in Blocks and cart/order summaries. */
body.ei-commerce-active .ei-commerce-shell :is(.price,.price *,p.price,p.price *,span.price,span.price *,
 .woocommerce-Price-amount,.woocommerce-Price-amount *,.wc-block-components-product-price,
 .wc-block-components-product-price *,.wc-block-grid__product-price,.wc-block-grid__product-price *,
 .wc-block-components-formatted-money-amount,.wc-block-components-formatted-money-amount *,
 .wc-block-components-totals-item__value,.wc-block-components-totals-item__value *) {
  color:var(--eic-price-color,var(--eic-accent))!important;
  font-size:var(--eic-font-price)!important;
}
body.ei-commerce-active .ei-commerce-shell :is(.price del,.price del *,.wc-block-components-product-price del) {opacity:.65;}

/* v0.1.8: explicit Commerce text color on content nodes, independent of Theme defaults.
 * Deliberately excludes price nodes and links, which have their own color channels. */
body.ei-commerce-active .ei-commerce-shell .ei-commerce-container :is(
  p:not(.price),li,dd,dt,blockquote,
  .woocommerce-product-details__short-description,
  .woocommerce-Tabs-panel,
  .wc-block-components-product-details__value
){color:var(--eic-text)!important;}
body.ei-commerce-active .ei-commerce-shell .ei-commerce-container :is(
  h1,h2,h3,h4,.product_title,.woocommerce-loop-product__title
){color:var(--eic-text)!important;}
