/* ==========================================================================
   GPDStore — Phase 5: side-cart drawer dark reskin (Flow Site DxSideCart)
   --------------------------------------------------------------------------
   Overlay (handle: gpd-sidecart) after side-cart.css. side-cart.css scopes a
   droix light token block on .shoptimizer-mini-cart-wrap — redefining it here
   recolors most of the drawer; literal #fff panels get parity rules.

   Design: …handoff/project/cart.jsx (DxSideCart — "Droix CartA structure,
   GPD-dark skin") + dxc.css base, per the user's approved screenshot:
   teal bag mark + FREE GIFT chip + upgrade Add · white item prices ·
   lime subtotal + "Proceed to checkout" · orange upgrade prices.
   ========================================================================== */

.shoptimizer-mini-cart-wrap {
  /* conversion + informational accents */
  --green:       var(--lime-500);
  --green-dark:  var(--lime-600);
  --green-tint:  rgba(211, 255, 95, 0.10);
  --magenta:     #FFFFFF;                  /* item prices read white in the design */
  --red-sale:    var(--orange-500);
  /* text ladder */
  --ink:         #FFFFFF;
  --ink-2:       #D4D4D4;
  --muted:       #99A1AF;
  --muted-2:     #6B7478;
  /* strokes + surfaces */
  --line:        rgba(255, 255, 255, 0.10);
  --line-2:      rgba(255, 255, 255, 0.06);
  --line-3:      rgba(255, 255, 255, 0.14);
  --surface:     #1A2028;
  --surface-2:   #161C20;
  --disabled-bg: rgba(255, 255, 255, 0.06);
  --disabled-fg: #6B7478;
  --danger:      #FF6B35;
  /* type → Inter */
  --font-ui:   'Inter', system-ui, sans-serif;
  --font-body: 'Inter', system-ui, sans-serif;
}

/* frame + header (literal #fff in side-cart.css) */
.shoptimizer-mini-cart-wrap {
  background: var(--bg-1);
  border-left: 1px solid var(--line-1);
  box-shadow: var(--shadow-lg);
}
.shoptimizer-mini-cart-wrap .cart-drawer-heading {
  background: var(--bg-1);
}
/* teal bag mark (design screenshot; informational accent) */
.shoptimizer-mini-cart-wrap .cart-drawer-heading .gpd-cart-mark {
  background: var(--teal-500);
  color: #06160F;
}
.shoptimizer-mini-cart-wrap .cart-drawer-heading,
.shoptimizer-mini-cart-wrap .cart-drawer-heading .gpd-cart-title { color: #fff; }

/* close button → glass circle */
.shoptimizer-mini-cart-wrap .cart-drawer-close,
.shoptimizer-mini-cart-wrap .close-drawer {
  background: rgba(255, 255, 255, 0.06);
  color: var(--fg-1);
  border-radius: 9px;
}
.shoptimizer-mini-cart-wrap .cart-drawer-close:hover { background: rgba(255, 255, 255, 0.14); color: #fff; }

/* ship/savings + promo strip → lime-tinted dark band (DxStrip) */
.shoptimizer-mini-cart-wrap .gpd-ship {
  background: rgba(211, 255, 95, 0.07);
  border-color: var(--line-2);
}
.shoptimizer-mini-cart-wrap .gpd-ship__msg { color: var(--fg-1); }
.shoptimizer-mini-cart-wrap .gpd-ship__msg strong { color: var(--lime-500); }
.shoptimizer-mini-cart-wrap .gpd-ship__bar { background: rgba(255, 255, 255, 0.08); }
.shoptimizer-mini-cart-wrap .gpd-ship__bar > * { background: var(--lime-500); }
.shoptimizer-mini-cart-wrap .gpd-ship__promo .gpd-promo__applied {
  background: var(--surface-glass);
  border: 1px solid var(--line-1);
  color: var(--fg-1);
}
.shoptimizer-mini-cart-wrap .gpd-promo-wrap button,
.shoptimizer-mini-cart-wrap .gpd-promo-toggle {
  background: transparent;
  border: 1px solid var(--line-1);
  color: var(--fg-1);
  border-radius: var(--r-full);
}

/* line items */
.shoptimizer-mini-cart-wrap .gpd-line { border-color: var(--line-2); }
.shoptimizer-mini-cart-wrap .gpd-line__title,
.shoptimizer-mini-cart-wrap .gpd-line__title a { color: #fff; }
.shoptimizer-mini-cart-wrap .gpd-line__thumb {
  background: #0c1014;
  border: 1px solid var(--line-2);
}
.shoptimizer-mini-cart-wrap .gpd-meta { color: var(--fg-secondary); }
.shoptimizer-mini-cart-wrap .gpd-meta b,
.shoptimizer-mini-cart-wrap .gpd-meta strong { color: var(--fg-1); }
/* prices: white now-price, grey was, lime FREE */
.shoptimizer-mini-cart-wrap .gpd-line__price {
  color: #fff;
  -webkit-text-fill-color: #fff;
}
.shoptimizer-mini-cart-wrap .gpd-line__was,
.shoptimizer-mini-cart-wrap .gpd-line__was * {
  color: var(--fg-tertiary);
  -webkit-text-fill-color: var(--fg-tertiary);
}
.shoptimizer-mini-cart-wrap .gpd-line__price--free,
.shoptimizer-mini-cart-wrap .gpd-line__price--free * {
  color: var(--lime-500);
  -webkit-text-fill-color: var(--lime-500);
}
/* FREE GIFT chip → teal soft (design) */
.shoptimizer-mini-cart-wrap .gpd-badge--free {
  background: rgba(35, 221, 190, 0.12);
  color: var(--teal-500);
  border: 0;
}
/* qty stepper + remove */
.shoptimizer-mini-cart-wrap .quantity,
.shoptimizer-mini-cart-wrap .gpd-line .quantity input {
  background: var(--surface-glass);
  border-color: var(--line-1);
  color: #fff;
}
.shoptimizer-mini-cart-wrap .gpd-line__actions a,
.shoptimizer-mini-cart-wrap .gpd-line .remove {
  color: var(--fg-secondary);
}
.shoptimizer-mini-cart-wrap .gpd-line .remove:hover { color: var(--orange-500); }

/* recommended upgrades (bumps carousel) */
.shoptimizer-mini-cart-wrap .gpd-bumps { border-color: var(--line-1); background: var(--surface-glass-2); }
.shoptimizer-mini-cart-wrap .gpd-bumps__head,
.shoptimizer-mini-cart-wrap .gpd-bumps__title { color: var(--fg-secondary); }
.shoptimizer-mini-cart-wrap .gpd-bumps__slot .commercekit-order-bump,
.shoptimizer-mini-cart-wrap .gpd-bumps__slot > * {
  background: var(--surface-elev);
  border-color: var(--line-1);
  color: var(--fg-1);
  border-radius: var(--r-lg);
}
.shoptimizer-mini-cart-wrap .gpd-bumps .price,
.shoptimizer-mini-cart-wrap .gpd-bumps .amount {
  color: var(--orange-500);
  -webkit-text-fill-color: var(--orange-500);
  font-weight: 800;
}
.shoptimizer-mini-cart-wrap .gpd-bumps del,
.shoptimizer-mini-cart-wrap .gpd-bumps del .amount {
  color: var(--fg-tertiary);
  -webkit-text-fill-color: var(--fg-tertiary);
  font-weight: 400;
}
.shoptimizer-mini-cart-wrap .gpd-bumps button,
.shoptimizer-mini-cart-wrap .gpd-bumps .add_to_cart_button {
  background: rgba(35, 221, 190, 0.12);
  color: var(--teal-500);
  border: 0;
  border-radius: var(--r-md);
  font-weight: 700;
}
.shoptimizer-mini-cart-wrap .gpd-bumps button:hover { background: rgba(35, 221, 190, 0.2); }

/* footer: lime subtotal + lime CTA + ghost continue */
.shoptimizer-mini-cart-wrap .widget_shopping_cart_content .total,
.shoptimizer-mini-cart-wrap .gpd-subtotal {
  color: #fff;
  border-color: var(--line-1);
  background: var(--bg-1);
}
.shoptimizer-mini-cart-wrap .widget_shopping_cart_content .total .amount,
.shoptimizer-mini-cart-wrap .widget_shopping_cart_content .total bdi,
.shoptimizer-mini-cart-wrap .gpd-subtotal .amount {
  color: var(--lime-500) !important;
  -webkit-text-fill-color: var(--lime-500);
  font-weight: 800;
}
.shoptimizer-mini-cart-wrap .widget_shopping_cart_content .buttons .checkout,
.shoptimizer-mini-cart-wrap .gpd-checkout-btn,
.shoptimizer-mini-cart-wrap a.checkout {
  background: var(--lime-500) !important;
  color: #0A0D0F !important;
  font-weight: 800;
  border-radius: var(--r-md);
}
.shoptimizer-mini-cart-wrap .widget_shopping_cart_content .buttons .checkout:hover { box-shadow: var(--shadow-glow); }
.shoptimizer-mini-cart-wrap .gpd-continue {
  color: var(--fg-secondary);
  background: transparent;
}
.shoptimizer-mini-cart-wrap .gpd-continue:hover { color: #fff; }

/* empty state */
.shoptimizer-mini-cart-wrap .gpd-empty__title { color: #fff; }
.shoptimizer-mini-cart-wrap .gpd-empty__sub { color: var(--fg-secondary); }

/* white wrapper layers inside the drawer (classless inner div + the Woo
   widget_shopping_cart shell are painted #fff by side-cart.css) */
.shoptimizer-mini-cart-wrap > div,
.shoptimizer-mini-cart-wrap .widget.woocommerce.widget_shopping_cart,
.shoptimizer-mini-cart-wrap .widget_shopping_cart_content,
.shoptimizer-mini-cart-wrap .woocommerce-mini-cart {
    background: var(--bg-1);
}
.shoptimizer-mini-cart-wrap .cart-drawer-heading { background: var(--bg-1); }

/* anchors in the drawer pick up a #222 link rule — pin them */
.shoptimizer-mini-cart-wrap a { color: var(--fg-1); }
.shoptimizer-mini-cart-wrap a.gpd-line__title { color: #fff; }
.shoptimizer-mini-cart-wrap a.gpd-line__title:hover { color: var(--lime-500); }

/* footer buttons band (white literal) */
.shoptimizer-mini-cart-wrap p.woocommerce-mini-cart__buttons.buttons,
.shoptimizer-mini-cart-wrap .woocommerce-mini-cart__buttons {
    background: var(--bg-1);
    border-top: 1px solid var(--line-2);
}

/* order-bump card + carousel nav arrows (white !important literals at
   side-cart.css:795/967) — !important parity */
.shoptimizer-mini-cart-wrap .commercekit-order-bumps-wrap .ckobp-item,
.shoptimizer-mini-cart-wrap .commercekit-order-bumps-wrap [class*="ckobp-"][class*="card"],
.shoptimizer-mini-cart-wrap .gpd-bumps__slot .ckobp-item {
    background: var(--surface-elev) !important;
    border-color: var(--line-1) !important;
}
.shoptimizer-mini-cart-wrap .commercekit-order-bumps-wrap .ckobp-prev,
.shoptimizer-mini-cart-wrap .commercekit-order-bumps-wrap .ckobp-next {
    background: rgba(255, 255, 255, 0.06) !important;
    border-color: var(--line-1) !important;
    color: var(--fg-1) !important;
}

/* parent-theme (#222) link rules reach into the drawer — pin with !important */
.shoptimizer-mini-cart-wrap a.gpd-line__title,
.shoptimizer-mini-cart-wrap .gpd-line__title,
.shoptimizer-mini-cart-wrap .gpd-line__titlewrap a {
    color: #fff !important;
    -webkit-text-fill-color: #fff;
}
.shoptimizer-mini-cart-wrap .gpd-meta,
.shoptimizer-mini-cart-wrap .gpd-meta * {
    color: var(--fg-secondary) !important;
    -webkit-text-fill-color: var(--fg-secondary);
}
.shoptimizer-mini-cart-wrap .gpd-meta b,
.shoptimizer-mini-cart-wrap .gpd-meta strong {
    color: var(--fg-1) !important;
    -webkit-text-fill-color: var(--fg-1);
}

/* subtotal band above the CTA (white literal at side-cart.css:1024) */
.shoptimizer-mini-cart-wrap .gpd-sum {
    background: var(--bg-1);
    border-top-color: var(--line-2);
}
.shoptimizer-mini-cart-wrap .gpd-sum,
.shoptimizer-mini-cart-wrap .gpd-sum__line { color: var(--fg-secondary); }
.shoptimizer-mini-cart-wrap .gpd-sum__line b,
.shoptimizer-mini-cart-wrap .gpd-sum .amount {
    color: var(--lime-500) !important;
    -webkit-text-fill-color: var(--lime-500);
}

/* CommerceKit order-bump cards (plugin DOM — bridge restyle) */
.shoptimizer-mini-cart-wrap .commercekit-order-bumps-wrap .commercekit-order-bump {
    background: var(--surface-elev) !important;
    border-color: var(--line-1) !important;
    color: var(--fg-1) !important;
}
.shoptimizer-mini-cart-wrap .commercekit-order-bump .ckobp-title,
.shoptimizer-mini-cart-wrap .commercekit-order-bump a,
.shoptimizer-mini-cart-wrap .commercekit-order-bump label {
    color: var(--fg-1) !important;
}
