/* ============================================================
   JUICE INFUSION — ASTRA / ELEMENTOR / WOOCOMMERCE DARK SHIELD
   v3.0 — Curbside OS compatible
   Integrated by Curbside OS v6.22 — late-loaded plugin authority layer

   PURPOSE
   - Stop Astra / Elementor / WooCommerce from forcing white sheets
   - Keep Curbside OS fields dark and readable
   - Give Cart / Checkout / My Account a premium dark commerce shell
   - Normalize field alignment across desktop, tablet and mobile
   - Preserve plugin logic: CSS only
   ============================================================ */

:root{
  --ji-page:#070b11;
  --ji-page-2:#0b1119;
  --ji-surface:#0f1721;
  --ji-surface-2:#131e2a;
  --ji-field:#111b25;
  --ji-field-focus:#172430;
  --ji-text:#f8f4ed;
  --ji-soft:#d7d0c7;
  --ji-muted:#9ca7ad;
  --ji-line:rgba(255,255,255,.11);
  --ji-line-strong:rgba(255,255,255,.18);
  --ji-green:#9bd452;
  --ji-green-2:#c0e779;
  --ji-green-deep:#426d3f;
  --ji-gold:#f2d89d;
  --ji-orange:#ff8b52;
  --ji-danger:#ef7d7d;
  --ji-danger-bg:rgba(168,68,68,.13);
  --ji-success-bg:rgba(155,212,82,.11);
  --ji-shadow:0 24px 70px rgba(0,0,0,.34);
  --ji-shadow-soft:0 12px 34px rgba(0,0,0,.20);
  --ji-radius:18px;
  --ji-radius-lg:26px;
  --ji-control-h:52px;
}

/* ------------------------------------------------------------
   1. SAFE GLOBAL BASE
   ------------------------------------------------------------ */

html{
  background:#070b11 !important;
}

body{
  color:var(--ji-text);
  background-color:var(--ji-page) !important;
}

body,
input,
select,
textarea,
button{
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

img{
  max-width:100%;
  height:auto;
}

/* Never allow Astra's article/page wrappers to put a white sheet
   behind Curbside or commerce pages. */
body.jicos-commerce-shell,
body.woocommerce-checkout,
body.woocommerce-cart,
body.woocommerce-account{
  min-height:100vh;
  color:var(--ji-text) !important;
  background:
    radial-gradient(circle at 10% 6%, rgba(155,212,82,.13), transparent 28%),
    radial-gradient(circle at 92% 12%, rgba(242,216,157,.10), transparent 25%),
    radial-gradient(circle at 70% 90%, rgba(255,139,82,.08), transparent 30%),
    linear-gradient(160deg, rgba(7,11,17,.92), rgba(9,14,21,.97)),
    url("https://curbside.juiceinfusion.net/wp-content/uploads/2026/03/curbside-bg-scaled.png") center / cover no-repeat !important;
  background-color:var(--ji-page) !important;
}

body.jicos-commerce-shell :where(.site,.site-content,.site-main,.content-area,.ast-container,.ast-container-fluid,.entry-content,article,main),
body.woocommerce-checkout :where(.site,.site-content,.site-main,.content-area,.ast-container,.ast-container-fluid,.entry-content,article,main),
body.woocommerce-cart :where(.site,.site-content,.site-main,.content-area,.ast-container,.ast-container-fluid,.entry-content,article,main),
body.woocommerce-account :where(.site,.site-content,.site-main,.content-area,.ast-container,.ast-container-fluid,.entry-content,article,main){
  background:transparent !important;
  color:inherit !important;
  box-shadow:none !important;
}

/* Keep Elementor from painting a white widget/container behind commerce. */
body.jicos-commerce-shell :where(.elementor,.elementor-section,.elementor-container,.elementor-column,.elementor-widget-wrap,.elementor-widget-container),
body.woocommerce-checkout :where(.elementor,.elementor-section,.elementor-container,.elementor-column,.elementor-widget-wrap,.elementor-widget-container),
body.woocommerce-cart :where(.elementor,.elementor-section,.elementor-container,.elementor-column,.elementor-widget-wrap,.elementor-widget-container),
body.woocommerce-account :where(.elementor,.elementor-section,.elementor-container,.elementor-column,.elementor-widget-wrap,.elementor-widget-container){
  background-color:transparent !important;
  background-image:none !important;
}

/* Don't let Astra's separated-container cards reappear as white. */
body.jicos-commerce-shell :where(.ast-article-single,.ast-article-post),
body.woocommerce-checkout :where(.ast-article-single,.ast-article-post),
body.woocommerce-cart :where(.ast-article-single,.ast-article-post),
body.woocommerce-account :where(.ast-article-single,.ast-article-post){
  margin:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

/* ------------------------------------------------------------
   2. CURBSIDE OS — DARK FIELD SHIELD
   ------------------------------------------------------------ */

.jicos-viewport,
.jicos-viewport *,
.jicos-viewport *::before,
.jicos-viewport *::after{
  box-sizing:border-box;
}

.jicos-viewport{
  color:#f7f4ec !important;
  background-color:var(--ji-page) !important;
}

.jicos-viewport :where(input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="hidden"]),select,textarea){
  width:100%;
  min-width:0 !important;
  max-width:100% !important;
  min-height:48px;
  margin:0;
  padding:12px 14px !important;
  color:var(--ji-text) !important;
  -webkit-text-fill-color:var(--ji-text) !important;
  caret-color:var(--ji-green) !important;
  border:1px solid var(--ji-line-strong) !important;
  border-radius:14px !important;
  outline:0 !important;
  background:var(--ji-field) !important;
  background-image:none !important;
  box-shadow:none !important;
  opacity:1 !important;
}

.jicos-viewport :where(input,select,textarea):focus{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  border-color:rgba(155,212,82,.82) !important;
  background:var(--ji-field-focus) !important;
  box-shadow:0 0 0 3px rgba(155,212,82,.15) !important;
}

.jicos-viewport :where(input,textarea)::placeholder{
  color:#929ea7 !important;
  -webkit-text-fill-color:#929ea7 !important;
  opacity:1 !important;
}

.jicos-viewport :where(label,legend){
  color:#c8d0d5 !important;
}

.jicos-viewport select,
.jicos-viewport select option,
.jicos-viewport select optgroup{
  color:var(--ji-text) !important;
  background-color:var(--ji-field) !important;
}

.jicos-viewport :where(input[type="checkbox"],input[type="radio"]){
  accent-color:var(--ji-green) !important;
}

.jicos-viewport :where(input:disabled,select:disabled,textarea:disabled,input[readonly]){
  color:#a7b0b7 !important;
  -webkit-text-fill-color:#a7b0b7 !important;
  background:#0c131b !important;
  opacity:.72 !important;
}

.jicos-viewport input:-webkit-autofill,
.jicos-viewport input:-webkit-autofill:hover,
.jicos-viewport input:-webkit-autofill:focus,
.jicos-viewport textarea:-webkit-autofill,
.jicos-viewport select:-webkit-autofill{
  -webkit-text-fill-color:#fff !important;
  caret-color:var(--ji-green) !important;
  border-color:rgba(155,212,82,.55) !important;
  -webkit-box-shadow:0 0 0 1000px var(--ji-field) inset !important;
  box-shadow:0 0 0 1000px var(--ji-field) inset !important;
  transition:background-color 99999s ease-out 0s;
}

/* ------------------------------------------------------------
   3. COMMERCE SHELL — BASE + WIDTH
   ------------------------------------------------------------ */

body.jicos-commerce-shell .woocommerce,
body.woocommerce-checkout .woocommerce,
body.woocommerce-cart .woocommerce,
body.woocommerce-account .woocommerce,
body.jicos-commerce-shell .wp-block-woocommerce-checkout,
body.jicos-commerce-shell .wp-block-woocommerce-cart,
body.woocommerce-checkout .wp-block-woocommerce-checkout,
body.woocommerce-cart .wp-block-woocommerce-cart{
  width:min(calc(100% - 28px), 1220px) !important;
  max-width:1220px !important;
  margin:0 auto !important;
  padding:26px 0 120px !important;
  color:var(--ji-text) !important;
}

body.jicos-commerce-shell .woocommerce *,
body.woocommerce-checkout .woocommerce *,
body.woocommerce-cart .woocommerce *,
body.woocommerce-account .woocommerce *,
body.jicos-commerce-shell [class*="wc-block-"] *,
body.woocommerce-checkout [class*="wc-block-"] *,
body.woocommerce-cart [class*="wc-block-"] *{
  box-sizing:border-box;
}

/* Avoid inherited pale/dark text mismatches from Astra. */
body.jicos-commerce-shell .woocommerce :where(p,li,dt,dd,small,label,legend,address),
body.woocommerce-checkout .woocommerce :where(p,li,dt,dd,small,label,legend,address),
body.woocommerce-cart .woocommerce :where(p,li,dt,dd,small,label,legend,address),
body.woocommerce-account .woocommerce :where(p,li,dt,dd,small,label,legend,address),
body.jicos-commerce-shell [class*="wc-block-"] :where(p,li,small,label),
body.woocommerce-checkout [class*="wc-block-"] :where(p,li,small,label),
body.woocommerce-cart [class*="wc-block-"] :where(p,li,small,label){
  color:var(--ji-soft) !important;
}

body.jicos-commerce-shell .woocommerce :where(h1,h2,h3,h4,h5,h6,strong,b),
body.woocommerce-checkout .woocommerce :where(h1,h2,h3,h4,h5,h6,strong,b),
body.woocommerce-cart .woocommerce :where(h1,h2,h3,h4,h5,h6,strong,b),
body.woocommerce-account .woocommerce :where(h1,h2,h3,h4,h5,h6,strong,b),
body.jicos-commerce-shell [class*="wc-block-"] :where(h1,h2,h3,h4,h5,h6,strong,b),
body.woocommerce-checkout [class*="wc-block-"] :where(h1,h2,h3,h4,h5,h6,strong,b),
body.woocommerce-cart [class*="wc-block-"] :where(h1,h2,h3,h4,h5,h6,strong,b){
  color:var(--ji-text) !important;
}

/* ------------------------------------------------------------
   4. PREMIUM DARK PANELS — CLASSIC + BLOCKS
   ------------------------------------------------------------ */

body.jicos-commerce-shell :where(
  .woocommerce-billing-fields,
  .woocommerce-shipping-fields,
  .woocommerce-additional-fields,
  #order_review,
  .cart_totals,
  .woocommerce-form-login,
  .woocommerce-form-register,
  .woocommerce-MyAccount-navigation,
  .woocommerce-MyAccount-content,
  .woocommerce-Address,
  .woocommerce-order-details,
  .woocommerce-customer-details
),
body.woocommerce-checkout :where(
  .woocommerce-billing-fields,
  .woocommerce-shipping-fields,
  .woocommerce-additional-fields,
  #order_review,
  .woocommerce-form-login,
  .woocommerce-form-register
),
body.woocommerce-cart :where(.cart_totals,.woocommerce-cart-form),
body.woocommerce-account :where(
  .woocommerce-form-login,
  .woocommerce-form-register,
  .woocommerce-MyAccount-navigation,
  .woocommerce-MyAccount-content,
  .woocommerce-Address,
  .woocommerce-order-details,
  .woocommerce-customer-details
),
body.jicos-commerce-shell :where(
  .wc-block-checkout__main,
  .wc-block-checkout__sidebar,
  .wc-block-cart__main,
  .wc-block-cart__sidebar,
  .wc-block-components-checkout-step
),
body.woocommerce-checkout :where(
  .wc-block-checkout__main,
  .wc-block-checkout__sidebar,
  .wc-block-components-checkout-step
),
body.woocommerce-cart :where(
  .wc-block-cart__main,
  .wc-block-cart__sidebar
){
  color:var(--ji-text) !important;
  border:1px solid var(--ji-line) !important;
  border-top-color:rgba(255,255,255,.17) !important;
  border-radius:var(--ji-radius-lg) !important;
  background:
    linear-gradient(155deg, rgba(20,30,42,.90), rgba(10,16,24,.94)) !important;
  box-shadow:var(--ji-shadow-soft) !important;
}

/* Classic sections need internal breathing room. */
body.jicos-commerce-shell :where(.woocommerce-billing-fields,.woocommerce-shipping-fields,.woocommerce-additional-fields,#order_review,.cart_totals,.woocommerce-form-login,.woocommerce-form-register,.woocommerce-MyAccount-content,.woocommerce-Address),
body.woocommerce-checkout :where(.woocommerce-billing-fields,.woocommerce-shipping-fields,.woocommerce-additional-fields,#order_review,.woocommerce-form-login,.woocommerce-form-register),
body.woocommerce-cart :where(.cart_totals,.woocommerce-cart-form),
body.woocommerce-account :where(.woocommerce-form-login,.woocommerce-form-register,.woocommerce-MyAccount-content,.woocommerce-Address){
  padding:22px !important;
}

/* Navigation should be compact, not a giant white slab. */
body.jicos-commerce-shell .woocommerce-MyAccount-navigation,
body.woocommerce-account .woocommerce-MyAccount-navigation{
  padding:10px !important;
  overflow:hidden;
}

/* Block checkout sections nested inside the main panel shouldn't look like
   cards inside cards. */
body.jicos-commerce-shell .wc-block-checkout__main .wc-block-components-checkout-step,
body.woocommerce-checkout .wc-block-checkout__main .wc-block-components-checkout-step{
  margin:0 0 14px !important;
  padding:18px !important;
  background:rgba(255,255,255,.025) !important;
  box-shadow:none !important;
}

/* ------------------------------------------------------------
   5. FORM LAYOUT — CLASSIC CHECKOUT
   ------------------------------------------------------------ */

body.jicos-commerce-shell .woocommerce-checkout .col2-set,
body.woocommerce-checkout .woocommerce-checkout .col2-set{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px !important;
  width:100% !important;
  margin:0 0 18px !important;
}

body.jicos-commerce-shell .woocommerce-checkout .col2-set .col-1,
body.jicos-commerce-shell .woocommerce-checkout .col2-set .col-2,
body.woocommerce-checkout .woocommerce-checkout .col2-set .col-1,
body.woocommerce-checkout .woocommerce-checkout .col2-set .col-2{
  float:none !important;
  width:100% !important;
  min-width:0 !important;
  max-width:none !important;
}

body.jicos-commerce-shell :where(.woocommerce-billing-fields__field-wrapper,.woocommerce-shipping-fields__field-wrapper),
body.woocommerce-checkout :where(.woocommerce-billing-fields__field-wrapper,.woocommerce-shipping-fields__field-wrapper){
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px !important;
}

body.jicos-commerce-shell .form-row,
body.woocommerce-checkout .form-row,
body.woocommerce-account .form-row{
  float:none !important;
  width:auto !important;
  min-width:0 !important;
  max-width:100% !important;
  margin:0 !important;
  padding:0 !important;
}

body.jicos-commerce-shell .form-row-wide,
body.woocommerce-checkout .form-row-wide,
body.woocommerce-account .form-row-wide{
  grid-column:1 / -1;
}

body.jicos-commerce-shell .form-row label,
body.woocommerce-checkout .form-row label,
body.woocommerce-account .form-row label{
  display:block !important;
  margin:0 0 7px !important;
  color:#cbd3d8 !important;
  font-size:13px !important;
  font-weight:700 !important;
  line-height:1.35 !important;
  letter-spacing:.01em !important;
}

/* ------------------------------------------------------------
   6. ALL COMMERCE FIELDS — NO WHITE ASTRA OVERRIDE
   ------------------------------------------------------------ */

body.jicos-commerce-shell .woocommerce :where(
  input.input-text,
  input[type="text"],
  input[type="email"],
  input[type="tel"],
  input[type="password"],
  input[type="number"],
  input[type="search"],
  input[type="url"],
  select,
  textarea
),
body.woocommerce-checkout .woocommerce :where(
  input.input-text,
  input[type="text"],
  input[type="email"],
  input[type="tel"],
  input[type="password"],
  input[type="number"],
  input[type="search"],
  input[type="url"],
  select,
  textarea
),
body.woocommerce-cart .woocommerce :where(
  input.input-text,
  input[type="text"],
  input[type="email"],
  input[type="tel"],
  input[type="number"],
  input[type="search"],
  select,
  textarea
),
body.woocommerce-account .woocommerce :where(
  input.input-text,
  input[type="text"],
  input[type="email"],
  input[type="tel"],
  input[type="password"],
  input[type="number"],
  input[type="search"],
  select,
  textarea
),
body.jicos-commerce-shell :where(
  .wc-block-components-text-input input,
  .wc-block-components-combobox-control input,
  .wc-block-components-textarea,
  .wc-block-components-select select,
  .wc-block-components-address-form input,
  .wc-block-components-address-form select
),
body.woocommerce-checkout :where(
  .wc-block-components-text-input input,
  .wc-block-components-combobox-control input,
  .wc-block-components-textarea,
  .wc-block-components-select select,
  .wc-block-components-address-form input,
  .wc-block-components-address-form select
),
body.woocommerce-cart :where(
  .wc-block-components-text-input input,
  .wc-block-components-combobox-control input,
  .wc-block-components-textarea,
  .wc-block-components-select select
){
  width:100% !important;
  min-width:0 !important;
  max-width:100% !important;
  min-height:var(--ji-control-h) !important;
  margin:0 !important;
  padding:13px 14px !important;
  color:var(--ji-text) !important;
  -webkit-text-fill-color:var(--ji-text) !important;
  caret-color:var(--ji-green) !important;
  border:1px solid rgba(255,255,255,.15) !important;
  border-radius:14px !important;
  outline:0 !important;
  background:var(--ji-field) !important;
  background-color:var(--ji-field) !important;
  background-image:none !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025) !important;
  opacity:1 !important;
  color-scheme:dark;
}

body.jicos-commerce-shell .woocommerce :where(input,select,textarea):focus,
body.woocommerce-checkout .woocommerce :where(input,select,textarea):focus,
body.woocommerce-cart .woocommerce :where(input,select,textarea):focus,
body.woocommerce-account .woocommerce :where(input,select,textarea):focus,
body.jicos-commerce-shell :where(.wc-block-components-text-input input,.wc-block-components-combobox-control input,.wc-block-components-textarea,.wc-block-components-select select):focus,
body.woocommerce-checkout :where(.wc-block-components-text-input input,.wc-block-components-combobox-control input,.wc-block-components-textarea,.wc-block-components-select select):focus{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  border-color:rgba(155,212,82,.82) !important;
  background:var(--ji-field-focus) !important;
  box-shadow:0 0 0 3px rgba(155,212,82,.14) !important;
}

body.jicos-commerce-shell :where(input,textarea)::placeholder,
body.woocommerce-checkout :where(input,textarea)::placeholder,
body.woocommerce-cart :where(input,textarea)::placeholder,
body.woocommerce-account :where(input,textarea)::placeholder{
  color:#89969e !important;
  -webkit-text-fill-color:#89969e !important;
  opacity:1 !important;
}

/* Native select options. */
body.jicos-commerce-shell :where(select,select option,select optgroup),
body.woocommerce-checkout :where(select,select option,select optgroup),
body.woocommerce-cart :where(select,select option,select optgroup),
body.woocommerce-account :where(select,select option,select optgroup){
  color:var(--ji-text) !important;
  background-color:var(--ji-field) !important;
}

/* Disabled/read-only fields stay visible. */
body.jicos-commerce-shell :where(input:disabled,select:disabled,textarea:disabled,input[readonly]),
body.woocommerce-checkout :where(input:disabled,select:disabled,textarea:disabled,input[readonly]),
body.woocommerce-cart :where(input:disabled,select:disabled,textarea:disabled,input[readonly]),
body.woocommerce-account :where(input:disabled,select:disabled,textarea:disabled,input[readonly]){
  color:#a7b0b6 !important;
  -webkit-text-fill-color:#a7b0b6 !important;
  background:#0d151d !important;
  opacity:.75 !important;
}

/* Chrome/Safari autofill must not flash or stay yellow/white. */
body.jicos-commerce-shell input:-webkit-autofill,
body.jicos-commerce-shell input:-webkit-autofill:hover,
body.jicos-commerce-shell input:-webkit-autofill:focus,
body.jicos-commerce-shell textarea:-webkit-autofill,
body.jicos-commerce-shell select:-webkit-autofill,
body.woocommerce-checkout input:-webkit-autofill,
body.woocommerce-checkout input:-webkit-autofill:hover,
body.woocommerce-checkout input:-webkit-autofill:focus,
body.woocommerce-checkout textarea:-webkit-autofill,
body.woocommerce-checkout select:-webkit-autofill,
body.woocommerce-account input:-webkit-autofill,
body.woocommerce-account input:-webkit-autofill:hover,
body.woocommerce-account input:-webkit-autofill:focus{
  -webkit-text-fill-color:#fff !important;
  caret-color:var(--ji-green) !important;
  border-color:rgba(155,212,82,.5) !important;
  -webkit-box-shadow:0 0 0 1000px var(--ji-field) inset !important;
  box-shadow:0 0 0 1000px var(--ji-field) inset !important;
  transition:background-color 99999s ease-out 0s;
}

/* ------------------------------------------------------------
   7. WOO BLOCK FLOATING LABELS
   ------------------------------------------------------------ */

body.jicos-commerce-shell :where(
  .wc-block-components-text-input label,
  .wc-block-components-combobox-control label,
  .wc-block-components-checkbox__label,
  .wc-block-components-radio-control__label,
  .wc-block-components-checkout-step__description
),
body.woocommerce-checkout :where(
  .wc-block-components-text-input label,
  .wc-block-components-combobox-control label,
  .wc-block-components-checkbox__label,
  .wc-block-components-radio-control__label,
  .wc-block-components-checkout-step__description
){
  color:#aeb8bf !important;
  -webkit-text-fill-color:#aeb8bf !important;
  text-shadow:none !important;
  opacity:1 !important;
}

body.jicos-commerce-shell :where(.wc-block-components-text-input.is-active label,.wc-block-components-combobox.is-active label,.wc-block-components-text-input.has-error label),
body.woocommerce-checkout :where(.wc-block-components-text-input.is-active label,.wc-block-components-combobox.is-active label,.wc-block-components-text-input.has-error label){
  color:var(--ji-green-2) !important;
  -webkit-text-fill-color:var(--ji-green-2) !important;
  background:var(--ji-field) !important;
  padding-inline:4px !important;
  border-radius:4px;
}

/* ------------------------------------------------------------
   8. SELECT2 / COUNTRY / STATE DROPDOWNS
   ------------------------------------------------------------ */

body.jicos-commerce-shell .select2-container,
body.woocommerce-checkout .select2-container,
body.woocommerce-account .select2-container{
  width:100% !important;
  max-width:100% !important;
}

body.jicos-commerce-shell .select2-container .select2-selection--single,
body.jicos-commerce-shell .select2-container .select2-selection--multiple,
body.woocommerce-checkout .select2-container .select2-selection--single,
body.woocommerce-checkout .select2-container .select2-selection--multiple,
body.woocommerce-account .select2-container .select2-selection--single,
body.woocommerce-account .select2-container .select2-selection--multiple{
  min-height:var(--ji-control-h) !important;
  border:1px solid rgba(255,255,255,.15) !important;
  border-radius:14px !important;
  background:var(--ji-field) !important;
  box-shadow:none !important;
}

body.jicos-commerce-shell .select2-container .select2-selection--single .select2-selection__rendered,
body.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__rendered,
body.woocommerce-account .select2-container .select2-selection--single .select2-selection__rendered{
  padding:12px 38px 12px 14px !important;
  color:var(--ji-text) !important;
  -webkit-text-fill-color:var(--ji-text) !important;
  line-height:26px !important;
}

body.jicos-commerce-shell .select2-container .select2-selection--single .select2-selection__arrow,
body.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__arrow,
body.woocommerce-account .select2-container .select2-selection--single .select2-selection__arrow{
  top:12px !important;
  right:10px !important;
}

body.jicos-commerce-shell .select2-dropdown,
body.jicos-commerce-shell .select2-search--dropdown,
body.jicos-commerce-shell .select2-results,
body.jicos-commerce-shell .select2-results__options,
body.woocommerce-checkout .select2-dropdown,
body.woocommerce-checkout .select2-search--dropdown,
body.woocommerce-checkout .select2-results,
body.woocommerce-checkout .select2-results__options,
body.woocommerce-account .select2-dropdown,
body.woocommerce-account .select2-results{
  color:var(--ji-text) !important;
  border-color:rgba(255,255,255,.15) !important;
  background:var(--ji-surface-2) !important;
}

body.jicos-commerce-shell .select2-search--dropdown .select2-search__field,
body.woocommerce-checkout .select2-search--dropdown .select2-search__field,
body.woocommerce-account .select2-search--dropdown .select2-search__field{
  min-height:46px !important;
  color:var(--ji-text) !important;
  -webkit-text-fill-color:var(--ji-text) !important;
  border:1px solid rgba(255,255,255,.15) !important;
  border-radius:12px !important;
  background:var(--ji-field) !important;
}

body.jicos-commerce-shell .select2-results__option,
body.woocommerce-checkout .select2-results__option,
body.woocommerce-account .select2-results__option{
  color:var(--ji-soft) !important;
  background:var(--ji-surface-2) !important;
}

body.jicos-commerce-shell .select2-results__option--highlighted,
body.jicos-commerce-shell .select2-results__option[aria-selected="true"],
body.woocommerce-checkout .select2-results__option--highlighted,
body.woocommerce-checkout .select2-results__option[aria-selected="true"],
body.woocommerce-account .select2-results__option--highlighted,
body.woocommerce-account .select2-results__option[aria-selected="true"]{
  color:#172019 !important;
  background:var(--ji-green-2) !important;
}

/* ------------------------------------------------------------
   9. PAYMENT METHODS
   ------------------------------------------------------------ */

body.jicos-commerce-shell :where(#payment,.woocommerce-checkout-payment,.wc-block-checkout__payment-method,.wc-block-components-radio-control-accordion-option,.wc-block-components-radio-control__option),
body.woocommerce-checkout :where(#payment,.woocommerce-checkout-payment,.wc-block-checkout__payment-method,.wc-block-components-radio-control-accordion-option,.wc-block-components-radio-control__option){
  color:var(--ji-text) !important;
  border-color:var(--ji-line) !important;
  background:rgba(255,255,255,.028) !important;
}

body.jicos-commerce-shell :where(#payment div.payment_box,.wc-block-components-radio-control-accordion-content),
body.woocommerce-checkout :where(#payment div.payment_box,.wc-block-components-radio-control-accordion-content){
  color:var(--ji-soft) !important;
  background:var(--ji-field) !important;
  border:1px solid var(--ji-line) !important;
  border-radius:14px !important;
}

body.jicos-commerce-shell #payment div.payment_box::before,
body.woocommerce-checkout #payment div.payment_box::before{
  border-bottom-color:var(--ji-field) !important;
}

body.jicos-commerce-shell :where(.payment_methods label,.wc-block-components-radio-control__label),
body.woocommerce-checkout :where(.payment_methods label,.wc-block-components-radio-control__label){
  color:var(--ji-text) !important;
}

/* Common Stripe/hosted-field shells. The iframe's internal style is controlled
   by the gateway itself, but its host will still match the page. */
body.jicos-commerce-shell :where(.wc-stripe-elements-field,.StripeElement,.payment_method_stripe iframe),
body.woocommerce-checkout :where(.wc-stripe-elements-field,.StripeElement,.payment_method_stripe iframe){
  max-width:100% !important;
  border-radius:12px !important;
  background:var(--ji-field) !important;
}

/* ------------------------------------------------------------
   10. TABLES, TOTALS, CART
   ------------------------------------------------------------ */

body.jicos-commerce-shell :where(table.shop_table,.wc-block-cart-items,.wc-block-components-totals-wrapper),
body.woocommerce-checkout :where(table.shop_table,.wc-block-components-totals-wrapper),
body.woocommerce-cart :where(table.shop_table,.wc-block-cart-items,.wc-block-components-totals-wrapper),
body.woocommerce-account :where(table.shop_table){
  width:100% !important;
  color:var(--ji-text) !important;
  border-color:var(--ji-line) !important;
  background:transparent !important;
  border-collapse:separate !important;
  border-spacing:0 !important;
}

body.jicos-commerce-shell :where(table.shop_table th,table.shop_table td,.wc-block-cart-items th,.wc-block-cart-items td),
body.woocommerce-checkout :where(table.shop_table th,table.shop_table td),
body.woocommerce-cart :where(table.shop_table th,table.shop_table td,.wc-block-cart-items th,.wc-block-cart-items td),
body.woocommerce-account :where(table.shop_table th,table.shop_table td){
  color:var(--ji-soft) !important;
  border-color:var(--ji-line) !important;
  background:transparent !important;
  overflow-wrap:anywhere;
}

body.jicos-commerce-shell :where(.order-total strong,.cart-subtotal strong,.wc-block-components-totals-footer-item .wc-block-components-totals-item__value),
body.woocommerce-checkout :where(.order-total strong,.cart-subtotal strong,.wc-block-components-totals-footer-item .wc-block-components-totals-item__value),
body.woocommerce-cart :where(.order-total strong,.cart-subtotal strong,.wc-block-components-totals-footer-item .wc-block-components-totals-item__value){
  color:var(--ji-gold) !important;
}

body.jicos-commerce-shell .product-name a,
body.woocommerce-cart .product-name a{
  color:var(--ji-text) !important;
}

/* Quantity controls */
body.jicos-commerce-shell .quantity,
body.woocommerce-cart .quantity{
  display:inline-flex !important;
  align-items:center;
  max-width:110px;
}

/* ------------------------------------------------------------
   11. BUTTONS
   ------------------------------------------------------------ */

body.jicos-commerce-shell .woocommerce :where(a.button,button.button,input.button,#place_order),
body.woocommerce-checkout .woocommerce :where(a.button,button.button,input.button,#place_order),
body.woocommerce-cart .woocommerce :where(a.button,button.button,input.button),
body.woocommerce-account .woocommerce :where(a.button,button.button,input.button),
body.jicos-commerce-shell :where(.wc-block-components-button,.jicos-commerce-button),
body.woocommerce-checkout :where(.wc-block-components-button),
body.woocommerce-cart :where(.wc-block-components-button){
  min-height:48px !important;
  padding:12px 18px !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  font-weight:800 !important;
  line-height:1.2 !important;
  text-decoration:none !important;
  border:1px solid var(--ji-line-strong) !important;
  border-radius:999px !important;
  background:var(--ji-surface-2) !important;
  box-shadow:none !important;
  opacity:1 !important;
  transition:transform .2s ease, border-color .2s ease, background .2s ease !important;
}

body.jicos-commerce-shell .woocommerce :where(a.checkout-button,#place_order),
body.woocommerce-checkout .woocommerce #place_order,
body.woocommerce-cart .woocommerce a.checkout-button,
body.jicos-commerce-shell :where(.wc-block-cart__submit-button,.wc-block-components-checkout-place-order-button,.jicos-commerce-button.is-primary),
body.woocommerce-checkout .wc-block-components-checkout-place-order-button,
body.woocommerce-cart .wc-block-cart__submit-button{
  color:#172019 !important;
  -webkit-text-fill-color:#172019 !important;
  border-color:transparent !important;
  background:linear-gradient(135deg,var(--ji-green-2),var(--ji-green)) !important;
  box-shadow:0 12px 32px rgba(155,212,82,.18) !important;
}

body.jicos-commerce-shell .woocommerce :where(a.button,button.button,input.button,#place_order):hover,
body.woocommerce-checkout .woocommerce :where(a.button,button.button,input.button,#place_order):hover,
body.woocommerce-cart .woocommerce :where(a.button,button.button,input.button):hover,
body.woocommerce-account .woocommerce :where(a.button,button.button,input.button):hover,
body.jicos-commerce-shell .wc-block-components-button:hover{
  transform:translateY(-1px);
  border-color:rgba(255,255,255,.26) !important;
}

body.jicos-commerce-shell .wc-block-components-checkout-place-order-button .wc-block-components-checkout-place-order-button__text,
body.woocommerce-checkout .wc-block-components-checkout-place-order-button .wc-block-components-checkout-place-order-button__text{
  color:#172019 !important;
  -webkit-text-fill-color:#172019 !important;
}

/* ------------------------------------------------------------
   12. NOTICES / VALIDATION / COUPONS
   ------------------------------------------------------------ */

body.jicos-commerce-shell :where(.woocommerce-error,.woocommerce-message,.woocommerce-info,.wc-block-components-notice-banner),
body.woocommerce-checkout :where(.woocommerce-error,.woocommerce-message,.woocommerce-info,.wc-block-components-notice-banner),
body.woocommerce-cart :where(.woocommerce-error,.woocommerce-message,.woocommerce-info,.wc-block-components-notice-banner),
body.woocommerce-account :where(.woocommerce-error,.woocommerce-message,.woocommerce-info,.wc-block-components-notice-banner){
  color:var(--ji-soft) !important;
  -webkit-text-fill-color:var(--ji-soft) !important;
  border:1px solid var(--ji-line) !important;
  border-radius:14px !important;
  background:var(--ji-surface-2) !important;
  box-shadow:none !important;
}

body.jicos-commerce-shell .woocommerce-error,
body.woocommerce-checkout .woocommerce-error,
body.woocommerce-cart .woocommerce-error,
body.woocommerce-account .woocommerce-error{
  color:#ffd4d4 !important;
  -webkit-text-fill-color:#ffd4d4 !important;
  border-color:rgba(239,125,125,.35) !important;
  background:var(--ji-danger-bg) !important;
}

body.jicos-commerce-shell :where(.woocommerce-invalid input,.woocommerce-invalid select,.woocommerce-invalid textarea,.has-error input,.has-error select,[aria-invalid="true"]),
body.woocommerce-checkout :where(.woocommerce-invalid input,.woocommerce-invalid select,.woocommerce-invalid textarea,.has-error input,.has-error select,[aria-invalid="true"]){
  border-color:var(--ji-danger) !important;
  box-shadow:0 0 0 3px rgba(239,125,125,.12) !important;
}

/* Coupon/login reveal panels */
body.jicos-commerce-shell :where(.checkout_coupon,.woocommerce-form-login-toggle + .woocommerce-form-login),
body.woocommerce-checkout :where(.checkout_coupon,.woocommerce-form-login-toggle + .woocommerce-form-login){
  margin-top:12px !important;
  padding:18px !important;
  border:1px solid var(--ji-line) !important;
  border-radius:var(--ji-radius) !important;
  background:rgba(255,255,255,.025) !important;
}

/* ------------------------------------------------------------
   13. MY ACCOUNT
   ------------------------------------------------------------ */

body.jicos-commerce-shell .woocommerce-MyAccount-navigation ul,
body.woocommerce-account .woocommerce-MyAccount-navigation ul{
  display:grid;
  gap:6px;
  margin:0 !important;
  padding:0 !important;
  list-style:none !important;
}

body.jicos-commerce-shell .woocommerce-MyAccount-navigation a,
body.woocommerce-account .woocommerce-MyAccount-navigation a{
  display:block;
  padding:12px 14px;
  color:var(--ji-soft) !important;
  -webkit-text-fill-color:var(--ji-soft) !important;
  border-radius:12px;
  background:transparent !important;
}

body.jicos-commerce-shell .woocommerce-MyAccount-navigation .is-active a,
body.jicos-commerce-shell .woocommerce-MyAccount-navigation a:hover,
body.woocommerce-account .woocommerce-MyAccount-navigation .is-active a,
body.woocommerce-account .woocommerce-MyAccount-navigation a:hover{
  color:var(--ji-text) !important;
  -webkit-text-fill-color:var(--ji-text) !important;
  background:rgba(155,212,82,.10) !important;
}

/* ------------------------------------------------------------
   14. LINKS / SECONDARY TEXT
   ------------------------------------------------------------ */

body.jicos-commerce-shell .woocommerce a:not(.button),
body.woocommerce-checkout .woocommerce a:not(.button),
body.woocommerce-cart .woocommerce a:not(.button),
body.woocommerce-account .woocommerce a:not(.button){
  color:var(--ji-gold) !important;
  text-decoration:none !important;
}

body.jicos-commerce-shell .woocommerce a:not(.button):hover,
body.woocommerce-checkout .woocommerce a:not(.button):hover,
body.woocommerce-cart .woocommerce a:not(.button):hover,
body.woocommerce-account .woocommerce a:not(.button):hover{
  color:#fff0c7 !important;
}

/* ------------------------------------------------------------
   15. TABLET / MOBILE STABILITY
   ------------------------------------------------------------ */

@media (max-width:900px){
  body.jicos-commerce-shell .woocommerce-checkout .col2-set,
  body.woocommerce-checkout .woocommerce-checkout .col2-set{
    grid-template-columns:1fr !important;
  }

  body.jicos-commerce-shell .woocommerce-MyAccount-navigation,
  body.woocommerce-account .woocommerce-MyAccount-navigation{
    margin-bottom:14px !important;
  }
}

@media (max-width:782px){
  body.jicos-commerce-shell,
  body.woocommerce-checkout,
  body.woocommerce-cart,
  body.woocommerce-account{
    background-attachment:scroll !important;
  }

  body.jicos-commerce-shell .woocommerce,
  body.woocommerce-checkout .woocommerce,
  body.woocommerce-cart .woocommerce,
  body.woocommerce-account .woocommerce,
  body.jicos-commerce-shell .wp-block-woocommerce-checkout,
  body.jicos-commerce-shell .wp-block-woocommerce-cart,
  body.woocommerce-checkout .wp-block-woocommerce-checkout,
  body.woocommerce-cart .wp-block-woocommerce-cart{
    width:min(calc(100% - 16px),1220px) !important;
    padding-top:12px !important;
    padding-bottom:110px !important;
  }

  body.jicos-commerce-shell :where(.woocommerce-billing-fields,.woocommerce-shipping-fields,.woocommerce-additional-fields,#order_review,.cart_totals,.woocommerce-form-login,.woocommerce-form-register,.woocommerce-MyAccount-content,.woocommerce-Address),
  body.woocommerce-checkout :where(.woocommerce-billing-fields,.woocommerce-shipping-fields,.woocommerce-additional-fields,#order_review,.woocommerce-form-login,.woocommerce-form-register),
  body.woocommerce-cart :where(.cart_totals,.woocommerce-cart-form),
  body.woocommerce-account :where(.woocommerce-form-login,.woocommerce-form-register,.woocommerce-MyAccount-content,.woocommerce-Address){
    padding:16px !important;
    border-radius:20px !important;
  }

  body.jicos-commerce-shell :where(.woocommerce-billing-fields__field-wrapper,.woocommerce-shipping-fields__field-wrapper),
  body.woocommerce-checkout :where(.woocommerce-billing-fields__field-wrapper,.woocommerce-shipping-fields__field-wrapper){
    grid-template-columns:1fr !important;
    gap:12px !important;
  }

  body.jicos-commerce-shell .form-row-wide,
  body.woocommerce-checkout .form-row-wide,
  body.woocommerce-account .form-row-wide{
    grid-column:auto;
  }

  /* 16px prevents Safari/iPhone focus zoom. */
  .jicos-viewport :where(input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="hidden"]),select,textarea),
  body.jicos-commerce-shell .woocommerce :where(input.input-text,input[type="text"],input[type="email"],input[type="tel"],input[type="password"],input[type="number"],input[type="search"],select,textarea),
  body.woocommerce-checkout .woocommerce :where(input.input-text,input[type="text"],input[type="email"],input[type="tel"],input[type="password"],input[type="number"],input[type="search"],select,textarea),
  body.woocommerce-cart .woocommerce :where(input.input-text,input[type="text"],input[type="email"],input[type="tel"],input[type="number"],input[type="search"],select,textarea),
  body.woocommerce-account .woocommerce :where(input.input-text,input[type="text"],input[type="email"],input[type="tel"],input[type="password"],input[type="number"],input[type="search"],select,textarea),
  body.jicos-commerce-shell :where(.wc-block-components-text-input input,.wc-block-components-combobox-control input,.wc-block-components-textarea,.wc-block-components-select select),
  body.woocommerce-checkout :where(.wc-block-components-text-input input,.wc-block-components-combobox-control input,.wc-block-components-textarea,.wc-block-components-select select){
    min-height:52px !important;
    font-size:16px !important;
    line-height:1.35 !important;
  }

  body.jicos-commerce-shell :where(.woocommerce button,.woocommerce .button,.wc-block-components-button),
  body.woocommerce-checkout :where(.woocommerce button,.woocommerce .button,.wc-block-components-button),
  body.woocommerce-cart :where(.woocommerce button,.woocommerce .button,.wc-block-components-button),
  body.woocommerce-account :where(.woocommerce button,.woocommerce .button){
    min-height:48px !important;
    touch-action:manipulation;
  }

  body.jicos-commerce-shell .select2-dropdown,
  body.woocommerce-checkout .select2-dropdown,
  body.woocommerce-account .select2-dropdown{
    max-width:calc(100vw - 16px) !important;
  }

  /* Prevent classic cart tables from forcing horizontal page overflow. */
  body.woocommerce-cart .woocommerce-cart-form,
  body.jicos-commerce-shell .woocommerce-cart-form{
    max-width:100% !important;
    overflow-x:auto !important;
    -webkit-overflow-scrolling:touch;
  }
}

/* ------------------------------------------------------------
   16. ACCESSIBILITY / REDUCED MOTION
   ------------------------------------------------------------ */

body.jicos-commerce-shell :focus-visible,
body.woocommerce-checkout :focus-visible,
body.woocommerce-cart :focus-visible,
body.woocommerce-account :focus-visible,
.jicos-viewport :focus-visible{
  outline:2px solid rgba(192,231,121,.95) !important;
  outline-offset:2px !important;
}

@media (prefers-reduced-motion:reduce){
  .jicos-viewport *,
  body.jicos-commerce-shell *,
  body.woocommerce-checkout *,
  body.woocommerce-cart *,
  body.woocommerce-account *{
    scroll-behavior:auto !important;
    animation-duration:.01ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.01ms !important;
  }
}

/* ============================================================
   v4.0 FINAL HARDENING LAYER
   Homepage typography + Single Product + Commerce alignment
   Keep this block LAST in the stylesheet.
   ============================================================ */

:root{
  --ji-product-card:rgba(15,23,33,.92);
  --ji-product-card-2:rgba(19,30,42,.94);
  --ji-product-field:#111b25;
  --ji-product-field-focus:#172430;
  --ji-product-text:#f8f4ed;
  --ji-product-soft:#d7d0c7;
  --ji-product-muted:#9ca7ad;
  --ji-product-line:rgba(255,255,255,.13);
  --ji-product-line-strong:rgba(255,255,255,.22);
}

/* ------------------------------------------------------------
   A. HOMEPAGE — ASTRA MAY NOT RECOLOR OUR EDITORIAL TYPE
   ------------------------------------------------------------ */

#ji-home-v3,
#ji-home-v3 .ji3-hero-shell,
#ji-home-v3 .ji3-product,
#ji-home-v3 .ji3-editorial-card,
#ji-home-v3 .ji3-editorial-note,
#ji-home-v3 .ji3-pickup-band-inner{
  color:var(--text,#f6f0e7) !important;
}

#ji-home-v3 :is(h1,h2,h3,h4,h5,h6),
#ji-home-v3 .ji3-brand-copy strong,
#ji-home-v3 .ji3-art-copy strong,
#ji-home-v3 .ji3-pickup-card strong,
#ji-home-v3 .ji3-footer-main > div:first-child > strong{
  color:var(--text,#f6f0e7) !important;
  -webkit-text-fill-color:var(--text,#f6f0e7) !important;
  text-shadow:none !important;
}

#ji-home-v3 .ji3-hero h1,
#ji-home-v3 .ji3-section-head h2,
#ji-home-v3 .ji3-editorial-copy h2,
#ji-home-v3 .ji3-editorial-note h2,
#ji-home-v3 .ji3-pickup-band h2,
#ji-home-v3 .ji3-product h3{
  color:var(--text,#f6f0e7) !important;
  -webkit-text-fill-color:var(--text,#f6f0e7) !important;
}

#ji-home-v3 .ji3-hero h1 em,
#ji-home-v3 .ji3-kicker,
#ji-home-v3 .ji3-editorial-copy small,
#ji-home-v3 .ji3-editorial-note > small,
#ji-home-v3 .ji3-section-head small,
#ji-home-v3 .ji3-pickup-band small,
#ji-home-v3 .ji3-footer-tech > a{
  color:var(--gold2,#f1d79d) !important;
  -webkit-text-fill-color:var(--gold2,#f1d79d) !important;
}

#ji-home-v3 :is(p,.ji3-lead,.ji3-product-bottom span,.ji3-footer p,.ji3-footer-links a,.ji3-powered,.ji3-brand-copy small){
  text-shadow:none !important;
}

/* Astra sometimes paints form controls white globally. Keep homepage search dark. */
#ji-home-v3 .ji3-search,
#ji-home-v3 .ji3-search input{
  background-color:rgba(255,255,255,.025) !important;
  color:var(--text,#f6f0e7) !important;
  -webkit-text-fill-color:var(--text,#f6f0e7) !important;
}
#ji-home-v3 .ji3-search input{
  border:0 !important;
  box-shadow:none !important;
}
#ji-home-v3 .ji3-search input::placeholder{
  color:#8d938d !important;
  -webkit-text-fill-color:#8d938d !important;
  opacity:1 !important;
}

/* ------------------------------------------------------------
   B. SINGLE PRODUCT — FULL DARK COMMERCE CANVAS
   ------------------------------------------------------------ */

body.single-product{
  min-height:100vh;
  color:var(--ji-product-text) !important;
  background:
    radial-gradient(circle at 9% 6%, rgba(155,212,82,.12), transparent 28%),
    radial-gradient(circle at 91% 10%, rgba(242,216,157,.11), transparent 25%),
    radial-gradient(circle at 62% 92%, rgba(255,139,82,.08), transparent 28%),
    linear-gradient(160deg,rgba(7,11,17,.94),rgba(9,14,21,.985)),
    url("https://curbside.juiceinfusion.net/wp-content/uploads/2026/03/curbside-bg-scaled.png") center / cover no-repeat !important;
  background-color:var(--ji-page) !important;
}

body.single-product :where(.site,.site-content,.site-main,.content-area,.ast-container,.ast-container-fluid,.entry-content,article,main,.ast-article-single,.elementor,.elementor-section,.elementor-container,.elementor-column,.elementor-widget-wrap,.elementor-widget-container){
  background-color:transparent !important;
  background-image:none !important;
  color:inherit !important;
  box-shadow:none !important;
}

body.single-product .site-content,
body.single-product .ast-container,
body.single-product .site-main{
  width:100% !important;
  max-width:none !important;
}

body.single-product .woocommerce{
  width:min(calc(100% - 28px),1220px) !important;
  max-width:1220px !important;
  margin:0 auto !important;
  padding:28px 0 120px !important;
  color:var(--ji-product-text) !important;
}

body.single-product .woocommerce div.product{
  display:grid;
  grid-template-columns:minmax(0,1.02fr) minmax(360px,.98fr);
  gap:clamp(22px,4vw,54px);
  align-items:start;
  color:var(--ji-product-text) !important;
}

body.single-product .woocommerce div.product > :not(.woocommerce-product-gallery):not(.summary):not(.woocommerce-tabs):not(.related):not(.upsells):not(.cross-sells){
  min-width:0;
}

/* Product media */
body.single-product .woocommerce div.product .woocommerce-product-gallery{
  width:100% !important;
  float:none !important;
  margin:0 !important;
  min-width:0;
  padding:12px !important;
  border:1px solid var(--ji-product-line) !important;
  border-radius:28px !important;
  background:linear-gradient(160deg,rgba(255,255,255,.065),rgba(255,255,255,.025)) !important;
  box-shadow:var(--ji-shadow) !important;
  overflow:hidden;
}

body.single-product .woocommerce-product-gallery__wrapper,
body.single-product .woocommerce-product-gallery__image,
body.single-product .woocommerce-product-gallery__image a{
  background:transparent !important;
}

body.single-product .woocommerce-product-gallery__image img,
body.single-product .flex-control-thumbs img{
  border-radius:20px !important;
  background:#10161d !important;
}

body.single-product .flex-control-thumbs{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
  margin-top:10px !important;
}

body.single-product .flex-control-thumbs li{
  width:auto !important;
  float:none !important;
  margin:0 !important;
}

body.single-product .woocommerce div.product .woocommerce-product-gallery .woocommerce-product-gallery__trigger{
  width:44px !important;
  height:44px !important;
  top:18px !important;
  right:18px !important;
  border:1px solid var(--ji-product-line) !important;
  border-radius:14px !important;
  background:rgba(7,11,17,.86) !important;
  color:#fff !important;
}

/* Product summary card */
body.single-product .woocommerce div.product .summary{
  width:100% !important;
  float:none !important;
  margin:0 !important;
  min-width:0;
  padding:clamp(22px,3vw,38px) !important;
  border:1px solid var(--ji-product-line-strong) !important;
  border-radius:28px !important;
  background:
    radial-gradient(circle at 92% 6%,rgba(242,216,157,.08),transparent 26%),
    linear-gradient(155deg,rgba(18,28,39,.95),rgba(12,18,27,.95)) !important;
  box-shadow:var(--ji-shadow) !important;
  color:var(--ji-product-text) !important;
}

body.single-product .woocommerce div.product .summary :where(h1,h2,h3,h4,h5,h6,strong,b),
body.single-product .woocommerce div.product h1.product_title{
  color:var(--ji-product-text) !important;
  -webkit-text-fill-color:var(--ji-product-text) !important;
  text-shadow:none !important;
}

body.single-product .woocommerce div.product h1.product_title{
  margin:0 0 14px !important;
  font-family:Georgia,"Times New Roman",serif !important;
  font-size:clamp(2.45rem,4.4vw,4.8rem) !important;
  line-height:.94 !important;
  letter-spacing:-.045em !important;
  font-weight:600 !important;
}

body.single-product .woocommerce div.product .summary :where(p,li,dd,dt,small),
body.single-product .woocommerce-product-details__short-description,
body.single-product .woocommerce-product-details__short-description p,
body.single-product .product_meta,
body.single-product .product_meta span{
  color:var(--ji-product-soft) !important;
  -webkit-text-fill-color:var(--ji-product-soft) !important;
  line-height:1.72 !important;
}

body.single-product .woocommerce div.product p.price,
body.single-product .woocommerce div.product span.price,
body.single-product .woocommerce div.product .price,
body.single-product .woocommerce div.product .price *{
  color:var(--ji-gold) !important;
  -webkit-text-fill-color:var(--ji-gold) !important;
  font-weight:800 !important;
}

body.single-product .woocommerce div.product p.price,
body.single-product .woocommerce div.product span.price{
  margin:10px 0 20px !important;
  font-size:clamp(1.35rem,2vw,1.8rem) !important;
}

body.single-product .woocommerce div.product .stock,
body.single-product .woocommerce div.product .in-stock{
  color:var(--ji-green-2) !important;
  -webkit-text-fill-color:var(--ji-green-2) !important;
  font-weight:800 !important;
}

body.single-product .woocommerce div.product .out-of-stock{
  color:var(--ji-danger) !important;
  -webkit-text-fill-color:var(--ji-danger) !important;
}

body.single-product .woocommerce div.product .product_meta{
  margin-top:24px !important;
  padding-top:18px !important;
  border-top:1px solid var(--ji-product-line) !important;
}

body.single-product .woocommerce div.product .product_meta a,
body.single-product .woocommerce div.product .summary a:not(.button){
  color:var(--ji-green-2) !important;
  -webkit-text-fill-color:var(--ji-green-2) !important;
}

/* Variations and attribute bars */
body.single-product .woocommerce div.product form.cart{
  margin:24px 0 0 !important;
  padding:20px !important;
  border:1px solid var(--ji-product-line) !important;
  border-radius:20px !important;
  background:rgba(255,255,255,.035) !important;
}

body.single-product .woocommerce div.product form.cart .variations{
  width:100% !important;
  margin:0 0 16px !important;
  border:0 !important;
  background:transparent !important;
}

body.single-product .woocommerce div.product form.cart .variations tbody{
  display:grid;
  gap:12px;
}

body.single-product .woocommerce div.product form.cart .variations tr{
  display:grid;
  grid-template-columns:minmax(115px,.32fr) minmax(0,1fr);
  gap:12px;
  align-items:center;
}

body.single-product .woocommerce div.product form.cart .variations th,
body.single-product .woocommerce div.product form.cart .variations td{
  display:block !important;
  width:auto !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  text-align:left !important;
  vertical-align:middle !important;
}

body.single-product .woocommerce div.product form.cart .variations label{
  color:var(--ji-product-soft) !important;
  -webkit-text-fill-color:var(--ji-product-soft) !important;
  font-size:.78rem !important;
  font-weight:800 !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
}

body.single-product .woocommerce div.product form.cart :where(select,input.input-text,input[type="text"],input[type="number"],textarea),
body.single-product .woocommerce div.product .quantity .qty{
  min-width:0 !important;
  max-width:100% !important;
  min-height:50px !important;
  margin:0 !important;
  padding:12px 14px !important;
  color:var(--ji-product-text) !important;
  -webkit-text-fill-color:var(--ji-product-text) !important;
  caret-color:var(--ji-green) !important;
  border:1px solid var(--ji-product-line-strong) !important;
  border-radius:14px !important;
  background:var(--ji-product-field) !important;
  background-image:none !important;
  box-shadow:none !important;
  opacity:1 !important;
}

body.single-product .woocommerce div.product form.cart :where(select,input,textarea):focus,
body.single-product .woocommerce div.product .quantity .qty:focus{
  border-color:rgba(155,212,82,.8) !important;
  background:var(--ji-product-field-focus) !important;
  box-shadow:0 0 0 3px rgba(155,212,82,.15) !important;
  outline:0 !important;
}

body.single-product .woocommerce div.product form.cart select,
body.single-product .woocommerce div.product form.cart select option,
body.single-product .woocommerce div.product form.cart select optgroup{
  color:var(--ji-product-text) !important;
  background:var(--ji-product-field) !important;
}

body.single-product .woocommerce div.product .reset_variations{
  display:inline-flex !important;
  align-items:center;
  min-height:36px;
  margin-top:8px !important;
  color:var(--ji-product-muted) !important;
  -webkit-text-fill-color:var(--ji-product-muted) !important;
  font-size:.72rem !important;
}

body.single-product .woocommerce div.product .woocommerce-variation{
  margin:14px 0 !important;
  padding:14px !important;
  border:1px solid var(--ji-product-line) !important;
  border-radius:16px !important;
  background:rgba(255,255,255,.035) !important;
}

body.single-product .woocommerce div.product .woocommerce-variation-description,
body.single-product .woocommerce div.product .woocommerce-variation-description p{
  color:var(--ji-product-soft) !important;
  -webkit-text-fill-color:var(--ji-product-soft) !important;
}

body.single-product .woocommerce div.product .woocommerce-variation-price,
body.single-product .woocommerce div.product .woocommerce-variation-price *{
  color:var(--ji-gold) !important;
  -webkit-text-fill-color:var(--ji-gold) !important;
}

body.single-product .woocommerce div.product form.cart .single_variation_wrap{
  width:100% !important;
}

body.single-product .woocommerce div.product form.cart .woocommerce-variation-add-to-cart,
body.single-product .woocommerce div.product form.cart:not(.variations_form){
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  flex-wrap:wrap !important;
}

body.single-product .woocommerce div.product .quantity{
  display:flex !important;
  align-items:center !important;
  width:auto !important;
  min-width:0 !important;
  margin:0 !important;
}

body.single-product .woocommerce div.product .quantity .qty{
  width:82px !important;
  text-align:center !important;
}

body.single-product .woocommerce div.product .single_add_to_cart_button,
body.single-product .woocommerce div.product button.single_add_to_cart_button{
  min-height:52px !important;
  flex:1 1 210px;
  margin:0 !important;
  padding:0 22px !important;
  color:#172019 !important;
  -webkit-text-fill-color:#172019 !important;
  border:0 !important;
  border-radius:15px !important;
  background:linear-gradient(135deg,var(--ji-green-2),var(--ji-green)) !important;
  box-shadow:0 14px 32px rgba(155,212,82,.20) !important;
  font-weight:900 !important;
}

/* ------------------------------------------------------------
   C. DESCRIPTION / TABS / REVIEWS / RELATED PRODUCTS
   ------------------------------------------------------------ */

body.single-product .woocommerce div.product .woocommerce-tabs,
body.single-product .woocommerce div.product .related,
body.single-product .woocommerce div.product .upsells,
body.single-product .woocommerce div.product .cross-sells{
  grid-column:1 / -1;
  width:100% !important;
  min-width:0;
  margin:22px 0 0 !important;
  color:var(--ji-product-text) !important;
}

body.single-product .woocommerce div.product .woocommerce-tabs{
  padding:clamp(18px,3vw,30px) !important;
  border:1px solid var(--ji-product-line) !important;
  border-radius:26px !important;
  background:linear-gradient(155deg,rgba(15,23,33,.95),rgba(11,17,25,.95)) !important;
  box-shadow:var(--ji-shadow-soft) !important;
}

body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs{
  display:flex !important;
  gap:8px !important;
  flex-wrap:wrap !important;
  margin:0 0 20px !important;
  padding:0 !important;
  border:0 !important;
  overflow:visible !important;
}

body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs::before,
body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs::after{
  display:none !important;
}

body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs li{
  margin:0 !important;
  padding:0 !important;
  border:1px solid var(--ji-product-line) !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.035) !important;
  box-shadow:none !important;
}

body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs li::before,
body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs li::after{
  display:none !important;
}

body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs li a{
  display:inline-flex !important;
  align-items:center;
  min-height:42px;
  padding:0 15px !important;
  color:var(--ji-product-soft) !important;
  -webkit-text-fill-color:var(--ji-product-soft) !important;
  font-weight:800 !important;
}

body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs li.active{
  border-color:rgba(155,212,82,.42) !important;
  background:rgba(155,212,82,.12) !important;
}

body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs li.active a{
  color:var(--ji-green-2) !important;
  -webkit-text-fill-color:var(--ji-green-2) !important;
}

body.single-product .woocommerce div.product .woocommerce-Tabs-panel,
body.single-product .woocommerce div.product .woocommerce-Tabs-panel :where(p,li,td,th,dt,dd,address),
body.single-product .woocommerce div.product #reviews :where(p,li,label,span){
  color:var(--ji-product-soft) !important;
  -webkit-text-fill-color:var(--ji-product-soft) !important;
}

body.single-product .woocommerce div.product .woocommerce-Tabs-panel :where(h2,h3,h4,h5,h6,strong,b),
body.single-product .woocommerce div.product #reviews :where(h2,h3,h4,h5,h6,strong,b){
  color:var(--ji-product-text) !important;
  -webkit-text-fill-color:var(--ji-product-text) !important;
}

body.single-product .woocommerce div.product .woocommerce-product-attributes,
body.single-product .woocommerce div.product .woocommerce-product-attributes th,
body.single-product .woocommerce div.product .woocommerce-product-attributes td{
  color:var(--ji-product-soft) !important;
  border-color:var(--ji-product-line) !important;
  background:transparent !important;
}

body.single-product .woocommerce div.product #review_form_wrapper,
body.single-product .woocommerce div.product #reviews #comments ol.commentlist li .comment-text{
  border:1px solid var(--ji-product-line) !important;
  border-radius:18px !important;
  background:rgba(255,255,255,.025) !important;
}

body.single-product .woocommerce div.product #review_form_wrapper{
  padding:18px !important;
}

body.single-product .woocommerce div.product #review_form :where(input:not([type="checkbox"]):not([type="radio"]),textarea){
  width:100% !important;
  min-height:50px !important;
  color:var(--ji-product-text) !important;
  -webkit-text-fill-color:var(--ji-product-text) !important;
  border:1px solid var(--ji-product-line-strong) !important;
  border-radius:14px !important;
  background:var(--ji-product-field) !important;
}

body.single-product .woocommerce div.product .star-rating,
body.single-product .woocommerce div.product p.stars a,
body.single-product .woocommerce div.product .woocommerce-review-link{
  color:var(--ji-gold) !important;
}

/* Related / upsell cards */
body.single-product .related > h2,
body.single-product .upsells > h2,
body.single-product .cross-sells > h2{
  color:var(--ji-product-text) !important;
  -webkit-text-fill-color:var(--ji-product-text) !important;
  font-family:Georgia,"Times New Roman",serif !important;
  font-size:clamp(2rem,3vw,3.2rem) !important;
  letter-spacing:-.035em !important;
}

body.single-product .woocommerce ul.products{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px !important;
  margin:18px 0 0 !important;
}

body.single-product .woocommerce ul.products::before,
body.single-product .woocommerce ul.products::after{
  display:none !important;
}

body.single-product .woocommerce ul.products li.product{
  width:auto !important;
  float:none !important;
  margin:0 !important;
  padding:0 0 16px !important;
  overflow:hidden;
  border:1px solid var(--ji-product-line) !important;
  border-radius:20px !important;
  background:var(--ji-product-card) !important;
  box-shadow:var(--ji-shadow-soft) !important;
}

body.single-product .woocommerce ul.products li.product a img{
  margin:0 0 14px !important;
  border-radius:19px 19px 0 0 !important;
  background:#10161d !important;
}

body.single-product .woocommerce ul.products li.product .woocommerce-loop-product__title{
  padding:0 14px !important;
  color:var(--ji-product-text) !important;
  -webkit-text-fill-color:var(--ji-product-text) !important;
  font-family:Georgia,"Times New Roman",serif !important;
  font-size:1.12rem !important;
  line-height:1.1 !important;
}

body.single-product .woocommerce ul.products li.product .price,
body.single-product .woocommerce ul.products li.product .price *{
  padding:0 14px;
  color:var(--ji-gold) !important;
  -webkit-text-fill-color:var(--ji-gold) !important;
}

body.single-product .woocommerce ul.products li.product .button{
  min-height:44px !important;
  margin:12px 14px 0 !important;
  padding:0 14px !important;
  color:#172019 !important;
  -webkit-text-fill-color:#172019 !important;
  border:0 !important;
  border-radius:13px !important;
  background:linear-gradient(135deg,var(--ji-green-2),var(--ji-green)) !important;
}

/* ------------------------------------------------------------
   D. GLOBAL COMMERCE TITLE / TEXT SHIELD
   ------------------------------------------------------------ */

body:is(.single-product,.woocommerce-cart,.woocommerce-checkout,.woocommerce-account,.jicos-commerce-shell) :where(
  .entry-title,
  .page-title,
  .woocommerce h1,
  .woocommerce h2,
  .woocommerce h3,
  .woocommerce h4,
  .woocommerce h5,
  .woocommerce h6,
  [class*="wc-block-"] h1,
  [class*="wc-block-"] h2,
  [class*="wc-block-"] h3,
  [class*="wc-block-"] h4
){
  color:var(--ji-product-text) !important;
  -webkit-text-fill-color:var(--ji-product-text) !important;
  text-shadow:none !important;
}

body:is(.single-product,.woocommerce-cart,.woocommerce-checkout,.woocommerce-account,.jicos-commerce-shell) :where(.woocommerce-breadcrumb,.woocommerce-breadcrumb a){
  color:var(--ji-product-muted) !important;
  -webkit-text-fill-color:var(--ji-product-muted) !important;
}

/* ------------------------------------------------------------
   E. CHECKOUT / ACCOUNT ALIGNMENT — FINAL WORD
   ------------------------------------------------------------ */

body:is(.woocommerce-checkout,.woocommerce-account,.jicos-commerce-shell) .woocommerce form .form-row{
  min-width:0 !important;
  max-width:100% !important;
  margin:0 !important;
  padding:0 !important;
  float:none !important;
}

body:is(.woocommerce-checkout,.jicos-commerce-shell) :where(.woocommerce-billing-fields__field-wrapper,.woocommerce-shipping-fields__field-wrapper){
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:14px !important;
}

body:is(.woocommerce-checkout,.jicos-commerce-shell) :where(.woocommerce-billing-fields__field-wrapper,.woocommerce-shipping-fields__field-wrapper) .form-row{
  width:100% !important;
}

body:is(.woocommerce-checkout,.jicos-commerce-shell) :where(.woocommerce-billing-fields__field-wrapper,.woocommerce-shipping-fields__field-wrapper) :where(.form-row-wide,#billing_address_1_field,#billing_address_2_field,#shipping_address_1_field,#shipping_address_2_field,#billing_company_field,#shipping_company_field){
  grid-column:1 / -1 !important;
}

body:is(.woocommerce-checkout,.woocommerce-account,.jicos-commerce-shell) .woocommerce form .form-row label{
  display:block !important;
  margin:0 0 7px !important;
  color:var(--ji-product-soft) !important;
  -webkit-text-fill-color:var(--ji-product-soft) !important;
  font-size:.76rem !important;
  font-weight:800 !important;
  line-height:1.3 !important;
}

body:is(.woocommerce-checkout,.woocommerce-account,.jicos-commerce-shell) .woocommerce form .form-row .woocommerce-input-wrapper,
body:is(.woocommerce-checkout,.woocommerce-account,.jicos-commerce-shell) .woocommerce form .form-row .password-input{
  display:block !important;
  width:100% !important;
  min-width:0 !important;
}

body:is(.woocommerce-checkout,.woocommerce-account,.woocommerce-cart,.jicos-commerce-shell) :where(input.input-text,input[type="text"],input[type="email"],input[type="tel"],input[type="password"],input[type="number"],input[type="search"],input[type="url"],select,textarea),
body:is(.woocommerce-checkout,.woocommerce-account,.woocommerce-cart,.jicos-commerce-shell) :where(.wc-block-components-text-input input,.wc-block-components-combobox-control input,.wc-block-components-textarea,.wc-block-components-select select){
  width:100% !important;
  min-width:0 !important;
  max-width:100% !important;
  min-height:52px !important;
  margin:0 !important;
  padding:12px 14px !important;
  color:var(--ji-product-text) !important;
  -webkit-text-fill-color:var(--ji-product-text) !important;
  caret-color:var(--ji-green) !important;
  border:1px solid var(--ji-product-line-strong) !important;
  border-radius:14px !important;
  background-color:var(--ji-product-field) !important;
  background-image:none !important;
  box-shadow:none !important;
  opacity:1 !important;
}

body:is(.woocommerce-checkout,.woocommerce-account,.woocommerce-cart,.jicos-commerce-shell) :where(input,select,textarea):focus,
body:is(.woocommerce-checkout,.woocommerce-account,.woocommerce-cart,.jicos-commerce-shell) :where(.wc-block-components-text-input input,.wc-block-components-combobox-control input,.wc-block-components-textarea,.wc-block-components-select select):focus{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  border-color:rgba(155,212,82,.82) !important;
  background-color:var(--ji-product-field-focus) !important;
  box-shadow:0 0 0 3px rgba(155,212,82,.15) !important;
  outline:0 !important;
}

body:is(.woocommerce-checkout,.woocommerce-account,.woocommerce-cart,.jicos-commerce-shell) :where(input,textarea)::placeholder{
  color:#929ea7 !important;
  -webkit-text-fill-color:#929ea7 !important;
  opacity:1 !important;
}

/* Woo Blocks floating labels must stay dark too. */
body:is(.woocommerce-checkout,.jicos-commerce-shell) :where(.wc-block-components-text-input.is-active label,.wc-block-components-combobox.is-active label,.wc-block-components-text-input.has-error label){
  color:var(--ji-green-2) !important;
  -webkit-text-fill-color:var(--ji-green-2) !important;
  background:linear-gradient(to bottom,transparent 44%,var(--ji-product-field) 44%) !important;
}

/* Dark Select2 field + dropdown. */
body:is(.woocommerce-checkout,.woocommerce-account,.jicos-commerce-shell) .select2-container .select2-selection--single,
body:is(.woocommerce-checkout,.woocommerce-account,.jicos-commerce-shell) .select2-container .select2-selection--multiple{
  min-height:52px !important;
  border:1px solid var(--ji-product-line-strong) !important;
  border-radius:14px !important;
  background:var(--ji-product-field) !important;
}

body:is(.woocommerce-checkout,.woocommerce-account,.jicos-commerce-shell) .select2-container .select2-selection--single .select2-selection__rendered{
  padding:12px 38px 12px 14px !important;
  color:var(--ji-product-text) !important;
  -webkit-text-fill-color:var(--ji-product-text) !important;
  line-height:26px !important;
}

body:is(.woocommerce-checkout,.woocommerce-account,.jicos-commerce-shell) .select2-dropdown,
body:is(.woocommerce-checkout,.woocommerce-account,.jicos-commerce-shell) .select2-search--dropdown,
body:is(.woocommerce-checkout,.woocommerce-account,.jicos-commerce-shell) .select2-results,
body:is(.woocommerce-checkout,.woocommerce-account,.jicos-commerce-shell) .select2-results__options,
body:is(.woocommerce-checkout,.woocommerce-account,.jicos-commerce-shell) .select2-results__option{
  color:var(--ji-product-text) !important;
  -webkit-text-fill-color:var(--ji-product-text) !important;
  border-color:var(--ji-product-line) !important;
  background:var(--ji-product-field) !important;
}

body:is(.woocommerce-checkout,.woocommerce-account,.jicos-commerce-shell) .select2-search--dropdown .select2-search__field{
  color:var(--ji-product-text) !important;
  -webkit-text-fill-color:var(--ji-product-text) !important;
  border:1px solid var(--ji-product-line-strong) !important;
  background:var(--ji-product-field-focus) !important;
}

body:is(.woocommerce-checkout,.woocommerce-account,.jicos-commerce-shell) .select2-results__option--highlighted,
body:is(.woocommerce-checkout,.woocommerce-account,.jicos-commerce-shell) .select2-results__option[aria-selected="true"]{
  color:#172019 !important;
  -webkit-text-fill-color:#172019 !important;
  background:var(--ji-green-2) !important;
}

/* Never let Astra paint a white payment/order/account slab. */
body:is(.woocommerce-checkout,.woocommerce-cart,.woocommerce-account,.jicos-commerce-shell) :where(
  #payment,.woocommerce-checkout-payment,.payment_box,.woocommerce-form-login,.woocommerce-form-register,
  .woocommerce-billing-fields,.woocommerce-shipping-fields,.woocommerce-additional-fields,#order_review,.cart_totals,
  .woocommerce-MyAccount-navigation,.woocommerce-MyAccount-content fieldset,.woocommerce-Addresses .woocommerce-Address,
  .wc-block-checkout__main,.wc-block-checkout__sidebar,.wc-block-cart__sidebar,.wc-block-cart-items,
  .wc-block-components-radio-control-accordion-option,.wc-block-components-radio-control__option,
  .wc-block-components-order-summary,.wc-block-components-totals-wrapper
){
  color:var(--ji-product-text) !important;
  border-color:var(--ji-product-line) !important;
  background-color:var(--ji-product-card) !important;
  background-image:none !important;
  box-shadow:none !important;
}

/* ------------------------------------------------------------
   F. RESPONSIVE PRODUCT + FORM STABILITY
   ------------------------------------------------------------ */

@media(max-width:980px){
  body.single-product .woocommerce div.product{
    grid-template-columns:1fr;
  }
  body.single-product .woocommerce div.product .woocommerce-product-gallery,
  body.single-product .woocommerce div.product .summary{
    grid-column:1;
  }
  body.single-product .woocommerce ul.products{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media(max-width:782px){
  body.single-product .woocommerce,
  body:is(.woocommerce-checkout,.woocommerce-cart,.woocommerce-account,.jicos-commerce-shell) .woocommerce{
    width:min(calc(100% - 16px),1220px) !important;
    padding-top:14px !important;
  }

  body.single-product .woocommerce div.product{
    gap:14px;
  }

  body.single-product .woocommerce div.product .woocommerce-product-gallery,
  body.single-product .woocommerce div.product .summary,
  body.single-product .woocommerce div.product .woocommerce-tabs{
    border-radius:22px !important;
  }

  body.single-product .woocommerce div.product h1.product_title{
    font-size:clamp(2.3rem,12vw,3.55rem) !important;
  }

  body.single-product .woocommerce div.product form.cart .variations tr{
    grid-template-columns:1fr;
    gap:7px;
  }

  body:is(.woocommerce-checkout,.jicos-commerce-shell) :where(.woocommerce-billing-fields__field-wrapper,.woocommerce-shipping-fields__field-wrapper){
    grid-template-columns:1fr !important;
  }

  body:is(.woocommerce-checkout,.jicos-commerce-shell) :where(.woocommerce-billing-fields__field-wrapper,.woocommerce-shipping-fields__field-wrapper) .form-row{
    grid-column:1 !important;
  }

  body.single-product .woocommerce ul.products{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:9px !important;
  }

  body.single-product .woocommerce div.product form.cart :where(select,input.input-text,input[type="text"],input[type="number"],textarea),
  body:is(.woocommerce-checkout,.woocommerce-account,.woocommerce-cart,.jicos-commerce-shell) :where(input.input-text,input[type="text"],input[type="email"],input[type="tel"],input[type="password"],input[type="number"],input[type="search"],input[type="url"],select,textarea),
  body:is(.woocommerce-checkout,.woocommerce-account,.woocommerce-cart,.jicos-commerce-shell) :where(.wc-block-components-text-input input,.wc-block-components-combobox-control input,.wc-block-components-textarea,.wc-block-components-select select){
    min-height:52px !important;
    font-size:16px !important;
    line-height:1.35 !important;
  }

  body.single-product .woocommerce div.product .woocommerce-variation-add-to-cart,
  body.single-product .woocommerce div.product form.cart:not(.variations_form){
    align-items:stretch !important;
  }

  body.single-product .woocommerce div.product .single_add_to_cart_button{
    flex:1 1 100% !important;
    width:100% !important;
  }
}

@media(max-width:430px){
  body.single-product .woocommerce ul.products{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  body.single-product .woocommerce ul.products li.product .woocommerce-loop-product__title{
    font-size:1rem !important;
  }
}

/* ------------------------------------------------------------
   G. PRODUCT ADD-ONS / CUSTOM OPTION PLUGINS — DARK COMPATIBILITY
   ------------------------------------------------------------ */
body.single-product .woocommerce div.product .summary :where(
  .wc-pao-addons-container,.wc-pao-addon,.wc-pao-addon-container,.product-addon,.product-addon-totals,
  .woocommerce-variation-add-to-cart,.variations_button,.single_variation,.single_variation_wrap,
  [class*="product-options"],[class*="product_option"],[class*="extra-options"],[class*="extra_option"]
){
  color:var(--ji-product-text) !important;
  border-color:var(--ji-product-line) !important;
  background-color:transparent !important;
  background-image:none !important;
}

body.single-product .woocommerce div.product .summary :where(
  .wc-pao-addon-name,.wc-pao-addon-heading,.wc-pao-addon-description,.wc-pao-addon-description p,
  .product-addon label,.product-addon p,[class*="product-options"] label,[class*="extra-options"] label
){
  color:var(--ji-product-soft) !important;
  -webkit-text-fill-color:var(--ji-product-soft) !important;
}

body.single-product .woocommerce div.product .summary :where(
  .wc-pao-addon-field,.wc-pao-addon-select,
  [class*="product-options"] input:not([type="checkbox"]):not([type="radio"]),
  [class*="product-options"] select,[class*="product-options"] textarea,
  [class*="extra-options"] input:not([type="checkbox"]):not([type="radio"]),
  [class*="extra-options"] select,[class*="extra-options"] textarea
){
  width:100% !important;
  min-width:0 !important;
  max-width:100% !important;
  min-height:50px !important;
  color:var(--ji-product-text) !important;
  -webkit-text-fill-color:var(--ji-product-text) !important;
  border:1px solid var(--ji-product-line-strong) !important;
  border-radius:14px !important;
  background:var(--ji-product-field) !important;
  box-shadow:none !important;
}

body.single-product .woocommerce div.product .summary :where(.wc-pao-addon-field,.wc-pao-addon-select,[class*="product-options"] input,[class*="product-options"] select,[class*="product-options"] textarea,[class*="extra-options"] input,[class*="extra-options"] select,[class*="extra-options"] textarea):focus{
  border-color:rgba(155,212,82,.82) !important;
  background:var(--ji-product-field-focus) !important;
  box-shadow:0 0 0 3px rgba(155,212,82,.15) !important;
  outline:0 !important;
}

body.single-product .woocommerce div.product .woocommerce-Tabs-panel,
body.single-product .woocommerce div.product .woocommerce-Tabs-panel.panel{
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

/* Astra/Woo can apply dark text to generic product notices and labels. */
body.single-product .woocommerce div.product :where(.woocommerce-message,.woocommerce-info,.woocommerce-error){
  color:var(--ji-product-text) !important;
  -webkit-text-fill-color:var(--ji-product-text) !important;
  border:1px solid var(--ji-product-line) !important;
  border-radius:16px !important;
  background:var(--ji-product-card-2) !important;
}
body.single-product .woocommerce div.product .woocommerce-error{
  color:#ffd6d6 !important;
  -webkit-text-fill-color:#ffd6d6 !important;
  border-color:rgba(239,125,125,.35) !important;
  background:rgba(168,68,68,.14) !important;
}
/* ============================================================
   v6.22 PLUGIN AUTHORITY LAYER
   Global Commerce Aesthetic Shield
   Loaded late by Curbside OS so Astra / Elementor / Woo cannot
   repaint the purchase journey after the brand system is applied.
   ============================================================ */

:root{
  --ji-page:#090b0a;
  --ji-page-2:#0f120f;
  --ji-surface:#151912;
  --ji-surface-2:#1b2118;
  --ji-field:#151a16;
  --ji-field-focus:#1d241d;
  --ji-text:#fff8e8;
  --ji-soft:#e1d8c8;
  --ji-muted:#aaa896;
  --ji-green:#cfe868;
  --ji-green-2:#e5f49a;
  --ji-gold:#ffc95f;
  --ji-orange:#ff9d47;
  --ji-product-card:rgba(20,24,18,.96);
  --ji-product-card-2:rgba(25,30,23,.97);
  --ji-product-field:#151a16;
  --ji-product-field-focus:#1d241d;
  --ji-product-text:#fff8e8;
  --ji-product-soft:#e1d8c8;
  --ji-product-muted:#aaa896;
  --ji-brand-cream:#fff8e8;
  --ji-brand-mango:#ffc34d;
  --ji-brand-citrus:#ff9d47;
  --ji-brand-berry:#ff687d;
  --ji-brand-watermelon:#ff7b72;
  --ji-brand-lime:#cfe868;
}

/* A. ASTRA COMMERCE ISOLATION — keep the theme, remove the white theme shell. */
body.jicos-global-commerce-shield:not(.jicos-curbside-home-page){
  background:
    radial-gradient(circle at 8% 4%,rgba(255,195,77,.08),transparent 25%),
    radial-gradient(circle at 92% 8%,rgba(255,104,125,.055),transparent 24%),
    radial-gradient(circle at 78% 88%,rgba(207,232,104,.05),transparent 28%),
    linear-gradient(165deg,#090b0a 0%,#10130f 48%,#090b0a 100%) !important;
  color:var(--ji-brand-cream)!important;
}
body.jicos-global-commerce-shield:not(.jicos-curbside-home-page) :where(#page,.site,.site-content,.site-main,.content-area,.ast-container,.ast-container-fluid,.entry-content,.ast-article-single,.ast-article-post,article,main){
  background-color:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
}
body.jicos-global-commerce-shield:not(.jicos-curbside-home-page) :where(.ast-container,.site-content>.ast-container){
  width:100%!important;
  max-width:none!important;
  padding-left:0!important;
  padding-right:0!important;
}
body.jicos-global-commerce-shield:not(.jicos-curbside-home-page) :where(#primary,.content-area){
  width:100%!important;
  max-width:none!important;
  float:none!important;
  margin:0!important;
}
body.jicos-global-commerce-shield:not(.jicos-curbside-home-page) :where(#secondary,.widget-area,.ast-right-sidebar #secondary,.ast-left-sidebar #secondary){
  display:none!important;
}
body.jicos-global-commerce-shield:not(.jicos-curbside-home-page) :where(.site-header,.ast-primary-header-bar,.main-header-bar){
  border-color:rgba(255,255,255,.08)!important;
  background:rgba(9,11,10,.88)!important;
  color:var(--ji-brand-cream)!important;
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}
body.jicos-global-commerce-shield:not(.jicos-curbside-home-page) :where(.site-header a,.main-header-menu a,.ast-header-account-link,.ast-header-account-wrap){
  color:var(--ji-brand-cream)!important;
  -webkit-text-fill-color:var(--ji-brand-cream)!important;
}
body.jicos-global-commerce-shield:not(.jicos-curbside-home-page) :where(.site-footer,.site-below-footer-wrap){
  border-color:rgba(255,255,255,.08)!important;
  background:#090b0a!important;
  color:var(--ji-soft)!important;
}

/* B. SHOP / CATEGORY / TAG — same premium system as the product page. */
body:is(.post-type-archive-product,.tax-product_cat,.tax-product_tag).jicos-global-commerce-shield .woocommerce{
  width:min(calc(100% - 28px),1240px)!important;
  max-width:1240px!important;
  margin:0 auto!important;
  padding:28px 0 126px!important;
  color:var(--ji-product-text)!important;
}
body:is(.post-type-archive-product,.tax-product_cat,.tax-product_tag).jicos-global-commerce-shield :where(.woocommerce-products-header,.jicos-commerce-head){
  margin-bottom:18px!important;
  color:var(--ji-product-text)!important;
}
body:is(.post-type-archive-product,.tax-product_cat,.tax-product_tag).jicos-global-commerce-shield :where(.woocommerce-products-header__title,.page-title,.woocommerce-result-count){
  color:var(--ji-product-text)!important;
  -webkit-text-fill-color:var(--ji-product-text)!important;
}
body:is(.post-type-archive-product,.tax-product_cat,.tax-product_tag).jicos-global-commerce-shield .woocommerce-ordering select{
  min-height:46px!important;
  color:var(--ji-product-text)!important;
  -webkit-text-fill-color:var(--ji-product-text)!important;
  border:1px solid var(--ji-product-line)!important;
  border-radius:13px!important;
  background:var(--ji-product-field)!important;
}
body:is(.post-type-archive-product,.tax-product_cat,.tax-product_tag).jicos-global-commerce-shield .woocommerce ul.products{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:14px!important;
  margin:20px 0 0!important;
}
body:is(.post-type-archive-product,.tax-product_cat,.tax-product_tag).jicos-global-commerce-shield .woocommerce ul.products::before,
body:is(.post-type-archive-product,.tax-product_cat,.tax-product_tag).jicos-global-commerce-shield .woocommerce ul.products::after{display:none!important}
body:is(.post-type-archive-product,.tax-product_cat,.tax-product_tag).jicos-global-commerce-shield .woocommerce ul.products li.product{
  width:auto!important;
  float:none!important;
  margin:0!important;
  padding:0 0 15px!important;
  overflow:hidden!important;
  border:1px solid var(--ji-product-line)!important;
  border-radius:22px!important;
  background:linear-gradient(155deg,rgba(24,29,22,.97),rgba(14,18,14,.98))!important;
  box-shadow:0 14px 42px rgba(0,0,0,.22)!important;
}
body:is(.post-type-archive-product,.tax-product_cat,.tax-product_tag).jicos-global-commerce-shield .woocommerce ul.products li.product img{
  width:100%!important;
  margin:0 0 14px!important;
  border-radius:21px 21px 0 0!important;
  background:#111510!important;
}
body:is(.post-type-archive-product,.tax-product_cat,.tax-product_tag).jicos-global-commerce-shield .woocommerce ul.products li.product :where(.woocommerce-loop-product__title,.price,.star-rating){
  margin-left:14px!important;
  margin-right:14px!important;
}
body:is(.post-type-archive-product,.tax-product_cat,.tax-product_tag).jicos-global-commerce-shield .woocommerce ul.products li.product .woocommerce-loop-product__title{
  color:var(--ji-product-text)!important;
  -webkit-text-fill-color:var(--ji-product-text)!important;
  font-size:1.05rem!important;
  line-height:1.15!important;
}
body:is(.post-type-archive-product,.tax-product_cat,.tax-product_tag).jicos-global-commerce-shield .woocommerce ul.products li.product .price,
body:is(.post-type-archive-product,.tax-product_cat,.tax-product_tag).jicos-global-commerce-shield .woocommerce ul.products li.product .price *{
  color:var(--ji-brand-mango)!important;
  -webkit-text-fill-color:var(--ji-brand-mango)!important;
}
body:is(.post-type-archive-product,.tax-product_cat,.tax-product_tag).jicos-global-commerce-shield .woocommerce ul.products li.product .button{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:46px!important;
  margin:12px 14px 0!important;
  padding:10px 14px!important;
  border:0!important;
  border-radius:14px!important;
  color:#17130d!important;
  -webkit-text-fill-color:#17130d!important;
  background:var(--ji-brand-cream)!important;
  box-shadow:none!important;
}

/* C. SINGLE PRODUCT — text/field authority, including third-party option widgets. */
body.single-product.jicos-global-commerce-shield .woocommerce div.product .summary{
  background:
    radial-gradient(circle at 96% 0%,rgba(255,195,77,.06),transparent 26%),
    linear-gradient(155deg,rgba(24,29,22,.97),rgba(14,18,14,.98))!important;
}
body.single-product.jicos-global-commerce-shield .woocommerce div.product h1.product_title{
  color:var(--ji-brand-cream)!important;
  -webkit-text-fill-color:var(--ji-brand-cream)!important;
}
body.single-product.jicos-global-commerce-shield .woocommerce div.product :where(.price,.price *){
  color:var(--ji-brand-mango)!important;
  -webkit-text-fill-color:var(--ji-brand-mango)!important;
}
body.single-product.jicos-global-commerce-shield .woocommerce div.product form.cart :where(label,legend,.label,.value,.reset_variations,.woocommerce-variation-description,p,span:not(.amount)){
  text-shadow:none!important;
}
body.single-product.jicos-global-commerce-shield .woocommerce div.product form.cart :where(select,input.input-text,input[type="text"],input[type="email"],input[type="tel"],input[type="number"],textarea),
body.single-product.jicos-global-commerce-shield .woocommerce div.product .summary :where(.wc-pao-addon-field,.wc-pao-addon-select,[class*="addon"] input:not([type="checkbox"]):not([type="radio"]),[class*="addon"] select,[class*="addon"] textarea,[class*="option"] input:not([type="checkbox"]):not([type="radio"]),[class*="option"] select,[class*="option"] textarea){
  color:var(--ji-product-text)!important;
  -webkit-text-fill-color:var(--ji-product-text)!important;
  caret-color:var(--ji-brand-mango)!important;
  border-color:rgba(255,248,232,.18)!important;
  background:var(--ji-product-field)!important;
  color-scheme:dark!important;
}
body.single-product.jicos-global-commerce-shield .woocommerce div.product form.cart :where(select option,select optgroup),
body.single-product.jicos-global-commerce-shield .woocommerce div.product .summary :where(select option,select optgroup){
  color:var(--ji-product-text)!important;
  background:#151a16!important;
}
body.single-product.jicos-global-commerce-shield .woocommerce div.product :where(.single_add_to_cart_button,.jicos-commerce-button.is-primary){
  color:#17130d!important;
  -webkit-text-fill-color:#17130d!important;
  background:var(--ji-brand-cream)!important;
  border-color:transparent!important;
  box-shadow:0 12px 30px rgba(255,195,77,.08)!important;
}
body.single-product.jicos-global-commerce-shield .woocommerce div.product :where(.single_add_to_cart_button,.jicos-commerce-button.is-primary):hover{
  background:linear-gradient(135deg,var(--ji-brand-mango),#ffd873)!important;
}

/* Common swatch/radio/button option plugins: keep selection obvious without changing behavior. */
body.single-product.jicos-global-commerce-shield .summary :where(.variable-items-wrapper,.variations_form .value,.wc-pao-addon-wrap,[class*="swatch"],[class*="radio"]){color:var(--ji-product-soft)!important}
body.single-product.jicos-global-commerce-shield .summary :where(.variable-item,.swatch,.button-variable-item,[role="radio"]){
  border-color:rgba(255,248,232,.18)!important;
  background:rgba(255,255,255,.035)!important;
  color:var(--ji-product-text)!important;
}
body.single-product.jicos-global-commerce-shield .summary :where(.variable-item.selected,.swatch.selected,.button-variable-item.selected,[role="radio"][aria-checked="true"]){
  border-color:rgba(255,195,77,.62)!important;
  background:rgba(255,195,77,.11)!important;
  color:var(--ji-brand-cream)!important;
}

/* D. CHECKOUT / CART / ACCOUNT — high contrast regardless of Classic vs Blocks. */
body:is(.woocommerce-checkout,.woocommerce-cart,.woocommerce-account).jicos-global-commerce-shield :where(.woocommerce,.wp-block-woocommerce-checkout,.wp-block-woocommerce-cart){
  color:var(--ji-product-text)!important;
}
body:is(.woocommerce-checkout,.woocommerce-cart,.woocommerce-account).jicos-global-commerce-shield :where(
  .woocommerce-billing-fields,.woocommerce-shipping-fields,.woocommerce-additional-fields,#order_review,#payment,.cart_totals,
  .woocommerce-cart-form,.woocommerce-form-login,.woocommerce-form-register,.woocommerce-MyAccount-navigation,.woocommerce-MyAccount-content,
  .woocommerce-order-details,.woocommerce-customer-details,.woocommerce-Address,.wc-block-checkout__main,.wc-block-checkout__sidebar,
  .wc-block-components-checkout-step,.wc-block-cart__main,.wc-block-cart__sidebar,.wc-block-components-order-summary,
  .wc-block-components-totals-wrapper,.wc-block-components-radio-control-accordion-option,.wc-block-components-radio-control__option
){
  color:var(--ji-product-text)!important;
  background-color:var(--ji-product-card)!important;
  background-image:none!important;
  border-color:var(--ji-product-line)!important;
}
body:is(.woocommerce-checkout,.woocommerce-cart,.woocommerce-account).jicos-global-commerce-shield :where(
  p,li,small,label,legend,address,dt,dd,.wc-block-components-checkout-step__description,.wc-block-components-product-name,
  .wc-block-components-totals-item__label,.wc-block-components-radio-control__label,.wc-block-components-checkbox__label
){
  color:var(--ji-product-soft)!important;
  -webkit-text-fill-color:var(--ji-product-soft)!important;
}
body:is(.woocommerce-checkout,.woocommerce-cart,.woocommerce-account).jicos-global-commerce-shield :where(h1,h2,h3,h4,strong,b,.wc-block-components-totals-item__value){
  color:var(--ji-product-text)!important;
  -webkit-text-fill-color:var(--ji-product-text)!important;
}

/* Inputs: Astra, browser autofill and Woo Blocks all lose to this final readable state. */
body:is(.woocommerce-checkout,.woocommerce-cart,.woocommerce-account).jicos-global-commerce-shield :where(
  input.input-text,input[type="text"],input[type="email"],input[type="tel"],input[type="password"],input[type="number"],input[type="search"],input[type="url"],select,textarea,
  .wc-block-components-text-input input,.wc-block-components-combobox-control input,.wc-block-components-textarea,.wc-block-components-select select,.wc-block-components-address-form input,.wc-block-components-address-form select
){
  color:var(--ji-product-text)!important;
  -webkit-text-fill-color:var(--ji-product-text)!important;
  caret-color:var(--ji-brand-mango)!important;
  border:1px solid rgba(255,248,232,.18)!important;
  background:var(--ji-product-field)!important;
  background-color:var(--ji-product-field)!important;
  box-shadow:inset 0 1px rgba(255,255,255,.025)!important;
  color-scheme:dark!important;
}
body:is(.woocommerce-checkout,.woocommerce-cart,.woocommerce-account).jicos-global-commerce-shield :where(input,textarea)::placeholder{
  color:#aaa896!important;
  -webkit-text-fill-color:#aaa896!important;
  opacity:1!important;
}
body:is(.woocommerce-checkout,.woocommerce-cart,.woocommerce-account).jicos-global-commerce-shield :where(input,select,textarea):focus{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  border-color:rgba(255,195,77,.70)!important;
  background:var(--ji-product-field-focus)!important;
  box-shadow:0 0 0 3px rgba(255,195,77,.12)!important;
}
body:is(.woocommerce-checkout,.woocommerce-cart,.woocommerce-account).jicos-global-commerce-shield :where(select option,select optgroup){
  color:var(--ji-product-text)!important;
  background:#151a16!important;
}
body:is(.woocommerce-checkout,.woocommerce-cart,.woocommerce-account).jicos-global-commerce-shield input:-webkit-autofill,
body:is(.woocommerce-checkout,.woocommerce-cart,.woocommerce-account).jicos-global-commerce-shield input:-webkit-autofill:hover,
body:is(.woocommerce-checkout,.woocommerce-cart,.woocommerce-account).jicos-global-commerce-shield input:-webkit-autofill:focus,
body:is(.woocommerce-checkout,.woocommerce-cart,.woocommerce-account).jicos-global-commerce-shield textarea:-webkit-autofill,
body:is(.woocommerce-checkout,.woocommerce-cart,.woocommerce-account).jicos-global-commerce-shield select:-webkit-autofill{
  -webkit-text-fill-color:#fff!important;
  caret-color:var(--ji-brand-mango)!important;
  -webkit-box-shadow:0 0 0 1000px var(--ji-product-field) inset!important;
  box-shadow:0 0 0 1000px var(--ji-product-field) inset!important;
}

/* Woo Blocks floating labels — no white label chips over dark fields. */
body.woocommerce-checkout.jicos-global-commerce-shield :where(.wc-block-components-text-input label,.wc-block-components-combobox-control label){
  color:#c8c1b4!important;
  -webkit-text-fill-color:#c8c1b4!important;
  background:transparent!important;
  text-shadow:none!important;
}
body.woocommerce-checkout.jicos-global-commerce-shield :where(.wc-block-components-text-input.is-active label,.wc-block-components-combobox.is-active label,.wc-block-components-text-input.has-error label){
  color:var(--ji-brand-mango)!important;
  -webkit-text-fill-color:var(--ji-brand-mango)!important;
  background:linear-gradient(to bottom,transparent 42%,var(--ji-product-field) 42%)!important;
}

/* Select2 is attached to body and can otherwise escape the dark checkout shell. */
body.jicos-global-commerce-shield .select2-container--open .select2-dropdown{
  color:var(--ji-product-text)!important;
  border:1px solid rgba(255,248,232,.18)!important;
  background:var(--ji-product-card-2)!important;
  box-shadow:0 18px 48px rgba(0,0,0,.42)!important;
}
body.jicos-global-commerce-shield .select2-container--open :where(.select2-search__field,.select2-results__option){
  color:var(--ji-product-text)!important;
  -webkit-text-fill-color:var(--ji-product-text)!important;
  background:var(--ji-product-card-2)!important;
}
body.jicos-global-commerce-shield .select2-container--open .select2-results__option--highlighted{
  color:#17130d!important;
  -webkit-text-fill-color:#17130d!important;
  background:var(--ji-brand-mango)!important;
}

/* Payment hosts: style the shell only. The secure iframe remains owned by the gateway. */
body.woocommerce-checkout.jicos-global-commerce-shield :where(.wc-stripe-elements-field,.StripeElement,.payment_box,.wc-block-checkout__payment-method,.wc-block-components-radio-control-accordion-content){
  color:var(--ji-product-text)!important;
  border-color:rgba(255,248,232,.18)!important;
  background:var(--ji-product-field)!important;
  border-radius:14px!important;
}
body.woocommerce-checkout.jicos-global-commerce-shield :where(.wc-stripe-elements-field,.StripeElement){
  min-height:48px!important;
  padding:12px!important;
}

/* Primary commerce actions use cream/mango; gateway-branded wallet controls remain gateway-owned. */
body.jicos-global-commerce-shield .woocommerce :where(.single_add_to_cart_button,a.checkout-button,#place_order),
body.jicos-global-commerce-shield :where(.wc-block-cart__submit-button,.wc-block-components-checkout-place-order-button,.jicos-commerce-button.is-primary){
  color:#17130d!important;
  -webkit-text-fill-color:#17130d!important;
  border-color:transparent!important;
  background:var(--ji-brand-cream)!important;
  box-shadow:0 12px 34px rgba(255,195,77,.08)!important;
}
body.jicos-global-commerce-shield .woocommerce :where(.single_add_to_cart_button,a.checkout-button,#place_order):hover,
body.jicos-global-commerce-shield :where(.wc-block-cart__submit-button,.wc-block-components-checkout-place-order-button,.jicos-commerce-button.is-primary):hover{
  background:linear-gradient(135deg,var(--ji-brand-mango),#ffd774)!important;
}

/* E. ORDER RECEIVED + NOTICES */
body.woocommerce-checkout.jicos-global-commerce-shield :where(.woocommerce-order,.woocommerce-thankyou-order-received,.woocommerce-order-overview,.woocommerce-order-details,.woocommerce-customer-details){
  color:var(--ji-product-text)!important;
}
body.jicos-global-commerce-shield :where(.woocommerce-message,.woocommerce-info,.woocommerce-error,.wc-block-components-notice-banner){
  color:var(--ji-product-soft)!important;
  -webkit-text-fill-color:var(--ji-product-soft)!important;
  border-color:var(--ji-product-line)!important;
  background:var(--ji-product-card-2)!important;
}
body.jicos-global-commerce-shield :where(.woocommerce-message,.woocommerce-info,.woocommerce-error,.wc-block-components-notice-banner) :where(a,button){
  color:var(--ji-brand-cream)!important;
  -webkit-text-fill-color:var(--ji-brand-cream)!important;
}

/* F. Mobile: no horizontal Astra/Woo drift and no tiny unreadable form text. */
@media(max-width:980px){
  body:is(.post-type-archive-product,.tax-product_cat,.tax-product_tag).jicos-global-commerce-shield .woocommerce ul.products{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:782px){
  body.jicos-global-commerce-shield:not(.jicos-curbside-home-page) :where(.site-header,.ast-primary-header-bar,.main-header-bar){backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
  body:is(.post-type-archive-product,.tax-product_cat,.tax-product_tag).jicos-global-commerce-shield .woocommerce{width:min(calc(100% - 16px),1240px)!important;padding-top:14px!important}
  body:is(.post-type-archive-product,.tax-product_cat,.tax-product_tag).jicos-global-commerce-shield .woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}
  body.jicos-global-commerce-shield :where(input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="hidden"]),select,textarea){font-size:16px!important}
  body.single-product.jicos-global-commerce-shield .woocommerce div.product .summary{padding:20px 16px!important}
  body.woocommerce-checkout.jicos-global-commerce-shield :where(.wc-block-checkout__main,.wc-block-checkout__sidebar,.woocommerce-billing-fields,#order_review,#payment){border-radius:20px!important}
}
@media(max-width:430px){
  body:is(.post-type-archive-product,.tax-product_cat,.tax-product_tag).jicos-global-commerce-shield .woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body:is(.post-type-archive-product,.tax-product_cat,.tax-product_tag).jicos-global-commerce-shield .woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:.96rem!important}
}

/* G. Accessibility: visible focus in the brand system. */
body.jicos-global-commerce-shield :focus-visible{
  outline:2px solid rgba(255,195,77,.92)!important;
  outline-offset:3px!important;
}


/* ============================================================
   v6.44 — ORi PRODUCT THEATRE / SINGLE-PRODUCT CONTRAST CONTRACT
   Late authority: no dark-on-dark or white-on-white customer copy.
   ============================================================ */
body.single-product.jicos-global-commerce-shield{--v644-fruit:#c8ff63;--v644-fruit-soft:#def99b;--v644-cream:#fffaf0;--v644-soft:#d7dfd8;--v644-muted:#a9b5ad;--v644-panel:#111914;--v644-panel-2:#0c120f;--v644-line:rgba(200,255,99,.14)}
body.single-product.jicos-global-commerce-shield .woocommerce div.product{position:relative;isolation:isolate}
body.single-product.jicos-global-commerce-shield .woocommerce div.product>.woocommerce-product-gallery{overflow:hidden!important;padding:10px!important;border:1px solid rgba(200,255,99,.12)!important;border-radius:30px!important;background:radial-gradient(circle at 12% 5%,rgba(200,255,99,.11),transparent 28%),radial-gradient(circle at 92% 88%,rgba(255,196,96,.07),transparent 32%),linear-gradient(155deg,#121a15,#090e0b)!important;box-shadow:0 24px 68px rgba(0,0,0,.30)!important}
body.single-product.jicos-global-commerce-shield .woocommerce div.product>.woocommerce-product-gallery :where(.woocommerce-product-gallery__wrapper,.woocommerce-product-gallery__image,a){border-radius:22px!important;background:transparent!important}
body.single-product.jicos-global-commerce-shield .woocommerce div.product>.summary{position:relative;overflow:hidden!important;border:1px solid rgba(200,255,99,.14)!important;border-radius:28px!important;background:radial-gradient(circle at 100% 0,rgba(200,255,99,.085),transparent 30%),radial-gradient(circle at 0 100%,rgba(255,193,89,.055),transparent 32%),linear-gradient(155deg,#151e18,#0d130f 76%)!important;box-shadow:0 24px 66px rgba(0,0,0,.28)!important}
body.single-product.jicos-global-commerce-shield .woocommerce div.product>.summary:after{content:"";position:absolute;right:-70px;top:-80px;width:190px;height:190px;border:1px solid rgba(200,255,99,.10);border-radius:50%;box-shadow:0 0 0 28px rgba(200,255,99,.018),0 0 0 62px rgba(255,198,96,.012);pointer-events:none}
body.single-product.jicos-global-commerce-shield .woocommerce div.product h1.product_title{color:var(--v644-cream)!important;-webkit-text-fill-color:var(--v644-cream)!important;text-shadow:none!important}
body.single-product.jicos-global-commerce-shield .woocommerce div.product :where(.price,.price .amount,.price ins,.price del){color:var(--v644-fruit)!important;-webkit-text-fill-color:var(--v644-fruit)!important;text-shadow:none!important}
body.single-product.jicos-global-commerce-shield .woocommerce div.product .summary :where(.woocommerce-product-details__short-description,.woocommerce-product-details__short-description p,.woocommerce-product-details__short-description li,.woocommerce-product-details__short-description span,.woocommerce-product-details__short-description strong,.woocommerce-product-details__short-description em,.woocommerce-variation-description,.woocommerce-variation-description p,.product_meta,.product_meta span){color:var(--v644-soft)!important;-webkit-text-fill-color:var(--v644-soft)!important;text-shadow:none!important;background-color:transparent!important}
body.single-product.jicos-global-commerce-shield .woocommerce div.product .summary .woocommerce-product-details__short-description{margin:14px 0!important;padding:13px 14px!important;border:1px solid rgba(255,255,255,.075)!important;border-radius:16px!important;background:rgba(255,255,255,.028)!important;line-height:1.62!important}
body.single-product.jicos-global-commerce-shield .woocommerce div.product .summary .woocommerce-product-details__short-description :where(a){color:var(--v644-fruit)!important;-webkit-text-fill-color:var(--v644-fruit)!important}
body.single-product.jicos-global-commerce-shield .woocommerce div.product .summary :where(form.cart label,form.cart legend,form.cart .label,form.cart .value){color:#e6ece6!important;-webkit-text-fill-color:#e6ece6!important}
body.single-product.jicos-global-commerce-shield .woocommerce div.product .summary :where(.reset_variations,.woocommerce-review-link,.product_meta a){color:var(--v644-fruit-soft)!important;-webkit-text-fill-color:var(--v644-fruit-soft)!important}
body.single-product.jicos-global-commerce-shield .woocommerce div.product .woocommerce-tabs{border-color:rgba(200,255,99,.12)!important;background:radial-gradient(circle at 0 0,rgba(200,255,99,.06),transparent 30%),linear-gradient(155deg,#121a15,#0b110d)!important}
body.single-product.jicos-global-commerce-shield .woocommerce div.product .woocommerce-Tabs-panel,body.single-product.jicos-global-commerce-shield .woocommerce div.product .woocommerce-Tabs-panel.panel{color:var(--v644-soft)!important;-webkit-text-fill-color:var(--v644-soft)!important;background:transparent!important}
body.single-product.jicos-global-commerce-shield .woocommerce div.product .woocommerce-Tabs-panel :where(p,li,td,th,dt,dd,address,span,em){color:var(--v644-soft)!important;-webkit-text-fill-color:var(--v644-soft)!important;background-color:transparent!important;text-shadow:none!important}
body.single-product.jicos-global-commerce-shield .woocommerce div.product .woocommerce-Tabs-panel :where(h2,h3,h4,h5,h6,strong,b){color:var(--v644-cream)!important;-webkit-text-fill-color:var(--v644-cream)!important;background-color:transparent!important;text-shadow:none!important}
body.single-product.jicos-global-commerce-shield .woocommerce div.product .woocommerce-Tabs-panel a{color:var(--v644-fruit)!important;-webkit-text-fill-color:var(--v644-fruit)!important}
body.single-product.jicos-global-commerce-shield .woocommerce div.product .woocommerce-tabs ul.tabs li.active{border-color:rgba(200,255,99,.42)!important;background:rgba(200,255,99,.10)!important}
body.single-product.jicos-global-commerce-shield .woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--v644-fruit)!important;-webkit-text-fill-color:var(--v644-fruit)!important}
body.single-product.jicos-global-commerce-shield .woocommerce div.product .single_add_to_cart_button{color:#13200c!important;-webkit-text-fill-color:#13200c!important;background:linear-gradient(135deg,#e4ff9d,var(--v644-fruit))!important;box-shadow:0 16px 36px rgba(200,255,99,.16)!important}
body.single-product.jicos-global-commerce-shield .woocommerce div.product .single_add_to_cart_button:hover{background:linear-gradient(135deg,#f0ffbd,#d5ff78)!important;transform:translateY(-1px)}

/* Addon contrast authority must live here because this shield prints last. */
body.single-product.jicos-global-commerce-shield .jicos-addon-playground{color:var(--v644-cream)!important;background:radial-gradient(circle at 0 0,rgba(200,255,99,.075),transparent 30%),linear-gradient(180deg,#111a16,#09100d 82%)!important;border-color:rgba(200,255,99,.14)!important}
body.single-product.jicos-global-commerce-shield .jicos-addon-playground .jicos-addon-copy strong,body.single-product.jicos-global-commerce-shield .jicos-addon-playground .jicos-native-addon-group>header h4{color:var(--v644-fruit)!important;-webkit-text-fill-color:var(--v644-fruit)!important;text-shadow:none!important}
body.single-product.jicos-global-commerce-shield .jicos-addon-playground .jicos-addon-copy small{color:#f2c96f!important;-webkit-text-fill-color:#f2c96f!important}
body.single-product.jicos-global-commerce-shield .jicos-addon-playground .jicos-addon-copy em{color:#c1cbc4!important;-webkit-text-fill-color:#c1cbc4!important}
body.single-product.jicos-global-commerce-shield .jicos-addon-playground .jicos-addon-copy b{color:#ffe39b!important;-webkit-text-fill-color:#ffe39b!important}
body.single-product.jicos-global-commerce-shield .jicos-addon-playground :where(.jicos-native-addon-head p,.jicos-addon-search-state,.jicos-addon-search-state span){color:#c3cec6!important;-webkit-text-fill-color:#c3cec6!important}
body.single-product.jicos-global-commerce-shield .jicos-addon-playground .jicos-addon-search input{color:#f8fbf5!important;-webkit-text-fill-color:#f8fbf5!important;background:#101916!important}
body.single-product.jicos-global-commerce-shield .jicos-addon-playground .jicos-addon-search input::placeholder{color:#9ba89f!important;-webkit-text-fill-color:#9ba89f!important;opacity:1!important}
body.single-product.jicos-global-commerce-shield .jicos-addon-playground .jicos-addon-card{background:linear-gradient(155deg,#121c18,#0b1310)!important;border-color:rgba(200,255,99,.10)!important}
body.single-product.jicos-global-commerce-shield .jicos-addon-playground .jicos-addon-card.is-selected{border-color:rgba(200,255,99,.58)!important;background:radial-gradient(circle at 100% 0,rgba(200,255,99,.10),transparent 42%),linear-gradient(155deg,#17251f,#0e1715)!important}

@media(max-width:782px){
  body.single-product.jicos-global-commerce-shield .woocommerce{padding-top:10px!important}
  body.single-product.jicos-global-commerce-shield .woocommerce div.product{gap:11px!important}
  body.single-product.jicos-global-commerce-shield .woocommerce div.product>.woocommerce-product-gallery{padding:7px!important;border-radius:22px!important}
  body.single-product.jicos-global-commerce-shield .woocommerce div.product>.summary{padding:16px!important;border-radius:22px!important}
  body.single-product.jicos-global-commerce-shield .woocommerce div.product h1.product_title{font-size:clamp(2rem,9vw,2.75rem)!important;line-height:.98!important}
  body.single-product.jicos-global-commerce-shield .woocommerce div.product .summary .woocommerce-product-details__short-description{margin:11px 0!important;padding:11px 12px!important;border-radius:14px!important;font-size:.94rem!important;line-height:1.55!important}
  body.single-product.jicos-global-commerce-shield .woocommerce div.product .woocommerce-tabs{margin-top:12px!important;padding:15px!important;border-radius:20px!important}
  body.single-product.jicos-global-commerce-shield .woocommerce div.product .woocommerce-tabs ul.tabs{flex-wrap:nowrap!important;overflow-x:auto!important;padding-bottom:2px!important;scrollbar-width:none}
  body.single-product.jicos-global-commerce-shield .woocommerce div.product .woocommerce-tabs ul.tabs::-webkit-scrollbar{display:none}
  body.single-product.jicos-global-commerce-shield .woocommerce div.product .woocommerce-tabs ul.tabs li{flex:0 0 auto!important}
}
