/*
 * TGP Buyer UI — WooCommerce + Plugin Pages (v2.0)
 * ─────────────────────────────────────────────────
 * Nuclear override approach: every rule uses !important.
 * Covers WC pages + all third-party plugins that inject into
 * My Account (Marketking/Favorite Producers, Points & Rewards,
 * DataTables, Wishlist, etc.)
 */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');

/* ══════════════════════════════════════════════════════════════════
 * GLOBAL DARK BASE — applied on every WC body class
 * ════════════════════════════════════════════════════════════════*/

body.woocommerce-cart,
body.woocommerce-checkout,
body.woocommerce-account,
body.woocommerce-order-received {
  background-color: var(--tgp-bg, #09090B) !important;
  color: var(--tgp-text, #F4F4F5) !important;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
  -webkit-font-smoothing: antialiased !important;
}

/* Nuke any white/light background surfaces injected by plugins */
body.woocommerce-account .woocommerce-MyAccount-content *,
body.woocommerce-account .woocommerce-MyAccount-content *::before,
body.woocommerce-account .woocommerce-MyAccount-content *::after {
  box-sizing: border-box !important;
}

/* ══════════════════════════════════════════════════════════════════
 * FORM INPUTS — comprehensive dark theme
 * ════════════════════════════════════════════════════════════════*/

/* Inputs: scoped to inner WC containers ONLY (cart `.tgp-cart-v3`, MyAccount, login/register).
 * Checkout uses checkout-saas.css. Cart NEVER uses bare `body.woocommerce-cart .woocommerce`
 * selectors — Elementor wraps the mini-cart in `.woocommerce`.
 */
body.woocommerce-cart .tgp-cart-v3 input:not([type="radio"]):not([type="checkbox"]):not([type="hidden"]):not([type="submit"]):not([type="button"]),
body.woocommerce-account .woocommerce-MyAccount-content input:not([type="radio"]):not([type="checkbox"]):not([type="hidden"]):not([type="submit"]):not([type="button"]),
body.woocommerce-account .woocommerce-form-login input:not([type="radio"]):not([type="checkbox"]):not([type="hidden"]):not([type="submit"]):not([type="button"]),
body.woocommerce-account .woocommerce-form-register input:not([type="radio"]):not([type="checkbox"]):not([type="hidden"]):not([type="submit"]):not([type="button"]),
body.woocommerce-account .woocommerce-form-row input:not([type="radio"]):not([type="checkbox"]):not([type="hidden"]):not([type="submit"]):not([type="button"]),
body.woocommerce-cart .tgp-cart-v3 select,
body.woocommerce-account .woocommerce-MyAccount-content select,
body.woocommerce-account .woocommerce-form-login select,
body.woocommerce-account .woocommerce-form-register select,
body.woocommerce-cart .tgp-cart-v3 textarea,
body.woocommerce-account .woocommerce-MyAccount-content textarea,
body.woocommerce-account .woocommerce-form-login textarea,
body.woocommerce-account .woocommerce-form-register textarea {
  background: #18181B !important;
  background-color: #18181B !important;
  border: 1px solid rgba(255,255,255,0.14) !important;
  border-radius: 10px !important;
  color: #F4F4F5 !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 14px !important;
  padding: 10px 14px !important;
  height: auto !important;
  min-height: 42px !important;
  line-height: 1.5 !important;
  box-shadow: none !important;
  outline: none !important;
  width: 100% !important;
  box-sizing: border-box !important;
  -webkit-appearance: none !important;
  appearance: none !important;
  transition: border-color 120ms ease, box-shadow 120ms ease !important;
}
body.woocommerce-cart .tgp-cart-v3 input:not([type="radio"]):not([type="checkbox"]):not([type="hidden"]):not([type="submit"]):not([type="button"]):focus,
body.woocommerce-account .woocommerce-MyAccount-content input:not([type="radio"]):not([type="checkbox"]):not([type="hidden"]):not([type="submit"]):not([type="button"]):focus,
body.woocommerce-account .woocommerce-form-login input:not([type="radio"]):not([type="checkbox"]):not([type="hidden"]):not([type="submit"]):not([type="button"]):focus,
body.woocommerce-account .woocommerce-form-register input:not([type="radio"]):not([type="checkbox"]):not([type="hidden"]):not([type="submit"]):not([type="button"]):focus,
body.woocommerce-account .woocommerce-form-row input:not([type="radio"]):not([type="checkbox"]):not([type="hidden"]):not([type="submit"]):not([type="button"]):focus,
body.woocommerce-cart .tgp-cart-v3 select:focus,
body.woocommerce-account .woocommerce-MyAccount-content select:focus,
body.woocommerce-account .woocommerce-form-login select:focus,
body.woocommerce-account .woocommerce-form-register select:focus,
body.woocommerce-cart .tgp-cart-v3 textarea:focus,
body.woocommerce-account .woocommerce-MyAccount-content textarea:focus,
body.woocommerce-account .woocommerce-form-login textarea:focus,
body.woocommerce-account .woocommerce-form-register textarea:focus {
  border-color: #9333EA !important;
  box-shadow: 0 0 0 3px rgba(147,51,234,0.18) !important;
  outline: none !important;
}
body.woocommerce-cart .tgp-cart-v3 ::placeholder,
body.woocommerce-account .woocommerce-MyAccount-content ::placeholder,
body.woocommerce-account .woocommerce-form-login ::placeholder,
body.woocommerce-account .woocommerce-form-register ::placeholder { color: #52525B !important; }

/* Labels — scoped to inner WC content only (never header/Elementor/Sonaar) */
body.woocommerce-cart .tgp-cart-v3 label,
body.woocommerce-account .woocommerce-MyAccount-content label:not(.woocommerce-form__label-for-checkbox),
body.woocommerce-account .woocommerce-form-login label:not(.woocommerce-form__label-for-checkbox),
body.woocommerce-account .woocommerce-form-register label:not(.woocommerce-form__label-for-checkbox) {
  color: #A1A1AA !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: 0.015em !important;
  display: block !important;
  margin-bottom: 5px !important;
  text-transform: none !important;
}

/* Native checkboxes — must never inherit text-field sizing (width:100%, min-height:42px, appearance:none). */
body.woocommerce-account .woocommerce-form-login input[type="checkbox"],
body.woocommerce-account .woocommerce-form-register input[type="checkbox"] {
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  min-height: 18px !important;
  max-width: 18px !important;
  padding: 0 !important;
  margin: 0 !important;
  flex-shrink: 0 !important;
  border-radius: 4px !important;
  background-color: transparent !important;
  border: 1px solid rgba(255, 255, 255, 0.35) !important;
  -webkit-appearance: auto !important;
  appearance: auto !important;
  box-shadow: none !important;
  accent-color: #9333ea !important;
  cursor: pointer !important;
}
body.woocommerce-account .woocommerce-form-login label.woocommerce-form__label-for-checkbox,
body.woocommerce-account .woocommerce-form-register label.woocommerce-form__label-for-checkbox {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  width: auto !important;
  max-width: 100% !important;
  margin-bottom: 0 !important;
  cursor: pointer !important;
}

/* Coupon row: SR label must stay visually hidden (global rule above uses display:block). */
body.woocommerce-cart .tgp-cart-v3__coupon label.screen-reader-text {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* ══════════════════════════════════════════════════════════════════
 * BUTTONS — modern pill style (scoped to WC main column — not header CTAs)
 * ════════════════════════════════════════════════════════════════*/

body.woocommerce-cart .tgp-cart-v3 .button,
body.woocommerce-account .woocommerce-MyAccount-content .button,
body.woocommerce-account .woocommerce-form-login .button,
body.woocommerce-account .woocommerce-form-register .button,
body.woocommerce-order-received .woocommerce:has(.tgp-thankyou-v4) .button,
body.woocommerce-cart .tgp-cart-v3 .wp-block-button__link {
  all: unset !important;
  box-sizing: border-box !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  padding: 9px 20px !important;
  border-radius: 999px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  letter-spacing: -0.01em !important;
  background: linear-gradient(135deg, #9333EA 0%, #6D28D9 100%) !important;
  color: #fff !important;
  cursor: pointer !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  border: none !important;
  box-shadow: 0 3px 10px rgba(109,40,217,0.35) !important;
  transition: background 120ms ease, transform 120ms ease, box-shadow 120ms ease !important;
}
body.woocommerce-cart .tgp-cart-v3 .button:hover,
body.woocommerce-account .woocommerce-MyAccount-content .button:hover,
body.woocommerce-account .woocommerce-form-login .button:hover,
body.woocommerce-account .woocommerce-form-register .button:hover,
body.woocommerce-order-received .woocommerce:has(.tgp-thankyou-v4) .button:hover {
  background: linear-gradient(135deg, #A855F7 0%, #7C3AED 100%) !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 6px 18px rgba(109,40,217,0.45) !important;
  color: #fff !important;
}

/* Remove / delete buttons */
body.woocommerce-account td.product-remove a,
body.woocommerce-cart .tgp-cart-v3 td.product-remove a,
body.woocommerce-account .woocommerce-MyAccount-content a.delete {
  background: rgba(239,68,68,0.10) !important;
  color: #EF4444 !important;
  box-shadow: none !important;
  border: 1px solid rgba(239,68,68,0.25) !important;
  font-size: 11px !important;
  padding: 5px 12px !important;
}
body.woocommerce-account td.product-remove a:hover,
body.woocommerce-cart .tgp-cart-v3 td.product-remove a:hover {
  background: rgba(239,68,68,0.20) !important;
  transform: none !important;
}

/* ══════════════════════════════════════════════════════════════════
 * NOTICES
 * ════════════════════════════════════════════════════════════════*/

body.woocommerce-cart .woocommerce-message,
body.woocommerce-cart .woocommerce-info,
body.woocommerce-cart .woocommerce-error li,
body.woocommerce-checkout .woocommerce-message,
body.woocommerce-checkout .woocommerce-info,
body.woocommerce-checkout .woocommerce-error li,
body.woocommerce-account .woocommerce-message,
body.woocommerce-account .woocommerce-info,
body.woocommerce-account .woocommerce-error li,
body.woocommerce-order-received .woocommerce-message {
  background: #111113 !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
  border-left: 3px solid #9333EA !important;
  border-radius: 10px !important;
  color: #F4F4F5 !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 13.5px !important;
  padding: 13px 18px !important;
  box-shadow: none !important;
  list-style: none !important;
  margin-bottom: 16px !important;
}
body.woocommerce-cart .woocommerce-error,
body.woocommerce-checkout .woocommerce-error,
body.woocommerce-account .woocommerce-error {
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  list-style: none !important;
}
body.woocommerce-cart .woocommerce-error li,
body.woocommerce-checkout .woocommerce-error li,
body.woocommerce-account .woocommerce-error li {
  border-left-color: #EF4444 !important;
}
body.woocommerce-account .woocommerce-info { border-left-color: #60a5fa !important; }
body.woocommerce-account .woocommerce-message { border-left-color: #10B981 !important; }

/* My Account auth shells — WC notices render inside `.tgp-auth-page` / `.tgp-auth-card` (child theme + tgp-buyer-ui.php) */
body.woocommerce-account .tgp-auth-page > .woocommerce-notices-wrapper {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  max-width: 100% !important;
  width: 100% !important;
  margin: 0 0 1rem !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  text-align: center !important;
}

/* Core WC positions notice icons in ::before — theme resets overlap copy; hide icons on auth pages only */
body.woocommerce-account .tgp-auth-page .woocommerce-message::before,
body.woocommerce-account .tgp-auth-page .woocommerce-info::before,
body.woocommerce-account .tgp-auth-page .woocommerce-error::before,
body.woocommerce-account .tgp-auth-page ul.woocommerce-error > li::before,
body.woocommerce-account .tgp-auth-card .woocommerce-message::before,
body.woocommerce-account .tgp-auth-card .woocommerce-info::before,
body.woocommerce-account .tgp-auth-card .woocommerce-error::before,
body.woocommerce-account .tgp-auth-card ul.woocommerce-error > li::before {
  display: none !important;
  content: none !important;
  position: static !important;
  width: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

body.woocommerce-account .tgp-auth-page > .woocommerce-notices-wrapper .woocommerce-message,
body.woocommerce-account .tgp-auth-page > .woocommerce-notices-wrapper .woocommerce-info,
body.woocommerce-account .tgp-auth-page > .woocommerce-notices-wrapper .woocommerce-error {
  margin-bottom: 10px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  width: 100% !important;
  max-width: 100% !important;
  text-align: center !important;
  justify-content: center !important;
}

body.woocommerce-account .tgp-auth-page ul.woocommerce-error {
  margin: 0 auto 10px !important;
  padding: 0 !important;
  list-style: none !important;
  max-width: 100% !important;
  width: 100% !important;
  text-align: center !important;
}
body.woocommerce-account .tgp-auth-page ul.woocommerce-error::before {
  display: none !important;
}
body.woocommerce-account .tgp-auth-page ul.woocommerce-error li {
  background: rgba(239, 68, 68, 0.14) !important;
  border: 1px solid rgba(239, 68, 68, 0.45) !important;
  border-left: 3px solid #ef4444 !important;
  border-radius: 10px !important;
  color: #fecaca !important;
  text-align: center !important;
}

/* Email-sent confirmation — `wc_print_notice()` sits inside `.tgp-auth-card` */
body.woocommerce-account .tgp-auth-card .woocommerce-message,
body.woocommerce-account .tgp-auth-card .woocommerce-info,
body.woocommerce-account .tgp-auth-card .woocommerce-error {
  margin-left: auto !important;
  margin-right: auto !important;
  width: 100% !important;
  max-width: 100% !important;
  text-align: center !important;
}

/* Avoid a second “card” panel behind the form on login / lost-password */
body.woocommerce-account .tgp-auth-card form.woocommerce-form-login,
body.woocommerce-account .tgp-auth-card form.lost_reset_password,
body.woocommerce-account .tgp-auth-card form.woocommerce-ResetPassword.lost_reset_password {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Guest login — one card only: strip shell / Elementor tab chrome behind `.tgp-auth-card` */
body.woocommerce-account:not(.logged-in) .tgp-myaccount__content.woocommerce-MyAccount-content,
body.woocommerce-account:not(.logged-in) .elementor-widget-woocommerce-my-account .e-my-account-tab__content {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
body.woocommerce-account:not(.logged-in) .elementor-widget-woocommerce-my-account .elementor-widget-container {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

body.woocommerce-account:not(.logged-in) .woocommerce-MyAccount-content > .woocommerce {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* ══════════════════════════════════════════════════════════════════
 * PAGE HEADER — used in orders, view-order, etc.
 * ════════════════════════════════════════════════════════════════*/

.tgp-page-hd {
  margin-bottom: 24px;
}
.tgp-page-hd__breadcrumb {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 12.5px;
  color: #71717A;
  margin-bottom: 6px;
}
.tgp-page-hd__breadcrumb a {
  color: #71717A !important;
  text-decoration: none !important;
}
.tgp-page-hd__breadcrumb a:hover { color: #F4F4F5 !important; }
.tgp-page-hd__title {
  font-family: 'Inter', sans-serif !important;
  font-size: 22px !important;
  font-weight: 800 !important;
  color: #F4F4F5 !important;
  letter-spacing: -0.025em !important;
  margin: 0 0 4px !important;
  display: flex;
  align-items: center;
  gap: 12px;
}
.tgp-page-hd__sub {
  font-size: 13px !important;
  color: #71717A !important;
  margin: 0 !important;
  font-family: 'Inter', sans-serif !important;
}

/* Status badges */
.tgp-status-badge {
  display: inline-block;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.03em;
  padding: 3px 10px;
  border-radius: 999px;
  vertical-align: middle;
}
.tgp-status-badge.is-green  { background: rgba(16,185,129,0.12); color: #10B981; }
.tgp-status-badge.is-blue   { background: rgba(96,165,250,0.12); color: #60a5fa; }
.tgp-status-badge.is-amber  { background: rgba(245,158,11,0.12); color: #F59E0B; }
.tgp-status-badge.is-red    { background: rgba(239,68,68,0.12);  color: #EF4444; }
.tgp-status-badge.is-dim    { background: rgba(255,255,255,0.07); color: #A1A1AA; }

/* Empty state */
.tgp-empty-state {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: 64px 24px;
  background: #111113;
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 16px;
}
.tgp-empty-state__icon {
  width: 60px; height: 60px;
  border-radius: 16px;
  background: rgba(147,51,234,0.10);
  color: #9333EA;
  display: flex; align-items: center; justify-content: center;
  margin-bottom: 18px;
}
.tgp-empty-state__title {
  font-size: 17px !important;
  font-weight: 700 !important;
  color: #F4F4F5 !important;
  margin: 0 0 8px !important;
}
.tgp-empty-state__sub {
  font-size: 13.5px;
  color: #71717A;
  margin: 0 0 24px;
  max-width: 320px;
  line-height: 1.6;
}

/* ══════════════════════════════════════════════════════════════════
 * ORDERS PAGE — card layout (.tgp-orders-page)
 * ════════════════════════════════════════════════════════════════*/

.tgp-orders-page {
  display: flex;
  flex-direction: column;
  gap: var(--tgp-s-6);
}

.tgp-orders-page__intro .tgp-page-hd__title {
  letter-spacing: -0.03em !important;
}

.tgp-orders-page__metrics {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--tgp-s-3) var(--tgp-s-6);
  margin: var(--tgp-s-4) 0 0;
  padding: 0;
  list-style: none;
}

.tgp-orders-page__metric {
  display: inline-flex;
  align-items: baseline;
  gap: var(--tgp-s-2);
  font-family: var(--tgp-font);
}

.tgp-orders-page__metric-value {
  font-size: 15px;
  font-weight: 700;
  color: var(--tgp-text);
  letter-spacing: -0.02em;
  font-variant-numeric: tabular-nums;
}

.tgp-orders-page__metric-sep {
  font-weight: 600;
  opacity: 0.45;
  margin: 0 1px;
}

.tgp-orders-page__metric-label {
  font-size: 12px;
  font-weight: 500;
  color: var(--tgp-text-faint);
  text-transform: lowercase;
}

.tgp-orders-page__metric--dim .tgp-orders-page__metric-value {
  font-size: 14px;
  font-weight: 600;
  color: var(--tgp-text-dim);
}

/* Card stack */
.tgp-order-cards {
  display: flex;
  flex-direction: column;
  gap: var(--tgp-s-4);
}

.tgp-order-card {
  display: grid;
  grid-template-columns: 76px minmax(0, 1fr) minmax(148px, auto);
  grid-template-areas: 'media main rail';
  gap: var(--tgp-s-4) var(--tgp-s-6);
  align-items: center;
  padding: var(--tgp-s-5);
  background: var(--tgp-surface);
  border: 1px solid var(--tgp-border);
  border-radius: var(--tgp-r-lg);
  box-shadow: var(--tgp-shadow-card);
  transition:
    border-color var(--tgp-dur-1) var(--tgp-ease),
    box-shadow var(--tgp-dur-1) var(--tgp-ease),
    transform var(--tgp-dur-1) var(--tgp-ease);
}

.tgp-order-card:hover {
  border-color: var(--tgp-border-strong);
  box-shadow: var(--tgp-shadow-sm), 0 12px 40px rgba(0, 0, 0, 0.35);
  transform: translateY(-2px);
}

@media (prefers-reduced-motion: reduce) {
  .tgp-order-card {
    transition: border-color var(--tgp-dur-1) var(--tgp-ease), box-shadow var(--tgp-dur-1) var(--tgp-ease);
  }
  .tgp-order-card:hover {
    transform: none;
  }
}

.tgp-order-card__media {
  grid-area: media;
}

.tgp-order-card__thumb {
  width: 76px;
  height: 76px;
  border-radius: var(--tgp-r-md);
  background-size: cover;
  background-position: center;
  box-shadow: inset 0 0 0 1px var(--tgp-border);
}

.tgp-order-card__thumb--empty {
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--tgp-surface-hover);
  color: var(--tgp-text-faint);
}

/* Composite / multi-track collage — same outer footprint as the single
 * thumbnail so the orders list grid stays aligned. We render up to 4
 * track covers in a 2×2 mosaic; for 2 tracks we split horizontally and
 * for 3 we float the third tile across the bottom row. */
.tgp-order-card__collage {
  width: 76px;
  height: 76px;
  border-radius: var(--tgp-r-md);
  overflow: hidden;
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: 1fr 1fr;
  gap: 2px;
  background: var(--tgp-surface-hover);
  box-shadow: inset 0 0 0 1px var(--tgp-border);
}
.tgp-order-card__collage .tgp-order-card__tile {
  background-size: cover;
  background-position: center;
  background-color: #18181B;
  display: block;
  width: 100%;
  height: 100%;
}
.tgp-order-card__collage--2 {
  grid-template-rows: 1fr;
}
.tgp-order-card__collage--3 .tgp-order-card__tile:nth-child(3) {
  grid-column: 1 / -1;
}

@media (max-width: 480px) {
  .tgp-order-card__collage { width: 64px; height: 64px; }
}

.tgp-order-card__main {
  grid-area: main;
  min-width: 0;
}

.tgp-order-card__head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--tgp-s-2) var(--tgp-s-3);
  margin-bottom: var(--tgp-s-1);
}

.tgp-order-card__num {
  font-family: var(--tgp-font) !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  color: #c084fc !important;
  text-decoration: none !important;
  letter-spacing: -0.02em !important;
}

.tgp-order-card__num:hover {
  color: #d8b4fe !important;
}

.tgp-order-card__product {
  font-family: var(--tgp-font);
  font-size: 14px;
  font-weight: 600;
  color: var(--tgp-text);
  margin: 0 0 var(--tgp-s-2);
  line-height: 1.35;
  letter-spacing: -0.015em;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.tgp-order-card__meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--tgp-s-1) var(--tgp-s-2);
  font-family: var(--tgp-font);
  font-size: 12.5px;
  color: var(--tgp-text-faint);
  line-height: 1.45;
}

.tgp-order-card__sep {
  color: var(--tgp-text-faint);
  opacity: 0.55;
  user-select: none;
}

.tgp-order-card__tracks,
.tgp-order-card__vendor {
  color: var(--tgp-text-dim);
}

.tgp-order-card__rail {
  grid-area: rail;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: var(--tgp-s-3);
  min-width: 0;
}

.tgp-order-card__total {
  font-family: var(--tgp-font);
  font-size: 16px;
  font-weight: 700;
  letter-spacing: -0.02em;
  color: var(--tgp-text);
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}

.tgp-order-card__total .woocommerce-Price-amount {
  color: inherit !important;
}

.tgp-order-card__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: var(--tgp-s-2);
}

.tgp-order-action {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 6px 14px !important;
  border-radius: var(--tgp-r-full) !important;
  font-family: var(--tgp-font) !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  transition: background var(--tgp-dur-1) var(--tgp-ease), color var(--tgp-dur-1) var(--tgp-ease), border-color var(--tgp-dur-1) var(--tgp-ease) !important;
  cursor: pointer !important;
  white-space: nowrap !important;
}

.tgp-order-action--view,
.tgp-order-action--pay {
  background: rgba(147, 51, 234, 0.12) !important;
  color: #c084fc !important;
  border: 1px solid rgba(147, 51, 234, 0.28) !important;
}

.tgp-order-action--view:hover,
.tgp-order-action--pay:hover {
  background: rgba(147, 51, 234, 0.22) !important;
  color: #d8b4fe !important;
}

.tgp-order-action--invoice,
.tgp-order-action--cancel {
  background: rgba(255, 255, 255, 0.05) !important;
  color: var(--tgp-text-dim) !important;
  border: 1px solid var(--tgp-border) !important;
}

.tgp-order-action--invoice:hover,
.tgp-order-action--cancel:hover {
  background: rgba(255, 255, 255, 0.09) !important;
  color: var(--tgp-text) !important;
}

.tgp-order-card__details {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-family: var(--tgp-font);
  font-size: 12.5px;
  font-weight: 600;
  color: var(--tgp-text-dim);
  text-decoration: none !important;
  transition: color var(--tgp-dur-1) var(--tgp-ease);
}

.tgp-order-card__details:hover {
  color: #c084fc;
}

.tgp-order-card__details svg {
  flex-shrink: 0;
  opacity: 0.85;
}

/* Tablet / mobile */
@media (max-width: 900px) {
  .tgp-order-card {
    grid-template-columns: 64px minmax(0, 1fr);
    grid-template-areas:
      'media main'
      'rail rail';
    gap: var(--tgp-s-4);
    align-items: start;
  }

  .tgp-order-card__rail {
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding-top: var(--tgp-s-4);
    margin-top: var(--tgp-s-1);
    border-top: 1px solid var(--tgp-border);
  }

  .tgp-order-card__total {
    font-size: 18px;
  }

  .tgp-order-card__actions {
    justify-content: flex-start;
  }
}

@media (max-width: 480px) {
  .tgp-order-card {
    padding: var(--tgp-s-4);
  }

  .tgp-order-card__thumb {
    width: 64px;
    height: 64px;
  }

  .tgp-order-card__rail {
    flex-direction: column;
    align-items: stretch;
    gap: var(--tgp-s-4);
  }

  .tgp-order-card__actions {
    justify-content: stretch;
  }

  .tgp-order-card__actions .tgp-order-action {
    flex: 1;
    justify-content: center !important;
    min-width: calc(50% - var(--tgp-s-2));
  }

  .tgp-order-card__details {
    justify-content: center;
    padding: var(--tgp-s-2);
    border-radius: var(--tgp-r-md);
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid var(--tgp-border);
  }
}

/* Wishlist (Sonaar favourites) — “Remove all” control below the track list */
body.woocommerce-account .woocommerce-MyAccount-content .iron-audioplayer.srp_player_is_favorite {
  display: flex;
  flex-direction: column;
}

body.woocommerce-account .woocommerce-MyAccount-content .iron-audioplayer.srp_player_is_favorite .srp-fav-removeall-wrapper {
  order: 100;
  width: 100%;
  justify-content: center;
  margin-top: 12px;
  margin-bottom: 0;
}

body.woocommerce-account .woocommerce-MyAccount-content .iron-audioplayer.srp_player_is_favorite .srp-fav-removeall-wrapper .srp-fav-removeall-bt {
  margin-bottom: 0;
}

/* Pagination bar */
.tgp-orders-pagination {
  margin-top: var(--tgp-s-2);
}

.tgp-orders-pagination__bar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: var(--tgp-s-4);
  padding: var(--tgp-s-4) var(--tgp-s-5);
  background: var(--tgp-surface);
  border: 1px solid var(--tgp-border);
  border-radius: var(--tgp-r-lg);
  box-shadow: var(--tgp-shadow-card);
}

.tgp-orders-pagination__status {
  font-family: var(--tgp-font);
  font-size: 13px;
  font-weight: 500;
  color: var(--tgp-text-dim);
  font-variant-numeric: tabular-nums;
  order: 0;
}

.tgp-orders-pagination__btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: var(--tgp-s-2) !important;
  padding: 10px 18px !important;
  border-radius: var(--tgp-r-md) !important;
  font-family: var(--tgp-font) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  background: var(--tgp-surface-high) !important;
  border: 1px solid var(--tgp-border) !important;
  color: var(--tgp-text) !important;
  transition: background var(--tgp-dur-1) var(--tgp-ease), border-color var(--tgp-dur-1) var(--tgp-ease), color var(--tgp-dur-1) var(--tgp-ease) !important;
}

.tgp-orders-pagination__btn:hover:not(.is-disabled) {
  background: rgba(147, 51, 234, 0.12) !important;
  border-color: rgba(147, 51, 234, 0.35) !important;
  color: #c084fc !important;
}

.tgp-orders-pagination__btn.is-disabled {
  opacity: 0.38;
  cursor: not-allowed;
  pointer-events: none;
}

@media (max-width: 520px) {
  .tgp-orders-pagination__bar {
    flex-direction: column;
    text-align: center;
  }

  .tgp-orders-pagination__status {
    order: -1;
    width: 100%;
  }

  .tgp-orders-pagination__btn {
    width: 100%;
    justify-content: center !important;
  }
}

/* Legacy: numbered pagination if ever used */
.tgp-orders-pagination ul.page-numbers {
  display: flex;
  gap: 6px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.tgp-orders-pagination .page-numbers a,
.tgp-orders-pagination .page-numbers span {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 34px !important;
  height: 34px !important;
  border-radius: var(--tgp-r-sm) !important;
  font-size: 13px !important;
  font-family: var(--tgp-font) !important;
  font-weight: 500 !important;
  text-decoration: none !important;
  background: var(--tgp-surface) !important;
  border: 1px solid var(--tgp-border) !important;
  color: var(--tgp-text-dim) !important;
  transition: background var(--tgp-dur-1) var(--tgp-ease) !important;
}

.tgp-orders-pagination .page-numbers.current,
.tgp-orders-pagination .page-numbers a:hover {
  background: rgba(147, 51, 234, 0.15) !important;
  color: #c084fc !important;
  border-color: rgba(147, 51, 234, 0.3) !important;
}

.tgp-empty-state--orders {
  border-radius: var(--tgp-r-xl);
}

/* ══════════════════════════════════════════════════════════════════
 * VIEW ORDER — custom template (.tgp-view-order)
 * ════════════════════════════════════════════════════════════════*/

.tgp-view-order__grid {
  display: grid;
  grid-template-columns: 1fr 280px;
  gap: 20px;
  align-items: start;
}
@media (max-width: 780px) {
  /* Promote both columns' children to direct flex items of the grid so the
     "Follow producers" card (which lives in the sidebar on desktop) can be
     re-ordered to sit right above the review section on mobile. */
  .tgp-view-order__grid {
    display: flex !important;
    flex-direction: column;
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .tgp-view-order__main,
  .tgp-view-order__side {
    display: contents;
  }
  /* Order map (lower = higher in stack):
     1  Items + totals
     2  Files & documents
     3  Order meta (date / payment / email)
     4  Billing address
     5  Actions (Pay / Cancel — when present)
     6  Follow producers   ← moved above review on mobile
     7  Review slot
     8  Order notes
  */
  .tgp-view-order__main > .tgp-card:first-child { order: 1; }
  .tgp-view-order__main > .tgp-vo-files-card    { order: 2; }
  .tgp-view-order__side > .tgp-vo-meta          { order: 3; margin-bottom: 0 !important; }
  .tgp-view-order__side > .tgp-vo-address       { order: 4; margin-bottom: 0 !important; }
  .tgp-view-order__main > .tgp-vo-actions       { order: 5; }
  .tgp-view-order__side > .tgp-vo-follow-card--side { order: 6; margin: 0 !important; }
  .tgp-view-order__main > .tgp-vo-review-slot   { order: 7; }
  .tgp-view-order__main > .tgp-vo-notes         { order: 8; }
}

/* View order — mobile: stay inside My Account column (real cards: radius + borders preserved) */
@media (max-width: 640px) {
  body.woocommerce-account .woocommerce-MyAccount-content .tgp-view-order .tgp-view-order__grid {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
  }

  body.woocommerce-account .woocommerce-MyAccount-content .tgp-view-order .tgp-card,
  body.woocommerce-account .woocommerce-MyAccount-content .tgp-view-order .tgp-vo-meta,
  body.woocommerce-account .woocommerce-MyAccount-content .tgp-view-order .tgp-vo-address,
  body.woocommerce-account .woocommerce-MyAccount-content .tgp-view-order .tgp-vo-follow-card--side {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
  }

  body.woocommerce-account .woocommerce-MyAccount-content .tgp-view-order .tgp-vo-actions {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
  }

  body.woocommerce-account .woocommerce-MyAccount-content .tgp-view-order .tgp-vo-item,
  body.woocommerce-account .woocommerce-MyAccount-content .tgp-view-order .tgp-vo-file {
    min-width: 0;
    box-sizing: border-box;
  }

  /* Align file actions with card padding (overrides global `.tgp-vo-file__btns { padding-left: 58px }`) */
  body.woocommerce-account .woocommerce-MyAccount-content .tgp-view-order .tgp-vo-file__btns {
    padding-left: 0 !important;
    width: 100%;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 8px;
  }
}

/* Items list */
.tgp-vo-items { padding: 0 22px; }
.tgp-vo-item {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 12px 0;
  border-bottom: 1px solid rgba(255,255,255,0.06);
}
.tgp-vo-item:last-child { border-bottom: none; }
.tgp-vo-item__img {
  width: 48px; height: 48px;
  border-radius: 8px;
  object-fit: cover;
  flex-shrink: 0;
}
.tgp-vo-item__img--empty {
  background: #27272A;
  color: #52525B;
  display: flex; align-items: center; justify-content: center;
}
.tgp-vo-item__body { flex: 1; min-width: 0; }
.tgp-vo-item__name {
  font-size: 15px !important;
  font-weight: 700 !important;
  letter-spacing: -0.01em !important;
  color: #FAFAFA !important;
  text-decoration: none !important;
  display: block !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  line-height: 1.25 !important;
}
.tgp-vo-item__name:hover { color: #c084fc !important; }
.tgp-vo-item__qty { font-size: 12px; color: #71717A; }
.tgp-vo-item__vendor {
  display: inline-block;
  margin-top: 3px;
  font-size: 11.5px;
  font-weight: 500;
  color: #6b6b73;
  text-decoration: none;
  max-width: 100%;
  overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
  transition: color 130ms;
}
a.tgp-vo-item__vendor:hover { color: #A1A1AA; }
.tgp-vo-item__price { font-size: 14px; font-weight: 700; color: #F4F4F5; white-space: nowrap; }

/* Totals strip */
.tgp-vo-totals {
  padding: 0 22px 16px;
  border-top: 1px solid rgba(255,255,255,0.06);
  margin-top: 0;
}
.tgp-vo-total-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 8px 0;
  font-size: 13px;
  color: #A1A1AA;
  font-family: 'Inter', sans-serif;
}
.tgp-vo-total-row.is-grand {
  font-size: 16px;
  font-weight: 800;
  color: #F4F4F5;
  border-top: 1px solid rgba(255,255,255,0.08);
  padding-top: 12px;
  margin-top: 4px;
}

/* Actions */
.tgp-vo-actions { display: flex; gap: 10px; margin-top: 16px; flex-wrap: wrap; }

/* Notes */
.tgp-vo-note-list { list-style: none; margin: 0; padding: 16px 22px; }
.tgp-vo-note-list li { padding: 10px 0; border-bottom: 1px solid rgba(255,255,255,0.06); }
.tgp-vo-note-list li:last-child { border-bottom: none; }
.tgp-vo-note__text { font-size: 13.5px; color: #A1A1AA; margin: 0 0 4px; }
.tgp-vo-note__time { font-size: 11px; color: #52525B; margin: 0; }

/* Sidebar cards */
.tgp-vo-meta, .tgp-vo-address {
  background: #111113 !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
  border-radius: 12px !important;
  margin-bottom: 14px !important;
}
.tgp-vo-meta__row {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding: 12px 18px;
  border-bottom: 1px solid rgba(255,255,255,0.06);
}
.tgp-vo-meta__row:last-child { border-bottom: none; }
.tgp-vo-meta__k { font-size: 11px; font-weight: 600; letter-spacing: 0.07em; text-transform: uppercase; color: #52525B; }
.tgp-vo-meta__v { font-size: 13.5px; font-weight: 500; color: #F4F4F5; }
.tgp-vo-address { padding: 16px 18px !important; }
.tgp-vo-address__label { font-size: 11px; font-weight: 700; letter-spacing: 0.07em; text-transform: uppercase; color: #52525B; margin: 0 0 10px; }
.tgp-vo-address address { font-style: normal; font-size: 13.5px; color: #A1A1AA; line-height: 1.75; margin: 0; }

/* ── View Order — Files & documents card (parity with thank-you ④) ── */
.tgp-vo-files-card { margin-top: 16px !important; }
.tgp-vo-files-card .tgp-card__head {
  display: flex; align-items: center; justify-content: space-between; gap: 12px;
}
.tgp-vo-files {
  list-style: none; margin: 0; padding: 8px 0;
  display: flex; flex-direction: column;
}
.tgp-vo-file {
  display: flex; align-items: center; gap: 14px;
  padding: 12px 22px;
  border-bottom: 1px solid rgba(255,255,255,0.06);
}
.tgp-vo-file:last-child { border-bottom: none; }
.tgp-vo-file__art {
  width: 44px; height: 44px; border-radius: 8px; flex: 0 0 44px;
  object-fit: cover; background: #18181B;
  border: 1px solid rgba(255,255,255,0.08);
  display: inline-flex; align-items: center; justify-content: center;
  color: #71717A;
}
.tgp-vo-file__art--ph svg, .tgp-vo-file__art--pdf svg { color: #71717A; }
.tgp-vo-file__art--pdf {
  background: rgba(192, 132, 252, 0.10);
  border-color: rgba(192, 132, 252, 0.25);
  color: #c084fc;
}
.tgp-vo-file__art--pdf svg { color: #c084fc; }
.tgp-vo-file__body { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.tgp-vo-file__name {
  font-size: 14px; font-weight: 600; color: #F4F4F5;
  overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.tgp-vo-file__sub { font-size: 12px; color: #71717A; }
.tgp-vo-file__btns { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; }
.tgp-vo-file__btns .tgp-btn { display: inline-flex; align-items: center; gap: 6px; }
.tgp-vo-file__btns .tgp-btn svg { display: inline-block; }
@media (max-width: 640px) {
  .tgp-vo-file { flex-wrap: wrap; padding: 12px 16px; }
  .tgp-vo-file__btns { width: 100%; padding-left: 58px; }
}

/* ── View Order — Producers Follow card (parity with thank-you "Follow") ── */
.tgp-vo-follow-card { margin-top: 16px !important; }
.tgp-vo-follow {
  list-style: none; margin: 0; padding: 8px 0;
  display: flex; flex-direction: column;
}
.tgp-vo-follow__item {
  display: flex; align-items: center; gap: 14px;
  padding: 12px 22px;
  border-bottom: 1px solid rgba(255,255,255,0.06);
}
.tgp-vo-follow__item:last-child { border-bottom: none; }
.tgp-vo-follow__avatar {
  width: 40px; height: 40px; border-radius: 50%; flex: 0 0 40px;
  object-fit: cover; background: #18181B;
  border: 1px solid rgba(255,255,255,0.08);
  display: inline-flex; align-items: center; justify-content: center;
  color: #71717A;
}
.tgp-vo-follow__body { flex: 1; min-width: 0; }
.tgp-vo-follow__name {
  font-size: 14px; font-weight: 600; color: #F4F4F5;
  text-decoration: none;
  overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
  display: block;
}
.tgp-vo-follow__name:hover { color: #c084fc; }
.tgp-vo-follow__hint {
  font-size: 12px; color: #A1A1AA; margin: 8px 22px 14px;
}

/* ── View Order — Producers Follow card (sidebar / compact variant) ── */
.tgp-vo-follow-card--side {
  padding: 14px 16px !important;
  margin-top: 0 !important;
  margin-bottom: 14px !important;
  background: #111113 !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
  border-radius: 12px !important;
}
.tgp-vo-follow-card--side .tgp-vo-follow__label {
  font-size: 11px; font-weight: 700; letter-spacing: 0.07em;
  text-transform: uppercase; color: #52525B; margin: 0 0 10px;
}
.tgp-vo-follow-card--side .tgp-vo-follow {
  padding: 0;
}
.tgp-vo-follow-card--side .tgp-vo-follow__item {
  padding: 8px 0; gap: 10px;
  border-bottom: 1px solid rgba(255,255,255,0.05);
}
.tgp-vo-follow-card--side .tgp-vo-follow__item:first-child { padding-top: 0; }
.tgp-vo-follow-card--side .tgp-vo-follow__item:last-child {
  padding-bottom: 0; border-bottom: none;
}
.tgp-vo-follow-card--side .tgp-vo-follow__avatar {
  width: 32px; height: 32px; flex: 0 0 32px;
}
.tgp-vo-follow-card--side .tgp-vo-follow__name { font-size: 13px; }
.tgp-vo-follow-card--side .tgp-vo-follow__hint {
  margin: 10px 0 0; font-size: 11px; line-height: 1.45;
}
.tgp-vo-follow-card--side .tgp-ty4-followbtn,
body .tgp-vo-follow-card--side .tgp-ty4-followbtn {
  padding: 6px 12px !important;
  font-size: 11.5px !important;
}

/* ── View Order — Follow / Following pill ───────────────────────────
 * Mirrors the thank-you page rules so the theme's `.button` /
 * `.tgp-btn--primary` styles cannot win on the view-order page.
 * Scoped to `.tgp-vo-follow-card` so the thank-you page (which loads
 * thankyou-saas.css with its own copy) is unaffected.
 * ─────────────────────────────────────────────────────────────── */
.tgp-vo-follow-card .tgp-ty4-followbtn,
body .tgp-vo-follow-card .tgp-ty4-followbtn,
body .tgp-vo-follow-card .tgp-ty4-followbtn.button {
  flex-shrink: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 8px 18px !important;
  border-radius: 999px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  font-family: 'Inter', -apple-system, system-ui, sans-serif !important;
  letter-spacing: -0.01em !important;
  line-height: 1 !important;
  cursor: pointer !important;
  border: 1px solid rgba(255, 255, 255, 0.14) !important;
  background: rgba(255, 255, 255, 0.07) !important;
  color: #f4f4f6 !important;
  text-transform: none !important;
  white-space: nowrap !important;
  box-shadow: none !important;
  text-shadow: none !important;
  transition: background 130ms, border-color 130ms, color 130ms, transform 130ms !important;
  min-height: 0 !important;
  height: auto !important;
}
.tgp-vo-follow-card .tgp-ty4-followbtn:hover,
body .tgp-vo-follow-card .tgp-ty4-followbtn:hover {
  background: rgba(255, 255, 255, 0.13) !important;
  border-color: rgba(255, 255, 255, 0.26) !important;
  color: #fff !important;
  transform: translateY(-1px) !important;
  box-shadow: none !important;
}
.tgp-vo-follow-card .tgp-ty4-followbtn.is-following,
body .tgp-vo-follow-card .tgp-ty4-followbtn.is-following {
  background: rgba(74, 222, 128, 0.10) !important;
  border-color: rgba(74, 222, 128, 0.25) !important;
  color: #4ade80 !important;
}
.tgp-vo-follow-card .tgp-ty4-followbtn.is-following:hover,
body .tgp-vo-follow-card .tgp-ty4-followbtn.is-following:hover {
  background: rgba(74, 222, 128, 0.16) !important;
  border-color: rgba(74, 222, 128, 0.40) !important;
  color: #4ade80 !important;
}
.tgp-vo-follow-card .tgp-ty4-followbtn:disabled,
body .tgp-vo-follow-card .tgp-ty4-followbtn:disabled {
  opacity: 0.4 !important;
  cursor: default !important;
  transform: none !important;
}

/* ── View Order — Review slot (fired via woocommerce_order_details_after_order_table) ── */
.tgp-vo-review-slot { display: flex; flex-direction: column; gap: 12px; }
.tgp-vo-review-slot:not(:empty) {
  margin-top: 40px;
  padding-top: 32px;
  border-top: 1px solid rgba(255,255,255,0.08);
}
.tgp-vo-review-slot:empty { display: none; }

.tgp-vo-review-collapsible { margin-top: 16px !important; }
.tgp-vo-review-collapsible__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}
.tgp-vo-review-collapsible__gc {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 10px 4px 8px;
  border-radius: 999px;
  background: linear-gradient(135deg, rgba(168,85,247,0.18), rgba(99,102,241,0.18));
  border: 1px solid rgba(168,85,247,0.32);
  color: #E9D5FF;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.01em;
  white-space: nowrap;
}
.tgp-vo-review-collapsible__gc-ico { font-size: 14px; line-height: 1; }
.tgp-vo-review-collapsible__lead-copy {
  margin: 0;
  padding: 0 22px 12px;
  color: #A1A1AA;
  font-size: 12.5px;
  line-height: 1.55;
}
.tgp-vo-review-collapsible__pill {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 3px 9px;
  border-radius: 999px;
  font-size: 11.5px;
  font-weight: 700;
  letter-spacing: 0.01em;
  white-space: nowrap;
  flex: 0 0 auto;
}
.tgp-vo-review-collapsible__pill.is-done {
  background: rgba(34,197,94,0.16);
  border: 1px solid rgba(34,197,94,0.34);
  color: #86EFAC;
}
.tgp-vo-review-collapsible__pill.is-earn {
  background: rgba(168,85,247,0.16);
  border: 1px solid rgba(168,85,247,0.32);
  color: #E9D5FF;
}
.tgp-vo-review-collapsible__pill.is-bonus {
  background: linear-gradient(135deg, rgba(250,204,21,0.22), rgba(168,85,247,0.22));
  border: 1px solid rgba(250,204,21,0.42);
  color: #FDE68A;
  box-shadow: 0 0 0 1px rgba(250,204,21,0.10), 0 4px 14px -8px rgba(250,204,21,0.55);
  padding-right: 4px;
}
.tgp-vo-review-collapsible__pill-tag {
  display: inline-flex;
  align-items: center;
  padding: 1px 6px;
  border-radius: 999px;
  background: rgba(250,204,21,0.22);
  color: #FEF3C7;
  font-size: 9.5px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  margin-left: 2px;
}
.tgp-vo-review-collapsible__list {
  display: flex;
  flex-direction: column;
  padding: 4px 0 6px;
}
.tgp-vo-review-collapsible__item {
  border-bottom: 1px solid rgba(255,255,255,0.06);
}
.tgp-vo-review-collapsible__item:last-child { border-bottom: none; }
.tgp-vo-review-collapsible__summary {
  list-style: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 14px 22px;
  user-select: none;
}
.tgp-vo-review-collapsible__summary::-webkit-details-marker { display: none; }
.tgp-vo-review-collapsible__summary::marker { display: none; }
.tgp-vo-review-collapsible__lead {
  min-width: 0;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 13.5px;
  font-weight: 600;
  color: #F4F4F5;
  flex: 1 1 auto;
  overflow: hidden;
  text-overflow: ellipsis;
}
.tgp-vo-review-collapsible__lead img {
  width: 30px;
  height: 30px;
  border-radius: 6px;
  border: 1px solid rgba(255,255,255,0.08);
  object-fit: cover;
  flex: 0 0 auto;
}
.tgp-vo-review-collapsible__lead > span:not(img) {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.tgp-vo-review-collapsible__chev {
  display: inline-flex;
  align-items: center;
  color: #71717A;
  flex: 0 0 auto;
  transition: transform 0.18s ease;
}
.tgp-vo-review-collapsible__item[open] .tgp-vo-review-collapsible__chev {
  transform: rotate(180deg);
  color: #A1A1AA;
}
.tgp-vo-review-collapsible__body {
  padding: 4px 18px 14px;
}
/* The TGP_Custom_Ordering review form ships its own giant heading and
 * incentive card. Inside our collapsible per-track wrapper that's
 * redundant (the summary already names the track) so we collapse the
 * head, ditch the lead/info copy, and tuck the form flush with the
 * card edges. */
.tgp-vo-review-collapsible__body .tgpco-wc-review-section { margin: 0 !important; padding: 0 !important; border: none !important; box-shadow: none !important; background: transparent !important; }
.tgp-vo-review-collapsible__body .tgpco-wc-review__panel { padding: 0 !important; background: transparent !important; border: none !important; box-shadow: none !important; }
.tgp-vo-review-collapsible__body .tgpco-wc-review__head,
.tgp-vo-review-collapsible__body .tgpco-wc-review__lead,
.tgp-vo-review-collapsible__body .tgpco-wc-review__incentive { display: none !important; }
.tgp-vo-review-collapsible__body .tgpco-wc-review__body { padding: 0 !important; }
.tgp-vo-review-collapsible__body .tgpco-track-review-item { background: rgba(255,255,255,0.02); border: 1px solid rgba(255,255,255,0.06); border-radius: 10px; padding: 12px 14px; margin: 0; }

/* ── View Order — Review form layout fixes ────────────────────────────
 * The buyerapp review form (`.tgpco-wc-review-section--thankyou
 * --buyerapp`) was designed for the full-width thank-you shell. In the
 * narrower view-order column the head row, panel padding and form
 * spacing all need tightening. Scoped to `.tgp-vo-review-slot` so the
 * thank-you page is unaffected.
 * ───────────────────────────────────────────────────────────────── */

.tgp-vo-review-slot .tgpco-wc-review-section--buyerapp {
  margin: 0 !important;
  padding: 0 !important;
}

/* Header lives at the top of the dark panel — give it its own breathing
 * room and a soft divider before the track row begins. */
.tgp-vo-review-slot .tgpco-wc-review__head--buyerapp {
  display: block !important;
  text-align: left !important;
  margin: 0 !important;
  padding: 22px 22px 18px !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.06) !important;
}
@media (min-width: 600px) {
  .tgp-vo-review-slot .tgpco-wc-review__head--buyerapp {
    padding: 26px 26px 20px !important;
  }
}
.tgp-vo-review-slot .tgpco-wc-review__head-row {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
  margin: 0 0 10px !important;
}
.tgp-vo-review-slot .tgpco-wc-review__head--buyerapp .tgpco-wc-review__title {
  margin: 0 !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  letter-spacing: -0.02em !important;
  line-height: 1.2 !important;
  color: #FAFAFA !important;
}
.tgp-vo-review-slot .tgpco-wc-review__gc-pill {
  padding: 3px 9px !important;
  font-size: 10.5px !important;
  border-radius: 999px !important;
}
.tgp-vo-review-slot .tgpco-wc-review-section--buyerapp .tgpco-wc-review__buyerapp-sub {
  display: block !important;
  width: 100% !important;
  text-align: left !important;
  margin: 0 !important;
  font-size: 13px !important;
  line-height: 1.5 !important;
  color: #A1A1AA !important;
}

/* Dark panel surface — tighter padding for a narrower column. */
.tgp-vo-review-slot .tgpco-wc-review-section--buyerapp .tgpco-wc-review__panel {
  padding: 0 !important;
  border-radius: 14px !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  background: #0f0f12 !important;
  overflow: hidden !important;
}
.tgp-vo-review-slot .tgpco-wc-review-section--buyerapp .tgpco-track-review-list {
  padding: 0 !important;
}
.tgp-vo-review-slot .tgpco-wc-review-section--buyerapp .tgpco-track-review-item.tgpco-track-review-card--buyerapp {
  padding: 18px 18px 22px !important;
}
@media (min-width: 600px) {
  .tgp-vo-review-slot .tgpco-wc-review-section--buyerapp .tgpco-track-review-item.tgpco-track-review-card--buyerapp {
    padding: 22px 24px 26px !important;
  }
}

/* "Earn N Ghost Coins for reviewing" per-card badge is redundant whenever
 * the buyerapp header is shown — the same number lives in the header pill
 * (`Earn up to N GC`). Hide it on the view-order page AND on the
 * order-received / thank-you page. */
.tgp-vo-review-slot .tgpco-wc-review__gc-badge,
.tgpco-wc-review-section--thankyou .tgpco-wc-review__gc-badge,
.tgpco-wc-review-section--buyerapp .tgpco-wc-review__gc-badge { display: none !important; }

/* Field labels: keep centered (matches thank-you), tighten margins. */
.tgp-vo-review-slot .tgpco-wc-review-section--buyerapp .tgpco-wc-review-field {
  margin-bottom: 14px !important;
}
.tgp-vo-review-slot .tgpco-wc-review-section--buyerapp .tgpco-wc-review__field-label {
  margin: 0 0 8px !important;
  font-size: 11px !important;
}

/* Star rating box — tighter on narrow column. */
.tgp-vo-review-slot .tgpco-wc-review-section--buyerapp .tgpco-star-rating-container--boxed {
  padding: 12px 14px !important;
  border-radius: 10px !important;
}
.tgp-vo-review-slot .tgpco-wc-review-section--buyerapp .tgpco-star-rating,
.tgp-vo-review-slot .tgpco-wc-review-section--buyerapp .tgpco-star-rating-edit {
  font-size: 24px !important;
  gap: 3px !important;
}

/* Textarea — fit narrower column. */
.tgp-vo-review-slot .tgpco-wc-review-section--buyerapp .tgpco-wc-review__textarea {
  min-height: 96px !important;
  font-size: 13.5px !important;
  padding: 11px 12px !important;
  border-radius: 10px !important;
}

/* "Display name as" preview block — softer, tighter. */
.tgp-vo-review-slot .tgpco-wc-review-section--buyerapp .tgpco-wc-review-field--name,
.tgp-vo-review-slot .tgpco-wc-review-section--buyerapp .tgpco-name-preview-card {
  border-radius: 10px !important;
}

/* Submit button — keep the purple gradient but tighten paddings. */
.tgp-vo-review-slot .tgpco-wc-review-section--buyerapp .tgpco-wc-review__submit,
.tgp-vo-review-slot .tgpco-wc-review-section--buyerapp button[type="submit"].tgpco-wc-review__submit {
  margin-top: 6px !important;
  padding: 12px 22px !important;
  font-size: 14px !important;
  border-radius: 999px !important;
}

/* Track header inside the card (cover + title + purchased date). */
.tgp-vo-review-slot .tgpco-wc-review-section--buyerapp .tgpco-track-review-card__head,
.tgp-vo-review-slot .tgpco-wc-review-section--buyerapp .tgpco-track-review-card-buyerapp__header {
  gap: 12px !important;
  margin-bottom: 16px !important;
  padding-bottom: 14px !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.06) !important;
}

/* ══════════════════════════════════════════════════════════════════
 * CART PAGE
 * ────────────────────────────────────────────────────────────────
 * Cart layout/surfaces are defined in cart-saas.css (`.tgp-cart-v3`).
 *
 * IMPORTANT: Never use `body.woocommerce-cart .woocommerce { … large padding … }`
 * here — many Elementor header widgets wrap the mini-cart in a `.woocommerce`
 * root. That leaked rule was stretching the fixed header rail and vertically
 * offsetting the cart icon.
 * ══════════════════════════════════════════════════════════════════*/

/* ══════════════════════════════════════════════════════════════════
 * CHECKOUT PAGE — see assets/css/checkout-saas.css for the full layout.
 * Nothing here can leak to header / Sonaar / Elementor anymore.
 * ════════════════════════════════════════════════════════════════*/

/* ══════════════════════════════════════════════════════════════════
 * ORDER RECEIVED
 * ════════════════════════════════════════════════════════════════*/

/* Legacy thank-you (no v4 shell): main column only — never header `.woocommerce`. */
body.woocommerce-order-received main .woocommerce:not(:has(.tgp-thankyou-v4)),
body.woocommerce-order-received #content .woocommerce:not(:has(.tgp-thankyou-v4)) {
  max-width: 780px; margin: 0 auto;
  padding: clamp(16px,3vw,36px) clamp(12px,3vw,24px) 80px;
}
/* TGP thank-you v4 — full width + transparent; vertical padding lives in thankyou-saas.css
   (padding:0 here was killing top spacing and let content sit under the masthead). */
body.woocommerce-order-received .woocommerce:has(.tgp-thankyou-v4) {
  max-width: 100% !important;
  margin: 0 auto !important;
  background: transparent !important;
}
body.woocommerce-order-received .woocommerce-order {
  background: #111113 !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
  border-radius: 16px !important;
  padding: 36px !important;
}
body.woocommerce-order-received .woocommerce-thankyou-order-received {
  font-family: 'Inter', sans-serif !important;
  font-size: 24px !important; font-weight: 800 !important;
  color: #F4F4F5 !important; letter-spacing: -0.025em !important; margin: 0 0 6px !important;
}
body.woocommerce-order-received .woocommerce-order-overview {
  display: flex !important; flex-wrap: wrap !important; gap: 10px !important;
  list-style: none !important; margin: 20px 0 28px !important; padding: 0 !important;
}
body.woocommerce-order-received .woocommerce-order-overview li {
  background: #18181B !important; border: 1px solid rgba(255,255,255,0.08) !important;
  border-radius: 10px !important; padding: 13px 18px !important; flex: 1 1 150px !important;
  font-family: 'Inter', sans-serif !important; font-size: 12px !important; color: #71717A !important;
}
body.woocommerce-order-received .woocommerce-order-overview li strong {
  display: block !important; font-size: 14px !important; font-weight: 700 !important;
  color: #F4F4F5 !important; margin-top: 4px !important;
}
body.woocommerce-order-received h2 {
  font-family: 'Inter', sans-serif !important; font-size: 12px !important; font-weight: 700 !important;
  letter-spacing: 0.08em !important; text-transform: uppercase !important;
  color: #52525B !important; margin: 24px 0 12px !important;
}
body.woocommerce-order-received .woocommerce-customer-details address {
  background: #18181B !important; border: 1px solid rgba(255,255,255,0.08) !important;
  border-radius: 10px !important; padding: 16px 18px !important; font-style: normal !important;
  font-size: 13.5px !important; color: #A1A1AA !important; line-height: 1.7 !important;
}
body.woocommerce-order-received table.woocommerce-table--order-details {
  background: #111113 !important; border: 1px solid rgba(255,255,255,0.08) !important;
  border-radius: 12px !important; overflow: hidden !important; border-collapse: separate !important;
  border-spacing: 0 !important; width: 100% !important;
}
body.woocommerce-order-received table.woocommerce-table--order-details th {
  background: #18181B !important; color: #52525B !important; font-size: 10px !important;
  font-weight: 700 !important; letter-spacing: 0.09em !important; text-transform: uppercase !important;
  padding: 12px 16px !important; border-bottom: 1px solid rgba(255,255,255,0.08) !important;
  font-family: 'Inter', sans-serif !important;
}
body.woocommerce-order-received table.woocommerce-table--order-details td {
  padding: 13px 16px !important; border-bottom: 1px solid rgba(255,255,255,0.06) !important;
  font-family: 'Inter', sans-serif !important; font-size: 13.5px !important;
  color: #F4F4F5 !important; background: transparent !important;
}

/* Thank-you — downloads block (hook output) */
body.woocommerce-order-received .tgp-thankyou-panel {
  margin: 20px 0 8px !important;
  padding: 18px !important;
  border-radius: 12px !important;
  border: 1px solid rgba(255,255,255,0.1) !important;
  background: #18181b !important;
}
body.woocommerce-order-received .tgp-thankyou-panel__title {
  margin: 0 0 12px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #f4f4f5 !important;
}
body.woocommerce-order-received .tgp-thankyou-panel__list {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
body.woocommerce-order-received .tgp-thankyou-panel__item {
  margin: 0 0 8px !important;
}
body.woocommerce-order-received .tgp-thankyou-panel__link {
  color: #c084fc !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  word-break: break-word !important;
}
body.woocommerce-order-received .tgp-thankyou-panel__hint {
  margin: 12px 0 0 !important;
  font-size: 12px !important;
  color: #71717a !important;
}

/* ══════════════════════════════════════════════════════════════════
 * MY ACCOUNT — INNER PAGES (generic content area)
 * ════════════════════════════════════════════════════════════════*/

.woocommerce-MyAccount-content {
  font-family: 'Inter', sans-serif !important;
  color: #F4F4F5 !important;
  min-width: 0 !important;
}
.woocommerce-MyAccount-content > p,
.woocommerce-MyAccount-content p {
  font-family: 'Inter', sans-serif !important;
  color: #A1A1AA !important;
  font-size: 13.5px !important;
  line-height: 1.65 !important;
}
.woocommerce-MyAccount-content h2,
.woocommerce-MyAccount-content h3,
.woocommerce-MyAccount-content h4 {
  font-family: 'Inter', sans-serif !important;
  font-weight: 700 !important;
  letter-spacing: -0.01em !important;
  color: #F4F4F5 !important;
}

/* Inner page tables (orders, addresses, payment methods, etc.) */
.woocommerce-MyAccount-content .woocommerce-table,
.woocommerce-MyAccount-content table.shop_table,
.woocommerce-MyAccount-content table.woocommerce-orders-table {
  background: #111113 !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  width: 100% !important;
  box-shadow: 0 4px 16px rgba(0,0,0,0.30) !important;
}
.woocommerce-MyAccount-content .woocommerce-table th,
.woocommerce-MyAccount-content table.shop_table th,
.woocommerce-MyAccount-content table.woocommerce-orders-table th {
  background: #18181B !important;
  color: #52525B !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 10px !important; font-weight: 700 !important;
  letter-spacing: 0.09em !important; text-transform: uppercase !important;
  padding: 12px 16px !important;
  border-bottom: 1px solid rgba(255,255,255,0.08) !important;
}
.woocommerce-MyAccount-content .woocommerce-table td,
.woocommerce-MyAccount-content table.shop_table td,
.woocommerce-MyAccount-content table.woocommerce-orders-table td {
  padding: 13px 16px !important;
  border-bottom: 1px solid rgba(255,255,255,0.06) !important;
  color: #F4F4F5 !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 13px !important;
  vertical-align: middle !important;
  background: transparent !important;
}
.woocommerce-MyAccount-content .woocommerce-table tr:last-child td,
.woocommerce-MyAccount-content table.shop_table tr:last-child td { border-bottom: none !important; }
.woocommerce-MyAccount-content .woocommerce-table tr:hover td,
.woocommerce-MyAccount-content table.shop_table tr:hover td { background: rgba(255,255,255,0.02) !important; }

/* Order number links */
.woocommerce-orders-table__cell-order-number a { color: #c084fc !important; font-weight: 700 !important; text-decoration: none !important; }
.woocommerce-orders-table__cell-order-number a:hover { color: #d8b4fe !important; }

/* ── Status marks inside tables ─── */
.woocommerce-MyAccount-content mark.order-status,
.woocommerce-MyAccount-content .wc-item-meta mark {
  font-family: 'Inter', sans-serif !important; font-size: 11px !important;
  font-weight: 600 !important; letter-spacing: 0.03em !important;
  padding: 3px 10px !important; border-radius: 999px !important;
  display: inline-block !important; background-color: transparent !important;
}
.woocommerce-MyAccount-content mark.order-status.status-completed { background: rgba(16,185,129,0.12) !important; color: #10B981 !important; }
.woocommerce-MyAccount-content mark.order-status.status-processing { background: rgba(96,165,250,0.12) !important; color: #60a5fa !important; }
.woocommerce-MyAccount-content mark.order-status.status-pending { background: rgba(245,158,11,0.12) !important; color: #F59E0B !important; }
.woocommerce-MyAccount-content mark.order-status.status-on-hold { background: rgba(245,158,11,0.12) !important; color: #F59E0B !important; }
.woocommerce-MyAccount-content mark.order-status.status-cancelled,
.woocommerce-MyAccount-content mark.order-status.status-failed,
.woocommerce-MyAccount-content mark.order-status.status-refunded { background: rgba(239,68,68,0.12) !important; color: #EF4444 !important; }

/* Addresses */
.woocommerce-MyAccount-content .woocommerce-Addresses {
  display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 18px !important;
}
@media (max-width: 640px) { .woocommerce-MyAccount-content .woocommerce-Addresses { grid-template-columns: 1fr !important; } }
.woocommerce-MyAccount-content .woocommerce-Address {
  background: #111113 !important; border: 1px solid rgba(255,255,255,0.08) !important;
  border-radius: 12px !important; padding: 20px 22px !important;
}
.woocommerce-MyAccount-content .woocommerce-Address-title {
  display: flex !important; align-items: center !important;
  justify-content: space-between !important; margin-bottom: 12px !important;
}
.woocommerce-MyAccount-content .woocommerce-Address-title h3 {
  font-size: 11px !important; font-weight: 700 !important; letter-spacing: 0.08em !important;
  text-transform: uppercase !important; color: #52525B !important; margin: 0 !important;
}
.woocommerce-MyAccount-content .woocommerce-Address-title .edit {
  font-size: 12px !important; color: #9333EA !important; text-decoration: none !important;
}
.woocommerce-MyAccount-content .woocommerce-Address address {
  font-style: normal !important; font-size: 13.5px !important;
  color: #A1A1AA !important; line-height: 1.75 !important;
}

/* Profile photo — Account details (same avatar meta as buyer + seller mobile apps) */
.woocommerce-MyAccount-content fieldset.tgp-account-avatar {
  margin-bottom: 24px !important;
}
.tgp-account-avatar__inner {
  display: flex !important; align-items: flex-start !important; gap: 20px !important;
  flex-wrap: wrap !important;
}
.tgp-account-avatar__preview {
  flex-shrink: 0 !important;
  width: 96px !important; height: 96px !important;
  border-radius: 50% !important; overflow: hidden !important;
  border: 2px solid rgba(255,255,255,0.12) !important;
  background: #0a0a0c !important;
}
.tgp-account-avatar__img {
  width: 100% !important; height: 100% !important;
  object-fit: cover !important; display: block !important;
}
.tgp-account-avatar__placeholder {
  display: flex !important; align-items: center !important; justify-content: center !important;
  width: 100% !important; height: 100% !important;
  font-family: 'Inter', sans-serif !important; font-size: 28px !important; font-weight: 700 !important;
  letter-spacing: 0.02em !important; color: #C4B5FD !important;
  background: linear-gradient(145deg, rgba(147,51,234,0.35) 0%, rgba(24,24,27,0.95) 100%) !important;
  user-select: none !important;
}
.tgp-account-avatar__controls { flex: 1 !important; min-width: 200px !important; }
.tgp-account-avatar__label {
  display: inline-block !important; cursor: pointer !important;
  font-size: 13px !important; font-weight: 600 !important;
  padding: 10px 18px !important; margin-bottom: 10px !important;
  border-radius: 10px !important;
  background: rgba(147,51,234,0.15) !important; color: #E9D5FF !important;
  border: 1px solid rgba(147,51,234,0.35) !important;
}
.tgp-account-avatar__input {
  position: absolute !important; width: 0.01px !important; height: 0.01px !important;
  opacity: 0 !important; overflow: hidden !important; z-index: -1 !important;
}
.tgp-account-avatar .tgp-account-avatar__controls:focus-within .tgp-account-avatar__label {
  outline: 2px solid rgba(147,51,234,0.5) !important; outline-offset: 2px !important;
}
.tgp-account-avatar__hint {
  font-size: 12px !important; color: #71717A !important; margin: 0 0 8px !important; line-height: 1.5 !important;
}
.tgp-account-avatar__status {
  font-size: 12.5px !important; margin: 0 !important; min-height: 1.25em !important;
  color: #A1A1AA !important;
}
.tgp-account-avatar__status.tgp-account-avatar__status--error {
  color: #F87171 !important;
}

/* Fieldsets in edit-account form */
.woocommerce-MyAccount-content fieldset {
  background: #18181B !important; border: 1px solid rgba(255,255,255,0.08) !important;
  border-radius: 12px !important; padding: 20px !important; margin-bottom: 20px !important;
}
.woocommerce-MyAccount-content fieldset legend {
  font-family: 'Inter', sans-serif !important; font-size: 11px !important; font-weight: 700 !important;
  letter-spacing: 0.08em !important; text-transform: uppercase !important;
  color: #52525B !important; padding: 0 10px !important;
}

/* Payment method table action buttons */
.woocommerce-MyAccount-content .woocommerce-PaymentMethods td .button {
  font-size: 11.5px !important; padding: 4px 12px !important;
  background: rgba(255,255,255,0.06) !important; color: #A1A1AA !important;
  box-shadow: none !important; border: 1px solid rgba(255,255,255,0.10) !important;
}
.woocommerce-MyAccount-content .woocommerce-PaymentMethods td .button.delete,
.woocommerce-MyAccount-content .woocommerce-PaymentMethods td .button[aria-label*="delete"],
.woocommerce-MyAccount-content .woocommerce-PaymentMethods td .button[aria-label*="Delete"] {
  background: rgba(239,68,68,0.08) !important; color: #EF4444 !important;
  border-color: rgba(239,68,68,0.20) !important;
}

/* ══════════════════════════════════════════════════════════════════
 * DATATABLES — used by Marketking for Favorite Producers, etc.
 * ════════════════════════════════════════════════════════════════*/

/* Wrapper */
.dataTables_wrapper,
.woocommerce-MyAccount-content .dataTables_wrapper {
  background: transparent !important; color: #F4F4F5 !important;
  font-family: 'Inter', sans-serif !important; padding: 0 !important;
}

/* Filter/search bar */
.dataTables_filter { margin-bottom: 14px !important; }
.dataTables_filter label {
  font-family: 'Inter', sans-serif !important; font-size: 12px !important;
  color: #71717A !important; display: flex !important; align-items: center !important;
  gap: 8px !important; text-transform: none !important; letter-spacing: 0 !important;
}
.dataTables_filter input[type="search"],
.dataTables_filter input {
  background: #18181B !important;
  border: 1px solid rgba(255,255,255,0.12) !important;
  border-radius: 8px !important; color: #F4F4F5 !important;
  font-family: 'Inter', sans-serif !important; font-size: 13px !important;
  padding: 7px 12px !important; width: 200px !important; height: auto !important;
  min-height: unset !important;
}
.dataTables_filter input:focus { border-color: #9333EA !important; box-shadow: 0 0 0 2px rgba(147,51,234,0.18) !important; }

/* Entries selector */
.dataTables_length label {
  font-family: 'Inter', sans-serif !important; font-size: 12px !important;
  color: #71717A !important; display: flex !important; align-items: center !important;
  gap: 8px !important; text-transform: none !important; letter-spacing: 0 !important;
}
.dataTables_length select {
  background: #18181B !important; border: 1px solid rgba(255,255,255,0.12) !important;
  border-radius: 8px !important; color: #F4F4F5 !important; padding: 5px 28px 5px 10px !important;
  font-size: 12px !important; width: auto !important; min-height: unset !important; height: auto !important;
}

/* The table itself */
table.dataTable {
  background: #111113 !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  width: 100% !important;
  font-family: 'Inter', sans-serif !important;
}
table.dataTable thead th,
table.dataTable thead td {
  background: #18181B !important;
  color: #52525B !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 10px !important; font-weight: 700 !important;
  letter-spacing: 0.09em !important; text-transform: uppercase !important;
  padding: 12px 16px !important;
  border-bottom: 1px solid rgba(255,255,255,0.08) !important;
  border-right: none !important;
}
table.dataTable thead th.sorting::after,
table.dataTable thead th.sorting_asc::after,
table.dataTable thead th.sorting_desc::after { color: #52525B !important; }

table.dataTable tbody tr {
  background: transparent !important;
  background-color: transparent !important;
}
table.dataTable tbody tr:hover { background: rgba(255,255,255,0.025) !important; }
table.dataTable tbody tr.odd { background: transparent !important; }
table.dataTable tbody tr.even { background: rgba(255,255,255,0.01) !important; }

table.dataTable tbody td {
  background: transparent !important;
  background-color: transparent !important;
  border-bottom: 1px solid rgba(255,255,255,0.06) !important;
  border-right: none !important;
  border-top: none !important;
  color: #F4F4F5 !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 13px !important;
  padding: 13px 16px !important;
  vertical-align: middle !important;
}
table.dataTable tbody tr:last-child td { border-bottom: none !important; }

/* DataTable info + pagination */
.dataTables_info {
  font-family: 'Inter', sans-serif !important; font-size: 12px !important;
  color: #52525B !important; padding: 12px 0 0 !important;
}
.dataTables_paginate { padding: 12px 0 0 !important; }
.dataTables_paginate .paginate_button {
  background: #18181B !important; border: 1px solid rgba(255,255,255,0.08) !important;
  border-radius: 8px !important; color: #A1A1AA !important;
  font-family: 'Inter', sans-serif !important; font-size: 12px !important;
  padding: 5px 10px !important; margin: 0 2px !important; cursor: pointer !important;
  transition: background 120ms !important;
}
.dataTables_paginate .paginate_button:hover { background: rgba(147,51,234,0.12) !important; color: #c084fc !important; border-color: rgba(147,51,234,0.25) !important; }
.dataTables_paginate .paginate_button.current { background: rgba(147,51,234,0.15) !important; color: #c084fc !important; border-color: rgba(147,51,234,0.30) !important; }
.dataTables_paginate .paginate_button.disabled,
.dataTables_paginate .paginate_button.disabled:hover { background: transparent !important; color: #3F3F46 !important; border-color: transparent !important; }

/* "Following" / action buttons inside DataTable */
table.dataTable .button,
table.dataTable a.button,
.woocommerce-MyAccount-content table.dataTable .button {
  font-size: 11.5px !important; padding: 4px 12px !important;
  background: rgba(255,255,255,0.06) !important; color: #A1A1AA !important;
  box-shadow: none !important; border: 1px solid rgba(255,255,255,0.10) !important;
  transform: none !important;
}
table.dataTable .button:hover { background: rgba(255,255,255,0.12) !important; color: #F4F4F5 !important; transform: none !important; }

/* Favourite producer row images */
table.dataTable td img {
  border-radius: 8px !important; max-width: 44px !important; height: 44px !important;
  object-fit: cover !important;
}

/* MarketKing Favorite producers — FOUC + DataTables overlay */
.dataTables_processing {
  background: #18181b !important;
  color: #a1a1aa !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  border-radius: 10px !important;
  padding: 12px 16px !important;
}

/* Star rating row (DOM replaced by account-mk-favorite.js) */
body.woocommerce-account .tgp-fav-rating-wrap {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
}
body.woocommerce-account .tgp-fav-stars {
  display: inline-flex !important;
  align-items: center !important;
  gap: 2px !important;
  line-height: 1 !important;
}
body.woocommerce-account .tgp-fav-star {
  font-size: 14px !important;
  line-height: 1 !important;
  font-family: system-ui, -apple-system, 'Segoe UI', sans-serif !important;
}
body.woocommerce-account .tgp-fav-star--on {
  color: #fbbf24 !important;
  text-shadow: 0 0 10px rgba(251, 191, 36, 0.2) !important;
}
body.woocommerce-account .tgp-fav-star--off {
  color: #3f3f46 !important;
}
body.woocommerce-account .tgp-fav-rating-num {
  font-size: 12px !important;
  font-weight: 600 !important;
  color: #a1a1aa !important;
  font-variant-numeric: tabular-nums !important;
}

/* ══════════════════════════════════════════════════════════════════
 * GHOST COINS REWARDS HUB — TGP v3 (monochrome design, May 2026)
 *
 * If the rewritten PHP method `endpoint_content()` in
 * woocommerce-reward-points/classes/class-woocommerce-reward-points-my-points.php
 * IS deployed, the page renders inside `<div class="tgp-hub-v2 …">` and
 * picks up the `.tgp-hub-v2__*` rules below.
 *
 * If only the CSS is deployed (PHP file not uploaded yet), the page
 * still falls back to the OLD plugin DOM (`.woocommerce-my-points-bar`,
 * `.woocommerce-my-points-rewards`, etc.). The "FALLBACK FOR OLD DOM"
 * block at the bottom of this section styles that DOM in the same
 * monochrome design language so the page is at least usable until the
 * PHP file is uploaded.
 * ════════════════════════════════════════════════════════════════*/

/* Page wrapper — clean column layout, dark theme. */
body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2 {
  display: flex !important;
  flex-direction: column !important;
  gap: 14px !important;
  background: transparent !important;
  color: #f4f4f5 !important;
  /* Plus Jakarta Sans is enqueued by the rewards plugin (with a system
   * fallback chain) — distinctive, clean modern geometric sans. */
  font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
  padding: 0 !important;
  margin: 0 !important;
  max-width: 100% !important;
}


/* Force the new font onto every nested element — Astra/Hello often set
 * `font-family` on h1/h2/p which would otherwise inherit a different
 * face. */
body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2,
body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2 * {
  font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
}
/* …except monospaced code blocks (coupon codes), which keep a mono face. */
body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2 code,
body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2 .tgp-hub-v2__tier-copy code {
  font-family: 'JetBrains Mono', 'SF Mono', Menlo, Monaco, Consolas, monospace !important;
}

/* Generic section card already exists below, but make sure it doesn't
 * overflow the my-account content column on narrow widths. */
body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2 > * {
  max-width: 100% !important;
  box-sizing: border-box !important;
}

/* Hide ANY legacy plugin output that might still be in DOM (the
 * plugin's heart svg, progress bar, current-level pill, bar-text,
 * etc.). These existed in the OLD endpoint_content() — we keep the
 * rules here as a defensive belt in case a partially-deployed PHP
 * file still emits them. */
body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2 .woocommerce-my-points-bar,
body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2 .woocommerce-my-points-bar-text-below,
body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2 .woocommerce-my-points-current-level-container,
body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2 > svg,
body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2 > progress {
  display: none !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2 .tgp-hub-v2__intro,
body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2 .tgp-hub-v2__outro {
  font-size: 13px !important;
  color: #a1a1aa !important;
  margin: 0 !important;
  line-height: 1.55 !important;
}

/* ─── HERO ─────────────────────────────────────────────────────── */
body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__hero {
  position: relative !important;
  overflow: hidden !important;
  padding: 18px 20px !important;
  border-radius: 14px !important;
  background:
    radial-gradient(circle at 100% 0%, rgba(255, 255, 255, 0.04), transparent 55%),
    linear-gradient(180deg, #15151a 0%, #0d0d10 100%) !important;
  background-color: #0e0e12 !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.35), inset 0 1px 0 rgba(255, 255, 255, 0.03) !important;
  font-family: 'Inter', sans-serif !important;
}

/* Legacy glow div from earlier rev — neutered. We provide ambient
 * lighting via the hero's own background, so the inline <div class="
 * tgp-hub-v2__hero-glow"> doesn't need to do anything. */
body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__hero-glow {
  display: none !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__hero > * {
  position: relative !important;
  z-index: 1 !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__hero-row {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) auto !important;
  gap: 16px !important;
  align-items: center !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__hero-badge {
  position: relative !important;
  width: 64px !important;
  height: 64px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

/* Modern variant — SVG hexagon outline replacing the user's uploaded
 * level image. Number sits centred on top via z-index. */
body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__hero-badge--icon .tgp-hub-v2__badge-shape {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  filter: drop-shadow(0 6px 14px rgba(0, 0, 0, 0.45)) !important;
}

/* Defensive: hide any <img> the plugin might still output (e.g. the
 * unmodified PHP file deployed alongside new CSS). */
body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__hero-badge img {
  display: none !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__hero-badge-num {
  position: relative !important;
  z-index: 1 !important;
  font-size: 24px !important;
  font-weight: 800 !important;
  color: #fafafa !important;
  letter-spacing: -0.04em !important;
  font-variant-numeric: tabular-nums !important;
  line-height: 1 !important;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.35) !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__hero-content {
  min-width: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__level-tag {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  padding: 3px 10px !important;
  background: rgba(255, 255, 255, 0.05) !important;
  border: 1px solid rgba(255, 255, 255, 0.10) !important;
  border-radius: 999px !important;
  width: -moz-fit-content !important;
  width: fit-content !important;
  margin: 0 !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__level-tag-icon {
  width: 5px !important;
  height: 5px !important;
  border-radius: 999px !important;
  background: #fafafa !important;
  box-shadow: 0 0 6px rgba(250, 250, 250, 0.50) !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__level-tag-text {
  font-size: 10.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.10em !important;
  text-transform: uppercase !important;
  color: #d4d4d8 !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__balance {
  margin: 2px 0 0 !important;
  font-size: clamp(28px, 4.6vw, 44px) !important;
  font-weight: 800 !important;
  letter-spacing: -0.035em !important;
  line-height: 1 !important;
  color: #fafafa !important;
  font-variant-numeric: tabular-nums !important;
  background: none !important;
  -webkit-text-fill-color: initial !important;
  font-family: 'Inter', sans-serif !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__balance-label {
  margin: 0 !important;
  font-size: 10.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: #71717a !important;
  font-family: 'Inter', sans-serif !important;
}

/* Right-side stat tiles */
body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__hero-stats {
  display: flex !important;
  flex-direction: column !important;
  gap: 6px !important;
  align-self: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__stat {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  text-align: right !important;
  padding: 8px 12px !important;
  background: rgba(255, 255, 255, 0.03) !important;
  border: 1px solid rgba(255, 255, 255, 0.06) !important;
  border-radius: 10px !important;
  min-width: 110px !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__stat-value {
  font-size: 15px !important;
  font-weight: 800 !important;
  color: #fafafa !important;
  letter-spacing: -0.02em !important;
  font-variant-numeric: tabular-nums !important;
  line-height: 1.2 !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__stat-value bdi,
body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__stat-value .amount,
body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__stat-value .woocommerce-Price-amount {
  color: inherit !important;
  font-weight: inherit !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__stat-label {
  margin-top: 1px !important;
  font-size: 9.5px !important;
  font-weight: 600 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: #71717a !important;
}

/* Hero progress */
body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__progress {
  margin-top: 14px !important;
  padding-top: 12px !important;
  border-top: 1px solid rgba(255, 255, 255, 0.06) !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__progress-row {
  display: flex !important;
  align-items: baseline !important;
  gap: 10px !important;
  margin-bottom: 6px !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__progress-from,
body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__progress-to {
  font-size: 10.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.10em !important;
  text-transform: uppercase !important;
  color: #71717a !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__progress-to {
  color: #d4d4d8 !important;
  margin-left: auto !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__progress-pct {
  font-size: 11px !important;
  font-weight: 700 !important;
  color: #fafafa !important;
  font-variant-numeric: tabular-nums !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__progress-track {
  height: 5px !important;
  width: 100% !important;
  background: rgba(255, 255, 255, 0.06) !important;
  border-radius: 999px !important;
  overflow: hidden !important;
  position: relative !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__progress-fill {
  display: block !important;
  height: 100% !important;
  background: linear-gradient(90deg, #fafafa 0%, #a1a1aa 100%) !important;
  border-radius: 999px !important;
  transition: width 600ms cubic-bezier(0.4, 0, 0.2, 1) !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__progress-meta {
  margin-top: 8px !important;
  font-size: 12px !important;
  color: #a1a1aa !important;
  line-height: 1.5 !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__progress-meta strong {
  color: #fafafa !important;
  font-weight: 700 !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__progress-meta span {
  color: #fafafa !important;
  font-weight: 600 !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__progress--max .tgp-hub-v2__max-pill {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  padding: 5px 12px !important;
  background: rgba(16, 185, 129, 0.10) !important;
  border: 1px solid rgba(16, 185, 129, 0.30) !important;
  border-radius: 999px !important;
  font-size: 11.5px !important;
  font-weight: 700 !important;
  color: #10b981 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__progress--max .tgp-hub-v2__max-pill svg { color: #10b981 !important; flex-shrink: 0 !important; }

/* ─── GENERIC SECTION CARD ─────────────────────────────────────── */
body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__section {
  padding: 18px !important;
  background: linear-gradient(180deg, #131316, #0e0e11) !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-radius: 14px !important;
  box-shadow: 0 8px 22px rgba(0, 0, 0, 0.25) !important;
  margin: 0 !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__section-hd {
  margin: 0 0 12px !important;
  padding: 0 !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__section-hd h2 {
  margin: 0 !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  letter-spacing: -0.01em !important;
  color: #fafafa !important;
  font-family: 'Inter', sans-serif !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__section-hd p {
  margin: 4px 0 0 !important;
  font-size: 12.5px !important;
  color: #71717a !important;
  line-height: 1.5 !important;
}

/* ─── TIER REWARDS LIST ────────────────────────────────────────── */
body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__tiers {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
  counter-reset: none !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__tier {
  position: relative !important;
  display: grid !important;
  grid-template-columns: 56px minmax(0, 1fr) !important;
  gap: 14px !important;
  align-items: start !important;
  margin: 0 !important;
  padding: 14px 16px !important;
  background: rgba(255, 255, 255, 0.02) !important;
  border: 1px solid rgba(255, 255, 255, 0.06) !important;
  border-radius: 14px !important;
  transition: border-color 160ms ease, background 160ms ease, transform 160ms ease !important;
  list-style: none !important;
  font-size: 13px !important;
  line-height: 1.5 !important;
  color: #a1a1aa !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__tier:hover {
  border-color: rgba(255, 255, 255, 0.14) !important;
  background: rgba(255, 255, 255, 0.04) !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__tier.is-current {
  border-color: rgba(255, 255, 255, 0.30) !important;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.02)) !important;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.10), 0 8px 24px rgba(0, 0, 0, 0.30) !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__tier.is-locked {
  opacity: 0.85 !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__tier-badge {
  position: relative !important;
  width: 52px !important;
  height: 52px !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
  padding: 0 !important;
}

/* SVG hexagon variant — keeps the badge a consistent shape across
 * tiers. Color depth handled by .is-current / .is-unlocked / .is-locked
 * tier modifiers below. */
body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__tier-badge--icon .tgp-hub-v2__badge-shape {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__tier.is-current .tgp-hub-v2__tier-badge--icon .tgp-hub-v2__badge-shape path,
body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__tier.is-unlocked .tgp-hub-v2__tier-badge--icon .tgp-hub-v2__badge-shape path {
  fill: rgba(255, 255, 255, 0.10) !important;
  stroke: rgba(255, 255, 255, 0.40) !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__tier.is-locked .tgp-hub-v2__tier-badge--icon .tgp-hub-v2__badge-shape path {
  fill: rgba(255, 255, 255, 0.02) !important;
  stroke: rgba(255, 255, 255, 0.12) !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__tier-badge img {
  display: none !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__tier-badge span {
  position: relative !important;
  z-index: 1 !important;
  font-size: 17px !important;
  font-weight: 800 !important;
  color: #fafafa !important;
  font-variant-numeric: tabular-nums !important;
  letter-spacing: -0.02em !important;
  line-height: 1 !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__tier.is-locked .tgp-hub-v2__tier-badge span {
  color: #71717a !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__tier-body {
  min-width: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 6px !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__tier-head {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__tier-name {
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #fafafa !important;
  letter-spacing: -0.01em !important;
  min-width: 0 !important;
  overflow-wrap: anywhere !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__tier.is-locked .tgp-hub-v2__tier-name {
  color: #71717a !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__tier-tag {
  display: inline-flex !important;
  align-items: center !important;
  gap: 4px !important;
  padding: 3px 10px !important;
  border-radius: 999px !important;
  font-size: 10.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
  font-family: 'Inter', sans-serif !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__tier-tag svg { flex-shrink: 0 !important; }

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__tier-tag--current {
  background: rgba(255, 255, 255, 0.10) !important;
  border: 1px solid rgba(255, 255, 255, 0.25) !important;
  color: #fafafa !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__tier-tag--unlocked {
  background: rgba(16, 185, 129, 0.12) !important;
  border: 1px solid rgba(16, 185, 129, 0.30) !important;
  color: #34d399 !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__tier-tag--locked {
  background: rgba(255, 255, 255, 0.04) !important;
  border: 1px solid rgba(255, 255, 255, 0.10) !important;
  color: #71717a !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__tier-reward {
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
  margin-top: 2px !important;
  width: 100% !important;
  max-width: 100% !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__tier-reward-text {
  color: #d4d4d8 !important;
  font-size: 13px !important;
  min-width: 0 !important;
  word-break: break-word !important;
  overflow-wrap: anywhere !important;
}

body.woocommerce-account .woocommerce-MyAccount-content p.tgp-hub-v2__tier-reward-text {
  margin: 4px 0 0 !important;
}

/* Copy-code button */
body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__tier-copy {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  max-width: 100% !important;
  flex-wrap: wrap !important;
  padding: 6px 12px !important;
  background: rgba(255, 255, 255, 0.05) !important;
  border: 1px dashed rgba(255, 255, 255, 0.20) !important;
  border-radius: 8px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 12.5px !important;
  font-weight: 600 !important;
  color: #fafafa !important;
  cursor: pointer !important;
  transition: background 140ms ease, border-color 140ms ease, transform 140ms ease !important;
  text-decoration: none !important;
  margin: 0 !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__tier-copy:hover {
  background: rgba(255, 255, 255, 0.10) !important;
  border-color: rgba(255, 255, 255, 0.35) !important;
  transform: translateY(-1px) !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__tier-copy code {
  font-family: 'JetBrains Mono', 'SF Mono', Menlo, Monaco, Consolas, monospace !important;
  font-size: 12.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.05em !important;
  color: inherit !important;
  background: transparent !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  word-break: break-all !important;
  overflow-wrap: anywhere !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__tier-copy-icon {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0 !important;
  opacity: 0.7 !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__tier-copy:hover .tgp-hub-v2__tier-copy-icon { opacity: 1 !important; }

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__tier-copy-success {
  display: none !important;
  align-items: center !important;
  gap: 4px !important;
  position: absolute !important;
  inset: 0 !important;
  background: rgba(16, 185, 129, 0.20) !important;
  border-radius: 8px !important;
  color: #34d399 !important;
  justify-content: center !important;
  font-size: 11.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__tier-copy.is-copied .tgp-hub-v2__tier-copy-success { display: inline-flex !important; }
body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__tier-copy.is-copied { border-color: rgba(16, 185, 129, 0.60) !important; }

/* ─── EARN MORE GRID ───────────────────────────────────────────── */
body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__earn-grid {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(min(260px, 100%), 1fr)) !important;
  gap: 10px !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__earn {
  display: grid !important;
  grid-template-columns: 32px minmax(0, 1fr) !important;
  gap: 12px !important;
  align-items: flex-start !important;
  padding: 14px !important;
  background: rgba(255, 255, 255, 0.02) !important;
  border: 1px solid rgba(255, 255, 255, 0.06) !important;
  border-radius: 12px !important;
  margin: 0 !important;
  list-style: none !important;
  font-size: 13px !important;
  line-height: 1.55 !important;
  color: #a1a1aa !important;
  transition: border-color 160ms ease, background 160ms ease !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__earn:hover { border-color: rgba(255, 255, 255, 0.14) !important; background: rgba(255, 255, 255, 0.04) !important; }

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__earn-icon {
  width: 32px !important;
  height: 32px !important;
  border-radius: 999px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
  margin-top: 2px !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__earn--done .tgp-hub-v2__earn-icon {
  background: rgba(16, 185, 129, 0.14) !important;
  border: 1px solid rgba(16, 185, 129, 0.35) !important;
  color: #34d399 !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__earn--todo .tgp-hub-v2__earn-icon {
  background: rgba(255, 255, 255, 0.05) !important;
  border: 1px dashed rgba(255, 255, 255, 0.18) !important;
  color: #fafafa !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__earn--locked .tgp-hub-v2__earn-icon {
  background: rgba(255, 255, 255, 0.04) !important;
  border: 1px solid rgba(255, 255, 255, 0.10) !important;
  color: #71717a !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__earn-body {
  min-width: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__earn-text {
  color: #fafafa !important;
  font-size: 13px !important;
  font-weight: 500 !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__earn-text strong,
body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__earn-text b {
  color: #fafafa !important;
  font-weight: 700 !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__earn-text a {
  color: #fafafa !important;
  text-decoration: none !important;
  border-bottom: 1px dashed rgba(255, 255, 255, 0.30) !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__earn-meta {
  font-size: 11.5px !important;
  color: #71717a !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__earn--locked .tgp-hub-v2__earn-text { color: #71717a !important; }
body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__earn--locked .tgp-hub-v2__earn-text strong { color: #a1a1aa !important; }

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__earn-extra { display: contents !important; }

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__earn-input,
body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__earn-form input {
  width: 100% !important;
  background: rgba(0, 0, 0, 0.30) !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-radius: 8px !important;
  padding: 8px 12px !important;
  color: #fafafa !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 12.5px !important;
  outline: none !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__earn-form { display: flex !important; gap: 6px !important; flex-wrap: wrap !important; }
body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__earn-form button {
  padding: 8px 14px !important;
  background: #fafafa !important;
  color: #0a0a0a !important;
  border: 0 !important;
  border-radius: 8px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  white-space: nowrap !important;
}
body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__earn-form button:hover {
  background: #ffffff !important;
}

/* Hide stray "level required" prefix span — we use the grey "locked"
 * styling on the row so the prefix just clutters. */
body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__earn-text .my-points-level-required {
  display: block !important;
  font-size: 10.5px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.06em !important;
  color: #f59e0b !important;
  margin-bottom: 2px !important;
}

/* ─── ACTIVITY LOG ─────────────────────────────────────────────── */
body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__log {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  border: 1px solid rgba(255, 255, 255, 0.06) !important;
  border-radius: 12px !important;
  overflow: hidden !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__log-item {
  display: grid !important;
  grid-template-columns: 110px 80px minmax(0, 1fr) !important;
  gap: 14px !important;
  align-items: center !important;
  padding: 12px 14px !important;
  background: rgba(255, 255, 255, 0.02) !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
  margin: 0 !important;
  list-style: none !important;
  font-size: 13px !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__log-item:last-child { border-bottom: 0 !important; }
body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__log-item:hover { background: rgba(255, 255, 255, 0.04) !important; }

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__log-date {
  font-size: 11.5px !important;
  color: #71717a !important;
  font-variant-numeric: tabular-nums !important;
  white-space: nowrap !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__log-amount {
  font-size: 14px !important;
  font-weight: 700 !important;
  font-variant-numeric: tabular-nums !important;
  letter-spacing: -0.01em !important;
  white-space: nowrap !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__log-item.is-positive .tgp-hub-v2__log-amount { color: #34d399 !important; }
body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__log-item.is-negative .tgp-hub-v2__log-amount { color: #f87171 !important; }

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__log-msg {
  font-size: 12.5px !important;
  color: #d4d4d8 !important;
  line-height: 1.45 !important;
  min-width: 0 !important;
  word-break: break-word !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__log-msg a {
  color: #fafafa !important;
  text-decoration: underline !important;
  text-decoration-color: rgba(255, 255, 255, 0.30) !important;
  text-underline-offset: 2px !important;
}

/* ─── RESPONSIVE ───────────────────────────────────────────────── */
@media (max-width: 900px) {
  body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__log-item {
    grid-template-columns: minmax(0, 1fr) auto !important;
    grid-template-rows: auto auto !important;
    gap: 6px 10px !important;
    align-items: start !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__log-date {
    grid-column: 1 !important;
    grid-row: 1 !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__log-amount {
    grid-column: 2 !important;
    grid-row: 1 !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__log-msg {
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
  }
}

/* ≤960px — narrow desktop / tablet landscape: stats slide under the
 * balance row instead of squashing into a tight 3-column grid. */
@media (max-width: 960px) {
  body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__hero {
    padding: 16px !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__hero-row {
    grid-template-columns: auto minmax(0, 1fr) !important;
    grid-template-rows: auto auto !important;
    gap: 12px 14px !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__hero-stats {
    grid-column: 1 / -1 !important;
    flex-direction: row !important;
    align-self: stretch !important;
    gap: 8px !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__stat {
    flex: 1 1 0 !important;
    min-width: 0 !important;
    align-items: flex-start !important;
    text-align: left !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__balance {
    font-size: clamp(26px, 6vw, 36px) !important;
  }
}

/* ≤640px — tablet portrait / mobile: badge sits inline with content */
@media (max-width: 640px) {
  .tgp-vo-review-collapsible__summary,
  .tgp-vo-review-collapsible__body,
  .tgp-vo-review-collapsible__lead-copy {
    padding-left: 16px;
    padding-right: 16px;
  }
  body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__hero-badge {
    width: 48px !important;
    height: 48px !important;
    border-radius: 12px !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__hero-badge img {
    width: 34px !important;
    height: 34px !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__hero-badge-num {
    font-size: 18px !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__balance {
    font-size: 28px !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__stat {
    padding: 6px 10px !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__stat-value {
    font-size: 13px !important;
  }
}

/* ≤460px — small mobile: stats stack 1-up */
@media (max-width: 460px) {
  body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__hero {
    padding: 14px !important;
    border-radius: 12px !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__hero-stats {
    flex-direction: column !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__stat {
    flex-direction: row !important;
    align-items: baseline !important;
    justify-content: space-between !important;
    text-align: left !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__earn-grid {
    grid-template-columns: 1fr !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__log-item {
    grid-template-columns: 1fr auto !important;
    grid-template-rows: auto auto !important;
    gap: 4px !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__log-date {
    grid-column: 1 !important;
    grid-row: 1 !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__log-amount {
    grid-column: 2 !important;
    grid-row: 1 !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__log-msg {
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
    font-size: 12px !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__progress-row {
    flex-wrap: wrap !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__section {
    padding: 16px !important;
    border-radius: 14px !important;
  }
}

/* Narrow phones — long “X Ghost Coins to unlock” pills / hero meta must stay inside cards */
@media (max-width: 480px) {
  body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__tier-tag {
    white-space: normal !important;
    line-height: 1.25 !important;
    max-width: 100% !important;
    justify-content: flex-start !important;
    text-align: left !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-content .tgp-hub-v2__progress-meta {
    word-break: break-word !important;
    overflow-wrap: anywhere !important;
    font-size: 11px !important;
    hyphens: auto !important;
  }
}

/* ──────────────────────────────────────────────────────────────────
 * FALLBACK FOR OLD MY-POINTS DOM (when the rewritten PHP file isn't
 * deployed yet). Targets the original plugin class names directly
 * with the same monochrome design language as `.tgp-hub-v2__*`.
 *
 * If you SEE a red horizontal bar with the points number and a
 * "My Rewards & Achievements" heading on /my-account/my-points/ then
 * the rewards plugin PHP is still old and these rules paint the page
 * acceptably until the PHP file is uploaded.
 * ────────────────────────────────────────────────────────────────── */

/* Container */
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-my-points-container:not(.tgp-hub-v2) {
  display: flex !important;
  flex-direction: column !important;
  gap: 14px !important;
  background: transparent !important;
  color: #fafafa !important;
  font-family: 'Inter', sans-serif !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Hero card (`.woocommerce-my-points-bar`) — kill the heart svg /
 * progress bar / red colors, restyle as a clean monochrome stat card. */
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-my-points-container:not(.tgp-hub-v2) .woocommerce-my-points-bar {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 4px !important;
  margin: 0 !important;
  padding: 24px !important;
  background: linear-gradient(180deg, #14141a 0%, #0e0e12 100%) !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-radius: 14px !important;
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.40) !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-my-points-container:not(.tgp-hub-v2) .woocommerce-my-points-bar > svg,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-my-points-container:not(.tgp-hub-v2) .woocommerce-my-points-bar progress,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-my-points-container:not(.tgp-hub-v2) .woocommerce-my-points-bar-text {
  display: none !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-my-points-container:not(.tgp-hub-v2) .woocommerce-my-points-bar > h3 {
  margin: 0 0 12px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.10em !important;
  text-transform: uppercase !important;
  color: #a1a1aa !important;
  font-family: 'Inter', sans-serif !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-my-points-container:not(.tgp-hub-v2) .woocommerce-my-points-bar-heart-text {
  position: static !important;
  transform: none !important;
  top: auto !important; right: auto !important;
  display: block !important;
  text-align: left !important;
  font-family: 'Inter', sans-serif !important;
  font-size: clamp(40px, 6vw, 60px) !important;
  font-weight: 800 !important;
  color: #fafafa !important;
  letter-spacing: -0.03em !important;
  line-height: 1 !important;
  margin: 4px 0 0 !important;
  padding: 0 !important;
  font-variant-numeric: tabular-nums !important;
  background: none !important;
  -webkit-text-fill-color: currentColor !important;
  z-index: auto !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-my-points-container:not(.tgp-hub-v2) .woocommerce-my-points-bar-label {
  display: block !important;
  margin-top: 6px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.10em !important;
  color: #737373 !important;
  font-family: 'Inter', sans-serif !important;
}

/* Current level pill (`.woocommerce-my-points-current-level-container`) */
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-my-points-container:not(.tgp-hub-v2) .woocommerce-my-points-current-level-container {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 6px 14px 6px 6px !important;
  background: rgba(255, 255, 255, 0.04) !important;
  border: 1px solid rgba(255, 255, 255, 0.10) !important;
  border-radius: 999px !important;
  margin: 0 0 4px !important;
  width: fit-content !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-my-points-container:not(.tgp-hub-v2) .woocommerce-my-points-current-level-container img {
  width: 28px !important;
  height: 28px !important;
  object-fit: contain !important;
  border-radius: 999px !important;
  background: rgba(0, 0, 0, 0.30) !important;
  padding: 3px !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-my-points-container:not(.tgp-hub-v2) .woocommerce-my-points-current-level-name {
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.10em !important;
  text-transform: uppercase !important;
  color: #fafafa !important;
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
}

/* Below-bar text */
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-my-points-container:not(.tgp-hub-v2) .woocommerce-my-points-bar-text-below {
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
  margin: 12px 0 0 !important;
  font-size: 13px !important;
  color: #a1a1aa !important;
}

/* Achievements section */
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-my-points-container:not(.tgp-hub-v2) .woocommerce-my-points-rewards {
  margin: 0 !important;
  padding: 22px !important;
  background: linear-gradient(180deg, #131316, #0e0e11) !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-radius: 14px !important;
  list-style: none !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-my-points-container:not(.tgp-hub-v2) .woocommerce-my-points-rewards-title,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-my-points-container:not(.tgp-hub-v2) .woocommerce-my-points-rewards > h2,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-my-points-container:not(.tgp-hub-v2) .woocommerce-my-points-rewards > h3 {
  margin: 0 0 14px !important;
  font-size: 14.5px !important;
  font-weight: 700 !important;
  letter-spacing: -0.015em !important;
  text-transform: none !important;
  color: #fafafa !important;
  font-family: 'Inter', sans-serif !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-my-points-container:not(.tgp-hub-v2) .woocommerce-my-points-rewards ul {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 6px !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-my-points-container:not(.tgp-hub-v2) .woocommerce-my-points-rewards-reward {
  position: relative !important;
  display: flex !important;
  align-items: flex-start !important;
  gap: 12px !important;
  margin: 0 !important;
  padding: 12px 14px !important;
  background: rgba(255, 255, 255, 0.02) !important;
  border: 1px solid rgba(255, 255, 255, 0.06) !important;
  border-radius: 10px !important;
  list-style: none !important;
  font-size: 13px !important;
  line-height: 1.5 !important;
  color: #d4d4d8 !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-my-points-container:not(.tgp-hub-v2) .woocommerce-my-points-rewards-reward img {
  width: 28px !important;
  height: 28px !important;
  object-fit: contain !important;
  border-radius: 6px !important;
  background: rgba(0, 0, 0, 0.30) !important;
  padding: 3px !important;
  flex-shrink: 0 !important;
  margin: 0 !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-my-points-container:not(.tgp-hub-v2) .woocommerce-my-points-rewards-reward strong { color: #fafafa !important; font-weight: 700 !important; }

/* Activity log table */
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-my-points-container:not(.tgp-hub-v2) .woocommerce-my-points-log {
  margin: 0 !important;
  padding: 22px !important;
  background: linear-gradient(180deg, #131316, #0e0e11) !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-radius: 14px !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-my-points-container:not(.tgp-hub-v2) .woocommerce-my-points-log h2 {
  margin: 0 0 14px !important;
  font-size: 14.5px !important;
  font-weight: 700 !important;
  letter-spacing: -0.015em !important;
  color: #fafafa !important;
  font-family: 'Inter', sans-serif !important;
  text-transform: none !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-my-points-container:not(.tgp-hub-v2) .woocommerce-my-points-log table {
  width: 100% !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  border: 1px solid rgba(255, 255, 255, 0.06) !important;
  border-radius: 10px !important;
  overflow: hidden !important;
  background: transparent !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-my-points-container:not(.tgp-hub-v2) .woocommerce-my-points-log th,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-my-points-container:not(.tgp-hub-v2) .woocommerce-my-points-log td {
  padding: 11px 14px !important;
  font-size: 12.5px !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
  color: #fafafa !important;
  background: transparent !important;
  text-align: left !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-my-points-container:not(.tgp-hub-v2) .woocommerce-my-points-log th {
  font-size: 10.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.10em !important;
  text-transform: uppercase !important;
  color: #737373 !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-my-points-container:not(.tgp-hub-v2) .woocommerce-my-points-log tr:last-child td { border-bottom: 0 !important; }

/* ══════════════════════════════════════════════════════════════════
 * LOGIN / REGISTER (guest) — centered card, responsive (child theme form-login.php)
 * ════════════════════════════════════════════════════════════════*/

body.woocommerce-account:not(.logged-in) .woocommerce .tgp-auth-page {
  width: 100%;
  margin-inline: auto;
  box-sizing: border-box;
}

/* Login + register: outer shell padding only (cards stay on `.tgp-auth-card`) */
body.woocommerce-account:not(.logged-in) .woocommerce .tgp-auth-page:has(.tgp-auth-columns) {
  max-width: min(960px, 100%);
  padding: clamp(20px, 4vw, 40px) clamp(14px, 3vw, 20px) clamp(32px, 6vw, 56px);
}

/* Single-column auth (login, lost password, reset, confirmation): one panel on `.tgp-auth-page` */
body.woocommerce-account .woocommerce .tgp-auth-page:not(:has(.tgp-auth-columns)) {
  max-width: min(440px, 100%);
  margin-top: clamp(12px, 3vw, 28px);
  margin-bottom: clamp(32px, 6vw, 56px);
  padding: clamp(22px, 4vw, 34px) clamp(20px, 3.5vw, 28px) !important;
  background:
    linear-gradient(165deg, rgba(255, 255, 255, 0.055) 0%, rgba(24, 24, 27, 0.94) 42%, rgba(12, 12, 14, 0.98) 100%) !important;
  border: 1px solid rgba(255, 255, 255, 0.10) !important;
  border-radius: 18px !important;
  box-shadow:
    0 1px 0 rgba(255, 255, 255, 0.06) inset,
    0 16px 48px rgba(0, 0, 0, 0.48) !important;
}

body.woocommerce-account .woocommerce .tgp-auth-page:not(:has(.tgp-auth-columns)) .tgp-auth-card {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
}

body.woocommerce-account:not(.logged-in) .woocommerce .tgp-auth-columns {
  display: grid;
  grid-template-columns: 1fr;
  gap: 22px;
  margin-inline: auto;
  padding: 0;
  box-sizing: border-box;
}

@media (min-width: 900px) {
  body.woocommerce-account:not(.logged-in) .woocommerce .tgp-auth-columns {
    grid-template-columns: 1fr 1fr;
    gap: 28px;
    align-items: stretch;
  }
}

/* Login, lost password, reset — strong top inset on phones / small tablets (fixed header + notch).
 * Targets both shortcode `.woocommerce` wrapper and Elementor My Account (no wrapper).
 * `max-width:900px` so landscape phones still get the extra air. */
@media (max-width: 900px) {
  body.woocommerce-account:not(.logged-in) .tgp-myaccount {
    padding-top: calc(clamp(28px, 10vw, 56px) + env(safe-area-inset-top, 0px)) !important;
  }

  body.woocommerce-account:not(.logged-in) .tgp-auth-page:not(:has(.tgp-auth-columns)),
  body.woocommerce-account .woocommerce .tgp-auth-page:not(:has(.tgp-auth-columns)),
  body.woocommerce-account .woocommerce-MyAccount-content .tgp-auth-page:not(:has(.tgp-auth-columns)),
  body.woocommerce-account:not(.logged-in) .elementor-widget-woocommerce-my-account .e-my-account-tab__content .tgp-auth-page:not(:has(.tgp-auth-columns)) {
    margin-top: clamp(24px, 9vw, 52px) !important;
    padding-top: calc(clamp(40px, 12vw, 72px) + env(safe-area-inset-top, 0px)) !important;
  }

  body.woocommerce-account:not(.logged-in) .tgp-auth-page:has(.tgp-auth-columns),
  body.woocommerce-account:not(.logged-in) .woocommerce .tgp-auth-page:has(.tgp-auth-columns) {
    padding-top: calc(clamp(40px, 11vw, 68px) + env(safe-area-inset-top, 0px)) !important;
  }
}

body.woocommerce-account:not(.logged-in) .tgp-auth-columns .u-column1,
body.woocommerce-account:not(.logged-in) .tgp-auth-columns .u-column2 {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  width: 100% !important;
  float: none !important;
}

body.woocommerce-account:not(.logged-in) .tgp-auth-page:has(.tgp-auth-columns) .tgp-auth-card,
body.woocommerce-account:not(.logged-in) .tgp-auth-columns .tgp-auth-card {
  background:
    linear-gradient(165deg, rgba(255, 255, 255, 0.055) 0%, rgba(24, 24, 27, 0.94) 42%, rgba(12, 12, 14, 0.98) 100%) !important;
  border: 1px solid rgba(255, 255, 255, 0.10) !important;
  border-radius: 18px !important;
  padding: clamp(22px, 4vw, 34px) clamp(20px, 3.5vw, 28px) !important;
  box-shadow:
    0 1px 0 rgba(255, 255, 255, 0.06) inset,
    0 16px 48px rgba(0, 0, 0, 0.48) !important;
  box-sizing: border-box !important;
}

body.woocommerce-account:not(.logged-in) .tgp-auth-card__title,
body.woocommerce-account:not(.logged-in) .tgp-auth-card > h2 {
  font-size: clamp(1.25rem, 2.8vw, 1.45rem) !important;
  font-weight: 700 !important;
  letter-spacing: -0.03em !important;
  margin: 0 0 1.25rem !important;
  color: #fafafa !important;
}

body.woocommerce-account:not(.logged-in) .tgp-auth-card .woocommerce-form-login,
body.woocommerce-account:not(.logged-in) .tgp-auth-card .woocommerce-form-register {
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

body.woocommerce-account:not(.logged-in) .tgp-auth-card .woocommerce-form-row {
  margin-bottom: 1rem !important;
}

body.woocommerce-account:not(.logged-in) .tgp-auth-card .woocommerce-form-row label {
  display: block !important;
  margin-bottom: 0.45rem !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  color: #a1a1aa !important;
}

body.woocommerce-account:not(.logged-in) .tgp-auth-card input.input-text {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

body.woocommerce-account:not(.logged-in) .tgp-auth-card p:empty {
  display: none !important;
}

body.woocommerce-account:not(.logged-in) form.login .tgp-auth-login__actions {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 14px !important;
  margin-top: 0.35rem !important;
  margin-bottom: 0 !important;
}

body.woocommerce-account:not(.logged-in) form.login .tgp-auth-login__actions .woocommerce-form__label-for-checkbox {
  order: 1 !important;
}

body.woocommerce-account:not(.logged-in) form.login .tgp-auth-login__actions .woocommerce-form-login__submit {
  order: 3 !important;
}

body.woocommerce-account:not(.logged-in) form.login .woocommerce-form-login__submit,
body.woocommerce-account:not(.logged-in) form.register .woocommerce-form-register__submit,
body.woocommerce-account .tgp-auth-page form.lost_reset_password .woocommerce-form-login__submit {
  width: 100% !important;
  margin-top: 0 !important;
  padding: 14px 22px !important;
  border-radius: 12px !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  background: linear-gradient(135deg, #9333ea 0%, #6d28d9 100%) !important;
  border: none !important;
  color: #fff !important;
  box-shadow:
    0 1px 0 rgba(255, 255, 255, 0.14) inset,
    0 6px 20px rgba(109, 40, 217, 0.38) !important;
  cursor: pointer !important;
  transition: transform 0.15s ease, box-shadow 0.15s ease !important;
}

body.woocommerce-account:not(.logged-in) form.login .woocommerce-form-login__submit:hover,
body.woocommerce-account:not(.logged-in) form.register .woocommerce-form-register__submit:hover,
body.woocommerce-account .tgp-auth-page form.lost_reset_password .woocommerce-form-login__submit:hover {
  transform: translateY(-1px);
  box-shadow:
    0 1px 0 rgba(255, 255, 255, 0.14) inset,
    0 10px 28px rgba(109, 40, 217, 0.48) !important;
}

body.woocommerce-account .tgp-auth-card .tgp-auth-intro {
  font-size: 13.5px !important;
  line-height: 1.65 !important;
  color: #a1a1aa !important;
  margin: 0 0 1.25rem !important;
}

body.woocommerce-account .tgp-auth-alt-action {
  margin: 1.25rem 0 0 !important;
  margin-bottom: 0 !important;
  text-align: center !important;
}

body.woocommerce-account .tgp-auth-alt-action a {
  font-size: 13px !important;
  font-weight: 500 !important;
  color: #c4b5fd !important;
  text-decoration: none !important;
}

body.woocommerce-account .tgp-auth-alt-action a:hover {
  color: #e9d5ff !important;
  text-decoration: underline !important;
}

body.woocommerce-account:not(.logged-in) .woocommerce-form__label-for-checkbox {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  font-size: 13px !important;
  color: #d4d4d8 !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  cursor: pointer !important;
  margin: 0 !important;
}

body.woocommerce-account:not(.logged-in) .woocommerce-form__input-checkbox {
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  margin: 0 !important;
  accent-color: #9333ea !important;
  cursor: pointer !important;
  border-radius: 4px !important;
}

body.woocommerce-account:not(.logged-in) .lost_password {
  margin-top: 1.15rem !important;
  margin-bottom: 0 !important;
  text-align: center !important;
}

body.woocommerce-account:not(.logged-in) .woocommerce-LostPassword a,
body.woocommerce-account:not(.logged-in) .woocommerce-form-login .lost_password a {
  font-size: 13px !important;
  color: #c4b5fd !important;
  text-decoration: none !important;
  font-weight: 500 !important;
}

body.woocommerce-account:not(.logged-in) .woocommerce-LostPassword a:hover,
body.woocommerce-account:not(.logged-in) .woocommerce-form-login .lost_password a:hover {
  color: #e9d5ff !important;
  text-decoration: underline !important;
}

/* My Account login — Popup Login: Google + register CTA (same behaviour as checkout `.popup-login-open` + `data-tab`). */
body.woocommerce-account:not(.logged-in) .tgp-auth-card form.login .tgp-auth-login-extras {
  margin-top: 1.25rem;
}

body.woocommerce-account:not(.logged-in) .tgp-auth-card form.login .tgp-auth-login-extras .popup-login-divider {
  margin: 16px 0 14px;
}

body.woocommerce-account:not(.logged-in) .tgp-auth-register-row {
  margin-top: 20px;
  padding-top: 18px;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  text-align: center;
}

body.woocommerce-account:not(.logged-in) .tgp-auth-register-label {
  margin: 0;
  font-size: 13px;
  font-weight: 600;
  color: #a1a1aa;
}

body.woocommerce-account:not(.logged-in) button.tgp-auth-register-btn {
  min-width: min(220px, 100%);
  justify-content: center;
  display: inline-flex;
  align-items: center;
  padding: 12px 20px;
  border-radius: 12px;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  border: 1px solid rgba(255, 255, 255, 0.14);
  background: rgba(255, 255, 255, 0.06);
  color: #fafafa;
  box-shadow: none;
  transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

body.woocommerce-account:not(.logged-in) button.tgp-auth-register-btn:hover,
body.woocommerce-account:not(.logged-in) button.tgp-auth-register-btn:focus-visible {
  background: rgba(255, 255, 255, 0.1);
  border-color: rgba(255, 255, 255, 0.22);
  color: #fff;
}

body.woocommerce-account:not(.logged-in) button.tgp-auth-register-btn:focus-visible {
  outline: 2px solid rgba(196, 181, 253, 0.45);
  outline-offset: 2px;
}

/* Logged-in account: legacy column styling if ever used */
body.woocommerce-account.logged-in .u-column1,
body.woocommerce-account.logged-in .u-column2 {
  background: #111113 !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
  border-radius: 16px !important;
  padding: 32px !important;
  box-shadow: 0 4px 16px rgba(0,0,0,0.40) !important;
}

/* ══════════════════════════════════════════════════════════════════
 * FAVORITE PRODUCERS (MarketKing — card grid, no DataTables)
 * ════════════════════════════════════════════════════════════════*/

body.tgp-account-favorite .woocommerce-MyAccount-content {
  max-width: 100%;
}

.tgp-fav-producers--shell {
  border-radius: 0;
}

.tgp-fav-producers__hd--hero {
  margin-bottom: 24px;
  padding: 22px 22px 20px;
  border-radius: 16px;
  background: linear-gradient(135deg, rgba(147, 51, 234, 0.14) 0%, rgba(24, 24, 27, 0.95) 48%, rgba(10, 10, 12, 0.98) 100%);
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.45);
}

.tgp-fav-producers__hd-inner {
  width: 100%;
}

.tgp-fav-producers__eyebrow {
  font-family: 'Inter', sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #a78bfa;
  margin: 0 0 10px;
}

.tgp-fav-producers__hd-row {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px 20px;
}

.tgp-fav-producers__hd--hero .tgp-page-hd__title {
  font-size: clamp(22px, 3vw, 28px);
  font-weight: 800;
  letter-spacing: -0.03em;
  margin: 0 0 6px;
  color: #fafafa !important;
}

.tgp-fav-producers__hd--hero .tgp-page-hd__sub {
  margin: 0;
  font-size: 14px;
  line-height: 1.55;
  color: #a1a1aa !important;
  max-width: 520px;
}

.tgp-fav-producers__count-pill {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  padding: 8px 14px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 600;
  color: #e9d5ff;
  background: rgba(147, 51, 234, 0.2);
  border: 1px solid rgba(147, 51, 234, 0.35);
}

/* Toolbar — search */
.tgp-fav-producers__toolbar {
  margin-bottom: 18px;
}
.tgp-fav-producers__search-wrap {
  display: flex;
  align-items: center;
  gap: 10px;
  max-width: 420px;
  padding: 10px 14px;
  border-radius: 12px;
  background: rgba(24, 24, 27, 0.95);
  border: 1px solid rgba(255, 255, 255, 0.1);
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.25);
}
.tgp-fav-producers__search-icon {
  flex-shrink: 0;
  color: #71717a;
}
.tgp-fav-producers__search {
  flex: 1;
  min-width: 0;
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #f4f4f5 !important;
  font-size: 14px !important;
  padding: 0 !important;
  margin: 0 !important;
  height: auto !important;
}
.tgp-fav-producers__search:focus {
  outline: none !important;
}
.tgp-fav-producers__search::placeholder {
  color: #71717a !important;
}
.tgp-fav-producers__search-empty {
  margin: 10px 0 0;
  font-size: 13px;
  color: #a1a1aa;
}

.tgp-fav-producers__grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 16px;
}

@media (min-width: 900px) {
  .tgp-fav-producers__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.tgp-fav-card {
  position: relative;
  display: flex;
  gap: 16px;
  align-items: center;
  padding: 18px 20px;
  background: linear-gradient(165deg, rgba(255, 255, 255, 0.05) 0%, rgba(17, 17, 19, 0.98) 38%);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 16px;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.4);
  transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.tgp-fav-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 16px 48px rgba(0, 0, 0, 0.5);
  border-color: rgba(167, 139, 250, 0.28);
}

.tgp-fav-card__media {
  position: relative;
  flex-shrink: 0;
  display: block;
}

.tgp-fav-card__media-ring {
  position: absolute;
  inset: -3px;
  border-radius: 16px;
  background: linear-gradient(135deg, rgba(167, 139, 250, 0.55), rgba(147, 51, 234, 0.15), transparent 70%);
  opacity: 0.85;
  pointer-events: none;
  z-index: 0;
}

.tgp-fav-card__media img {
  position: relative;
  z-index: 1;
  width: 76px;
  height: 76px;
  border-radius: 12px;
  object-fit: cover;
  display: block;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.45);
}

.tgp-fav-card__body {
  flex: 1;
  min-width: 0;
}

.tgp-fav-card__title {
  display: block;
  font-size: 16px;
  font-weight: 700;
  color: #f4f4f5 !important;
  text-decoration: none !important;
  margin-bottom: 8px;
  letter-spacing: -0.02em;
}

.tgp-fav-card__title:hover {
  color: #e9d5ff !important;
}

.tgp-fav-card__meta-wrap {
  margin-bottom: 10px;
}

.tgp-fav-card__stats {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 6px 10px;
  margin-bottom: 12px;
  font-size: 12px;
  line-height: 1.4;
  color: #a1a1aa;
}
.tgp-fav-card__stat {
  display: inline-flex;
  align-items: baseline;
  gap: 4px;
}
.tgp-fav-card__stat-label {
  font-weight: 600;
  color: #71717a;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-size: 10px;
}
.tgp-fav-card__stat-value {
  font-weight: 600;
  color: #e4e4e7;
  font-variant-numeric: tabular-nums;
}
.tgp-fav-card__stat-value .woocommerce-Price-amount {
  color: #f4f4f5 !important;
}
.tgp-fav-card__stat-sep {
  color: #3f3f46;
  user-select: none;
}

.tgp-fav-card__rating {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 10px;
}

.tgp-fav-card__rating .tgp-fav-stars {
  display: inline-flex;
  gap: 2px;
  letter-spacing: 0;
}

.tgp-fav-card__rating-num {
  font-size: 13px;
  font-weight: 700;
  color: #f4f4f5;
}

.tgp-fav-card__reviews {
  font-size: 12px;
  color: #71717a;
}

.tgp-fav-card__meta--muted {
  margin: 0;
  font-size: 12px;
  color: #71717a;
}

.tgp-fav-card__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

.tgp-fav-card__shop {
  display: inline-flex;
  align-items: center;
  padding: 7px 14px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 600;
  text-decoration: none !important;
  background: rgba(147, 51, 234, 0.18);
  color: #f5f3ff !important;
  border: 1px solid rgba(147, 51, 234, 0.4);
}

.tgp-fav-card__shop:hover {
  background: rgba(147, 51, 234, 0.32);
  color: #fff !important;
}

.tgp-fav-card__follow.marketking_follow_button {
  all: unset;
  box-sizing: border-box;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  padding: 7px 14px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 600;
  border: 1px solid rgba(255, 255, 255, 0.14);
  color: #d4d4d8 !important;
  background: rgba(255, 255, 255, 0.06);
}

.tgp-fav-card__follow.marketking_follow_button:hover {
  border-color: rgba(255, 255, 255, 0.26);
  color: #fafafa !important;
}

.tgp-fav-card__follow.marketking_follow_button.is-loading {
  position: relative;
  color: transparent !important;
  pointer-events: none;
}
.tgp-fav-card__follow.marketking_follow_button.is-loading::after {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  width: 16px;
  height: 16px;
  margin: -8px 0 0 -8px;
  border-radius: 50%;
  border: 2px solid rgba(255, 255, 255, 0.2);
  border-top-color: #c4b5fd;
  animation: tgp-fav-follow-spin 0.65s linear infinite;
}
@keyframes tgp-fav-follow-spin {
  to {
    transform: rotate(360deg);
  }
}

.tgp-fav-producers__empty {
  text-align: center;
  padding: 52px 28px 56px;
  background: linear-gradient(180deg, rgba(147, 51, 234, 0.08) 0%, #111113 45%);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 18px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.tgp-fav-producers__empty-icon {
  display: flex;
  justify-content: center;
  margin-bottom: 16px;
  color: #71717a;
}

.tgp-fav-producers__empty-title {
  margin: 0 0 10px;
  font-size: 18px;
  font-weight: 700;
  color: #fafafa;
}

.tgp-fav-producers__empty-sub {
  margin: 0 auto 22px;
  font-size: 14px;
  line-height: 1.6;
  color: #a1a1aa;
  max-width: 420px;
}

.tgp-fav-producers__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 11px 24px;
  border-radius: 999px;
  font-size: 13px;
  font-weight: 600;
  text-decoration: none !important;
  background: linear-gradient(135deg, #9333ea 0%, #6d28d9 100%);
  color: #fff !important;
  box-shadow: 0 8px 24px rgba(109, 40, 217, 0.35);
}

.tgp-fav-producers__cta:hover {
  filter: brightness(1.08);
  color: #fff !important;
}

/* ══════════════════════════════════════════════════════════════════
 * MISC FIXES
 * ════════════════════════════════════════════════════════════════*/

/* WooCommerce breadcrumb */
.woocommerce-breadcrumb { font-family: 'Inter', sans-serif !important; font-size: 12px !important; color: #52525B !important; margin-bottom: 18px !important; }
.woocommerce-breadcrumb a { color: #52525B !important; text-decoration: none !important; }
.woocommerce-breadcrumb a:hover { color: #A1A1AA !important; }

/* ══════════════════════════════════════════════════════════════════
 * SERVICES ORDERS — /my-account/services-orders/ (tgp-custom-ordering)
 * ════════════════════════════════════════════════════════════════*/

body.woocommerce-account .tgp-svc-orders-page {
  display: flex;
  flex-direction: column;
  gap: var(--tgp-s-6);
}

body.woocommerce-account .tgp-svc-orders-page__intro {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--tgp-s-4) var(--tgp-s-6);
  margin-bottom: 0;
}

body.woocommerce-account .tgp-svc-orders-page__intro .tgp-page-hd__copy {
  flex: 1;
  min-width: min(100%, 280px);
}

body.woocommerce-account .tgp-svc-orders-page__toolbar-btn {
  flex-shrink: 0;
  align-self: center;
}

body.woocommerce-account .tgp-svc-orders-page__empty {
  border-radius: var(--tgp-r-xl);
}

body.woocommerce-account .tgp-svc-orders-cards {
  display: flex;
  flex-direction: column;
  gap: var(--tgp-s-4);
}

body.woocommerce-account .tgp-svc-order-card {
  display: grid;
  grid-template-columns: 52px minmax(0, 1fr) minmax(120px, auto);
  grid-template-areas: 'media main rail';
  gap: var(--tgp-s-4) var(--tgp-s-5);
  align-items: center;
  padding: var(--tgp-s-5);
  background: var(--tgp-surface);
  border: 1px solid var(--tgp-border);
  border-radius: var(--tgp-r-lg);
  box-shadow: var(--tgp-shadow-card);
  transition:
    border-color var(--tgp-dur-1) var(--tgp-ease),
    box-shadow var(--tgp-dur-1) var(--tgp-ease),
    transform var(--tgp-dur-1) var(--tgp-ease);
}

body.woocommerce-account .tgp-svc-order-card:hover {
  border-color: var(--tgp-border-strong);
  box-shadow: var(--tgp-shadow-sm), 0 12px 36px rgba(0, 0, 0, 0.35);
  transform: translateY(-2px);
}

@media (prefers-reduced-motion: reduce) {
  body.woocommerce-account .tgp-svc-order-card {
    transition: border-color var(--tgp-dur-1) var(--tgp-ease), box-shadow var(--tgp-dur-1) var(--tgp-ease);
  }
  body.woocommerce-account .tgp-svc-order-card:hover {
    transform: none;
  }
}

body.woocommerce-account .tgp-svc-order-card__media {
  grid-area: media;
  width: 52px;
  height: 52px;
  border-radius: var(--tgp-r-md);
  background: rgba(147, 51, 234, 0.12);
  color: #c084fc;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  box-shadow: inset 0 0 0 1px rgba(147, 51, 234, 0.2);
  overflow: hidden;
}

body.woocommerce-account .tgp-svc-order-card__media--photo {
  position: relative;
  padding: 0;
  background: #0c0c0f;
}

body.woocommerce-account .tgp-svc-order-card__media-fallback {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #c084fc;
  opacity: 0.55;
  pointer-events: none;
}

body.woocommerce-account .tgp-svc-order-card__media-img {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

body.woocommerce-account .tgp-svc-order-card__media-img.tgpco-img-broken {
  display: none;
}

body.woocommerce-account .tgp-svc-order-card__media--photo:has(.tgp-svc-order-card__media-img.tgpco-img-broken) .tgp-svc-order-card__media-fallback {
  opacity: 1;
}

body.woocommerce-account .tgp-svc-order-card__main {
  grid-area: main;
  min-width: 0;
}

body.woocommerce-account .tgp-svc-order-card__head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--tgp-s-2) var(--tgp-s-3);
  margin-bottom: var(--tgp-s-1);
}

body.woocommerce-account .tgp-svc-order-card__num {
  font-family: var(--tgp-font) !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  color: #c084fc !important;
  text-decoration: none !important;
  letter-spacing: -0.02em !important;
}

body.woocommerce-account .tgp-svc-order-card__num:hover {
  color: #d8b4fe !important;
}

body.woocommerce-account .tgp-svc-order-card__badge {
  display: inline-flex;
  align-items: center;
  padding: 3px 10px;
  border-radius: var(--tgp-r-full);
  font-family: var(--tgp-font);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.3;
  white-space: nowrap;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
}

body.woocommerce-account .tgp-svc-order-card__badge--completed {
  background: var(--tgp-green-soft);
  color: var(--tgp-green);
}
body.woocommerce-account .tgp-svc-order-card__badge--in-progress,
body.woocommerce-account .tgp-svc-order-card__badge--demo-ready,
body.woocommerce-account .tgp-svc-order-card__badge--awaiting-final-delivery {
  background: rgba(96, 165, 250, 0.12);
  color: #60a5fa;
}
body.woocommerce-account .tgp-svc-order-card__badge--pending,
body.woocommerce-account .tgp-svc-order-card__badge--awaiting-final-payment,
body.woocommerce-account .tgp-svc-order-card__badge--revision-requested {
  background: var(--tgp-amber-soft);
  color: var(--tgp-amber);
}
body.woocommerce-account .tgp-svc-order-card__badge--cancelled {
  background: var(--tgp-red-soft);
  color: var(--tgp-red);
}
body.woocommerce-account .tgp-svc-order-card__badge--on-hold {
  background: rgba(255, 255, 255, 0.08);
  color: var(--tgp-text-dim);
}
body.woocommerce-account .tgp-svc-order-card__badge--unknown {
  background: rgba(255, 255, 255, 0.06);
  color: var(--tgp-text-faint);
}

body.woocommerce-account .tgp-svc-order-card__project {
  font-family: var(--tgp-font);
  font-size: 14px;
  font-weight: 600;
  color: var(--tgp-text);
  margin: 0 0 var(--tgp-s-1);
  line-height: 1.35;
  letter-spacing: -0.015em;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

body.woocommerce-account .tgp-svc-order-card__service {
  font-family: var(--tgp-font);
  font-size: 12.5px;
  color: var(--tgp-text-dim);
  margin: 0 0 var(--tgp-s-2);
  line-height: 1.4;
}

body.woocommerce-account .tgp-svc-order-card__meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--tgp-s-1) var(--tgp-s-2);
  font-family: var(--tgp-font);
  font-size: 12.5px;
  color: var(--tgp-text-faint);
}

body.woocommerce-account .tgp-svc-order-card__producer {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

body.woocommerce-account .tgp-svc-order-card__avatar {
  position: relative;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  overflow: hidden;
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.12);
  text-decoration: none !important;
}

body.woocommerce-account .tgp-svc-order-card__avatar-fallback {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #f0e8ff;
  background: linear-gradient(145deg, #4c1d95 0%, #6d28d9 50%, #3b0764 100%);
  pointer-events: none;
}

body.woocommerce-account .tgp-svc-order-card__avatar .tgpco-avatar-placeholder-svg {
  width: 14px;
  height: 14px;
  display: block;
  opacity: 0.95;
}

body.woocommerce-account .tgp-svc-order-card__avatar-img {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-radius: 50%;
}

body.woocommerce-account .tgp-svc-order-card__avatar-img.tgpco-img-broken {
  display: none;
}

body.woocommerce-account a.tgp-svc-order-card__avatar:hover .tgp-svc-order-card__avatar-img:not(.tgpco-img-broken) {
  opacity: 0.9;
}

body.woocommerce-account .tgp-svc-order-card__vendor {
  color: var(--tgp-text-dim);
}

body.woocommerce-account a.tgp-svc-order-card__vendor--link {
  color: var(--tgp-text-dim) !important;
  text-decoration: none !important;
}

body.woocommerce-account a.tgp-svc-order-card__vendor--link:hover {
  color: #c084fc !important;
}

body.woocommerce-account .tgp-svc-order-card__sep {
  opacity: 0.5;
  user-select: none;
}

body.woocommerce-account .tgp-svc-order-card__rail {
  grid-area: rail;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: var(--tgp-s-3);
  min-width: 0;
}

body.woocommerce-account .tgp-svc-order-card__total {
  font-family: var(--tgp-font);
  font-size: 16px;
  font-weight: 700;
  letter-spacing: -0.02em;
  color: var(--tgp-text);
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}

body.woocommerce-account .tgp-svc-order-card__total .woocommerce-Price-amount {
  color: inherit !important;
}

body.woocommerce-account .tgp-svc-order-card__btn-icon {
  flex-shrink: 0;
  opacity: 0.95;
}

body.woocommerce-account .tgp-svc-order-card__btn {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 9px 18px !important;
  border-radius: var(--tgp-r-full) !important;
  font-family: var(--tgp-font) !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  text-decoration: none !important;
  -webkit-appearance: none !important;
  appearance: none !important;
  cursor: pointer !important;
  box-sizing: border-box !important;
  white-space: nowrap;
  background: linear-gradient(135deg, rgba(147, 51, 234, 0.28) 0%, rgba(109, 40, 217, 0.2) 100%) !important;
  color: #e9d5ff !important;
  border: 1px solid rgba(167, 139, 250, 0.45) !important;
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.06) inset !important;
  transition:
    background var(--tgp-dur-1) var(--tgp-ease),
    color var(--tgp-dur-1) var(--tgp-ease),
    border-color var(--tgp-dur-1) var(--tgp-ease) !important;
}

body.woocommerce-account .tgp-svc-order-card__btn:hover {
  background: linear-gradient(135deg, rgba(147, 51, 234, 0.42) 0%, rgba(109, 40, 217, 0.35) 100%) !important;
  color: #fff !important;
  border-color: rgba(196, 181, 253, 0.65) !important;
}

body.woocommerce-account .tgp-svc-order-card__btn .tgp-svc-order-card__btn-icon {
  color: currentColor;
  stroke: currentColor;
}

body.woocommerce-account .tgp-svc-orders-page__footer {
  display: flex;
  justify-content: center;
  padding-top: var(--tgp-s-2);
}

@media (max-width: 900px) {
  body.woocommerce-account .tgp-svc-order-card {
    grid-template-columns: 48px minmax(0, 1fr);
    grid-template-areas:
      'media main'
      'rail rail';
    align-items: start;
  }

  body.woocommerce-account .tgp-svc-order-card__media {
    width: 48px;
    height: 48px;
  }

  body.woocommerce-account .tgp-svc-order-card__rail {
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding-top: var(--tgp-s-4);
    margin-top: var(--tgp-s-1);
    border-top: 1px solid var(--tgp-border);
  }

  body.woocommerce-account .tgp-svc-order-card__total {
    font-size: 17px;
  }
}

@media (max-width: 480px) {
  body.woocommerce-account .tgp-svc-orders-page__toolbar-btn {
    width: 100%;
    justify-content: center;
    text-align: center;
  }

  body.woocommerce-account .tgp-svc-order-card {
    padding: var(--tgp-s-4);
  }

  body.woocommerce-account .tgp-svc-order-card__rail {
    flex-direction: column;
    align-items: stretch;
    gap: var(--tgp-s-3);
  }

  body.woocommerce-account .tgp-svc-order-card__btn {
    width: 100%;
    justify-content: center !important;
  }
}

/* Form row */
.woocommerce-checkout .form-row,
.woocommerce-account .form-row { margin-bottom: 14px !important; }
abbr[title="required"] { color: #EF4444 !important; border: none !important; text-decoration: none !important; }

/* Single product — vendor link above add-to-cart (mobile-only; hook always outputs for vendors). */
.tgp-pdp-sellerdash-wrap {
  display: none !important;
}
/* My Account dashboard — “Seller dashboard” strip (mobile-only); quick-action cards SSR for all breakpoints */
.tgp-dash-sellerdash-wrap {
  display: none !important;
}
.tgp-dashboard-ssr {
  margin-bottom: 16px;
}
@media (max-width: 768px) {
  body.single-product .tgp-pdp-sellerdash-wrap {
    display: block !important;
    width: 100%;
    margin: 0 0 12px;
    box-sizing: border-box;
  }
  body.single-product .tgp-pdp-sellerdash.tgp-btn {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    min-height: 42px;
    height: auto;
    padding: 10px 16px;
    box-sizing: border-box;
  }
  body.single-product .tgp-pdp-sellerdash__icon {
    display: inline-flex;
    flex-shrink: 0;
  }
  body.single-product .tgp-pdp-sellerdash__icon svg {
    display: block;
  }

  body.woocommerce-account .tgp-dash-sellerdash-wrap {
    display: block !important;
    width: 100%;
    margin: 0 0 14px;
    box-sizing: border-box;
  }
  body.woocommerce-account .tgp-dash-sellerdash.tgp-btn {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    min-height: 42px;
    height: auto;
    padding: 10px 16px;
    box-sizing: border-box;
  }
  body.woocommerce-account .tgp-dash-sellerdash__icon {
    display: inline-flex;
    flex-shrink: 0;
  }
  body.woocommerce-account .tgp-dash-sellerdash__icon svg {
    display: block;
  }
}

/* Validation — never treat checkboxes like text fields */
.form-row.woocommerce-invalid input:not([type="checkbox"]):not([type="radio"]) { border-color: #EF4444 !important; box-shadow: 0 0 0 3px rgba(239,68,68,0.15) !important; }
.form-row.woocommerce-validated input:not([type="checkbox"]):not([type="radio"]) { border-color: #10B981 !important; }

/* ──────────────────────────────────────────────────────────────────────────
 * My Account → Wishlist: kill the grey "currently-playing" track highlight.
 *
 * The child theme's global `custom.css` paints `.audio-playing .current
 * .sr-playlist-item` with a dark `#1B1B1B` background + 1.1× scale +
 * -10px lift so it pops on the public-facing track grids. Inside the My
 * Account dashboard that highlight reads as a stray grey card against the
 * dark dashboard surface, which is what shows up when you start playing a
 * track on the wishlist tab. The wishlist player markup lives inside the
 * #desktop-player / #mobile-player wrappers emitted by
 * `custom_wishlist_content()` in hello-theme-child-master/functions.php,
 * so we scope our reset to those wrappers only — the public Tracks page
 * still gets the original "currently playing" treatment.
 * ────────────────────────────────────────────────────────────────────────── */
body.woocommerce-account #desktop-player .audio-playing .current.sr-playlist-item,
body.woocommerce-account #mobile-player .audio-playing .current.sr-playlist-item {
  background-color: transparent !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  --srp-trackactive-scale: 1 !important;
  --srp-trackactive-translateY: 0 !important;
  transform: none !important;
}

/* Wishlist Sonaar grid: round the cover artwork the same way the public
 * Tracks page does. The global `.sr_track_cover { border-radius: 10px }`
 * rule in hello-theme-child-master/css/custom.css already styles the
 * wrapper, but on the public Tracks page Elementor's wrapping element
 * adds the clipping context that keeps the inner <img> inside that
 * radius. The wishlist endpoint renders the same Sonaar shortcode
 * without that Elementor wrapper, so the unclipped <img> overflows the
 * rounded wrapper and the cover reads as sharp corners. We force both
 * the wrapper to clip and the inner image to round explicitly. */
body.woocommerce-account #desktop-player .sr_track_cover,
body.woocommerce-account #mobile-player .sr_track_cover {
  overflow: hidden !important;
  border-radius: 10px !important;
}
body.woocommerce-account #desktop-player .sr_track_cover img,
body.woocommerce-account #mobile-player .sr_track_cover img,
body.woocommerce-account #desktop-player img.sr_track_cover,
body.woocommerce-account #mobile-player img.sr_track_cover {
  border-radius: 10px !important;
}

/* ──────────────────────────────────────────────────────────────────────────
 * Vendor users don't earn Ghost Coins. Suppress every coin/reward UI string
 * across order-received, view-order, dashboard, and account pages so they
 * never see misleading "You earned …" or "+N GC per review" copy. The
 * `tgp-is-vendor` body class is added by `tgp_buyer_ui_body_class_mark_vendor`
 * in tgp-buyer-ui.php.
 *
 * Anything that explicitly mentions Ghost Coins / reward points goes here.
 * The "Submit Review & Earn Points" button label is rewritten via a gettext
 * filter (also vendor-scoped), so the icon + remaining markup stay intact.
 * ────────────────────────────────────────────────────────────────────────── */
body.tgp-is-vendor .ty-rewards,
body.tgp-is-vendor .tgp-ty4-shell .ty-rewards,
body.tgp-is-vendor .tgpco-wc-review__gc-pill,
body.tgp-is-vendor .tgpco-wc-review__buyerapp-sub,
body.tgp-is-vendor .tgpco-wc-review__incentive,
body.tgp-is-vendor .tgpco-wc-review__gc-badge,
/* Composite "Reviews by track" card — header coin pill, sub-headline GC
 * copy, and the per-row +N GC / bonus pills are all coin-only flair and
 * must be suppressed for vendor accounts. The green "Reviewed" pill
 * (.is-done) stays visible — it's a status indicator, not a payout. */
body.tgp-is-vendor .tgp-vo-review-collapsible__gc,
body.tgp-is-vendor .tgp-vo-review-collapsible__lead-copy,
body.tgp-is-vendor .tgp-vo-review-collapsible__pill.is-earn,
body.tgp-is-vendor .tgp-vo-review-collapsible__pill.is-bonus {
  display: none !important;
}
