/*
Theme Name: Guyscat Theme C
Theme URI: https://guyscat.com
Author: Muhtion Media
Author URI: https://guyscat.com
Description: Full-width Guyscat storefront with storefront discovery pages, category-first browsing, and a hover-animation variant.
Version: 4.55.228-br8
Requires at least: 6.5
Requires PHP: 8.1
Text Domain: guyscat-theme
*/

:root {
  --gc-accent: #cf8a34;
  --gc-accent-strong: #a5691f;
  --gc-accent-2: #7c3aed;
  --gc-accent-soft: rgba(207, 138, 52, 0.12);
  --gc-bg: #07111f;
  --gc-bg-alt: #0b1730;
  --gc-surface: rgba(var(--gc-surface-rgb), 0.96);
  --gc-surface-2: rgba(var(--gc-surface-rgb), 0.96);
  --gc-surface-3: rgba(255, 255, 255, 0.04);
  --gc-border: rgba(164, 182, 224, 0.14);
  --gc-border-strong: rgba(164, 182, 224, 0.24);
  --gc-text: #edf4ff;
  --gc-text-soft: #9dafcf;
  --gc-success: #3dd68c;
  --gc-wrap: 100%;
  --gc-page-gutter: clamp(16px, 2vw, 36px);
  --gc-shadow: 0 28px 70px rgba(3, 8, 21, 0.42);
  --gc-shadow-soft: 0 18px 40px rgba(3, 8, 21, 0.24);
  --gc-radius: 22px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--gc-text);
  line-height: 1.55;
  background:
    radial-gradient(circle at top left, rgba(var(--gc-accent-rgb), 0.14), transparent 30%),
    radial-gradient(circle at top right, rgba(var(--gc-accent-2-rgb), 0.16), transparent 34%),
    linear-gradient(180deg, var(--gc-bg) 0%, #0a1426 42%, var(--gc-bg) 100%);
}
img,
video { display: block; max-width: 100%; height: auto; }
a { color: var(--gc-accent); text-decoration: none; transition: color .18s ease; }
a:hover { color: #88efe0; }
input,
select,
button,
textarea { font: inherit; }

.gc-wrap {
  width: calc(100% - (var(--gc-page-gutter) * 2));
  max-width: none;
  margin: 0 auto;
}

.gc-site-header {
  position: sticky;
  top: 0;
  z-index: 50;
  border-bottom: 1px solid var(--gc-border);
  background: rgba(var(--gc-bg-rgb), 0.84);
  backdrop-filter: blur(18px);
}

.gc-header-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  min-height: 82px;
}

.gc-brand {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: var(--gc-text);
  font-size: 1.85rem; /* v4.38.83: fixed — no vw scaling */
  font-weight: 800;
  letter-spacing: -0.04em;
}

.gc-main-nav ul {
  display: flex;
  align-items: center;
  gap: 10px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.gc-main-nav a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 0 14px;
  border-radius: var(--gc-radius-pill);
  color: var(--gc-text-soft);
  font-weight: 700;
}

.gc-main-nav a:hover,
.gc-main-nav .current-menu-item > a,
.gc-main-nav .current-menu-parent > a,
.gc-main-nav .current-menu-ancestor > a {
  color: var(--gc-text);
  background: rgba(255, 255, 255, 0.06);
}

.gc-site-main { min-height: calc(100vh - 168px); }

.gc-clip-status-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 5px 11px;
  border-radius: var(--gc-radius-pill);
  border: 1px solid transparent;
  font-size: 12px;
  font-weight: 800;
  line-height: 1;
}

.gc-clip-status-badge--submitted {
  background: rgba(251, 191, 36, 0.14);
  border-color: rgba(251, 191, 36, 0.34);
  color: #f6d67b;
}

.gc-clip-status-badge--approved {
  background: rgba(61, 214, 140, 0.14);
  border-color: rgba(61, 214, 140, 0.34);
  color: #bef3d3;
}

.gc-clip-status-badge--changes-requested {
  background: rgba(168, 85, 247, 0.16);
  border-color: rgba(168, 85, 247, 0.34);
  color: #d9bbff;
}

.gc-clip-status-badge--disabled {
  background: rgba(239, 68, 68, 0.16);
  border-color: rgba(239, 68, 68, 0.32);
  color: #ffc6c6;
}

.gc-page-shell { padding: clamp(22px, 2.6vw, 40px) 0 64px; }
.gc-page-intro--compact { margin: 0 0 24px; }
.gc-page-title {
  margin: 0;
  font-size: clamp(1.8rem, 2.5vw, 3rem);
  line-height: 1.02;
  letter-spacing: -0.05em;
}
.gc-page-subtitle,
.gc-page-intro--compact p,
.gc-empty-state,
.woocommerce-result-count { color: var(--gc-text-soft); }
.gc-empty-state {
  margin: 0;
  padding: 24px 0;
  text-align: left;
}
.screen-reader-text {
  position: absolute !important;
  clip: rect(1px, 1px, 1px, 1px);
  padding: 0 !important;
  border: 0 !important;
  height: 1px !important;
  width: 1px !important;
  overflow: hidden;
}

.gc-button,
.button,
.add_to_cart_button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 46px;
  padding: 0 18px;
  border-radius: calc(var(--gc-radius-scale, 1) * 14px);
  border: 1px solid rgba(var(--gc-accent-rgb), 0.34);
  background: linear-gradient(135deg, var(--gc-accent), var(--gc-accent-strong));
  color: var(--gc-deep);
  font-weight: 800;
  letter-spacing: 0.01em;
  text-decoration: none;
  cursor: pointer;
  box-shadow: 0 14px 28px rgba(var(--gc-accent-rgb), 0.18);
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease, border-color .18s ease, color .18s ease, opacity .18s ease, filter .18s ease;
}

.gc-button:hover,
.button:hover,
.add_to_cart_button:hover {
  color: var(--gc-deep);
  transform: translateY(-2px);
  border-color: rgba(var(--gc-accent-rgb), 0.68);
  background: linear-gradient(135deg, #53e7d4, #20d5b8);
  box-shadow: 0 22px 44px rgba(var(--gc-accent-rgb), 0.28);
  filter: saturate(1.04);
}

.gc-button:focus-visible,
.button:focus-visible,
.add_to_cart_button:focus-visible {
  outline: none;
  border-color: rgba(var(--gc-accent-2-rgb), 0.72);
  box-shadow: 0 0 0 4px rgba(var(--gc-accent-2-rgb), 0.18), 0 20px 40px rgba(var(--gc-accent-rgb), 0.2);
}

.gc-button--ghost {
  background: transparent;
  color: var(--gc-text);
  border-color: var(--gc-border-strong);
  box-shadow: none;
}
.gc-button--ghost:hover {
  color: var(--gc-text);
  transform: translateY(-1px);
  border-color: rgba(var(--gc-accent-rgb), 0.42);
  background: rgba(var(--gc-accent-rgb), 0.12);
  box-shadow: 0 16px 32px rgba(3, 8, 20, 0.18);
  filter: none;
}

.add_to_cart_button.gc-cart-is-adding { opacity: .78; }
.add_to_cart_button.gc-cart-added {
  background: linear-gradient(135deg, var(--gc-success), #76f2b6);
  border-color: rgba(61, 214, 140, 0.5);
  color: #04110a;
  transform: scale(1.02);
  box-shadow: 0 18px 36px rgba(61, 214, 140, 0.18);
}
.added_to_cart.wc-forward { display: none !important; }

.gc-homepage {
  display: flex;
  flex-direction: column;
  gap: 26px;
}

.gc-landing-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(320px, .75fr);
  gap: 24px;
  padding: clamp(24px, 3vw, 40px);
  border: 1px solid var(--gc-border-strong);
  border-radius: calc(var(--gc-radius-scale, 1) * 34px);
  background:
    radial-gradient(circle at 84% 20%, rgba(var(--gc-accent-rgb), 0.22), transparent 26%),
    radial-gradient(circle at 96% 0%, rgba(var(--gc-accent-2-rgb), 0.18), transparent 24%),
    linear-gradient(140deg, rgba(var(--gc-slate-rgb), 0.98), rgba(var(--gc-bg-rgb), 0.98) 68%);
  box-shadow: var(--gc-shadow);
  overflow: hidden;
}

.gc-landing-hero::before,
.gc-landing-hero::after {
  content: "";
  position: absolute;
  pointer-events: none;
  border-radius: 50%;
  filter: blur(18px);
}

.gc-landing-hero::before {
  width: 260px;
  height: 260px;
  right: -70px;
  top: -80px;
  background: rgba(var(--gc-accent-rgb), 0.16);
}

.gc-landing-hero::after {
  width: 300px;
  height: 300px;
  left: -120px;
  bottom: -170px;
  background: rgba(var(--gc-accent-2-rgb), 0.14);
}

.gc-landing-hero__content,
.gc-landing-hero__stats { position: relative; z-index: 1; }

.gc-landing-hero__eyebrow {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0 12px;
  border-radius: var(--gc-radius-pill);
  background: rgba(var(--gc-accent-rgb), 0.14);
  border: 1px solid rgba(var(--gc-accent-rgb), 0.18);
  color: #8ef1e2;
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.gc-landing-hero__title {
  margin: 16px 0 14px;
  font-size: clamp(2.35rem, 4.5vw, 4.75rem);
  line-height: .94;
  letter-spacing: -0.07em;
  max-width: 900px;
}

.gc-landing-hero__text {
  margin: 0;
  max-width: 760px;
  color: var(--gc-text-soft);
  font-size: clamp(1rem, 1.3vw, 1.15rem);
}

.gc-landing-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 22px;
}

.gc-landing-hero__stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  align-self: end;
}

.gc-landing-stat {
  min-height: 120px;
  padding: 18px 18px 16px;
  border-radius: calc(var(--gc-radius-scale, 1) * 24px);
  border: 1px solid rgba(255, 255, 255, 0.08);
  background: rgba(255, 255, 255, 0.05);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
  backdrop-filter: blur(10px);
}

.gc-landing-stat strong {
  display: block;
  font-size: clamp(1.8rem, 2.2vw, 2.6rem);
  line-height: 1;
  letter-spacing: -0.05em;
}

.gc-landing-stat span {
  display: inline-block;
  margin-top: 10px;
  color: var(--gc-text-soft);
  font-weight: 700;
  font-size: .92rem;
}

.gc-homepage .gc-home-section {
  position: relative;
  padding: clamp(20px, 2vw, 28px);
  border-radius: calc(var(--gc-radius-scale, 1) * 30px);
  border: 1px solid var(--gc-border);
  background: linear-gradient(180deg, var(--gc-surface), var(--gc-surface-2));
  box-shadow: var(--gc-shadow-soft);
  overflow: hidden;
}

.gc-homepage .gc-home-section::before {
  content: "";
  position: absolute;
  left: -36px;
  bottom: -36px;
  width: 180px;
  height: 180px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(var(--gc-accent-rgb), 0.12), transparent 72%);
  pointer-events: none;
}

.gc-home-section--stores {
  background: linear-gradient(145deg, rgba(var(--gc-surface-rgb), 0.98), rgba(var(--gc-surface-2-rgb), 0.98));
}
.gc-home-section--new-clips {
  background: linear-gradient(180deg, rgba(var(--gc-surface-rgb), 0.98), rgba(var(--gc-surface-rgb), 0.98));
}
.gc-home-section--categories {
  background: linear-gradient(180deg, rgba(var(--gc-surface-rgb), 0.98), rgba(var(--gc-bg-rgb), 0.98));
}
.gc-home-section--models {
  background: linear-gradient(180deg, rgba(var(--gc-surface-rgb), 0.98), rgba(var(--gc-surface-rgb), 0.98));
}
.gc-home-section--top-clips {
  background: linear-gradient(145deg, rgba(var(--gc-surface-rgb), 0.98), rgba(var(--gc-surface-rgb), 0.98));
}

.gc-section-header {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 18px;
  padding-bottom: 14px;
  border-bottom: 1px solid var(--gc-border);
}

.gc-section-header h2,
.gc-section-header__link { margin: 0; }
.gc-section-header h2 {
  font-size: clamp(1.35rem, 1.85vw, 2.1rem);
  line-height: 1.05;
  letter-spacing: -0.04em;
}
.gc-section-header__link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--gc-accent);
  font-weight: 800;
  white-space: nowrap;
}
.gc-section-header__link::after {
  content: "↗";
  font-size: .9rem;
  opacity: .7;
}

.gc-feature-panels {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr));
  gap: 18px;
  margin-bottom: 18px;
}

.gc-feature-panel {
  position: relative;
  min-height: 250px;
  border-radius: calc(var(--gc-radius-scale, 1) * 26px);
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow: var(--gc-shadow-soft);
  background: linear-gradient(145deg, #0f3a5a 0%, var(--gc-bg-alt) 78%);
}

.gc-feature-panel::before {
  content: "";
  position: absolute;
  width: 220px;
  height: 220px;
  right: -50px;
  top: -66px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 255, 255, 0.14), transparent 70%);
  pointer-events: none;
}

.gc-feature-panel--secondary {
  background: linear-gradient(145deg, #432c88 0%, #111f3f 78%);
}

.gc-feature-panel--tertiary {
  background: linear-gradient(145deg, #12616b 0%, var(--gc-bg-alt) 78%);
}

.gc-feature-panel__media {
  position: absolute;
  inset: 0;
  display: block;
  overflow: hidden;
}
.gc-feature-panel__media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(var(--gc-deep-rgb), 0.08), rgba(var(--gc-deep-rgb), 0.2) 30%, rgba(var(--gc-deep-rgb), 0.78));
}
.gc-feature-panel__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.04);
  opacity: .58;
  filter: saturate(1.04) contrast(1.02);
}

.gc-feature-panel a { display: block; height: 100%; color: #fff; }
.gc-feature-panel__control {
  display: block;
  width: 100%;
  height: 100%;
  padding: 0;
  border: 0;
  background: transparent;
  color: #fff;
  text-align: left;
  cursor: pointer;
}
.gc-feature-panel__content {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  height: 100%;
  padding: 22px;
}
.gc-feature-panel__eyebrow {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 0 12px;
  border-radius: var(--gc-radius-pill);
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.12);
  font-size: .78rem;
  font-weight: 800;
  margin-bottom: auto;
  width: max-content;
}
.gc-feature-panel__meta {
  display: flex;
  gap: 12px;
  color: rgba(255, 255, 255, 0.78);
  font-size: .88rem;
  margin: 16px 0 8px;
}
.gc-feature-panel h3 {
  margin: 0;
  font-size: clamp(1.55rem, 2vw, 2rem);
  line-height: 1;
  letter-spacing: -0.04em;
  max-width: 78%;
}
.gc-feature-panel__store-name {
  margin: 12px 0 0;
  color: rgba(255, 255, 255, 0.8);
  font-size: .95rem;
  line-height: 1.4;
}
.gc-feature-panel__control:focus-visible {
  outline: 3px solid rgba(255, 255, 255, 0.42);
  outline-offset: -3px;
}
.gc-feature-panel__control.is-active {
  box-shadow: inset 0 0 0 2px rgba(255, 255, 255, 0.32);
}
.gc-feature-panel__control.is-active .gc-feature-panel__eyebrow {
  background: rgba(255, 255, 255, 0.94);
  border-color: rgba(255, 255, 255, 0.94);
  color: var(--gc-bg);
}

.gc-store-mini-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 200px), 1fr));
  gap: 14px;
}


.gc-feature-panels--top-models {
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 14px;
  align-items: stretch;
}

.gc-feature-panels--top-models .gc-feature-panel {
  min-height: 208px;
  height: 100%;
}

.gc-feature-panels--top-models .gc-feature-panel__content {
  padding: 16px;
}

.gc-feature-panels--top-models .gc-feature-panel__eyebrow {
  min-height: 28px;
  padding: 0 10px;
  font-size: .7rem;
}

.gc-feature-panels--top-models .gc-feature-panel__meta {
  gap: 8px;
  font-size: .8rem;
  margin: 12px 0 6px;
}

.gc-feature-panels--top-models .gc-feature-panel h3 {
  max-width: 100%;
  font-size: clamp(1rem, 1.25vw, 1.22rem);
  line-height: 1.08;
}

.gc-feature-panels--top-models .gc-feature-panel__store-name {
  margin: 8px 0 0;
  font-size: .82rem;
  line-height: 1.35;
}

@media (max-width: 1280px) {
  .gc-feature-panels--top-models {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 820px) {
  .gc-feature-panels--top-models {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 560px) {
  .gc-feature-panels--top-models {
    grid-template-columns: 1fr;
  }
}

.gc-store-mini-card {
  background: var(--gc-surface-3);
  border: 1px solid var(--gc-border);
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  box-shadow: var(--gc-shadow-soft);
}
.gc-store-mini-card a {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px;
  color: inherit;
}
.gc-store-mini-card__media {
  width: 58px;
  height: 58px;
  border-radius: calc(var(--gc-radius-scale, 1) * 16px);
  overflow: hidden;
  background: rgba(var(--gc-accent-rgb), 0.1);
  border: 1px solid rgba(var(--gc-accent-rgb), 0.14);
  flex-shrink: 0;
}
.gc-store-mini-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.gc-store-mini-card h3 {
  margin: 0;
  font-size: 1rem;
  line-height: 1.2;
  color: var(--gc-text);
}

.gc-card-grid,
.gc-category-grid,
.gc-profile-grid,
.gc-grid,
.gc-store-grid {
  display: grid;
  gap: 18px;
}
.gc-card-grid,
.gc-grid,
.gc-store-grid {
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 260px), 1fr));
}
.gc-category-grid {
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 220px), 1fr));
}
.gc-profile-grid {
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 220px), 1fr));
}

.gc-clip-card,
.gc-category-card,
.gc-panel,
.gc-clip-single__panel,
.gc-card {
  background: var(--gc-surface-3);
  border: 1px solid var(--gc-border);
  border-radius: var(--gc-radius);
  overflow: hidden;
  box-shadow: var(--gc-shadow-soft);
}

.gc-clip-card {
  display: flex;
  flex-direction: column;
  min-height: 100%;
}
.gc-clip-card__media-link { display: block; color: inherit; }
.gc-clip-card__media {
  position: relative;
  background: var(--gc-deep);
  aspect-ratio: 16 / 10;
  overflow: hidden;
  transform: translateZ(0);
}
.gc-clip-card__media::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: 54%;
  background: linear-gradient(180deg, transparent, rgba(0, 0, 0, 0.34));
  pointer-events: none;
}
.gc-clip-card__media img,
.gc-clip-card__media video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  backface-visibility: hidden;
  transform: translateZ(0);
  transition: transform .28s ease;
}
.gc-clip-card:hover .gc-clip-card__media img,
.gc-clip-card:hover .gc-clip-card__media video {
  transform: scale(1.02);
}
.gc-clip-card__duration-badge {
  position: absolute;
  right: 12px;
  bottom: 12px;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 0 10px;
  border-radius: var(--gc-radius-pill);
  background: rgba(var(--gc-deep-rgb), 0.82);
  border: 1px solid rgba(255, 255, 255, 0.12);
  color: #fff;
  font-size: .8rem;
  font-weight: 800;
}
.gc-clip-card__body {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 12px;
  padding: 16px 16px 18px;
}
.gc-clip-card__title {
  margin: 0;
  font-size: 1.04rem;
  line-height: 1.3;
}
.gc-clip-card__title a { color: var(--gc-text); }
.gc-clip-card__title a:hover { color: var(--gc-accent); }
.gc-clip-card__meta-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
  color: var(--gc-text-soft);
  font-size: .92rem;
}
.gc-clip-card__store {
  color: var(--gc-accent);
  font-weight: 700;
}
.gc-clip-card__date { opacity: .88; }
.gc-clip-card__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: auto;
}
.gc-clip-card__price {
  font-size: 1.06rem;
  font-weight: 800;
  color: var(--gc-text);
}
.gc-clip-card .add_to_cart_button {
  min-width: 132px;
  padding-left: 16px;
  padding-right: 16px;
}

.gc-profile-tile {
  background: transparent;
  border: 0;
  box-shadow: none;
  border-radius: 0;
  overflow: visible;
}
.gc-profile-tile a { display: block; color: inherit; }
.gc-profile-tile__media {
  aspect-ratio: 16 / 11;
  overflow: hidden;
  border-radius: calc(var(--gc-radius-scale, 1) * 22px);
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid var(--gc-border);
  box-shadow: var(--gc-shadow-soft);
}
.gc-profile-tile__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.gc-profile-tile__title {
  margin: 12px 4px 0;
  font-size: 1rem;
  line-height: 1.2;
  font-weight: 800;
  color: var(--gc-text);
}

.gc-category-card a {
  display: block;
  padding: 18px;
  color: inherit;
}
.gc-category-card h3 {
  margin: 0 0 10px;
  font-size: 1rem;
  color: var(--gc-text);
}
.gc-category-card span { color: var(--gc-text-soft); }

.gc-store-directory-page {
  padding-top: clamp(24px, 2.5vw, 36px);
  padding-left: clamp(20px, 2vw, 28px);
  padding-right: clamp(20px, 2vw, 28px);
  border-radius: calc(var(--gc-radius-scale, 1) * 32px);
  border: 1px solid var(--gc-border);
  background: linear-gradient(180deg, rgba(var(--gc-surface-rgb), 0.98), rgba(var(--gc-bg-rgb), 0.98));
  box-shadow: var(--gc-shadow);
}
.gc-store-directory-intro { margin-bottom: 20px; }
.gc-store-directory-page .gc-page-title { margin: 0; }
.gc-store-directory-hero {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr));
  gap: 18px;
  margin-bottom: 28px;
}
.gc-store-directory-toolbar {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 18px;
  flex-wrap: wrap;
  margin: 18px 0 12px;
  padding-top: 18px;
  border-top: 1px solid var(--gc-border);
}
.gc-store-sort-control,
.gc-store-search-control,
.gc-store-category-control {
  display: flex;
  flex-direction: column;
  gap: 8px;
  font-weight: 800;
  color: var(--gc-text-soft);
}
.gc-store-sort-control select,
.gc-store-search-control input,
.gc-store-category-control select {
  min-height: 46px;
  min-width: 220px;
  padding: 0 14px;
  border-radius: calc(var(--gc-radius-scale, 1) * 14px);
  border: 1px solid var(--gc-border);
  background: rgba(255, 255, 255, 0.04);
  color: var(--gc-text);
  transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
.gc-store-sort-control select:focus,
.gc-store-search-control input:focus,
.gc-store-category-control select:focus {
  outline: none;
  border-color: rgba(var(--gc-accent-rgb), 0.42);
  box-shadow: 0 0 0 4px rgba(var(--gc-accent-rgb), 0.12);
}
.gc-store-filter-controls {
  display: flex;
  align-items: flex-end;
  gap: 12px;
  flex-wrap: wrap;
  margin-left: auto;
}
.gc-store-ranking-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 360px), 1fr));
  gap: 0 24px;
  margin-top: 8px;
}
.gc-store-rank-row {
  background: transparent;
  border: 0;
  border-bottom: 1px solid var(--gc-border);
  border-radius: 0;
  box-shadow: none;
}
.gc-store-rank-row__link {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 16px 4px;
  color: inherit;
}
.gc-store-rank-row__rank {
  min-width: 42px;
  font-size: clamp(1.8rem, 2vw, 2.25rem);
  line-height: 1;
  font-style: italic;
  font-weight: 900;
  letter-spacing: -0.05em;
  color: #8dfaea;
}
.gc-store-rank-row__media {
  width: 78px;
  height: 58px;
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  overflow: hidden;
  flex-shrink: 0;
  background: rgba(255, 255, 255, 0.05);
  box-shadow: 0 0 0 1px var(--gc-border);
}
.gc-store-rank-row__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.gc-store-rank-row__body {
  display: flex;
  flex-direction: column;
  min-width: 0;
  gap: 8px;
}
.gc-store-rank-row__title {
  color: var(--gc-text);
  font-size: 1rem;
  line-height: 1.15;
}
.gc-store-rank-row__meta {
  display: flex;
  align-items: center;
  gap: 8px 10px;
  flex-wrap: wrap;
  color: var(--gc-text-soft);
}
.gc-store-rank-row__count-badge,
.gc-store-rank-row__text-badge {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  padding: 0 10px;
  border-radius: var(--gc-radius-pill);
  font-size: .75rem;
  font-weight: 800;
}
.gc-store-rank-row__count-badge {
  background: rgba(var(--gc-accent-rgb), 0.12);
  border: 1px solid rgba(var(--gc-accent-rgb), 0.18);
  color: #93f7ea;
}
.gc-store-rank-row__text-badge {
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.08);
  color: var(--gc-text-soft);
}
.gc-store-rank-row__latest {
  display: inline-flex;
  color: var(--gc-text-soft);
  font-size: .82rem;
  white-space: nowrap;
}
.gc-empty-state--filters {
  grid-column: 1 / -1;
  padding: 26px 0;
}

.gc-clip-single {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(360px, .8fr);
  gap: 28px;
  align-items: start;
}
.gc-clip-single__media {
  background: var(--gc-deep);
  border-radius: calc(var(--gc-radius-scale, 1) * 28px);
  overflow: hidden;
  border: 1px solid var(--gc-border);
  box-shadow: var(--gc-shadow);
}
.gc-clip-single__media video,
.gc-clip-single__media img {
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}
.gc-clip-single__panel { padding: 28px; }
.gc-clip-single__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 16px;
  margin-bottom: 12px;
  color: var(--gc-text-soft);
}
.gc-clip-single__meta a { color: var(--gc-accent); font-weight: 700; }
.gc-clip-single__price {
  margin: 12px 0 18px;
  font-size: 1.45rem;
  font-weight: 900;
  letter-spacing: -0.03em;
}
.gc-chip-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 14px;
}
.gc-chip {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0 12px;
  border-radius: var(--gc-radius-pill);
  background: rgba(var(--gc-accent-rgb), 0.11);
  border: 1px solid rgba(var(--gc-accent-rgb), 0.16);
  color: #97f7ea;
  font-weight: 700;
  font-size: .88rem;
}
.gc-content-section { margin-top: 28px; }
.gc-subsection + .gc-subsection { margin-top: 24px; }

.gc-content {
  padding: clamp(22px, 2.6vw, 40px) 0 64px;
}
.gc-content > article {
  max-width: 980px;
  padding: 28px;
  border-radius: calc(var(--gc-radius-scale, 1) * 28px);
  border: 1px solid var(--gc-border);
  background: var(--gc-surface-3);
  box-shadow: var(--gc-shadow-soft);
}
.gc-card { padding: 22px; }
.gc-card-title { margin: 0 0 10px; }
.gc-card-meta { color: var(--gc-text-soft); }

nav.woocommerce-pagination ul {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  list-style: none;
  padding: 0;
  margin: 24px 0 0;
}
nav.woocommerce-pagination a,
nav.woocommerce-pagination span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  min-height: 44px;
  padding: 0 14px;
  border-radius: calc(var(--gc-radius-scale, 1) * 12px);
  border: 1px solid var(--gc-border);
  background: rgba(255, 255, 255, 0.04);
  color: var(--gc-text);
  font-weight: 800;
}
nav.woocommerce-pagination .current {
  background: linear-gradient(135deg, var(--gc-accent), var(--gc-accent-strong));
  color: var(--gc-deep);
  border-color: rgba(var(--gc-accent-rgb), 0.34);
}

.gc-site-footer {
  margin-top: 46px;
  padding: 30px 0 38px;
  border-top: 1px solid var(--gc-border);
  background: rgba(5, 9, 18, 0.66);
  color: var(--gc-text-soft);
}
.gc-site-footer a { color: var(--gc-text); }
.gc-site-footer p { margin: 0; }

@media (max-width: 1100px) {
  .gc-landing-hero {
    grid-template-columns: 1fr;
  }
  .gc-landing-hero__stats {
    align-self: auto;
  }
  .gc-clip-single {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  .gc-wrap {
    width: calc(100% - 24px);
  }
  .gc-header-inner {
    min-height: auto;
    padding: 14px 0;
    flex-direction: column;
    align-items: flex-start;
  }
  .gc-main-nav ul {
    flex-wrap: wrap;
  }
  .gc-homepage .gc-home-section,
  .gc-store-directory-page,
  .gc-landing-hero,
  .gc-content > article,
  .gc-clip-single__panel {
    padding-left: 20px;
    padding-right: 20px;
  }
  .gc-landing-hero__stats {
    grid-template-columns: 1fr;
  }
  .gc-section-header {
    flex-direction: column;
    align-items: flex-start;
  }
  .gc-store-directory-toolbar {
    align-items: stretch;
  }
  .gc-store-filter-controls {
    width: 100%;
    margin-left: 0;
  }
  .gc-store-search-control,
  .gc-store-category-control,
  .gc-store-sort-control {
    width: 100%;
  }
  .gc-store-search-control input,
  .gc-store-category-control select,
  .gc-store-sort-control select {
    width: 100%;
    min-width: 0;
  }
  .gc-store-rank-row__latest {
    width: 100%;
  }
  .gc-feature-panel h3 {
    max-width: 100%;
  }
}


body.gc-store-manager-page {
  background:
    radial-gradient(circle at top left, rgba(var(--gc-accent-rgb), 0.12), transparent 28%),
    radial-gradient(circle at top right, rgba(var(--gc-accent-2-rgb), 0.14), transparent 34%),
    var(--gc-bg);
}

body.gc-store-manager-page .site-main {
  padding: 0 !important;
}

.gc-content--store-manager {
  padding: clamp(18px, 2vw, 28px) 0 64px;
}

.gc-content--store-manager .gc-store-manager-shell {
  min-width: 0;
}

.gc-category-page {
  display: flex;
  flex-direction: column;
  gap: 28px;
}

.gc-category-back {
  align-self: flex-start;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 40px;
  padding: 0 14px;
  border: 1px solid var(--gc-border);
  border-radius: var(--gc-radius-pill);
  background: rgba(255, 255, 255, 0.04);
  color: var(--gc-text);
  cursor: pointer;
}

.gc-category-hero {
  display: grid;
  grid-template-columns: 128px minmax(0, 1fr);
  gap: 22px;
  align-items: start;
}

.gc-category-hero__media {
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  overflow: hidden;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid var(--gc-border);
  aspect-ratio: 1.05 / 0.86;
}

.gc-category-hero__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.gc-category-hero__eyebrow {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0 10px;
  border-radius: var(--gc-radius-pill);
  background: rgba(var(--gc-accent-2-rgb), 0.16);
  color: #d7c7ff;
  font-size: .74rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.gc-category-hero__title {
  margin: 10px 0 8px;
  font-size: clamp(2rem, 3vw, 3.1rem);
  line-height: 1;
  letter-spacing: -0.05em;
}

.gc-category-hero__stats {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  color: var(--gc-text-soft);
  font-size: .95rem;
}

.gc-category-hero__description {
  margin: 16px 0 0;
  max-width: 1000px;
  color: var(--gc-text-soft);
}

.gc-category-focus-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.gc-category-focus-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  padding: 0 16px;
  border-radius: var(--gc-radius-pill);
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid transparent;
  color: var(--gc-text);
  font-weight: 700;
}

.gc-category-focus-pill.is-active {
  background: linear-gradient(135deg, rgba(var(--gc-accent-2-rgb), 0.92), rgba(var(--gc-accent-rgb), 0.78));
  border-color: rgba(255, 255, 255, 0.16);
}

.gc-category-top-grid {
  display: grid;
  grid-template-columns: minmax(240px, 300px) minmax(0, 1fr);
  gap: 28px;
  align-items: start;
}

.gc-category-top-grid__stores,
.gc-category-top-grid__clips {
  min-width: 0;
}

.gc-category-store-list {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin-top: 18px;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid var(--gc-border);
  border-radius: calc(var(--gc-radius-scale, 1) * 20px);
  overflow: hidden;
}

.gc-category-store-row {
  border-bottom: 1px solid var(--gc-border);
}

.gc-category-store-row:last-child {
  border-bottom: 0;
}

.gc-category-store-row__link {
  display: grid;
  grid-template-columns: 54px 52px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  min-height: 74px;
  padding: 10px 14px;
  color: inherit;
}

.gc-category-store-row__rank {
  color: rgba(255, 255, 255, 0.4);
  font-size: 2rem;
  line-height: 1;
  font-style: italic;
  font-weight: 800;
}

.gc-category-store-row__media {
  width: 52px;
  height: 52px;
  border-radius: var(--gc-radius-pill);
  overflow: hidden;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.08);
}

.gc-category-store-row__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.gc-category-store-row__body {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}

.gc-category-store-row__body strong,
.gc-category-store-row__body span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.gc-category-store-row__body span {
  color: var(--gc-text-soft);
  font-size: .88rem;
}

.gc-category-top-clips-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  margin-top: 18px;
}

.gc-category-top-clip-card {
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid var(--gc-border);
  border-radius: calc(var(--gc-radius-scale, 1) * 20px);
  overflow: hidden;
  box-shadow: var(--gc-shadow-soft);
}

.gc-category-top-clip-card__media-link {
  position: relative;
  display: block;
}

.gc-category-top-clip-card__rank {
  position: absolute;
  left: 12px;
  bottom: 12px;
  z-index: 2;
  color: #fff;
  font-size: 1.9rem;
  line-height: 1;
  font-style: italic;
  font-weight: 800;
  text-shadow: 0 4px 18px rgba(0, 0, 0, 0.45);
}

.gc-category-top-clip-card__media {
  position: relative;
  aspect-ratio: 16 / 9;
  background: var(--gc-deep);
  overflow: hidden;
}

.gc-category-top-clip-card__media img,
.gc-category-top-clip-card__media video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.gc-category-top-clip-card__media::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: 58%;
  background: linear-gradient(180deg, transparent, rgba(0, 0, 0, 0.44));
  pointer-events: none;
}

.gc-category-top-clip-card__duration {
  position: absolute;
  right: 12px;
  top: 12px;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0 10px;
  border-radius: var(--gc-radius-pill);
  background: rgba(var(--gc-deep-rgb), 0.82);
  border: 1px solid rgba(255, 255, 255, 0.12);
  color: #fff;
  font-size: .78rem;
  font-weight: 800;
}

.gc-category-top-clip-card__body {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 14px;
}

.gc-category-top-clip-card__body h3 {
  margin: 0;
  font-size: .95rem;
  line-height: 1.34;
}

.gc-category-top-clip-card__body h3 a {
  color: var(--gc-text);
}

.gc-category-top-clip-card__meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  min-width: 0;
  color: var(--gc-text-soft);
  font-size: .85rem;
}

.gc-category-top-clip-card__store {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.gc-store-mini-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 16px;
}

.gc-home-section--category-recent .gc-card-grid,
.gc-home-section--category-related-clips .gc-card-grid,
.gc-home-section--category-trending .gc-card-grid {
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 228px), 1fr));
}

@media (max-width: 1120px) {
  .gc-category-top-grid {
    grid-template-columns: 1fr;
  }

  .gc-category-top-clips-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 780px) {
  .gc-category-hero {
    grid-template-columns: 1fr;
  }

  .gc-category-hero__media {
    max-width: 180px;
  }

  .gc-category-top-clips-grid {
    grid-template-columns: 1fr;
  }

  .gc-category-store-row__link {
    grid-template-columns: 46px 46px minmax(0, 1fr);
  }

  .gc-category-store-row__rank {
    font-size: 1.6rem;
  }
}

.gc-page-intro__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 12px;
  border-radius: var(--gc-radius-pill);
  background: rgba(var(--gc-accent-2-rgb), 0.16);
  border: 1px solid rgba(var(--gc-accent-2-rgb), 0.26);
  color: #d8c7ff;
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.gc-featured-model-layout {
  display: grid;
  grid-template-columns: minmax(320px, 1.05fr) minmax(0, 1.45fr);
  gap: 22px;
  align-items: stretch;
}

.gc-featured-model-hero {
  min-width: 0;
}

.gc-featured-model-hero > a {
  position: relative;
  display: grid;
  min-height: 100%;
  color: #fff;
  border-radius: calc(var(--gc-radius-scale, 1) * 28px);
  overflow: hidden;
  border: 1px solid rgba(var(--gc-border-rgb), 0.18);
  background: linear-gradient(135deg, rgba(var(--gc-surface-rgb), 0.98), rgba(var(--gc-surface-rgb), 0.98));
  box-shadow: var(--gc-shadow-soft);
}

.gc-featured-model-hero__media {
  position: absolute;
  inset: 0;
}

.gc-featured-model-hero__media::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(var(--gc-deep-rgb), 0.06), rgba(var(--gc-deep-rgb), 0.78)),
    linear-gradient(135deg, rgba(var(--gc-accent-rgb), 0.22), transparent 48%, rgba(var(--gc-accent-2-rgb), 0.28));
}

.gc-featured-model-hero__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.gc-featured-model-hero__content {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 18px;
  min-height: 420px;
  padding: 28px;
}

.gc-featured-model-hero__eyebrow {
  display: inline-flex;
  align-self: flex-start;
  padding: 7px 12px;
  border-radius: var(--gc-radius-pill);
  background: rgba(var(--gc-deep-rgb), 0.56);
  border: 1px solid rgba(255, 255, 255, 0.14);
  color: #fff;
  font-size: .74rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.gc-featured-model-hero__identity {
  display: flex;
  align-items: center;
  gap: 16px;
  min-width: 0;
}

.gc-featured-model-hero__avatar {
  flex: 0 0 84px;
  width: 84px;
  height: 84px;
  border-radius: calc(var(--gc-radius-scale, 1) * 28px);
  overflow: hidden;
  border: 2px solid rgba(255, 255, 255, 0.24);
  box-shadow: 0 16px 34px rgba(3, 8, 21, 0.36);
}

.gc-featured-model-hero__avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.gc-featured-model-hero__identity h3 {
  margin: 0 0 6px;
  font-size: clamp(1.55rem, 2vw, 2.1rem);
  line-height: 1.08;
}

.gc-featured-model-hero__identity p {
  margin: 0;
  color: rgba(255, 255, 255, 0.82);
  font-size: .96rem;
}

.gc-featured-model-hero__stats {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.gc-featured-model-hero__stats span {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0 12px;
  border-radius: var(--gc-radius-pill);
  background: rgba(var(--gc-deep-rgb), 0.54);
  border: 1px solid rgba(255, 255, 255, 0.14);
  color: rgba(255, 255, 255, 0.9);
  font-size: .84rem;
  font-weight: 700;
}

.gc-featured-model-hero__cta {
  display: inline-flex;
  align-self: flex-start;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 0 18px;
  border-radius: var(--gc-radius-pill);
  background: rgba(255, 255, 255, 0.12);
  border: 1px solid rgba(255, 255, 255, 0.18);
  color: #fff;
  font-weight: 800;
}

.gc-featured-model-layout__clips {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.gc-categories-overview-page {
  display: flex;
  flex-direction: column;
  gap: 28px;
}

.gc-categories-overview-hero {
  display: flex;
  flex-direction: column;
  gap: 22px;
}

.gc-categories-overview-hero__header {
  display: grid;
  grid-template-columns: minmax(260px, 1fr) minmax(320px, 520px);
  gap: 24px;
  align-items: end;
}

.gc-categories-overview-hero__header .gc-page-title {
  margin: 12px 0 0;
}

.gc-categories-overview-hero__text {
  margin: 0;
  color: var(--gc-text-soft);
  font-size: 1.02rem;
  line-height: 1.7;
}

.gc-categories-feature-banners {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.gc-category-feature-banner {
  position: relative;
  min-width: 0;
  border-radius: calc(var(--gc-radius-scale, 1) * 24px);
  overflow: hidden;
  border: 1px solid rgba(var(--gc-border-rgb), 0.18);
  background: linear-gradient(135deg, rgba(var(--gc-surface-rgb), 0.98), rgba(var(--gc-surface-rgb), 0.98));
  box-shadow: var(--gc-shadow-soft);
}

.gc-category-feature-banner > a {
  position: relative;
  display: block;
  min-height: 220px;
  color: #fff;
}

.gc-category-feature-banner__media {
  position: absolute;
  inset: 0;
}

.gc-category-feature-banner__media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(var(--gc-deep-rgb), 0.14), rgba(var(--gc-deep-rgb), 0.76));
}

.gc-category-feature-banner__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.gc-category-feature-banner__content {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 8px;
  min-height: 220px;
  padding: 24px;
}

.gc-category-feature-banner__eyebrow {
  display: inline-flex;
  align-self: flex-start;
  padding: 6px 10px;
  border-radius: var(--gc-radius-pill);
  background: rgba(var(--gc-deep-rgb), 0.48);
  border: 1px solid rgba(255, 255, 255, 0.12);
  color: #fff;
  font-size: .74rem;
  font-weight: 800;
}

.gc-category-feature-banner h2 {
  margin: 0;
  font-size: clamp(1.5rem, 2vw, 2rem);
  line-height: 1.08;
}

.gc-category-feature-banner__count {
  color: rgba(255, 255, 255, 0.86);
  font-size: .95rem;
  font-weight: 700;
}

.gc-category-feature-banner--secondary {
  background: linear-gradient(135deg, rgba(var(--gc-surface-rgb), 0.98), rgba(var(--gc-surface-rgb), 0.98));
}

.gc-category-feature-banner--tertiary {
  background: linear-gradient(135deg, rgba(var(--gc-surface-rgb), 0.98), rgba(var(--gc-surface-rgb), 0.98));
}

.gc-categories-directory {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.gc-categories-directory__toolbar {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 14px;
  align-items: center;
}

.gc-categories-directory__sort,
.gc-categories-directory__search {
  display: flex;
  align-items: center;
  gap: 10px;
}

.gc-categories-directory__sort span {
  color: var(--gc-text-soft);
  font-size: .92rem;
  font-weight: 700;
}

.gc-categories-directory__sort select,
.gc-categories-directory__search input {
  min-height: 46px;
  border-radius: calc(var(--gc-radius-scale, 1) * 16px);
  border: 1px solid var(--gc-border-strong);
  background: rgba(var(--gc-surface-rgb), 0.94);
  color: var(--gc-text);
  padding: 0 16px;
  font: inherit;
}

.gc-categories-directory__search input {
  width: min(100%, 320px);
}

.gc-categories-directory__grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 180px), 1fr));
  gap: 18px;
}

.gc-category-overview-card {
  min-width: 0;
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  overflow: hidden;
  border: 1px solid var(--gc-border);
  background: rgba(255, 255, 255, 0.03);
  box-shadow: var(--gc-shadow-soft);
}

.gc-category-overview-card > a {
  display: block;
  color: var(--gc-text);
}

.gc-category-overview-card__media {
  position: relative;
  aspect-ratio: 4 / 3;
  background: var(--gc-deep);
  overflow: hidden;
}

.gc-category-overview-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .28s ease;
}

.gc-category-overview-card:hover .gc-category-overview-card__media img {
  transform: scale(1.04);
}

.gc-category-overview-card__body {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 12px;
}

.gc-category-overview-card__body h3 {
  margin: 0;
  font-size: .95rem;
  line-height: 1.28;
}

.gc-category-overview-card__body span {
  color: var(--gc-text-soft);
  font-size: .84rem;
}

.gc-category-top-clip-card {
  display: flex;
  flex-direction: column;
  min-height: 100%;
}

.gc-category-top-clip-card__body {
  flex: 1;
}

.gc-category-top-clip-card__cart {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  margin-top: auto;
  padding: 0 14px;
  border-radius: var(--gc-radius-pill);
  border: 1px solid rgba(var(--gc-accent-rgb), 0.24);
  background: rgba(var(--gc-accent-rgb), 0.14);
  color: var(--gc-text);
  font-size: .84rem;
  font-weight: 800;
  transition: transform .2s ease, border-color .2s ease, background-color .2s ease;
}

.gc-category-top-clip-card__cart:hover {
  transform: translateY(-1px);
  border-color: rgba(var(--gc-accent-rgb), 0.42);
  background: rgba(var(--gc-accent-rgb), 0.22);
}

body.gc-variant-b .gc-clip-card,
body.gc-variant-b .gc-category-top-clip-card {
  position: relative;
  transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease;
}

body.gc-variant-b .gc-clip-card:hover,
body.gc-variant-b .gc-category-top-clip-card:hover {
  transform: translateY(-6px);
  border-color: rgba(var(--gc-accent-2-rgb), 0.28);
  box-shadow: 0 28px 62px rgba(3, 8, 21, 0.34);
}

body.gc-variant-b .gc-clip-card__media img,
body.gc-variant-b .gc-clip-card__media video,
body.gc-variant-b .gc-category-top-clip-card__media img,
body.gc-variant-b .gc-category-top-clip-card__media video {
  transition: transform .4s ease, filter .4s ease;
}

body.gc-variant-b .gc-clip-card:hover .gc-clip-card__media img,
body.gc-variant-b .gc-clip-card:hover .gc-clip-card__media video,
body.gc-variant-b .gc-category-top-clip-card:hover .gc-category-top-clip-card__media img,
body.gc-variant-b .gc-category-top-clip-card:hover .gc-category-top-clip-card__media video {
  transform: scale(1.065);
  filter: saturate(1.08) contrast(1.04);
}

body.gc-variant-c .gc-clip-card,
body.gc-variant-c .gc-category-top-clip-card {
  position: relative;
  isolation: isolate;
  transition: transform .32s cubic-bezier(.22, 1, .36, 1), box-shadow .32s ease, border-color .32s ease;
}

body.gc-variant-c .gc-clip-card::before,
body.gc-variant-c .gc-category-top-clip-card::before {
  content: "";
  position: absolute;
  inset: -120% -38%;
  z-index: 1;
  background: linear-gradient(120deg, transparent 35%, rgba(255, 255, 255, 0.16) 50%, transparent 65%);
  transform: translateX(-120%);
  transition: transform .72s ease;
  pointer-events: none;
}

body.gc-variant-c .gc-clip-card:hover,
body.gc-variant-c .gc-category-top-clip-card:hover {
  transform: translateY(-4px);
  border-color: rgba(var(--gc-accent-rgb), 0.26);
  box-shadow: 0 26px 58px rgba(3, 8, 21, 0.32);
}

body.gc-variant-c .gc-clip-card:hover::before,
body.gc-variant-c .gc-category-top-clip-card:hover::before {
  transform: translateX(120%);
}

body.gc-variant-c .gc-clip-card__media img,
body.gc-variant-c .gc-clip-card__media video,
body.gc-variant-c .gc-category-top-clip-card__media img,
body.gc-variant-c .gc-category-top-clip-card__media video {
  transition: transform .45s ease, filter .45s ease;
}

body.gc-variant-c .gc-clip-card:hover .gc-clip-card__media img,
body.gc-variant-c .gc-clip-card:hover .gc-clip-card__media video,
body.gc-variant-c .gc-category-top-clip-card:hover .gc-category-top-clip-card__media img,
body.gc-variant-c .gc-category-top-clip-card:hover .gc-category-top-clip-card__media video {
  transform: scale(1.045);
  filter: contrast(1.05) brightness(1.03);
}

@media (max-width: 1180px) {
  .gc-featured-model-layout {
    grid-template-columns: 1fr;
  }

  .gc-categories-feature-banners {
    grid-template-columns: 1fr;
  }

  .gc-categories-overview-hero__header {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 820px) {
  .gc-featured-model-layout__clips {
    grid-template-columns: 1fr;
  }

  .gc-categories-directory__toolbar {
    align-items: stretch;
  }

  .gc-categories-directory__sort,
  .gc-categories-directory__search {
    width: 100%;
  }

  .gc-categories-directory__sort select,
  .gc-categories-directory__search input {
    width: 100%;
  }
}

@media (max-width: 640px) {
  .gc-featured-model-hero__content {
    min-height: 360px;
    padding: 20px;
  }

  .gc-featured-model-hero__identity {
    align-items: flex-start;
  }

  .gc-featured-model-hero__avatar {
    width: 68px;
    height: 68px;
    flex-basis: 68px;
    border-radius: calc(var(--gc-radius-scale, 1) * 22px);
  }

  .gc-categories-directory__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}


/* v1.2.0 storefront + deals pass */
.gc-category-top-clip-card__cart {
  min-height: 46px;
  padding: 0 18px;
  border-radius: calc(var(--gc-radius-scale, 1) * 14px);
  border-color: rgba(var(--gc-accent-rgb), 0.34);
  background: linear-gradient(135deg, var(--gc-accent), var(--gc-accent-strong));
  color: var(--gc-deep);
  box-shadow: 0 14px 28px rgba(var(--gc-accent-rgb), 0.18);
}
.gc-category-top-clip-card__cart:hover {
  color: var(--gc-deep);
  border-color: rgba(var(--gc-accent-rgb), 0.34);
  background: linear-gradient(135deg, var(--gc-accent), var(--gc-accent-strong));
  box-shadow: 0 18px 36px rgba(var(--gc-accent-rgb), 0.24);
}

.gc-featured-spotlight-grid {
  display: grid;
  gap: 18px;
  grid-template-columns: repeat(12, minmax(0, 1fr));
}
.gc-featured-spotlight-grid--count-1 .gc-featured-spotlight-card { grid-column: span 12; }
.gc-featured-spotlight-grid--count-2 .gc-featured-spotlight-card { grid-column: span 6; }
.gc-featured-spotlight-grid--count-3 .gc-featured-spotlight-card { grid-column: span 4; }
.gc-featured-spotlight-grid--count-4 .gc-featured-spotlight-card { grid-column: span 3; }
.gc-featured-spotlight-card {
  position: relative;
  min-height: 280px;
  border-radius: calc(var(--gc-radius-scale, 1) * 26px);
  overflow: hidden;
  border: 1px solid var(--gc-border);
  background: linear-gradient(180deg, rgba(9, 17, 34, 0.48), rgba(var(--gc-surface-rgb), 0.88));
  box-shadow: var(--gc-shadow-soft);
}
.gc-featured-spotlight-card > a {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  min-height: 100%;
  color: inherit;
}
.gc-featured-spotlight-card__media,
.gc-featured-spotlight-card__media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
.gc-featured-spotlight-card__media img {
  object-fit: cover;
  transform: scale(1.04);
}
.gc-featured-spotlight-card__media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(var(--gc-bg-rgb), 0.12) 0%, rgba(var(--gc-bg-rgb), 0.42) 34%, rgba(var(--gc-bg-rgb), 0.9) 100%);
}
.gc-featured-spotlight-card__content {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding: 20px;
}
.gc-featured-spotlight-card__eyebrow,
.gc-home-deals__eyebrow {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  width: max-content;
  padding: 0 12px;
  border-radius: var(--gc-radius-pill);
  background: rgba(var(--gc-accent-2-rgb), 0.22);
  border: 1px solid rgba(var(--gc-accent-2-rgb), 0.34);
  color: #f4e8ff;
  font-size: .78rem;
  font-weight: 800;
}
.gc-featured-spotlight-card__identity {
  display: grid;
  grid-template-columns: 192px minmax(0, 1fr);
  gap: 14px;
  align-items: center;
}
.gc-featured-spotlight-card__avatar {
  width: 192px;
  height: 192px;
  border-radius: calc(var(--gc-radius-scale, 1) * 48px);
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.18);
  background: rgba(255, 255, 255, 0.12);
}
.gc-featured-spotlight-card__avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.gc-featured-spotlight-card__identity h3 {
  margin: 0;
  font-size: clamp(1.12rem, 1.45vw, 1.42rem);
  line-height: 1.08;
}
.gc-featured-spotlight-card__identity p,
.gc-featured-spotlight-card__stats {
  margin: 0;
  color: rgba(var(--gc-text-rgb), 0.82);
  font-size: .9rem;
}
.gc-featured-spotlight-card__stats {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 14px;
}
.gc-featured-spotlight-card__cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: .92rem;
  font-weight: 800;
  color: var(--gc-accent);
}

.gc-home-deals {
  display: grid;
  grid-template-columns: minmax(260px, 0.95fr) minmax(0, 2.05fr);
  gap: 20px;
  align-items: stretch;
}
.gc-home-deals__promo {
  position: relative;
  min-height: 420px;
  border-radius: calc(var(--gc-radius-scale, 1) * 28px);
  overflow: hidden;
  background: linear-gradient(140deg, rgba(var(--gc-accent-2-rgb), 0.3), rgba(var(--gc-accent-rgb), 0.08)), var(--gc-surface);
  background-size: cover;
  background-position: center;
  border: 1px solid var(--gc-border);
  box-shadow: var(--gc-shadow-soft);
}
.gc-home-deals__promo::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(12, 17, 32, 0.22), rgba(12, 17, 32, 0.38) 26%, rgba(var(--gc-surface-rgb), 0.86) 100%);
}
.gc-home-deals__promo-content {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 14px;
  min-height: 100%;
  max-width: 360px;
  padding: clamp(22px, 2.5vw, 34px);
}
.gc-home-deals__promo h2 {
  margin: 0;
  font-size: clamp(2rem, 4vw, 4rem);
  line-height: .94;
  letter-spacing: -.06em;
  color: #f59af8;
}
.gc-home-deals__promo p {
  margin: 0;
  color: rgba(var(--gc-text-rgb), 0.88);
  font-size: 1.02rem;
}
.gc-home-deals__cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: max-content;
  font-weight: 800;
  color: #ffe86d;
}
.gc-home-deals__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
  align-content: start;
}
.gc-deal-card {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  border-radius: calc(var(--gc-radius-scale, 1) * 22px);
  overflow: hidden;
  border: 1px solid var(--gc-border);
  background: rgba(var(--gc-surface-rgb), 0.95);
  box-shadow: var(--gc-shadow-soft);
}
.gc-deal-card__media {
  position: relative;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  background: rgba(255,255,255,.04);
}
.gc-deal-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.gc-deal-card__badge {
  position: absolute;
  left: 10px;
  top: 10px;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0 10px;
  border-radius: calc(var(--gc-radius-scale, 1) * 10px);
  background: #ffe33d;
  color: #11131a;
  font-size: .78rem;
  font-weight: 900;
}
.gc-deal-card__body {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 8px;
  padding: 14px;
}
.gc-deal-card__body h3 {
  margin: 0;
  font-size: .98rem;
  line-height: 1.24;
}
.gc-deal-card__body h3 a { color: inherit; }
.gc-deal-card__store {
  color: var(--gc-text-soft);
  font-size: .86rem;
  font-weight: 700;
}
.gc-deal-card__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-top: auto;
}
.gc-deal-card__price,
.gc-deal-card__price .price {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  font-weight: 900;
  color: #ffe86d;
}
.gc-deal-card__price del {
  color: rgba(var(--gc-text-rgb), 0.52);
  font-weight: 700;
}
.gc-deal-card__cart {
  min-width: 118px;
  padding-left: 14px;
  padding-right: 14px;
}

.gc-storefront-page {
  display: flex;
  flex-direction: column;
  gap: 22px;
}
.gc-storefront-hero {
  position: relative;
  border-radius: calc(var(--gc-radius-scale, 1) * 30px);
  overflow: hidden;
  border: 1px solid var(--gc-border);
  box-shadow: var(--gc-shadow);
  background: var(--gc-surface);
}
.gc-storefront-hero__banner,
.gc-storefront-hero__banner img {
  width: 100%;
  height: min(32vw, 360px);
  display: block;
}
.gc-storefront-hero__banner img {
  object-fit: cover;
}
.gc-storefront-hero__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(var(--gc-bg-rgb), .24) 0%, rgba(var(--gc-bg-rgb), .4) 35%, rgba(var(--gc-bg-rgb), .86) 100%);
}
.gc-storefront-hero__inner {
  position: absolute;
  inset: auto 0 0;
  padding: clamp(18px, 2vw, 28px);
}
.gc-storefront-identity-card {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 136px minmax(0, 1fr);
  gap: 20px;
  align-items: end;
  padding: clamp(18px, 2vw, 26px);
  border-radius: calc(var(--gc-radius-scale, 1) * 24px);
  background: linear-gradient(180deg, rgba(7, 12, 26, 0.72), rgba(var(--gc-surface-rgb), 0.96));
  border: 1px solid rgba(255,255,255,.08);
  backdrop-filter: blur(14px);
}
.gc-storefront-identity-card__avatar {
  width: 136px;
  height: 136px;
  border-radius: calc(var(--gc-radius-scale, 1) * 28px);
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.08);
}
.gc-storefront-identity-card__avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.gc-storefront-identity-card__content {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.gc-storefront-identity-card__eyebrow {
  margin: 0;
  color: rgba(var(--gc-text-rgb), .72);
  font-size: .78rem;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.gc-storefront-identity-card h1 {
  margin: 0;
  font-size: clamp(2rem, 3vw, 3.25rem);
  line-height: .98;
  letter-spacing: -.05em;
}
.gc-storefront-identity-card__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 16px;
  color: rgba(var(--gc-text-rgb), .8);
  font-size: .96rem;
}
.gc-storefront-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}
.gc-storefront-follow-slot,
.gc-storefront-action-slot {
  display: contents;
}
.gc-storefront-follow-slot a,
.gc-storefront-follow-slot button,
.gc-storefront-follow-slot .button,
.gc-storefront-follow-slot input[type="submit"],
.gc-storefront-action-slot a,
.gc-storefront-action-slot button,
.gc-storefront-action-slot .button,
.gc-storefront-action-slot input[type="submit"],
.gc-storefront-action {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 44px;
  padding: 0 16px;
  border-radius: calc(var(--gc-radius-scale, 1) * 14px);
  border: 1px solid var(--gc-border-strong);
  background: rgba(255,255,255,.06);
  color: var(--gc-text) !important;
  box-shadow: none;
  font-weight: 800;
}
.gc-storefront-follow-slot a,
.gc-storefront-follow-slot button,
.gc-storefront-follow-slot .button,
.gc-storefront-follow-slot input[type="submit"],
.gc-storefront-action--primary {
  background: linear-gradient(135deg, var(--gc-accent), var(--gc-accent-strong));
  border-color: rgba(var(--gc-accent-rgb), .34);
  color: var(--gc-deep) !important;
  box-shadow: 0 16px 32px rgba(var(--gc-accent-rgb), .18);
}
.gc-storefront-action--placeholder {
  opacity: .72;
}
.gc-storefront-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  padding: 4px 2px 0;
}
.gc-storefront-nav a,
.gc-storefront-nav span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 42px;
  padding: 0 16px;
  border-radius: var(--gc-radius-pill);
  border: 1px solid var(--gc-border);
  background: rgba(255,255,255,.03);
  color: var(--gc-text-soft);
  font-weight: 700;
}
.gc-storefront-nav a.is-active,
.gc-storefront-nav span.is-active {
  color: var(--gc-text);
  border-color: rgba(var(--gc-accent-2-rgb), .32);
  background: rgba(var(--gc-accent-2-rgb), .14);
}
.gc-storefront-nav em {
  font-style: normal;
  font-size: .78rem;
  color: rgba(var(--gc-text-rgb), .58);
}
.gc-storefront-main {
  display: grid;
  gap: 24px;
  grid-template-columns: minmax(0, 2.2fr) minmax(280px, .9fr);
  align-items: start;
}
.gc-storefront-section,
.gc-storefront-info-card {
  padding: clamp(18px, 2vw, 24px);
  border-radius: calc(var(--gc-radius-scale, 1) * 28px);
  border: 1px solid var(--gc-border);
  background: linear-gradient(180deg, rgba(var(--gc-surface-rgb), 0.94), rgba(var(--gc-surface-rgb), 0.98));
  box-shadow: var(--gc-shadow-soft);
}
.gc-storefront-toolbar {
  display: flex;
  flex-wrap: wrap;
  gap: 14px 18px;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 18px;
}
.gc-storefront-toolbar__title h2,
.gc-storefront-info-card h2,
.gc-storefront-socials h3 {
  margin: 0;
}
.gc-storefront-toolbar__controls {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}
.gc-storefront-toolbar__controls label {
  display: block;
}
.gc-storefront-toolbar__controls input,
.gc-storefront-toolbar__controls select {
  min-height: 44px;
  min-width: 150px;
  padding: 0 14px;
  border-radius: calc(var(--gc-radius-scale, 1) * 14px);
  border: 1px solid var(--gc-border);
  background: rgba(255,255,255,.05);
  color: var(--gc-text);
}
.gc-storefront-toolbar__controls input::placeholder {
  color: rgba(var(--gc-text-rgb), .5);
}
.gc-storefront-info-card__description > *:first-child { margin-top: 0; }
.gc-storefront-info-card__description > *:last-child { margin-bottom: 0; }
.gc-storefront-socials {
  margin-top: 20px;
}
.gc-storefront-socials__list {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 12px;
}
.gc-storefront-socials__list a {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  padding: 0 12px;
  border-radius: var(--gc-radius-pill);
  border: 1px solid var(--gc-border);
  background: rgba(255,255,255,.04);
  color: var(--gc-text);
  font-weight: 700;
}
.gc-storefront-pagination {
  margin-top: 22px;
}
.gc-storefront-pagination .page-numbers {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 40px;
  min-height: 40px;
  margin-right: 8px;
  border-radius: calc(var(--gc-radius-scale, 1) * 12px);
  border: 1px solid var(--gc-border);
  background: rgba(255,255,255,.04);
  color: var(--gc-text);
}
.gc-storefront-pagination .page-numbers.current {
  border-color: rgba(var(--gc-accent-2-rgb), .34);
  background: rgba(var(--gc-accent-2-rgb), .16);
}

@media (max-width: 1280px) {
  .gc-home-deals__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 1100px) {
  .gc-featured-spotlight-grid--count-4 .gc-featured-spotlight-card,
  .gc-featured-spotlight-grid--count-3 .gc-featured-spotlight-card { grid-column: span 6; }
  .gc-home-deals {
    grid-template-columns: 1fr;
  }
  .gc-home-deals__promo {
    min-height: 320px;
  }
  .gc-storefront-main {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 820px) {
  .gc-featured-spotlight-grid .gc-featured-spotlight-card { grid-column: span 12 !important; }
  .gc-home-deals__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .gc-storefront-hero__banner,
  .gc-storefront-hero__banner img {
    height: 280px;
  }
  .gc-storefront-identity-card {
    grid-template-columns: 1fr;
    align-items: start;
  }
  .gc-storefront-identity-card__avatar {
    width: 104px;
    height: 104px;
  }
}

@media (max-width: 640px) {
  .gc-home-deals__grid {
    grid-template-columns: 1fr;
  }
  .gc-storefront-toolbar__controls {
    width: 100%;
  }
  .gc-storefront-toolbar__controls label,
  .gc-storefront-toolbar__controls input,
  .gc-storefront-toolbar__controls select,
  .gc-storefront-toolbar__controls .gc-button {
    width: 100%;
  }
}

/* v1.3.0 landing + storefront correction pass */
.gc-show-more-row {
  display: flex;
  justify-content: center;
  margin-top: 18px;
}

.gc-show-more-button {
  min-width: 148px;
}

.gc-show-more-row--actions {
  gap: 12px;
  flex-wrap: wrap;
}

.gc-show-more-link {
  min-width: 148px;
}

.gc-home-section--featured-models .gc-section-header,
.gc-home-section--deals .gc-section-header {
  margin-bottom: 18px;
}

.gc-featured-spotlight-card {
  min-height: 236px;
}

.gc-featured-spotlight-card__content {
  gap: 12px;
  padding: 18px;
}

.gc-featured-spotlight-card__identity {
  grid-template-columns: 192px minmax(0, 1fr);
  gap: 12px;
}

.gc-featured-spotlight-card__avatar {
  width: 192px;
  height: 192px;
  border-radius: calc(var(--gc-radius-scale, 1) * 48px);
}

.gc-feature-panel,
.gc-featured-spotlight-card,
.gc-category-card,
.gc-store-mini-card,
.gc-profile-tile a {
  position: relative;
  transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease, filter .28s ease;
}

.gc-feature-panel::after,
.gc-featured-spotlight-card::after,
.gc-category-card::after,
.gc-store-mini-card::after,
.gc-profile-tile a::after {
  content: "";
  position: absolute;
  inset: -120% -34%;
  background: linear-gradient(115deg, transparent 30%, rgba(255,255,255,.16) 50%, transparent 70%);
  transform: translateX(-100%) rotate(8deg);
  opacity: 0;
  pointer-events: none;
  transition: transform .62s ease, opacity .24s ease;
}

.gc-feature-panel:hover,
.gc-featured-spotlight-card:hover,
.gc-category-card:hover,
.gc-store-mini-card:hover,
.gc-profile-tile a:hover {
  transform: translateY(-4px);
  box-shadow: 0 24px 54px rgba(3, 8, 21, 0.34);
  border-color: rgba(var(--gc-accent-2-rgb), 0.28);
  filter: saturate(1.04);
}

.gc-feature-panel:hover::after,
.gc-featured-spotlight-card:hover::after,
.gc-category-card:hover::after,
.gc-store-mini-card:hover::after,
.gc-profile-tile a:hover::after {
  transform: translateX(100%) rotate(8deg);
  opacity: 1;
}

.gc-profile-tile a {
  border-radius: calc(var(--gc-radius-scale, 1) * 22px);
}

.gc-profile-tile:hover .gc-profile-tile__media img,
.gc-store-mini-card:hover .gc-store-mini-card__media img,
.gc-featured-spotlight-card:hover .gc-featured-spotlight-card__media img {
  transform: scale(1.04);
}

.gc-profile-tile__media img,
.gc-store-mini-card__media img,
.gc-featured-spotlight-card__media img {
  transition: transform .36s ease;
}

.gc-home-deals__grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.gc-deal-card__media {
  position: relative;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  background: var(--gc-deep);
}

.gc-deal-card__media::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: 56%;
  background: linear-gradient(180deg, transparent, rgba(0,0,0,.38));
  pointer-events: none;
}

.gc-deal-card__media img,
.gc-deal-card__media video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .32s ease;
}

.gc-deal-card:hover .gc-deal-card__media img,
.gc-deal-card:hover .gc-deal-card__media video {
  transform: scale(1.03);
}

.gc-deal-card__discount {
  position: absolute;
  left: 12px;
  top: 12px;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0 10px;
  border-radius: calc(var(--gc-radius-scale, 1) * 10px);
  background: #ffe23f;
  color: #151922;
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .02em;
}

.gc-deal-card__duration {
  position: absolute;
  right: 12px;
  bottom: 12px;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 0 10px;
  border-radius: var(--gc-radius-pill);
  background: rgba(var(--gc-deep-rgb), 0.82);
  border: 1px solid rgba(255,255,255,.12);
  color: #fff;
  font-size: .8rem;
  font-weight: 800;
}

.gc-deal-card__price {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.gc-deal-card__regular-price {
  color: rgba(var(--gc-text-rgb), .58);
  text-decoration: line-through;
  font-weight: 700;
}

.gc-deal-card__sale-price {
  color: #ffe86d;
  font-weight: 900;
}

.gc-storefront-page {
  gap: 24px;
}

.gc-storefront-hero__inner {
  padding: clamp(18px, 2vw, 28px);
}

.gc-storefront-identity-card {
  align-items: center;
}

.gc-storefront-actions {
  margin-top: 2px;
}

.gc-storefront-follow-button {
  cursor: pointer;
}

.gc-storefront-follow-button.is-following,
.gc-storefront-follow-button:disabled {
  cursor: default;
  opacity: 1;
}

.gc-storefront-nav--hero {
  padding: 4px 0 0;
}

.gc-storefront-section--content,
.gc-storefront-section--about {
  padding: clamp(18px, 2vw, 24px);
}

.gc-storefront-toolbar__title {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.gc-storefront-toolbar__summary {
  margin: 0;
  color: var(--gc-text-soft);
  font-size: .92rem;
}

.gc-storefront-browser {
  position: relative;
}

.gc-storefront-browser.is-loading .gc-storefront-browser__results {
  opacity: .58;
  pointer-events: none;
}

.gc-storefront-browser__results {
  min-height: 180px;
  transition: opacity .18s ease;
}

.gc-storefront-browser__results .gc-empty-state {
  margin: 0;
}

.gc-storefront-browser__results .gc-card-grid {
  margin-top: 0;
}

.gc-storefront-toolbar__controls {
  flex: 1 1 auto;
  justify-content: flex-end;
}

.gc-storefront-toolbar__controls label {
  flex: 0 1 auto;
}

.gc-storefront-toolbar__controls input,
.gc-storefront-toolbar__controls select {
  min-width: 170px;
}

.gc-storefront-info-card__description {
  color: var(--gc-text-soft);
}

.gc-storefront-info-card__description strong,
.gc-storefront-info-card__description b,
.gc-storefront-info-card__description h1,
.gc-storefront-info-card__description h2,
.gc-storefront-info-card__description h3,
.gc-storefront-info-card__description h4 {
  color: var(--gc-text);
}

@media (max-width: 1280px) {
  .gc-home-deals__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 1100px) {
  .gc-featured-spotlight-grid--count-4 .gc-featured-spotlight-card,
  .gc-featured-spotlight-grid--count-3 .gc-featured-spotlight-card {
    grid-column: span 6;
  }

  .gc-home-deals {
    grid-template-columns: 1fr;
  }

  .gc-home-deals__promo {
    min-height: 300px;
  }
}

@media (max-width: 820px) {
  .gc-featured-spotlight-grid .gc-featured-spotlight-card {
    grid-column: span 12 !important;
  }

  .gc-storefront-identity-card {
    grid-template-columns: 1fr;
    align-items: start;
  }

  .gc-storefront-toolbar {
    align-items: flex-start;
  }

  .gc-storefront-toolbar__controls {
    justify-content: stretch;
  }
}


/* Featured-models avatar responsive treatment (2026-05-12) */
/* count=4 desktop only (cards span 3 at >1100px): smaller side-by-side avatar */
@media (min-width: 1101px) {
  .gc-featured-spotlight-grid--count-4 .gc-featured-spotlight-card__identity {
    grid-template-columns: 128px minmax(0, 1fr);
    gap: 12px;
  }
  .gc-featured-spotlight-grid--count-4 .gc-featured-spotlight-card__avatar {
    width: 128px;
    height: 128px;
    border-radius: calc(var(--gc-radius-scale, 1) * 32px);
  }
}

/* mobile (≤820px, single-column cards): stacked profile-card layout, keep 192px */
@media (max-width: 820px) {
  .gc-featured-spotlight-card__identity {
    grid-template-columns: minmax(0, 1fr);
    justify-items: center;
    text-align: center;
    gap: 14px;
  }
  .gc-featured-spotlight-card__avatar {
    width: 192px;
    height: 192px;
    border-radius: calc(var(--gc-radius-scale, 1) * 48px);
    margin: 0 auto;
  }
}
@media (max-width: 640px) {
  .gc-home-deals__grid {
    grid-template-columns: 1fr;
  }

  .gc-storefront-toolbar__controls,
  .gc-storefront-toolbar__controls label,
  .gc-storefront-toolbar__controls input,
  .gc-storefront-toolbar__controls select {
    width: 100%;
  }
}

/* v1.3.0 homepage hover split + storefront tabs + dedicated clip page */
body.gc-variant-c .gc-feature-panel::after,
body.gc-variant-c .gc-featured-spotlight-card::after,
body.gc-variant-c .gc-category-card::after,
body.gc-variant-c .gc-store-mini-card::after,
body.gc-variant-c .gc-profile-tile a::after {
  display: none;
}

body.gc-variant-c .gc-feature-panel,
body.gc-variant-c .gc-featured-spotlight-card,
body.gc-variant-c .gc-category-card,
body.gc-variant-c .gc-store-mini-card,
body.gc-variant-c .gc-profile-tile {
  position: relative;
  overflow: hidden;
  transition: transform .24s ease, box-shadow .24s ease, border-color .24s ease, background-color .24s ease;
}

body.gc-variant-c .gc-feature-panel::before,
body.gc-variant-c .gc-featured-spotlight-card::before,
body.gc-variant-c .gc-category-card::before,
body.gc-variant-c .gc-store-mini-card::before,
body.gc-variant-c .gc-profile-tile::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: radial-gradient(circle at top right, rgba(var(--gc-accent-rgb), .16), transparent 55%);
  opacity: 0;
  pointer-events: none;
  transition: opacity .24s ease;
}

body.gc-variant-c .gc-profile-tile {
  border-radius: calc(var(--gc-radius-scale, 1) * 22px);
  background: var(--gc-surface-3);
  border: 1px solid var(--gc-border);
  box-shadow: var(--gc-shadow-soft);
}

body.gc-variant-c .gc-profile-tile a,
body.gc-variant-c .gc-profile-tile a:hover {
  display: block;
  min-height: 100%;
  color: inherit;
  transform: none;
  box-shadow: none;
  border-color: transparent;
  filter: none;
}

body.gc-variant-c .gc-feature-panel:hover,
body.gc-variant-c .gc-featured-spotlight-card:hover,
body.gc-variant-c .gc-category-card:hover,
body.gc-variant-c .gc-store-mini-card:hover,
body.gc-variant-c .gc-profile-tile:hover {
  transform: translateY(-5px);
  box-shadow: 0 20px 46px rgba(3, 8, 21, 0.28);
  border-color: rgba(var(--gc-accent-rgb), 0.3);
  filter: none;
}

body.gc-variant-c .gc-feature-panel:hover::before,
body.gc-variant-c .gc-featured-spotlight-card:hover::before,
body.gc-variant-c .gc-category-card:hover::before,
body.gc-variant-c .gc-store-mini-card:hover::before,
body.gc-variant-c .gc-profile-tile:hover::before {
  opacity: 1;
}

body.gc-variant-c .gc-feature-panel__media img,
body.gc-variant-c .gc-featured-spotlight-card__media img,
body.gc-variant-c .gc-store-mini-card__media img,
body.gc-variant-c .gc-profile-tile__media img {
  transition: transform .34s ease;
}

body.gc-variant-c .gc-feature-panel:hover .gc-feature-panel__media img,
body.gc-variant-c .gc-featured-spotlight-card:hover .gc-featured-spotlight-card__media img,
body.gc-variant-c .gc-store-mini-card:hover .gc-store-mini-card__media img,
body.gc-variant-c .gc-profile-tile:hover .gc-profile-tile__media img {
  transform: scale(1.04);
}

.gc-storefront-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 18px;
  padding-top: 18px;
  border-top: 1px solid rgba(255,255,255,.12);
}

.gc-storefront-tab {
  appearance: none;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(10, 13, 26, 0.55);
  color: rgba(255,255,255,.82);
  min-height: 42px;
  padding: 0 16px;
  border-radius: var(--gc-radius-pill);
  font-weight: 700;
  cursor: pointer;
  transition: background-color .2s ease, border-color .2s ease, color .2s ease, transform .2s ease;
}

.gc-storefront-tab:hover {
  transform: translateY(-1px);
  border-color: rgba(var(--gc-accent-rgb), .38);
  color: #fff;
}

.gc-storefront-tab.is-active {
  background: linear-gradient(135deg, rgba(var(--gc-accent-2-rgb), 0.95), rgba(var(--gc-accent-rgb), 0.82));
  border-color: transparent;
  /* gc_storefront_tab_active_contrast_v1 (2026-06-05, F.B3 Law 6): white on the teal gradient end
     measured 1.86:1 (<3.0 UI gate). Dark-navy text = established gradient-button family
     (cf. wizard buttons), worst-stop 3.07:1 (violet end), 6.6:1 (teal end). */
  color: var(--gc-bg);
}

.gc-storefront-tab-panels {
  display: grid;
  gap: 24px;
}

.gc-storefront-tab-panel[hidden] {
  display: none !important;
}

.gc-storefront-placeholder-panel {
  min-height: 220px;
  display: grid;
  align-content: start;
  gap: 12px;
  padding: 26px;
}

.gc-storefront-placeholder-panel h2,
.gc-storefront-placeholder-panel p {
  margin: 0;
}

.gc-storefront-section--about {
  padding: 26px;
}

.gc-storefront-section--about .gc-storefront-info-card__description {
  color: var(--gc-text-soft);
}

.gc-storefront-hero {
  margin-bottom: 26px;
}

.gc-storefront-hero__inner {
  align-items: end;
}

.gc-storefront-actions {
  margin-bottom: 2px;
}

.gc-storefront-inline-about {
  display: grid;
  gap: 16px;
  margin-top: 18px;
  padding-top: 18px;
  border-top: 1px solid rgba(255,255,255,.12);
}

.gc-storefront-inline-about .gc-storefront-info-card__description {
  color: rgba(var(--gc-text-rgb), 0.82);
}

.gc-storefront-inline-about .gc-storefront-socials {
  margin-top: 0;
}

.gc-storefront-tab-panel .gc-storefront-section--top-selling,
.gc-storefront-tab-panel .gc-storefront-section--content {
  margin-top: 0;
}

.gc-clip-watch-page {
  padding-block: 26px 48px;
}

.gc-clip-watch-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 300px;
  gap: 24px;
  align-items: start;
}

.gc-clip-watch-main {
  display: grid;
  gap: 24px;
}

.gc-clip-watch-sidebar {
  min-width: 0;
}

.gc-clip-watch-sidebar__sticky {
  position: sticky;
  top: 96px;
  padding: 18px;
}

.gc-clip-watch-player {
  overflow: hidden;
}

.gc-clip-watch-player__media {
  position: relative;
  background: #030611;
  aspect-ratio: 16 / 9;
}

.gc-clip-watch-player__media video,
.gc-clip-watch-player__media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.gc-clip-watch-summary,
.gc-clip-watch-carousel,
.gc-clip-watch-longtext,
.gc-clip-watch-comments {
  padding: 24px;
}

.gc-clip-watch-summary__head {
  display: grid;
  /* I29 (2026-04-18): cap the buybox column so content like the PDP extras
     picker doesn't explode the 'auto' track and collapse the copy column
     (which caused the category chip to overflow and overlap the buybox). */
  grid-template-columns: minmax(0, 1fr) minmax(280px, 360px);
  gap: 18px;
  align-items: start;
}

.gc-clip-watch-summary__copy h1 {
  margin: 0 0 12px;
  font-size: clamp(1.8rem, 2vw, 2.35rem);
  line-height: 1.1;
}

.gc-clip-watch-categories,
.gc-clip-watch-stats,
.gc-clip-watch-meta-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.gc-clip-watch-categories {
  margin-bottom: 10px;
}

.gc-clip-watch-category,
.gc-clip-watch-meta-pill {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0 12px;
  border-radius: var(--gc-radius-pill);
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.08);
  color: var(--gc-text-soft);
  font-weight: 700;
}

.gc-clip-watch-category:hover {
  color: #fff;
  border-color: rgba(var(--gc-accent-rgb), .34);
}

.gc-clip-watch-meta-pill--quality {
  background: rgba(var(--gc-accent-2-rgb), .14);
  border-color: rgba(var(--gc-accent-2-rgb), .28);
  color: #efe6ff;
}

.gc-clip-watch-stats span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: var(--gc-text-soft);
  font-weight: 700;
}

.gc-clip-watch-stats em {
  font-style: normal;
  opacity: .8;
}

.gc-clip-watch-buybox {
  display: grid;
  gap: 12px;
  justify-items: end;
  min-width: 220px;
  /* I29: honour the grid column cap so internal form + extras picker wrap
     inside it instead of forcing the entire grid track to grow wider. */
  max-width: 360px;
  width: 100%;
}
.gc-clip-watch-buybox .cart,
.gc-clip-watch-buybox .gc-pp-cart-form,
.gc-clip-watch-buybox .gc_pp_extras_picker {
  max-width: 100%;
  width: 100%;
  box-sizing: border-box;
}

.gc-clip-watch-buybox__price {
  font-size: 2rem;
  font-weight: 900;
  letter-spacing: -.04em;
}

.gc-clip-watch-buybox__price ins {
  text-decoration: none;
}

.gc-clip-watch-buybox__cart {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 0 18px;
  border-radius: var(--gc-radius-pill);
  background: linear-gradient(135deg, var(--gc-accent), var(--gc-accent-2));
  color: #fff !important;
  font-weight: 800;
  letter-spacing: .01em;
  min-width: 168px;
}

.gc-clip-watch-description {
  margin-top: 18px;
  color: var(--gc-text-soft);
  line-height: 1.65;
  /* GuyScat I28: long unbroken strings (URLs, test placeholders, custom item codes) must wrap inside the card, not overflow. */
  overflow-wrap: anywhere;
  word-break: break-word;
  max-width: 100%;
}
.gc-clip-watch-description p,
.gc-clip-watch-description li,
.gc-clip-watch-description span {
  overflow-wrap: anywhere;
  word-break: break-word;
}

.gc-clip-watch-description > *:first-child,
.gc-clip-watch-longtext__body > *:first-child {
  margin-top: 0;
}

.gc-clip-watch-description > *:last-child,
.gc-clip-watch-longtext__body > *:last-child {
  margin-bottom: 0;
}

.gc-clip-watch-creator {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: center;
  margin-top: 20px;
  padding-top: 18px;
  border-top: 1px solid var(--gc-border);
}

.gc-clip-watch-creator__identity {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  gap: 14px;
  align-items: center;
}

.gc-clip-watch-creator__avatar {
  width: 58px;
  height: 58px;
  overflow: hidden;
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  border: 1px solid rgba(255,255,255,.12);
}

.gc-clip-watch-creator__avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.gc-clip-watch-creator__identity h2,
.gc-clip-watch-creator__identity p {
  margin: 0;
}

.gc-clip-watch-creator__identity p {
  color: var(--gc-text-soft);
}

.gc-clip-watch-creator__identity-link {
  color: inherit;
  text-decoration: none;
}

.gc-clip-watch-creator__identity-link:hover .gc-clip-watch-creator__avatar,
.gc-clip-watch-creator__identity-link:focus-visible .gc-clip-watch-creator__avatar {
  border-color: rgba(var(--gc-accent-rgb), .34);
  box-shadow: 0 12px 28px rgba(var(--gc-accent-rgb), .14);
}

.gc-clip-watch-creator__identity-link:focus-visible {
  outline: none;
}

.gc-clip-watch-creator__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}

.gc-track-controls {
  display: inline-flex;
  gap: 10px;
}

.gc-track-control {
  width: 38px;
  height: 38px;
  border-radius: var(--gc-radius-pill);
  border: 1px solid var(--gc-border);
  background: rgba(255,255,255,.04);
  color: #fff;
  font-size: 1.3rem;
  line-height: 1;
}

.gc-track-control:disabled {
  opacity: .35;
}

.gc-clip-strip {
  display: flex;
  gap: 14px;
  overflow-x: auto;
  padding-bottom: 6px;
  scrollbar-width: none;
}

.gc-clip-strip::-webkit-scrollbar {
  display: none;
}

.gc-clip-strip-card {
  flex: 0 0 210px;
  min-width: 210px;
}

.gc-clip-strip-card a {
  display: block;
  color: inherit;
}

.gc-clip-strip-card__media {
  position: relative;
  aspect-ratio: 16 / 10;
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  overflow: hidden;
  margin-bottom: 10px;
  background: #050915;
}

.gc-clip-strip-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.gc-clip-strip-card__duration,
.gc-clip-sidebar-card__duration {
  position: absolute;
  right: 8px;
  bottom: 8px;
  min-height: 24px;
  padding: 0 8px;
  border-radius: var(--gc-radius-pill);
  background: rgba(7, 10, 20, .78);
  color: #fff;
  font-size: .78rem;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
}

.gc-clip-sidebar-card__duration {
  top: 6px;
  right: 6px;
  bottom: auto;
  min-height: 22px;
  padding: 0 7px;
  border-radius: var(--gc-radius-pill);
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(var(--gc-surface-rgb), .86);
  font-size: .72rem;
  font-weight: 800;
}

.gc-clip-strip-card h3,
.gc-clip-sidebar-card h3 {
  margin: 0 0 6px;
  font-size: .98rem;
  line-height: 1.35;
}

.gc-clip-strip-card__price {
  color: var(--gc-text-soft);
  font-weight: 700;
}

.gc-clip-strip-card__price ins {
  text-decoration: none;
}

.gc-clip-sidebar-list {
  display: grid;
  gap: 10px;
}

.gc-clip-sidebar-card a {
  display: grid;
  grid-template-columns: 120px minmax(0, 1fr);
  gap: 10px;
  color: inherit;
}

.gc-clip-sidebar-card__thumb {
  position: relative;
  aspect-ratio: 16 / 9;
  border-radius: calc(var(--gc-radius-scale, 1) * 14px);
  overflow: hidden;
  background: #050915;
}

.gc-clip-sidebar-card__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.gc-clip-sidebar-card__body {
  min-width: 0;
}

.gc-clip-sidebar-card__body h3 {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.gc-clip-sidebar-card__meta {
  display: grid;
  gap: 4px;
  color: var(--gc-text-soft);
  font-size: .88rem;
}

.gc-clip-watch-comments .comment-respond,
.gc-clip-watch-comments .woocommerce-Reviews,
.gc-clip-watch-comments #comments {
  margin-top: 0;
}

.gc-clip-watch-comments .comment-form-comment textarea {
  min-height: 130px;
}

@media (max-width: 1180px) {
  .gc-clip-watch-layout {
    grid-template-columns: minmax(0, 1fr);
  }

  .gc-clip-watch-sidebar__sticky {
    position: static;
  }
}

@media (max-width: 880px) {
  .gc-clip-watch-summary__head {
    grid-template-columns: 1fr;
  }

  .gc-clip-watch-buybox {
    justify-items: start;
    min-width: 0;
  }

  .gc-clip-watch-creator {
    flex-direction: column;
    align-items: flex-start;
  }

  .gc-storefront-tabs {
    gap: 8px;
  }

  .gc-storefront-tab {
    min-height: 38px;
    padding: 0 14px;
  }
}

@media (max-width: 640px) {
  .gc-clip-watch-summary,
  .gc-clip-watch-carousel,
  .gc-clip-watch-longtext,
  .gc-clip-watch-comments,
  .gc-storefront-section--about {
    padding: 18px;
  }

  .gc-clip-sidebar-card a {
    grid-template-columns: 104px minmax(0, 1fr);
  }

  .gc-clip-strip-card {
    flex-basis: 180px;
    min-width: 180px;
  }
}

/* v1.4.0 global search + /clips/ discovery archive + reveal hardening */
[hidden],
.gc-reveal-hidden {
  display: none !important;
}

.gc-header-inner {
  gap: 18px;
}

.gc-header-search {
  flex: 1 1 620px;
  display: grid;
  grid-template-columns: minmax(200px, 1fr) minmax(200px, 250px) 56px;
  align-items: center;
  min-height: 48px;
  border-radius: calc(var(--gc-radius-scale, 1) * 14px);
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 12px 28px rgba(5, 9, 18, 0.14);
}

.gc-header-search__input,
.gc-header-search__select,
.gc-header-search__button {
  min-height: 48px;
  border: 0;
  background: transparent;
  font: inherit;
}

.gc-header-search__input,
.gc-header-search__select {
  padding: 0 16px;
  color: var(--gc-slate);
}

.gc-header-search__input::placeholder {
  color: #6b7280;
}

.gc-header-search__select {
  border-left: 1px solid rgba(var(--gc-slate-rgb), 0.12);
  appearance: none;
  background-image: linear-gradient(45deg, transparent 50%, #6b7280 50%), linear-gradient(135deg, #6b7280 50%, transparent 50%);
  background-position: calc(100% - 18px) calc(50% - 3px), calc(100% - 12px) calc(50% - 3px);
  background-size: 6px 6px, 6px 6px;
  background-repeat: no-repeat;
  padding-right: 36px;
}

.gc-header-search__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--gc-slate);
  font-size: 1.25rem;
  cursor: pointer;
  border-left: 1px solid rgba(var(--gc-slate-rgb), 0.12);
  transition: background-color .18s ease, color .18s ease;
}

.gc-header-search__button:hover {
  background: rgba(var(--gc-accent-2-rgb), 0.08);
  color: #5b21b6;
}

.gc-clips-browser-page {
  padding-block: 26px 48px;
}

.gc-clips-browser-layout {
  display: grid;
  grid-template-columns: 310px minmax(0, 1fr);
  gap: 24px;
  align-items: start;
}

.gc-clips-sidebar {
  position: sticky;
  top: 96px;
}

.gc-clips-sidebar__form {
  display: grid;
  gap: 14px;
}

.gc-clips-filter-card,
.gc-clips-results {
  background: var(--gc-surface-3);
  border: 1px solid var(--gc-border);
  border-radius: calc(var(--gc-radius-scale, 1) * 22px);
  box-shadow: var(--gc-shadow-soft);
}

.gc-clips-filter-card {
  padding: 16px;
}

.gc-clips-filter-card--search {
  padding: 14px;
}

.gc-clips-filter-search {
  display: grid;
  gap: 12px;
}

.gc-clips-filter-search input,
.gc-clips-filter-card select,
.gc-clips-filter-card input[type="search"],
.gc-clips-filter-card input[type="number"] {
  width: 100%;
  min-height: 44px;
  border-radius: calc(var(--gc-radius-scale, 1) * 14px);
  border: 1px solid rgba(255,255,255,.1);
  background: rgba(255,255,255,.04);
  color: var(--gc-text);
  padding: 0 14px;
}

.gc-clips-filter-card input::placeholder {
  color: rgba(var(--gc-text-rgb), 0.44);
}

.gc-clips-filter-group summary {
  list-style: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  font-weight: 800;
  color: var(--gc-text);
}

.gc-clips-filter-group summary::-webkit-details-marker {
  display: none;
}

.gc-clips-filter-group summary::after {
  content: '⌃';
  font-size: .9rem;
  color: var(--gc-text-soft);
  transform: rotate(180deg);
  transition: transform .18s ease;
}

.gc-clips-filter-group:not([open]) summary::after {
  transform: rotate(0deg);
}

.gc-clips-filter-options {
  display: grid;
  gap: 10px;
  margin-top: 14px;
}

.gc-clips-filter-options--placeholder {
  gap: 8px;
}

.gc-filter-check {
  display: flex;
  align-items: center;
  gap: 10px;
  color: var(--gc-text-soft);
  font-size: .95rem;
}

.gc-filter-check input {
  flex: 0 0 auto;
}

.gc-filter-check.is-locked {
  opacity: .72;
}

.gc-filter-field {
  display: grid;
  gap: 8px;
  color: var(--gc-text-soft);
  font-size: .92rem;
  font-weight: 700;
}

.gc-filter-field--compact {
  min-width: 220px;
}

.gc-filter-list {
  display: grid;
  gap: 8px;
  max-height: 280px;
  overflow-y: auto;
  padding-right: 4px;
}

.gc-clips-price-fields {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.gc-filter-placeholder-text {
  margin: 0;
  color: var(--gc-text-soft);
  font-size: .88rem;
  line-height: 1.55;
}

.gc-clips-reset {
  width: 100%;
}

.gc-clips-results {
  padding: 22px;
  min-width: 0;
}

.gc-clips-results__header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 18px;
  flex-wrap: wrap;
  margin-bottom: 18px;
}

.gc-clips-results__header .gc-page-title {
  margin: 0 0 6px;
}

.gc-clips-results__summary {
  margin: 0;
  color: var(--gc-text-soft);
}

.gc-clips-results__body {
  position: relative;
  min-height: 220px;
  transition: opacity .18s ease;
}

.gc-clips-browser-page.is-loading .gc-clips-results__body {
  opacity: .56;
  pointer-events: none;
}

.gc-card-grid--archive-browser {
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 240px), 1fr));
}

.gc-clips-archive-pagination {
  margin-top: 22px;
}

body.gc-variant-c .gc-feature-panels--top-models .gc-feature-panel::before {
  inset: 0;
  width: auto;
  height: auto;
  right: auto;
  top: auto;
  border-radius: inherit;
  background: radial-gradient(circle at top right, rgba(var(--gc-accent-rgb), .16), transparent 55%);
  opacity: 0;
}

body.gc-variant-c .gc-feature-panels--top-models .gc-feature-panel__media::after {
  background: linear-gradient(180deg, rgba(var(--gc-deep-rgb), 0.1), rgba(var(--gc-deep-rgb), 0.22) 34%, rgba(var(--gc-deep-rgb), 0.82));
}

body.gc-variant-c .gc-feature-panels--top-models .gc-feature-panel:hover .gc-feature-panel__media img {
  transform: none;
}

body.gc-variant-c .gc-feature-panels--top-models .gc-feature-panel:hover::before {
  opacity: 1;
}

@media (max-width: 1240px) {
  .gc-header-inner {
    flex-wrap: wrap;
  }

  .gc-header-search {
    order: 3;
    flex: 1 1 100%;
  }

  .gc-clips-browser-layout {
    grid-template-columns: 1fr;
  }

  .gc-clips-sidebar {
    position: static;
  }
}

@media (max-width: 820px) {
  .gc-header-search {
    grid-template-columns: 1fr;
    border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  }

  .gc-header-search__select,
  .gc-header-search__button {
    border-left: 0;
    border-top: 1px solid rgba(var(--gc-slate-rgb), 0.12);
  }

  .gc-clips-results {
    padding: 18px;
  }
}

@media (max-width: 640px) {
  .gc-clips-price-fields {
    grid-template-columns: 1fr;
  }

  .gc-filter-field--compact {
    min-width: 0;
    width: 100%;
  }
}

/* v1.6.0 sale, preview, and clip-page refinements */
.gc-sale-badge {
  position: absolute;
  left: 12px;
  top: 12px;
  z-index: 3;
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0 10px;
  border-radius: calc(var(--gc-radius-scale, 1) * 10px);
  background: #ffe23f;
  color: #151922;
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .02em;
}

.gc-sale-badge--strip,
.gc-sale-badge--sidebar {
  top: 8px;
  left: 8px;
  min-height: 24px;
  padding: 0 8px;
  border-radius: calc(var(--gc-radius-scale, 1) * 9px);
  font-size: .7rem;
}

.gc-clip-card__price,
.gc-clip-card__price .price,
.gc-category-top-clip-card__price,
.gc-category-top-clip-card__price .price,
.gc-clip-strip-card__price,
.gc-clip-strip-card__price .price,
.gc-clip-sidebar-card__price,
.gc-clip-sidebar-card__price .price {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
}

.gc-clip-card__price del,
.gc-category-top-clip-card__price del,
.gc-clip-strip-card__price del,
.gc-clip-sidebar-card__price del {
  color: rgba(var(--gc-text-rgb), 0.52);
  font-weight: 700;
}

.gc-clip-card__price ins,
.gc-category-top-clip-card__price ins,
.gc-clip-strip-card__price ins,
.gc-clip-sidebar-card__price ins {
  color: #ffe86d;
  font-weight: 900;
  text-decoration: none;
}

.gc-clip-strip-card__media img,
.gc-clip-strip-card__media video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .24s ease;
}

.gc-clip-strip-card:hover .gc-clip-strip-card__media img,
.gc-clip-strip-card:hover .gc-clip-strip-card__media video {
  transform: scale(1.03);
}

.gc-clip-sidebar-card__thumb img,
.gc-clip-sidebar-card__thumb video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.gc-clip-sidebar-card__duration {
  top: auto;
  right: 6px;
  bottom: 6px;
  min-height: 20px;
  padding: 0 6px;
  border-radius: var(--gc-radius-pill);
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(var(--gc-surface-rgb), .88);
  font-size: .68rem;
  font-weight: 800;
}

.gc-feature-panel__media img,
.gc-featured-spotlight-card__avatar img,
.gc-store-mini-card__media img,
.gc-profile-tile__media img {
  object-position: center center;
}



/* v1.7.0 header, commerce pages, and final WCFM polish */
.gc-header-inner {
  gap: 16px;
  min-height: 84px;
}

.gc-main-nav {
  flex: 0 1 auto;
}

.gc-main-nav__list {
  display: flex;
  align-items: center;
  gap: 10px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.gc-main-nav__item {
  display: flex;
  align-items: center;
}

.gc-main-nav__link,
.gc-main-nav__item > a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 0 14px;
  border-radius: var(--gc-radius-pill);
  color: var(--gc-text-soft);
  font-weight: 700;
  transition: background-color .18s ease, color .18s ease, transform .18s ease;
}

.gc-main-nav__link:hover,
.gc-main-nav__item.current-menu-item > .gc-main-nav__link,
.gc-main-nav__item.current-menu-item > a,
.gc-main-nav__item > a:hover {
  color: var(--gc-text);
  background: rgba(255, 255, 255, 0.08);
}

.gc-header-search {
  flex: 0 1 500px;
  min-width: min(100%, 340px);
  grid-template-columns: minmax(170px, 1fr) minmax(150px, 220px) 52px;
}

.gc-header-cart {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 44px;
  height: 44px;
  border-radius: var(--gc-radius-pill);
  color: var(--gc-text-soft);
  background: rgba(255, 255, 255, 0.02);
  border: 1px solid rgba(255, 255, 255, 0.12);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.03);
  transition: background-color .18s ease, color .18s ease, border-color .18s ease, transform .18s ease;
}

.gc-header-cart:hover,
.gc-header-cart.is-active {
  color: var(--gc-text);
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(255, 255, 255, 0.2);
  transform: translateY(-1px);
}

.gc-header-cart__icon {
  width: 19px;
  height: 19px;
  display: inline-flex;
}

.gc-header-cart__icon svg {
  width: 100%;
  height: 100%;
  display: block;
}

.gc-header-cart__count {
  position: absolute;
  top: -5px;
  right: -5px;
  min-width: 20px;
  height: 20px;
  padding: 0 5px;
  border-radius: var(--gc-radius-pill);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, #facc15, #f59e0b);
  color: var(--gc-slate);
  font-size: 11px;
  font-weight: 800;
  box-shadow: 0 8px 18px rgba(245, 158, 11, 0.34);
}

.gc-home-deals__promo::before {
  inset: -1px;
  border-radius: inherit;
}

.gc-commerce-shell {
  padding: 34px 0 56px;
}

.gc-commerce-shell__inner {
  display: grid;
  gap: 24px;
}

.gc-commerce-hero {
  position: relative;
  overflow: hidden;
  padding: clamp(26px, 4vw, 42px);
  border-radius: calc(var(--gc-radius-scale, 1) * 28px);
  border: 1px solid rgba(255, 255, 255, 0.08);
  background:
    radial-gradient(circle at top right, rgba(var(--gc-accent-rgb), 0.15), transparent 36%),
    radial-gradient(circle at bottom left, rgba(var(--gc-accent-2-rgb), 0.22), transparent 42%),
    linear-gradient(160deg, rgba(var(--gc-surface-rgb), 0.96), rgba(var(--gc-surface-rgb), 0.96));
  box-shadow: 0 26px 60px rgba(4, 10, 24, 0.34);
}

.gc-commerce-hero__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 12px;
  padding: 7px 12px;
  border-radius: var(--gc-radius-pill);
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.06);
  color: #d1fae5;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.gc-commerce-hero__title {
  margin: 0;
  color: #fff;
  font-size: clamp(2rem, 4vw, 3.15rem);
  line-height: 1.02;
  letter-spacing: -0.05em;
}

.gc-commerce-hero__text {
  max-width: 760px;
  margin: 14px 0 0;
  color: rgba(var(--gc-text-rgb), 0.78);
  font-size: 1rem;
  line-height: 1.7;
}

.gc-commerce-panel {
  padding: clamp(18px, 2.6vw, 32px);
  border-radius: calc(var(--gc-radius-scale, 1) * 28px);
  border: 1px solid rgba(255, 255, 255, 0.08);
  background: linear-gradient(180deg, rgba(var(--gc-surface-rgb), 0.96), rgba(var(--gc-surface-2-rgb), 0.98));
  box-shadow: 0 20px 44px rgba(3, 8, 20, 0.32);
}

.gc-commerce-panel > .woocommerce,
.gc-commerce-panel > .woocommerce-page,
.gc-commerce-panel > .wp-block-woocommerce-checkout,
.gc-commerce-panel > .wp-block-woocommerce-cart {
  color: var(--gc-text);
}

.gc-commerce-panel .woocommerce-notices-wrapper {
  margin-bottom: 18px;
}

.gc-commerce-panel .woocommerce-message,
.gc-commerce-panel .woocommerce-info,
.gc-commerce-panel .woocommerce-error {
  margin: 0 0 18px;
  padding: 16px 18px;
  border-radius: calc(var(--gc-radius-scale, 1) * 16px);
  border: 1px solid rgba(255, 255, 255, 0.08);
  background: rgba(255, 255, 255, 0.04);
  color: var(--gc-text);
}

.gc-commerce-panel .woocommerce-error {
  border-color: rgba(239, 68, 68, 0.28);
  background: rgba(127, 29, 29, 0.22);
}

.gc-commerce-panel .woocommerce-message,
.gc-commerce-panel .woocommerce-info {
  border-color: rgba(var(--gc-accent-rgb), 0.22);
}

.gc-commerce-panel .woocommerce form.login,
.gc-commerce-panel .woocommerce form.register,
.gc-commerce-panel .woocommerce form.lost_reset_password,
.gc-commerce-panel .woocommerce form.checkout_coupon,
.gc-commerce-panel .woocommerce form.woocommerce-EditAccountForm,
.gc-commerce-panel .woocommerce .woocommerce-address-fields,
.gc-commerce-panel .woocommerce .woocommerce-form-login,
.gc-commerce-panel .woocommerce .woocommerce-form-register,
.gc-commerce-panel .woocommerce .woocommerce-ResetPassword {
  padding: 24px;
  border-radius: calc(var(--gc-radius-scale, 1) * 22px);
  border: 1px solid rgba(255, 255, 255, 0.08);
  background: rgba(255, 255, 255, 0.03);
}

.gc-commerce-panel .woocommerce .u-columns {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
  align-items: start;
}

.gc-commerce-panel .woocommerce .u-column1,
.gc-commerce-panel .woocommerce .u-column2 {
  float: none;
  width: 100%;
  margin: 0;
}

.gc-commerce-panel .woocommerce h2,
.gc-commerce-panel .woocommerce h3,
.gc-commerce-panel .woocommerce h4,
.gc-commerce-panel .woocommerce .woocommerce-order-details__title,
.gc-commerce-panel .woocommerce .woocommerce-column__title {
  color: #fff;
  letter-spacing: -0.03em;
}

.gc-commerce-panel .woocommerce .form-row label,
.gc-commerce-panel .woocommerce .woocommerce-form__label,
.gc-commerce-panel .woocommerce .select2-container--default .select2-selection--single .select2-selection__rendered,
.gc-commerce-panel .woocommerce .select2-container--default .select2-selection--single .select2-selection__placeholder {
  color: rgba(var(--gc-text-rgb), 0.9);
}

.gc-commerce-panel .woocommerce input.input-text,
.gc-commerce-panel .woocommerce input[type="text"],
.gc-commerce-panel .woocommerce input[type="email"],
.gc-commerce-panel .woocommerce input[type="password"],
.gc-commerce-panel .woocommerce input[type="tel"],
.gc-commerce-panel .woocommerce input[type="number"],
.gc-commerce-panel .woocommerce textarea,
.gc-commerce-panel .woocommerce select,
.gc-commerce-panel .woocommerce .select2-container--default .select2-selection--single,
.gc-commerce-panel .woocommerce .select2-container--default .select2-selection--multiple {
  min-height: 50px;
  border-radius: calc(var(--gc-radius-scale, 1) * 14px);
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.05);
  color: #fff;
  box-shadow: none;
}

.gc-commerce-panel .woocommerce textarea {
  min-height: 140px;
  padding: 14px 16px;
}

.gc-commerce-panel .woocommerce input.input-text,
.gc-commerce-panel .woocommerce input[type="text"],
.gc-commerce-panel .woocommerce input[type="email"],
.gc-commerce-panel .woocommerce input[type="password"],
.gc-commerce-panel .woocommerce input[type="tel"],
.gc-commerce-panel .woocommerce input[type="number"],
.gc-commerce-panel .woocommerce select,
.gc-commerce-panel .woocommerce .select2-container--default .select2-selection--single,
.gc-commerce-panel .woocommerce .select2-container--default .select2-selection--multiple {
  padding: 0 16px;
}

.gc-commerce-panel .woocommerce input::placeholder,
.gc-commerce-panel .woocommerce textarea::placeholder {
  color: rgba(var(--gc-text-muted-rgb), 0.48);
}

.gc-commerce-panel .woocommerce input:focus,
.gc-commerce-panel .woocommerce textarea:focus,
.gc-commerce-panel .woocommerce select:focus,
.gc-commerce-panel .woocommerce .select2-container--default.select2-container--focus .select2-selection--multiple,
.gc-commerce-panel .woocommerce .select2-container--default.select2-container--open .select2-selection--single {
  outline: none;
  border-color: rgba(var(--gc-accent-rgb), 0.6);
  box-shadow: 0 0 0 4px rgba(var(--gc-accent-rgb), 0.12);
}

.gc-commerce-panel .woocommerce button.button,
.gc-commerce-panel .woocommerce a.button,
.gc-commerce-panel .woocommerce input.button,
.gc-commerce-panel .woocommerce #respond input#submit,
.gc-commerce-panel .woocommerce .button.alt {
  min-height: 48px;
  padding: 0 20px;
  border-radius: var(--gc-radius-pill);
  border: 1px solid transparent;
  background: linear-gradient(135deg, var(--gc-accent), var(--gc-accent-2));
  color: var(--gc-bg);
  font-weight: 800;
  letter-spacing: -0.01em;
  box-shadow: 0 14px 28px rgba(var(--gc-accent-rgb), 0.16);
}

.gc-commerce-panel .woocommerce button.button:hover,
.gc-commerce-panel .woocommerce a.button:hover,
.gc-commerce-panel .woocommerce input.button:hover,
.gc-commerce-panel .woocommerce #respond input#submit:hover,
.gc-commerce-panel .woocommerce .button.alt:hover {
  color: var(--gc-bg);
  transform: translateY(-1px);
  filter: saturate(1.08);
}

.gc-commerce-panel .woocommerce .button[name="apply_coupon"],
.gc-commerce-panel .woocommerce .button[name="update_cart"],
.gc-commerce-panel .woocommerce .showcoupon,
.gc-commerce-panel .woocommerce .showlogin {
  background: rgba(255, 255, 255, 0.06);
  color: #fff;
  border-color: rgba(255, 255, 255, 0.12);
  box-shadow: none;
}

.gc-commerce-panel .woocommerce table.shop_table,
.gc-commerce-panel .woocommerce table.shop_table_responsive,
.gc-commerce-panel .woocommerce table.woocommerce-table,
.gc-commerce-panel .woocommerce .shop_table {
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: calc(var(--gc-radius-scale, 1) * 22px);
  overflow: hidden;
  background: rgba(255, 255, 255, 0.03);
}

.gc-commerce-panel .woocommerce table.shop_table th,
.gc-commerce-panel .woocommerce table.shop_table td,
.gc-commerce-panel .woocommerce table.woocommerce-table th,
.gc-commerce-panel .woocommerce table.woocommerce-table td {
  padding: 16px 18px;
  border-color: rgba(255, 255, 255, 0.08);
  color: var(--gc-text);
}

.gc-commerce-panel .woocommerce-cart-form,
.gc-commerce-panel .woocommerce .cart_totals,
.gc-commerce-panel .woocommerce .woocommerce-checkout-review-order,
.gc-commerce-panel .woocommerce #customer_details,
.gc-commerce-panel .woocommerce .woocommerce-MyAccount-navigation,
.gc-commerce-panel .woocommerce .woocommerce-MyAccount-content,
.gc-commerce-panel .woocommerce .woocommerce-order,
.gc-commerce-panel .woocommerce .woocommerce-order-details,
.gc-commerce-panel .woocommerce .woocommerce-customer-details {
  padding: 22px;
  border-radius: calc(var(--gc-radius-scale, 1) * 22px);
  border: 1px solid rgba(255, 255, 255, 0.08);
  background: rgba(255, 255, 255, 0.03);
}

.gc-commerce-panel .woocommerce-cart,
.gc-commerce-panel .woocommerce-checkout {
  display: grid;
  gap: 22px;
}

.gc-commerce-panel .woocommerce-checkout {
  grid-template-columns: minmax(0, 1.16fr) minmax(300px, 0.84fr);
  align-items: start;
}

.gc-commerce-panel .woocommerce-checkout #customer_details {
  display: grid;
  gap: 20px;
}

.gc-commerce-panel .woocommerce-checkout #customer_details .col-1,
.gc-commerce-panel .woocommerce-checkout #customer_details .col-2 {
  float: none;
  width: 100%;
}

.gc-commerce-panel .woocommerce .cart_totals {
  width: 100%;
}

.gc-commerce-panel .woocommerce .cart-collaterals {
  margin-top: 18px;
}

.gc-commerce-panel .woocommerce .cart-collaterals:after,
.gc-commerce-panel .woocommerce .woocommerce-MyAccount-navigation ul:after {
  content: "";
  display: table;
  clear: both;
}

.gc-commerce-panel .woocommerce .product-name a,
.gc-commerce-panel .woocommerce .woocommerce-MyAccount-navigation a,
.gc-commerce-panel .woocommerce .woocommerce-orders-table a,
.gc-commerce-panel .woocommerce .woocommerce-table--order-details a {
  color: #fff;
}

.gc-commerce-panel .woocommerce .woocommerce-MyAccount-navigation ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 10px;
}

.gc-commerce-panel .woocommerce .woocommerce-MyAccount-navigation-link a {
  display: flex;
  align-items: center;
  min-height: 46px;
  padding: 0 14px;
  border-radius: calc(var(--gc-radius-scale, 1) * 14px);
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.08);
  color: rgba(var(--gc-text-rgb), 0.86);
  font-weight: 700;
}

.gc-commerce-panel .woocommerce .woocommerce-MyAccount-navigation-link.is-active a,
.gc-commerce-panel .woocommerce .woocommerce-MyAccount-navigation-link a:hover {
  background: rgba(var(--gc-accent-rgb), 0.14);
  border-color: rgba(var(--gc-accent-rgb), 0.28);
  color: #fff;
}

.gc-commerce-panel .woocommerce .woocommerce-MyAccount-content {
  display: grid;
  gap: 18px;
}

.gc-commerce-panel .woocommerce-account .woocommerce {
  display: grid;
  grid-template-columns: minmax(230px, 280px) minmax(0, 1fr);
  gap: 22px;
  align-items: start;
}

.gc-commerce-panel .woocommerce .woocommerce-form-login__rememberme,
.gc-commerce-panel .woocommerce .woocommerce-form__label-for-checkbox {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.gc-commerce-panel .woocommerce .quantity .qty {
  min-width: 88px;
}

.gc-commerce-panel .woocommerce .coupon {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
}

.gc-commerce-panel .woocommerce .coupon #coupon_code {
  min-width: min(100%, 260px);
}

.gc-commerce-panel .woocommerce .cart-empty,
.gc-commerce-panel .woocommerce .return-to-shop,
.gc-commerce-panel .woocommerce .woocommerce-order-overview,
.gc-commerce-panel .woocommerce .woocommerce-thankyou-order-received {
  padding: 20px 22px;
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  background: rgba(255,255,255,.03);
  border: 1px solid rgba(255,255,255,.08);
}

.gc-commerce-panel .woocommerce .woocommerce-checkout-payment {
  margin-top: 18px;
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  background: rgba(255,255,255,.04);
}

.gc-commerce-panel .woocommerce .payment_methods {
  margin: 0;
  padding: 0;
  list-style: none;
}

.gc-commerce-panel .woocommerce .payment_methods > li {
  padding: 16px 18px;
  border-bottom: 1px solid rgba(255,255,255,.08);
}

.gc-commerce-panel .woocommerce .payment_methods > li:last-child {
  border-bottom: 0;
}

.gc-commerce-panel .woocommerce .wc_payment_method > label {
  color: #fff;
  font-weight: 700;
}

.gc-commerce-panel .woocommerce .place-order {
  padding: 18px;
}

.gc-commerce-panel .woocommerce .place-order .button {
  width: 100%;
}

@media (max-width: 1280px) {
  .gc-header-inner {
    flex-wrap: wrap;
    justify-content: center;
  }

  .gc-main-nav {
    order: 2;
    width: 100%;
  }

  .gc-main-nav__list {
    justify-content: center;
    flex-wrap: wrap;
  }

  .gc-header-search {
    order: 3;
    width: min(100%, 720px);
    flex: 1 1 100%;
  }
}

@media (max-width: 980px) {
  .gc-commerce-panel .woocommerce .u-columns,
  .gc-commerce-panel .woocommerce-account .woocommerce,
  .gc-commerce-panel .woocommerce-checkout {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  .gc-header-search {
    grid-template-columns: minmax(0, 1fr) 50px;
  }

  .gc-header-search__select {
    display: none;
  }

  .gc-commerce-panel,
  .gc-commerce-hero {
    border-radius: calc(var(--gc-radius-scale, 1) * 22px);
  }

  .gc-commerce-panel .woocommerce table.shop_table,
  .gc-commerce-panel .woocommerce table.shop_table_responsive,
  .gc-commerce-panel .woocommerce table.woocommerce-table,
  .gc-commerce-panel .woocommerce .shop_table {
    display: block;
    overflow-x: auto;
  }
}


/* v1.8.0 fast checkout + deals hover + landing refinements */
.gc-home-section--categories .gc-category-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.gc-home-deals__promo {
  border: 0;
  box-shadow: var(--gc-shadow-soft);
  background-clip: border-box;
}

.gc-home-deals__promo::before {
  inset: -2px;
  border-radius: inherit;
}

body.gc-variant-c .gc-deal-card {
  position: relative;
  isolation: isolate;
  transition: transform .32s cubic-bezier(.22, 1, .36, 1), box-shadow .32s ease, border-color .32s ease;
}

body.gc-variant-c .gc-deal-card::before {
  content: "";
  position: absolute;
  inset: -120% -38%;
  z-index: 1;
  background: linear-gradient(120deg, transparent 35%, rgba(255, 255, 255, 0.16) 50%, transparent 65%);
  transform: translateX(-120%);
  transition: transform .72s ease;
  pointer-events: none;
}

body.gc-variant-c .gc-deal-card:hover {
  transform: translateY(-4px);
  border-color: rgba(var(--gc-accent-rgb), 0.26);
  box-shadow: 0 26px 58px rgba(3, 8, 21, 0.32);
}

body.gc-variant-c .gc-deal-card:hover::before {
  transform: translateX(120%);
}

body.gc-variant-c .gc-deal-card__media img,
body.gc-variant-c .gc-deal-card__media video {
  transition: transform .45s ease, filter .45s ease;
}

body.gc-variant-c .gc-deal-card:hover .gc-deal-card__media img,
body.gc-variant-c .gc-deal-card:hover .gc-deal-card__media video {
  transform: scale(1.045);
  filter: contrast(1.05) brightness(1.03);
}

.gc-store-rank-row__media {
  width: 140px;
  height: 108px;
  border-radius: calc(var(--gc-radius-scale, 1) * 24px);
}

.gc-commerce-panel--fast-checkout {
  padding: clamp(20px, 2.3vw, 32px);
}

.gc-fast-checkout {
  display: grid;
  gap: 22px;
}

.gc-fast-cart {
  display: grid;
  gap: 0;
  border-radius: calc(var(--gc-radius-scale, 1) * 26px);
  overflow: hidden;
  border: 1px solid rgba(var(--gc-border-rgb), 0.14);
  background: linear-gradient(180deg, rgba(var(--gc-surface-rgb), 0.92), rgba(var(--gc-bg-rgb), 0.98));
  box-shadow: var(--gc-shadow-soft);
}

.gc-fast-cart__head,
.gc-fast-cart__row,
.gc-fast-cart__foot {
  display: grid;
  grid-template-columns: minmax(180px, .7fr) minmax(0, 1.8fr) minmax(120px, .5fr);
  gap: 16px;
  align-items: center;
}

.gc-fast-cart__head {
  padding: 14px 18px;
  background: rgba(255, 255, 255, 0.05);
  color: var(--gc-text-soft);
  font-size: .8rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.gc-fast-cart__rows {
  display: grid;
}

.gc-fast-cart__row {
  padding: 18px;
  border-top: 1px solid rgba(var(--gc-border-rgb), 0.12);
}

.gc-fast-cart__store {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
}

.gc-fast-cart__store-avatar {
  width: 62px;
  height: 62px;
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  overflow: hidden;
  flex: 0 0 62px;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255,255,255,.08);
}

.gc-fast-cart__store-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.gc-fast-cart__store-name {
  display: block;
  color: var(--gc-text);
  font-weight: 800;
  line-height: 1.2;
}

.gc-fast-cart__store-label {
  display: block;
  margin-top: 4px;
  color: var(--gc-text-soft);
  font-size: .82rem;
}

.gc-fast-cart__item {
  display: grid;
  grid-template-columns: minmax(164px, 184px) minmax(0, 1fr);
  gap: 16px;
  align-items: start;
  min-width: 0;
}

.gc-fast-cart__media {
  position: relative;
  aspect-ratio: 16 / 9;
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  overflow: hidden;
  background: rgba(255,255,255,.04);
}

.gc-fast-cart__media img,
.gc-fast-cart__media video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.gc-fast-cart__item-title {
  margin: 0 0 10px;
  font-size: 1.08rem;
  line-height: 1.25;
}

.gc-fast-cart__item-title a {
  color: var(--gc-text);
}

.gc-fast-cart__item-copy {
  min-width: 0;
}

.gc-fast-cart__item-desc {
  margin: 0;
  font-size: .88rem;
  line-height: 1.55;
  color: var(--gc-text-soft);
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: break-word;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.gc-fast-cart__item-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
  margin-top: 10px;
  color: var(--gc-text-soft);
  font-size: .8rem;
}

.gc-fast-cart__item-meta span {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  padding: 0 10px;
  border-radius: var(--gc-radius-pill);
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255,255,255,.08);
}

.gc-fast-cart__price {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 10px;
  text-align: right;
}

.gc-fast-cart__price-value {
  font-size: 1.15rem;
  font-weight: 900;
  color: #ffe86d;
}

.gc-fast-cart__remove {
  color: #fca5a5;
  font-size: .82rem;
  font-weight: 700;
}

.gc-fast-cart__foot {
  padding: 18px;
  border-top: 1px solid rgba(var(--gc-border-rgb), 0.12);
  background: rgba(255,255,255,.03);
}

.gc-fast-cart__foot > :first-child {
  grid-column: 1 / 3;
  font-size: 1rem;
  font-weight: 900;
}

.gc-fast-cart__total {
  justify-self: end;
  font-size: 1.2rem;
  font-weight: 900;
  color: #ffe86d;
}

.gc-fast-checkout__actions {
  display: flex;
  justify-content: flex-end;
}

.gc-fast-checkout[data-gc-fast-checkout-open="1"] .gc-fast-checkout__actions {
  display: none;
}

.gc-fast-checkout__toggle {
  min-width: min(100%, 280px);
  justify-content: center;
  padding: 16px 22px;
  font-size: 1rem;
  font-weight: 900;
}

.gc-fast-checkout__panel {
  border-radius: calc(var(--gc-radius-scale, 1) * 26px);
  border: 1px solid rgba(var(--gc-border-rgb), 0.14);
  background: linear-gradient(180deg, rgba(var(--gc-surface-rgb), 0.92), rgba(var(--gc-bg-rgb), 0.98));
  box-shadow: var(--gc-shadow-soft);
  overflow: hidden;
}

.gc-fast-checkout__panel.is-open {
  animation: gcFastCheckoutFade .22s ease;
}

@keyframes gcFastCheckoutFade {
  from { opacity: 0; transform: translateY(6px); }
  to { opacity: 1; transform: translateY(0); }
}

.gc-fast-checkout-form {
  display: grid;
  gap: 22px;
  padding: clamp(18px, 2.3vw, 28px);
}

.gc-fast-checkout-form__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 22px;
  align-items: start;
}

.gc-fast-checkout-form__card {
  display: grid;
  gap: 16px;
  min-width: 0;
  align-content: start;
  padding: clamp(18px, 2.2vw, 28px);
  border-radius: calc(var(--gc-radius-scale, 1) * 22px);
  background: rgba(255,255,255,.035);
  border: 1px solid rgba(255,255,255,.08);
}

.gc-fast-checkout-form__card-header {
  display: grid;
  gap: 6px;
}

.gc-fast-checkout-form__card-header h2 {
  margin: 0;
  font-size: 1.18rem;
}

.gc-fast-checkout-form__card-header p {
  margin: 0;
  color: var(--gc-text-soft);
  font-size: .94rem;
}

.gc-fast-checkout-form .form-row {
  margin-bottom: 14px;
}

.gc-fast-checkout-form .form-row-last,
.gc-fast-checkout-form .form-row-first {
  width: 100%;
  float: none;
  clear: both;
}

.gc-fast-checkout-form .woocommerce-billing-fields,
.gc-fast-checkout-form .woocommerce-checkout-payment,
.gc-fast-checkout-form .woocommerce-billing-fields__field-wrapper,
.gc-fast-checkout-form .woocommerce-validated,
.gc-fast-checkout-form .woocommerce-invalid,
.gc-fast-checkout-form .woocommerce-input-wrapper {
  display: block;
  width: 100%;
  min-width: 0;
}

.gc-fast-checkout-form input.input-text,
.gc-fast-checkout-form input[type="text"],
.gc-fast-checkout-form input[type="email"],
.gc-fast-checkout-form input[type="password"],
.gc-fast-checkout-form input[type="tel"],
.gc-fast-checkout-form select,
.gc-fast-checkout-form textarea,
.gc-commerce-panel .woocommerce input::placeholder,
.gc-commerce-panel .woocommerce textarea::placeholder {
  color: rgba(var(--gc-text-rgb), 0.86);
}

.gc-fast-checkout-form .select2-container--default .select2-selection--single,
.gc-fast-checkout-form input.input-text,
.gc-fast-checkout-form input[type="text"],
.gc-fast-checkout-form input[type="email"],
.gc-fast-checkout-form input[type="password"],
.gc-fast-checkout-form input[type="tel"],
.gc-fast-checkout-form textarea,
.gc-fast-checkout-form select {
  background: rgba(var(--gc-bg-rgb), 0.9);
  border-color: rgba(var(--gc-border-rgb), 0.18);
}

.gc-fast-checkout-form .woocommerce-checkout-payment {
  background: transparent;
  padding: 0;
  border: 0;
}

.gc-fast-checkout-form .payment_methods {
  margin: 0;
}

.gc-fast-checkout-form .payment_box {
  color: var(--gc-text-soft);
}

.gc-fast-checkout-form .place-order .button,
.gc-fast-checkout-form #place_order {
  width: 100%;
  min-height: 54px;
  font-size: 1rem;
  font-weight: 900;
}

.gc-account-following-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr));
  gap: 18px;
}

.gc-account-following-card {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  border-radius: calc(var(--gc-radius-scale, 1) * 22px);
  overflow: hidden;
  background: rgba(255,255,255,.035);
  border: 1px solid rgba(255,255,255,.08);
}

.gc-account-following-card__media {
  display: block;
  aspect-ratio: 4 / 3;
  background: rgba(255,255,255,.04);
}

.gc-account-following-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.gc-account-following-card__body {
  display: grid;
  gap: 10px;
  padding: 16px;
}

.gc-account-following-card__title {
  margin: 0;
  font-size: 1rem;
}

.gc-account-following-card__title a {
  color: var(--gc-text);
}

.gc-account-following-card__meta {
  margin: 0;
  color: var(--gc-text-soft);
  font-size: .88rem;
}

.gc-account-following-card__updated {
  margin: -2px 0 0;
  color: rgba(var(--gc-text-muted-rgb), 0.72);
  font-size: .78rem;
}

.gc-account-following-card__actions {
  margin: auto 0 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.gc-account-following-card__actions .button,
.gc-account-following-card__actions .gc-account-following-card__placeholder {
  width: 100%;
  min-height: 40px;
  justify-content: center;
  display: inline-flex;
  align-items: center;
  border-radius: var(--gc-radius-pill);
  font-weight: 800;
  text-align: center;
}

.gc-account-following-card__placeholder {
  border: 1px solid rgba(255,255,255,.1);
  color: rgba(var(--gc-text-rgb), 0.78);
  background: rgba(255,255,255,.03);
}

@media (max-width: 1220px) {
  .gc-home-section--categories .gc-category-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (max-width: 980px) {
  .gc-home-section--categories .gc-category-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .gc-fast-checkout-form__grid,
  .gc-fast-cart__head,
  .gc-fast-cart__row,
  .gc-fast-cart__foot {
    grid-template-columns: 1fr;
  }

  .gc-fast-cart__head {
    display: none;
  }

  .gc-fast-cart__price {
    align-items: flex-start;
    text-align: left;
  }

  .gc-fast-cart__foot > :first-child {
    grid-column: auto;
  }
}

@media (max-width: 680px) {
  .gc-home-section--categories .gc-category-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .gc-store-rank-row__media {
    width: 110px;
    height: 84px;
  }

  .gc-fast-cart__row,
  .gc-fast-cart__foot {
    padding: 16px;
  }

  .gc-fast-cart__item {
    grid-template-columns: 1fr;
  }

  .gc-fast-checkout__actions {
    justify-content: stretch;
  }

  .gc-fast-checkout__toggle {
    width: 100%;
  }
}


/* v1.9.0 sales archive + cart shell fixes */
.gc-sales-browser-page .gc-page-title {
  letter-spacing: -.02em;
}

@media (max-width: 640px) {
  .gc-show-more-row--actions {
    flex-direction: column;
    align-items: stretch;
  }

  .gc-show-more-row--actions .gc-button,
  .gc-show-more-row--actions .gc-show-more-link {
    width: 100%;
  }
}


/* v1.11.0 storefront + filter label + account nav cleanup */
.gc-storefront-hero__overlay {
  pointer-events: none;
}

.gc-storefront-hero__inner {
  z-index: 2;
}

.gc-storefront-identity-card {
  align-items: start;
}

.gc-storefront-identity-card__content {
  position: relative;
  z-index: 3;
  min-width: 0;
}

.gc-storefront-actions,
.gc-storefront-inline-about,
.gc-storefront-tabs {
  position: relative;
  z-index: 4;
}

.gc-storefront-actions {
  margin-top: 4px;
  row-gap: 10px;
}

.gc-storefront-follow-button,
.gc-storefront-action {
  position: relative;
  z-index: 5;
  pointer-events: auto;
}

.gc-storefront-inline-about {
  max-width: min(100%, 860px);
}

.gc-storefront-inline-about .gc-storefront-info-card__description {
  line-height: 1.68;
  overflow-wrap: anywhere;
  word-break: break-word;
  white-space: normal;
}

.woocommerce-MyAccount-navigation-link--followings {
  display: none !important;
}


/* v1.11.1 storefront hero overflow + duplicate clip guard */
.gc-storefront-hero {
  overflow: visible;
  background: transparent;
  border: 0;
  box-shadow: none;
}

.gc-storefront-hero__banner {
  position: relative;
  overflow: hidden;
  border-radius: calc(var(--gc-radius-scale, 1) * 30px);
  border: 1px solid var(--gc-border);
  box-shadow: var(--gc-shadow);
  background: var(--gc-surface);
}

.gc-storefront-hero__overlay {
  top: 0;
  right: 0;
  bottom: auto;
  left: 0;
  height: min(32vw, 360px);
  border-radius: calc(var(--gc-radius-scale, 1) * 30px);
}

.gc-storefront-hero__inner {
  position: relative;
  inset: auto;
  display: block;
  padding: 0 clamp(18px, 2vw, 28px) clamp(18px, 2vw, 28px);
  margin-top: clamp(-116px, -10vw, -72px);
}

.gc-storefront-identity-card {
  grid-template-columns: minmax(104px, 136px) minmax(0, 1fr);
  align-items: start;
  gap: clamp(18px, 2vw, 24px);
  min-width: 0;
}

.gc-storefront-identity-card__avatar {
  width: 100%;
  max-width: 136px;
  height: auto;
  aspect-ratio: 1 / 1;
  display: block;
  align-self: start;
}

.gc-storefront-identity-card__avatar img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.gc-storefront-identity-card__content,
.gc-storefront-inline-about,
.gc-storefront-inline-about .gc-storefront-info-card__description,
.gc-storefront-inline-about .gc-storefront-info-card__description p,
.gc-storefront-socials,
.gc-storefront-socials__list,
.gc-storefront-socials__list a,
.gc-storefront-tabs {
  min-width: 0;
}

.gc-storefront-inline-about .gc-storefront-info-card__description,
.gc-storefront-inline-about .gc-storefront-info-card__description p,
.gc-storefront-socials__list a {
  overflow-wrap: anywhere;
  word-break: break-word;
}

.gc-storefront-page ~ .wcfmmp-single-store-holder,
.gc-storefront-page ~ #wcfmmp-store {
  display: none !important;
}

@media (max-width: 820px) {
  .gc-storefront-hero__overlay {
    height: 280px;
  }

  .gc-storefront-hero__inner {
    margin-top: -64px;
    padding-left: 16px;
    padding-right: 16px;
  }

  .gc-storefront-identity-card {
    grid-template-columns: 1fr;
  }

  .gc-storefront-identity-card__avatar {
    max-width: 112px;
  }
}

@media (max-width: 640px) {
  .gc-storefront-hero__overlay {
    height: 240px;
  }

  .gc-storefront-hero__banner,
  .gc-storefront-hero__banner img {
    height: 240px;
  }

  .gc-storefront-hero__inner {
    margin-top: -56px;
    padding-bottom: 16px;
  }
}


/* v1.11.2 checkout width + archive reveal + order confirmation pass */
.gc-clips-archive-stack {
  display: grid;
  gap: 22px;
}

.gc-clips-archive-actions {
  justify-content: center;
  gap: 12px;
  flex-wrap: wrap;
}

.gc-clips-archive-actions[hidden],
.gc-clips-archive-actions .gc-button[hidden] {
  display: none !important;
}

.gc-clips-archive-pagination {
  display: none !important;
}

.gc-storefront-page ~ .gc-clips-browser-page[data-gc-clips-archive] {
  display: none !important;
}

.gc-commerce-panel .gc-fast-checkout__panel > .woocommerce,
.gc-commerce-panel .gc-fast-checkout__panel > .woocommerce-checkout,
.gc-commerce-panel .gc-fast-checkout__panel > form.woocommerce-checkout,
.gc-commerce-panel .gc-fast-checkout-form,
.gc-commerce-panel .gc-fast-checkout-form.woocommerce-checkout {
  width: 100%;
  max-width: none;
}

.gc-commerce-panel .gc-fast-checkout-form.woocommerce-checkout {
  grid-template-columns: minmax(0, 1fr);
  align-items: start;
}

.gc-commerce-panel .gc-fast-checkout-form__grid {
  width: 100%;
  max-width: none;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.gc-commerce-panel .gc-fast-checkout-form__card,
.gc-commerce-panel .gc-fast-checkout-form .woocommerce-billing-fields,
.gc-commerce-panel .gc-fast-checkout-form .woocommerce-billing-fields__field-wrapper,
.gc-commerce-panel .gc-fast-checkout-form .woocommerce-checkout-payment,
.gc-commerce-panel .gc-fast-checkout-form .woocommerce-checkout-review-order,
.gc-commerce-panel .gc-fast-checkout-form #order_review {
  width: 100%;
  max-width: none;
  min-width: 0;
}

.gc-commerce-panel .gc-fast-checkout-form .woocommerce-checkout-review-order,
.gc-commerce-panel .gc-fast-checkout-form #order_review {
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.gc-order-received {
  display: grid;
  gap: 22px;
}

.gc-order-received__summary,
.gc-order-support {
  display: grid;
  gap: 18px;
  padding: clamp(20px, 2.4vw, 28px);
  border-radius: calc(var(--gc-radius-scale, 1) * 24px);
  border: 1px solid rgba(var(--gc-border-rgb), 0.14);
  background: linear-gradient(180deg, rgba(var(--gc-surface-rgb), 0.92), rgba(var(--gc-bg-rgb), 0.98));
  box-shadow: var(--gc-shadow-soft);
}

.gc-order-received__summary-head {
  display: grid;
  gap: 8px;
}

.gc-order-received__summary-head h2,
.gc-order-support h3 {
  margin: 0;
  color: #fff;
  letter-spacing: -0.03em;
}

.gc-order-received__summary-head p,
.gc-order-support p {
  margin: 0;
  color: var(--gc-text-soft);
  line-height: 1.65;
}

.gc-order-received__summary-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 14px;
}

.gc-order-received__summary-card {
  display: grid;
  gap: 6px;
  min-width: 0;
  padding: 16px 18px;
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  border: 1px solid rgba(255, 255, 255, 0.08);
  background: rgba(255, 255, 255, 0.035);
}

.gc-order-received__summary-card span {
  color: rgba(var(--gc-text-muted-rgb), 0.76);
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.gc-order-received__summary-card strong {
  display: block;
  min-width: 0;
  color: #fff;
  font-size: 1rem;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.gc-order-received__email-banner {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 16px;
  align-items: start;
  padding: clamp(18px, 2vw, 24px);
  border-radius: calc(var(--gc-radius-scale, 1) * 22px);
  border: 1px solid rgba(var(--gc-accent-rgb), 0.22);
  background: linear-gradient(135deg, rgba(var(--gc-accent-rgb), 0.11), rgba(var(--gc-accent-2-rgb), 0.12));
}

.gc-order-received__email-banner-icon {
  width: 48px;
  height: 48px;
  border-radius: calc(var(--gc-radius-scale, 1) * 16px);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(var(--gc-bg-rgb), 0.56);
  border: 1px solid rgba(255,255,255,.1);
  color: #fff;
  font-size: 1.25rem;
}

.gc-order-received__email-banner-copy {
  display: grid;
  gap: 8px;
}

.gc-order-received__email-banner-copy h3 {
  margin: 0;
  color: #fff;
}

.gc-order-received__email-banner-copy p {
  margin: 0;
  color: var(--gc-text-soft);
  line-height: 1.65;
}

.gc-order-received__email-banner-copy p strong {
  color: #fff;
}

.gc-order-received__email-banner-actions,
.gc-order-support__actions,
.gc-order-received__failure-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.gc-order-received__downloads {
  display: grid;
  gap: 16px;
}

.gc-order-received__downloads-header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
}

.gc-order-received__downloads-header h2 {
  margin: 0;
  color: #fff;
}

.gc-order-received__downloads-header p {
  margin: 6px 0 0;
  color: var(--gc-text-soft);
}

.gc-fast-cart--downloads .gc-fast-cart__head,
.gc-fast-cart--downloads .gc-fast-cart__row,
.gc-fast-cart--downloads .gc-fast-cart__foot {
  grid-template-columns: minmax(180px, .72fr) minmax(0, 1.8fr) minmax(180px, .6fr);
}

.gc-fast-cart--downloads .gc-fast-cart__price {
  align-items: stretch;
  justify-content: center;
  gap: 12px;
  text-align: left;
}

.gc-fast-cart__download,
.gc-fast-cart__download-alt,
.gc-fast-cart__watch-now {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 0 18px;
  border-radius: var(--gc-radius-pill);
  font-weight: 800;
  text-decoration: none;
}

/* gc_order_received_watch_now_v1 (2026-05-16) -- primary CTA on order-received, deep-links to
   /my-account/my-library/?clip=<id> which auto-opens the lightbox. Uses the violet-magenta
   gradient so it visually wins over the teal Download button which is the secondary action. */
.gc-fast-cart__watch-now {
  background: linear-gradient(135deg, #ec4899, var(--gc-accent-2));
  color: #fff;
  box-shadow: 0 14px 28px rgba(var(--gc-accent-2-rgb), 0.28);
}
.gc-fast-cart__watch-now:hover,
.gc-fast-cart__watch-now:focus {
  color: #fff;
  filter: brightness(1.08);
  text-decoration: none;
}

.gc-fast-cart__download {
  background: linear-gradient(135deg, var(--gc-accent), var(--gc-accent-2));
  color: var(--gc-bg);
  box-shadow: 0 14px 28px rgba(var(--gc-accent-rgb), 0.16);
}

.gc-fast-cart__download-alt {
  border: 1px solid rgba(255,255,255,.1);
  background: rgba(255,255,255,.03);
  color: var(--gc-text);
}

.gc-fast-cart__download-note {
  color: var(--gc-text-soft);
  font-size: .82rem;
  line-height: 1.55;
}

.gc-order-received__failure {
  display: grid;
  gap: 18px;
  padding: clamp(20px, 2.4vw, 28px);
  border-radius: calc(var(--gc-radius-scale, 1) * 24px);
  border: 1px solid rgba(239, 68, 68, 0.22);
  background: linear-gradient(180deg, rgba(60, 16, 16, 0.82), rgba(23, 10, 18, 0.96));
}

.gc-order-received__failure h2,
.gc-order-received__failure p {
  margin: 0;
}

.gc-order-received__failure p {
  color: rgba(255,255,255,.78);
  line-height: 1.65;
}

@media (max-width: 980px) {
  .gc-order-received__email-banner {
    grid-template-columns: 1fr;
  }

  .gc-fast-cart--downloads .gc-fast-cart__head,
  .gc-fast-cart--downloads .gc-fast-cart__row,
  .gc-fast-cart--downloads .gc-fast-cart__foot {
    grid-template-columns: 1fr;
  }

  .gc-fast-cart--downloads .gc-fast-cart__price {
    align-items: flex-start;
  }
}

@media (max-width: 640px) {
  .gc-clips-archive-actions {
    flex-direction: column;
    align-items: stretch;
  }

  .gc-clips-archive-actions .gc-button,
  .gc-order-received__email-banner-actions .gc-button,
  .gc-order-support__actions .gc-button,
  .gc-order-received__failure-actions .button,
  .gc-order-received__failure-actions .gc-button,
  .gc-fast-cart__download,
  .gc-fast-cart__download-alt,
  .gc-fast-cart__watch-now {
    width: 100%;
  }
}



/* v1.12.5 account order detail refresh */
.gc-fast-cart__creator {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.gc-fast-cart__creator-avatar {
  width: 40px;
  height: 40px;
  flex: 0 0 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border-radius: calc(var(--gc-radius-scale, 1) * 14px);
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.08);
}

.gc-fast-cart__creator-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.gc-fast-cart__creator-copy {
  display: grid;
  min-width: 0;
  gap: 2px;
}

.gc-fast-cart__creator-label {
  color: rgba(var(--gc-text-muted-rgb), 0.74);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.gc-fast-cart__creator-name {
  color: var(--gc-text);
  font-size: 0.92rem;
  font-weight: 700;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

.gc-fast-cart__media--clip {
  border: 1px solid rgba(var(--gc-border-rgb), 0.14);
  box-shadow: 0 18px 32px rgba(5, 10, 20, 0.2);
}

.gc-fast-cart__media--clip::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(var(--gc-bg-rgb), 0.1), rgba(var(--gc-bg-rgb), 0.34));
}

.gc-fast-cart__media-badge {
  position: absolute;
  top: 10px;
  left: 10px;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0 12px;
  border-radius: var(--gc-radius-pill);
  background: rgba(var(--gc-bg-rgb), 0.82);
  border: 1px solid rgba(255, 255, 255, 0.12);
  color: #fff;
  font-size: 0.74rem;
  font-weight: 800;
  letter-spacing: 0.04em;
}

.gc-fast-cart__media--clip img,
.gc-fast-cart__media--clip video {
  position: relative;
  z-index: 1;
}

.gc-order-history {
  display: grid;
  gap: 18px;
}

.gc-order-history__header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 18px;
  flex-wrap: wrap;
}

.gc-order-history__header h3 {
  margin: 0;
  color: #fff;
  letter-spacing: -0.03em;
}

.gc-order-history__header p {
  margin: 6px 0 0;
  color: var(--gc-text-soft);
  line-height: 1.65;
}

.gc-order-history__list {
  display: grid;
  gap: 16px;
}

.gc-order-history-card {
  display: grid;
  gap: 16px;
  padding: clamp(18px, 2vw, 24px);
  border-radius: calc(var(--gc-radius-scale, 1) * 24px);
  border: 1px solid rgba(var(--gc-border-rgb), 0.14);
  background: linear-gradient(180deg, rgba(var(--gc-surface-rgb), 0.92), rgba(var(--gc-bg-rgb), 0.98));
  box-shadow: var(--gc-shadow-soft);
}

.gc-order-history-card__top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
}

.gc-order-history-card__eyebrow {
  display: block;
  color: rgba(var(--gc-text-muted-rgb), 0.74);
  font-size: 0.74rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.gc-order-history-card__title {
  margin: 6px 0 0;
  color: #fff;
  font-size: 1.2rem;
  line-height: 1.22;
}

.gc-order-history-card__text {
  margin: 8px 0 0;
  color: var(--gc-text-soft);
  line-height: 1.65;
}

.gc-order-history-card__total {
  min-width: min(100%, 200px);
  display: grid;
  gap: 6px;
  padding: 16px 18px;
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.08);
}

.gc-order-history-card__total span {
  color: rgba(var(--gc-text-muted-rgb), 0.76);
  font-size: 0.76rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.gc-order-history-card__total strong {
  color: #fff;
  font-size: 1.15rem;
}

.gc-order-history-card__meta,
.gc-order-history-card__clips,
.gc-order-history-card__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.gc-order-history-card__meta-item,
.gc-order-history-card__clip,
.gc-order-status-pill {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0 14px;
  border-radius: var(--gc-radius-pill);
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.08);
  color: var(--gc-text-soft);
  font-size: 0.82rem;
  font-weight: 700;
}

.gc-order-history-card__clip {
  max-width: 100%;
  overflow-wrap: anywhere;
}

.gc-order-status-pill {
  color: #fff;
}

.gc-order-status-pill--completed,
.gc-order-status-pill--processing {
  background: rgba(61, 214, 140, 0.12);
  border-color: rgba(61, 214, 140, 0.28);
}

.gc-order-status-pill--pending,
.gc-order-status-pill--on-hold {
  background: rgba(251, 191, 36, 0.12);
  border-color: rgba(251, 191, 36, 0.24);
}

.gc-order-status-pill--failed,
.gc-order-status-pill--cancelled,
.gc-order-status-pill--refunded {
  background: rgba(248, 113, 113, 0.12);
  border-color: rgba(248, 113, 113, 0.24);
}

.gc-account-order-view {
  display: grid;
  gap: 22px;
}

.gc-order-received__email-banner--neutral {
  border-color: rgba(var(--gc-border-rgb), 0.16);
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.04), rgba(var(--gc-accent-2-rgb), 0.08));
}

.gc-account-order-view .gc-order-received__summary-grid {
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
}

.gc-account-order-view .gc-order-received__summary-card strong {
  text-transform: none;
}

@media (max-width: 980px) {
  .gc-order-history-card__top {
    flex-direction: column;
  }

  .gc-order-history-card__total {
    min-width: 0;
    width: 100%;
  }
}

@media (max-width: 640px) {
  .gc-order-history-card__actions .gc-button,
  .gc-order-history-card__actions .button {
    width: 100%;
  }
}

/* v1.12.1 account redesign + models login + archive reveal 20 */
.gc-main-nav__link--accent {
  border: 1px solid rgba(var(--gc-accent-2-rgb), 0.24);
  background: rgba(255, 255, 255, 0.02);
  color: var(--gc-text-soft);
  box-shadow: none;
}

.gc-main-nav__link--accent:hover,
.gc-main-nav .current-menu-item > .gc-main-nav__link--accent {
  color: #fff;
  border-color: rgba(var(--gc-accent-2-rgb), 0.38);
  background: linear-gradient(135deg, rgba(var(--gc-accent-2-rgb), 0.16), rgba(var(--gc-accent-rgb), 0.12));
  box-shadow: 0 14px 30px rgba(12, 18, 33, 0.24);
}

.gc-commerce-panel .woocommerce-account .woocommerce {
  grid-template-columns: minmax(280px, 340px) minmax(0, 1fr);
  gap: 26px;
  align-items: start;
}

.gc-commerce-panel .woocommerce-account .woocommerce .woocommerce-MyAccount-navigation {
  position: sticky;
  top: 104px;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.gc-commerce-panel .woocommerce-account .woocommerce .woocommerce-MyAccount-content {
  padding: 0;
  border: 0;
  background: transparent;
  gap: 22px;
}

.gc-account-nav {
  display: grid;
  gap: 18px;
}

.gc-account-nav__card {
  position: relative;
  display: grid;
  gap: 18px;
  padding: 24px;
  border-radius: calc(var(--gc-radius-scale, 1) * 28px);
  border: 1px solid rgba(var(--gc-border-rgb), 0.16);
  background:
    radial-gradient(circle at top right, rgba(var(--gc-accent-rgb), 0.18), transparent 34%),
    linear-gradient(160deg, rgba(var(--gc-slate-rgb), 0.98), rgba(var(--gc-bg-rgb), 0.98));
  box-shadow: 0 22px 48px rgba(3, 8, 20, 0.34);
  overflow: hidden;
}

.gc-account-nav__card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(120deg, transparent 30%, rgba(255, 255, 255, 0.08) 50%, transparent 70%);
  opacity: .45;
  pointer-events: none;
}

.gc-account-nav__identity,
.gc-account-nav__meta,
.gc-account-nav__actions,
.gc-account-nav__member-since {
  position: relative;
  z-index: 1;
}

.gc-account-nav__identity {
  display: flex;
  align-items: center;
  gap: 14px;
}

.gc-account-nav__avatar,
.gc-account-nav__avatar img {
  display: inline-flex;
  width: 72px;
  height: 72px;
  border-radius: calc(var(--gc-radius-scale, 1) * 22px);
  overflow: hidden;
}

.gc-account-nav__avatar img {
  object-fit: cover;
  border: 1px solid rgba(255, 255, 255, 0.14);
}

.gc-account-nav__identity-copy {
  display: grid;
  gap: 4px;
}

.gc-account-nav__eyebrow,
.gc-account-section-hero__eyebrow,
.gc-account-dashboard__eyebrow,
.gc-models-login-hero__eyebrow,
.gc-models-panel__eyebrow,
.gc-account-feature-card__eyebrow,
.gc-account-stat-card__label {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: .72rem;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: rgba(var(--gc-accent-rgb), .9);
}

.gc-account-nav__name {
  color: #fff;
  font-size: 1.08rem;
  line-height: 1.2;
}

.gc-account-nav__email,
.gc-account-nav__member-since {
  color: rgba(var(--gc-text-muted-rgb), 0.66);
  font-size: .92rem;
}

.gc-account-nav__meta {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.gc-account-nav__meta-pill {
  display: grid;
  gap: 4px;
  padding: 12px 14px;
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  border: 1px solid rgba(255, 255, 255, 0.08);
  background: rgba(255, 255, 255, 0.05);
}

.gc-account-nav__meta-pill strong {
  color: #fff;
  font-size: 1.12rem;
  line-height: 1;
}

.gc-account-nav__meta-pill span:last-child {
  color: rgba(var(--gc-text-muted-rgb), 0.66);
  font-size: .82rem;
}

.gc-account-nav__actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.gc-account-nav__actions .gc-button {
  width: 100%;
  min-height: 44px;
}

.gc-account-nav__list,
.gc-commerce-panel .woocommerce .woocommerce-MyAccount-navigation ul.gc-account-nav__list {
  display: grid;
  gap: 12px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.gc-account-nav__list li a,
.gc-commerce-panel .woocommerce .woocommerce-MyAccount-navigation .gc-account-nav__list a {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 58px;
  padding: 0 16px;
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  border: 1px solid rgba(var(--gc-border-rgb), 0.14);
  background: rgba(255, 255, 255, 0.04);
  color: rgba(var(--gc-text-rgb), 0.88);
  font-weight: 700;
  transition: transform .18s ease, border-color .18s ease, background .18s ease, box-shadow .18s ease;
}

.gc-account-nav__list li a:hover,
.gc-account-nav__list li.is-active a,
.gc-account-nav__list li.woocommerce-MyAccount-navigation-link.is-active a {
  transform: translateY(-1px);
  border-color: rgba(var(--gc-accent-rgb), 0.34);
  background: linear-gradient(135deg, rgba(var(--gc-accent-rgb), 0.14), rgba(var(--gc-accent-2-rgb), 0.12));
  color: #fff;
  box-shadow: 0 16px 34px rgba(3, 8, 21, 0.2);
}

.gc-account-nav__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: calc(var(--gc-radius-scale, 1) * 12px);
  border: 1px solid rgba(255, 255, 255, 0.08);
  background: rgba(255, 255, 255, 0.04);
  color: rgba(var(--gc-text-rgb), 0.92);
  flex: 0 0 36px;
}

.gc-account-nav__icon svg {
  width: 18px;
  height: 18px;
}

.gc-account-nav__label {
  flex: 1 1 auto;
  min-width: 0;
}

.gc-account-nav__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 28px;
  height: 28px;
  padding: 0 8px;
  border-radius: var(--gc-radius-pill);
  background: rgba(var(--gc-accent-rgb), 0.18);
  border: 1px solid rgba(var(--gc-accent-rgb), 0.28);
  color: #fff;
  font-size: .8rem;
  font-weight: 800;
}

.gc-account-section-hero {
  display: grid;
  grid-template-columns: minmax(min-content, 1.2fr) auto;
  gap: 18px;
  align-items: center;
  padding: clamp(22px, 2.4vw, 30px);
  border-radius: calc(var(--gc-radius-scale, 1) * 28px);
  border: 1px solid rgba(var(--gc-border-rgb), 0.16);
  background:
    radial-gradient(circle at top right, rgba(var(--gc-accent-rgb), 0.14), transparent 34%),
    linear-gradient(160deg, rgba(var(--gc-slate-rgb), 0.98), rgba(var(--gc-bg-rgb), 0.98));
  box-shadow: 0 20px 42px rgba(3, 8, 20, 0.28);
}

.gc-account-section-hero__title,
.gc-account-dashboard__hero h2,
.gc-models-login-hero__title,
.gc-models-panel h2,
.gc-account-feature-card h3 {
  margin: 0;
  color: #fff;
  letter-spacing: -0.04em;
}

.gc-account-section-hero__title,
.gc-models-login-hero__title {
  font-size: clamp(2rem, 3vw, 3rem);
  line-height: 1.02;
}

.gc-account-section-hero__text,
.gc-account-dashboard__hero p,
.gc-models-login-hero__text,
.gc-models-panel > p,
.gc-account-feature-card p {
  margin: 12px 0 0;
  color: rgba(var(--gc-text-rgb), 0.78);
  line-height: 1.68;
}

.gc-account-section-hero__stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  min-width: min(100%, 340px);
}

.gc-account-section-hero__stat {
  display: grid;
  gap: 4px;
  padding: 12px 14px;
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  border: 1px solid rgba(255, 255, 255, 0.08);
  background: rgba(255, 255, 255, 0.05);
}

.gc-account-section-hero__stat strong,
.gc-account-stat-card__value {
  color: #fff;
  font-size: clamp(1.5rem, 2.2vw, 2rem);
  line-height: 1;
}

.gc-account-section-hero__stat span:last-child,
.gc-account-stat-card__meta {
  color: rgba(var(--gc-text-muted-rgb), 0.66);
  font-size: .82rem;
}

.gc-account-dashboard {
  display: grid;
  gap: 22px;
}

.gc-account-dashboard__hero {
  display: grid;
  grid-template-columns: minmax(min-content, 1.2fr) auto;
  gap: 22px;
  align-items: end;
  padding: clamp(24px, 2.5vw, 32px);
  border-radius: calc(var(--gc-radius-scale, 1) * 28px);
  border: 1px solid rgba(var(--gc-border-rgb), 0.16);
  background:
    radial-gradient(circle at top right, rgba(var(--gc-accent-rgb), 0.18), transparent 32%),
    radial-gradient(circle at bottom right, rgba(var(--gc-accent-2-rgb), 0.16), transparent 28%),
    linear-gradient(160deg, rgba(var(--gc-slate-rgb), 0.98), rgba(var(--gc-bg-rgb), 0.98));
  box-shadow: 0 24px 50px rgba(3, 8, 20, 0.3);
}

.gc-account-dashboard__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  justify-content: flex-end;
}

.gc-account-stat-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.gc-account-stat-card,
.gc-account-feature-card {
  display: grid;
  gap: 10px;
  padding: 22px;
  border-radius: calc(var(--gc-radius-scale, 1) * 24px);
  border: 1px solid rgba(var(--gc-border-rgb), 0.14);
  background: linear-gradient(160deg, rgba(var(--gc-slate-rgb), 0.98), rgba(var(--gc-bg-rgb), 0.98));
  box-shadow: 0 18px 38px rgba(3, 8, 20, 0.22);
}

.gc-account-feature-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.gc-account-feature-card--accent {
  background:
    radial-gradient(circle at top right, rgba(var(--gc-accent-rgb), 0.18), transparent 34%),
    linear-gradient(160deg, rgba(var(--gc-surface-rgb), 0.98), rgba(var(--gc-bg-rgb), 0.98));
}

.gc-account-feature-card .gc-button {
  margin-top: 4px;
  width: fit-content;
}

.gc-account-inline-shell {
  display: grid;
  gap: 18px;
  padding: clamp(22px, 2.4vw, 30px);
  border-radius: calc(var(--gc-radius-scale, 1) * 28px);
  border: 1px solid rgba(var(--gc-border-rgb), 0.16);
  background:
    radial-gradient(circle at top right, rgba(var(--gc-accent-rgb), 0.12), transparent 34%),
    linear-gradient(160deg, rgba(var(--gc-slate-rgb), 0.98), rgba(var(--gc-bg-rgb), 0.98));
  box-shadow: 0 20px 42px rgba(3, 8, 20, 0.24);
}

.gc-account-inline-shell[hidden] {
  display: none !important;
}

.gc-account-inline-shell__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.gc-account-inline-shell__eyebrow {
  display: inline-block;
  margin-bottom: 8px;
  color: var(--gc-accent);
  font-size: .74rem;
  font-weight: 800;
  letter-spacing: .18em;
  text-transform: uppercase;
}

.gc-account-inline-shell__title {
  margin: 0;
  color: #fff;
  font-size: clamp(1.45rem, 2vw, 2rem);
  line-height: 1.08;
  letter-spacing: -0.04em;
}

.gc-account-inline-shell__text {
  margin: 8px 0 0;
  color: rgba(var(--gc-text-rgb), 0.72);
}

.gc-account-inline-shell__status {
  padding: 14px 16px;
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  border: 1px solid rgba(var(--gc-border-rgb), 0.14);
  background: rgba(255, 255, 255, 0.04);
  color: rgba(var(--gc-text-rgb), 0.82);
}

.gc-account-inline-shell__status--error {
  border-color: rgba(239, 68, 68, 0.24);
  background: linear-gradient(180deg, rgba(58, 16, 16, 0.92), rgba(20, 8, 16, 0.98));
  color: #ffd5d5;
}

.gc-account-inline-shell__body {
  display: grid;
  gap: 18px;
}

.gc-account-inline-shell__body > .woocommerce-MyAccount-content {
  width: 100%;
}

.gc-account-inline-shell__body > .woocommerce-MyAccount-content > *:first-child {
  margin-top: 0;
}

.gc-account-inline-shell__body .woocommerce-MyAccount-content.gc-account-content--dashboard {
  padding: 0;
  background: transparent;
  border: 0;
  box-shadow: none;
}

.gc-account-inline-shell__body .gc-account-section-hero {
  margin-bottom: 18px;
}

.gc-account-inline-shell.is-loading {
  opacity: .92;
}

.gc-account-library {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 20px;
  margin-top: 18px;
}

.gc-library-card {
  display: grid;
  gap: 14px;
  padding: 20px;
  border-radius: calc(var(--gc-radius-scale, 1) * 24px);
  border: 1px solid rgba(var(--gc-border-rgb), 0.14);
  background:
    radial-gradient(circle at top right, rgba(var(--gc-accent-rgb), 0.12), transparent 32%),
    linear-gradient(160deg, rgba(var(--gc-slate-rgb), 0.98), rgba(var(--gc-bg-rgb), 0.98));
  box-shadow: 0 18px 38px rgba(3, 8, 20, 0.22);
}

.gc-library-card__media {
  position: relative;
  overflow: hidden;
  aspect-ratio: 16 / 9;
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  border: 1px solid rgba(var(--gc-border-rgb), 0.16);
  background: rgba(var(--gc-surface-rgb), 0.92);
}

.gc-library-card__media img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.gc-library-card__body {
  display: grid;
  gap: 12px;
}

.gc-library-card__title {
  margin: 0;
  color: #fff;
  font-size: 1.08rem;
  line-height: 1.28;
}

.gc-library-card__meta {
  margin: 0;
  color: rgba(var(--gc-text-rgb), 0.7);
  font-size: 0.92rem;
  line-height: 1.5;
}

.gc-library-card__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.gc-library-card__actions .button,
.gc-library-card__actions .gc-button {
  flex: 1 1 140px;
}

#gc-library-lightbox,
.gc-library-lightbox {
  position: fixed !important;
  inset: 0 !important;
  z-index: 99999 !important;
  display: none;
  align-items: center !important;
  justify-content: center !important;
  padding: clamp(18px, 4vw, 36px) !important;
  background: rgba(2, 6, 15, 0.82) !important;
  backdrop-filter: blur(10px);
}

#gc-library-lightbox[hidden],
.gc-library-lightbox[hidden] {
  display: none !important;
}

#gc-library-lightbox.is-open,
.gc-library-lightbox.is-open,
#gc-library-lightbox[style*="display: flex"] {
  display: flex !important;
}

#gc-library-lightbox > div,
.gc-library-lightbox__dialog {
  position: relative !important;
  width: min(100%, 1120px) !important;
  padding: 18px !important;
  border-radius: calc(var(--gc-radius-scale, 1) * 30px) !important;
  border: 1px solid rgba(var(--gc-accent-rgb), 0.22) !important;
  background:
    radial-gradient(circle at top right, rgba(var(--gc-accent-rgb), 0.16), transparent 32%),
    radial-gradient(circle at bottom left, rgba(var(--gc-accent-2-rgb), 0.16), transparent 28%),
    linear-gradient(160deg, rgba(var(--gc-surface-rgb), 0.98), rgba(var(--gc-surface-rgb), 0.98)) !important;
  box-shadow: 0 34px 72px rgba(0, 0, 0, 0.48) !important;
  overflow: visible !important;
}

#gc-library-lightbox-close,
.gc-library-lightbox__close {
  position: absolute !important;
  top: -18px !important;
  right: -18px !important;
  width: 52px !important;
  height: 52px !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: var(--gc-radius-pill) !important;
  border: 1px solid rgba(var(--gc-accent-rgb), 0.38) !important;
  background: linear-gradient(135deg, var(--gc-accent), #56ead5) !important;
  color: var(--gc-deep) !important;
  font-size: 1.55rem !important;
  line-height: 1 !important;
  cursor: pointer !important;
  z-index: 3 !important;
  box-shadow: 0 18px 32px rgba(0, 0, 0, 0.28) !important;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease !important;
}

#gc-library-lightbox-close:hover,
.gc-library-lightbox__close:hover {
  transform: translateY(-2px) scale(1.02);
  border-color: rgba(var(--gc-accent-rgb), 0.68) !important;
  box-shadow: 0 24px 42px rgba(0, 0, 0, 0.34) !important;
}

#gc-library-lightbox-video,
.gc-library-lightbox__video {
  width: 100% !important;
  max-height: calc(100vh - 132px) !important;
  display: block !important;
  border-radius: calc(var(--gc-radius-scale, 1) * 22px) !important;
  border: 1px solid rgba(var(--gc-border-rgb), 0.18) !important;
  background: #000 !important;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.03), 0 24px 48px rgba(0, 0, 0, 0.32) !important;
}

.gc-commerce-panel .woocommerce-account .woocommerce table.shop_table,
.gc-commerce-panel .woocommerce-account .woocommerce table.woocommerce-table,
.gc-commerce-panel .woocommerce-account .woocommerce .shop_table {
  border-radius: calc(var(--gc-radius-scale, 1) * 24px);
  background: linear-gradient(180deg, rgba(var(--gc-surface-rgb), 0.96), rgba(var(--gc-surface-2-rgb), 0.98));
}

.gc-commerce-panel .woocommerce-account .woocommerce table.shop_table th,
.gc-commerce-panel .woocommerce-account .woocommerce table.shop_table td,
.gc-commerce-panel .woocommerce-account .woocommerce table.woocommerce-table th,
.gc-commerce-panel .woocommerce-account .woocommerce table.woocommerce-table td {
  padding: 18px 20px;
}

.gc-commerce-panel .woocommerce-account .woocommerce .woocommerce-orders-table__cell-order-actions .button,
.gc-commerce-panel .woocommerce-account .woocommerce .download-file .button,
.gc-commerce-panel .woocommerce-account .woocommerce .woocommerce-Address .edit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 0 16px;
  border-radius: var(--gc-radius-pill);
  border: 1px solid rgba(255, 255, 255, 0.1);
  background: rgba(255, 255, 255, 0.06);
  color: #fff;
  box-shadow: none;
}

.gc-commerce-panel .woocommerce-account .woocommerce .woocommerce-Address .edit:hover,
.gc-commerce-panel .woocommerce-account .woocommerce .woocommerce-orders-table__cell-order-actions .button:hover,
.gc-commerce-panel .woocommerce-account .woocommerce .download-file .button:hover {
  color: #fff;
  border-color: rgba(var(--gc-accent-rgb), 0.34);
  background: rgba(var(--gc-accent-rgb), 0.14);
}

.gc-commerce-panel .woocommerce-account .woocommerce .woocommerce-Addresses {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.gc-commerce-panel .woocommerce-account .woocommerce .woocommerce-Address,
.gc-commerce-panel .woocommerce-account .woocommerce .woocommerce-address-fields,
.gc-commerce-panel .woocommerce-account .woocommerce form.woocommerce-EditAccountForm {
  border-radius: calc(var(--gc-radius-scale, 1) * 24px);
  border: 1px solid rgba(var(--gc-border-rgb), 0.14);
  background: linear-gradient(180deg, rgba(var(--gc-surface-rgb), 0.96), rgba(var(--gc-surface-2-rgb), 0.98));
  box-shadow: 0 18px 38px rgba(3, 8, 20, 0.22);
}

.gc-commerce-panel .woocommerce-account .woocommerce .woocommerce-Address {
  padding: 22px;
}

.gc-commerce-panel .woocommerce-account .woocommerce .woocommerce-address-fields,
.gc-commerce-panel .woocommerce-account .woocommerce form.woocommerce-EditAccountForm {
  padding: 26px;
}

.gc-commerce-panel .woocommerce-account .woocommerce .woocommerce-Address address,
.gc-commerce-panel .woocommerce-account .woocommerce .woocommerce-table--customer-details address {
  color: rgba(var(--gc-text-rgb), 0.82);
  font-style: normal;
  line-height: 1.7;
}

.gc-commerce-panel .woocommerce-account .woocommerce .woocommerce-message,
.gc-commerce-panel .woocommerce-account .woocommerce .woocommerce-info,
.gc-commerce-panel .woocommerce-account .woocommerce .woocommerce-error {
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
}

.gc-commerce-shell--account-login .gc-commerce-panel .woocommerce .u-columns {
  align-items: stretch;
}

.gc-commerce-shell--account-login .gc-commerce-panel .woocommerce .u-column1,
.gc-commerce-shell--account-login .gc-commerce-panel .woocommerce .u-column2 {
  display: grid;
}

.gc-commerce-shell--account-login .gc-commerce-panel .woocommerce form.login,
.gc-commerce-shell--account-login .gc-commerce-panel .woocommerce form.register {
  position: relative;
  min-height: 100%;
  border-radius: calc(var(--gc-radius-scale, 1) * 26px);
  border: 1px solid rgba(var(--gc-border-rgb), 0.16);
  background:
    radial-gradient(circle at top right, rgba(var(--gc-accent-rgb), 0.12), transparent 30%),
    linear-gradient(160deg, rgba(var(--gc-slate-rgb), 0.98), rgba(var(--gc-bg-rgb), 0.98));
  box-shadow: 0 24px 50px rgba(3, 8, 20, 0.28);
}

.gc-models-login-shell {
  padding: clamp(24px, 2.6vw, 40px) clamp(16px, 2vw, 24px) clamp(12px, 1.6vw, 20px);
  background:
    radial-gradient(circle at 20% 0%, rgba(var(--gc-accent-rgb), 0.12), transparent 40%),
    radial-gradient(circle at 80% 0%, rgba(var(--gc-accent-2-rgb), 0.14), transparent 42%),
    linear-gradient(180deg, var(--gc-bg) 0%, var(--gc-bg) 100%);
}

.gc-models-login-shell__inner {
  display: grid;
  gap: 24px;
}

.gc-models-login-hero {
  padding: clamp(28px, 3vw, 38px);
  border-radius: calc(var(--gc-radius-scale, 1) * 32px);
  border: 1px solid rgba(var(--gc-border-rgb), 0.16);
  background:
    radial-gradient(circle at top right, rgba(var(--gc-accent-rgb), 0.2), transparent 34%),
    radial-gradient(circle at bottom right, rgba(var(--gc-accent-2-rgb), 0.18), transparent 28%),
    linear-gradient(160deg, rgba(var(--gc-slate-rgb), 0.98), rgba(var(--gc-bg-rgb), 0.98));
  box-shadow: 0 24px 50px rgba(3, 8, 20, 0.3);
}

.gc-models-login-grid {
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
  gap: 24px;
  align-items: start;
}

.gc-models-panel {
  position: relative;
  display: grid;
  gap: 18px;
  padding: clamp(22px, 2.4vw, 30px);
  border-radius: calc(var(--gc-radius-scale, 1) * 30px);
  border: 1px solid rgba(var(--gc-border-rgb), 0.16);
  background: linear-gradient(160deg, rgba(var(--gc-slate-rgb), 0.98), rgba(var(--gc-bg-rgb), 0.98));
  box-shadow: 0 20px 42px rgba(3, 8, 20, 0.24);
}

.gc-models-panel--onboarding {
  background:
    radial-gradient(circle at top right, rgba(var(--gc-accent-rgb), 0.14), transparent 36%),
    linear-gradient(160deg, rgba(var(--gc-surface-rgb), 0.98), rgba(var(--gc-bg-rgb), 0.98));
}

.gc-models-panel__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.gc-models-user-chip {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 16px 18px;
  border-radius: calc(var(--gc-radius-scale, 1) * 22px);
  border: 1px solid rgba(255, 255, 255, 0.08);
  background: rgba(255, 255, 255, 0.05);
}

.gc-models-user-chip__avatar,
.gc-models-user-chip__avatar img {
  display: inline-flex;
  width: 64px;
  height: 64px;
  border-radius: calc(var(--gc-radius-scale, 1) * 20px);
  overflow: hidden;
}

.gc-models-user-chip__avatar img {
  object-fit: cover;
}

.gc-models-user-chip__body {
  display: grid;
  gap: 4px;
}

.gc-models-user-chip__body strong {
  color: #fff;
}

.gc-models-user-chip__body span,
.gc-models-panel__hint,
.gc-models-login-links a,
.gc-models-login-note {
  color: rgba(var(--gc-text-muted-rgb), 0.72);
}

.gc-models-login-form,
.gc-models-panel__application .gc-creator-application-form {
  display: grid;
  gap: 16px;
}

.gc-models-login-form__field,
.gc-models-panel__application .gc-creator-application-form p {
  display: grid;
  gap: 8px;
  margin: 0;
}

.gc-models-login-form label,
.gc-models-panel__application label {
  color: rgba(var(--gc-text-rgb), 0.92);
  font-weight: 700;
}

.gc-models-login-form input,
.gc-models-panel__application input,
.gc-models-panel__application select,
.gc-models-panel__application textarea {
  min-height: 52px;
  width: 100%;
  padding: 0 16px;
  border-radius: calc(var(--gc-radius-scale, 1) * 16px);
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.05);
  color: #fff;
  box-shadow: none;
}

.gc-models-panel__application textarea {
  min-height: 148px;
  padding: 14px 16px;
}

.gc-models-login-form input:focus,
.gc-models-panel__application input:focus,
.gc-models-panel__application select:focus,
.gc-models-panel__application textarea:focus {
  outline: none;
  border-color: rgba(var(--gc-accent-rgb), 0.6);
  box-shadow: 0 0 0 4px rgba(var(--gc-accent-rgb), 0.12);
}

.gc-models-login-form button,
.gc-models-panel__application button,
.gc-models-panel__application input[type="submit"] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 46px;
  padding: 0 18px;
  border-radius: calc(var(--gc-radius-scale, 1) * 14px);
  border: 1px solid rgba(var(--gc-accent-rgb), 0.34);
  background: linear-gradient(135deg, var(--gc-accent), var(--gc-accent-strong));
  color: var(--gc-deep);
  font-weight: 800;
  letter-spacing: 0.01em;
  box-shadow: 0 14px 28px rgba(var(--gc-accent-rgb), 0.18);
  cursor: pointer;
}

.gc-models-login-form button:hover,
.gc-models-panel__application button:hover,
.gc-models-panel__application input[type="submit"]:hover {
  color: var(--gc-deep);
  transform: translateY(-1px);
  box-shadow: 0 18px 36px rgba(var(--gc-accent-rgb), 0.24);
}

.gc-models-login-form__remember {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: rgba(var(--gc-text-rgb), 0.78);
  font-size: .95rem;
}

.gc-models-login-form__remember input {
  width: 18px;
  min-height: 18px;
  height: 18px;
  padding: 0;
}

.gc-models-login-links {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 18px;
}

.gc-models-login-note,
.gc-models-login-feedback,
.gc-models-panel__application .gc-form-notice {
  display: grid;
  gap: 8px;
  padding: 16px 18px;
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  border: 1px solid rgba(var(--gc-border-rgb), 0.14);
  background: rgba(255, 255, 255, 0.04);
}

.gc-models-login-feedback--error {
  border-color: rgba(239, 68, 68, 0.24);
  background: linear-gradient(180deg, rgba(60, 16, 16, 0.8), rgba(23, 10, 18, 0.96));
}

.gc-models-login-feedback strong,
.gc-models-panel__application .gc-form-notice__title {
  color: #fff;
}

.gc-models-panel__application .gc-form-notice__meta {
  color: rgba(var(--gc-text-muted-rgb), 0.62);
  font-size: .82rem;
}

.gc-models-steps {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.gc-models-step-card {
  display: grid;
  gap: 4px;
  padding: 16px 18px;
  border-radius: calc(var(--gc-radius-scale, 1) * 20px);
  border: 1px solid rgba(var(--gc-border-rgb), 0.14);
  background: rgba(255, 255, 255, 0.04);
}

.gc-models-step-card strong {
  color: rgba(var(--gc-accent-rgb), .92);
  font-size: .82rem;
  letter-spacing: .16em;
}

.gc-models-step-card span {
  color: #fff;
  font-weight: 700;
}

.gc-models-step-card small {
  color: rgba(var(--gc-text-muted-rgb), 0.66);
  line-height: 1.55;
}

.gc-models-panel__application {
  display: grid;
  gap: 16px;
}

.gc-models-panel__application .gc-creator-application-form {
  max-width: none !important;
}

.gc-models-panel__application small {
  color: rgba(var(--gc-text-muted-rgb), 0.62);
}

@media (max-width: 1180px) {
  .gc-account-stat-grid,
  .gc-account-feature-grid {
    grid-template-columns: 1fr;
  }

  .gc-models-login-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 980px) {
  .gc-commerce-panel .woocommerce-account .woocommerce {
    grid-template-columns: 1fr;
  }

  .gc-commerce-panel .woocommerce-account .woocommerce .woocommerce-MyAccount-navigation {
    position: static;
  }

  .gc-account-section-hero,
  .gc-account-dashboard__hero {
    grid-template-columns: 1fr;
  }

  .gc-account-nav__actions,
  .gc-account-nav__meta,
  .gc-account-section-hero__stats {
    grid-template-columns: 1fr;
  }

  .gc-commerce-panel .woocommerce-account .woocommerce .woocommerce-Addresses {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  .gc-models-steps {
    grid-template-columns: 1fr;
  }

  .gc-models-panel__actions,
  .gc-account-dashboard__actions,
  .gc-account-nav__actions {
    flex-direction: column;
  }

  .gc-models-panel__actions .gc-button,
  .gc-account-dashboard__actions .gc-button,
  .gc-account-feature-card .gc-button,
  .gc-account-nav__actions .gc-button {
    width: 100%;
  }

  .gc-account-nav__identity,
  .gc-models-user-chip {
    align-items: flex-start;
  }

  .gc-account-nav__list li a,
  .gc-commerce-panel .woocommerce .woocommerce-MyAccount-navigation .gc-account-nav__list a {
    min-height: auto;
    padding: 14px 16px;
  }
}


/* v1.12.2 models-login messaging + creator onboarding shell + account dashboard nav cleanup */
.gc-commerce-panel .woocommerce-account .woocommerce > .woocommerce-MyAccount-content:first-child:last-child,
.gc-commerce-panel .woocommerce-account .woocommerce > .woocommerce-MyAccount-content.gc-account-content--dashboard {
  grid-column: 1 / -1;
  width: 100%;
}

.gc-commerce-panel .woocommerce-account .woocommerce > .woocommerce-MyAccount-content.gc-account-content--dashboard {
  max-width: none;
}

.gc-creator-onboarding-shell {
  padding: clamp(24px, 2.6vw, 40px) 0 70px;
}

.gc-creator-onboarding-shell__inner {
  display: grid;
  gap: 24px;
}

.gc-creator-onboarding-hero {
  padding: clamp(28px, 3vw, 38px);
  border-radius: calc(var(--gc-radius-scale, 1) * 32px);
  border: 1px solid rgba(var(--gc-border-rgb), 0.16);
  background:
    radial-gradient(circle at top right, rgba(var(--gc-accent-rgb), 0.18), transparent 34%),
    radial-gradient(circle at bottom right, rgba(var(--gc-accent-2-rgb), 0.18), transparent 28%),
    linear-gradient(160deg, rgba(var(--gc-slate-rgb), 0.98), rgba(var(--gc-bg-rgb), 0.98));
  box-shadow: 0 24px 50px rgba(3, 8, 20, 0.3);
}

.gc-creator-onboarding-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(280px, 0.72fr);
  gap: 24px;
  align-items: start;
}

.gc-creator-onboarding-panel,
.gc-creator-onboarding-aside {
  min-height: 0;
}

.gc-creator-onboarding-aside {
  position: sticky;
  top: 104px;
  align-self: start;
  align-content: start;
  grid-auto-rows: max-content;
  height: auto;
}

.gc-creator-onboarding-content,
.gc-creator-onboarding-panel .gc-onboarding-shell {
  display: grid;
  gap: 20px;
}

.gc-creator-onboarding-panel .gc-onboarding-shell > section {
  display: grid;
  gap: 16px;
  padding: 22px;
  border-radius: calc(var(--gc-radius-scale, 1) * 24px);
  border: 1px solid rgba(var(--gc-border-rgb), 0.14);
  background: linear-gradient(160deg, rgba(var(--gc-surface-rgb), 0.96), rgba(var(--gc-surface-2-rgb), 0.98));
  box-shadow: 0 18px 38px rgba(3, 8, 20, 0.22);
}

.gc-creator-onboarding-panel .gc-onboarding-shell > section h2,
.gc-creator-onboarding-panel .gc-onboarding-shell > section h3 {
  margin: 0;
  color: #fff;
  letter-spacing: -0.03em;
}

.gc-creator-onboarding-panel .gc-onboarding-shell > section p,
.gc-creator-onboarding-panel .gc-onboarding-shell > section li,
.gc-creator-onboarding-panel .gc-onboarding-shell > section td,
.gc-creator-onboarding-panel .gc-onboarding-shell > section th,
.gc-creator-onboarding-panel .gc-onboarding-shell > section small,
.gc-creator-onboarding-panel .gc-onboarding-shell > section label,
.gc-creator-onboarding-panel .gc-onboarding-shell > section span {
  color: rgba(var(--gc-text-rgb), 0.82);
}

.gc-creator-onboarding-panel .gc-onboarding-shell #gc-onboarding-notices,
.gc-creator-onboarding-panel .gc-onboarding-shell > .gc-form-notice,
.gc-creator-onboarding-panel .gc-onboarding-shell > p > .gc-form-notice {
  display: grid;
  gap: 12px;
}

.gc-creator-onboarding-panel .gc-form-notice {
  margin: 0 0 4px !important;
  padding: 16px 18px !important;
  border-radius: calc(var(--gc-radius-scale, 1) * 18px) !important;
  border: 1px solid rgba(var(--gc-border-rgb), 0.14) !important;
  background: rgba(255, 255, 255, 0.04) !important;
  color: rgba(var(--gc-text-rgb), 0.88) !important;
  box-shadow: none !important;
}

.gc-creator-onboarding-panel .gc-form-notice--success {
  border-color: rgba(61, 214, 140, 0.28) !important;
  background: linear-gradient(180deg, rgba(11, 56, 39, 0.9), rgba(8, 21, 20, 0.98)) !important;
  color: #d8ffe9 !important;
}

.gc-creator-onboarding-panel .gc-form-notice--error {
  border-color: rgba(239, 68, 68, 0.28) !important;
  background: linear-gradient(180deg, rgba(58, 16, 16, 0.92), rgba(20, 8, 16, 0.98)) !important;
  color: #ffd5d5 !important;
}

.gc-creator-onboarding-panel .gc-form-notice--info {
  border-color: rgba(var(--gc-accent-rgb), 0.24) !important;
  background: linear-gradient(180deg, rgba(var(--gc-surface-rgb), 0.92), rgba(var(--gc-surface-rgb), 0.98)) !important;
  color: #d7fffb !important;
}

.gc-creator-onboarding-panel .gc-form-notice--warning,
.gc-creator-onboarding-panel .gc-form-notice--changes {
  border-color: rgba(251, 191, 36, 0.24) !important;
  background: linear-gradient(180deg, rgba(54, 34, 10, 0.92), rgba(20, 12, 8, 0.98)) !important;
  color: #ffe8b3 !important;
}

.gc-creator-onboarding-panel .gc-form-notice a {
  color: currentColor !important;
  text-decoration: underline;
}

.gc-creator-onboarding-panel .gc-form-notice__title,
.gc-creator-onboarding-panel .gc-form-notice strong {
  color: #fff !important;
}

.gc-creator-onboarding-panel .gc-form-notice__meta {
  color: rgba(var(--gc-text-muted-rgb), 0.62) !important;
}

.gc-creator-onboarding-panel .gc-onboarding-shell > .gc-form-notice,
.gc-creator-onboarding-panel .gc-onboarding-shell > p {
  margin: 0;
}

.gc-creator-onboarding-panel .gc-onboarding-shell > p > .gc-form-notice {
  margin: 0;
}

.gc-creator-onboarding-panel .gc-onboarding-shell form {
  display: grid;
  gap: 16px;
  max-width: none !important;
  margin: 0 !important;
}

.gc-creator-onboarding-panel .gc-onboarding-shell form > p {
  display: grid;
  gap: 8px;
  margin: 0 !important;
}

.gc-creator-onboarding-panel .gc-onboarding-shell input[type="text"],
.gc-creator-onboarding-panel .gc-onboarding-shell input[type="email"],
.gc-creator-onboarding-panel .gc-onboarding-shell input[type="date"],
.gc-creator-onboarding-panel .gc-onboarding-shell input[type="password"],
.gc-creator-onboarding-panel .gc-onboarding-shell input[type="search"],
.gc-creator-onboarding-panel .gc-onboarding-shell select,
.gc-creator-onboarding-panel .gc-onboarding-shell textarea {
  min-height: 52px;
  width: 100%;
  padding: 0 16px;
  border-radius: calc(var(--gc-radius-scale, 1) * 16px);
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.05);
  color: #fff;
  box-shadow: none;
}

.gc-creator-onboarding-panel .gc-onboarding-shell textarea {
  min-height: 140px;
  padding: 14px 16px;
}

.gc-creator-onboarding-panel .gc-onboarding-shell input[type="file"] {
  width: 100%;
  padding: 12px 14px;
  border-radius: calc(var(--gc-radius-scale, 1) * 16px);
  border: 1px dashed rgba(var(--gc-border-rgb), 0.18);
  background: rgba(255, 255, 255, 0.03);
  color: rgba(var(--gc-text-rgb), 0.78);
}

.gc-creator-onboarding-panel .gc-onboarding-shell input[type="file"]::file-selector-button,
.gc-creator-onboarding-panel .gc-onboarding-shell input[type="file"]::-webkit-file-upload-button {
  margin-right: 12px;
  padding: 10px 14px;
  border-radius: calc(var(--gc-radius-scale, 1) * 12px);
  border: 1px solid rgba(var(--gc-accent-rgb), 0.34);
  background: linear-gradient(135deg, rgba(var(--gc-accent-rgb), 0.16), rgba(var(--gc-accent-2-rgb), 0.16));
  color: #e9ffff;
  font-weight: 800;
  cursor: pointer;
}

.gc-creator-onboarding-panel .gc-onboarding-shell input[type="file"]::file-selector-button:hover,
.gc-creator-onboarding-panel .gc-onboarding-shell input[type="file"]::-webkit-file-upload-button:hover {
  filter: brightness(1.08);
}

.gc-creator-onboarding-panel .gc-onboarding-shell input[type="checkbox"] {
  width: 18px;
  height: 18px;
  min-height: 18px;
  padding: 0;
  accent-color: var(--gc-accent);
}

.gc-creator-onboarding-panel .gc-onboarding-shell input[type="text"]:focus,
.gc-creator-onboarding-panel .gc-onboarding-shell input[type="email"]:focus,
.gc-creator-onboarding-panel .gc-onboarding-shell input[type="date"]:focus,
.gc-creator-onboarding-panel .gc-onboarding-shell input[type="password"]:focus,
.gc-creator-onboarding-panel .gc-onboarding-shell input[type="search"]:focus,
.gc-creator-onboarding-panel .gc-onboarding-shell select:focus,
.gc-creator-onboarding-panel .gc-onboarding-shell textarea:focus {
  outline: none;
  border-color: rgba(var(--gc-accent-rgb), 0.6);
  box-shadow: 0 0 0 4px rgba(var(--gc-accent-rgb), 0.12);
}

.gc-creator-onboarding-panel .gc-onboarding-shell button,
.gc-creator-onboarding-panel .gc-onboarding-shell input[type="submit"],
.gc-creator-onboarding-panel .gc-onboarding-shell .button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: fit-content;
  min-height: 46px;
  padding: 0 18px;
  border-radius: calc(var(--gc-radius-scale, 1) * 14px);
  border: 1px solid rgba(var(--gc-accent-rgb), 0.34);
  background: linear-gradient(135deg, var(--gc-accent), var(--gc-accent-strong));
  color: var(--gc-deep) !important;
  font-weight: 800;
  letter-spacing: 0.01em;
  box-shadow: 0 14px 28px rgba(var(--gc-accent-rgb), 0.18);
  cursor: pointer;
}

.gc-creator-onboarding-panel .gc-onboarding-shell button:hover,
.gc-creator-onboarding-panel .gc-onboarding-shell input[type="submit"]:hover,
.gc-creator-onboarding-panel .gc-onboarding-shell .button:hover {
  color: var(--gc-deep) !important;
  transform: translateY(-1px);
  box-shadow: 0 18px 36px rgba(var(--gc-accent-rgb), 0.24);
}

.gc-creator-onboarding-panel .gc-onboarding-shell button[disabled],
.gc-creator-onboarding-panel .gc-onboarding-shell input[type="submit"][disabled] {
  cursor: not-allowed;
  opacity: .5;
  box-shadow: none;
}

.gc-creator-onboarding-panel .gc-onboarding-shell table.shop_table,
.gc-creator-onboarding-panel .gc-onboarding-shell table.shop_table_responsive {
  width: 100%;
  border-radius: calc(var(--gc-radius-scale, 1) * 20px);
  overflow: hidden;
  background: rgba(255, 255, 255, 0.03);
}

.gc-creator-onboarding-panel .gc-onboarding-shell table.shop_table th,
.gc-creator-onboarding-panel .gc-onboarding-shell table.shop_table td,
.gc-creator-onboarding-panel .gc-onboarding-shell table.shop_table_responsive th,
.gc-creator-onboarding-panel .gc-onboarding-shell table.shop_table_responsive td {
  padding: 14px 16px;
  border-color: rgba(var(--gc-border-rgb), 0.1);
}

.gc-creator-onboarding-panel .gc-onboarding-shell ul {
  margin: 0;
  padding-left: 20px;
}

.gc-creator-onboarding-panel .gc-onboarding-shell a {
  color: var(--gc-accent);
}

.gc-creator-onboarding-panel .gc-onboarding-shell [aria-busy="true"] {
  opacity: 0.78;
}

.gc-models-steps--stacked {
  grid-template-columns: 1fr;
}

@media (max-width: 1180px) {
  .gc-creator-onboarding-grid {
    grid-template-columns: 1fr;
  }

  .gc-creator-onboarding-aside {
    position: static;
  }
}

@media (max-width: 760px) {
  .gc-creator-onboarding-panel .gc-onboarding-shell button,
  .gc-creator-onboarding-panel .gc-onboarding-shell input[type="submit"],
  .gc-creator-onboarding-panel .gc-onboarding-shell .button {
    width: 100%;
  }
}

/* v1.13.0 wallet ui + inline account shell simplification */
.gc-main-nav__item--wallet {
  margin-left: 2px;
}

.gc-header-wallet {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 44px;
  padding: 0 14px;
  border-radius: var(--gc-radius-pill);
  color: var(--gc-text-soft);
  background: rgba(255, 255, 255, 0.02);
  border: 1px solid rgba(255, 255, 255, 0.12);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.03);
  transition: background-color .18s ease, color .18s ease, border-color .18s ease, transform .18s ease, box-shadow .18s ease;
}

.gc-header-wallet:hover,
.gc-header-wallet:focus-visible {
  color: var(--gc-text);
  background: linear-gradient(135deg, rgba(var(--gc-accent-2-rgb), 0.14), rgba(var(--gc-accent-rgb), 0.12));
  border-color: rgba(var(--gc-accent-2-rgb), 0.32);
  transform: translateY(-1px);
  box-shadow: 0 12px 26px rgba(8, 14, 28, 0.22);
}

.gc-header-wallet__icon {
  width: 18px;
  height: 18px;
  display: inline-flex;
}

.gc-header-wallet__icon svg {
  width: 100%;
  height: 100%;
  display: block;
}

.gc-header-wallet__label {
  font-size: .86rem;
  font-weight: 700;
}

.gc-header-wallet__balance {
  display: inline-flex;
  align-items: center;
  padding: 5px 10px;
  border-radius: var(--gc-radius-pill);
  background: rgba(255, 255, 255, 0.08);
  color: #fff;
  font-size: .82rem;
  font-weight: 800;
  white-space: nowrap;
}

.gc-account-stat-grid {
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.gc-account-stat-card__value--wallet,
[data-gc-wallet-dashboard-balance],
[data-gc-wallet-nav-balance] {
  font-size: clamp(1.2rem, 1.8vw, 1.5rem);
}

.gc-account-feature-card--wallet {
  background:
    radial-gradient(circle at top right, rgba(var(--gc-accent-2-rgb), 0.18), transparent 34%),
    linear-gradient(160deg, rgba(var(--gc-surface-rgb), 0.98), rgba(var(--gc-bg-rgb), 0.98));
}

.gc-account-inline-shell__header {
  align-items: center;
  padding-bottom: 4px;
  border-bottom: 1px solid rgba(var(--gc-border-rgb), 0.12);
}

.gc-account-inline-shell__title {
  font-size: clamp(1.2rem, 1.6vw, 1.55rem);
}

.gc-wallet-panel {
  display: grid;
  gap: 18px;
}

.gc-wallet-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.gc-wallet-balance-card,
.gc-wallet-mini-card,
.gc-wallet-topup,
.gc-wallet-activity-panel {
  display: grid;
  gap: 10px;
  padding: 22px;
  border-radius: calc(var(--gc-radius-scale, 1) * 24px);
  border: 1px solid rgba(var(--gc-border-rgb), 0.14);
  background: linear-gradient(160deg, rgba(var(--gc-slate-rgb), 0.98), rgba(var(--gc-bg-rgb), 0.98));
  box-shadow: 0 18px 38px rgba(3, 8, 20, 0.22);
}

.gc-wallet-balance-card {
  background:
    radial-gradient(circle at top right, rgba(var(--gc-accent-rgb), 0.16), transparent 34%),
    radial-gradient(circle at bottom left, rgba(var(--gc-accent-2-rgb), 0.16), transparent 30%),
    linear-gradient(160deg, rgba(var(--gc-slate-rgb), 0.98), rgba(var(--gc-bg-rgb), 0.98));
}

.gc-wallet-balance-card__eyebrow,
.gc-wallet-topup__eyebrow,
.gc-wallet-checkout__eyebrow,
.gc-wallet-activity-panel__eyebrow {
  color: var(--gc-accent);
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .18em;
  text-transform: uppercase;
}

.gc-wallet-balance-card__value {
  color: #fff;
  font-size: clamp(1.9rem, 3vw, 2.8rem);
  line-height: 1;
}

.gc-wallet-balance-card__text,
.gc-wallet-topup__header p,
.gc-wallet-checkout__text {
  margin: 0;
  color: rgba(var(--gc-text-rgb), 0.76);
  line-height: 1.65;
}

.gc-wallet-mini-card__label {
  color: rgba(var(--gc-text-muted-rgb), 0.72);
  font-size: .8rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.gc-wallet-mini-card strong {
  color: #fff;
  font-size: 1.12rem;
}

.gc-wallet-mini-card span:last-child {
  color: rgba(var(--gc-text-muted-rgb), 0.68);
  line-height: 1.5;
}

.gc-wallet-topup__header,
.gc-wallet-checkout__toolbar,
.gc-wallet-activity-panel__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
}

.gc-wallet-topup__header h3,
.gc-wallet-activity-panel__header h3 {
  margin: 4px 0 0;
  color: #fff;
  font-size: 1.2rem;
  line-height: 1.2;
}

.gc-wallet-topup__form {
  display: grid;
  gap: 16px;
}

.gc-wallet-topup__options {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
  gap: 12px;
}

.gc-wallet-topup__option {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 58px;
  padding: 0 16px;
  border: 1px solid rgba(var(--gc-border-rgb), 0.16);
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  background: rgba(255, 255, 255, 0.03);
  color: var(--gc-text-soft);
  font-weight: 800;
  cursor: pointer;
  transition: transform .18s ease, border-color .18s ease, background .18s ease, color .18s ease, box-shadow .18s ease;
}

.gc-wallet-topup__option:hover,
.gc-wallet-topup__option:focus-visible,
.gc-wallet-topup__option.is-active {
  transform: translateY(-1px);
  color: #fff;
  border-color: rgba(var(--gc-accent-rgb), 0.34);
  background: linear-gradient(135deg, rgba(var(--gc-accent-rgb), 0.14), rgba(var(--gc-accent-2-rgb), 0.12));
  box-shadow: 0 14px 28px rgba(var(--gc-deep-rgb), 0.2);
}

.gc-wallet-topup__custom-field {
  display: grid;
  gap: 8px;
  color: rgba(var(--gc-text-rgb), 0.86);
  font-weight: 700;
}

.gc-wallet-topup__custom-input-wrap {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 0 14px;
  min-height: 54px;
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  border: 1px solid rgba(var(--gc-border-rgb), 0.16);
  background: rgba(255, 255, 255, 0.04);
}

.gc-wallet-topup__custom-input-wrap span {
  color: rgba(var(--gc-text-rgb), 0.72);
  font-weight: 800;
}

.gc-wallet-topup__custom-input-wrap input {
  width: 100%;
  min-width: 0;
  background: transparent;
  border: 0;
  color: #fff;
  font-size: 1rem;
  font-weight: 700;
  outline: 0;
}

.gc-wallet-topup__actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px;
}

.gc-wallet-topup__hint {
  color: rgba(var(--gc-text-muted-rgb), 0.68);
  font-size: .88rem;
}

.gc-wallet-topup__status {
  padding: 14px 16px;
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  border: 1px solid rgba(var(--gc-border-rgb), 0.14);
  background: rgba(255, 255, 255, 0.04);
  color: rgba(var(--gc-text-rgb), 0.82);
}

.gc-wallet-topup__status[hidden] {
  display: none !important;
}

.gc-wallet-topup__status.is-error {
  border-color: rgba(239, 68, 68, 0.24);
  background: linear-gradient(180deg, rgba(58, 16, 16, 0.92), rgba(20, 8, 16, 0.98));
  color: #ffd5d5;
}

.gc-wallet-topup__status.is-success {
  border-color: rgba(61, 214, 140, 0.24);
  background: linear-gradient(180deg, rgba(12, 48, 35, 0.92), rgba(6, 18, 15, 0.98));
  color: #d9ffee;
}

.gc-wallet-checkout {
  display: grid;
  gap: 14px;
  padding: clamp(18px, 2.1vw, 26px);
  border-radius: calc(var(--gc-radius-scale, 1) * 26px);
  border: 1px solid rgba(var(--gc-border-rgb), 0.14);
  background: linear-gradient(180deg, rgba(var(--gc-surface-rgb), 0.92), rgba(var(--gc-bg-rgb), 0.98));
  box-shadow: var(--gc-shadow-soft);
  overflow: hidden;
}

.gc-wallet-checkout[hidden] {
  display: none !important;
}

.gc-wallet-checkout__toolbar {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  flex-wrap: wrap;
}

.gc-wallet-checkout__frame {
  width: 100%;
  min-height: 680px;
  height: 860px;
  border: 1px solid rgba(var(--gc-border-rgb), 0.16);
  border-radius: calc(var(--gc-radius-scale, 1) * 20px);
  background: var(--gc-bg);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.03);
}

.gc-wallet-checkout__fallback {
  margin: 0;
  display: flex;
  justify-content: flex-end;
}

.gc-wallet-checkout__toolbar .gc-button,
.gc-wallet-checkout__fallback .gc-button {
  min-height: 44px;
}

.gc-site-main--wallet-embed {
  padding: 0;
}

.gc-wallet-checkout-embed body,
body.gc-wallet-checkout-embed {
  /* 2026-05-05: was `background: transparent` so iframe could inherit the parent's
   * dark bg. But standalone loads (e.g. post payment-gate redirect that breaks out
   * of the iframe) showed a white browser default with light text — unreadable.
   * Use the canonical site dark bg as the safe fallback; iframe parents can still
   * override via higher-specificity rules. */
  background: linear-gradient(160deg, rgba(var(--gc-bg-rgb), 1), rgba(var(--gc-surface-rgb), 1));
}

.gc-wallet-embed-shell {
  width: 100%;
  padding: 12px;
}

.gc-wallet-embed-shell .woocommerce-notices-wrapper {
  margin-bottom: 12px;
}

.gc-order-pay {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 18px;
}

.gc-order-pay > .woocommerce-notices-wrapper,
.gc-order-pay > .gc-order-pay__coupon-shell,
.gc-order-pay > .gc-order-pay-form {
  min-width: 0;
}

.gc-order-pay--embed {
  grid-template-columns: 1fr;
}

.gc-order-pay__card {
  display: grid;
  gap: 18px;
  padding: 24px;
  border-radius: calc(var(--gc-radius-scale, 1) * 24px);
  border: 1px solid rgba(var(--gc-border-rgb), 0.14);
  background: linear-gradient(160deg, rgba(var(--gc-surface-rgb), 0.98), rgba(var(--gc-bg-rgb), 0.98));
  box-shadow: 0 18px 38px rgba(3, 8, 20, 0.22);
}

.gc-order-pay__card-header {
  display: grid;
  gap: 8px;
}

.gc-order-pay__eyebrow {
  color: var(--gc-accent);
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .18em;
  text-transform: uppercase;
}

.gc-order-pay__card-header h2 {
  margin: 0;
  color: #fff;
  font-size: clamp(1.3rem, 2vw, 1.8rem);
  line-height: 1.15;
}

.gc-order-pay__card-header p {
  margin: 0;
  color: rgba(var(--gc-text-rgb), 0.76);
  line-height: 1.65;
}

.gc-order-pay__meta-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.gc-order-pay__meta-card {
  display: grid;
  gap: 6px;
  padding: 16px 18px;
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  border: 1px solid rgba(var(--gc-border-rgb), 0.12);
  background: rgba(255, 255, 255, 0.03);
}

.gc-order-pay__meta-card span {
  color: rgba(var(--gc-text-muted-rgb), 0.7);
  font-size: .8rem;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.gc-order-pay__meta-card strong {
  color: #fff;
  font-size: 1.02rem;
  line-height: 1.4;
}

.gc-order-pay__items {
  display: grid;
  gap: 10px;
}

.gc-order-pay__item-row {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
  padding: 14px 16px;
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  border: 1px solid rgba(var(--gc-border-rgb), 0.12);
  background: rgba(255, 255, 255, 0.03);
}

.gc-order-pay__item-copy {
  display: grid;
  gap: 4px;
}

.gc-order-pay__item-copy strong,
.gc-order-pay__item-total {
  color: #fff;
}

.gc-order-pay__item-copy span {
  color: rgba(var(--gc-text-muted-rgb), 0.68);
  font-size: .88rem;
}

.gc-order-pay__payment-box {
  display: grid;
  gap: 16px;
  padding: 18px;
  border-radius: calc(var(--gc-radius-scale, 1) * 20px);
  border: 1px solid rgba(var(--gc-border-rgb), 0.12);
  background: rgba(255, 255, 255, 0.03);
}

.gc-order-pay__coupon-shell {
  display: grid;
  gap: 16px;
}

.gc-order-pay__coupon-form {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 14px;
  margin: 0;
}

.gc-order-pay__coupon-field {
  display: grid;
  gap: 6px;
  flex: 1 1 280px;
  min-width: 0;
}

.gc-order-pay__coupon-field span {
  color: rgba(var(--gc-text-muted-rgb), 0.7);
  font-size: .8rem;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.gc-order-pay__coupon-field input[type="text"] {
  width: 100%;
  min-height: 52px;
  padding: 0 16px;
  border-radius: calc(var(--gc-radius-scale, 1) * 16px);
  border: 1px solid rgba(var(--gc-border-rgb), 0.16);
  background: rgba(255, 255, 255, 0.035);
  color: #fff;
  box-shadow: none;
}

.gc-order-pay__coupon-field input[type="text"]::placeholder {
  color: rgba(var(--gc-text-muted-rgb), 0.46);
}

.gc-order-pay__coupon-field input[type="text"]:focus {
  outline: none;
  border-color: rgba(var(--gc-accent-rgb), 0.55);
  box-shadow: 0 0 0 3px rgba(var(--gc-accent-rgb), 0.16);
}

.gc-order-pay__coupon-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
}

.gc-order-pay__coupon-actions .gc-button {
  min-height: 52px;
}

.gc-order-pay__coupon-list {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.gc-order-pay__coupon-chip {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0;
  padding: 11px 14px;
  border-radius: var(--gc-radius-pill);
  border: 1px solid rgba(var(--gc-border-rgb), 0.14);
  background: rgba(255, 255, 255, 0.04);
  color: #fff;
}

.gc-order-pay__coupon-chip span {
  overflow-wrap: anywhere;
  font-weight: 800;
}

.gc-order-pay__coupon-chip-remove {
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--gc-accent);
  font: inherit;
  font-weight: 800;
  cursor: pointer;
}

.gc-order-pay__coupon-chip-remove:hover,
.gc-order-pay__coupon-chip-remove:focus-visible {
  color: #fff;
}

.gc-order-pay .wc_payment_methods {
  display: grid;
  gap: 12px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.gc-order-pay .wc_payment_methods > li {
  display: grid;
  gap: 12px;
  padding: 14px 16px;
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  border: 1px solid rgba(var(--gc-border-rgb), 0.12);
  background: rgba(255, 255, 255, 0.03);
}

.gc-order-pay .wc_payment_methods > li > label,
.gc-order-pay .payment_box,
.gc-order-pay .woocommerce-info,
.gc-order-pay .woocommerce-error,
.gc-order-pay .woocommerce-message {
  color: rgba(var(--gc-text-rgb), 0.84);
}

.gc-order-pay .payment_box {
  margin: 0;
  padding: 14px 16px;
  border-radius: calc(var(--gc-radius-scale, 1) * 16px);
  border: 1px solid rgba(var(--gc-border-rgb), 0.12);
  background: rgba(255, 255, 255, 0.04);
}

.gc-order-pay__submit-row {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 12px;
  margin: 0;
}

.gc-order-pay__submit-row .gc-button,
.gc-order-pay__submit-row .button {
  min-height: 48px;
}

.gc-fast-checkout-form--order-pay {
  padding: 0;
}

.gc-fast-checkout-form--order-pay .gc-fast-checkout-form__grid {
  align-items: start;
}

.gc-fast-checkout-form--order-pay .gc-fast-checkout-form__card {
  min-height: 100%;
}

.gc-fast-checkout-form--order-pay .wc_payment_methods {
  margin: 0;
  padding: 0;
  list-style: none;
}

.gc-fast-checkout-form--order-pay .wc_payment_methods > li {
  display: grid;
  gap: 12px;
  padding: 14px 16px;
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  border: 1px solid rgba(var(--gc-border-rgb), 0.12);
  background: rgba(255, 255, 255, 0.03);
}

.gc-fast-checkout-form--order-pay .wc_payment_methods > li + li {
  margin-top: 12px;
}

.gc-fast-checkout-form--order-pay .payment_box {
  margin: 0;
}

.gc-order-pay--embed {
  padding: 0;
}

.gc-order-pay--embed .gc-fast-checkout-form__card {
  padding: clamp(16px, 2vw, 24px);
}

.gc-order-pay--embed .gc-fast-checkout-form__grid {
  gap: 18px;
}

.gc-wallet-activity-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.gc-wallet-activity-list {
  display: grid;
  gap: 12px;
}

.gc-wallet-activity-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 14px 16px;
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  border: 1px solid rgba(var(--gc-border-rgb), 0.12);
  background: rgba(255, 255, 255, 0.03);
}

.gc-wallet-activity-item__copy {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.gc-wallet-activity-item__top {
  display: flex;
  align-items: center;
  gap: 10px;
  justify-content: space-between;
}

.gc-wallet-activity-item__top strong {
  color: #fff;
  font-size: .98rem;
}

.gc-wallet-activity-item__top span,
.gc-wallet-activity-item__context,
.gc-wallet-empty {
  color: rgba(var(--gc-text-muted-rgb), 0.7);
  font-size: .88rem;
  line-height: 1.55;
}

.gc-wallet-activity-item__amount {
  display: inline-flex;
  align-items: baseline;
  gap: 4px;
  white-space: nowrap;
  font-weight: 800;
}

.gc-wallet-activity-item__amount-sign {
  font-size: 1rem;
}

.gc-wallet-activity-item.is-credit .gc-wallet-activity-item__amount {
  color: #8ff2c2;
}

.gc-wallet-activity-item.is-debit .gc-wallet-activity-item__amount {
  color: #ffd085;
}

.gc-wallet-empty {
  margin: 0;
}


@media (max-width: 1180px) {
  .gc-order-pay {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  .gc-order-pay__meta-grid {
    grid-template-columns: 1fr;
  }

  .gc-order-pay__submit-row .gc-button,
  .gc-order-pay__submit-row .button {
    width: 100%;
  }
}

@media (max-width: 1180px) {
  .gc-wallet-hero {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 960px) {
  .gc-wallet-hero,
  .gc-wallet-activity-grid {
    grid-template-columns: 1fr;
  }

  .gc-header-wallet__label {
    display: none;
  }
}

@media (max-width: 640px) {
  .gc-wallet-topup__actions,
  .gc-wallet-topup__header,
  .gc-wallet-checkout__toolbar,
  .gc-wallet-activity-panel__header {
    align-items: stretch;
    flex-direction: column;
  }

  .gc-wallet-checkout__frame {
    min-height: 920px;
    height: 920px;
  }
}


/* v1.13.4 wallet order-pay coupon support + direct layout fix */
.gc-order-pay-form .form-row {
  margin-bottom: 0;
}

.gc-order-pay-form #payment,
.gc-order-pay-form .wc_payment_methods,
.gc-order-pay-form .payment_box,
.gc-order-pay-form .woocommerce-info,
.gc-order-pay-form .woocommerce-error,
.gc-order-pay-form .woocommerce-message {
  width: 100%;
  min-width: 0;
}

.gc-order-pay-form .woocommerce-terms-and-conditions-wrapper,
.gc-fast-checkout-form .woocommerce-terms-and-conditions-wrapper {
  display: grid;
  gap: 12px;
  width: 100%;
  min-width: 0;
  margin-top: 6px;
}

.gc-order-pay-form .woocommerce-terms-and-conditions,
.gc-fast-checkout-form .woocommerce-terms-and-conditions {
  max-height: 220px;
  overflow: auto;
  padding: 14px 16px;
  border-radius: calc(var(--gc-radius-scale, 1) * 16px);
  border: 1px solid rgba(var(--gc-border-rgb), 0.12);
  background: rgba(255, 255, 255, 0.03);
  color: rgba(var(--gc-text-rgb), 0.78);
}

.gc-order-pay-form .woocommerce-terms-and-conditions-wrapper .woocommerce-form__label-for-checkbox,
.gc-fast-checkout-form .woocommerce-terms-and-conditions-wrapper .woocommerce-form__label-for-checkbox {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  color: #fff;
  line-height: 1.55;
}

.gc-order-pay-form .woocommerce-terms-and-conditions-wrapper .required,
.gc-fast-checkout-form .woocommerce-terms-and-conditions-wrapper .required {
  color: #fda4af;
}

.gc-order-pay-form .woocommerce-terms-and-conditions-wrapper a,
.gc-fast-checkout-form .woocommerce-terms-and-conditions-wrapper a,
.gc-commerce-panel .woocommerce-form-coupon-toggle a {
  color: var(--gc-accent);
}

.gc-order-pay-form .woocommerce-terms-and-conditions-wrapper input[type="checkbox"],
.gc-fast-checkout-form .woocommerce-terms-and-conditions-wrapper input[type="checkbox"] {
  margin-top: 4px;
  flex: 0 0 auto;
}

.gc-commerce-panel .woocommerce-form-coupon-toggle {
  margin: 0 0 18px;
}

.gc-commerce-panel .woocommerce-form-coupon-toggle .woocommerce-info {
  padding: 16px 18px;
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  border: 1px solid rgba(var(--gc-border-rgb), 0.12);
  background: rgba(255, 255, 255, 0.03);
}

.gc-order-pay__meta-card strong,
.gc-order-pay__item-copy strong,
.gc-order-pay__item-total {
  overflow-wrap: anywhere;
  word-break: break-word;
}

@media (max-width: 980px) {
  .gc-commerce-panel .gc-fast-checkout-form__grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 780px) {
  .gc-order-pay__coupon-form {
    align-items: stretch;
  }

  .gc-order-pay__coupon-actions {
    width: 100%;
  }

  .gc-order-pay__coupon-actions .gc-button {
    width: 100%;
  }

  .gc-order-pay__coupon-chip {
    width: 100%;
    justify-content: space-between;
  }
}


/* v1.13.5 wallet spend checkout messaging */
.gc-wallet-checkout-note,
.gc-wallet-gateway-note {
  width: 100%;
  margin: 0 0 18px;
  padding: 16px 18px;
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  border: 1px solid rgba(var(--gc-border-rgb), 0.16);
  background: rgba(255, 255, 255, 0.04);
  color: var(--gc-text);
}

.gc-wallet-checkout-note.is-unavailable {
  border-color: rgba(251, 191, 36, 0.34);
  background: rgba(120, 85, 18, 0.14);
}

.gc-wallet-checkout-note__title,
.gc-wallet-gateway-note__copy {
  display: block;
  margin: 0 0 8px;
}

.gc-wallet-checkout-note__title {
  font-size: 1rem;
  font-weight: 700;
}

.gc-wallet-checkout-note__copy,
.gc-wallet-gateway-note__copy,
.gc-wallet-gateway-note__link,
.gc-wallet-checkout-note__link {
  margin: 0;
  color: rgba(var(--gc-text-rgb), 0.82);
}

.gc-wallet-checkout-note__link,
.gc-wallet-gateway-note__link {
  margin-top: 10px;
}

.gc-wallet-checkout-note a,
.gc-wallet-gateway-note a {
  color: var(--gc-accent);
}

.gc-wallet-gateway-note--selected {
  margin-top: 12px;
}

.gc-wallet-gateway-note__stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.gc-wallet-gateway-note__stat {
  min-width: 0;
  padding: 12px 14px;
  border-radius: calc(var(--gc-radius-scale, 1) * 14px);
  border: 1px solid rgba(var(--gc-border-rgb), 0.12);
  background: rgba(8, 18, 34, 0.52);
}

.gc-wallet-gateway-note__stat span {
  display: block;
  margin-bottom: 6px;
  color: var(--gc-text-soft);
  font-size: 0.82rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.gc-wallet-gateway-note__stat strong {
  display: block;
  font-size: 1rem;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

@media (max-width: 780px) {
  .gc-wallet-gateway-note__stats {
    grid-template-columns: 1fr;
  }
}

/* Messages foundation */
.gc-messages-shell {
  display: grid;
  grid-template-columns: minmax(300px, 380px) minmax(0, 1fr);
  gap: 24px;
  align-items: start;
}

.gc-messages-sidebar,
.gc-messages-panel {
  border: 1px solid var(--gc-border);
  border-radius: calc(var(--gc-radius-scale, 1) * 24px);
  background: linear-gradient(180deg, rgba(var(--gc-surface-rgb), 0.98), rgba(var(--gc-surface-rgb), 0.98));
  box-shadow: var(--gc-shadow-soft);
}

.gc-messages-sidebar {
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.gc-messages-sidebar__eyebrow,
.gc-messages-panel__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 10px;
  color: var(--gc-accent);
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .18em;
  text-transform: uppercase;
}

.gc-messages-sidebar__intro h3,
.gc-messages-panel__header h3,
.gc-messages-empty-card h3,
.gc-messages-empty-card h4,
.gc-messages-sidebar__section-head h4 {
  margin: 0;
  color: var(--gc-text);
}

.gc-messages-sidebar__intro p,
.gc-messages-panel__header p,
.gc-messages-sidebar__section-head p,
.gc-messages-empty-card p,
.gc-messages-compose__footer p,
.gc-messages-contact-card__copy span,
.gc-messages-thread__body span,
.gc-messages-panel__identity p {
  margin: 0;
  color: var(--gc-text-soft);
  line-height: 1.6;
}

.gc-messages-sidebar__stats {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 16px;
}

.gc-messages-sidebar__stats > span {
  min-width: 120px;
  padding: 12px 14px;
  border-radius: calc(var(--gc-radius-scale, 1) * 16px);
  border: 1px solid var(--gc-border);
  background: rgba(255,255,255,.03);
}

.gc-messages-sidebar__stats strong {
  display: block;
  color: var(--gc-text);
  font-size: 1.1rem;
}

.gc-messages-sidebar__stats span span {
  display: block;
  color: var(--gc-text-soft);
  font-size: .83rem;
  margin-top: 4px;
}

.gc-messages-quick-grid,
.gc-messages-thread-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.gc-messages-contact-card,
.gc-messages-empty-card {
  border: 1px solid var(--gc-border);
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  background: rgba(255,255,255,.03);
}

.gc-messages-contact-card {
  padding: 16px;
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.gc-messages-contact-card__identity,
.gc-messages-panel__identity {
  display: flex;
  align-items: center;
  gap: 14px;
}

.gc-messages-contact-card__avatar,
.gc-messages-thread__avatar,
.gc-messages-panel__avatar {
  flex: 0 0 auto;
  width: 54px;
  height: 54px;
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.1);
  background: rgba(255,255,255,.05);
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.gc-messages-thread__avatar {
  width: 52px;
  height: 52px;
}

.gc-messages-contact-card__avatar img,
.gc-messages-thread__avatar img,
.gc-messages-panel__avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.gc-avatar-fallback {
  width: 100%;
  height: 100%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--gc-text);
  font-weight: 800;
  font-size: 1rem;
  background: linear-gradient(135deg, rgba(var(--gc-accent-rgb), .24), rgba(var(--gc-accent-2-rgb), .24));
}

.gc-messages-contact-card__copy,
.gc-messages-panel__identity > div {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}

.gc-messages-contact-card__copy strong,
.gc-messages-panel__identity strong,
.gc-messages-thread__body strong {
  color: var(--gc-text);
}

.gc-messages-contact-card__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 10px;
  align-items: center;
}

.gc-messages-contact-card__profile {
  color: var(--gc-text-soft);
  text-decoration: none;
  font-size: .92rem;
}

.gc-messages-contact-card__profile:hover {
  color: var(--gc-accent);
}

.gc-messages-thread {
  display: grid;
  grid-template-columns: 52px minmax(0,1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 14px;
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  border: 1px solid var(--gc-border);
  background: rgba(255,255,255,.02);
  text-decoration: none;
  color: inherit;
  transition: transform .18s ease, border-color .18s ease, background .18s ease;
}

.gc-messages-thread:hover {
  transform: translateY(-1px);
  border-color: rgba(var(--gc-accent-rgb), .34);
}

.gc-messages-thread.is-active {
  border-color: rgba(var(--gc-accent-rgb), .45);
  background: rgba(var(--gc-accent-rgb), .08);
}

.gc-messages-thread__body {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.gc-messages-thread__body span {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.gc-messages-thread__meta {
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-items: flex-end;
  color: var(--gc-text-soft);
  font-size: .8rem;
}

.gc-messages-thread__badge,
.gc-messages-notice,
.gc-messages-notice p {
  font-weight: 700;
}

.gc-messages-thread__badge {
  min-width: 28px;
  height: 28px;
  padding: 0 8px;
  border-radius: var(--gc-radius-pill);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, rgba(var(--gc-accent-rgb), .95), rgba(var(--gc-accent-2-rgb), .8));
  color: #05111d;
}

.gc-messages-panel {
  min-height: 760px;
  display: flex;
  flex-direction: column;
}

.gc-messages-panel__header,
.gc-messages-compose {
  padding: 22px 24px;
}

.gc-messages-panel__header {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: center;
  border-bottom: 1px solid var(--gc-border);
}

.gc-messages-panel__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.gc-messages-panel__timeline {
  flex: 1 1 auto;
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 14px;
  background: linear-gradient(180deg, rgba(255,255,255,.015), rgba(255,255,255,.01));
}

.gc-message-bubble {
  align-self: flex-start;
  width: min(720px, 82%);
  padding: 16px 18px;
  border-radius: calc(var(--gc-radius-scale, 1) * 20px);
  border: 1px solid var(--gc-border);
  background: rgba(255,255,255,.03);
}

.gc-message-bubble.is-mine {
  align-self: flex-end;
  background: linear-gradient(135deg, rgba(var(--gc-accent-rgb), .16), rgba(var(--gc-accent-2-rgb), .14));
  border-color: rgba(var(--gc-accent-rgb), .34);
}

.gc-message-bubble__meta {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 10px;
  color: var(--gc-text-soft);
  font-size: .8rem;
}

.gc-message-bubble__meta strong {
  color: var(--gc-text);
}

.gc-message-bubble__body {
  color: var(--gc-text);
  line-height: 1.7;
  word-break: break-word;
}

.gc-messages-empty-card {
  padding: 22px;
}

.gc-messages-empty-card--panel {
  margin: auto;
  max-width: 620px;
  text-align: center;
}

.gc-messages-compose {
  border-top: 1px solid var(--gc-border);
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.gc-messages-compose textarea {
  width: 100%;
  min-height: 136px;
  padding: 16px 18px;
  resize: vertical;
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  border: 1px solid var(--gc-border-strong);
  background: rgba(255,255,255,.04);
  color: var(--gc-text);
  font: inherit;
}

.gc-messages-compose textarea:focus {
  outline: none;
  border-color: rgba(var(--gc-accent-rgb), .55);
  box-shadow: 0 0 0 3px rgba(var(--gc-accent-rgb), .14);
}

.gc-messages-compose__footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 18px;
}

.gc-messages-notice {
  margin-bottom: 18px;
  padding: 14px 18px;
  border-radius: calc(var(--gc-radius-scale, 1) * 16px);
  border: 1px solid var(--gc-border);
}

.gc-messages-notice p {
  margin: 0;
}

.gc-messages-notice--info {
  background: rgba(var(--gc-accent-2-rgb), .12);
  border-color: rgba(var(--gc-accent-2-rgb), .22);
  color: var(--gc-text);
}

.gc-messages-notice--success {
  background: rgba(61,214,140,.12);
  border-color: rgba(61,214,140,.22);
  color: var(--gc-text);
}

.gc-messages-notice--error {
  background: rgba(248,113,113,.12);
  border-color: rgba(248,113,113,.24);
  color: var(--gc-text);
}

@media (max-width: 1180px) {
  .gc-messages-shell {
    grid-template-columns: 1fr;
  }

  .gc-messages-panel {
    min-height: 0;
  }
}

@media (max-width: 720px) {
  .gc-messages-sidebar,
  .gc-messages-panel__header,
  .gc-messages-compose,
  .gc-messages-panel__timeline {
    padding: 18px;
  }

  .gc-messages-thread {
    grid-template-columns: 44px minmax(0,1fr);
  }

  .gc-messages-thread__meta {
    grid-column: 2 / -1;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
  }

  .gc-messages-compose__footer,
  .gc-messages-panel__header,
  .gc-messages-contact-card__actions {
    flex-direction: column;
    align-items: stretch;
  }

  .gc-message-bubble {
    width: 100%;
  }
}

/* v1.15.0 messenger shell rebuild */
body.gc-account-page.gc-messages-page .gc-content {
  width: min(1440px, calc(100vw - 32px));
  margin: 0 auto;
  padding: clamp(18px, 2vw, 28px) 0 46px;
}

body.gc-account-page.gc-messages-page .woocommerce-account .woocommerce {
  display: block;
}

body.gc-account-page.gc-messages-page .woocommerce-MyAccount-content.gc-account-content--dashboard {
  width: 100%;
  max-width: none;
}

body.gc-chat-popup-page .gc-site-main,
body.gc-chat-popup-page .gc-site-main--minimal-shell {
  padding: 0;
}

body.gc-chat-popup-page .gc-content,
body.gc-chat-popup-page .gc-store-manager-plain,
body.gc-chat-popup-page .gc-wrap {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
}

body.gc-account-page.gc-messages-page .gc-account-inline-shell .gc-messages-shell {
  min-height: min(78vh, 900px);
}

.gc-messages-shell {
  display: grid;
  grid-template-columns: minmax(320px, 360px) minmax(0, 1fr);
  gap: 0;
  min-height: min(78vh, 920px);
  border: 1px solid rgba(var(--gc-accent-cyan-rgb), 0.18);
  border-radius: calc(var(--gc-radius-scale, 1) * 32px);
  overflow: hidden;
  background:
    radial-gradient(circle at top right, rgba(var(--gc-accent-cyan-rgb), 0.12), transparent 34%),
    linear-gradient(180deg, var(--gc-bg) 0%, #0b1528 100%);
  box-shadow: 0 28px 72px rgba(var(--gc-deep-rgb), 0.36);
  color: #f8fafc;
}

.gc-messages-shell.is-loading {
  opacity: 0.72;
  pointer-events: none;
}

.gc-messages-shell__rail {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  border-right: 1px solid rgba(var(--gc-text-soft-rgb), 0.18);
  background: rgba(var(--gc-bg-rgb), 0.86);
  backdrop-filter: blur(12px);
}

.gc-messages-shell__panel {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  background:
    radial-gradient(circle at 20% 20%, rgba(255,255,255,0.035), transparent 12%),
    radial-gradient(circle at 70% 35%, rgba(255,255,255,0.04), transparent 10%),
    linear-gradient(180deg, rgba(var(--gc-slate-rgb), 0.94), rgba(var(--gc-bg-rgb), 0.98));
}

.gc-messages-shell__masthead,
.gc-messages-shell__toolbar,
.gc-messages-shell__quick,
.gc-messages-thread-list,
.gc-messages-panel__header,
.gc-messages-compose {
  padding-left: 22px;
  padding-right: 22px;
}

.gc-messages-shell__masthead {
  padding-top: 24px;
  padding-bottom: 20px;
  border-bottom: 1px solid rgba(var(--gc-text-soft-rgb), 0.16);
}

.gc-messages-shell__eyebrow,
.gc-messages-panel__eyebrow,
.gc-messages-shell__section-head span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--gc-accent-cyan-soft);
  font-size: 0.76rem;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.gc-messages-shell__title {
  margin: 10px 0 8px;
  color: #f8fafc;
  font-size: clamp(1.6rem, 2vw, 2rem);
  line-height: 1.05;
}

.gc-messages-shell__subtitle,
.gc-messages-panel__identity p,
.gc-messages-thread-row__preview,
.gc-messages-contact-chip__copy span,
.gc-messages-compose__footer p,
.gc-messages-empty-state p,
.gc-messages-shell__section-head small {
  margin: 0;
  color: rgba(var(--gc-text-muted-rgb), 0.72);
  font-size: 0.95rem;
  line-height: 1.55;
}

.gc-messages-shell__stats {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 18px;
}

.gc-messages-shell__stats > span {
  min-width: 118px;
  padding: 12px 14px;
  border: 1px solid rgba(var(--gc-accent-cyan-rgb), 0.16);
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  background: rgba(var(--gc-slate-rgb), 0.58);
}

.gc-messages-shell__stats strong {
  display: block;
  color: #f8fafc;
  font-size: 1.15rem;
  line-height: 1;
}

.gc-messages-shell__stats span span {
  display: block;
  margin-top: 6px;
  color: rgba(var(--gc-text-muted-rgb), 0.65);
  font-size: 0.82rem;
}

.gc-messages-shell__toolbar {
  padding-top: 18px;
  padding-bottom: 18px;
  border-bottom: 1px solid rgba(var(--gc-text-soft-rgb), 0.14);
}

.gc-messages-shell__search {
  width: 100%;
  min-height: 48px;
  padding: 0 16px;
  border: 1px solid rgba(var(--gc-text-soft-rgb), 0.24);
  border-radius: var(--gc-radius-pill);
  background: rgba(var(--gc-slate-rgb), 0.68);
  color: #f8fafc;
}

.gc-messages-shell__search::placeholder {
  color: rgba(var(--gc-text-muted-rgb), 0.42);
}

.gc-messages-shell__search:focus {
  border-color: rgba(var(--gc-accent-cyan-rgb), 0.6);
  outline: none;
  box-shadow: 0 0 0 3px rgba(var(--gc-accent-cyan-rgb), 0.16);
}

.gc-messages-shell__filters {
  display: flex;
  gap: 10px;
  margin-top: 14px;
}

.gc-messages-filter {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  padding: 0 14px;
  border: 1px solid rgba(var(--gc-text-soft-rgb), 0.18);
  border-radius: var(--gc-radius-pill);
  background: rgba(var(--gc-slate-rgb), 0.54);
  color: rgba(var(--gc-text-muted-rgb), 0.78);
  font-weight: 700;
  cursor: pointer;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

.gc-messages-filter:hover,
.gc-messages-filter.is-active {
  border-color: rgba(var(--gc-accent-cyan-rgb), 0.42);
  background: rgba(var(--gc-accent-cyan-rgb), 0.16);
  color: #f8fafc;
  transform: translateY(-1px);
}

.gc-messages-shell__quick {
  padding-top: 18px;
  padding-bottom: 18px;
  border-bottom: 1px solid rgba(var(--gc-text-soft-rgb), 0.14);
}

.gc-messages-shell__section-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
}

.gc-messages-contact-chips {
  display: grid;
  gap: 10px;
}

.gc-messages-contact-chip,
.gc-messages-thread-row {
  position: relative;
  display: grid;
  gap: 12px;
  text-decoration: none;
  transition: background-color 0.2s ease, border-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
}

.gc-messages-contact-chip {
  grid-template-columns: 48px minmax(0, 1fr);
  align-items: center;
  padding: 12px 14px;
  border: 1px solid rgba(var(--gc-text-soft-rgb), 0.16);
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  background: rgba(var(--gc-slate-rgb), 0.46);
}

.gc-messages-contact-chip:hover,
.gc-messages-contact-chip:focus-visible {
  border-color: rgba(var(--gc-accent-cyan-rgb), 0.44);
  background: rgba(var(--gc-accent-cyan-rgb), 0.12);
  transform: translateY(-1px);
  box-shadow: 0 12px 28px rgba(var(--gc-deep-rgb), 0.22);
}

.gc-messages-contact-chip.is-existing::after {
  content: '';
  position: absolute;
  top: 14px;
  right: 14px;
  width: 9px;
  height: 9px;
  border-radius: var(--gc-radius-pill);
  background: var(--gc-accent-cyan);
  box-shadow: 0 0 0 4px rgba(var(--gc-accent-cyan-rgb), 0.14);
}

.gc-messages-contact-chip__avatar,
.gc-messages-thread-row__avatar,
.gc-messages-panel__avatar {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border-radius: 50%;
  background: linear-gradient(135deg, rgba(var(--gc-accent-cyan-rgb), 0.16), rgba(var(--gc-slate-rgb), 0.9));
}

.gc-messages-contact-chip__avatar,
.gc-messages-thread-row__avatar {
  width: 48px;
  height: 48px;
}

.gc-messages-panel__avatar {
  width: 64px;
  height: 64px;
  border: 1px solid rgba(var(--gc-accent-cyan-rgb), 0.18);
}

.gc-messages-contact-chip__avatar img,
.gc-messages-thread-row__avatar img,
.gc-messages-panel__avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.gc-avatar-fallback {
  color: #f8fafc;
  font-weight: 800;
  font-size: 1rem;
}

.gc-messages-contact-chip__copy,
.gc-messages-thread-row__body,
.gc-messages-panel__identity > div {
  display: flex;
  flex-direction: column;
  min-width: 0;
}

.gc-messages-contact-chip__copy strong,
.gc-messages-thread-row__head strong,
.gc-messages-panel__identity h3 {
  color: #f8fafc;
}

.gc-messages-panel__identity {
  display: flex;
  align-items: center;
  gap: 16px;
}

.gc-messages-thread-list {
  display: grid;
  gap: 10px;
  padding-top: 18px;
  padding-bottom: 18px;
  overflow: auto;
}

.gc-messages-thread-row {
  grid-template-columns: 52px minmax(0, 1fr) auto;
  align-items: center;
  padding: 14px;
  border: 1px solid rgba(var(--gc-text-soft-rgb), 0.14);
  border-radius: calc(var(--gc-radius-scale, 1) * 20px);
  background: rgba(var(--gc-slate-rgb), 0.32);
}

.gc-messages-thread-row:hover,
.gc-messages-thread-row:focus-visible,
.gc-messages-thread-row.is-active {
  border-color: rgba(var(--gc-accent-cyan-rgb), 0.44);
  background: rgba(var(--gc-accent-cyan-rgb), 0.12);
  transform: translateY(-1px);
}

.gc-messages-thread-row__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.gc-messages-thread-row__head time,
.gc-messages-thread-row__badge {
  flex-shrink: 0;
}

.gc-messages-thread-row__head time {
  color: rgba(var(--gc-text-muted-rgb), 0.54);
  font-size: 0.78rem;
}

.gc-messages-thread-row__preview {
  display: block;
  margin-top: 4px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.gc-messages-thread-row__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 28px;
  min-height: 28px;
  padding: 0 8px;
  border-radius: var(--gc-radius-pill);
  background: linear-gradient(135deg, var(--gc-accent-cyan), var(--gc-accent));
  color: #04202b;
  font-size: 0.78rem;
  font-weight: 800;
}

.gc-messages-panel__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding-top: 24px;
  padding-bottom: 20px;
  border-bottom: 1px solid rgba(var(--gc-text-soft-rgb), 0.16);
}

.gc-messages-panel__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.gc-messages-panel__timeline {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding: 22px;
  overflow: auto;
}

.gc-message-bubble {
  align-self: flex-start;
  max-width: min(78%, 720px);
  padding: 14px 16px;
  border: 1px solid rgba(var(--gc-text-soft-rgb), 0.14);
  border-radius: calc(var(--gc-radius-scale, 1) * 22px) calc(var(--gc-radius-scale, 1) * 22px) calc(var(--gc-radius-scale, 1) * 22px) calc(var(--gc-radius-scale, 1) * 8px);
  background: rgba(var(--gc-slate-rgb), 0.76);
  box-shadow: 0 12px 30px rgba(var(--gc-deep-rgb), 0.16);
}

.gc-message-bubble.is-mine {
  align-self: flex-end;
  border-color: rgba(var(--gc-accent-cyan-rgb), 0.18);
  border-radius: calc(var(--gc-radius-scale, 1) * 22px) calc(var(--gc-radius-scale, 1) * 22px) calc(var(--gc-radius-scale, 1) * 8px) calc(var(--gc-radius-scale, 1) * 22px);
  background: linear-gradient(135deg, rgba(var(--gc-accent-cyan-rgb), 0.22), rgba(17, 94, 89, 0.22));
}

.gc-message-bubble__meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 8px;
  color: rgba(var(--gc-text-muted-rgb), 0.56);
  font-size: 0.78rem;
}

.gc-message-bubble__meta strong {
  color: #f8fafc;
}

.gc-message-bubble__body {
  color: #f8fafc;
  line-height: 1.7;
  word-break: break-word;
}

.gc-messages-compose {
  padding-top: 18px;
  padding-bottom: 22px;
  border-top: 1px solid rgba(var(--gc-text-soft-rgb), 0.16);
  background: rgba(var(--gc-bg-rgb), 0.92);
}

.gc-messages-compose textarea {
  width: 100%;
  min-height: 126px;
  padding: 15px 16px;
  border: 1px solid rgba(var(--gc-text-soft-rgb), 0.22);
  border-radius: calc(var(--gc-radius-scale, 1) * 24px);
  background: rgba(var(--gc-slate-rgb), 0.74);
  color: #f8fafc;
  resize: vertical;
}

.gc-messages-compose textarea::placeholder {
  color: rgba(var(--gc-text-muted-rgb), 0.42);
}

.gc-messages-compose textarea:focus {
  border-color: rgba(var(--gc-accent-cyan-rgb), 0.6);
  outline: none;
  box-shadow: 0 0 0 3px rgba(var(--gc-accent-cyan-rgb), 0.15);
}

.gc-messages-compose__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-top: 14px;
}

.gc-messages-empty-state {
  padding: 24px;
  border: 1px dashed rgba(var(--gc-text-soft-rgb), 0.24);
  border-radius: calc(var(--gc-radius-scale, 1) * 24px);
  background: rgba(var(--gc-slate-rgb), 0.42);
}

.gc-messages-empty-state h3 {
  margin: 0 0 8px;
  color: #f8fafc;
}

.gc-messages-empty-state--panel,
.gc-messages-empty-state--panel-center {
  margin: auto 22px;
}

.gc-messages-notice {
  grid-column: 1 / -1;
  margin: 0;
  padding: 14px 18px;
  border-bottom: 1px solid rgba(var(--gc-text-soft-rgb), 0.16);
  border-radius: 0;
}

.gc-messages-notice p {
  margin: 0;
}

body.gc-chat-popup-page .gc-messages-shell {
  min-height: 100vh;
  border-radius: 0;
  border-width: 0;
}

body.gc-chat-popup-page .gc-messages-shell__masthead,
body.gc-chat-popup-page .gc-messages-shell__toolbar,
body.gc-chat-popup-page .gc-messages-shell__quick,
body.gc-chat-popup-page .gc-messages-thread-list,
body.gc-chat-popup-page .gc-messages-panel__header,
body.gc-chat-popup-page .gc-messages-compose {
  padding-left: 18px;
  padding-right: 18px;
}

@media (max-width: 1180px) {
  .gc-messages-shell {
    grid-template-columns: 320px minmax(0, 1fr);
  }
}

@media (max-width: 980px) {
  .gc-messages-shell {
    grid-template-columns: 1fr;
    min-height: 0;
  }

  .gc-messages-shell__rail {
    border-right: 0;
    border-bottom: 1px solid rgba(var(--gc-text-soft-rgb), 0.16);
  }

  .gc-messages-thread-list {
    max-height: 320px;
  }

  .gc-messages-panel__header,
  .gc-messages-compose__footer,
  .gc-messages-shell__section-head {
    flex-direction: column;
    align-items: flex-start;
  }
}

@media (max-width: 680px) {
  body.gc-account-page.gc-messages-page .gc-content {
    width: min(100%, calc(100vw - 20px));
    padding-top: 12px;
  }

  .gc-messages-shell {
    border-radius: calc(var(--gc-radius-scale, 1) * 24px);
  }

  .gc-messages-shell__masthead,
  .gc-messages-shell__toolbar,
  .gc-messages-shell__quick,
  .gc-messages-thread-list,
  .gc-messages-panel__header,
  .gc-messages-panel__timeline,
  .gc-messages-compose {
    padding-left: 16px;
    padding-right: 16px;
  }

  .gc-messages-thread-row {
    grid-template-columns: 46px minmax(0, 1fr);
  }

  .gc-messages-thread-row__badge {
    position: absolute;
    top: 12px;
    right: 12px;
  }

  .gc-message-bubble {
    max-width: 100%;
  }

  .gc-messages-compose__footer .gc-button,
  .gc-messages-panel__actions .gc-button {
    width: 100%;
  }
}


/* v1.15.1 messaging refinement */
.gc-messages-shell__new-chat {
  padding: 18px 22px;
  border-bottom: 1px solid rgba(var(--gc-text-soft-rgb), 0.14);
}

.gc-messages-shell__new-chat-toggle {
  width: 100%;
  justify-content: space-between;
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  background: rgba(var(--gc-slate-rgb), 0.54);
  color: #f8fafc;
}

.gc-messages-shell__new-chat-toggle::after {
  content: '+';
  font-size: 1.2rem;
  line-height: 1;
}

.gc-messages-shell__new-chat.is-open .gc-messages-shell__new-chat-toggle::after {
  content: '−';
}

.gc-messages-shell__new-chat-panel {
  display: grid;
  gap: 12px;
  margin-top: 14px;
  padding: 16px;
  border: 1px solid rgba(var(--gc-text-soft-rgb), 0.16);
  border-radius: calc(var(--gc-radius-scale, 1) * 22px);
  background: rgba(var(--gc-bg-rgb), 0.84);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
}

.gc-messages-shell__new-chat-panel[hidden] {
  display: none !important;
}

.gc-messages-shell__contact-search {
  width: 100%;
  min-height: 46px;
  padding: 0 15px;
  border: 1px solid rgba(var(--gc-text-soft-rgb), 0.2);
  border-radius: calc(var(--gc-radius-scale, 1) * 16px);
  background: rgba(var(--gc-slate-rgb), 0.78);
  color: #f8fafc;
}

.gc-messages-shell__contact-search::placeholder {
  color: rgba(var(--gc-text-muted-rgb), 0.42);
}

.gc-messages-shell__contact-search:focus {
  outline: none;
  border-color: rgba(var(--gc-accent-cyan-rgb), 0.6);
  box-shadow: 0 0 0 3px rgba(var(--gc-accent-cyan-rgb), 0.14);
}

.gc-messages-shell__new-chat .gc-messages-contact-chips {
  max-height: 320px;
  overflow: auto;
  padding-right: 4px;
}

.gc-messages-shell__new-chat .gc-messages-contact-chip {
  background: rgba(var(--gc-slate-rgb), 0.72);
}

.gc-messages-shell__panel {
  background:
    radial-gradient(circle at top right, rgba(var(--gc-accent-cyan-rgb), 0.08), transparent 18%),
    linear-gradient(180deg, rgba(var(--gc-bg-rgb), 0.98), rgba(var(--gc-deep-rgb), 0.98));
}

.gc-messages-panel__header {
  background: linear-gradient(180deg, rgba(var(--gc-bg-rgb), 0.96), rgba(var(--gc-surface-rgb), 0.96));
}

.gc-messages-panel__timeline {
  background:
    radial-gradient(circle at top right, rgba(var(--gc-accent-cyan-rgb), 0.10), transparent 24%),
    radial-gradient(circle at bottom left, rgba(var(--gc-accent-2-rgb), 0.10), transparent 24%),
    linear-gradient(180deg, rgba(var(--gc-deep-rgb), 0.96), rgba(var(--gc-bg-rgb), 0.92));
}

.gc-message-bubble {
  border-color: rgba(var(--gc-text-soft-rgb), 0.22);
  background: rgba(var(--gc-bg-rgb), 0.92);
  box-shadow: 0 16px 36px rgba(var(--gc-deep-rgb), 0.28);
}

.gc-message-bubble.is-mine {
  border-color: rgba(var(--gc-accent-cyan-rgb), 0.36);
  background: linear-gradient(135deg, rgba(var(--gc-accent-cyan-rgb), 0.28), rgba(13, 148, 136, 0.30));
}

.gc-message-bubble__meta {
  color: rgba(var(--gc-text-muted-rgb), 0.72);
}

.gc-message-bubble__body {
  color: rgba(248, 250, 252, 0.96);
}

.gc-messages-empty-state {
  background: rgba(var(--gc-bg-rgb), 0.78);
  border-color: rgba(var(--gc-text-soft-rgb), 0.22);
}

.gc-messages-compose {
  background: rgba(var(--gc-deep-rgb), 0.96);
}

.gc-messages-shell--thread-popup {
  display: block;
  min-height: 100vh;
  border-width: 0;
  border-radius: 0;
  box-shadow: none;
  background: linear-gradient(180deg, rgba(var(--gc-bg-rgb), 1), rgba(var(--gc-deep-rgb), 1));
}

.gc-messages-shell--thread-popup .gc-messages-shell__panel--popup {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

.gc-messages-shell--thread-popup .gc-messages-panel__header,
.gc-messages-shell--thread-popup .gc-messages-compose {
  padding-left: 20px;
  padding-right: 20px;
}

.gc-messages-shell--thread-popup .gc-messages-panel__timeline {
  padding: 20px;
}

@media (max-width: 680px) {
  .gc-messages-shell__new-chat {
    padding-left: 16px;
    padding-right: 16px;
  }
}

/* v1.15.2 messaging shell polish */
.gc-messages-shell__rail,
.gc-messages-shell__panel,
.gc-messages-panel__timeline,
.gc-messages-compose,
.gc-messages-compose textarea {
  min-width: 0;
  box-sizing: border-box;
}

.gc-messages-thread-list {
  flex: 1 1 auto;
  min-height: 0;
}

.gc-messages-panel__timeline {
  min-height: 0;
}

.gc-messages-shell--thread-popup .gc-message-bubble,
body.gc-chat-popup-page .gc-message-bubble {
  max-width: 100%;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup,
body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-shell__panel--popup {
  min-height: 100dvh;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__header,
body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__timeline,
body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-compose {
  padding-left: 16px;
  padding-right: 16px;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__header {
  padding-top: 16px;
  padding-bottom: 16px;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__timeline {
  flex: 1 1 auto;
  padding-top: 16px;
  padding-bottom: 16px;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-compose {
  padding-top: 14px;
  padding-bottom: 18px;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-compose textarea {
  min-height: 116px;
  max-height: min(36vh, 220px);
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-compose__footer {
  align-items: stretch;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-compose__footer p {
  display: none;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-compose__footer .gc-button {
  width: 100%;
}

@media (max-width: 680px) {
  body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__header,
  body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__timeline,
  body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-compose {
    padding-left: 14px;
    padding-right: 14px;
  }

  body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__identity {
    align-items: flex-start;
  }
}


/* v1.15.3 account inline refresh, mobile density, and popup hardening */
.gc-messages-shell__masthead,
.gc-messages-shell__stats {
  display: none !important;
}

body.gc-account-page .gc-account-inline-shell {
  scroll-margin-top: 110px;
}

body.gc-account-page.gc-messages-page .gc-account-inline-shell__header {
  align-items: center;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__identity,
body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-message-bubble,
body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-message-bubble__meta,
body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__header,
body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__identity > div {
  min-width: 0;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__identity {
  width: 100%;
  gap: 12px;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__identity > div {
  flex: 1 1 auto;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__identity h3,
body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__identity p {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-message-bubble {
  width: auto;
  max-width: calc(100% - 4px);
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-message-bubble__meta {
  flex-wrap: wrap;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-compose textarea {
  overflow-wrap: anywhere;
}

@media (max-width: 760px) {
  body.gc-account-page .gc-account-inline-shell {
    gap: 12px;
    padding: 14px;
    border-radius: calc(var(--gc-radius-scale, 1) * 22px);
  }

  body.gc-account-page.gc-messages-page .gc-account-inline-shell {
    gap: 10px;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
  }

  body.gc-account-page.gc-messages-page .gc-account-inline-shell__header {
    padding: 0 0 4px;
    border: 0;
  }

  body.gc-account-page.gc-messages-page .gc-account-inline-shell__title {
    font-size: 1.05rem;
  }

  body.gc-account-page.gc-messages-page .gc-account-inline-shell__body {
    gap: 10px;
  }

  body.gc-account-page.gc-messages-page .gc-account-inline-shell .gc-messages-shell {
    min-height: min(74vh, 860px);
    border-radius: calc(var(--gc-radius-scale, 1) * 20px);
  }
}

@media (max-width: 680px) {
  body.gc-account-page.gc-messages-page .gc-content {
    width: min(100%, calc(100vw - 10px));
    padding-top: 8px;
    padding-bottom: 24px;
  }

  body.gc-account-page.gc-messages-page .gc-account-inline-shell__header {
    gap: 10px;
  }

  body.gc-account-page.gc-messages-page .gc-account-inline-shell__header .gc-button {
    min-height: 38px;
    padding: 0 14px;
  }

  .gc-messages-shell {
    border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  }

  .gc-messages-shell__toolbar,
  .gc-messages-shell__new-chat,
  .gc-messages-thread-list,
  .gc-messages-panel__header,
  .gc-messages-panel__timeline,
  .gc-messages-compose {
    padding-left: 12px;
    padding-right: 12px;
  }

  .gc-messages-shell__toolbar,
  .gc-messages-shell__new-chat,
  .gc-messages-compose {
    padding-top: 12px;
    padding-bottom: 12px;
  }

  .gc-messages-panel__header {
    padding-top: 14px;
    padding-bottom: 14px;
  }

  .gc-messages-panel__timeline {
    padding-top: 12px;
    padding-bottom: 12px;
  }

  .gc-message-bubble {
    padding: 12px 14px;
    border-radius: calc(var(--gc-radius-scale, 1) * 18px) calc(var(--gc-radius-scale, 1) * 18px) calc(var(--gc-radius-scale, 1) * 18px) calc(var(--gc-radius-scale, 1) * 8px);
  }

  .gc-message-bubble.is-mine {
    border-radius: calc(var(--gc-radius-scale, 1) * 18px) calc(var(--gc-radius-scale, 1) * 18px) calc(var(--gc-radius-scale, 1) * 8px) calc(var(--gc-radius-scale, 1) * 18px);
  }
}

@media (max-width: 560px) {
  body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__avatar {
    width: 52px;
    height: 52px;
  }

  body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__header,
  body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__timeline,
  body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-compose {
    padding-left: 12px;
    padding-right: 12px;
  }

  body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__header {
    padding-top: 12px;
    padding-bottom: 12px;
  }

  body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-message-bubble {
    padding: 12px 13px;
  }

  body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-compose textarea {
    min-height: 92px;
    max-height: min(30vh, 170px);
  }
}


/* v1.15.4 account messages direct-load, popup overflow, and tighter mobile density */
.gc-messages-shell,
.gc-messages-shell *,
.gc-messages-shell *::before,
.gc-messages-shell *::after {
  box-sizing: border-box;
}

body.gc-chat-popup-page {
  overflow-x: hidden;
}

body.gc-chat-popup-page .gc-messages-panel__timeline {
  overflow-x: hidden;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-message-bubble {
  width: auto !important;
  max-width: min(88%, calc(100% - 12px));
  margin-right: auto;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-message-bubble.is-mine {
  margin-left: auto;
  margin-right: 0;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-message-bubble__body,
body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-message-bubble__meta {
  overflow-wrap: anywhere;
}

@media (max-width: 760px) {
  body.gc-account-page .gc-content {
    width: min(100%, calc(100vw - 8px));
    padding-top: 10px;
    padding-bottom: 24px;
  }

  body.gc-account-page .gc-account-dashboard {
    gap: 14px;
  }

  body.gc-account-page .gc-account-dashboard__hero,
  body.gc-account-page .gc-account-stat-card,
  body.gc-account-page .gc-account-feature-card,
  body.gc-account-page .gc-account-inline-shell {
    padding: 16px;
    border-radius: calc(var(--gc-radius-scale, 1) * 20px);
    box-shadow: 0 14px 28px rgba(3, 8, 20, 0.18);
  }

  body.gc-account-page.gc-messages-page .gc-content {
    width: 100%;
    padding-top: 6px;
    padding-bottom: 18px;
  }

  body.gc-account-page.gc-messages-page .woocommerce-MyAccount-content.gc-account-content--dashboard {
    gap: 0;
    padding: 0;
    background: transparent;
    border: 0;
    box-shadow: none;
  }

  body.gc-account-page.gc-messages-page .gc-messages-shell {
    min-height: min(72vh, 820px);
    border-radius: calc(var(--gc-radius-scale, 1) * 18px);
    box-shadow: none;
  }

  body.gc-account-page.gc-messages-page .gc-messages-shell__toolbar,
  body.gc-account-page.gc-messages-page .gc-messages-shell__new-chat,
  body.gc-account-page.gc-messages-page .gc-messages-thread-list,
  body.gc-account-page.gc-messages-page .gc-messages-panel__header,
  body.gc-account-page.gc-messages-page .gc-messages-panel__timeline,
  body.gc-account-page.gc-messages-page .gc-messages-compose {
    padding-left: 10px;
    padding-right: 10px;
  }

  body.gc-account-page.gc-messages-page .gc-messages-compose,
  body.gc-account-page.gc-messages-page .gc-messages-shell__toolbar,
  body.gc-account-page.gc-messages-page .gc-messages-shell__new-chat {
    padding-top: 10px;
    padding-bottom: 10px;
  }

  body.gc-account-page.gc-messages-page .gc-messages-panel__timeline {
    padding-top: 10px;
    padding-bottom: 10px;
  }

  body.gc-account-page.gc-messages-page .gc-messages-compose__footer {
    gap: 10px;
  }

  body.gc-account-page.gc-messages-page .gc-messages-compose__footer p {
    display: none;
  }

  body.gc-account-page.gc-messages-page .gc-messages-compose__footer .gc-button {
    width: 100%;
  }
}

@media (max-width: 680px) {
  body.gc-account-page.gc-messages-page .gc-messages-shell {
    border-left: 0;
    border-right: 0;
    border-radius: 0;
  }

  body.gc-account-page.gc-messages-page .gc-messages-shell__toolbar,
  body.gc-account-page.gc-messages-page .gc-messages-shell__new-chat,
  body.gc-account-page.gc-messages-page .gc-messages-thread-list,
  body.gc-account-page.gc-messages-page .gc-messages-panel__header,
  body.gc-account-page.gc-messages-page .gc-messages-panel__timeline,
  body.gc-account-page.gc-messages-page .gc-messages-compose {
    padding-left: 8px;
    padding-right: 8px;
  }

  body.gc-account-page.gc-messages-page .gc-message-bubble {
    max-width: calc(100% - 8px);
  }
}


/* v1.15.5 account messages inline restore, popup bubble inset, and tighter mobile shell */
body.gc-account-page.gc-account-messages-inline-route .gc-content {
  width: calc(100% - (var(--gc-page-gutter) * 2));
  max-width: none;
  margin: 0 auto;
  padding: 0;
}

.gc-account-inline-shell.gc-account-inline-shell--messages {
  gap: 14px;
}

.gc-account-inline-shell.gc-account-inline-shell--messages .gc-account-inline-shell__body {
  gap: 12px;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__header,
body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__timeline,
body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-compose {
  padding-left: 20px !important;
  padding-right: 20px !important;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-message-bubble {
  width: fit-content !important;
  max-width: calc(100% - 28px) !important;
  margin-right: auto;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-message-bubble:not(.is-mine) {
  margin-left: 0;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-message-bubble.is-mine {
  margin-left: auto;
  margin-right: 0;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-message-bubble__body,
body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-message-bubble__meta,
body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__identity,
body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__identity > div {
  min-width: 0;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__timeline {
  gap: 16px;
}

body.gc-store-manager-page.gc-messages-page .gc-messages-shell__search,
body.gc-store-manager-page.gc-messages-page .gc-messages-shell__contact-search,
body.gc-store-manager-page.gc-messages-page .gc-messages-compose textarea {
  appearance: none !important;
  -webkit-appearance: none !important;
  background-color: rgba(var(--gc-slate-rgb), 0.92) !important;
  background-image: none !important;
  color: #f8fafc !important;
  -webkit-text-fill-color: #f8fafc !important;
  caret-color: #f8fafc !important;
  box-shadow: inset 0 0 0 1000px rgba(var(--gc-slate-rgb), 0.92) !important;
}

body.gc-store-manager-page.gc-messages-page .gc-messages-shell__search:-webkit-autofill,
body.gc-store-manager-page.gc-messages-page .gc-messages-shell__contact-search:-webkit-autofill,
body.gc-store-manager-page.gc-messages-page .gc-messages-compose textarea:-webkit-autofill {
  -webkit-text-fill-color: #f8fafc !important;
  box-shadow: inset 0 0 0 1000px rgba(var(--gc-slate-rgb), 0.92) !important;
  transition: background-color 9999s ease-in-out 0s !important;
}

@media (max-width: 760px) {
  body.gc-account-page .gc-commerce-shell {
    padding: 14px 0 24px;
  }

  body.gc-account-page .gc-commerce-shell__inner {
    gap: 14px;
  }

  body.gc-account-page .gc-commerce-hero {
    padding: 18px;
    border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  }

  body.gc-account-page .gc-commerce-panel {
    padding: 12px;
    border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  }

  body.gc-account-page .gc-account-dashboard {
    gap: 14px;
  }

  body.gc-account-page .gc-account-dashboard__hero,
  body.gc-account-page .gc-account-stat-card,
  body.gc-account-page .gc-account-feature-card,
  body.gc-account-page .gc-account-inline-shell {
    padding: 14px;
    border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages {
    gap: 10px;
    padding: 8px;
    border-radius: calc(var(--gc-radius-scale, 1) * 16px);
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-account-inline-shell__header {
    gap: 10px;
    padding: 0 2px 4px;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-account-inline-shell__body {
    gap: 8px;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell {
    min-height: min(70vh, 760px);
    border-radius: calc(var(--gc-radius-scale, 1) * 16px);
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell__toolbar,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell__new-chat,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-thread-list,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__header,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__timeline,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose {
    padding-left: 10px;
    padding-right: 10px;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell__toolbar,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell__new-chat {
    padding-top: 10px;
    padding-bottom: 10px;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__timeline {
    padding-top: 10px;
    padding-bottom: 10px;
  }

  body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__header,
  body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__timeline,
  body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-compose {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-message-bubble {
    max-width: calc(100% - 22px) !important;
  }
}

@media (max-width: 680px) {
  body.gc-account-page .gc-content,
  body.gc-account-page .gc-wrap.gc-commerce-shell__inner {
    width: calc(100% - 6px);
  }

  body.gc-account-page .gc-commerce-shell {
    padding: 10px 0 18px;
  }

  body.gc-account-page .gc-commerce-panel {
    padding: 8px;
    border-radius: calc(var(--gc-radius-scale, 1) * 16px);
  }

  body.gc-account-page .gc-account-dashboard__hero,
  body.gc-account-page .gc-account-stat-card,
  body.gc-account-page .gc-account-feature-card,
  body.gc-account-page .gc-account-inline-shell {
    padding: 12px;
    border-radius: calc(var(--gc-radius-scale, 1) * 16px);
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages {
    gap: 8px;
    padding: 4px;
    border-radius: calc(var(--gc-radius-scale, 1) * 12px);
    box-shadow: none;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell {
    border-left: 0;
    border-right: 0;
    border-radius: calc(var(--gc-radius-scale, 1) * 12px);
    min-height: min(68vh, 720px);
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell__toolbar,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell__new-chat,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-thread-list,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__header,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__timeline,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose {
    padding-left: 8px;
    padding-right: 8px;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-message-bubble {
    max-width: calc(100% - 6px);
  }

  body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__header,
  body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__timeline,
  body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-compose {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-message-bubble {
    max-width: calc(100% - 18px) !important;
  }
}


/* v1.15.6 account/store route split, popup inset, and tighter account mobile shell */
body.gc-account-page.gc-account-messages-inline-route .gc-content {
  width: min(100%, calc(100vw - 24px));
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup {
  display: block !important;
  grid-template-columns: minmax(0, 1fr) !important;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-shell__panel--popup {
  width: 100%;
  min-width: 0;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__timeline {
  padding-left: 20px !important;
  padding-right: 20px !important;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-message-bubble {
  width: auto !important;
  max-width: calc(100% - 40px) !important;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-message-bubble:not(.is-mine) {
  margin-left: 10px !important;
  margin-right: auto !important;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-message-bubble.is-mine {
  margin-left: auto !important;
  margin-right: 10px !important;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-message-bubble__meta,
body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-message-bubble__body {
  min-width: 0;
}

@media (max-width: 760px) {
  body.gc-account-page.gc-account-messages-inline-route .gc-commerce-shell {
    padding: 12px 0 20px;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-commerce-panel {
    padding: 8px;
    border-radius: calc(var(--gc-radius-scale, 1) * 16px);
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages {
    gap: 8px;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-account-inline-shell__header {
    padding: 0 2px 4px;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-account-inline-shell__body {
    gap: 6px;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell {
    min-height: min(68vh, 740px);
    border-radius: calc(var(--gc-radius-scale, 1) * 16px);
    box-shadow: none;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell__toolbar,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell__new-chat,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-thread-list,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__header,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__timeline,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose {
    padding-left: 8px;
    padding-right: 8px;
  }

  body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__timeline,
  body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__header,
  body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-compose {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-message-bubble {
    max-width: calc(100% - 28px) !important;
  }

  body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-message-bubble:not(.is-mine) {
    margin-left: 6px !important;
  }

  body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-message-bubble.is-mine {
    margin-right: 6px !important;
  }
}

@media (max-width: 680px) {
  body.gc-account-page.gc-account-messages-inline-route .gc-content,
  body.gc-account-page.gc-account-messages-inline-route .gc-wrap.gc-commerce-shell__inner {
    width: calc(100% - 8px);
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-commerce-panel {
    padding: 4px;
    border-radius: calc(var(--gc-radius-scale, 1) * 12px);
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell {
    min-height: min(66vh, 700px);
    border-radius: calc(var(--gc-radius-scale, 1) * 12px);
    border-left: 0;
    border-right: 0;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell__toolbar,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell__new-chat,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-thread-list,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__header,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__timeline,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose {
    padding-left: 6px;
    padding-right: 6px;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-message-bubble {
    max-width: calc(100% - 10px);
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__actions,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__actions .gc-button {
    width: 100%;
  }

  body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__timeline,
  body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__header,
  body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-compose {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-message-bubble {
    max-width: calc(100% - 22px) !important;
  }

  body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-message-bubble:not(.is-mine) {
    margin-left: 4px !important;
  }

  body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-message-bubble.is-mine {
    margin-right: 4px !important;
  }
}


/* v1.15.7 account-first shell loading, popup footer sizing, stronger store-manager focus, and tighter mobile account density */
body.gc-account-page.gc-account-messages-inline-route .gc-content,
body.gc-account-page.gc-account-messages-inline-route .gc-commerce-shell,
body.gc-account-page.gc-account-messages-inline-route .gc-commerce-panel,
body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages,
body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-account-inline-shell__body,
body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell,
body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell__panel {
  min-width: 0;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup,
body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-shell__panel--popup {
  height: 100dvh !important;
  max-height: 100dvh !important;
  overflow: hidden !important;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__timeline {
  flex: 1 1 auto;
  min-height: 0;
  overflow: auto;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-compose {
  flex: 0 0 auto;
  padding-top: 10px !important;
  padding-bottom: 12px !important;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-compose textarea {
  min-height: 78px !important;
  max-height: min(18vh, 118px) !important;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-compose__footer {
  gap: 10px;
  margin-top: 10px;
  padding-bottom: max(0px, env(safe-area-inset-bottom));
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-compose__footer .gc-button {
  width: 100%;
  min-height: 48px;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-message-bubble {
  max-width: 92% !important;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-message-bubble:not(.is-mine) {
  margin-left: 10px !important;
  margin-right: auto !important;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-message-bubble.is-mine {
  margin-left: auto !important;
  margin-right: 10px !important;
}

@media (max-width: 760px) {
  body.gc-account-page .gc-content,
  body.gc-account-page .gc-wrap.gc-commerce-shell__inner {
    width: min(100%, calc(100vw - 4px));
  }

  body.gc-account-page .gc-commerce-shell {
    padding: 8px 0 14px;
  }

  body.gc-account-page .gc-commerce-panel {
    padding: 6px;
    border-radius: calc(var(--gc-radius-scale, 1) * 14px);
  }

  body.gc-account-page .gc-account-dashboard__hero,
  body.gc-account-page .gc-account-stat-card,
  body.gc-account-page .gc-account-feature-card,
  body.gc-account-page .gc-account-inline-shell {
    padding: 12px;
    border-radius: calc(var(--gc-radius-scale, 1) * 16px);
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages {
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell__toolbar,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell__new-chat,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-thread-list,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__header,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__timeline,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose {
    padding-left: 6px;
    padding-right: 6px;
  }

  body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__header,
  body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__timeline,
  body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-compose {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-message-bubble:not(.is-mine) {
    margin-left: 8px !important;
  }

  body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-message-bubble.is-mine {
    margin-right: 8px !important;
  }
}

@media (max-width: 560px) {
  body.gc-account-page .gc-content,
  body.gc-account-page .gc-wrap.gc-commerce-shell__inner {
    width: calc(100% - 2px);
  }

  body.gc-account-page .gc-commerce-shell {
    padding: 6px 0 10px;
  }

  body.gc-account-page .gc-commerce-panel {
    padding: 2px;
    border-radius: calc(var(--gc-radius-scale, 1) * 10px);
  }

  body.gc-account-page .gc-account-dashboard__hero,
  body.gc-account-page .gc-account-stat-card,
  body.gc-account-page .gc-account-feature-card,
  body.gc-account-page .gc-account-inline-shell {
    padding: 10px;
    border-radius: calc(var(--gc-radius-scale, 1) * 12px);
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell {
    min-height: min(66vh, 680px);
    border-radius: calc(var(--gc-radius-scale, 1) * 10px);
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell__toolbar,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell__new-chat,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-thread-list,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__header,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__timeline,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose {
    padding-left: 4px;
    padding-right: 4px;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-message-bubble {
    max-width: calc(100% - 4px);
  }

  body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__header,
  body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__timeline,
  body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-compose {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }

  body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-message-bubble {
    max-width: 94% !important;
  }

  body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-message-bubble:not(.is-mine) {
    margin-left: 6px !important;
  }

  body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-message-bubble.is-mine {
    margin-right: 6px !important;
  }
}


/* v1.15.8 popup footer visibility, popup shell cleanup, and tighter bubble inset */
body.gc-chat-popup-page.gc-account-page .gc-commerce-hero,
body.gc-chat-popup-page.gc-account-page .gc-account-inline-shell__header,
body.gc-chat-popup-page.gc-account-page .gc-account-dashboard__hero,
body.gc-chat-popup-page.gc-account-page .gc-account-section-hero,
body.gc-chat-popup-page.gc-account-page .gc-site-footer {
  display: none !important;
}

body.gc-chat-popup-page.gc-account-page .gc-content,
body.gc-chat-popup-page.gc-account-page .gc-commerce-shell,
body.gc-chat-popup-page.gc-account-page .gc-commerce-panel,
body.gc-chat-popup-page.gc-account-page .gc-account-inline-shell,
body.gc-chat-popup-page.gc-account-page .gc-account-inline-shell__body,
body.gc-chat-popup-page.gc-account-page .woocommerce-MyAccount-content.gc-account-content--dashboard {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup,
body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-shell__panel--popup {
  display: flex !important;
  flex-direction: column !important;
  height: 100dvh !important;
  min-height: 100dvh !important;
  max-height: 100dvh !important;
  overflow: hidden !important;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__header {
  flex: 0 0 auto !important;
  padding-top: 14px !important;
  padding-bottom: 14px !important;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__timeline {
  flex: 1 1 auto !important;
  min-height: 0 !important;
  overflow: auto !important;
  padding-top: 14px !important;
  padding-bottom: 12px !important;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-compose {
  flex: 0 0 auto !important;
  margin-top: auto !important;
  padding-top: 10px !important;
  padding-bottom: max(10px, env(safe-area-inset-bottom)) !important;
  background: linear-gradient(180deg, rgba(var(--gc-bg-rgb), 0.98), rgba(var(--gc-deep-rgb), 0.98)) !important;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-compose textarea {
  min-height: 56px !important;
  height: 56px !important;
  max-height: 86px !important;
  resize: none !important;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-compose__footer {
  display: flex !important;
  align-items: stretch !important;
  justify-content: stretch !important;
  gap: 8px !important;
  margin-top: 8px !important;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-compose__footer p {
  display: none !important;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-compose__footer .gc-button {
  display: inline-flex !important;
  width: 100% !important;
  min-height: 44px !important;
  visibility: visible !important;
  opacity: 1 !important;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-message-bubble {
  width: fit-content !important;
  max-width: calc(100% - 36px) !important;
  margin-left: 12px !important;
  margin-right: auto !important;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-message-bubble.is-mine {
  margin-left: auto !important;
  margin-right: 12px !important;
}

@media (max-width: 760px) {
  body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__header,
  body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__timeline,
  body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-compose {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-message-bubble {
    max-width: calc(100% - 28px) !important;
    margin-left: 8px !important;
  }

  body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-message-bubble.is-mine {
    margin-right: 8px !important;
  }
}


/* v1.15.9 account popup shell trim, guaranteed popup footer visibility, and store-manager active field lock */
body.gc-chat-popup-page .gc-chat-popup-shell,
body.gc-chat-popup-page .gc-wrap.gc-content,
body.gc-chat-popup-page .gc-wrap.gc-content > article,
body.gc-chat-popup-page .gc-wrap.gc-content > .page,
body.gc-chat-popup-page .gc-wrap.gc-content > .type-page {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.gc-chat-popup-page .gc-wrap.gc-content > article > h1:first-child,
body.gc-chat-popup-page .gc-chat-popup-shell > h1:first-child,
body.gc-chat-popup-page .gc-page-title,
body.gc-chat-popup-page .entry-title,
body.gc-chat-popup-page .gc-commerce-hero,
body.gc-chat-popup-page .gc-account-inline-shell__header,
body.gc-chat-popup-page .gc-account-dashboard__hero,
body.gc-chat-popup-page .gc-account-section-hero,
body.gc-chat-popup-page .gc-site-footer {
  display: none !important;
}

body.gc-chat-popup-page .gc-content {
  width: 100% !important;
  max-width: none !important;
  padding: 0 !important;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup,
body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-shell__panel--popup {
  display: grid !important;
  grid-template-rows: auto minmax(0, 1fr) auto !important;
  height: 100dvh !important;
  min-height: 100dvh !important;
  max-height: 100dvh !important;
  overflow: hidden !important;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__header {
  padding: 12px 14px !important;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__timeline {
  min-height: 0 !important;
  overflow: auto !important;
  padding: 12px 14px !important;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-compose {
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
  margin-top: 0 !important;
  padding: 8px 14px calc(10px + env(safe-area-inset-bottom)) !important;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-compose textarea {
  min-height: 44px !important;
  height: 44px !important;
  max-height: 72px !important;
  overflow: auto !important;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-compose__footer {
  display: flex !important;
  align-items: stretch !important;
  justify-content: stretch !important;
  gap: 0 !important;
  margin-top: 0 !important;
  position: relative !important;
  z-index: 2 !important;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-compose__footer p {
  display: none !important;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-compose__footer .gc-button {
  display: inline-flex !important;
  width: 100% !important;
  min-height: 42px !important;
  margin: 0 !important;
  visibility: visible !important;
  opacity: 1 !important;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-message-bubble {
  max-width: calc(100% - 36px) !important;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-message-bubble:not(.is-mine) {
  margin-left: 12px !important;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-message-bubble.is-mine {
  margin-right: 12px !important;
}

body.gc-store-manager-page.gc-messages-page .gc-messages-shell__search,
body.gc-store-manager-page.gc-messages-page input.gc-messages-shell__search,
body.gc-store-manager-page.gc-messages-page input[type="search"].gc-messages-shell__search,
body.gc-store-manager-page.gc-messages-page .gc-messages-shell__contact-search,
body.gc-store-manager-page.gc-messages-page input.gc-messages-shell__contact-search,
body.gc-store-manager-page.gc-messages-page .gc-messages-compose textarea,
body.gc-store-manager-page.gc-messages-page textarea[name="gc_message_body"] {
  -webkit-appearance: none !important;
  appearance: none !important;
  background: var(--gc-surface-3-solid) !important;
  background-color: var(--gc-surface-3-solid) !important;
  background-image: none !important;
  color: #f8fafc !important;
  -webkit-text-fill-color: #f8fafc !important;
  caret-color: #f8fafc !important;
  color-scheme: dark !important;
  background-clip: padding-box !important;
}

body.gc-store-manager-page.gc-messages-page .gc-messages-shell__search:hover,
body.gc-store-manager-page.gc-messages-page .gc-messages-shell__search:active,
body.gc-store-manager-page.gc-messages-page .gc-messages-shell__search:focus,
body.gc-store-manager-page.gc-messages-page .gc-messages-shell__search:focus-visible,
body.gc-store-manager-page.gc-messages-page .gc-messages-shell__search:not(:placeholder-shown),
body.gc-store-manager-page.gc-messages-page .gc-messages-shell__contact-search:hover,
body.gc-store-manager-page.gc-messages-page .gc-messages-shell__contact-search:active,
body.gc-store-manager-page.gc-messages-page .gc-messages-shell__contact-search:focus,
body.gc-store-manager-page.gc-messages-page .gc-messages-shell__contact-search:focus-visible,
body.gc-store-manager-page.gc-messages-page .gc-messages-shell__contact-search:not(:placeholder-shown),
body.gc-store-manager-page.gc-messages-page .gc-messages-compose textarea:hover,
body.gc-store-manager-page.gc-messages-page .gc-messages-compose textarea:active,
body.gc-store-manager-page.gc-messages-page .gc-messages-compose textarea:focus,
body.gc-store-manager-page.gc-messages-page .gc-messages-compose textarea:focus-visible,
body.gc-store-manager-page.gc-messages-page .gc-messages-compose textarea:not(:placeholder-shown),
body.gc-store-manager-page.gc-messages-page textarea[name="gc_message_body"]:hover,
body.gc-store-manager-page.gc-messages-page textarea[name="gc_message_body"]:active,
body.gc-store-manager-page.gc-messages-page textarea[name="gc_message_body"]:focus,
body.gc-store-manager-page.gc-messages-page textarea[name="gc_message_body"]:focus-visible,
body.gc-store-manager-page.gc-messages-page textarea[name="gc_message_body"]:not(:placeholder-shown) {
  background: var(--gc-surface-3-solid) !important;
  background-color: var(--gc-surface-3-solid) !important;
  background-image: none !important;
  color: #f8fafc !important;
  -webkit-text-fill-color: #f8fafc !important;
  -webkit-box-shadow: inset 0 0 0 1000px var(--gc-surface-3-solid) !important, 0 0 0 1px rgba(var(--gc-accent-cyan-rgb), 0.28) !important;
  box-shadow: inset 0 0 0 1000px var(--gc-surface-3-solid) !important, 0 0 0 1px rgba(var(--gc-accent-cyan-rgb), 0.28) !important;
  outline: none !important;
}

body.gc-store-manager-page.gc-messages-page .gc-messages-shell__search:-webkit-autofill,
body.gc-store-manager-page.gc-messages-page .gc-messages-shell__search:-webkit-autofill:hover,
body.gc-store-manager-page.gc-messages-page .gc-messages-shell__search:-webkit-autofill:focus,
body.gc-store-manager-page.gc-messages-page .gc-messages-shell__contact-search:-webkit-autofill,
body.gc-store-manager-page.gc-messages-page .gc-messages-shell__contact-search:-webkit-autofill:hover,
body.gc-store-manager-page.gc-messages-page .gc-messages-shell__contact-search:-webkit-autofill:focus,
body.gc-store-manager-page.gc-messages-page .gc-messages-compose textarea:-webkit-autofill,
body.gc-store-manager-page.gc-messages-page .gc-messages-compose textarea:-webkit-autofill:hover,
body.gc-store-manager-page.gc-messages-page .gc-messages-compose textarea:-webkit-autofill:focus,
body.gc-store-manager-page.gc-messages-page textarea[name="gc_message_body"]:-webkit-autofill,
body.gc-store-manager-page.gc-messages-page textarea[name="gc_message_body"]:-webkit-autofill:hover,
body.gc-store-manager-page.gc-messages-page textarea[name="gc_message_body"]:-webkit-autofill:focus {
  -webkit-text-fill-color: #f8fafc !important;
  -webkit-box-shadow: inset 0 0 0 1000px var(--gc-surface-3-solid) !important, 0 0 0 1px rgba(var(--gc-accent-cyan-rgb), 0.28) !important;
  box-shadow: inset 0 0 0 1000px var(--gc-surface-3-solid) !important, 0 0 0 1px rgba(var(--gc-accent-cyan-rgb), 0.28) !important;
}


/* v1.15.10 JS-backed store-manager composer dark-state safety */
body.gc-store-manager-page.gc-messages-page .gc-messages-compose textarea,
body.gc-store-manager-page.gc-messages-page textarea[name="gc_message_body"] {
  background: var(--gc-surface-3-solid) !important;
  background-color: var(--gc-surface-3-solid) !important;
  background-image: none !important;
  color: #f8fafc !important;
  -webkit-text-fill-color: #f8fafc !important;
  caret-color: #f8fafc !important;
}

body.gc-store-manager-page.gc-messages-page .gc-messages-compose textarea:focus,
body.gc-store-manager-page.gc-messages-page .gc-messages-compose textarea:active,
body.gc-store-manager-page.gc-messages-page .gc-messages-compose textarea:not(:placeholder-shown),
body.gc-store-manager-page.gc-messages-page textarea[name="gc_message_body"]:focus,
body.gc-store-manager-page.gc-messages-page textarea[name="gc_message_body"]:active,
body.gc-store-manager-page.gc-messages-page textarea[name="gc_message_body"]:not(:placeholder-shown) {
  background: var(--gc-surface-3-solid) !important;
  background-color: var(--gc-surface-3-solid) !important;
  background-image: none !important;
  color: #f8fafc !important;
  -webkit-text-fill-color: #f8fafc !important;
  caret-color: #f8fafc !important;
}

/* v1.16.1 media / PPV messaging */
.gc-messages-compose__tools {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.gc-messages-compose__tool-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}

.gc-messages-compose__file-input {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
  pointer-events: none;
}

.gc-messages-compose__tool-button {
  min-height: 42px;
}

.gc-messages-compose__tool-button.is-recording {
  border-color: rgba(248, 113, 113, 0.48);
  background: rgba(248, 113, 113, 0.14);
}

.gc-messages-compose__tool-button.is-disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

.gc-messages-compose__paid-toggle {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 42px;
  padding: 0 14px;
  border-radius: var(--gc-radius-pill);
  border: 1px solid rgba(var(--gc-text-soft-rgb), 0.18);
  background: rgba(var(--gc-slate-rgb), 0.54);
  color: #f8fafc;
  font-weight: 700;
}

.gc-messages-compose__paid-toggle input {
  margin: 0;
}

.gc-messages-compose__price {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.gc-messages-compose__price label {
  color: rgba(var(--gc-text-muted-rgb), 0.78);
  font-size: 0.86rem;
  font-weight: 700;
}

.gc-messages-compose__price input {
  width: min(220px, 100%);
  min-height: 46px;
  padding: 0 14px;
  border-radius: calc(var(--gc-radius-scale, 1) * 14px);
  border: 1px solid rgba(var(--gc-text-soft-rgb), 0.24);
  background: rgba(var(--gc-slate-rgb), 0.68);
  color: #f8fafc;
}

.gc-messages-compose__price input:focus {
  border-color: rgba(var(--gc-accent-cyan-rgb), 0.6);
  outline: none;
  box-shadow: 0 0 0 3px rgba(var(--gc-accent-cyan-rgb), 0.16);
}

.gc-messages-compose__attachment-preview {
  padding: 14px;
  border: 1px solid rgba(var(--gc-text-soft-rgb), 0.18);
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  background: rgba(var(--gc-slate-rgb), 0.46);
}

.gc-messages-compose__attachment-preview-card {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 14px;
  align-items: center;
}

.gc-messages-compose__attachment-preview-copy {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}

.gc-messages-compose__attachment-preview-copy strong {
  color: #f8fafc;
}

.gc-messages-compose__attachment-preview-copy span {
  color: rgba(var(--gc-text-muted-rgb), 0.68);
  font-size: 0.9rem;
  word-break: break-word;
}

.gc-messages-compose__attachment-preview-status {
  color: rgba(var(--gc-text-muted-rgb), 0.84);
  font-size: 0.84rem;
  font-weight: 700;
}

.gc-messages-compose__attachment-preview-status.is-error {
  color: #fca5a5;
}

.gc-messages-compose__attachment-preview-status.is-ready {
  color: #99f6e4;
}

.gc-messages-compose__progress {
  position: relative;
  width: 100%;
  height: 8px;
  border-radius: var(--gc-radius-pill);
  overflow: hidden;
  background: rgba(var(--gc-surface-rgb), 0.88);
}

.gc-messages-compose__progress-fill {
  display: block;
  width: 0;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--gc-accent-cyan) 0%, var(--gc-accent-deep) 100%);
  transition: width 0.16s ease;
}

.gc-messages-compose__progress-text {
  color: rgba(var(--gc-text-muted-rgb), 0.72);
  font-size: 0.82rem;
  line-height: 1.35;
}

.gc-messages-compose__attachment-thumb {
  width: 74px;
  height: 74px;
  object-fit: cover;
  border-radius: calc(var(--gc-radius-scale, 1) * 14px);
  border: 1px solid rgba(var(--gc-text-soft-rgb), 0.18);
}

.gc-messages-compose__attachment-remove {
  min-height: 38px;
}

.gc-message-bubble--system {
  align-self: center;
  width: min(520px, 100%);
  background: rgba(var(--gc-accent-2-rgb), 0.10);
  border-color: rgba(var(--gc-accent-2-rgb), 0.24);
}

.gc-message-system-event {
  color: #f8fafc;
  text-align: center;
  font-weight: 700;
}

.gc-message-status-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 14px;
}

.gc-message-status-pill {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 10px;
  border-radius: var(--gc-radius-pill);
  border: 1px solid rgba(var(--gc-accent-rgb), 0.2);
  background: rgba(var(--gc-accent-rgb), 0.12);
  color: #dffdfa;
  font-size: 0.82rem;
  font-weight: 700;
}

.gc-message-media {
  margin-top: 14px;
  padding: 14px;
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  border: 1px solid rgba(var(--gc-text-soft-rgb), 0.16);
  background: rgba(var(--gc-bg-rgb), 0.42);
}

.gc-message-media__frame {
  display: block;
}

.gc-message-media__frame img,
.gc-message-media__frame video {
  width: 100%;
  max-width: 440px;
  border-radius: calc(var(--gc-radius-scale, 1) * 16px);
  border: 1px solid rgba(var(--gc-text-soft-rgb), 0.18);
}

.gc-message-media__frame audio {
  width: 100%;
  max-width: 440px;
}

.gc-message-media__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 10px;
  color: rgba(var(--gc-text-muted-rgb), 0.72);
  font-size: 0.88rem;
}

.gc-message-media__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 12px;
}

.gc-message-media__actions .gc-button {
  min-height: 38px;
  padding: 0 14px;
}

.gc-message-ppv-card {
  margin-top: 14px;
  padding: 16px;
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  border: 1px solid rgba(var(--gc-accent-2-rgb), 0.28);
  background:
    radial-gradient(circle at top right, rgba(var(--gc-accent-2-rgb), 0.18), transparent 34%),
    rgba(24, 24, 45, 0.84);
}

.gc-message-ppv-card.is-locked {
  border-color: rgba(248, 113, 113, 0.28);
  background:
    radial-gradient(circle at top right, rgba(248, 113, 113, 0.12), transparent 34%),
    rgba(30, 17, 28, 0.86);
}

.gc-message-ppv-card__head {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: center;
  margin-bottom: 10px;
}

.gc-message-ppv-card__head span {
  color: rgba(var(--gc-text-muted-rgb), 0.74);
  font-size: 0.86rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.gc-message-ppv-card__head strong {
  color: #f8fafc;
}

.gc-message-ppv-card p {
  margin: 0;
  color: rgba(var(--gc-text-muted-rgb), 0.78);
}

.gc-message-ppv-card__form {
  margin-top: 14px;
}

.gc-message-ppv-card__form .gc-button {
  width: 100%;
}

.gc-message-ppv-card__preview {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  margin: 14px 0 0;
  min-height: 180px;
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  border: 1px solid rgba(var(--gc-text-soft-rgb), 0.18);
  background:
    radial-gradient(circle at top right, rgba(var(--gc-accent-cyan-rgb), 0.08), transparent 32%),
    rgba(var(--gc-bg-rgb), 0.78);
}

.gc-message-ppv-card__preview::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(var(--gc-bg-rgb), 0.08), rgba(var(--gc-bg-rgb), 0.34));
  pointer-events: none;
}

.gc-message-ppv-card__preview img {
  display: block;
  width: 100%;
  max-height: 320px;
  object-fit: cover;
  filter: saturate(0.82) brightness(0.88);
  transform: scale(1.03);
}

.gc-message-ppv-card__preview-placeholder {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 6px;
  align-items: center;
  justify-content: center;
  padding: 28px 18px;
  text-align: center;
}

.gc-message-ppv-card__preview-placeholder strong {
  color: #f8fafc;
  font-size: 1rem;
}

.gc-message-ppv-card__preview-placeholder span {
  color: rgba(var(--gc-text-muted-rgb), 0.72);
  font-size: 0.88rem;
  line-height: 1.4;
}

.gc-message-ppv-card__preview-badge {
  position: absolute;
  top: 12px;
  right: 12px;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 30px;
  padding: 0 12px;
  border-radius: var(--gc-radius-pill);
  border: 1px solid rgba(var(--gc-text-soft-rgb), 0.22);
  background: rgba(var(--gc-bg-rgb), 0.84);
  color: #f8fafc;
  font-size: 0.76rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.gc-purchased-messages {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.gc-purchased-messages__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 18px;
}

.gc-purchased-message-card {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border-radius: calc(var(--gc-radius-scale, 1) * 24px);
  border: 1px solid rgba(var(--gc-border-rgb), 0.14);
  background: rgba(var(--gc-surface-2-rgb), 0.92);
  box-shadow: 0 18px 42px rgba(3, 8, 21, 0.24);
}

.gc-purchased-message-card__media {
  min-height: 180px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(180deg, rgba(255,255,255,0.04), rgba(255,255,255,0.02));
}

.gc-purchased-message-card__media img {
  width: 100%;
  height: 220px;
  object-fit: cover;
}

.gc-purchased-message-card__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 120px;
  min-height: 44px;
  padding: 0 14px;
  border-radius: var(--gc-radius-pill);
  border: 1px solid rgba(var(--gc-accent-rgb), 0.18);
  background: rgba(var(--gc-accent-rgb), 0.12);
  color: #dffdfa;
  font-weight: 800;
}

.gc-purchased-message-card__body {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 18px;
}

.gc-purchased-message-card__eyebrow {
  color: var(--gc-accent-cyan-soft);
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.gc-purchased-message-card__body h3,
.gc-purchased-message-card__body p {
  margin: 0;
}

.gc-purchased-message-card__body p,
.gc-purchased-message-card__meta {
  color: rgba(var(--gc-text-muted-rgb), 0.72);
}

.gc-purchased-message-card__meta,
.gc-purchased-message-card__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}

.gc-purchased-message-card__actions .gc-button {
  min-height: 40px;
  padding: 0 16px;
}

.gc-purchased-messages__empty {
  padding: 24px;
}

@media (max-width: 720px) {
  .gc-messages-compose__tool-row,
  .gc-messages-compose__attachment-preview-card,
  .gc-message-media__actions,
  .gc-purchased-message-card__actions {
    flex-direction: column;
    align-items: stretch;
    grid-template-columns: 1fr;
  }

  .gc-message-media__frame img,
  .gc-message-media__frame video,
  .gc-message-media__frame audio {
    max-width: 100%;
  }
}


/* v1.16.1 buyer media permission controls */
.gc-message-media-permissions {
  display: flex;
  flex-direction: column;
  gap: 14px;
  margin-bottom: 16px;
  padding: 16px;
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  border: 1px solid rgba(var(--gc-text-soft-rgb), 0.18);
  background: rgba(var(--gc-slate-rgb), 0.52);
}

.gc-message-media-permissions__head {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.gc-message-media-permissions__head strong {
  color: #f8fafc;
}

.gc-message-media-permissions__head span,
.gc-message-media-permissions__footer {
  color: rgba(var(--gc-text-muted-rgb), 0.72);
  font-size: 0.92rem;
}

.gc-message-media-permissions__options {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.gc-message-media-permissions__options label {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 42px;
  padding: 0 14px;
  border-radius: var(--gc-radius-pill);
  border: 1px solid rgba(var(--gc-text-soft-rgb), 0.18);
  background: rgba(var(--gc-bg-rgb), 0.42);
  color: #f8fafc;
  font-weight: 700;
}

.gc-message-media-permissions__options input {
  margin: 0;
}

.gc-message-media-permissions__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}

.gc-message-media-permissions__actions .gc-button {
  min-height: 40px;
  padding: 0 16px;
}

.gc-messages-compose__media-lock {
  margin: 0;
  color: rgba(248, 113, 113, 0.92);
  font-size: 0.92rem;
  font-weight: 700;
}

.gc-messages-compose__media-lock.is-open {
  color: rgba(var(--gc-accent-rgb), 0.92);
}

.gc-message-status-pill--subtle {
  border-color: rgba(var(--gc-text-soft-rgb), 0.18);
  background: rgba(var(--gc-text-soft-rgb), 0.12);
  color: #e2e8f0;
}

.gc-message-media-permissions__purchased {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
  align-items: center;
  padding: 12px 14px;
  border-radius: calc(var(--gc-radius-scale, 1) * 14px);
  border: 1px solid rgba(var(--gc-accent-rgb), 0.18);
  background: rgba(var(--gc-accent-rgb), 0.08);
  color: #dffdfa;
  font-size: 0.92rem;
}

.gc-message-media-permissions__free-note,
.gc-message-media-permissions__history-note {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
  align-items: center;
  padding: 12px 14px;
  border-radius: calc(var(--gc-radius-scale, 1) * 14px);
  font-size: 0.9rem;
  line-height: 1.45;
}

.gc-message-media-permissions__free-note {
  border: 1px solid rgba(var(--gc-accent-cyan-rgb), 0.18);
  background: rgba(8, 47, 73, 0.22);
  color: #dff7ff;
}

.gc-message-media-permissions__history-note {
  border: 1px solid rgba(251, 191, 36, 0.18);
  background: rgba(84, 52, 7, 0.22);
  color: #fef3c7;
}

.gc-message-media-permissions__free-note strong,
.gc-message-media-permissions__history-note strong {
  color: inherit;
}

.gc-message-media-permissions__free-note-copy {
  color: rgba(var(--gc-text-muted-rgb), 0.82);
}

.gc-message-media-permissions__footer {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  justify-content: space-between;
}

.gc-message-media-offer {
  display: flex;
  flex-direction: column;
  gap: 14px;
  margin-bottom: 16px;
  padding: 16px;
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  border: 1px solid rgba(var(--gc-text-soft-rgb), 0.18);
  background: rgba(var(--gc-slate-rgb), 0.52);
}

.gc-message-media-offer__head {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.gc-message-media-offer__toggle-row,
.gc-message-media-offer__fields {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.gc-message-media-offer__toggle {
  align-self: flex-start;
}

.gc-message-media-offer__head strong,
.gc-message-media-offer__price label {
  color: #f8fafc;
}

.gc-message-media-offer__head span,
.gc-message-media-offer__price span,
.gc-message-media-offer__footer {
  color: rgba(var(--gc-text-muted-rgb), 0.74);
  font-size: 0.92rem;
}

.gc-message-media-offer__price {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.gc-message-media-offer__price input {
  width: 100%;
  max-width: 220px;
  min-height: 44px;
  padding: 0 14px;
  border-radius: calc(var(--gc-radius-scale, 1) * 12px);
  border: 1px solid rgba(var(--gc-text-soft-rgb), 0.2);
  background: rgba(var(--gc-bg-rgb), 0.64);
  color: #f8fafc;
}

.gc-message-media-offer__price input::placeholder {
  color: rgba(var(--gc-text-muted-rgb), 0.42);
}

.gc-message-media-offer__footer {
  display: flex;
  justify-content: flex-start;
}

.gc-message-media-offer__fields[hidden] {
  display: none !important;
}

.gc-message-access-card {
  border-color: rgba(var(--gc-accent-rgb), 0.24);
  background:
    radial-gradient(circle at top right, rgba(var(--gc-accent-deep-rgb), 0.16), transparent 34%),
    rgba(var(--gc-surface-2-rgb), 0.88);
}

.gc-message-access-card.has-history-update {
  border-color: rgba(125, 211, 252, 0.22);
  background:
    radial-gradient(circle at top right, rgba(125, 211, 252, 0.10), transparent 34%),
    rgba(var(--gc-surface-2-rgb), 0.88);
}

.gc-message-access-card.is-outdated {
  border-color: rgba(248, 113, 113, 0.28);
  background:
    radial-gradient(circle at top right, rgba(248, 113, 113, 0.12), transparent 34%),
    rgba(30, 17, 28, 0.86);
}

.gc-message-access-card__pills {
  margin-top: 0;
  margin-bottom: 12px;
}

.gc-message-access-card__form {
  margin-top: 14px;
}

@media (max-width: 720px) {
  .gc-message-media-permissions__options,
  .gc-message-media-permissions__actions,
  .gc-message-media-permissions__footer,
  .gc-message-media-offer__footer {
    flex-direction: column;
    align-items: stretch;
  }

  .gc-message-media-permissions__options label {
    justify-content: flex-start;
  }

  .gc-message-media-offer__price input {
    max-width: 100%;
  }
}

/* v1.16.2 message media scaling, price clarity, and checkbox visibility */
.gc-message-media,
.gc-message-media__frame,
.gc-message-media__frame a {
  max-width: 100%;
}

.gc-message-media {
  overflow: hidden;
}

.gc-message-media__frame {
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border-radius: calc(var(--gc-radius-scale, 1) * 16px);
}

.gc-message-media__frame a {
  display: block;
}

.gc-message-media__frame img,
.gc-message-media__frame video {
  display: block;
  width: 100%;
  height: auto;
  max-width: 440px;
  max-height: min(56vh, 520px);
  object-fit: contain;
}

.gc-message-media__frame audio {
  width: 100%;
  max-width: 440px;
}

.gc-messages-compose__price {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.gc-messages-compose__price-help {
  color: rgba(var(--gc-text-muted-rgb), 0.72);
  font-size: 0.88rem;
  line-height: 1.45;
}

.gc-message-media-permissions__options input[type="checkbox"],
.gc-messages-compose__paid-toggle input[type="checkbox"] {
  appearance: auto !important;
  -webkit-appearance: checkbox !important;
  accent-color: var(--gc-accent);
  width: 18px;
  height: 18px;
  margin: 0;
  box-shadow: none !important;
}

@media (max-width: 720px) {
  .gc-message-media__frame img,
  .gc-message-media__frame video {
    max-width: 100%;
    max-height: min(48vh, 420px);
  }
}


/* v1.17.1 upload wait button state */
.gc-messages-compose__footer .gc-button.gc-button--upload-waiting,
.gc-messages-compose__footer .gc-button.gc-button--upload-error {
  border-color: rgba(248, 113, 113, 0.56);
  background: linear-gradient(135deg, #ef4444, #dc2626);
  color: #fff8f8;
  box-shadow: 0 16px 32px rgba(220, 38, 38, 0.24);
}

.gc-messages-compose__footer .gc-button.gc-button--upload-error {
  background: linear-gradient(135deg, #ef4444, #b91c1c);
}

.gc-messages-compose__footer .gc-button.gc-button--upload-waiting:hover,
.gc-messages-compose__footer .gc-button.gc-button--upload-waiting:focus-visible,
.gc-messages-compose__footer .gc-button.gc-button--upload-error:hover,
.gc-messages-compose__footer .gc-button.gc-button--upload-error:focus-visible {
  color: #fff8f8;
  transform: none;
  filter: none;
  border-color: rgba(252, 165, 165, 0.76);
  background: linear-gradient(135deg, #ef4444, #dc2626);
  box-shadow: 0 16px 32px rgba(220, 38, 38, 0.26);
}

.gc-messages-compose__footer .gc-button.gc-button--upload-error:hover,
.gc-messages-compose__footer .gc-button.gc-button--upload-error:focus-visible {
  background: linear-gradient(135deg, #ef4444, #b91c1c);
}

.gc-messages-compose__footer .gc-button.gc-button--upload-waiting[disabled],
.gc-messages-compose__footer .gc-button.gc-button--upload-error[disabled] {
  opacity: 1;
  cursor: not-allowed;
}

/* v1.18.2 foldable message control panels */
.gc-message-media-permissions.gc-message-fold-panel,
.gc-message-media-offer.gc-message-fold-panel,
.gc-messages-compose__price.gc-message-fold-panel {
  gap: 0;
  padding: 0;
  overflow: hidden;
}

.gc-messages-compose__price.gc-message-fold-panel {
  margin-top: 4px;
  border: 1px solid rgba(var(--gc-text-soft-rgb), 0.18);
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  background: rgba(var(--gc-slate-rgb), 0.44);
}

.gc-message-fold-panel__toggle {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  width: 100%;
  padding: 16px;
  border: 0;
  background: transparent;
  color: inherit;
  text-align: left;
  cursor: pointer;
}

.gc-message-fold-panel__toggle:hover {
  background: rgba(var(--gc-text-soft-rgb), 0.06);
}

.gc-message-fold-panel__toggle:focus-visible {
  outline: 2px solid rgba(var(--gc-accent-cyan-rgb), 0.45);
  outline-offset: -2px;
}

.gc-message-fold-panel__toggle-copy {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
}

.gc-message-fold-panel__toggle-title {
  color: #f8fafc;
  font-size: 0.98rem;
  line-height: 1.3;
}

.gc-message-fold-panel__toggle-subtitle {
  color: rgba(var(--gc-text-muted-rgb), 0.72);
  font-size: 0.92rem;
  line-height: 1.45;
}

.gc-message-fold-panel__toggle-meta {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin-left: auto;
}

.gc-message-fold-panel__toggle-state {
  color: rgba(var(--gc-text-muted-rgb), 0.78);
  font-size: 0.84rem;
  font-weight: 700;
  line-height: 1.45;
  text-align: right;
}

.gc-message-fold-panel__toggle-icon {
  position: relative;
  width: 32px;
  height: 32px;
  flex: 0 0 32px;
  border-radius: var(--gc-radius-pill);
  border: 1px solid rgba(var(--gc-text-soft-rgb), 0.18);
  background: rgba(var(--gc-bg-rgb), 0.42);
}

.gc-message-fold-panel__toggle-icon::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 8px;
  height: 8px;
  border-right: 2px solid #f8fafc;
  border-bottom: 2px solid #f8fafc;
  transform: translate(-50%, -65%) rotate(45deg);
  transition: transform 0.16s ease;
}

.gc-message-fold-panel.is-open .gc-message-fold-panel__toggle-icon::before {
  transform: translate(-50%, -35%) rotate(225deg);
}

.gc-message-fold-panel__body {
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding: 0 16px 16px;
}

.gc-message-fold-panel__body[hidden] {
  display: none !important;
}

.gc-message-fold-panel.is-open .gc-message-fold-panel__toggle {
  border-bottom: 1px solid rgba(var(--gc-text-soft-rgb), 0.12);
}

.gc-message-fold-panel .gc-message-media-permissions__head,
.gc-message-fold-panel .gc-message-media-offer__head {
  display: none;
}

.gc-message-fold-panel .gc-message-media-permissions__footer,
.gc-message-fold-panel .gc-message-media-offer__footer {
  margin-top: 2px;
}

@media (max-width: 720px) {
  .gc-message-fold-panel__toggle {
    flex-direction: column;
    align-items: stretch;
  }

  .gc-message-fold-panel__toggle-meta {
    justify-content: space-between;
    margin-left: 0;
  }

  .gc-message-fold-panel__toggle-state {
    text-align: left;
  }
}


/* v1.19.1 buyer media access revoke clarity */
.gc-button--danger-subtle {
  background: rgba(239, 68, 68, 0.12);
  color: #fecaca;
  border-color: rgba(248, 113, 113, 0.34);
  box-shadow: none;
}

.gc-button--danger-subtle:hover,
.gc-button--danger-subtle:focus-visible {
  color: #fff1f2;
  border-color: rgba(252, 165, 165, 0.58);
  background: rgba(239, 68, 68, 0.18);
  box-shadow: 0 14px 28px rgba(127, 29, 29, 0.22);
}

.gc-message-media-permissions__revoke {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 12px 14px;
  border-radius: calc(var(--gc-radius-scale, 1) * 14px);
  border: 1px solid rgba(248, 113, 113, 0.18);
  background: rgba(127, 29, 29, 0.14);
}

.gc-message-media-permissions__revoke-note {
  color: rgba(254, 226, 226, 0.88);
  font-size: 0.9rem;
  line-height: 1.45;
}

.gc-message-media-permissions__revoke-list {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.gc-message-media-permissions__revoke-chip {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 44px;
  padding: 8px 10px 8px 12px;
  border-radius: calc(var(--gc-radius-scale, 1) * 14px);
  border: 1px solid rgba(248, 113, 113, 0.2);
  background: rgba(var(--gc-slate-rgb), 0.58);
  color: #fff1f2;
}

.gc-message-media-permissions__revoke-chip strong {
  color: #fff1f2;
  font-size: 0.9rem;
}

.gc-message-media-permissions__revoke-chip .gc-button {
  min-height: 34px;
  padding: 0 12px;
  font-size: 0.82rem;
}

.gc-message-access-card.is-partially-revoked {
  border-color: rgba(251, 191, 36, 0.24);
  background:
    radial-gradient(circle at top right, rgba(251, 191, 36, 0.12), transparent 34%),
    rgba(30, 24, 14, 0.88);
}

.gc-message-access-card.is-revoked {
  border-color: rgba(248, 113, 113, 0.26);
  background:
    radial-gradient(circle at top right, rgba(248, 113, 113, 0.14), transparent 34%),
    rgba(30, 17, 28, 0.88);
}

@media (max-width: 720px) {
  .gc-message-media-permissions__revoke-list {
    flex-direction: column;
    align-items: stretch;
  }

  .gc-message-media-permissions__revoke-chip {
    justify-content: space-between;
  }
}


/* v1.20.0 account scroll + reply access polish */
.gc-messages-thread-list {
  align-content: start;
  grid-auto-rows: max-content;
}

.gc-messages-thread-row {
  min-height: 78px;
  height: auto;
  align-self: start;
}

.gc-messages-thread-row__body {
  overflow: hidden;
}

.gc-messages-compose__price input,
.gc-message-media-offer__price input,
.gc-messages-compose input[name="gc_message_price"],
.gc-message-media-offer input[name="gc_media_access_price"] {
  -webkit-appearance: none;
  appearance: none;
  background: var(--gc-surface-3-solid) !important;
  background-color: var(--gc-surface-3-solid) !important;
  background-image: none !important;
  color: #f8fafc !important;
  -webkit-text-fill-color: #f8fafc !important;
  caret-color: #f8fafc !important;
  color-scheme: dark;
  background-clip: padding-box;
}

.gc-messages-compose__price input:hover,
.gc-messages-compose__price input:active,
.gc-messages-compose__price input:focus,
.gc-messages-compose__price input:focus-visible,
.gc-message-media-offer__price input:hover,
.gc-message-media-offer__price input:active,
.gc-message-media-offer__price input:focus,
.gc-message-media-offer__price input:focus-visible {
  background: var(--gc-surface-3-solid) !important;
  background-color: var(--gc-surface-3-solid) !important;
  background-image: none !important;
  color: #f8fafc !important;
  -webkit-text-fill-color: #f8fafc !important;
  box-shadow: inset 0 0 0 1000px var(--gc-surface-3-solid), 0 0 0 1px rgba(var(--gc-accent-cyan-rgb), 0.28) !important;
  -webkit-box-shadow: inset 0 0 0 1000px var(--gc-surface-3-solid), 0 0 0 1px rgba(var(--gc-accent-cyan-rgb), 0.28) !important;
  outline: none !important;
}

.gc-messages-compose__price input::placeholder,
.gc-message-media-offer__price input::placeholder {
  color: rgba(var(--gc-text-muted-rgb), 0.42);
}

.gc-messages-compose__price input:-webkit-autofill,
.gc-messages-compose__price input:-webkit-autofill:hover,
.gc-messages-compose__price input:-webkit-autofill:focus,
.gc-message-media-offer__price input:-webkit-autofill,
.gc-message-media-offer__price input:-webkit-autofill:hover,
.gc-message-media-offer__price input:-webkit-autofill:focus {
  -webkit-text-fill-color: #f8fafc !important;
  box-shadow: inset 0 0 0 1000px var(--gc-surface-3-solid), 0 0 0 1px rgba(var(--gc-accent-cyan-rgb), 0.28) !important;
  -webkit-box-shadow: inset 0 0 0 1000px var(--gc-surface-3-solid), 0 0 0 1px rgba(var(--gc-accent-cyan-rgb), 0.28) !important;
}

.gc-message-media-permissions__text-off-note {
  border-color: rgba(248, 113, 113, 0.28);
}


/* v1.21.0 paid buyer text + dark price field polish */
.gc-message-media-offer__price input,
.gc-message-paid-text__price input,
.gc-messages-compose__price input,
.gc-messages-compose input[name="gc_message_price"],
.gc-message-media-offer input[name="gc_media_access_price"],
.gc-message-paid-text input[name="gc_buyer_paid_text_price"] {
  background: var(--gc-surface-3-solid) !important;
  background-color: var(--gc-surface-3-solid) !important;
  background-image: none !important;
  color: #f8fafc !important;
  -webkit-text-fill-color: #f8fafc !important;
  caret-color: #f8fafc !important;
  border-color: rgba(var(--gc-text-soft-rgb), 0.28) !important;
  box-shadow: inset 0 0 0 1000px var(--gc-surface-3-solid) !important;
  -webkit-box-shadow: inset 0 0 0 1000px var(--gc-surface-3-solid) !important;
}

.gc-message-media-offer__price input:hover,
.gc-message-media-offer__price input:active,
.gc-message-media-offer__price input:focus,
.gc-message-media-offer__price input:focus-visible,
.gc-message-paid-text__price input:hover,
.gc-message-paid-text__price input:active,
.gc-message-paid-text__price input:focus,
.gc-message-paid-text__price input:focus-visible,
.gc-messages-compose__price input:hover,
.gc-messages-compose__price input:active,
.gc-messages-compose__price input:focus,
.gc-messages-compose__price input:focus-visible {
  box-shadow: inset 0 0 0 1000px var(--gc-surface-3-solid), 0 0 0 1px rgba(var(--gc-accent-cyan-rgb), 0.28) !important;
  -webkit-box-shadow: inset 0 0 0 1000px var(--gc-surface-3-solid), 0 0 0 1px rgba(var(--gc-accent-cyan-rgb), 0.28) !important;
}

.gc-message-media-offer__price input:-webkit-autofill,
.gc-message-media-offer__price input:-webkit-autofill:hover,
.gc-message-media-offer__price input:-webkit-autofill:focus,
.gc-message-paid-text__price input:-webkit-autofill,
.gc-message-paid-text__price input:-webkit-autofill:hover,
.gc-message-paid-text__price input:-webkit-autofill:focus,
.gc-messages-compose__price input:-webkit-autofill,
.gc-messages-compose__price input:-webkit-autofill:hover,
.gc-messages-compose__price input:-webkit-autofill:focus {
  -webkit-text-fill-color: #f8fafc !important;
  box-shadow: inset 0 0 0 1000px var(--gc-surface-3-solid), 0 0 0 1px rgba(var(--gc-accent-cyan-rgb), 0.28) !important;
  -webkit-box-shadow: inset 0 0 0 1000px var(--gc-surface-3-solid), 0 0 0 1px rgba(var(--gc-accent-cyan-rgb), 0.28) !important;
}

.gc-messages-compose__reply-note {
  margin: 0 0 14px;
}

.gc-messages-compose__reply-note strong {
  display: inline-flex;
  margin-right: 6px;
}

.gc-messages-compose__reply-note--paid {
  border-color: rgba(var(--gc-accent-cyan-rgb), 0.28);
}

.gc-message-paid-text-pill {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 8px 12px;
  border-radius: var(--gc-radius-pill);
  border: 1px solid rgba(var(--gc-accent-cyan-rgb), 0.22);
  background: rgba(var(--gc-bg-rgb), 0.42);
  color: #dbeafe;
  font-size: 0.84rem;
  font-weight: 700;
  margin: 0 0 10px;
}

.gc-message-paid-text-pill strong {
  color: #f8fafc;
}


/* v1.22.1 scrollable messenger shell + creator header settings */
body.gc-account-page .gc-messages-shell,
body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell {
  height: min(78vh, 920px);
  max-height: min(78vh, 920px);
}

body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages,
body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-account-inline-shell__body,
body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell,
body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell__rail,
body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell__panel,
body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-thread-list,
body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__timeline {
  min-height: 0 !important;
}

body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell__rail,
body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell__panel {
  height: 100%;
}

body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-thread-list,
body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__timeline {
  overflow: auto !important;
}

body.gc-account-page .gc-messages-shell .gc-message-thread-settings[hidden] {
  display: none !important;
}

body.gc-account-page .gc-messages-shell .gc-message-thread-settings {
  padding: 0 22px 14px;
  border-top: 1px solid rgba(var(--gc-text-soft-rgb), 0.12);
  background: linear-gradient(180deg, rgba(var(--gc-bg-rgb), 0.96), rgba(var(--gc-bg-rgb), 0.94));
}

body.gc-account-page .gc-messages-shell .gc-message-thread-settings .gc-message-media-permissions,
body.gc-account-page .gc-messages-shell .gc-message-thread-settings .gc-message-paid-text,
body.gc-account-page .gc-messages-shell .gc-message-thread-settings .gc-message-media-offer {
  margin-top: 14px;
}

body.gc-account-page .gc-messages-shell .gc-messages-panel__icon-button {
  width: 46px;
  min-width: 46px;
  height: 46px;
  padding: 0;
  border-radius: var(--gc-radius-pill);
}

body.gc-account-page .gc-messages-shell .gc-messages-panel__icon-button-mark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  font-size: 1.15rem;
  line-height: 1;
}

body.gc-account-page .gc-messages-shell .gc-messages-panel__actions--settings-only {
  margin-left: auto;
}

body.gc-account-page .gc-messages-shell input[name="gc_message_price"],
body.gc-account-page .gc-messages-shell input[name="gc_media_access_price"],
body.gc-account-page .gc-messages-shell input[name="gc_buyer_paid_text_price"],
body.gc-account-page .gc-messages-shell .gc-messages-shell__search,
body.gc-account-page .gc-messages-shell .gc-messages-shell__contact-search,
body.gc-account-page .gc-messages-shell textarea[name="gc_message_body"] {
  -webkit-appearance: none !important;
  appearance: none !important;
  background: var(--gc-surface-3-solid) !important;
  background-color: var(--gc-surface-3-solid) !important;
  background-image: none !important;
  color: #f8fafc !important;
  -webkit-text-fill-color: #f8fafc !important;
  caret-color: #f8fafc !important;
  border-color: rgba(var(--gc-text-soft-rgb), 0.28) !important;
  box-shadow: inset 0 0 0 1000px var(--gc-surface-3-solid) !important;
  -webkit-box-shadow: inset 0 0 0 1000px var(--gc-surface-3-solid) !important;
  background-clip: padding-box !important;
}

body.gc-account-page .gc-messages-shell input[name="gc_message_price"]:hover,
body.gc-account-page .gc-messages-shell input[name="gc_message_price"]:active,
body.gc-account-page .gc-messages-shell input[name="gc_message_price"]:focus,
body.gc-account-page .gc-messages-shell input[name="gc_message_price"]:focus-visible,
body.gc-account-page .gc-messages-shell input[name="gc_media_access_price"]:hover,
body.gc-account-page .gc-messages-shell input[name="gc_media_access_price"]:active,
body.gc-account-page .gc-messages-shell input[name="gc_media_access_price"]:focus,
body.gc-account-page .gc-messages-shell input[name="gc_media_access_price"]:focus-visible,
body.gc-account-page .gc-messages-shell input[name="gc_buyer_paid_text_price"]:hover,
body.gc-account-page .gc-messages-shell input[name="gc_buyer_paid_text_price"]:active,
body.gc-account-page .gc-messages-shell input[name="gc_buyer_paid_text_price"]:focus,
body.gc-account-page .gc-messages-shell input[name="gc_buyer_paid_text_price"]:focus-visible,
body.gc-account-page .gc-messages-shell .gc-messages-shell__search:hover,
body.gc-account-page .gc-messages-shell .gc-messages-shell__search:active,
body.gc-account-page .gc-messages-shell .gc-messages-shell__search:focus,
body.gc-account-page .gc-messages-shell .gc-messages-shell__search:focus-visible,
body.gc-account-page .gc-messages-shell .gc-messages-shell__contact-search:hover,
body.gc-account-page .gc-messages-shell .gc-messages-shell__contact-search:active,
body.gc-account-page .gc-messages-shell .gc-messages-shell__contact-search:focus,
body.gc-account-page .gc-messages-shell .gc-messages-shell__contact-search:focus-visible,
body.gc-account-page .gc-messages-shell textarea[name="gc_message_body"]:hover,
body.gc-account-page .gc-messages-shell textarea[name="gc_message_body"]:active,
body.gc-account-page .gc-messages-shell textarea[name="gc_message_body"]:focus,
body.gc-account-page .gc-messages-shell textarea[name="gc_message_body"]:focus-visible {
  background: var(--gc-surface-3-solid) !important;
  background-color: var(--gc-surface-3-solid) !important;
  background-image: none !important;
  color: #f8fafc !important;
  -webkit-text-fill-color: #f8fafc !important;
  box-shadow: inset 0 0 0 1000px var(--gc-surface-3-solid), 0 0 0 1px rgba(var(--gc-accent-cyan-rgb), 0.28) !important;
  -webkit-box-shadow: inset 0 0 0 1000px var(--gc-surface-3-solid), 0 0 0 1px rgba(var(--gc-accent-cyan-rgb), 0.28) !important;
  outline: none !important;
}

@media (max-width: 980px) {
  body.gc-account-page .gc-messages-shell,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell {
    height: min(86vh, 980px);
    max-height: min(86vh, 980px);
  }

  body.gc-account-page .gc-messages-shell .gc-message-thread-settings {
    padding-left: 14px;
    padding-right: 14px;
  }
}


/* v1.22.1 thread settings drawer + dark price hold */
body.gc-account-page .gc-messages-shell .gc-messages-shell__panel {
  position: relative;
}

body.gc-account-page .gc-messages-shell .gc-messages-panel__actions--settings-only,
body.gc-account-page .gc-messages-shell .gc-messages-panel__icon-button {
  position: relative;
  z-index: 26;
}

body.gc-account-page .gc-messages-shell .gc-message-thread-settings {
  position: absolute;
  top: 92px;
  right: 22px;
  width: min(520px, calc(100% - 44px));
  max-height: min(72vh, calc(100% - 176px));
  overflow: auto;
  overscroll-behavior: contain;
  padding: 18px 22px 18px;
  border: 1px solid rgba(var(--gc-text-soft-rgb), 0.16);
  border-radius: calc(var(--gc-radius-scale, 1) * 24px);
  box-shadow: 0 26px 48px rgba(var(--gc-deep-rgb), 0.46);
  z-index: 24;
}

body.gc-account-page .gc-messages-shell .gc-message-thread-settings .gc-message-media-permissions:first-child,
body.gc-account-page .gc-messages-shell .gc-message-thread-settings .gc-message-paid-text:first-child,
body.gc-account-page .gc-messages-shell .gc-message-thread-settings .gc-message-media-offer:first-child {
  margin-top: 0;
}

body.gc-account-page .gc-messages-shell input[name="gc_message_price"],
body.gc-account-page .gc-messages-shell input[name="gc_media_access_price"],
body.gc-account-page .gc-messages-shell input[name="gc_buyer_paid_text_price"],
body.gc-account-page .gc-messages-shell .gc-messages-shell__search,
body.gc-account-page .gc-messages-shell .gc-messages-shell__contact-search,
body.gc-account-page .gc-messages-shell textarea[name="gc_message_body"] {
  color-scheme: dark !important;
}

body.gc-account-page .gc-messages-shell input[name="gc_message_price"]:not(:focus):not(:hover),
body.gc-account-page .gc-messages-shell input[name="gc_media_access_price"]:not(:focus):not(:hover),
body.gc-account-page .gc-messages-shell input[name="gc_buyer_paid_text_price"]:not(:focus):not(:hover) {
  background: var(--gc-surface-3-solid) !important;
  background-color: var(--gc-surface-3-solid) !important;
  background-image: none !important;
  -webkit-text-fill-color: #f8fafc !important;
  box-shadow: inset 0 0 0 1000px var(--gc-surface-3-solid) !important;
  -webkit-box-shadow: inset 0 0 0 1000px var(--gc-surface-3-solid) !important;
}

@media (max-width: 980px) {
  body.gc-account-page .gc-messages-shell .gc-message-thread-settings {
    position: static;
    top: auto;
    right: auto;
    width: auto;
    max-height: min(50vh, 420px);
    border-left: 0;
    border-right: 0;
    border-radius: 0;
    box-shadow: none;
  }
}


/* v1.22.2 fixed messenger panel scroll/composer visibility */
body.gc-account-page.gc-messages-page .gc-messages-shell:not(.gc-messages-shell--thread-popup),
body.gc-store-manager-page.gc-messages-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) {
  align-items: stretch !important;
}

body.gc-account-page.gc-messages-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-shell__rail,
body.gc-store-manager-page.gc-messages-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-shell__rail {
  display: flex !important;
  flex-direction: column !important;
  min-height: 0 !important;
  height: 100% !important;
  overflow: hidden !important;
}

body.gc-account-page.gc-messages-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-thread-list,
body.gc-store-manager-page.gc-messages-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-thread-list {
  flex: 1 1 auto !important;
  min-height: 0 !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
}

body.gc-account-page.gc-messages-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-shell__panel,
body.gc-store-manager-page.gc-messages-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-shell__panel {
  display: grid !important;
  grid-template-rows: auto minmax(0, 1fr) auto !important;
  align-content: stretch !important;
  min-height: 0 !important;
  height: 100% !important;
  overflow: hidden !important;
}

body.gc-account-page.gc-messages-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-panel__header,
body.gc-account-page.gc-messages-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose,
body.gc-store-manager-page.gc-messages-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-panel__header,
body.gc-store-manager-page.gc-messages-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose {
  flex: 0 0 auto !important;
}

body.gc-account-page.gc-messages-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-panel__timeline,
body.gc-store-manager-page.gc-messages-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-panel__timeline {
  flex: 1 1 auto !important;
  min-height: 0 !important;
  height: auto !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
}


/* v1.22.3 message settings compatibility */
body.gc-account-page .gc-messages-shell .gc-messages-panel__settings[hidden] {
  display: none !important;
}

body.gc-account-page .gc-messages-shell .gc-messages-panel__settings {
  padding: 0 22px 14px;
  border-top: 1px solid rgba(var(--gc-text-soft-rgb), 0.12);
  background: linear-gradient(180deg, rgba(var(--gc-bg-rgb), 0.96), rgba(var(--gc-bg-rgb), 0.94));
  position: absolute;
  top: 92px;
  right: 22px;
  width: min(520px, calc(100% - 44px));
  max-height: min(72vh, calc(100% - 176px));
  overflow: auto;
  overscroll-behavior: contain;
  padding: 18px 22px 18px;
  border: 1px solid rgba(var(--gc-text-soft-rgb), 0.16);
  border-radius: calc(var(--gc-radius-scale, 1) * 24px);
  box-shadow: 0 26px 48px rgba(var(--gc-deep-rgb), 0.46);
  z-index: 24;
}

body.gc-account-page .gc-messages-shell .gc-messages-panel__settings .gc-message-media-permissions,
body.gc-account-page .gc-messages-shell .gc-messages-panel__settings .gc-message-paid-text,
body.gc-account-page .gc-messages-shell .gc-messages-panel__settings .gc-message-media-offer {
  margin-top: 14px;
}

body.gc-account-page .gc-messages-shell .gc-messages-panel__settings .gc-message-media-permissions:first-child,
body.gc-account-page .gc-messages-shell .gc-messages-panel__settings .gc-message-paid-text:first-child,
body.gc-account-page .gc-messages-shell .gc-messages-panel__settings .gc-message-media-offer:first-child {
  margin-top: 0;
}

@media (max-width: 980px) {
  body.gc-account-page .gc-messages-shell .gc-messages-panel__settings {
    position: static;
    top: auto;
    right: auto;
    width: auto;
    max-height: min(50vh, 420px);
    border-left: 0;
    border-right: 0;
    border-radius: 0;
    box-shadow: none;
    padding-left: 14px;
    padding-right: 14px;
  }
}


/* v1.22.4 compose overflow safety for PPV/media previews */
body.gc-account-page.gc-messages-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose,
body.gc-store-manager-page.gc-messages-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose {
  min-height: 0 !important;
  max-height: min(48vh, 430px) !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  overscroll-behavior: contain !important;
  scrollbar-gutter: stable both-edges;
}

body.gc-account-page.gc-messages-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__footer,
body.gc-store-manager-page.gc-messages-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__footer {
  position: sticky;
  bottom: 0;
  z-index: 2;
  margin-top: auto;
  padding-top: 14px;
  background: linear-gradient(180deg, rgba(var(--gc-bg-rgb), 0) 0%, rgba(var(--gc-bg-rgb), 0.92) 22%, rgba(var(--gc-bg-rgb), 0.98) 100%) !important;
}

body.gc-account-page.gc-messages-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__attachment-thumb,
body.gc-store-manager-page.gc-messages-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__attachment-thumb {
  max-height: min(28vh, 240px) !important;
}

/* v1.23.0 larger account messenger viewport + PPV checkbox inside PPV settings */
body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell,
body.gc-account-page.gc-messages-page .gc-account-inline-shell .gc-messages-shell,
.gc-messages-shell:not(.gc-messages-shell--thread-popup) {
  min-height: min(84vh, 980px);
}

.gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-panel__header {
  padding-top: 20px;
  padding-bottom: 16px;
}

.gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-panel__timeline {
  padding-top: 18px;
  padding-bottom: 18px;
}

.gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose {
  padding-top: 14px;
  padding-bottom: 16px;
}

.gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose textarea {
  min-height: 96px;
  max-height: min(22vh, 172px);
}

.gc-messages-compose__price.gc-message-fold-panel {
  margin-top: 8px;
}

.gc-messages-compose__price.gc-message-fold-panel.is-ppv-on {
  border-color: rgba(var(--gc-accent-cyan-rgb), 0.42);
  box-shadow: 0 18px 34px rgba(6, 182, 212, 0.10);
}

.gc-messages-compose__price.gc-message-fold-panel .gc-message-fold-panel__toggle.has-state .gc-message-fold-panel__toggle-state {
  color: #99f6e4;
}

.gc-messages-compose__paid-toggle--panel {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  width: 100%;
  padding: 14px 16px;
  border: 1px solid rgba(var(--gc-text-soft-rgb), 0.18);
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  background: rgba(var(--gc-bg-rgb), 0.52);
  color: #f8fafc;
  font-weight: 800;
}

.gc-messages-compose__paid-toggle--panel input {
  flex: 0 0 18px;
  width: 18px;
  height: 18px;
  margin: 2px 0 0;
  accent-color: var(--gc-accent-deep);
}

.gc-messages-compose__paid-toggle--panel span {
  display: inline-flex;
  align-items: center;
  min-width: 0;
}

.gc-messages-compose__paid-toggle--panel.is-checked {
  border-color: rgba(var(--gc-accent-cyan-rgb), 0.52);
  background: linear-gradient(135deg, rgba(var(--gc-accent-cyan-rgb), 0.18), rgba(13, 148, 136, 0.14));
}

.gc-messages-compose__price-note {
  display: block;
  margin: -2px 0 0;
  color: rgba(var(--gc-text-muted-rgb), 0.76);
  font-size: 0.92rem;
  line-height: 1.55;
}

.gc-messages-compose__price-fields {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.gc-messages-compose__price-fields[hidden] {
  display: none !important;
}


/* v1.23.1 account messenger viewport sync with store-manager */
body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell,
body.gc-account-page.gc-messages-page .gc-account-inline-shell .gc-messages-shell {
  height: min(86vh, 1020px) !important;
  max-height: min(86vh, 1020px) !important;
}

body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-panel__header,
body.gc-account-page.gc-messages-page .gc-account-inline-shell .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-panel__header {
  padding-top: 20px !important;
  padding-bottom: 16px !important;
}

body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-panel__timeline,
body.gc-account-page.gc-messages-page .gc-account-inline-shell .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-panel__timeline {
  padding-top: 18px !important;
  padding-bottom: 18px !important;
}

body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose,
body.gc-account-page.gc-messages-page .gc-account-inline-shell .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose {
  max-height: min(40vh, 360px) !important;
  padding-top: 14px !important;
  padding-bottom: 16px !important;
}

body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose textarea,
body.gc-account-page.gc-messages-page .gc-account-inline-shell .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose textarea {
  min-height: 96px !important;
  max-height: min(20vh, 160px) !important;
}


/* v1.23.2 — simplified onboarding / WCFM Membership dark styling */
.gc-models-panel__application .gc-wcfm-membership-registration,
.gc-models-panel__application .gc-wcfm-membership-registration form,
.gc-models-panel__application .gc-wcfm-membership-registration .wcfm_membership_box,
.gc-models-panel__application .gc-wcfm-membership-registration .wcfm-membership-wrapper {
  display: grid;
  gap: 16px;
}

.gc-models-panel__application .gc-wcfm-membership-registration p,
.gc-models-panel__application .gc-wcfm-membership-registration .wcfm_membership_box p,
.gc-models-panel__application .gc-wcfm-membership-registration .wcfm-membership-wrapper p {
  margin: 0;
}

.gc-models-panel__application .gc-wcfm-membership-registration label,
.gc-models-panel__application .gc-wcfm-membership-registration .wcfm_title,
.gc-models-panel__application .gc-wcfm-membership-registration .wcfmmp_become_vendor_label {
  color: rgba(var(--gc-text-rgb), 0.92) !important;
  font-weight: 700;
}

.gc-models-panel__application .gc-wcfm-membership-registration input[type="text"],
.gc-models-panel__application .gc-wcfm-membership-registration input[type="email"],
.gc-models-panel__application .gc-wcfm-membership-registration input[type="password"],
.gc-models-panel__application .gc-wcfm-membership-registration input[type="number"],
.gc-models-panel__application .gc-wcfm-membership-registration input[type="url"],
.gc-models-panel__application .gc-wcfm-membership-registration input[type="tel"],
.gc-models-panel__application .gc-wcfm-membership-registration select,
.gc-models-panel__application .gc-wcfm-membership-registration textarea,
.gc-models-panel__application .gc-wcfm-membership-registration .select2-container--default .select2-selection--single,
.gc-models-panel__application .gc-wcfm-membership-registration .select2-container--default .select2-selection--multiple {
  min-height: 52px !important;
  width: 100% !important;
  padding: 0 16px !important;
  border-radius: calc(var(--gc-radius-scale, 1) * 16px) !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  background: rgba(255, 255, 255, 0.05) !important;
  color: #fff !important;
  box-shadow: none !important;
}

.gc-models-panel__application .gc-wcfm-membership-registration textarea {
  min-height: 148px !important;
  padding: 14px 16px !important;
}

.gc-models-panel__application .gc-wcfm-membership-registration input::placeholder,
.gc-models-panel__application .gc-wcfm-membership-registration textarea::placeholder {
  color: rgba(var(--gc-text-muted-rgb), 0.54) !important;
}

.gc-models-panel__application .gc-wcfm-membership-registration input:focus,
.gc-models-panel__application .gc-wcfm-membership-registration select:focus,
.gc-models-panel__application .gc-wcfm-membership-registration textarea:focus,
.gc-models-panel__application .gc-wcfm-membership-registration .select2-container--default.select2-container--focus .select2-selection--multiple,
.gc-models-panel__application .gc-wcfm-membership-registration .select2-container--default.select2-container--open .select2-selection--single {
  outline: none !important;
  border-color: rgba(var(--gc-accent-rgb), 0.6) !important;
  box-shadow: 0 0 0 4px rgba(var(--gc-accent-rgb), 0.12) !important;
}

.gc-models-panel__application .gc-wcfm-membership-registration input:-webkit-autofill,
.gc-models-panel__application .gc-wcfm-membership-registration input:-webkit-autofill:hover,
.gc-models-panel__application .gc-wcfm-membership-registration input:-webkit-autofill:focus,
.gc-models-panel__application .gc-wcfm-membership-registration textarea:-webkit-autofill,
.gc-models-panel__application .gc-wcfm-membership-registration select:-webkit-autofill {
  -webkit-text-fill-color: #fff !important;
  box-shadow: 0 0 0 1000px rgba(var(--gc-bg-alt-rgb), 0.98) inset !important;
  transition: background-color 9999s ease-out 0s;
}

.gc-models-panel__application .gc-wcfm-membership-registration input[type="checkbox"],
.gc-models-panel__application .gc-wcfm-membership-registration input[type="radio"] {
  accent-color: var(--gc-accent);
}

.gc-models-panel__application .gc-wcfm-membership-registration button,
.gc-models-panel__application .gc-wcfm-membership-registration input[type="submit"],
.gc-models-panel__application .gc-wcfm-membership-registration .button,
.gc-models-panel__application .gc-wcfm-membership-registration .wcfm_submit_button,
.gc-models-panel__application .gc-wcfm-membership-registration .wcfm_email_verified_button {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 46px !important;
  padding: 0 18px !important;
  border-radius: calc(var(--gc-radius-scale, 1) * 14px) !important;
  border: 1px solid rgba(var(--gc-accent-rgb), 0.34) !important;
  background: linear-gradient(135deg, var(--gc-accent), var(--gc-accent-strong)) !important;
  color: var(--gc-deep) !important;
  font-weight: 800 !important;
  letter-spacing: 0.01em;
  box-shadow: 0 14px 28px rgba(var(--gc-accent-rgb), 0.18) !important;
  cursor: pointer;
}

.gc-models-panel__application .gc-wcfm-membership-registration button:hover,
.gc-models-panel__application .gc-wcfm-membership-registration input[type="submit"]:hover,
.gc-models-panel__application .gc-wcfm-membership-registration .button:hover,
.gc-models-panel__application .gc-wcfm-membership-registration .wcfm_submit_button:hover,
.gc-models-panel__application .gc-wcfm-membership-registration .wcfm_email_verified_button:hover {
  color: var(--gc-deep) !important;
  transform: translateY(-1px);
  box-shadow: 0 18px 36px rgba(var(--gc-accent-rgb), 0.24) !important;
}

.gc-models-panel__application .gc-wcfm-membership-registration .wcfm_email_verified {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
}

.gc-models-panel__application .gc-wcfm-membership-registration .wcfm_email_verified input {
  margin: 0 !important;
}

.gc-models-panel__application .gc-wcfm-membership-registration .wcfm-message,
.gc-models-panel__application .gc-wcfm-membership-registration .woocommerce-message,
.gc-models-panel__application .gc-wcfm-membership-registration .woocommerce-error,
.gc-models-panel__application .gc-wcfm-membership-registration .woocommerce-info,
.gc-models-panel__application .gc-wcfm-membership-registration .wcfm_email_verified_text,
.gc-models-panel__application .gc-wcfm-membership-registration .wcfm_membership_registration_msg,
.gc-models-panel__application .gc-email-code-hint {
  display: grid;
  gap: 8px;
  padding: 14px 16px !important;
  border-radius: calc(var(--gc-radius-scale, 1) * 18px) !important;
  border: 1px solid rgba(var(--gc-border-rgb), 0.14) !important;
  background: rgba(255, 255, 255, 0.04) !important;
  color: rgba(var(--gc-text-rgb), 0.86) !important;
}

.gc-models-panel__application .gc-wcfm-membership-registration .woocommerce-error,
.gc-models-panel__application .gc-wcfm-membership-registration .wcfm-error,
.gc-models-panel__application .gc-wcfm-membership-registration .wcfm_membership_registration_msg.wcfm-error {
  border-color: rgba(239, 68, 68, 0.24) !important;
  background: linear-gradient(180deg, rgba(60, 16, 16, 0.8), rgba(23, 10, 18, 0.96)) !important;
}

.gc-models-panel__application .gc-email-code-hint {
  font-size: 0.94rem;
  line-height: 1.6;
}

.gc-models-panel__application .gc-wcfm-membership-registration .select2-container--default .select2-selection--single .select2-selection__rendered,
.gc-models-panel__application .gc-wcfm-membership-registration .select2-container--default .select2-selection--multiple .select2-selection__choice,
.gc-models-panel__application .gc-wcfm-membership-registration .select2-container--default .select2-selection--single .select2-selection__placeholder {
  color: #fff !important;
}

@media (max-width: 767px) {
  .gc-models-panel__application .gc-wcfm-membership-registration .wcfm_email_verified {
    grid-template-columns: minmax(0, 1fr);
  }

  .gc-models-panel__application .gc-wcfm-membership-registration button,
  .gc-models-panel__application .gc-wcfm-membership-registration input[type="submit"],
  .gc-models-panel__application .gc-wcfm-membership-registration .button,
  .gc-models-panel__application .gc-wcfm-membership-registration .wcfm_submit_button,
  .gc-models-panel__application .gc-wcfm-membership-registration .wcfm_email_verified_button {
    width: 100%;
  }
}

/* v1.23.3 — membership form integration + onboarding shell styling */
.gc-models-panel__application .gc-wcfm-membership-registration #wcfm_membership_container,
.gc-models-panel__application .gc-wcfm-membership-registration .wcfm-membership-wrapper,
.gc-models-panel__application .gc-wcfm-membership-registration .wcfm_membership_box,
.gc-models-panel__application .gc-wcfm-membership-registration .wcfm_membership_box_wrraper,
.gc-models-panel__application .gc-wcfm-membership-registration .wcfm_membership_box_head,
.gc-models-panel__application .gc-wcfm-membership-registration .wcfm_membership_box_body,
.gc-models-panel__application .gc-wcfm-membership-registration .wcfm_membership_box_foot {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}

.gc-models-panel__application .gc-wcfm-membership-registration #wcfm_membership_container p.wcfm_title,
.gc-models-panel__application .gc-wcfm-membership-registration #wcfm_membership_container span.wcfm_title,
.gc-models-panel__application .gc-wcfm-membership-registration p.wcfm_title,
.gc-models-panel__application .gc-wcfm-membership-registration span.wcfm_title {
  width: 100% !important;
  float: none !important;
  display: block !important;
  margin: 0 0 8px !important;
  color: rgba(var(--gc-text-rgb), 0.92) !important;
}

.gc-models-panel__application .gc-wcfm-membership-registration #wcfm_membership_container p.description,
.gc-models-panel__application .gc-wcfm-membership-registration .description {
  margin: -2px 0 14px !important;
  color: rgba(191, 207, 232, 0.72) !important;
  font-style: normal !important;
}

.gc-models-panel__application .gc-wcfm-membership-registration .select2-container {
  width: 100% !important;
  margin: 0 0 14px !important;
  box-shadow: none !important;
}

.gc-models-panel__application .gc-wcfm-membership-registration .select2-container .select2-selection {
  min-height: 52px !important;
  border-radius: calc(var(--gc-radius-scale, 1) * 16px) !important;
  background: rgba(255, 255, 255, 0.05) !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  box-shadow: none !important;
}

.gc-models-panel__application .gc-wcfm-membership-registration .select2-container .select2-selection__rendered {
  line-height: 50px !important;
}

.gc-models-panel__application .gc-wcfm-membership-registration input[type="text"],
.gc-models-panel__application .gc-wcfm-membership-registration input[type="email"],
.gc-models-panel__application .gc-wcfm-membership-registration input[type="password"],
.gc-models-panel__application .gc-wcfm-membership-registration input[type="number"],
.gc-models-panel__application .gc-wcfm-membership-registration input[type="url"],
.gc-models-panel__application .gc-wcfm-membership-registration input[type="tel"],
.gc-models-panel__application .gc-wcfm-membership-registration select,
.gc-models-panel__application .gc-wcfm-membership-registration textarea {
  display: block !important;
  width: 100% !important;
  margin: 0 0 14px !important;
  float: none !important;
}

.gc-models-panel__application .gc-wcfm-membership-registration input.wcfm_submit_button,
.gc-models-panel__application .gc-wcfm-membership-registration a.wcfm_submit_button,
.gc-models-panel__application .gc-wcfm-membership-registration .wcfm_submit_button,
.gc-models-panel__application .gc-wcfm-membership-registration .wcfm_email_verified_button {
  float: none !important;
  margin: 10px 0 0 !important;
  text-transform: none !important;
}

.gc-models-panel__application .gc-wcfm-membership-registration .wcfm_email_verified,
.gc-models-panel__application .gc-wcfm-membership-registration .wcfm_sms_verified,
.gc-models-panel__application .gc-wcfm-membership-registration .wcfm_store_slug_verified {
  margin-left: 0 !important;
  margin-bottom: 14px !important;
}

.gc-models-panel__application .gc-wcfm-membership-registration input#terms,
.gc-models-panel__application .gc-wcfm-membership-registration #wcfm-main-contentainer input#terms,
.gc-models-panel__application .gc-wcfm-membership-registration #wcfm_membership_container input#terms {
  margin-left: 0 !important;
  margin-right: 10px !important;
}

.gc-models-panel__application .gc-wcfm-membership-registration .wcfm_email_verified .wcfm_email_verified_text {
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

.gc-models-panel__application .gc-wcfm-membership-registration .wcfm-message,
.gc-models-panel__application .gc-wcfm-membership-registration .woocommerce-message,
.gc-models-panel__application .gc-wcfm-membership-registration .woocommerce-error,
.gc-models-panel__application .gc-wcfm-membership-registration .woocommerce-info,
.gc-models-panel__application .gc-wcfm-membership-registration .wcfm_membership_registration_msg {
  margin-bottom: 14px !important;
}

.gc-wcfm-settings-shell {
  max-width: 1120px !important;
  color: var(--gc-text);
}

.gc-wcfm-settings-shell .gc-veriff-card,
.gc-wcfm-settings-shell .gc-payouts-card {
  background: linear-gradient(180deg, rgba(var(--gc-bg-alt-rgb), 0.96), rgba(var(--gc-surface-rgb), 0.98)) !important;
  border: 1px solid rgba(var(--gc-border-rgb), 0.16) !important;
  border-radius: calc(var(--gc-radius-scale, 1) * 24px) !important;
  padding: 24px !important;
  box-shadow: var(--gc-shadow-soft) !important;
}

.gc-wcfm-settings-shell h2,
.gc-wcfm-settings-shell h3,
.gc-wcfm-settings-shell strong,
.gc-wcfm-settings-shell label,
.gc-wcfm-settings-shell .wcfm_title {
  color: var(--gc-text) !important;
}

.gc-wcfm-settings-shell p,
.gc-wcfm-settings-shell li,
.gc-wcfm-settings-shell .description,
.gc-wcfm-settings-shell .gc-veriff-status-copy,
.gc-wcfm-settings-shell .gc-veriff-note {
  color: rgba(220, 230, 248, 0.78) !important;
}

.gc-wcfm-settings-shell .wcfm_title {
  float: none !important;
  display: block !important;
  width: 100% !important;
  margin: 0 0 8px !important;
}

.gc-wcfm-settings-shell input[type="text"],
.gc-wcfm-settings-shell input[type="email"],
.gc-wcfm-settings-shell input[type="password"],
.gc-wcfm-settings-shell input[type="number"],
.gc-wcfm-settings-shell input[type="url"],
.gc-wcfm-settings-shell input[type="tel"],
.gc-wcfm-settings-shell select,
.gc-wcfm-settings-shell textarea {
  display: block !important;
  width: 100% !important;
  min-height: 52px !important;
  margin: 0 0 14px !important;
  padding: 0 16px !important;
  border-radius: calc(var(--gc-radius-scale, 1) * 16px) !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  background: rgba(255, 255, 255, 0.05) !important;
  color: #fff !important;
  box-shadow: none !important;
}

.gc-wcfm-settings-shell textarea {
  min-height: 148px !important;
  padding: 14px 16px !important;
}

.gc-wcfm-settings-shell input::placeholder,
.gc-wcfm-settings-shell textarea::placeholder {
  color: rgba(var(--gc-text-muted-rgb), 0.54) !important;
}

.gc-wcfm-settings-shell input:focus,
.gc-wcfm-settings-shell select:focus,
.gc-wcfm-settings-shell textarea:focus {
  outline: none !important;
  border-color: rgba(var(--gc-accent-rgb), 0.6) !important;
  box-shadow: 0 0 0 4px rgba(var(--gc-accent-rgb), 0.12) !important;
}

.gc-wcfm-settings-shell .wcfm_submit_button,
.gc-wcfm-settings-shell button,
.gc-wcfm-settings-shell input[type="submit"] {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 46px !important;
  padding: 0 18px !important;
  border-radius: calc(var(--gc-radius-scale, 1) * 14px) !important;
  border: 1px solid rgba(var(--gc-accent-rgb), 0.34) !important;
  background: linear-gradient(135deg, var(--gc-accent), var(--gc-accent-strong)) !important;
  color: var(--gc-deep) !important;
  font-weight: 800 !important;
  letter-spacing: 0.01em;
  box-shadow: 0 14px 28px rgba(var(--gc-accent-rgb), 0.18) !important;
  cursor: pointer;
  float: none !important;
  text-transform: none !important;
}

.gc-wcfm-settings-shell .wcfm_submit_button:hover,
.gc-wcfm-settings-shell button:hover,
.gc-wcfm-settings-shell input[type="submit"]:hover {
  color: var(--gc-deep) !important;
  transform: translateY(-1px);
  box-shadow: 0 18px 36px rgba(var(--gc-accent-rgb), 0.24) !important;
}

.gc-wcfm-settings-shell .wcfm-message,
.gc-wcfm-settings-shell .woocommerce-message,
.gc-wcfm-settings-shell .woocommerce-info,
.gc-wcfm-settings-shell .woocommerce-error {
  display: grid;
  gap: 8px;
  margin: 0 0 18px !important;
  padding: 14px 16px !important;
  border-radius: calc(var(--gc-radius-scale, 1) * 18px) !important;
  border: 1px solid rgba(var(--gc-border-rgb), 0.14) !important;
  background: rgba(255, 255, 255, 0.04) !important;
  color: rgba(var(--gc-text-rgb), 0.88) !important;
}

.gc-wcfm-settings-shell .wcfm-success,
.gc-wcfm-settings-shell .wcfm-message.wcfm-success {
  border-color: rgba(var(--gc-accent-rgb), 0.28) !important;
  background: linear-gradient(180deg, rgba(8, 44, 33, 0.82), rgba(8, 25, 22, 0.96)) !important;
  color: #d8ffef !important;
}

.gc-wcfm-settings-shell .wcfm-error,
.gc-wcfm-settings-shell .wcfm-message.wcfm-error,
.gc-wcfm-settings-shell .woocommerce-error {
  border-color: rgba(239, 68, 68, 0.24) !important;
  background: linear-gradient(180deg, rgba(60, 16, 16, 0.8), rgba(23, 10, 18, 0.96)) !important;
}

.gc-wcfm-settings-shell ul {
  margin: 0;
  padding-left: 20px;
}

.gc-payouts-shell .gc-partner-iframe {
  width: 100%;
  min-height: 420px;
  border: 1px solid rgba(var(--gc-border-rgb), 0.18) !important;
  border-radius: calc(var(--gc-radius-scale, 1) * 18px) !important;
  background: #fff !important;
}


/* v1.23.4 — embedded WCFM registration visibility + dark field lock */
.gc-models-panel__application .gc-wcfm-membership-registration .wcfm_registration_form_heading {
  margin: 8px 0 4px !important;
  color: var(--gc-text) !important;
  font-size: clamp(1.9rem, 2.4vw, 2.35rem) !important;
  line-height: 1.08 !important;
  font-weight: 800 !important;
  letter-spacing: -0.02em;
}

.gc-models-panel__application .gc-wcfm-membership-registration #wcfm_membership_container input[type="text"],
.gc-models-panel__application .gc-wcfm-membership-registration #wcfm_membership_container input[type="email"],
.gc-models-panel__application .gc-wcfm-membership-registration #wcfm_membership_container input[type="password"],
.gc-models-panel__application .gc-wcfm-membership-registration #wcfm_membership_container input[type="number"],
.gc-models-panel__application .gc-wcfm-membership-registration #wcfm_membership_container input[type="url"],
.gc-models-panel__application .gc-wcfm-membership-registration #wcfm_membership_container input[type="tel"],
.gc-models-panel__application .gc-wcfm-membership-registration #wcfm_membership_container input[type="search"],
.gc-models-panel__application .gc-wcfm-membership-registration #wcfm_membership_container select,
.gc-models-panel__application .gc-wcfm-membership-registration #wcfm_membership_container textarea,
.gc-models-panel__application .gc-wcfm-membership-registration #wcfm_membership_container .select2-container .select2-selection,
.gc-models-panel__application .gc-wcfm-membership-registration #wcfm_membership_container .select2-search input[type="search"] {
  background: var(--gc-surface-2) !important;
  background-color: var(--gc-surface-2) !important;
  border: 1px solid rgba(var(--gc-border-rgb), 0.16) !important;
  color: var(--gc-text) !important;
  -webkit-text-fill-color: var(--gc-text) !important;
  caret-color: var(--gc-text) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05), 0 14px 28px rgba(3, 9, 20, 0.18) !important;
}

.gc-models-panel__application .gc-wcfm-membership-registration #wcfm_membership_container input::placeholder,
.gc-models-panel__application .gc-wcfm-membership-registration #wcfm_membership_container textarea::placeholder,
.gc-models-panel__application .gc-wcfm-membership-registration #wcfm_membership_container .select2-container .select2-selection__placeholder {
  color: var(--gc-text-muted) !important;
  -webkit-text-fill-color: var(--gc-text-muted) !important;
}

.gc-models-panel__application .gc-wcfm-membership-registration #wcfm_membership_container input:focus,
.gc-models-panel__application .gc-wcfm-membership-registration #wcfm_membership_container select:focus,
.gc-models-panel__application .gc-wcfm-membership-registration #wcfm_membership_container textarea:focus,
.gc-models-panel__application .gc-wcfm-membership-registration #wcfm_membership_container .select2-container--open .select2-selection,
.gc-models-panel__application .gc-wcfm-membership-registration #wcfm_membership_container .select2-container--focus .select2-selection {
  border-color: rgba(var(--gc-accent-rgb), 0.58) !important;
  box-shadow: 0 0 0 4px rgba(var(--gc-accent-rgb), 0.12), 0 18px 36px rgba(3, 9, 20, 0.2) !important;
}

.gc-models-panel__application .gc-wcfm-membership-registration #wcfm_membership_container input:-webkit-autofill,
.gc-models-panel__application .gc-wcfm-membership-registration #wcfm_membership_container input:-webkit-autofill:hover,
.gc-models-panel__application .gc-wcfm-membership-registration #wcfm_membership_container input:-webkit-autofill:focus,
.gc-models-panel__application .gc-wcfm-membership-registration #wcfm_membership_container textarea:-webkit-autofill,
.gc-models-panel__application .gc-wcfm-membership-registration #wcfm_membership_container select:-webkit-autofill {
  -webkit-text-fill-color: var(--gc-text) !important;
  box-shadow: 0 0 0 1000px var(--gc-surface-2) inset !important;
  transition: background-color 9999s ease-out 0s;
}

.gc-models-panel__application .gc-wcfm-membership-registration #wcfm_membership_container .select2-container .select2-selection__rendered,
.gc-models-panel__application .gc-wcfm-membership-registration #wcfm_membership_container .select2-container .select2-selection__choice,
.gc-models-panel__application .gc-wcfm-membership-registration #wcfm_membership_container .select2-container .select2-selection__arrow b,
.gc-models-panel__application .gc-wcfm-membership-registration #wcfm_membership_container .select2-results__option {
  color: var(--gc-text) !important;
}

.gc-models-panel__application .gc-wcfm-membership-registration #wcfm_membership_container .select2-dropdown {
  background: linear-gradient(180deg, rgba(var(--gc-surface-rgb), 0.98), rgba(var(--gc-surface-rgb), 0.99)) !important;
  border: 1px solid rgba(var(--gc-border-rgb), 0.18) !important;
  box-shadow: 0 22px 40px rgba(3, 9, 20, 0.35) !important;
}

.gc-models-panel__application .gc-wcfm-membership-registration #wcfm_membership_container .select2-container--default .select2-results__option--highlighted[aria-selected],
.gc-models-panel__application .gc-wcfm-membership-registration #wcfm_membership_container .select2-container--default .select2-results__option[aria-selected="true"] {
  background: rgba(var(--gc-accent-rgb), 0.18) !important;
  color: var(--gc-text) !important;
}


/* v1.23.6 — models-login checkbox centering + onboarding follow-up */
.gc-models-login-shell {
  position: relative;
  min-height: calc(100vh - 140px);
  background:
    radial-gradient(circle at top right, rgba(var(--gc-accent-rgb), 0.08), transparent 26%),
    radial-gradient(circle at bottom left, rgba(var(--gc-accent-2-rgb), 0.08), transparent 22%),
    linear-gradient(180deg, rgba(var(--gc-bg-rgb), 0.98), rgba(var(--gc-surface-rgb), 0.99));
}

body.gc-models-login-page {
  background:
    radial-gradient(circle at top left, rgba(var(--gc-accent-rgb), 0.08), transparent 24%),
    radial-gradient(circle at top right, rgba(var(--gc-accent-2-rgb), 0.08), transparent 22%),
    linear-gradient(180deg, #08111f 0%, #050b14 100%);
}

body.gc-models-login-page #page,
body.gc-models-login-page .site,
body.gc-models-login-page .site-content,
body.gc-models-login-page .content-area,
body.gc-models-login-page #primary,
body.gc-models-login-page main,
body.gc-models-login-page .site-main,
body.gc-models-login-page .gc-site-main,
body.gc-models-login-page article,
body.gc-models-login-page .entry-content {
  background: transparent !important;
}

body.gc-models-login-page .site-content,
body.gc-models-login-page .content-area,
body.gc-models-login-page #primary,
body.gc-models-login-page main,
body.gc-models-login-page .site-main,
body.gc-models-login-page .gc-site-main {
  min-height: calc(100vh - 140px);
}

.gc-models-login-form input[type="checkbox"],
.gc-models-login-form input[type="radio"],
.gc-models-panel__application .gc-wcfm-membership-registration input[type="checkbox"],
.gc-models-panel__application .gc-wcfm-membership-registration input[type="radio"],
.gc-models-panel__application .gc-wcfm-membership-registration input#terms,
.gc-models-panel__application .gc-wcfm-membership-registration #wcfm-main-contentainer input#terms,
.gc-models-panel__application .gc-wcfm-membership-registration #wcfm_membership_container input#terms {
  appearance: none !important;
  -webkit-appearance: none !important;
  display: inline-grid !important;
  place-content: center !important;
  position: relative !important;
  width: 20px !important;
  min-width: 20px !important;
  height: 20px !important;
  min-height: 20px !important;
  margin: 0 10px 0 0 !important;
  padding: 0 !important;
  float: none !important;
  border: 1px solid rgba(var(--gc-border-rgb), 0.28) !important;
  background: var(--gc-surface-2) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05), 0 10px 20px rgba(3, 9, 20, 0.18) !important;
  color: var(--gc-bg) !important;
  cursor: pointer;
  vertical-align: middle !important;
}

.gc-models-login-form input[type="checkbox"],
.gc-models-panel__application .gc-wcfm-membership-registration input[type="checkbox"],
.gc-models-panel__application .gc-wcfm-membership-registration input#terms,
.gc-models-panel__application .gc-wcfm-membership-registration #wcfm-main-contentainer input#terms,
.gc-models-panel__application .gc-wcfm-membership-registration #wcfm_membership_container input#terms {
  border-radius: calc(var(--gc-radius-scale, 1) * 6px) !important;
}

.gc-models-login-form input[type="radio"],
.gc-models-panel__application .gc-wcfm-membership-registration input[type="radio"] {
  border-radius: var(--gc-radius-pill) !important;
}

.gc-models-login-form input[type="checkbox"]::after,
.gc-models-panel__application .gc-wcfm-membership-registration input[type="checkbox"]::after,
.gc-models-panel__application .gc-wcfm-membership-registration input#terms::after,
.gc-models-panel__application .gc-wcfm-membership-registration #wcfm-main-contentainer input#terms::after,
.gc-models-panel__application .gc-wcfm-membership-registration #wcfm_membership_container input#terms::after {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  width: 6px;
  height: 11px;
  border: solid var(--gc-bg);
  border-width: 0 2px 2px 0;
  transform: translate(-50%, -58%) rotate(45deg) scale(0);
  transform-origin: center;
  transition: transform 0.14s ease;
  margin: 0 !important;
}

.gc-models-login-form input[type="radio"]::after,
.gc-models-panel__application .gc-wcfm-membership-registration input[type="radio"]::after {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  width: 8px;
  height: 8px;
  border-radius: var(--gc-radius-pill);
  background: var(--gc-bg);
  transform: translate(-50%, -50%) scale(0);
  transition: transform 0.14s ease;
}

.gc-models-login-form input[type="checkbox"]:checked,
.gc-models-login-form input[type="radio"]:checked,
.gc-models-panel__application .gc-wcfm-membership-registration input[type="checkbox"]:checked,
.gc-models-panel__application .gc-wcfm-membership-registration input[type="radio"]:checked,
.gc-models-panel__application .gc-wcfm-membership-registration input#terms:checked,
.gc-models-panel__application .gc-wcfm-membership-registration #wcfm-main-contentainer input#terms:checked,
.gc-models-panel__application .gc-wcfm-membership-registration #wcfm_membership_container input#terms:checked {
  border-color: rgba(var(--gc-accent-rgb), 0.52) !important;
  background: linear-gradient(135deg, var(--gc-accent), var(--gc-accent-strong)) !important;
}

.gc-models-login-form input[type="checkbox"]:checked::after,
.gc-models-panel__application .gc-wcfm-membership-registration input[type="checkbox"]:checked::after,
.gc-models-panel__application .gc-wcfm-membership-registration input#terms:checked::after,
.gc-models-panel__application .gc-wcfm-membership-registration #wcfm-main-contentainer input#terms:checked::after,
.gc-models-panel__application .gc-wcfm-membership-registration #wcfm_membership_container input#terms:checked::after {
  transform: translate(-50%, -58%) rotate(45deg) scale(1);
}

.gc-models-login-form input[type="radio"]:checked::after,
.gc-models-panel__application .gc-wcfm-membership-registration input[type="radio"]:checked::after {
  transform: translate(-50%, -50%) scale(1);
}

.gc-models-login-form input[type="checkbox"]:focus-visible,
.gc-models-login-form input[type="radio"]:focus-visible,
.gc-models-panel__application .gc-wcfm-membership-registration input[type="checkbox"]:focus-visible,
.gc-models-panel__application .gc-wcfm-membership-registration input[type="radio"]:focus-visible,
.gc-models-panel__application .gc-wcfm-membership-registration input#terms:focus-visible,
.gc-models-panel__application .gc-wcfm-membership-registration #wcfm-main-contentainer input#terms:focus-visible,
.gc-models-panel__application .gc-wcfm-membership-registration #wcfm_membership_container input#terms:focus-visible {
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(var(--gc-accent-rgb), 0.18), inset 0 1px 0 rgba(255, 255, 255, 0.05) !important;
}

.gc-models-login-form__remember {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.gc-models-login-form__remember input {
  flex: 0 0 20px;
}

.gc-models-panel__application .gc-wcfm-membership-registration #wcfm_membership_container input#terms + p.terms_title,
.gc-models-panel__application .gc-wcfm-membership-registration input#terms + p.terms_title {
  display: inline-flex !important;
  align-items: center;
  width: calc(100% - 38px) !important;
  min-height: 20px;
  margin: 0 0 16px !important;
  vertical-align: middle !important;
}

.gc-models-panel__application .gc-wcfm-membership-registration #wcfm_membership_container input#terms + p.terms_title strong,
.gc-models-panel__application .gc-wcfm-membership-registration input#terms + p.terms_title strong {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
  line-height: 1.5;
}

/* Broadcast MVP */
.gc-message-broadcast-pill {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 10px;
  padding: 6px 10px;
  border-radius: var(--gc-radius-pill);
  border: 1px solid rgba(var(--gc-accent-2-rgb), 0.28);
  background: rgba(var(--gc-accent-2-rgb), 0.14);
  color: var(--gc-text);
  font-size: 12px;
  line-height: 1.2;
}

.gc-message-broadcast-pill span {
  color: #bcaef9;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}


/* v1.24.6 mobile account messenger visibility follow-up */
@media (max-width: 900px) {
  body.gc-account-page.gc-messages-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) {
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
    min-height: auto !important;
    height: auto !important;
    max-height: none !important;
  }

  body.gc-account-page.gc-messages-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-shell__rail,
  body.gc-account-page.gc-messages-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-shell__panel {
    width: 100% !important;
    max-width: 100% !important;
    min-height: 0 !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
  }

  body.gc-account-page.gc-messages-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-thread-list {
    max-height: min(42vh, 360px) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
  }

  body.gc-account-page.gc-messages-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-panel__timeline {
    max-height: min(48vh, 420px) !important;
    min-height: 220px !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
  }

  body.gc-account-page.gc-messages-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose {
    position: relative !important;
    bottom: auto !important;
  }
}


/* v1.24.7 mobile account messenger final stack + composer visibility follow-up */
@media (max-width: 900px) {
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-account-inline-shell__body,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell__rail,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell__panel,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-thread-list,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__timeline,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose {
    min-width: 0 !important;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell:not(.gc-messages-shell--thread-popup) {
    display: flex !important;
    flex-direction: column !important;
    grid-template-columns: none !important;
    gap: 12px !important;
    min-height: auto !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-shell__rail,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-shell__panel {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-shell__rail > *,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-shell__panel > * {
    flex: 0 0 auto !important;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-thread-list {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    max-height: min(42vh, 360px) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-panel__header {
    flex: 0 0 auto !important;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-panel__timeline {
    flex: 0 0 auto !important;
    max-height: min(34vh, 300px) !important;
    min-height: 160px !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose {
    flex: 0 0 auto !important;
    position: static !important;
    bottom: auto !important;
    padding-top: 12px !important;
    padding-bottom: 14px !important;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose textarea {
    min-height: 68px !important;
    max-height: 120px !important;
    resize: vertical !important;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__footer {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: stretch !important;
    gap: 10px !important;
    margin-top: 10px !important;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__footer p {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__footer .gc-button {
    display: inline-flex !important;
    width: 100% !important;
    min-height: 44px !important;
    justify-content: center !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-panel__actions,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-panel__actions .gc-button {
    width: 100% !important;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-empty-state--panel,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-empty-state--panel-center {
    margin: 14px !important;
  }
}


/* v1.24.8 account mobile messenger natural reflow */
@media (max-width: 900px) {
  body.gc-account-page.gc-account-messages-inline-route .gc-content,
  body.gc-account-page.gc-account-messages-inline-route .gc-commerce-shell,
  body.gc-account-page.gc-account-messages-inline-route .gc-commerce-shell__inner,
  body.gc-account-page.gc-account-messages-inline-route .gc-commerce-panel,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-account-inline-shell__body,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell__rail,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell__panel,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-thread-list,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__timeline,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose {
    min-width: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    max-height: none !important;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-content,
  body.gc-account-page.gc-account-messages-inline-route .gc-commerce-shell,
  body.gc-account-page.gc-account-messages-inline-route .gc-commerce-panel {
    width: 100% !important;
    max-width: none !important;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-commerce-panel {
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages {
    gap: 8px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-account-inline-shell__body {
    gap: 8px !important;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell {
    display: flex !important;
    flex-direction: column !important;
    grid-template-columns: none !important;
    overflow: visible !important;
    border-radius: calc(var(--gc-radius-scale, 1) * 16px) !important;
    box-shadow: none !important;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell__rail,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell__panel {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: visible !important;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell__panel {
    border-top: 1px solid rgba(var(--gc-text-soft-rgb), 0.16) !important;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-thread-list,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__timeline {
    overflow: visible !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell__toolbar,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell__new-chat,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-thread-list,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__header,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__timeline,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose {
    position: static !important;
    padding-top: 12px !important;
    padding-bottom: 14px !important;
    overflow: visible !important;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose textarea {
    min-height: 92px !important;
    max-height: none !important;
    resize: vertical !important;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose__footer,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__actions {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: stretch !important;
    gap: 10px !important;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose__footer p {
    display: none !important;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose__footer .gc-button,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__actions .gc-button {
    width: 100% !important;
    min-height: 44px !important;
    justify-content: center !important;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-message-bubble {
    max-width: 100% !important;
  }
}

/* v1.24.9 account mobile messenger final reflow follow-up */
@media (max-width: 900px) {
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-account-inline-shell__body,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell__rail,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell__panel {
    min-height: 0 !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-thread-list {
    max-height: 210px !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__header {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: start !important;
    gap: 10px !important;
    padding-top: 14px !important;
    padding-bottom: 12px !important;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__identity,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__identity > div {
    min-width: 0 !important;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__identity h3 {
    margin: 0 !important;
    font-size: 1.05rem !important;
    line-height: 1.2 !important;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__identity p {
    margin: 2px 0 0 !important;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__actions {
    width: auto !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: flex-start !important;
    justify-content: flex-end !important;
    gap: 8px !important;
    margin-left: auto !important;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__actions .gc-button {
    width: auto !important;
    /* Phase 50e (2026-05-05): bumped from 36px to 44px for WCAG 2.5.5 mobile minimum */
    min-height: 44px !important;
    padding: 8px 12px !important;
    white-space: nowrap !important;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__timeline {
    min-height: clamp(260px, 40vh, 420px) !important;
    max-height: none !important;
    padding-top: 14px !important;
    padding-bottom: 14px !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose {
    position: static !important;
    overflow: visible !important;
    padding-top: 12px !important;
    padding-bottom: 14px !important;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose textarea {
    min-height: 78px !important;
    max-height: 160px !important;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose__footer {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 10px !important;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose__footer p {
    display: block !important;
    flex: 1 1 100% !important;
    margin: 0 !important;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose__footer .gc-button {
    width: 100% !important;
    min-height: 44px !important;
  }

  body.gc-account-page.gc-account-messages-inline-route .gc-commerce-panel,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages {
    box-shadow: none !important;
  }
}


/* v1.24.10 account inline first-open sync + tighter mobile messenger header/footer */
@media (max-width: 900px) {
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-account-inline-shell__body,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell__rail,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell__panel,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-thread-list,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__timeline,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose {
    min-width: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell {
    display: flex !important;
    flex-direction: column !important;
    grid-template-columns: none !important;
    gap: 10px !important;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell__rail,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell__panel {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-thread-list {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    max-height: 220px !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__header {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: start !important;
    gap: 8px !important;
    padding-top: 12px !important;
    padding-bottom: 10px !important;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__identity {
    gap: 10px !important;
    min-width: 0 !important;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__identity,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__identity > div,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__eyebrow,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__identity h3,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__identity p {
    min-width: 0 !important;
    max-width: 100% !important;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__eyebrow,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__identity h3,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__identity p {
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__actions {
    width: auto !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: flex-start !important;
    justify-content: flex-end !important;
    gap: 6px !important;
    margin-left: auto !important;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__actions .gc-button {
    width: auto !important;
    /* Phase 50d (2026-05-05): bumped from 30px to 44px (Apple HIG / WCAG mobile minimum) */
    min-height: 44px !important;
    padding: 8px 12px !important;
    border-radius: calc(var(--gc-radius-scale, 1) * 14px) !important;
    font-size: 0.78rem !important;
    line-height: 1.1 !important;
    white-space: nowrap !important;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__timeline {
    min-height: clamp(240px, 36vh, 400px) !important;
    max-height: none !important;
    padding-top: 12px !important;
    padding-bottom: 12px !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose {
    position: static !important;
    overflow: visible !important;
    padding-top: 10px !important;
    padding-bottom: 12px !important;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose textarea {
    min-height: 68px !important;
    max-height: 128px !important;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose__reply-note {
    margin-bottom: 10px !important;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose__footer {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 8px !important;
    margin-top: 10px !important;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose__footer p {
    display: none !important;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose__footer .gc-button {
    display: inline-flex !important;
    width: 100% !important;
    min-height: 42px !important;
    justify-content: center !important;
    visibility: visible !important;
    opacity: 1 !important;
  }
}

@media (max-width: 420px) {
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__actions .gc-button {
    min-height: 28px !important;
    padding: 0 8px !important;
    font-size: 0.74rem !important;
  }
}

/* v1.24.11 account messenger footer visibility + mid-width scaling follow-up */
@media (max-width: 1400px) and (min-width: 901px) {
  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) {
    grid-template-columns: minmax(260px, 296px) minmax(0, 1fr) !important;
  }

  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-panel__header,
  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__tool-row,
  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__footer {
    flex-wrap: wrap !important;
  }

  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-panel__actions {
    gap: 8px !important;
  }

  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-panel__actions .gc-button,
  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__tool-button,
  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__footer .gc-button {
    /* Phase 50d (2026-05-05): bumped from 40px to 44px for WCAG 2.5.5 minimum */
    min-height: 44px !important;
    padding: 6px 14px !important;
  }

  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose {
    max-height: none !important;
    overflow: visible !important;
    scrollbar-gutter: auto !important;
  }

  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__footer {
    position: static !important;
    justify-content: flex-end !important;
    gap: 10px !important;
    margin-top: 12px !important;
    padding-top: 0 !important;
    background: none !important;
  }

  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__footer p {
    display: none !important;
  }

  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-panel__timeline {
    min-height: clamp(340px, 48vh, 560px) !important;
  }
}

@media (max-width: 900px) {
  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup),
  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-shell__rail,
  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-shell__panel,
  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose,
  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__tools,
  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__tool-row,
  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__footer,
  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-panel__actions {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup),
  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-shell__rail,
  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-shell__panel,
  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose {
    overflow-x: hidden !important;
  }

  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose {
    position: static !important;
    max-height: none !important;
    overflow: visible !important;
    scrollbar-gutter: auto !important;
    padding-bottom: 14px !important;
  }

  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose textarea {
    min-height: 72px !important;
    max-height: 140px !important;
  }

  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__tool-row,
  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-panel__actions {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: stretch !important;
    gap: 10px !important;
  }

  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__tool-row .gc-button,
  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-panel__actions .gc-button,
  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__footer .gc-button {
    display: inline-flex !important;
    width: 100% !important;
    max-width: none !important;
    min-height: 44px !important;
    margin: 0 !important;
    justify-content: center !important;
    align-self: stretch !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__footer {
    position: static !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    align-items: stretch !important;
    justify-items: stretch !important;
    gap: 10px !important;
    margin-top: 10px !important;
    padding-top: 0 !important;
    background: none !important;
  }

  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__footer p {
    display: none !important;
  }
}

@media (max-width: 430px) {
  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-panel__header,
  body.gc-store-manager-page.gc-messages-page:not(.gc-chat-popup-page) .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-panel__header {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 8px !important;
  }

  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-panel__actions,
  body.gc-store-manager-page.gc-messages-page:not(.gc-chat-popup-page) .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-panel__actions {
    width: 100% !important;
    margin-left: 0 !important;
    justify-content: flex-start !important;
  }
}


/* v1.24.12 message footer containment + store-manager mobile menu class sync follow-up */
@media (max-width: 1280px) and (min-width: 901px) {
  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) {
    grid-template-columns: minmax(236px, 280px) minmax(0, 1fr) !important;
  }

  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-shell__panel,
  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-panel__timeline,
  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose,
  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__tools,
  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__tool-row,
  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__footer {
    min-width: 0 !important;
    overflow-x: hidden !important;
  }

  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-panel__header,
  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-panel__actions,
  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__tool-row {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
  }

  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-panel__actions .gc-button,
  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__tool-row .gc-button {
    flex: 1 1 220px !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__footer {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    align-items: stretch !important;
    justify-items: stretch !important;
    gap: 10px !important;
    margin-top: 10px !important;
  }

  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__footer > * {
    min-width: 0 !important;
  }

  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__footer p {
    display: none !important;
    width: 0 !important;
    max-width: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__footer .gc-button {
    display: inline-flex !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    min-height: 42px !important;
    justify-content: center !important;
    justify-self: stretch !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-panel__timeline {
    min-height: clamp(380px, 52vh, 620px) !important;
  }
}

@media (max-width: 900px) {
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell__rail,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell__panel,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__timeline,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose__tools,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose__tool-row,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose__footer,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose__footer > * {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow-x: hidden !important;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose__tool-row,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose__footer {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    align-items: stretch !important;
    justify-items: stretch !important;
    gap: 10px !important;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose__footer p {
    display: none !important;
    width: 0 !important;
    max-width: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose__tool-row .gc-button,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose__footer .gc-button {
    display: inline-flex !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    justify-content: center !important;
    justify-self: stretch !important;
    align-self: stretch !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__timeline {
    min-height: clamp(260px, 42vh, 460px) !important;
  }
}


/* v1.24.13 account messenger compose/tool-row unclipped follow-up */
@media (max-width: 900px) {
  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup),
  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-shell__panel,
  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-panel__timeline,
  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose,
  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__tools,
  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__tool-row,
  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__attachment-preview,
  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__footer {
    max-height: none !important;
    overflow: visible !important;
  }

  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-panel__timeline {
    min-height: clamp(220px, 34vh, 360px) !important;
  }

  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose {
    display: grid !important;
    gap: 12px !important;
    padding-top: 14px !important;
    padding-bottom: 18px !important;
  }

  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose textarea {
    min-height: 96px !important;
    max-height: none !important;
  }

  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__tools {
    gap: 12px !important;
  }

  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__tool-row {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    align-items: stretch !important;
    gap: 10px !important;
  }

  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__tool-button,
  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__tool-row .gc-button {
    display: inline-flex !important;
    width: 100% !important;
    min-height: 46px !important;
    padding: 0 16px !important;
    box-sizing: border-box !important;
    justify-content: center !important;
    align-self: stretch !important;
  }

  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__attachment-preview {
    width: 100% !important;
    box-sizing: border-box !important;
  }

  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__reply-note {
    margin-bottom: 0 !important;
  }

  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__footer {
    margin-top: 0 !important;
    gap: 12px !important;
  }
}

@media (max-width: 1280px) and (min-width: 901px) {
  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) {
    grid-template-columns: minmax(220px, 260px) minmax(0, 1fr) !important;
    min-height: min(76vh, 860px) !important;
  }

  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-shell__panel,
  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-panel__timeline,
  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose,
  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__tools,
  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__tool-row,
  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__footer {
    min-width: 0 !important;
    overflow: visible !important;
  }

  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-panel__timeline {
    min-height: clamp(360px, 48vh, 580px) !important;
  }

  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose {
    display: grid !important;
    gap: 12px !important;
  }

  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__tool-row {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: stretch !important;
    gap: 10px !important;
  }

  body.gc-account-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__tool-row .gc-button {
    flex: 1 1 220px !important;
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
}

/* v1.24.14 mobile account shell expansion + store-menu usability follow-up */
@media (max-width: 900px) {
  body.gc-account-page .gc-site-main,
  body.gc-account-page .gc-commerce-shell--account,
  body.gc-account-page .gc-commerce-panel,
  body.gc-account-page .gc-account-dashboard,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-account-inline-shell__body,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-account-inline-fragment,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .woocommerce-MyAccount-content {
    overflow: visible !important;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell {
    display: flex !important;
    flex-direction: column !important;
    grid-template-columns: none !important;
    align-items: stretch !important;
    height: auto !important;
    max-height: none !important;
    min-height: 0 !important;
    overflow: visible !important;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell__rail,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell__panel,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__timeline,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose__tools,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose__tool-row,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose__attachment-preview,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose__footer,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-message-fold-panel,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-message-fold-panel__body {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    max-height: none !important;
    min-height: 0 !important;
    box-sizing: border-box !important;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell__rail,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell__panel,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose__tools,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose__attachment-preview,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose__footer {
    overflow: visible !important;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel {
    min-height: 0 !important;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-thread-list {
    max-height: clamp(180px, 28vh, 280px) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__timeline {
    min-height: clamp(220px, 32vh, 360px) !important;
    max-height: min(42vh, 420px) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose {
    position: static !important;
    bottom: auto !important;
    display: grid !important;
    gap: 12px !important;
    padding-top: 14px !important;
    padding-bottom: 18px !important;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose textarea {
    min-height: 88px !important;
    max-height: none !important;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose__tool-row,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose__footer {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    align-items: stretch !important;
    justify-items: stretch !important;
    gap: 10px !important;
    margin-top: 0 !important;
    min-width: 0 !important;
    overflow-x: hidden !important;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose__footer p {
    display: none !important;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose__tool-button,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose__tool-row .gc-button,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose__footer .gc-button,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__actions .gc-button {
    display: inline-flex !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    min-height: 44px !important;
    justify-content: center !important;
    align-items: center !important;
    box-sizing: border-box !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__header {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 8px !important;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__actions {
    width: 100% !important;
    margin-left: 0 !important;
    justify-content: flex-start !important;
  }
}

@media (max-width: 1280px) and (min-width: 901px) {
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-account-inline-shell__body,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-account-inline-fragment,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .woocommerce-MyAccount-content {
    overflow: visible !important;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell {
    grid-template-columns: minmax(220px, 260px) minmax(0, 1fr) !important;
    align-items: stretch !important;
    height: auto !important;
    max-height: none !important;
    min-height: min(72vh, 860px) !important;
    overflow: visible !important;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell__rail,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell__panel,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__timeline,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose__tools,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose__tool-row,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose__footer {
    min-width: 0 !important;
    overflow: visible !important;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell__rail {
    display: flex !important;
    flex-direction: column !important;
    min-height: 0 !important;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-thread-list {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    max-height: min(56vh, 560px) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell__panel,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel {
    display: flex !important;
    flex-direction: column !important;
    height: auto !important;
    max-height: none !important;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__timeline {
    min-height: clamp(320px, 40vh, 520px) !important;
    max-height: min(52vh, 560px) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose {
    max-height: none !important;
    overflow: visible !important;
    display: grid !important;
    gap: 12px !important;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose__tool-row {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: stretch !important;
    gap: 10px !important;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose__tool-button,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose__tool-row .gc-button {
    flex: 1 1 220px !important;
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose__footer {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 10px !important;
    align-items: stretch !important;
    justify-items: stretch !important;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose__footer p {
    display: none !important;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-compose__footer .gc-button {
    width: 100% !important;
    min-width: 0 !important;
    justify-self: stretch !important;
  }
}



/* v1.16.x mobile messenger fixes */
/* Fixes: chat window too small, text input too small, wrapper not adapting */

/* 1. Force the chat panel to fill available height on single-column layout */
@media (max-width: 980px) {
  .gc-messages-shell {
    grid-template-rows: auto 1fr;
  }
  .gc-messages-shell__panel {
    min-height: min(56vh, 520px);
  }
  .gc-messages-panel__timeline {
    flex: 1 1 auto;
    overflow-y: auto;
    min-height: 180px;
  }
  .gc-messages-thread-list {
    max-height: 240px;
    overflow-y: auto;
  }
}

/* 2. Textarea sizing improvements for mobile */
@media (max-width: 760px) {
  .gc-messages-compose textarea {
    min-height: 100px;
    max-height: min(30vh, 200px);
    padding: 14px;
    border-radius: calc(var(--gc-radius-scale, 1) * 18px);
    font-size: 16px;
  }
  body.gc-account-page.gc-messages-page .gc-messages-compose textarea {
    min-height: 96px;
    font-size: 16px;
  }
}
@media (max-width: 480px) {
  .gc-messages-compose textarea {
    min-height: 82px;
    max-height: min(28vh, 170px);
    padding: 12px;
    border-radius: calc(var(--gc-radius-scale, 1) * 16px);
  }
}

/* 3. Wrapper and shell adaptation for narrow screens */
@media (max-width: 760px) {
  body.gc-account-page.gc-messages-page .gc-content {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
  }
  body.gc-account-page.gc-messages-page .gc-messages-shell {
    min-height: min(76vh, 860px);
    border-radius: calc(var(--gc-radius-scale, 1) * 16px);
    margin: 0 4px;
  }
  body.gc-account-page.gc-messages-page .gc-messages-shell__panel {
    min-height: min(52vh, 480px);
  }
}
@media (max-width: 480px) {
  body.gc-account-page.gc-messages-page .gc-messages-shell {
    border-radius: calc(var(--gc-radius-scale, 1) * 12px);
    margin: 0 2px;
    min-height: min(78vh, 880px);
  }
  body.gc-account-page.gc-messages-page .gc-messages-shell__panel {
    min-height: min(54vh, 500px);
  }
  body.gc-account-page.gc-messages-page .gc-messages-shell__toolbar,
  body.gc-account-page.gc-messages-page .gc-messages-shell__new-chat,
  body.gc-account-page.gc-messages-page .gc-messages-thread-list,
  body.gc-account-page.gc-messages-page .gc-messages-panel__header,
  body.gc-account-page.gc-messages-page .gc-messages-panel__timeline,
  body.gc-account-page.gc-messages-page .gc-messages-compose {
    padding-left: 6px;
    padding-right: 6px;
  }
}

/* 4. Compose footer and tools layout on mobile */
@media (max-width: 680px) {
  .gc-messages-compose__footer {
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
  }
  .gc-messages-compose__footer .gc-button {
    width: 100%;
    min-height: 48px;
    font-size: 1rem;
  }
  .gc-messages-compose__tool-row {
    gap: 8px;
  }
  .gc-messages-compose__tool-button {
    min-height: 44px;
    font-size: 0.88rem;
    flex: 1 1 auto;
  }
  .gc-messages-compose__paid-toggle {
    flex: 1 1 auto;
    justify-content: center;
  }
}

/* 5. Chat bubbles overflow prevention on narrow screens */
@media (max-width: 480px) {
  .gc-message-bubble {
    max-width: calc(100% - 4px);
    padding: 10px 12px;
    border-radius: calc(var(--gc-radius-scale, 1) * 16px) calc(var(--gc-radius-scale, 1) * 16px) calc(var(--gc-radius-scale, 1) * 16px) calc(var(--gc-radius-scale, 1) * 6px);
    word-break: break-word;
    overflow-wrap: anywhere;
  }
  .gc-message-bubble.is-mine {
    border-radius: calc(var(--gc-radius-scale, 1) * 16px) calc(var(--gc-radius-scale, 1) * 16px) calc(var(--gc-radius-scale, 1) * 6px) calc(var(--gc-radius-scale, 1) * 16px);
  }
}

/* 6. Thread row touch targets on mobile */
@media (max-width: 680px) {
  .gc-messages-thread-row {
    min-height: 64px;
    padding: 10px;
  }
}

/* 7. Search input mobile sizing */
@media (max-width: 680px) {
  .gc-messages-shell__search,
  .gc-messages-shell__contact-search {
    min-height: 44px;
    font-size: 16px;
    border-radius: calc(var(--gc-radius-scale, 1) * 14px);
  }
}

/* 8. Panel header mobile layout fixes */
@media (max-width: 480px) {
  .gc-messages-panel__header {
    gap: 10px;
  }
  .gc-messages-panel__identity {
    gap: 10px;
  }
  .gc-messages-panel__actions {
    flex-direction: row;
    gap: 6px;
  }
  .gc-messages-panel__actions .gc-button {
    min-height: 40px;
    padding: 0 12px;
    font-size: 0.84rem;
  }
}


/* v1.16.x additional layout fixes */

/* 1. Fix 100vw scrollbar issues - replace with 100% where appropriate */
body.gc-account-page.gc-messages-page .gc-content,
body.gc-chat-popup-page .gc-content {
  max-width: 100%;
  overflow-x: hidden;
}

/* 2. Section header text overflow on mobile */
@media (max-width: 680px) {
  .gc-section-header h2 {
    white-space: normal;
    word-break: break-word;
    font-size: clamp(1rem, 4vw, 1.2rem);
  }

  .gc-clip-card__creator,
  .gc-category-card__title {
    white-space: normal;
    -webkit-line-clamp: 2;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }
}

/* 3. Footer mobile padding reduction */
@media (max-width: 680px) {
  .gc-site-footer {
    padding: 20px 0 28px;
  }

  .gc-site-footer .gc-wrap {
    padding-left: 12px;
    padding-right: 12px;
  }
}

/* 4. Categories feature banners mobile stacking */
@media (max-width: 680px) {
  .gc-categories-feature-banners {
    grid-template-columns: 1fr;
    gap: 12px;
  }
}

/* 5. Product/clip grid optimization for small phones */
@media (max-width: 480px) {
  .gc-category-clips-grid {
    gap: 12px;
  }

  .gc-clip-card {
    border-radius: calc(var(--gc-radius-scale, 1) * 16px);
  }

  .gc-store-grid {
    gap: 12px;
  }
}

/* 6. General overflow prevention */
.gc-wrap,
.gc-content,
.gc-site-main {
  max-width: 100%;
  overflow-x: hidden;
}

/* 7. Account navigation mobile improvements */
@media (max-width: 760px) {
  .gc-account-nav {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}

/* 8. Global mobile touch target minimum */
@media (max-width: 680px) {
  .gc-button {
    min-height: 44px;
  }

  input[type="text"],
  input[type="email"],
  input[type="password"],
  input[type="search"],
  input[type="number"],
  input[type="tel"],
  input[type="url"],
  select,
  textarea {
    font-size: 16px;
    min-height: 44px;
  }
}


/* v1.16.x compose area mobile fixes */
/* Fixes: PPV/tools/send button breaking out of shell, black block, color mismatch */

/* 1. Ensure compose area stays within rounded shell on mobile */
@media (max-width: 980px) {
  .gc-messages-shell {
    overflow: hidden;
  }

  .gc-messages-shell__panel {
    overflow: hidden;
    border-radius: 0 0 inherit inherit;
  }

  .gc-messages-compose {
    overflow: hidden;
  }
}

/* 2. Fix the compose tools black block - give it matching background and rounded corners */
.gc-messages-compose__tools {
  background: transparent;
  border-radius: calc(var(--gc-radius-scale, 1) * 14px);
}

.gc-messages-compose__tool-row {
  background: rgba(var(--gc-slate-rgb), 0.44);
  border-radius: calc(var(--gc-radius-scale, 1) * 14px);
  padding: 10px 14px;
  border: 1px solid rgba(var(--gc-text-soft-rgb), 0.12);
}

/* 3. Unify compose area background colors */
.gc-messages-compose {
  background: rgba(var(--gc-bg-rgb), 0.96);
}

.gc-messages-compose__tools,
.gc-messages-compose__footer {
  background: transparent;
}

/* 4. PPV fold panel - fix overflow within compose */
.gc-messages-compose__price.gc-message-fold-panel {
  max-width: 100%;
  box-sizing: border-box;
  overflow: hidden;
}

/* 5. Send message button footer - contain within compose area */
.gc-messages-compose__footer {
  max-width: 100%;
  box-sizing: border-box;
}

/* 6. Mobile-specific compose containment */
@media (max-width: 760px) {
  .gc-messages-compose {
    padding-left: 10px;
    padding-right: 10px;
    background: rgba(var(--gc-bg-rgb), 0.98);
  }

  .gc-messages-compose__tool-row {
    padding: 8px 12px;
    border-radius: calc(var(--gc-radius-scale, 1) * 12px);
    gap: 8px;
  }

  .gc-messages-compose__price.gc-message-fold-panel {
    border-radius: calc(var(--gc-radius-scale, 1) * 14px);
    margin-left: 0;
    margin-right: 0;
  }

  .gc-messages-compose__footer {
    padding-bottom: 4px;
  }

  .gc-messages-compose__footer .gc-button {
    border-radius: calc(var(--gc-radius-scale, 1) * 16px);
  }

  /* Ensure the thread settings panel doesnt overflow */
  .gc-message-thread-settings {
    max-width: 100%;
    box-sizing: border-box;
    overflow: hidden;
    padding-left: 10px;
    padding-right: 10px;
  }
}

@media (max-width: 480px) {
  .gc-messages-compose {
    padding-left: 8px;
    padding-right: 8px;
  }

  .gc-messages-compose__tool-row {
    padding: 8px 10px;
    border-radius: calc(var(--gc-radius-scale, 1) * 10px);
  }

  .gc-messages-compose__price.gc-message-fold-panel {
    border-radius: calc(var(--gc-radius-scale, 1) * 12px);
  }

  .gc-message-fold-panel__toggle {
    padding: 12px;
  }

  .gc-message-fold-panel__body {
    padding: 0 12px 12px;
  }

  .gc-message-thread-settings {
    padding-left: 8px;
    padding-right: 8px;
  }
}

/* 7. Fix the different color sections within compose */
body.gc-account-page .gc-messages-shell .gc-message-thread-settings {
  background: rgba(var(--gc-bg-rgb), 0.96);
}

body.gc-account-page .gc-messages-shell .gc-messages-compose__price.gc-message-fold-panel {
  background: rgba(var(--gc-slate-rgb), 0.54);
  border-color: rgba(var(--gc-text-soft-rgb), 0.16);
}


/* v1.16.x AJAX inline-route messenger fixes - staging only */
/* Problem: When navigating to messages via the my-account inline shell (AJAX),
   the body class is gc-account-messages-inline-route instead of gc-messages-page.
   All existing messenger fixes target gc-messages-page and only apply on full
   page reload. This block duplicates the critical fixes for the inline route. */

/* 1. Panel grid layout for AJAX-loaded messages */
body.gc-account-page.gc-account-messages-inline-route .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-shell__panel {
  display: grid !important;
  grid-template-rows: auto minmax(0, 1fr) auto !important;
  align-content: stretch !important;
  min-height: 0 !important;
  height: 100% !important;
  overflow: hidden !important;
}

body.gc-account-page.gc-account-messages-inline-route .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-panel__header,
body.gc-account-page.gc-account-messages-inline-route .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose {
  flex: 0 0 auto !important;
}

body.gc-account-page.gc-account-messages-inline-route .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-panel__timeline {
  flex: 1 1 auto !important;
  min-height: 0 !important;
  height: auto !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
}

/* 2. Inline shell messenger shell sizing */
body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell .gc-messages-shell {
  min-height: min(78vh, 900px);
}

/* 3. Mobile layout fixes for AJAX route */
@media (max-width: 980px) {
  body.gc-account-page.gc-account-messages-inline-route .gc-messages-shell {
    grid-template-rows: auto 1fr;
  }
  body.gc-account-page.gc-account-messages-inline-route .gc-messages-shell__panel {
    min-height: min(56vh, 520px);
  }
  body.gc-account-page.gc-account-messages-inline-route .gc-messages-panel__timeline {
    flex: 1 1 auto;
    overflow-y: auto;
    min-height: 180px;
  }
}

@media (max-width: 760px) {
  body.gc-account-page.gc-account-messages-inline-route .gc-content {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
  }
  body.gc-account-page.gc-account-messages-inline-route .gc-messages-shell {
    min-height: min(76vh, 860px);
    border-radius: calc(var(--gc-radius-scale, 1) * 16px);
    margin: 0 4px;
  }
  body.gc-account-page.gc-account-messages-inline-route .gc-messages-shell__panel {
    min-height: min(52vh, 480px);
  }
  body.gc-account-page.gc-account-messages-inline-route .gc-messages-compose textarea {
    min-height: 96px;
    font-size: 16px;
  }
}

@media (max-width: 480px) {
  body.gc-account-page.gc-account-messages-inline-route .gc-messages-shell {
    border-radius: calc(var(--gc-radius-scale, 1) * 12px);
    margin: 0 2px;
    min-height: min(78vh, 880px);
  }
  body.gc-account-page.gc-account-messages-inline-route .gc-messages-shell__panel {
    min-height: min(54vh, 500px);
  }
  body.gc-account-page.gc-account-messages-inline-route .gc-messages-shell__toolbar,
  body.gc-account-page.gc-account-messages-inline-route .gc-messages-shell__new-chat,
  body.gc-account-page.gc-account-messages-inline-route .gc-messages-thread-list,
  body.gc-account-page.gc-account-messages-inline-route .gc-messages-panel__header,
  body.gc-account-page.gc-account-messages-inline-route .gc-messages-panel__timeline,
  body.gc-account-page.gc-account-messages-inline-route .gc-messages-compose {
    padding-left: 6px;
    padding-right: 6px;
  }
}

/* 4. Compose area fixes for AJAX route */
body.gc-account-page.gc-account-messages-inline-route .gc-messages-shell .gc-message-thread-settings {
  background: rgba(var(--gc-bg-rgb), 0.96);
}

body.gc-account-page.gc-account-messages-inline-route .gc-messages-shell .gc-messages-compose__price.gc-message-fold-panel {
  background: rgba(var(--gc-slate-rgb), 0.54);
  border-color: rgba(var(--gc-text-soft-rgb), 0.16);
}


/* v1.16.x desktop compose area scaling fix - staging only */
/* Problem: On desktop, when the browser window is resized smaller, the messenger
   shell has min-height but no max-height constraint. The panel uses overflow:hidden
   which clips the compose area (send button, PPV settings) when the viewport
   becomes too short. Fix: constrain shell height to viewport, ensure compose
   area is always visible by adjusting the grid layout strategy. */

/* 1. Shell max-height tied to viewport so it never exceeds available space */
body.gc-account-page.gc-messages-page .gc-messages-shell,
body.gc-account-page.gc-account-messages-inline-route .gc-messages-shell,
body.gc-store-manager-page.gc-messages-page .gc-messages-shell {
  max-height: calc(100vh - 160px) !important;
  min-height: min(60vh, 520px) !important;
}

/* 2. Inline shell context needs offset for account nav */
body.gc-account-page.gc-messages-page .gc-account-inline-shell .gc-messages-shell,
body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell .gc-messages-shell {
  max-height: calc(100vh - 200px) !important;
}

/* 3. Panel must scroll timeline, not clip compose area */
body.gc-account-page.gc-messages-page .gc-messages-shell__panel,
body.gc-account-page.gc-account-messages-inline-route .gc-messages-shell__panel,
body.gc-store-manager-page.gc-messages-page .gc-messages-shell__panel {
  min-height: 0 !important;
  height: 100% !important;
  overflow: hidden !important;
}

/* 4. Compose area must never be clipped - always visible at bottom */
body.gc-account-page.gc-messages-page .gc-messages-compose,
body.gc-account-page.gc-account-messages-inline-route .gc-messages-compose,
body.gc-store-manager-page.gc-messages-page .gc-messages-compose {
  flex-shrink: 0 !important;
  overflow: visible !important;
  min-height: auto !important;
}

/* 5. Timeline absorbs all remaining space and scrolls */
body.gc-account-page.gc-messages-page .gc-messages-panel__timeline,
body.gc-account-page.gc-account-messages-inline-route .gc-messages-panel__timeline,
body.gc-store-manager-page.gc-messages-page .gc-messages-panel__timeline {
  flex: 1 1 0 !important;
  min-height: 0 !important;
  overflow-y: auto !important;
}

/* 6. PPV settings and footer must not overflow horizontally */
body.gc-account-page .gc-messages-compose__price.gc-message-fold-panel,
body.gc-store-manager-page .gc-messages-compose__price.gc-message-fold-panel {
  max-width: 100% !important;
  box-sizing: border-box !important;
}

body.gc-account-page .gc-messages-compose__footer,
body.gc-store-manager-page .gc-messages-compose__footer {
  max-width: 100% !important;
  box-sizing: border-box !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
}

/* 7. Store-manager shell context offset for WCFM header */
body.gc-store-manager-page.gc-messages-page .gc-messages-shell {
  max-height: calc(100vh - 120px) !important;
}


/* v1.16.x compose area PPV scroll fix - staging only */
/* Problem: When PPV settings fold panel is opened on desktop, the expanded content
   can push the send button out of the visible area. The compose area has flex-shrink:0
   and the shell has max-height, so the compose may exceed available space.
   Fix: cap compose area height and make it scrollable when PPV panel is open. */

/* 1. Compose area gets max-height and scrolls when content exceeds it */
body.gc-account-page.gc-messages-page .gc-messages-compose,
body.gc-account-page.gc-account-messages-inline-route .gc-messages-compose,
body.gc-store-manager-page.gc-messages-page .gc-messages-compose {
  max-height: min(50vh, 420px) !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  flex-shrink: 0 !important;
}

/* 2. When PPV panel is closed, compose is small - no scroll needed */
body.gc-account-page .gc-messages-compose:not(:has(.gc-message-fold-panel.is-open)),
body.gc-store-manager-page .gc-messages-compose:not(:has(.gc-message-fold-panel.is-open)) {
  overflow-y: hidden !important;
}


/* v1.16.x PPV checkbox styling fix - staging only */
/* Problem: The PPV "Use PPV for this message" checkbox inside the fold panel
   appears oversized, loses its square shape on scaling, and shows no checkmark
   when checked. Fix: force the checkbox to a fixed square size with proper
   native appearance and add a custom visual fallback for the checked state. */

/* 1. Force the checkbox inside the paid toggle panel to be a proper square */
.gc-messages-compose__paid-toggle--panel input[type="checkbox"],
body.gc-account-page .gc-messages-compose__paid-toggle--panel input[type="checkbox"],
body.gc-store-manager-page .gc-messages-compose__paid-toggle--panel input[type="checkbox"] {
  appearance: none !important;
  -webkit-appearance: none !important;
  width: 20px !important;
  height: 20px !important;
  min-width: 20px !important;
  min-height: 20px !important;
  max-width: 20px !important;
  max-height: 20px !important;
  flex: 0 0 20px !important;
  aspect-ratio: 1 / 1 !important;
  border: 2px solid rgba(var(--gc-accent-rgb), 0.5) !important;
  border-radius: calc(var(--gc-radius-scale, 1) * 5px) !important;
  background: rgba(var(--gc-bg-rgb), 0.88) !important;
  cursor: pointer !important;
  position: relative !important;
  display: inline-block !important;
  vertical-align: middle !important;
  margin: 0 !important;
  padding: 0 !important;
  box-shadow: none !important;
  transition: background-color 0.15s ease, border-color 0.15s ease !important;
}

/* 2. Checked state - teal background with white checkmark */
.gc-messages-compose__paid-toggle--panel input[type="checkbox"]:checked,
body.gc-account-page .gc-messages-compose__paid-toggle--panel input[type="checkbox"]:checked,
body.gc-store-manager-page .gc-messages-compose__paid-toggle--panel input[type="checkbox"]:checked {
  background: var(--gc-accent-deep) !important;
  border-color: var(--gc-accent-deep) !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%23ffffff' d='M6.2 11.5 2.7 8l1.4-1.4 2.1 2.1 5.7-5.7L13.3 4z'/%3E%3C/svg%3E") !important;
  background-size: 14px 14px !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
}

/* 3. Focus visible state */
.gc-messages-compose__paid-toggle--panel input[type="checkbox"]:focus-visible,
body.gc-account-page .gc-messages-compose__paid-toggle--panel input[type="checkbox"]:focus-visible,
body.gc-store-manager-page .gc-messages-compose__paid-toggle--panel input[type="checkbox"]:focus-visible {
  outline: 2px solid rgba(var(--gc-accent-cyan-rgb), 0.45) !important;
  outline-offset: 2px !important;
}

/* 4. Hover state */
.gc-messages-compose__paid-toggle--panel input[type="checkbox"]:hover,
body.gc-account-page .gc-messages-compose__paid-toggle--panel input[type="checkbox"]:hover,
body.gc-store-manager-page .gc-messages-compose__paid-toggle--panel input[type="checkbox"]:hover {
  border-color: rgba(var(--gc-accent-rgb), 0.8) !important;
}

/* 5. Ensure the label text doesn't stretch the checkbox */
.gc-messages-compose__paid-toggle--panel > span {
  flex: 1 1 auto;
  min-width: 0;
}


/* v1.24.19 broadcast clip reference cards */
.gc-message-clip-ref-card {
  display: grid;
  grid-template-columns: minmax(120px, 164px) minmax(0, 1fr);
  gap: 14px;
  align-items: stretch;
  margin-top: 14px;
  padding: 14px;
  border-radius: calc(var(--gc-radius-scale, 1) * 20px);
  border: 1px solid rgba(var(--gc-accent-rgb), 0.2);
  background:
    radial-gradient(circle at top right, rgba(var(--gc-accent-rgb), 0.12), transparent 34%),
    rgba(var(--gc-surface-2-rgb), 0.9);
  overflow: hidden;
}

.gc-message-clip-ref-card__media {
  display: block;
  overflow: hidden;
  border-radius: calc(var(--gc-radius-scale, 1) * 16px);
  min-height: 108px;
  background: rgba(var(--gc-bg-rgb), 0.72);
  border: 1px solid rgba(var(--gc-text-soft-rgb), 0.16);
}

.gc-message-clip-ref-card__media img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 108px;
  object-fit: cover;
}

.gc-message-clip-ref-card__media-placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 108px;
  padding: 18px;
  color: rgba(var(--gc-text-muted-rgb), 0.72);
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.gc-message-clip-ref-card__body {
  display: flex;
  flex-direction: column;
  gap: 10px;
  min-width: 0;
}

.gc-message-clip-ref-card__eyebrow {
  color: var(--gc-accent-cyan-soft);
  font-size: 0.76rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.gc-message-clip-ref-card__title {
  margin: 0;
  color: #f8fafc;
  font-size: 1rem;
  line-height: 1.35;
}

.gc-message-clip-ref-card__title a {
  color: inherit;
  text-decoration: none;
}

.gc-message-clip-ref-card__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
  color: rgba(var(--gc-text-muted-rgb), 0.72);
  font-size: 0.9rem;
}

.gc-message-clip-ref-card__footer {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: auto;
}

.gc-message-clip-ref-card__price {
  color: #f8fafc;
  font-size: 0.96rem;
  font-weight: 800;
}

.gc-message-clip-ref-card__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.gc-message-clip-ref-card__actions .gc-button {
  min-height: 38px;
  padding: 0 14px;
}

.gc-broadcast-workspace__clip-ref-row {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.gc-broadcast-workspace__clip-ref-select-wrap {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.gc-broadcast-workspace__clip-ref-select-wrap > span {
  color: rgba(var(--gc-text-muted-rgb), 0.78);
  font-size: 0.88rem;
  font-weight: 700;
}

.gc-broadcast-workspace__clip-ref-select {
  width: 100%;
  min-height: 48px;
  padding: 0 14px;
  border-radius: calc(var(--gc-radius-scale, 1) * 14px);
  border: 1px solid rgba(var(--gc-text-soft-rgb), 0.22);
  background: rgba(var(--gc-slate-rgb), 0.68);
  color: #f8fafc;
}

.gc-broadcast-workspace__clip-ref-select:focus {
  outline: none;
  border-color: rgba(var(--gc-accent-cyan-rgb), 0.52);
  box-shadow: 0 0 0 3px rgba(var(--gc-accent-cyan-rgb), 0.14);
}

.gc-broadcast-workspace__clip-ref-preview {
  padding: 14px;
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  border: 1px solid rgba(var(--gc-text-soft-rgb), 0.18);
  background: rgba(var(--gc-slate-rgb), 0.46);
}

.gc-broadcast-workspace__clip-ref-preview.is-empty {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.gc-broadcast-workspace__clip-ref-preview.is-empty strong {
  color: #f8fafc;
}

.gc-broadcast-workspace__clip-ref-preview.is-empty span {
  color: rgba(var(--gc-text-muted-rgb), 0.72);
  font-size: 0.9rem;
  line-height: 1.45;
}

.gc-broadcast-log__clip-ref {
  margin: -2px 0 0;
  color: rgba(var(--gc-accent-cyan-soft-rgb), 0.86);
  font-size: 0.84rem;
}

@media (max-width: 720px) {
  .gc-message-clip-ref-card {
    grid-template-columns: 1fr;
  }

  .gc-message-clip-ref-card__media,
  .gc-message-clip-ref-card__media img,
  .gc-message-clip-ref-card__media-placeholder {
    min-height: 180px;
  }

  .gc-message-clip-ref-card__footer,
  .gc-message-clip-ref-card__actions {
    width: 100%;
    justify-content: stretch;
  }

  .gc-message-clip-ref-card__actions .gc-button {
    width: 100%;
    justify-content: center;
  }
}

/* v1.24.21 broadcast auto-template cards */
.gc-broadcast-templates {
  display: flex;
  flex-direction: column;
  gap: 14px;
  margin: 18px 0 6px;
}

.gc-broadcast-templates__grid {
  display: flex;
  gap: 18px;
  overflow-x: auto;
  overflow-y: hidden;
  padding: 2px 2px 8px;
  scroll-snap-type: x proximity;
  -webkit-overflow-scrolling: touch;
}

.gc-broadcast-templates__grid::-webkit-scrollbar {
  height: 10px;
}

.gc-broadcast-templates__grid::-webkit-scrollbar-thumb {
  background: rgba(var(--gc-text-soft-rgb), 0.45);
  border-radius: var(--gc-radius-pill);
}

.gc-broadcast-template-card {
  display: flex;
  flex-direction: column;
  gap: 12px;
  flex: 0 0 calc((100% - 18px) / 2);
  min-width: 0;
  scroll-snap-align: start;
  padding: 16px;
  border-radius: calc(var(--gc-radius-scale, 1) * 22px);
  border: 1px solid rgba(var(--gc-text-soft-rgb), 0.18);
  background: rgba(var(--gc-surface-2-rgb), 0.88);
  box-shadow: 0 16px 34px rgba(var(--gc-deep-rgb), 0.16);
}

.gc-broadcast-template-card--pending {
  border-color: rgba(var(--gc-accent-cyan-rgb), 0.28);
  background:
    radial-gradient(circle at top right, rgba(var(--gc-accent-cyan-rgb), 0.12), transparent 34%),
    rgba(var(--gc-surface-2-rgb), 0.9);
}

.gc-broadcast-template-card--quickstart {
  border-color: rgba(var(--gc-accent-deep-rgb), 0.24);
  background:
    radial-gradient(circle at top right, rgba(var(--gc-accent-deep-rgb), 0.12), transparent 34%),
    rgba(var(--gc-surface-2-rgb), 0.9);
}

.gc-broadcast-template-card__meta {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: flex-start;
}

.gc-broadcast-template-card__meta strong {
  color: #f8fafc;
  font-size: 1rem;
  line-height: 1.3;
}

.gc-broadcast-template-card__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 30px;
  padding: 0 12px;
  border-radius: var(--gc-radius-pill);
  border: 1px solid rgba(var(--gc-text-soft-rgb), 0.2);
  background: rgba(var(--gc-slate-rgb), 0.68);
  color: rgba(var(--gc-text-muted-rgb), 0.88);
  font-size: 0.76rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  white-space: nowrap;
}

.gc-broadcast-template-card__copy {
  margin: 0;
  color: rgba(var(--gc-text-muted-rgb), 0.78);
  line-height: 1.55;
  word-break: break-word;
  overflow-wrap: anywhere;
}

.gc-broadcast-template-card__foot {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 10px;
  align-items: center;
  margin-top: auto;
}

.gc-broadcast-template-card__foot > span {
  color: rgba(var(--gc-text-muted-rgb), 0.7);
  font-size: 0.86rem;
  line-height: 1.45;
}

.gc-broadcast-template-card .gc-message-clip-ref-card--workspace {
  margin-top: 0;
}

.gc-broadcast-templates__head-actions {
  display: flex;
  align-items: center;
  gap: 10px;
}

.gc-broadcast-templates__mobile-toggle {
  display: none;
  align-items: center;
  gap: 10px;
  min-height: 38px;
  padding: 0 12px;
  border-radius: var(--gc-radius-pill);
  border: 1px solid rgba(var(--gc-text-soft-rgb), 0.24);
  background: rgba(var(--gc-slate-rgb), 0.68);
  color: #f8fafc;
  font-size: 0.82rem;
  font-weight: 800;
  letter-spacing: 0.01em;
}

.gc-broadcast-templates__mobile-toggle-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 24px;
  height: 24px;
  padding: 0 8px;
  border-radius: var(--gc-radius-pill);
  background: rgba(var(--gc-accent-cyan-rgb), 0.18);
  color: var(--gc-accent-cyan-soft);
  font-size: 0.78rem;
  line-height: 1;
}

@media (max-width: 720px) {
  .gc-broadcast-templates__head-actions {
    width: 100%;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 10px;
  }

  .gc-broadcast-templates__mobile-toggle {
    display: inline-flex;
  }

  .gc-broadcast-templates.is-mobile-collapsed .gc-broadcast-templates__body {
    display: none;
  }

  .gc-broadcast-template-card {
    flex-basis: 100%;
  }

  .gc-broadcast-template-card__meta,
  .gc-broadcast-template-card__foot {
    flex-direction: column;
    align-items: stretch;
  }

  .gc-broadcast-template-card__badge,
  .gc-broadcast-template-card__foot .gc-button {
    align-self: flex-start;
  }

  .gc-broadcast-template-card__copy {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  .gc-broadcast-template-card__foot .gc-button {
    width: 100%;
    justify-content: center;
  }
}

/* v1.24.22 thread window pagination */
.gc-messages-panel__load-older {
  display: flex;
  justify-content: center;
  margin: 0 0 16px;
  padding-top: 2px;
}

.gc-messages-panel__load-older-button {
  min-height: 40px;
  padding: 0 16px;
  border-radius: var(--gc-radius-pill);
}

.gc-messages-panel__load-older-button[data-loading="1"] {
  opacity: 0.86;
  cursor: wait;
}

@media (max-width: 720px) {
  .gc-messages-panel__load-older {
    margin-bottom: 12px;
  }

  .gc-messages-panel__load-older-button {
    width: 100%;
    justify-content: center;
  }
}


/* v1.24.23 store-manager load-older ajax + mobile compose follow-up */
@media (max-width: 760px) {
  body.gc-account-page.gc-messages-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose {
    max-height: min(60vh, 520px) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 10px !important;
  }

  body.gc-account-page.gc-messages-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__tools,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__tools {
    gap: 12px !important;
    padding-bottom: 4px !important;
  }

  body.gc-account-page.gc-messages-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__tool-row,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__tool-row {
    gap: 10px !important;
  }
}

@media (max-width: 480px) {
  body.gc-account-page.gc-messages-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose {
    max-height: min(62vh, 540px) !important;
    padding-bottom: 12px !important;
  }
}


/* v1.24.24 mobile PPV expansion + popup layout follow-up */
@media (max-width: 760px) {
  body.gc-account-page.gc-messages-page .gc-messages-shell:not(.gc-messages-shell--thread-popup),
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell:not(.gc-messages-shell--thread-popup) {
    height: auto !important;
    max-height: none !important;
    min-height: 0 !important;
    overflow: visible !important;
  }

  body.gc-account-page.gc-messages-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-shell__panel,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-shell__panel,
  body.gc-account-page.gc-messages-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose,
  body.gc-account-page.gc-messages-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__tools,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__tools,
  body.gc-account-page.gc-messages-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__attachment-preview,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__attachment-preview,
  body.gc-account-page.gc-messages-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-message-fold-panel.is-open,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-message-fold-panel.is-open,
  body.gc-account-page.gc-messages-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-message-fold-panel.is-open .gc-message-fold-panel__body,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-message-fold-panel.is-open .gc-message-fold-panel__body {
    max-height: none !important;
    overflow: visible !important;
  }

  body.gc-account-page.gc-messages-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose {
    padding-bottom: 18px !important;
  }

  body.gc-account-page.gc-messages-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-message-fold-panel.is-open .gc-message-fold-panel__body,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-message-fold-panel.is-open .gc-message-fold-panel__body {
    padding-bottom: 14px !important;
  }

  body.gc-account-page.gc-messages-page .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__footer,
  body.gc-account-page.gc-account-messages-inline-route .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-shell:not(.gc-messages-shell--thread-popup) .gc-messages-compose__footer {
    position: static !important;
    margin-top: 12px !important;
  }
}

body.gc-chat-popup-page .gc-site-main,
body.gc-chat-popup-page .gc-wrap.gc-content,
body.gc-chat-popup-page .gc-chat-popup-shell,
body.gc-chat-popup-page .gc-wrap.gc-content > article,
body.gc-chat-popup-page .gc-wrap.gc-content > .page,
body.gc-chat-popup-page .gc-wrap.gc-content > .type-page {
  display: flex !important;
  flex-direction: column !important;
  min-height: 100dvh !important;
  height: 100dvh !important;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup,
body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-shell__panel--popup {
  display: flex !important;
  flex-direction: column !important;
  min-height: 100dvh !important;
  height: 100dvh !important;
  max-height: 100dvh !important;
  overflow: hidden !important;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__header {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: start !important;
  gap: 12px !important;
  padding: 12px 14px !important;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__identity,
body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__identity > div {
  min-width: 0 !important;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__actions {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  justify-content: flex-start !important;
  gap: 8px !important;
  width: auto !important;
  max-width: 140px !important;
  margin: 0 !important;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__actions .gc-button {
  width: auto !important;
  min-width: 44px !important;
  min-height: 40px !important;
  padding: 0 14px !important;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__timeline {
  flex: 1 1 auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  padding: 12px 14px !important;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-compose {
  flex: 0 0 auto !important;
  margin-top: 0 !important;
  padding: 10px 14px calc(12px + env(safe-area-inset-bottom)) !important;
  background: linear-gradient(180deg, rgba(var(--gc-bg-rgb), 0.98), rgba(var(--gc-deep-rgb), 0.98)) !important;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-compose__footer {
  margin-top: 10px !important;
}

@media (max-width: 560px) {
  body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__header {
    grid-template-columns: minmax(0, 1fr) auto !important;
  }

  body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__actions .gc-button {
    min-width: 40px !important;
    padding: 0 12px !important;
  }
}



/* v1.24.26 popup shell height + compose flow reset */
body.gc-account-page.gc-messages-page.gc-chat-popup-page .gc-site-main,
body.gc-account-page.gc-messages-page.gc-chat-popup-page .gc-wrap.gc-content,
body.gc-account-page.gc-messages-page.gc-chat-popup-page .gc-chat-popup-shell,
body.gc-account-page.gc-messages-page.gc-chat-popup-page .gc-wrap.gc-content > article,
body.gc-account-page.gc-messages-page.gc-chat-popup-page .gc-wrap.gc-content > .page,
body.gc-account-page.gc-messages-page.gc-chat-popup-page .gc-wrap.gc-content > .type-page {
  display: flex !important;
  flex-direction: column !important;
  min-width: 0 !important;
  min-height: 100dvh !important;
  height: 100dvh !important;
  max-height: 100dvh !important;
}

body.gc-account-page.gc-messages-page.gc-chat-popup-page .gc-chat-popup-shell,
body.gc-account-page.gc-messages-page.gc-chat-popup-page .gc-wrap.gc-content > article,
body.gc-account-page.gc-messages-page.gc-chat-popup-page .gc-wrap.gc-content > .page,
body.gc-account-page.gc-messages-page.gc-chat-popup-page .gc-wrap.gc-content > .type-page {
  flex: 1 1 auto !important;
  min-height: 0 !important;
}

body.gc-account-page.gc-messages-page.gc-chat-popup-page .gc-messages-shell.gc-messages-shell--thread-popup,
body.gc-account-page.gc-messages-page.gc-chat-popup-page .gc-messages-shell.gc-messages-shell--thread-popup .gc-messages-shell__panel--popup {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  height: 100% !important;
  max-height: 100% !important;
  overflow: hidden !important;
}

body.gc-account-page.gc-messages-page.gc-chat-popup-page .gc-messages-shell.gc-messages-shell--thread-popup .gc-messages-panel__header {
  flex: 0 0 auto !important;
}

body.gc-account-page.gc-messages-page.gc-chat-popup-page .gc-messages-shell.gc-messages-shell--thread-popup .gc-messages-panel__timeline {
  flex: 1 1 auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
}

body.gc-account-page.gc-messages-page.gc-chat-popup-page .gc-messages-shell.gc-messages-shell--thread-popup .gc-messages-compose {
  display: flex !important;
  flex-direction: column !important;
  flex: 0 0 auto !important;
  flex-shrink: 0 !important;
  min-height: auto !important;
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
  overflow-y: visible !important;
  overflow-x: hidden !important;
  overscroll-behavior: auto !important;
  margin-top: 0 !important;
  padding: 10px 14px calc(12px + env(safe-area-inset-bottom)) !important;
  background: linear-gradient(180deg, rgba(var(--gc-bg-rgb), 0.98), rgba(var(--gc-deep-rgb), 0.98)) !important;
}

body.gc-account-page.gc-messages-page.gc-chat-popup-page .gc-messages-shell.gc-messages-shell--thread-popup .gc-messages-compose:not(:has(.gc-message-fold-panel.is-open)) {
  overflow-y: visible !important;
}

body.gc-account-page.gc-messages-page.gc-chat-popup-page .gc-messages-shell.gc-messages-shell--thread-popup .gc-messages-compose__tools,
body.gc-account-page.gc-messages-page.gc-chat-popup-page .gc-messages-shell.gc-messages-shell--thread-popup .gc-messages-compose__attachment-preview,
body.gc-account-page.gc-messages-page.gc-chat-popup-page .gc-messages-shell.gc-messages-shell--thread-popup .gc-message-fold-panel.is-open,
body.gc-account-page.gc-messages-page.gc-chat-popup-page .gc-messages-shell.gc-messages-shell--thread-popup .gc-message-fold-panel.is-open .gc-message-fold-panel__body {
  max-height: none !important;
  overflow: visible !important;
}

body.gc-account-page.gc-messages-page.gc-chat-popup-page .gc-messages-shell.gc-messages-shell--thread-popup .gc-messages-compose__footer {
  position: static !important;
  bottom: auto !important;
  z-index: auto !important;
  margin-top: 10px !important;
  padding-top: 0 !important;
  padding-bottom: max(0px, env(safe-area-inset-bottom)) !important;
  background: transparent !important;
}

body.gc-account-page.gc-messages-page.gc-chat-popup-page .gc-messages-shell.gc-messages-shell--thread-popup .gc-messages-compose__footer .gc-button {
  display: inline-flex !important;
  width: 100% !important;
  min-height: 44px !important;
}


/* v1.24.27 custom orders + popup latest-message scroll follow-up */
.gc-order-status-pill--accepted {
  background: rgba(96, 165, 250, 0.18);
  color: #bfdbfe;
}

.gc-order-status-pill--paid,
.gc-order-status-pill--delivered {
  background: rgba(61, 214, 140, 0.18);
  color: #b7f7d2;
}

.gc-order-status-pill--working {
  background: rgba(167, 139, 250, 0.18);
  color: #ddd6fe;
}

.gc-order-history-card--custom-order {
  border-color: rgba(var(--gc-accent-2-rgb), 0.22);
}

.gc-custom-order-box {
  margin-top: 22px;
  padding: 24px;
  border-radius: calc(var(--gc-radius-scale, 1) * 24px);
  border: 1px solid var(--gc-border);
  background: linear-gradient(180deg, rgba(var(--gc-surface-2-rgb), 0.96), rgba(var(--gc-bg-rgb), 0.96));
  box-shadow: var(--gc-shadow-soft);
}

.gc-custom-order-box__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
  margin-bottom: 18px;
}

.gc-custom-order-box__head h3,
.gc-custom-order-box__panel h4 {
  margin: 0;
}

.gc-custom-order-box__panel h4 {
  font-size: 1rem;
  margin-bottom: 12px;
}

.gc-custom-order-box__actions {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
}

.gc-custom-order-box__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
  gap: 20px;
}

.gc-custom-order-box__panel {
  padding: 18px;
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  border: 1px solid rgba(var(--gc-text-soft-rgb), 0.14);
  background: rgba(255, 255, 255, 0.03);
}

.gc-custom-order-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 10px;
}

.gc-custom-order-list li {
  color: var(--gc-text-soft);
  line-height: 1.55;
}

.gc-custom-order-list strong {
  color: var(--gc-text);
}

.gc-custom-order-story {
  max-height: 300px;
  overflow-y: auto;
  
  color: var(--gc-text-soft);
  line-height: 1.65;
  white-space: pre-wrap;
}

.gc-custom-order-status-note {
  margin: 16px 0 0;
  color: var(--gc-text-soft);
}

.gc-custom-order-status-tracker {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.gc-custom-order-status-tracker__step {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 9px 12px;
  border-radius: var(--gc-radius-pill);
  border: 1px solid rgba(var(--gc-text-soft-rgb), 0.14);
  background: rgba(255, 255, 255, 0.03);
  color: var(--gc-text-soft);
  font-size: 0.92rem;
}

.gc-custom-order-status-tracker__dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: rgba(var(--gc-text-soft-rgb), 0.45);
  flex: 0 0 10px;
}

.gc-custom-order-status-tracker__step.is-complete,
.gc-custom-order-status-tracker__step.is-current {
  color: var(--gc-text);
}

.gc-custom-order-status-tracker__step.is-complete {
  border-color: rgba(61, 214, 140, 0.28);
  background: rgba(61, 214, 140, 0.10);
}

.gc-custom-order-status-tracker__step.is-complete .gc-custom-order-status-tracker__dot {
  background: var(--gc-success);
}

.gc-custom-order-status-tracker__step.is-current {
  border-color: rgba(var(--gc-accent-2-rgb), 0.36);
  background: rgba(var(--gc-accent-2-rgb), 0.12);
}

.gc-custom-order-status-tracker__step.is-current .gc-custom-order-status-tracker__dot {
  background: var(--gc-accent-2);
}

.gc-custom-order-status-tracker__step.is-disabled {
  opacity: 0.55;
}

.gc-custom-order-status-tracker__step.is-cancelled {
  border-color: rgba(239, 68, 68, 0.32);
  background: rgba(239, 68, 68, 0.10);
}

.gc-custom-order-status-tracker__step.is-cancelled .gc-custom-order-status-tracker__dot {
  background: rgba(239, 68, 68, 0.9);
}

@media (max-width: 780px) {
  .gc-custom-order-box {
    padding: 20px;
  }

  .gc-custom-order-box__grid {
    grid-template-columns: 1fr;
  }

  .gc-custom-order-box__actions {
    width: 100%;
  }

  .gc-custom-order-box__actions .gc-button {
    width: 100%;
    justify-content: center;
  }
}

/* v1.24.28 popup latest-message, custom-order wrapping, and single-clip custom-order note */
body.gc-chat-popup-page {
  height: 100dvh !important;
  overflow: hidden !important;
}

body.gc-chat-popup-page .gc-site-main,
body.gc-chat-popup-page .gc-site-main--minimal-shell,
body.gc-chat-popup-page .gc-chat-popup-shell,
body.gc-chat-popup-page .gc-wrap.gc-content,
body.gc-chat-popup-page .gc-wrap.gc-content > article,
body.gc-chat-popup-page .gc-wrap.gc-content > .page,
body.gc-chat-popup-page .gc-wrap.gc-content > .type-page {
  height: 100dvh !important;
  min-height: 100dvh !important;
  overflow: hidden !important;
}

.gc-messages-panel__load-older,
.gc-messages-panel__load-older * {
  overflow-anchor: none;
}

.gc-custom-order-box__head > *,
.gc-custom-order-box__grid > *,
.gc-custom-order-box__panel {
  min-width: 0;
}

.gc-custom-order-list li,
.gc-custom-order-story,
.gc-custom-order-status-note {
  overflow-wrap: anywhere;
  word-break: break-word;
}

.gc-clip-watch-custom-order-note {
  margin: 18px 0 0;
  padding: 16px 18px;
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  border: 1px solid rgba(var(--gc-accent-2-rgb), 0.28);
  background: linear-gradient(180deg, rgba(var(--gc-surface-rgb), 0.92), rgba(var(--gc-surface-rgb), 0.92));
  box-shadow: 0 18px 36px rgba(5, 8, 18, 0.24);
}

.gc-clip-watch-custom-order-note--exclusive {
  border-color: rgba(244, 114, 182, 0.30);
  background: linear-gradient(180deg, rgba(53, 18, 44, 0.94), rgba(26, 10, 26, 0.94));
}

.gc-clip-watch-custom-order-note__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-bottom: 8px;
  padding: 6px 10px;
  border-radius: var(--gc-radius-pill);
  background: rgba(var(--gc-accent-2-rgb), 0.16);
  color: #ddd6fe;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.gc-clip-watch-custom-order-note--exclusive .gc-clip-watch-custom-order-note__eyebrow {
  background: rgba(244, 114, 182, 0.16);
  color: #fbcfe8;
}

.gc-clip-watch-custom-order-note p {
  margin: 0;
  color: var(--gc-text-soft);
  line-height: 1.65;
  overflow-wrap: anywhere;
  word-break: break-word;
}


/* v1.24.29 chat scroll, custom-order storefront, account, header, and login polish */
.gc-main-nav__link,
.gc-main-nav__item > a {
  white-space: nowrap;
  font-size: 0.92rem; /* v4.38.83: fixed — no vw scaling */
}

.gc-commerce-panel .woocommerce form.login .form-row,
.gc-commerce-panel .woocommerce form.register .form-row,
.gc-commerce-panel .woocommerce form.lost_reset_password .form-row,
.gc-commerce-panel .woocommerce form.woocommerce-form-login .form-row,
.gc-commerce-panel .woocommerce form.woocommerce-form-register .form-row,
.gc-commerce-panel .woocommerce form.woocommerce-ResetPassword .form-row,
.gc-commerce-panel .woocommerce form.login .form-row-first,
.gc-commerce-panel .woocommerce form.login .form-row-last,
.gc-commerce-panel .woocommerce form.register .form-row-first,
.gc-commerce-panel .woocommerce form.register .form-row-last,
.gc-commerce-panel .woocommerce form.woocommerce-form-login .form-row-first,
.gc-commerce-panel .woocommerce form.woocommerce-form-login .form-row-last,
.gc-commerce-panel .woocommerce form.woocommerce-form-register .form-row-first,
.gc-commerce-panel .woocommerce form.woocommerce-form-register .form-row-last {
  float: none !important;
  width: 100% !important;
}

.gc-commerce-panel .woocommerce form.login .form-row label:not(.woocommerce-form__label-for-checkbox),
.gc-commerce-panel .woocommerce form.register .form-row label:not(.woocommerce-form__label-for-checkbox),
.gc-commerce-panel .woocommerce form.lost_reset_password .form-row label:not(.woocommerce-form__label-for-checkbox),
.gc-commerce-panel .woocommerce form.woocommerce-form-login .form-row label:not(.woocommerce-form__label-for-checkbox),
.gc-commerce-panel .woocommerce form.woocommerce-form-register .form-row label:not(.woocommerce-form__label-for-checkbox),
.gc-commerce-panel .woocommerce form.woocommerce-ResetPassword .form-row label:not(.woocommerce-form__label-for-checkbox) {
  display: block !important;
  width: 100% !important;
  float: none !important;
  margin: 0 0 8px !important;
  line-height: 1.45;
}

.gc-commerce-panel .woocommerce .woocommerce-form__label-for-checkbox,
.gc-commerce-panel .woocommerce .woocommerce-form-login__rememberme {
  display: inline-flex !important;
  width: auto !important;
  margin: 0 !important;
}

.gc-commerce-panel .woocommerce .password-input {
  position: relative;
  display: block;
  width: 100%;
}

.gc-commerce-panel .woocommerce .password-input input[type="password"],
.gc-commerce-panel .woocommerce .password-input input[type="text"] {
  padding-right: 88px !important;
}

.gc-commerce-panel .woocommerce button.show-password-input {
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translateY(-50%);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  width: auto;
  padding: 0 12px;
  border-radius: var(--gc-radius-pill);
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.08);
  color: #fff;
  box-shadow: none;
  cursor: pointer;
}

.gc-commerce-panel .woocommerce button.show-password-input::before {
  content: 'Show';
  font-size: 0.76rem;
  font-weight: 800;
  letter-spacing: 0.01em;
  line-height: 1;
}

.gc-commerce-panel .woocommerce button.show-password-input.display-password::before {
  content: 'Hide';
}

.gc-commerce-panel .woocommerce button.show-password-input::after {
  display: none !important;
}

.gc-commerce-panel .woocommerce button.show-password-input:hover,
.gc-commerce-panel .woocommerce button.show-password-input:focus {
  border-color: rgba(var(--gc-accent-rgb), 0.45);
  background: rgba(var(--gc-accent-rgb), 0.14);
  color: #fff;
}

.gc-commerce-panel .woocommerce button.show-password-input:focus {
  outline: none;
  box-shadow: 0 0 0 4px rgba(var(--gc-accent-rgb), 0.12);
}

body.gc-account-page .gc-account-order-view {
  min-width: 0;
}

body.gc-account-page .gc-account-order-view .gc-order-received__summary,
body.gc-account-page .gc-account-order-view .gc-custom-order-box,
body.gc-account-page .gc-account-order-view .gc-order-received__email-banner {
  min-width: 0;
}

body.gc-chat-popup-page .gc-messages-panel__timeline,
body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__timeline,
body.gc-account-page .gc-messages-panel__timeline,
body.gc-store-manager-page .gc-messages-panel__timeline {
  -webkit-overflow-scrolling: touch;
  touch-action: pan-y;
  overscroll-behavior: contain;
}

@media (max-width: 720px) {
  body.gc-account-page .gc-account-order-view {
    gap: 16px;
  }

  body.gc-account-page .gc-account-order-view .gc-order-received__summary,
  body.gc-account-page .gc-account-order-view .gc-custom-order-box,
  body.gc-account-page .gc-account-order-view .gc-order-received__email-banner {
    padding: 16px;
    border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  }

  body.gc-account-page .gc-account-order-view .gc-order-received__summary-grid {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  body.gc-account-page .gc-account-order-view .gc-order-received__summary-card,
  body.gc-account-page .gc-account-order-view .gc-custom-order-box__panel {
    padding: 14px 15px;
    border-radius: calc(var(--gc-radius-scale, 1) * 14px);
  }

  body.gc-account-page .gc-account-order-view .gc-custom-order-box__head {
    margin-bottom: 14px;
    gap: 12px;
  }

  body.gc-account-page .gc-account-order-view .gc-custom-order-box__actions {
    width: 100%;
  }

  body.gc-account-page .gc-account-order-view .gc-custom-order-box__actions .gc-button {
    width: 100%;
    justify-content: center;
  }
}


/* v1.24.31 popup timeline scaling + scroll follow-up */
body.gc-chat-popup-page .gc-site-main,
body.gc-chat-popup-page .gc-site-main--minimal-shell,
body.gc-chat-popup-page .gc-chat-popup-shell,
body.gc-chat-popup-page .gc-wrap.gc-content,
body.gc-chat-popup-page .gc-wrap.gc-content > article,
body.gc-chat-popup-page .gc-wrap.gc-content > .page,
body.gc-chat-popup-page .gc-wrap.gc-content > .type-page {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  height: 100dvh !important;
  max-height: 100dvh !important;
  overflow: hidden !important;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup,
body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-shell__panel--popup {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  height: 100% !important;
  max-height: 100% !important;
  overflow: hidden !important;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__header {
  flex: 0 0 auto !important;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-panel__timeline {
  flex: 1 1 0% !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  overscroll-behavior: contain !important;
  -webkit-overflow-scrolling: touch !important;
  touch-action: pan-y !important;
  scroll-behavior: auto !important;
}

body.gc-chat-popup-page .gc-messages-shell--thread-popup .gc-messages-compose {
  flex: 0 0 auto !important;
  flex-shrink: 0 !important;
  margin-top: 0 !important;
}

body.gc-account-page .gc-messages-panel__timeline,
body.gc-store-manager-page .gc-messages-panel__timeline {
  scroll-behavior: auto !important;
}


/* v1.24.31 popup chat: fix broken flex chain through .woocommerce wrappers
 *
 * Problem: The pop-out chat (?gc_chat_popup=1) has a flex layout chain from
 * <main> down to the message panel, but two WooCommerce wrapper divs in the
 * middle (.woocommerce and .woocommerce-MyAccount-content) are display:block,
 * breaking the chain. This causes the content to expand to full height (~7800px),
 * pushing the compose form and send button below the viewport.
 *
 * Fix: Make both wrappers flex containers so the height constraint flows through.
 *
 * File: wp-content/themes/guyscat-theme-c/style.css (append at end)
 */

body.gc-chat-popup-page .gc-chat-popup-shell > .woocommerce {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  min-height: 0 !important;
  height: 100% !important;
  overflow: hidden !important;
}

body.gc-chat-popup-page .gc-chat-popup-shell > .woocommerce > .woocommerce-MyAccount-content {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  min-height: 0 !important;
  height: 100% !important;
  overflow: hidden !important;
}


/* v1.24.34 tip/subscription follow-up fixes */
.gc-sale-badge--subscription {
  background: linear-gradient(135deg, var(--gc-accent), var(--gc-accent-2));
  color: #061018;
}

.gc-clip-watch-subscription-banner {
  display: grid;
  gap: 6px;
  width: min(320px, 100%);
  padding: 12px 14px;
  border-radius: calc(var(--gc-radius-scale, 1) * 16px);
  border: 1px solid rgba(var(--gc-accent-rgb), .28);
  background: rgba(var(--gc-accent-rgb), .1);
  color: var(--gc-text);
  text-align: left;
}

.gc-clip-watch-subscription-banner strong {
  font-size: .95rem;
}

.gc-clip-watch-subscription-banner a {
  color: var(--gc-text);
  font-weight: 800;
  text-decoration: none;
}

.gc-clip-watch-subscription-banner.is-active {
  border-color: rgba(61,214,140,.34);
  background: rgba(61,214,140,.12);
}

.gc-storefront-section--subscription-library .gc-section-header p {
  margin: 6px 0 0;
  color: var(--gc-text-soft);
}

.gc-storefront-subscription-cta {
  align-self: flex-end;
  margin-left: auto;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 52px;
  max-width: min(320px, 100%);
  margin-bottom: 4px;
  padding: 10px 14px;
  border-radius: calc(var(--gc-radius-scale, 1) * 16px);
  border: 1px solid rgba(255, 223, 120, .32);
  background: linear-gradient(135deg, rgba(255, 214, 102, .96), rgba(249, 168, 37, .96));
  color: #2b1700;
  text-decoration: none;
  box-shadow: 0 18px 36px rgba(0, 0, 0, .24);
}

.gc-storefront-subscription-cta__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: var(--gc-radius-pill);
  background: rgba(255, 255, 255, .38);
  font-size: 1.1rem;
  line-height: 1;
}

.gc-storefront-subscription-cta__text {
  display: grid;
  gap: 2px;
}

.gc-storefront-subscription-cta__text strong {
  display: block;
  font-size: .95rem;
  line-height: 1.05;
}

.gc-storefront-subscription-cta__text small {
  display: block;
  font-size: .78rem;
  font-weight: 700;
  color: rgba(43, 23, 0, .82);
}

.gc-storefront-subscription-cta--clip {
  position: static;
  margin: 0 0 12px;
  align-self: flex-start;
}

.gc-storefront-subscription-cta--included {
  cursor: default;
}

.gc-storefront-subscription-cta--included small {
  color: rgba(43, 23, 0, 0.72);
}

.gc-tip-modal {
  position: fixed;
  inset: 0;
  z-index: 100000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  background: rgba(3,8,21,.78);
}

.gc-tip-modal[hidden] {
  display: none;
}

.gc-tip-modal__dialog {
  position: relative;
  width: min(460px, 100%);
  display: grid;
  gap: 14px;
  padding: 24px;
  border-radius: calc(var(--gc-radius-scale, 1) * 24px);
  border: 1px solid var(--gc-border-strong);
  background: linear-gradient(180deg, rgba(var(--gc-bg-alt-rgb), .98), rgba(var(--gc-bg-rgb), .98));
  box-shadow: 0 32px 80px rgba(0,0,0,.45);
}

.gc-tip-modal__dialog h3 {
  margin: 0;
  font-size: 1.3rem;
}

.gc-tip-modal__close {
  position: absolute;
  top: 14px;
  right: 14px;
  width: 38px;
  height: 38px;
  border-radius: var(--gc-radius-pill);
  border: 1px solid var(--gc-border);
  background: rgba(255,255,255,.06);
  color: var(--gc-text);
  font-size: 1.25rem;
  line-height: 1;
}

.gc-tip-modal__note {
  margin: 0;
  color: var(--gc-text-soft);
}

.gc-tip-modal__field {
  display: grid;
  gap: 8px;
}

.gc-tip-modal__field span {
  font-weight: 700;
}

.gc-tip-modal__field input {
  width: 100%;
  min-height: 48px;
  padding: 0 14px;
  border-radius: calc(var(--gc-radius-scale, 1) * 14px);
  border: 1px solid var(--gc-border-strong);
  background: rgba(255,255,255,.05);
  color: var(--gc-text);
  font-size: 1rem;
}

.gc-tip-modal__field input:focus {
  outline: 0;
  border-color: rgba(var(--gc-accent-rgb), .45);
  box-shadow: 0 0 0 3px rgba(var(--gc-accent-rgb), .14);
}

.gc-tip-modal__error {
  margin: 0;
  color: #ff9e9e;
  font-weight: 700;
}

.gc-tip-modal__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: flex-end;
}

.gc-tip-modal.is-loading .gc-tip-modal__dialog {
  opacity: .88;
}

@media (max-width: 767px) {
  .gc-tip-modal {
    padding: 14px;
  }

  .gc-tip-modal__dialog {
    padding: 20px;
    border-radius: calc(var(--gc-radius-scale, 1) * 20px);
  }

  .gc-clip-watch-subscription-banner {
    width: 100%;
  }

  .gc-storefront-subscription-cta {
    max-width: none;
    width: 100%;
    margin-bottom: 12px;
  }
}


/* v1.24.35 subscription order/account/wallet follow-up */
.gc-order-subscription-list {
  display: grid;
  gap: 18px;
}

.gc-order-subscription-card {
  display: grid;
  gap: 16px;
  padding: clamp(18px, 2vw, 24px);
  border-radius: calc(var(--gc-radius-scale, 1) * 22px);
  border: 1px solid rgba(var(--gc-border-rgb), 0.14);
  background: linear-gradient(180deg, rgba(var(--gc-surface-rgb), 0.92), rgba(var(--gc-bg-rgb), 0.98));
  box-shadow: var(--gc-shadow-soft);
}

.gc-order-subscription-card__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  flex-wrap: wrap;
}

.gc-order-subscription-card__head h3 {
  margin: 6px 0 0;
  color: #fff;
}

.gc-order-subscription-card__head h3 a {
  color: inherit;
  text-decoration: none;
}

.gc-order-subscription-card__status {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  padding: 0 12px;
  border-radius: var(--gc-radius-pill);
  font-size: .82rem;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
  background: rgba(255,255,255,.08);
  color: #fff;
}

.gc-order-subscription-card__status.is-active {
  background: rgba(34, 197, 94, .18);
  color: #86efac;
}

.gc-order-subscription-card__status.is-pending-cancel {
  background: rgba(249, 115, 22, .16);
  color: #fdba74;
}

.gc-order-subscription-card__status.is-on-hold {
  background: rgba(59, 130, 246, .16);
  color: #93c5fd;
}

.gc-order-subscription-card__meta {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 12px;
}

.gc-order-subscription-card__meta-item {
  display: grid;
  gap: 6px;
  min-width: 0;
  padding: 14px 16px;
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  border: 1px solid rgba(255,255,255,.08);
  background: rgba(255,255,255,.035);
}

.gc-order-subscription-card__meta-item span {
  color: rgba(var(--gc-text-muted-rgb), 0.76);
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.gc-order-subscription-card__meta-item strong {
  min-width: 0;
  color: #fff;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.gc-order-subscription-card__clips {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.gc-order-subscription-card__clip {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0 12px;
  border-radius: var(--gc-radius-pill);
  border: 1px solid rgba(255,255,255,.08);
  background: rgba(255,255,255,.04);
  color: var(--gc-text-soft);
  font-size: .86rem;
}

.gc-order-subscription-card__clip--more {
  border-color: rgba(var(--gc-accent-rgb), .24);
  background: rgba(var(--gc-accent-rgb), .12);
  color: var(--gc-text);
}

.gc-order-subscription-card__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

@media (max-width: 640px) {
  .gc-order-subscription-card__actions .gc-button {
    width: 100%;
  }
}


/* v1.24.39 broadcast template mobile collapse + compact follow-up */
.gc-broadcast-templates,
.gc-broadcast-templates__grid,
.gc-broadcast-template-card {
  min-width: 0;
  max-width: 100%;
}

.gc-broadcast-templates__grid {
  width: 100%;
  box-sizing: border-box;
}

@media (max-width: 720px) {
  .gc-broadcast-templates__grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 12px;
    overflow: visible;
    padding: 0;
    scroll-snap-type: none;
  }

  .gc-track-controls--broadcast-templates {
    display: none;
  }

  .gc-broadcast-template-card {
    flex: 1 1 auto;
    width: 100%;
    max-width: 100%;
    padding: 12px;
    gap: 10px;
  }

  .gc-broadcast-template-card .gc-message-clip-ref-card {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    grid-template-columns: minmax(80px, 96px) minmax(0, 1fr);
    gap: 10px;
    padding: 10px;
  }

  .gc-broadcast-template-card .gc-message-clip-ref-card__media,
  .gc-broadcast-template-card .gc-message-clip-ref-card__media img,
  .gc-broadcast-template-card .gc-message-clip-ref-card__media-placeholder {
    min-height: 96px;
    height: 96px;
  }

  .gc-broadcast-template-card .gc-message-clip-ref-card__footer {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }

  .gc-broadcast-template-card .gc-message-clip-ref-card__actions {
    width: auto;
    justify-content: flex-start;
  }

  .gc-broadcast-template-card .gc-message-clip-ref-card__actions .gc-button {
    width: auto;
    min-height: 34px;
    padding: 0 12px;
    justify-content: center;
  }
}


/* v1.24.42 storefront action hover polish */
.gc-storefront-follow-slot a,
.gc-storefront-follow-slot button,
.gc-storefront-follow-slot .button,
.gc-storefront-follow-slot input[type="submit"],
.gc-storefront-action-slot a,
.gc-storefront-action-slot button,
.gc-storefront-action-slot .button,
.gc-storefront-action-slot input[type="submit"],
.gc-storefront-action {
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease, border-color .18s ease, color .18s ease, opacity .18s ease, filter .18s ease;
}
.gc-storefront-follow-slot a:not([aria-disabled="true"]):hover,
.gc-storefront-follow-slot button:not([disabled]):hover,
.gc-storefront-follow-slot .button:not([disabled]):hover,
.gc-storefront-follow-slot input[type="submit"]:not([disabled]):hover,
.gc-storefront-action-slot a:not([aria-disabled="true"]):hover,
.gc-storefront-action-slot button:not([disabled]):hover,
.gc-storefront-action-slot .button:not([disabled]):hover,
.gc-storefront-action-slot input[type="submit"]:not([disabled]):hover,
.gc-storefront-action:not([disabled]):hover {
  transform: translateY(-2px);
}
.gc-storefront-follow-slot a.gc-storefront-action--primary:not([aria-disabled="true"]):hover,
.gc-storefront-follow-slot button.gc-storefront-action--primary:not([disabled]):hover,
.gc-storefront-follow-slot .button.gc-storefront-action--primary:not([disabled]):hover,
.gc-storefront-follow-slot input[type="submit"].gc-storefront-action--primary:not([disabled]):hover,
.gc-storefront-action-slot a.gc-storefront-action--primary:not([aria-disabled="true"]):hover,
.gc-storefront-action-slot button.gc-storefront-action--primary:not([disabled]):hover,
.gc-storefront-action-slot .button.gc-storefront-action--primary:not([disabled]):hover,
.gc-storefront-action-slot input[type="submit"].gc-storefront-action--primary:not([disabled]):hover,
.gc-storefront-action.gc-storefront-action--primary:not([disabled]):hover {
  color: var(--gc-deep) !important;
  border-color: rgba(var(--gc-accent-rgb), .68);
  background: linear-gradient(135deg, #53e7d4, #20d5b8);
  box-shadow: 0 22px 44px rgba(var(--gc-accent-rgb), .28);
  filter: saturate(1.04);
}
.gc-storefront-action--placeholder:not([disabled]):hover,
.gc-storefront-action--placeholder:not([disabled]):focus-visible {
  opacity: 1;
  color: var(--gc-text) !important;
  border-color: rgba(var(--gc-accent-rgb), .42);
  background: rgba(var(--gc-accent-rgb), .12);
  box-shadow: 0 16px 32px rgba(3, 8, 20, .18);
  filter: none;
}
.gc-storefront-follow-slot a:focus-visible,
.gc-storefront-follow-slot button:focus-visible,
.gc-storefront-follow-slot .button:focus-visible,
.gc-storefront-follow-slot input[type="submit"]:focus-visible,
.gc-storefront-action-slot a:focus-visible,
.gc-storefront-action-slot button:focus-visible,
.gc-storefront-action-slot .button:focus-visible,
.gc-storefront-action-slot input[type="submit"]:focus-visible,
.gc-storefront-action:focus-visible {
  outline: none;
  border-color: rgba(var(--gc-accent-2-rgb), .72);
  box-shadow: 0 0 0 4px rgba(var(--gc-accent-2-rgb), .18), 0 20px 40px rgba(var(--gc-accent-rgb), .16);
}
.gc-storefront-follow-button[disabled],
.gc-storefront-action[disabled] {
  transform: none;
  filter: none;
}


/* v1.24.43 automatic new-clip broadcast automation */
.gc-broadcast-template-card--automation {
  border-color: rgba(var(--gc-accent-rgb), 0.2);
}

.gc-broadcast-template-card--automation .gc-broadcast-template-card__badge {
  background: rgba(var(--gc-accent-rgb), 0.18);
  color: #ccfbf1;
}

.gc-broadcast-template-card--automation.is-enabled {
  box-shadow: 0 22px 48px rgba(4, 18, 28, 0.34);
}

.gc-broadcast-workspace__automation {
  margin: 8px 0 0;
  padding: 18px 20px;
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  border: 1px solid rgba(var(--gc-accent-rgb), 0.18);
  background: rgba(var(--gc-bg-rgb), 0.58);
  display: grid;
  gap: 12px;
}

.gc-broadcast-workspace__automation-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 18px;
  font-size: 0.92rem;
  color: var(--gc-text-soft);
}

.gc-broadcast-workspace__automation-meta strong {
  color: var(--gc-text);
  font-size: 0.92rem;
}

.gc-broadcast-workspace__automation-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

@media (max-width: 767px) {
  .gc-broadcast-workspace__automation {
    padding: 16px;
  }

  .gc-broadcast-workspace__automation-actions .gc-button {
    width: 100%;
    justify-content: center;
  }
}


/* v1.24.44 voice-message recording / preview / playback */
.gc-messages-compose__attachment-preview-card.has-player,
.gc-messages-compose__attachment-preview-card.is-recording,
.gc-messages-compose__attachment-preview-card.is-voice-message {
  grid-template-columns: minmax(0, 1fr);
  align-items: stretch;
}

.gc-messages-compose__attachment-preview-card.is-voice-message {
  padding: 16px;
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  border: 1px solid rgba(var(--gc-accent-rgb), 0.22);
  background: linear-gradient(180deg, rgba(var(--gc-surface-rgb), 0.92), rgba(var(--gc-surface-rgb), 0.86));
}

.gc-messages-compose__attachment-preview-card.is-recording {
  border-color: rgba(248, 113, 113, 0.34);
  background: linear-gradient(180deg, rgba(48, 17, 17, 0.92), rgba(32, 17, 24, 0.86));
}

.gc-messages-compose__voice-badge {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  max-width: 100%;
  padding: 5px 10px;
  border-radius: var(--gc-radius-pill);
  border: 1px solid rgba(var(--gc-accent-rgb), 0.22);
  background: rgba(var(--gc-accent-rgb), 0.12);
  color: #d7fffb;
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.gc-messages-compose__attachment-preview-card.is-recording .gc-messages-compose__voice-badge {
  border-color: rgba(248, 113, 113, 0.28);
  background: rgba(248, 113, 113, 0.14);
  color: #ffe2e2;
}

.gc-messages-compose__voice-player {
  width: 100%;
  max-width: 100%;
}

.gc-messages-compose__attachment-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  width: 100%;
}

.gc-messages-compose__attachment-actions .gc-button {
  min-height: 38px;
}

.gc-messages-compose__progress-fill.is-pulsing {
  animation: gcVoicePulse 1.2s ease-in-out infinite;
}

@keyframes gcVoicePulse {
  0% { opacity: 0.42; }
  50% { opacity: 1; }
  100% { opacity: 0.42; }
}

.gc-message-media--voice {
  border-color: rgba(var(--gc-accent-rgb), 0.22);
  background: linear-gradient(180deg, rgba(var(--gc-surface-rgb), 0.92), rgba(9, 24, 43, 0.84));
}

.gc-message-media__voice-head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 12px;
}

.gc-message-media__voice-badge,
.gc-message-media__voice-duration {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 0 12px;
  border-radius: var(--gc-radius-pill);
  font-size: 0.82rem;
  font-weight: 800;
}

.gc-message-media__voice-badge {
  border: 1px solid rgba(var(--gc-accent-rgb), 0.22);
  background: rgba(var(--gc-accent-rgb), 0.12);
  color: #d7fffb;
  text-transform: uppercase;
  letter-spacing: 0.02em;
}

.gc-message-media__voice-duration {
  border: 1px solid rgba(var(--gc-text-soft-rgb), 0.22);
  background: rgba(255, 255, 255, 0.04);
  color: rgba(var(--gc-text-muted-rgb), 0.84);
}

.gc-message-media--voice .gc-message-media__frame audio {
  width: 100%;
  max-width: 100%;
}

.gc-message-media--voice .gc-message-media__meta {
  margin-top: 12px;
}

.gc-message-media--voice .gc-message-media__actions {
  margin-top: 14px;
}

/* Livestream foundation */
.gc-live-overview-hero{padding:32px 0 18px;}
.gc-live-overview-hero__inner{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;}
.gc-live-overview-hero__copy{padding:26px;border:1px solid var(--gc-border);border-radius:calc(var(--gc-radius-scale, 1) * 26px);background:linear-gradient(180deg,rgba(var(--gc-bg-alt-rgb), .92),rgba(var(--gc-surface-rgb), .96));box-shadow:var(--gc-shadow);}
.gc-live-overview-hero__eyebrow{margin:0 0 8px;color:var(--gc-accent);font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-size:12px;}
.gc-live-overview-hero h1{margin:0 0 12px;font-size:clamp(32px,4vw,48px);line-height:1.05;}
.gc-live-overview-hero p{margin:0;color:var(--gc-text-soft);max-width:880px;line-height:1.7;}
.gc-live-overview-hero__actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:18px;}
.gc-live-overview-hero__count{display:inline-flex;align-items:center;min-height:40px;padding:0 16px;border-radius:var(--gc-radius-pill);border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.04);font-weight:700;}
.gc-live-overview-content{padding:12px 0 46px;}
.gc-live-filters{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(200px,.7fr) auto;gap:16px;padding:18px;border:1px solid var(--gc-border);border-radius:calc(var(--gc-radius-scale, 1) * 24px);background:var(--gc-surface);box-shadow:0 18px 44px rgba(3,8,21,.28);margin-bottom:18px;}
.gc-live-filter-field{display:grid;gap:8px;}
.gc-live-filter-field>span{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--gc-text-soft);font-weight:700;}
.gc-live-filter-field input,.gc-live-filter-field select{width:100%;min-height:48px;border:1px solid var(--gc-border-strong);border-radius:calc(var(--gc-radius-scale, 1) * 16px);padding:12px 14px;background:rgba(255,255,255,.04);color:var(--gc-text);box-sizing:border-box;}
.gc-live-filter-actions{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;}
.gc-live-tag-row{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:18px;}
.gc-live-tag{display:inline-flex;align-items:center;min-height:36px;padding:0 14px;border-radius:var(--gc-radius-pill);border:1px solid var(--gc-border);background:rgba(255,255,255,.04);color:var(--gc-text-soft);font-weight:700;font-size:13px;}
.gc-live-tag.is-active,.gc-live-tag:hover{background:var(--gc-accent-soft);border-color:rgba(var(--gc-accent-rgb), .4);color:var(--gc-text);}
.gc-live-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px;}
.gc-live-card{overflow:hidden;border:1px solid var(--gc-border);border-radius:calc(var(--gc-radius-scale, 1) * 22px);background:var(--gc-surface);box-shadow:0 20px 44px rgba(3,8,21,.26);display:grid;}
.gc-live-card__media{position:relative;display:block;aspect-ratio:16/11;background:var(--gc-slate);overflow:hidden;}
.gc-live-card__media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .25s ease;}
.gc-live-card:hover .gc-live-card__media img{transform:scale(1.03);}
.gc-live-card__badge{position:absolute;display:inline-flex;align-items:center;min-height:30px;padding:0 10px;border-radius:var(--gc-radius-pill);background:rgba(var(--gc-bg-rgb), .86);backdrop-filter:blur(8px);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#fff;}
.gc-live-card__badge--live{top:12px;left:12px;background:#dc2626;}
.gc-live-card__badge--mode{top:12px;right:12px;}
.gc-live-card__badge--count{left:12px;bottom:12px;}
.gc-live-card__body{display:grid;gap:12px;padding:18px;}
.gc-live-card__meta{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--gc-text-soft);font-size:13px;}
.gc-live-card__meta strong{color:var(--gc-text);font-size:14px;}
.gc-live-card h2{margin:0;font-size:20px;line-height:1.2;}
.gc-live-card h2 a{color:var(--gc-text);}
.gc-live-card__tags{display:flex;flex-wrap:wrap;gap:8px;}
.gc-live-card__tags span{display:inline-flex;align-items:center;min-height:30px;padding:0 11px;border-radius:var(--gc-radius-pill);background:rgba(255,255,255,.06);color:var(--gc-text-soft);font-size:12px;font-weight:700;}
.gc-live-card__note{margin:0;color:var(--gc-text-soft);font-size:13px;line-height:1.55;}
.gc-live-empty-state{padding:28px;border:1px dashed var(--gc-border-strong);border-radius:calc(var(--gc-radius-scale, 1) * 26px);background:rgba(255,255,255,.03);text-align:center;}
.gc-live-empty-state h2{margin:0 0 10px;}
.gc-live-empty-state p{margin:0;color:var(--gc-text-soft);}

.gc-live-room-shell{padding:24px 0 46px;}
.gc-live-room-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(360px,.9fr);gap:22px;align-items:start;}
.gc-live-room-main,.gc-live-room-sidebar{display:grid;gap:20px;align-content:start;}
.gc-live-player-card,.gc-live-room-card,.gc-live-chat-card{border:1px solid var(--gc-border);border-radius:calc(var(--gc-radius-scale, 1) * 24px);background:var(--gc-surface);box-shadow:0 20px 50px rgba(3,8,21,.28);overflow:hidden;}
.gc-live-player{position:relative;aspect-ratio:16/9;background:var(--gc-deep);display:grid;place-items:center;overflow:hidden;}
.gc-live-player__media{position:absolute;inset:0;}
.gc-live-player__media video,.gc-live-player__media audio{width:100%;height:100%;display:block;object-fit:cover;background:var(--gc-deep);}
.gc-live-player__overlay{position:absolute;inset:0;padding:28px;display:none;place-content:center;text-align:center;gap:12px;background:linear-gradient(180deg,rgba(var(--gc-deep-rgb), .32),rgba(var(--gc-deep-rgb), .9));z-index:2;}
.gc-live-player__overlay strong{font-size:22px;line-height:1.15;}
.gc-live-player__overlay span{max-width:620px;margin:0 auto;color:var(--gc-text-soft);line-height:1.7;}
.gc-live-player__overlay.is-visible{display:grid;}
.gc-live-player__audio-button{position:absolute;right:18px;bottom:18px;z-index:3;display:none;}
.gc-live-player__audio-button.is-visible{display:inline-flex;}
.gc-live-room-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;border-top:1px solid var(--gc-border);background:rgba(255,255,255,.03);}
.gc-live-room-bar__left,.gc-live-room-bar__right{display:flex;flex-wrap:wrap;gap:10px;align-items:center;}
.gc-live-room-pill{display:inline-flex;align-items:center;min-height:34px;padding:0 12px;border-radius:var(--gc-radius-pill);background:rgba(255,255,255,.06);font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--gc-text-soft);}
.gc-live-room-pill--live{background:#dc2626;color:#fff;}
.gc-live-room-pill--soft{background:var(--gc-accent-soft);color:var(--gc-text);}
.gc-live-room-pill--ticket{background:rgba(245,158,11,.18);color:#f59e0b;font-weight:800;}
.gc-live-room-pill--private{background:rgba(236,72,153,.18);color:#ec4899;font-weight:800;}
.gc-live-chat-row--creator .gc-live-chat-row__meta strong{color:#f87171;}
.gc-live-chat-row--creator .gc-live-chat-row__meta::before{content:"";display:inline-block;width:14px;height:14px;margin-right:4px;vertical-align:-2px;flex-shrink:0;background:#f87171;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M23 7l-7 5 7 5V7z'/%3E%3Crect x='1' y='5' width='15' height='14' rx='2' ry='2'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M23 7l-7 5 7 5V7z'/%3E%3Crect x='1' y='5' width='15' height='14' rx='2' ry='2'/%3E%3C/svg%3E") center/contain no-repeat;}
.gc-live-room-balance{color:var(--gc-text-soft);font-weight:700;}
.gc-live-room-card{padding:22px;}
.gc-live-room-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;}
.gc-live-room-title-row__eyebrow{margin:0 0 6px;color:var(--gc-accent);font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-size:12px;}
.gc-live-room-title-row h1{margin:0;font-size:clamp(28px,3vw,40px);line-height:1.08;}
.gc-live-room-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px;}
.gc-live-room-tags span{display:inline-flex;align-items:center;min-height:34px;padding:0 12px;border-radius:var(--gc-radius-pill);background:rgba(255,255,255,.05);font-size:13px;font-weight:700;color:var(--gc-text-soft);}
.gc-live-creator-row{display:grid;grid-template-columns:104px minmax(0,1fr);gap:18px;align-items:start;}
.gc-live-creator-row__media img{width:104px;height:104px;border-radius:calc(var(--gc-radius-scale, 1) * 24px);object-fit:cover;display:block;}
.gc-live-creator-row__content h2{margin:0 0 10px;font-size:22px;}
.gc-live-creator-row__content p{margin:0;color:var(--gc-text-soft);line-height:1.7;}
.gc-live-social-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px;}
.gc-live-social-row a{display:inline-flex;align-items:center;min-height:34px;padding:0 12px;border-radius:var(--gc-radius-pill);background:rgba(255,255,255,.05);color:var(--gc-text-soft);font-size:13px;font-weight:700;}
.gc-live-room-extra-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}
.gc-live-room-extra-grid .gc-live-room-card{height:100%;}
.gc-live-room-extra-grid h3{margin:0 0 10px;font-size:20px;}
.gc-live-room-extra-grid p{margin:0;color:var(--gc-text-soft);line-height:1.7;}
.gc-live-chat-card{display:grid;grid-template-rows:auto 1fr;min-height:860px;}
.gc-live-chat-card__tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-bottom:1px solid var(--gc-border);background:rgba(255,255,255,.03);}
.gc-live-chat-card__tabs button{appearance:none;border:0;background:transparent;min-height:54px;padding:0 12px;color:var(--gc-text-soft);font-weight:800;letter-spacing:.03em;cursor:pointer;}
.gc-live-chat-card__tabs button.is-active{background:rgba(255,255,255,.06);color:var(--gc-text);}
.gc-live-chat-card__body{display:grid;min-height:0;position:relative;}
.gc-live-tab-panel{display:none;padding:18px;min-height:0;align-content:start;gap:14px;}
.gc-live-tab-panel.is-active{display:grid;}
.gc-live-tab-panel[data-gc-live-panel="users"].is-active,.gc-live-tab-panel[data-gc-live-panel="pm"].is-active{position:absolute;inset:0;overflow-y:auto;display:grid;align-content:start;}
.gc-live-chat-stream{display:grid;gap:12px;min-height:560px;max-height:660px;overflow:auto;padding:4px;}
.gc-live-chat-row{display:grid;gap:7px;padding:14px 15px;border-radius:calc(var(--gc-radius-scale, 1) * 18px);background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.06);}
.gc-live-chat-row--creator{background:rgba(var(--gc-accent-rgb), .12);border-color:rgba(var(--gc-accent-rgb), .22);}
.gc-live-chat-row--system{border-style:dashed;background:rgba(255,255,255,.03);}
.gc-live-chat-row__meta{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;color:var(--gc-text-soft);}
.gc-live-chat-row__meta strong{font-size:13px;color:var(--gc-text);}
.gc-live-chat-row__body{white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere;line-height:1.6;color:var(--gc-text);}
.gc-live-chat-compose{display:grid;gap:10px;}
.gc-live-chat-compose textarea,.gc-live-field input[type=range]{width:100%;box-sizing:border-box;}
.gc-live-chat-compose textarea{min-height:110px;padding:12px 14px;border:1px solid var(--gc-border-strong);border-radius:calc(var(--gc-radius-scale, 1) * 18px);background:rgba(255,255,255,.04);color:var(--gc-text);resize:vertical;}
.gc-live-chat-notice{display:grid;gap:12px;padding:18px;border-radius:calc(var(--gc-radius-scale, 1) * 18px);background:rgba(255,255,255,.04);border:1px solid var(--gc-border);}
.gc-live-chat-notice p{margin:0;color:var(--gc-text-soft);line-height:1.7;}
.gc-live-users{display:grid;gap:10px;}
.gc-live-user-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 14px;border-radius:calc(var(--gc-radius-scale, 1) * 16px);background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06);}
.gc-live-user-row span{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:var(--gc-radius-pill);background:rgba(255,255,255,.06);color:var(--gc-text-soft);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;}
.gc-live-settings-stack{display:grid;gap:14px;}
.gc-live-check{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border:1px solid var(--gc-border);border-radius:calc(var(--gc-radius-scale, 1) * 18px);background:rgba(255,255,255,.04);cursor:pointer;}
.gc-live-check span{color:var(--gc-text);line-height:1.6;}
.gc-live-field{display:grid;gap:8px;}
.gc-live-field>span{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--gc-text-soft);font-weight:700;}
.gc-live-field input[type=range]{padding:0;accent-color:var(--gc-accent);}
.gc-live-chat-empty,.gc-live-users__empty{padding:14px 16px;border-radius:calc(var(--gc-radius-scale, 1) * 16px);border:1px dashed var(--gc-border);background:rgba(255,255,255,.03);color:var(--gc-text-soft);}

@media (max-width: 1200px){
  .gc-live-room-layout{grid-template-columns:minmax(0,1fr);}
  .gc-live-chat-card{min-height:0;}
  .gc-live-chat-stream{min-height:360px;max-height:420px;}
  /* gc_live_tab_panels_mobile_height_v1 — PM/Users tab panels collapse to 36px on
     mobile because parent .gc-live-chat-card__body has height 0
     (min-height reset above) and panels use position:absolute;
     inset:0. Override to flow naturally with a min-height matching
     the chat stream so absolute positioning stops being load-bearing. */
  .gc-live-tab-panel[data-gc-live-panel="users"].is-active,
  .gc-live-tab-panel[data-gc-live-panel="pm"].is-active{position:static;inset:auto;min-height:360px;}
}
@media (max-width: 767px){
  .gc-live-filters,.gc-live-room-extra-grid{grid-template-columns:minmax(0,1fr);}
  .gc-live-room-title-row,.gc-live-room-bar,.gc-live-creator-row{grid-template-columns:minmax(0,1fr);display:grid;}
  .gc-live-room-bar{justify-content:flex-start;}
  .gc-live-creator-row__media img{width:88px;height:88px;}
  .gc-live-chat-card__tabs{grid-template-columns:repeat(2,minmax(0,1fr));}
  .gc-live-player__audio-button{left:18px;right:auto;}
}
.gc-live-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px;}
.gc-live-tip-total{display:inline-flex;align-items:center;min-height:34px;padding:0 12px;border-radius:var(--gc-radius-pill);background:rgba(var(--gc-accent-rgb), .12);color:var(--gc-text);font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;}
.gc-live-goal-card{display:grid;gap:14px;}
.gc-live-goal-card__title{font-size:20px;line-height:1.3;color:var(--gc-text);}
.gc-live-goal-bar,.gc-live-goal-preview__bar{width:100%;height:12px;border-radius:var(--gc-radius-pill);background:rgba(255,255,255,.06);overflow:hidden;}
.gc-live-goal-bar span,.gc-live-goal-preview__bar span{display:block;height:100%;border-radius:var(--gc-radius-pill);background:linear-gradient(90deg,var(--gc-accent),var(--gc-accent-2));}
.gc-live-goal-meta{color:var(--gc-text-soft);font-weight:700;}
.gc-live-tip-menu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
.gc-live-tip-menu__item{appearance:none;border:1px solid var(--gc-border);border-radius:calc(var(--gc-radius-scale, 1) * 20px);background:rgba(255,255,255,.04);padding:16px;text-align:left;display:grid;gap:6px;cursor:pointer;color:var(--gc-text);transition:transform .18s ease,border-color .18s ease,background .18s ease;}
.gc-live-tip-menu__item:hover{transform:translateY(-1px);border-color:rgba(var(--gc-accent-rgb), .35);background:rgba(var(--gc-accent-rgb), .08);}
.gc-live-tip-menu__item strong{font-size:16px;line-height:1.35;}
.gc-live-tip-menu__item span{color:var(--gc-accent);font-weight:800;}
.gc-live-tip-menu__item small{color:var(--gc-text-soft);line-height:1.5;}
.gc-live-tip-custom{display:grid;gap:12px;margin-top:18px;}
.gc-live-tip-custom__row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end;}
.gc-live-tip-custom__row input{min-height:50px;padding:12px 14px;border:1px solid var(--gc-border-strong);border-radius:calc(var(--gc-radius-scale, 1) * 18px);background:rgba(255,255,255,.04);color:var(--gc-text);}
.gc-live-tip-custom__note{margin:0;color:var(--gc-text-soft);line-height:1.6;}
.gc-live-inline-feedback{display:none;padding:12px 14px;border-radius:calc(var(--gc-radius-scale, 1) * 16px);border:1px solid var(--gc-border);background:rgba(255,255,255,.04);font-weight:700;line-height:1.5;}
.gc-live-inline-feedback.is-success,.gc-live-inline-feedback.is-error,.gc-live-inline-feedback.is-warning{display:block;}
.gc-live-inline-feedback.is-success{border-color:rgba(34,197,94,.35);background:rgba(34,197,94,.12);color:#d1fadf;}
.gc-live-inline-feedback.is-error{border-color:rgba(248,113,113,.35);background:rgba(127,29,29,.18);color:#fecaca;}
.gc-live-inline-feedback.is-warning{border-color:rgba(251,191,36,.35);background:rgba(120,53,15,.2);color:#fde68a;}
.gc-live-chat-row--tip{border-color:rgba(var(--gc-accent-rgb), .25);background:rgba(var(--gc-accent-rgb), .08);}
.gc-live-room-note{color:var(--gc-text-soft);line-height:1.7;}
@media (max-width: 767px){
  .gc-live-tip-menu{grid-template-columns:minmax(0,1fr);}
  .gc-live-tip-custom__row{grid-template-columns:minmax(0,1fr);}
}

/* Livestream room UX / overlay / callback pass */
.gc-live-player__media video,.gc-live-player__media audio{transition:transform .18s ease;transform-origin:center center;}
.gc-live-player__toolbar-toggle{display:none;position:absolute;left:18px;top:18px;z-index:4;align-items:center;justify-content:center;min-height:38px;padding:0 14px;border:1px solid rgba(255,255,255,.16);border-radius:var(--gc-radius-pill);background:rgba(var(--gc-bg-rgb), .72);backdrop-filter:blur(12px);color:#fff;font-weight:800;letter-spacing:.04em;text-transform:uppercase;font-size:11px;cursor:pointer;}
.gc-live-player__toolbar{position:absolute;left:18px;right:18px;top:18px;z-index:4;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:calc(var(--gc-radius-scale, 1) * 18px);background:rgba(var(--gc-bg-rgb), .74);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.08);transform:translateY(-130%);opacity:0;pointer-events:none;transition:transform .2s ease,opacity .2s ease;}
.gc-live-player__toolbar-group{display:flex;flex-wrap:wrap;gap:10px;align-items:center;}
.gc-live-player__toolbar button,.gc-live-player__zoom-panel button{appearance:none;border:1px solid rgba(255,255,255,.14);border-radius:var(--gc-radius-pill);background:rgba(255,255,255,.06);color:#fff;min-height:36px;padding:0 13px;font-size:12px;font-weight:800;letter-spacing:.03em;cursor:pointer;transition:background .18s ease,border-color .18s ease,transform .18s ease;}
.gc-live-player__toolbar button:hover,.gc-live-player__zoom-panel button:hover{transform:translateY(-1px);background:rgba(255,255,255,.12);border-color:rgba(var(--gc-accent-rgb), .35);}
.gc-live-player:hover .gc-live-player__toolbar,.gc-live-player:focus-within .gc-live-player__toolbar,.gc-live-player.is-toolbar-open .gc-live-player__toolbar{transform:translateY(0);opacity:1;pointer-events:auto;}
.gc-live-player__zoom-panel{position:absolute;left:18px;right:18px;top:78px;z-index:4;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;border-radius:calc(var(--gc-radius-scale, 1) * 18px);background:rgba(var(--gc-bg-rgb), .78);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.08);}
.gc-live-player__zoom-panel[hidden]{display:none !important;}
.gc-live-player__zoom-field{display:grid;gap:8px;min-width:0;flex:1;}
.gc-live-player__zoom-field span{font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:rgba(255,255,255,.72);}
.gc-live-player__zoom-field input{width:100%;accent-color:var(--gc-accent);}
.gc-live-player__control-feedback{position:absolute;left:18px;bottom:18px;z-index:4;display:none;max-width:min(540px,calc(100% - 120px));padding:10px 14px;border-radius:calc(var(--gc-radius-scale, 1) * 16px);background:rgba(var(--gc-bg-rgb), .76);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.08);color:#fff;font-size:13px;font-weight:700;line-height:1.45;}
.gc-live-player__control-feedback.is-visible{display:block;}
.gc-live-player__control-feedback.is-success{border-color:rgba(34,197,94,.35);}
.gc-live-player__control-feedback.is-warning{border-color:rgba(251,191,36,.35);}
.gc-live-player__control-feedback.is-error{border-color:rgba(248,113,113,.35);}
.gc-live-player.is-zoom-active .gc-live-player__media{cursor:zoom-in;}
.gc-live-goal-queue{display:grid;gap:10px;margin-top:16px;}
.gc-live-goal-queue__empty{padding:14px 16px;border-radius:calc(var(--gc-radius-scale, 1) * 16px);border:1px dashed var(--gc-border);background:rgba(255,255,255,.03);color:var(--gc-text-soft);}
.gc-live-goal-queue__item{display:grid;gap:8px;padding:12px 14px;border-radius:calc(var(--gc-radius-scale, 1) * 16px);border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.03);}
.gc-live-goal-queue__item.is-active{border-color:rgba(var(--gc-accent-rgb), .24);background:rgba(var(--gc-accent-rgb), .08);}
.gc-live-goal-queue__item.is-completed{border-color:rgba(34,197,94,.24);background:rgba(34,197,94,.08);}
.gc-live-goal-queue__meta{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;}
.gc-live-goal-queue__meta strong{font-size:14px;color:var(--gc-text);}
.gc-live-goal-queue__meta span{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:var(--gc-radius-pill);background:rgba(255,255,255,.06);font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--gc-text-soft);}
.gc-live-goal-queue__sub{color:var(--gc-text-soft);font-size:13px;font-weight:700;}
.gc-live-goal-queue__bar{width:100%;height:10px;border-radius:var(--gc-radius-pill);background:rgba(255,255,255,.06);overflow:hidden;}
.gc-live-goal-queue__bar span{display:block;height:100%;border-radius:var(--gc-radius-pill);background:linear-gradient(90deg,var(--gc-accent),var(--gc-accent-2));}
.gc-live-toy-status,.gc-live-toy-log__row{padding:13px 14px;border-radius:calc(var(--gc-radius-scale, 1) * 16px);border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.03);color:var(--gc-text-soft);line-height:1.6;word-break:break-word;overflow-wrap:anywhere;}
.gc-live-toy-log{display:grid;gap:10px;margin-top:12px;}
.gc-live-chat-stream{gap:8px;padding:0;background:transparent;}
.gc-live-chat-row{padding:9px 0;border:0;border-bottom:1px solid rgba(255,255,255,.06);border-radius:0;background:transparent;box-shadow:none;}
.gc-live-chat-row--creator{background:transparent;border-bottom-color:rgba(var(--gc-accent-rgb), .16);}
.gc-live-chat-row--system:not(.gc-live-chat-row--notice){background:transparent;border-bottom-style:dashed;}
.gc-live-chat-row--tip,.gc-live-chat-row--notice{padding:10px 12px;border-radius:calc(var(--gc-radius-scale, 1) * 14px);border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.04);margin:4px 0;}
.gc-live-chat-row--tip{border-color:rgba(var(--gc-accent-rgb), .24);background:rgba(var(--gc-accent-rgb), .08);}
.gc-live-chat-row--goal{border-color:rgba(251,191,36,.22);background:rgba(251,191,36,.08);}
.gc-live-chat-row--toy{border-color:rgba(129,140,248,.22);background:rgba(129,140,248,.1);}
.gc-live-chat-row__meta{justify-content:flex-start;flex-wrap:wrap;gap:10px;}
.gc-live-chat-row__meta strong{font-size:13px;}
.gc-live-chat-row__meta span{font-size:11px;}
.gc-live-chat-row__body{line-height:1.55;}
.gc-live-room-layout.is-live-fullscreen,.gc-live-room-layout:fullscreen{max-width:none !important;width:100vw;height:100vh;padding:18px;box-sizing:border-box;overflow:auto;background:var(--gc-deep);}
.gc-live-room-layout:fullscreen::backdrop{background:var(--gc-deep);}
.gc-live-room-layout.is-live-fullscreen .gc-live-player-card,.gc-live-room-layout.is-live-fullscreen .gc-live-chat-card,.gc-live-room-layout:fullscreen .gc-live-player-card,.gc-live-room-layout:fullscreen .gc-live-chat-card{box-shadow:none;}
@media (max-width: 900px){
  .gc-live-player__toolbar{flex-direction:column;align-items:stretch;}
  .gc-live-player__toolbar-group{justify-content:flex-start;}
}
@media (max-width: 767px){
  .gc-live-player__toolbar-toggle{display:inline-flex;}
  .gc-live-player__toolbar{left:14px;right:14px;top:62px;}
  .gc-live-player:hover .gc-live-player__toolbar{transform:translateY(-130%);opacity:0;pointer-events:none;}
  .gc-live-player.is-toolbar-open .gc-live-player__toolbar,.gc-live-player:focus-within .gc-live-player__toolbar{transform:translateY(0);opacity:1;pointer-events:auto;}
  .gc-live-player__zoom-panel{left:14px;right:14px;top:118px;flex-direction:column;align-items:stretch;}
  .gc-live-player__control-feedback{left:14px;right:14px;max-width:none;bottom:14px;}
}
@media (hover: none){
  .gc-live-player__toolbar-toggle{display:inline-flex;}
  .gc-live-player:hover .gc-live-player__toolbar{transform:translateY(-130%);opacity:0;pointer-events:none;}
  .gc-live-player.is-toolbar-open .gc-live-player__toolbar,.gc-live-player:focus-within .gc-live-player__toolbar{transform:translateY(0);opacity:1;pointer-events:auto;}
}


/* Livestream v1.24.56 viewer/player follow-up */
.gc-live-chat-stream{display:flex;flex-direction:column;gap:2px;font-size:13px;line-height:1.4;padding:6px 10px;background:transparent !important;}
.gc-live-chat-row{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 6px;padding:2px 0;border:0;border-bottom:1px solid rgba(255,255,255,.06);border-radius:0;background:transparent;box-shadow:none;}
.gc-live-chat-row--creator{background:transparent;border-left:2px solid rgba(var(--gc-accent-rgb), .5);padding-left:6px;border-bottom-color:rgba(var(--gc-accent-rgb), .16);}
.gc-live-chat-row--system{background:transparent;opacity:.65;font-style:italic;border-bottom-style:dashed;}
.gc-live-chat-row--tip,.gc-live-chat-row--goal,.gc-live-chat-row--toy,.gc-live-chat-row--notice{margin:3px 0;padding:3px 6px;border-radius:calc(var(--gc-radius-scale, 1) * 4px);border:0;opacity:1;font-style:normal;}
.gc-live-chat-row--tip{background:rgba(var(--gc-accent-rgb), .07);}
.gc-live-chat-row--goal{background:rgba(251,191,36,.07);}
.gc-live-chat-row--toy{background:rgba(129,140,248,.07);}
.gc-live-chat-row--external{border-left:2px solid rgba(251,191,36,.5);padding-left:6px;opacity:.85;}
.gc-live-chat-row--external .gc-live-chat-row__meta strong{color:rgba(251,191,36,.9);}
.gc-live-chat-row__meta{display:inline;justify-content:flex-start;gap:0;color:var(--gc-text-soft);}
.gc-live-chat-row__meta strong{font-weight:700;color:var(--gc-accent);font-size:13px;}
.gc-live-chat-row__meta span{display:none;font-size:11px;}
.gc-live-chat-row__body{display:inline;line-height:1.4;white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere;color:var(--gc-text);}
.gc-live-chat-compose textarea{min-height:56px;}

.gc-live-player__volume{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:0 12px;border:1px solid rgba(255,255,255,.14);border-radius:var(--gc-radius-pill);background:rgba(255,255,255,.06);color:#fff;font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;}
.gc-live-player__volume input{width:96px;accent-color:var(--gc-accent);padding:0;min-height:0;background:transparent;border:0;}
.gc-live-player__audio-button{display:none !important;}
.gc-live-player__zoom-panel{display:none !important;}
.gc-live-player__zoom-pip{display:none !important;position:absolute;right:18px;top:78px;z-index:5;width:320px;height:220px;border:1px solid rgba(255,255,255,.14);border-radius:calc(var(--gc-radius-scale, 1) * 18px);background:rgba(var(--gc-bg-rgb), .82);backdrop-filter:blur(14px);overflow:hidden;box-shadow:0 20px 38px rgba(3,8,21,.4);}
.gc-live-player__zoom-pip[hidden]{display:none !important;}
.gc-live-player__zoom-pip-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-bottom:1px solid rgba(255,255,255,.08);font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#fff;cursor:move;}
.gc-live-player__zoom-pip-header button{appearance:none;border:0;background:transparent;color:#fff;font-size:24px;line-height:1;cursor:pointer;}
.gc-live-player__zoom-pip-viewport{position:absolute;left:0;right:0;top:45px;bottom:0;}
.gc-live-player__zoom-crosshair{position:absolute;z-index:5;border:3px solid rgba(var(--gc-accent-rgb), .9);border-radius:calc(var(--gc-radius-scale, 1) * 18px);box-shadow:0 0 0 9999px rgba(var(--gc-deep-rgb), .08);cursor:grab;touch-action:none;}
.gc-live-player__zoom-crosshair:active{cursor:grabbing;}
.gc-live-player__zoom-crosshair[hidden]{display:none !important;}
.gc-live-player__zoom-crosshair-controls{position:absolute;left:50%;bottom:-64px;transform:translateX(-50%);display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:var(--gc-radius-pill);background:rgba(var(--gc-bg-rgb), .78);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.08);box-shadow:0 16px 32px rgba(3,8,21,.36);}
.gc-live-player__zoom-crosshair-field{display:flex;align-items:center;gap:8px;color:#fff;font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;}
.gc-live-player__zoom-crosshair-field input{width:120px;accent-color:var(--gc-accent);padding:0;min-height:0;background:transparent;border:0;}
.gc-live-player__zoom-crosshair-controls button{appearance:none;border:1px solid rgba(255,255,255,.14);border-radius:var(--gc-radius-pill);background:rgba(255,255,255,.06);color:#fff;min-height:34px;padding:0 12px;font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;}

.gc-live-player-card:fullscreen,.gc-live-player-card.is-live-fullscreen{display:flex;flex-direction:column;width:100vw;height:100vh;max-width:none;border-radius:0;background:var(--gc-deep);box-sizing:border-box;overflow:hidden;}
.gc-live-player-card:fullscreen::backdrop{background:var(--gc-deep);}
.gc-live-player-card:fullscreen .gc-live-player,.gc-live-player-card.is-live-fullscreen .gc-live-player{flex:1;min-height:0;aspect-ratio:auto;}
.gc-live-player-card:fullscreen .gc-live-room-bar,.gc-live-player-card.is-live-fullscreen .gc-live-room-bar{position:relative;z-index:2;}
.gc-live-chat-card--fullscreen-overlay,.gc-live-chat-card--fs-overlay{position:absolute !important;left:0;top:0;bottom:0;width:min(340px,38vw);max-width:100%;z-index:6;border-left:0;border-right:1px solid rgba(255,255,255,.08);border-radius:0;background:rgba(var(--gc-bg-rgb), .72);backdrop-filter:blur(16px);box-shadow:none;min-height:0;}
.gc-live-chat-card--fullscreen-overlay .gc-live-chat-card__tabs,.gc-live-chat-card--fs-overlay .gc-live-chat-card__tabs{background:rgba(255,255,255,.04);border-bottom-color:rgba(255,255,255,.08);}
.gc-live-chat-card--fullscreen-overlay .gc-live-chat-card__tabs button,.gc-live-chat-card--fs-overlay .gc-live-chat-card__tabs button{color:#cbd5e1;}
.gc-live-chat-card--fullscreen-overlay .gc-live-chat-card__tabs button.is-active,.gc-live-chat-card--fs-overlay .gc-live-chat-card__tabs button.is-active{background:rgba(255,255,255,.08);color:#fff;}
.gc-live-chat-card--fullscreen-overlay .gc-live-chat-stream,.gc-live-chat-card--fs-overlay .gc-live-chat-stream{max-height:none;min-height:0;background:transparent;}
.gc-live-chat-card--fullscreen-overlay .gc-live-chat-compose textarea,.gc-live-chat-card--fs-overlay .gc-live-chat-compose textarea{background:rgba(255,255,255,.06);color:#fff;border-color:rgba(255,255,255,.12);}
.gc-live-chat-card--fullscreen-overlay .gc-live-chat-notice,.gc-live-chat-card--fs-overlay .gc-live-chat-notice{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.12);}

@media (max-width: 900px){
  .gc-live-player__zoom-crosshair-controls{left:0;right:0;bottom:-72px;transform:none;justify-content:space-between;border-radius:calc(var(--gc-radius-scale, 1) * 18px);}
  .gc-live-player__volume{width:100%;justify-content:space-between;}
}
@media (max-width: 767px){
  .gc-live-player__volume{width:100%;justify-content:space-between;}
  .gc-live-player__zoom-crosshair-controls{left:0;right:0;bottom:-84px;}
  .gc-live-chat-card--fullscreen-overlay,.gc-live-chat-card--fs-overlay{width:min(360px,88vw);}
}


/* Livestream viewer UX overhaul v1.24.57 */
.gc-live-chat-card__tabs button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:42px;padding:4px 10px;font-size:10px;line-height:1;}
.gc-live-chat-card__tab-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;}
.gc-live-chat-card__tab-icon svg{display:block;width:18px;height:18px;opacity:.7;transition:opacity .15s ease;}
.gc-live-chat-card__tabs button:hover .gc-live-chat-card__tab-icon svg,
.gc-live-chat-card__tabs button.is-active .gc-live-chat-card__tab-icon svg{opacity:1;}
.gc-live-chat-card__tab-label{display:block;font-size:10px;letter-spacing:.01em;}
.gc-live-chat-compose__row{display:flex;align-items:center;gap:6px;background:rgba(255,255,255,.06);border:1px solid var(--gc-border);border-radius:var(--gc-radius-pill);padding:4px 4px 4px 14px;}
.gc-live-chat-compose__row input[type="text"]{flex:1;min-width:0;min-height:34px;border:0;padding:0;background:transparent;color:var(--gc-text);font-size:13px;outline:none;box-shadow:none;}
.gc-live-chat-compose__row input[type="text"]::placeholder{color:var(--gc-text-soft);}
.gc-live-chat-compose__emoji,.gc-live-chat-compose__send{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;padding:0;}
.gc-live-chat-compose__emoji{background:transparent;border:0;color:var(--gc-text-soft);cursor:pointer;transition:color .15s ease, background .15s ease;}
.gc-live-chat-compose__emoji:hover{color:var(--gc-accent);background:rgba(255,255,255,.05);}
.gc-live-chat-compose__send{background:var(--gc-accent);border:0;color:var(--gc-deep);cursor:pointer;transition:background .15s ease, transform .15s ease;}
.gc-live-chat-compose__send:hover{background:var(--gc-accent-strong);transform:translateY(-1px);}
.gc-live-chat-compose__emoji svg,.gc-live-chat-compose__send svg{display:block;width:17px;height:17px;}
.gc-live-player-card:fullscreen,
.gc-live-player-card.is-live-fullscreen{position:relative;}
.gc-live-chat-card--fullscreen-overlay,
.gc-live-chat-card--fs-overlay{position:absolute !important;left:0;top:0;bottom:0;width:min(340px,38vw);max-width:100%;z-index:6;display:flex !important;flex-direction:column;height:100%;overflow:hidden;transition:transform .3s cubic-bezier(.4,0,.2,1),opacity .3s ease;transform:translateX(-100%);opacity:0;pointer-events:none;background:transparent !important;backdrop-filter:none !important;border-right:none !important;border-left:0;box-shadow:none !important;min-height:0;}
.gc-live-chat-card--fullscreen-overlay.is-chat-visible,
.gc-live-chat-card--fs-overlay.is-chat-visible{transform:translateX(0);opacity:1;pointer-events:auto;}
.gc-live-chat-card--fullscreen-overlay .gc-live-chat-card__tabs,
.gc-live-chat-card--fs-overlay .gc-live-chat-card__tabs{display:none !important;flex-shrink:0;}
.gc-live-chat-card--fullscreen-overlay .gc-live-chat-card__body,
.gc-live-chat-card--fs-overlay .gc-live-chat-card__body{display:flex !important;flex-direction:column;flex:1;min-height:0;overflow:hidden;}
.gc-live-chat-card--fullscreen-overlay .gc-live-chat-stream,
.gc-live-chat-card--fs-overlay .gc-live-chat-stream{flex:1;max-height:none;min-height:0;overflow-y:auto;background:transparent;padding-top:40px;-webkit-mask-image:linear-gradient(to bottom,transparent 0%,rgba(0,0,0,.15) 8%,black 22%);mask-image:linear-gradient(to bottom,transparent 0%,rgba(0,0,0,.15) 8%,black 22%);}
.gc-live-chat-card--fullscreen-overlay .gc-live-chat-row,
.gc-live-chat-card--fs-overlay .gc-live-chat-row{background:transparent !important;border:none !important;text-shadow:0 1px 4px rgba(0,0,0,.6);padding:5px 10px;font-size:13px;border-radius:calc(var(--gc-radius-scale, 1) * 8px);}
.gc-live-chat-card--fullscreen-overlay .gc-live-chat-compose,
.gc-live-chat-card--fs-overlay .gc-live-chat-compose{flex-shrink:0;padding:12px 14px 16px;}
.gc-live-chat-card--fullscreen-overlay .gc-live-chat-compose__row,
.gc-live-chat-card--fs-overlay .gc-live-chat-compose__row{background:rgba(255,255,255,.08) !important;border-color:rgba(255,255,255,.10) !important;border-radius:var(--gc-radius-pill);backdrop-filter:blur(12px);}
.gc-live-chat-card--fullscreen-overlay .gc-live-chat-compose__emoji,
.gc-live-chat-card--fullscreen-overlay .gc-live-chat-compose__row input[type="text"],
.gc-live-chat-card--fs-overlay .gc-live-chat-compose__emoji,
.gc-live-chat-card--fs-overlay .gc-live-chat-compose__row input[type="text"]{color:#f8fafc;}
.gc-live-player-card:fullscreen .gc-live-player__toolbar,
.gc-live-player-card.is-live-fullscreen .gc-live-player__toolbar{left:0;right:0;top:0;border-radius:0;background:linear-gradient(to bottom,rgba(var(--gc-deep-rgb), .7),transparent);border:none;border-bottom:1px solid rgba(255,255,255,.06);backdrop-filter:blur(14px);padding:14px 20px;}
.gc-live-player-card:fullscreen .gc-live-room-bar,
.gc-live-player-card.is-live-fullscreen .gc-live-room-bar{position:absolute;left:0;right:0;bottom:0;z-index:7;transform:translateY(100%);opacity:0;pointer-events:none;transition:transform .3s cubic-bezier(.4,0,.2,1),opacity .3s ease;background:linear-gradient(to top,rgba(var(--gc-deep-rgb), .85),transparent);backdrop-filter:blur(10px);border-top:0;}
.gc-live-player-card:fullscreen .gc-live-room-bar.is-bar-visible,
.gc-live-player-card.is-live-fullscreen .gc-live-room-bar.is-bar-visible{transform:translateY(0);opacity:1;pointer-events:auto;}
.gc-live-player-card:fullscreen .gc-live-room-bar__left,
.gc-live-player-card:fullscreen .gc-live-room-bar__right,
.gc-live-player-card.is-live-fullscreen .gc-live-room-bar__left,
.gc-live-player-card.is-live-fullscreen .gc-live-room-bar__right{align-items:center;}
.gc-live-chat-card--fullscreen-overlay .gc-live-chat-notice,
.gc-live-chat-card--fs-overlay .gc-live-chat-notice{margin:12px 14px 16px;background:rgba(var(--gc-bg-rgb), .3);border-color:rgba(255,255,255,.12);backdrop-filter:blur(10px);}

.gc-live-toy-devices{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;margin-top:12px;}
.gc-live-toy-devices__empty{padding:13px 14px;border-radius:calc(var(--gc-radius-scale, 1) * 16px);border:1px dashed rgba(255,255,255,.14);background:rgba(255,255,255,.025);color:var(--gc-text-soft);line-height:1.6;word-break:break-word;overflow-wrap:anywhere;}
.gc-live-toy-device{display:grid;gap:8px;padding:13px 14px;border-radius:calc(var(--gc-radius-scale, 1) * 16px);border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.03);}
.gc-live-toy-device__head{display:flex;align-items:center;justify-content:space-between;gap:10px;}
.gc-live-toy-device__head strong{font-size:14px;color:var(--gc-text);}
.gc-live-toy-device__pill{display:inline-flex;align-items:center;justify-content:center;padding:4px 9px;border-radius:var(--gc-radius-pill);background:rgba(var(--gc-accent-rgb), .12);border:1px solid rgba(var(--gc-accent-rgb), .24);color:var(--gc-accent);font-size:11px;font-weight:700;letter-spacing:.02em;text-transform:uppercase;}
.gc-live-toy-device__meta{color:var(--gc-text-soft);font-size:12px;line-height:1.5;word-break:break-word;overflow-wrap:anywhere;}
.gc-live-toy-panel{display:grid;gap:12px;margin-top:14px;}
.gc-live-toy-panel__head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;}
.gc-live-toy-panel__head strong{font-size:15px;color:var(--gc-text);}
.gc-live-toy-panel__head span{display:inline-flex;align-items:center;justify-content:center;padding:4px 10px;border-radius:var(--gc-radius-pill);background:rgba(var(--gc-accent-2-rgb), .14);border:1px solid rgba(var(--gc-accent-2-rgb), .24);color:#c4b5fd;font-size:11px;font-weight:700;letter-spacing:.02em;text-transform:uppercase;}
.gc-live-toy-panel__mount{min-height:132px;padding:14px;border-radius:calc(var(--gc-radius-scale, 1) * 18px);border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.03);overflow:hidden;position:relative;}
.gc-live-toy-panel__mount.is-mounted{background:rgba(255,255,255,.02);}
.gc-live-toy-panel__placeholder{display:grid;place-items:center;min-height:100px;text-align:center;color:var(--gc-text-soft);line-height:1.6;word-break:break-word;overflow-wrap:anywhere;}
.gc-live-toy-panel__mount.is-mounted .gc-live-toy-panel__placeholder{display:none;}
.gc-live-toy-panel__mount > [class*="lvs-"]{max-width:100%;width:100%!important;}
.gc-live-toy-panel__mount .lvs-clink-pl__inner-content,.gc-live-toy-panel__mount .lvs-tip-pl__inner-content{max-width:100%;}
@media (max-width: 767px){.gc-live-toy-devices{grid-template-columns:1fr;}}

/* Livestream premium per-minute rooms */
.gc-live-room-pill--accent {
  border-color: rgba(251, 191, 36, 0.28);
  background: rgba(251, 191, 36, 0.12);
  color: #fbbf24;
}

.gc-live-player.has-premium-gate .gc-live-player__media video,
.gc-live-player.has-premium-gate .gc-live-player__media img {
  filter: blur(18px);
  transform: scale(1.03);
}

.gc-live-player__premium-gate {
  position: absolute;
  inset: 0;
  z-index: 8;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: clamp(20px, 3vw, 34px);
  background: radial-gradient(circle at top, rgba(30, 41, 59, 0.62), rgba(var(--gc-surface-rgb), 0.92));
  backdrop-filter: blur(14px);
}

.gc-live-player__premium-gate-inner {
  width: min(100%, 520px);
  display: grid;
  gap: 14px;
  padding: clamp(20px, 3vw, 30px);
  border-radius: calc(var(--gc-radius-scale, 1) * 24px);
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: rgba(var(--gc-slate-rgb), 0.78);
  box-shadow: 0 24px 50px rgba(2, 6, 23, 0.34);
  text-align: center;
}

.gc-live-player__premium-gate-title {
  margin: 0;
  font-size: clamp(1.2rem, 1rem + 0.8vw, 1.7rem);
  font-weight: 700;
}

.gc-live-player__premium-gate-text {
  margin: 0;
  color: rgba(var(--gc-text-muted-rgb), 0.92);
  line-height: 1.55;
}

.gc-live-player__premium-gate-meta {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
}

.gc-live-player__premium-gate-meta span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 7px 12px;
  border-radius: var(--gc-radius-pill);
  border: 1px solid rgba(var(--gc-text-soft-rgb), 0.24);
  background: rgba(var(--gc-slate-rgb), 0.58);
  color: rgba(241, 245, 249, 0.94);
  font-size: 0.92rem;
}

.gc-live-player__premium-gate-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
}

.gc-live-player__premium-gate-actions .gc-button {
  min-width: 170px;
}

.gc-live-player__premium-gate .gc-live-inline-feedback {
  margin: 0;
}

@media (max-width: 767px) {
  .gc-live-player__premium-gate-inner {
    border-radius: calc(var(--gc-radius-scale, 1) * 20px);
    padding: 18px;
  }

  .gc-live-player__premium-gate-actions {
    flex-direction: column;
  }

  .gc-live-player__premium-gate-actions .gc-button {
    width: 100%;
    min-width: 0;
  }
}


/* Livestream chat tip overlay + inline Lovense pass */
.gc-live-tab-panel--chat{position:relative;overflow:hidden;}
.gc-live-chat-actions-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 10px 8px;}
.gc-live-tip-total--chat{min-height:30px;padding:0 10px;font-size:11px;}
.gc-live-chat-tip-trigger{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 14px;border:0;border-radius:var(--gc-radius-pill);background:var(--gc-accent);color:var(--gc-deep);font-weight:800;font-size:12px;letter-spacing:.03em;text-transform:uppercase;cursor:pointer;transition:transform .16s ease,background .16s ease,opacity .16s ease;box-shadow:0 12px 30px rgba(var(--gc-accent-rgb), .24);}
.gc-live-chat-tip-trigger:hover{background:var(--gc-accent-strong);transform:translateY(-1px);}
.gc-live-chat-tip-trigger svg{width:16px;height:16px;display:block;}

.gc-live-player-stack{display:flex;flex-direction:column;gap:0;min-width:0;}
.gc-live-player-card--with-actionbar{border-radius:calc(var(--gc-radius-scale, 1) * 24px) calc(var(--gc-radius-scale, 1) * 24px) 0 0;}
.gc-live-actionbar{display:flex;align-items:center;gap:10px;padding:12px 14px;border:1px solid var(--gc-border);border-top:0;border-radius:0 0 calc(var(--gc-radius-scale, 1) * 24px) calc(var(--gc-radius-scale, 1) * 24px);background:rgba(17,18,22,.96);box-shadow:0 20px 50px rgba(3,8,21,.28);}
.gc-live-actionbar__btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:0 14px;border:1px solid rgba(255,255,255,.08);border-radius:var(--gc-radius-pill);background:rgba(255,255,255,.04);color:var(--gc-text);font-size:12px;font-weight:800;letter-spacing:.03em;text-transform:uppercase;cursor:pointer;transition:transform .16s ease,background .16s ease,opacity .16s ease,border-color .16s ease,color .16s ease;}
.gc-live-actionbar__btn:hover{background:rgba(255,255,255,.08);transform:translateY(-1px);}
.gc-live-actionbar__btn:disabled{opacity:.45;cursor:not-allowed;transform:none;}
.gc-live-actionbar__btn--fav{width:40px;padding:0;font-size:18px;line-height:1;}
.gc-live-actionbar__btn--fav.is-active{color:var(--gc-accent);border-color:rgba(var(--gc-accent-rgb), .38);background:rgba(var(--gc-accent-rgb), .12);}
.gc-live-actionbar__btn--primary{background:var(--gc-accent);border-color:rgba(var(--gc-accent-rgb), .55);color:var(--gc-deep);box-shadow:0 12px 30px rgba(var(--gc-accent-rgb), .24);}
.gc-live-actionbar__btn--primary:hover{background:var(--gc-accent-strong);}
.gc-live-actionbar__spacer{flex:1 1 auto;}
.has-live-actionbar .gc-live-chat-tip-trigger[data-gc-live-tip-trigger]{display:none!important;}

.gc-live-chat-tip-overlay{position:absolute;left:10px;right:10px;top:10px;bottom:10px;z-index:20;display:flex;flex-direction:column;max-height:none;height:calc(100% - 20px);border:1px solid rgba(255,255,255,.08);border-radius:calc(var(--gc-radius-scale, 1) * 20px);background:rgba(var(--gc-bg-rgb), .96);backdrop-filter:blur(18px);box-shadow:0 28px 70px rgba(3,8,21,.55);overflow:hidden;animation:gc-live-tip-overlay-in .18s ease-out;}
@keyframes gc-live-tip-overlay-in{from{transform:translateY(18px);opacity:0;}to{transform:translateY(0);opacity:1;}}
.gc-live-chat-tip-overlay__header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-bottom:1px solid rgba(255,255,255,.08);}
.gc-live-chat-tip-overlay__title{font-size:14px;font-weight:800;letter-spacing:.02em;color:var(--gc-text);}
.gc-live-chat-tip-overlay__close{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:0;border-radius:50%;background:rgba(255,255,255,.06);color:var(--gc-text-soft);cursor:pointer;transition:background .16s ease,color .16s ease,transform .16s ease;}
.gc-live-chat-tip-overlay__close:hover{background:rgba(255,255,255,.12);color:#fff;transform:translateY(-1px);}
.gc-live-chat-tip-overlay__tabs{display:flex;align-items:center;gap:6px;padding:0 14px;border-bottom:1px solid rgba(255,255,255,.08);}
.gc-live-chat-tip-overlay__tab{appearance:none;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--gc-text-soft);padding:10px 6px;font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;transition:color .16s ease,border-color .16s ease;}
.gc-live-chat-tip-overlay__tab:hover{color:#fff;}
.gc-live-chat-tip-overlay__tab--active{color:var(--gc-accent);border-bottom-color:var(--gc-accent);}
.gc-live-chat-tip-overlay__body{flex:1;min-height:0;overflow:auto;padding:10px 14px;}
.gc-live-chat-tip-overlay__panel{display:block;}
.gc-live-chat-tip-overlay__menu{display:grid;gap:10px;}
.gc-live-chat-tip-overlay__toy-header{font-size:14px;font-weight:800;color:var(--gc-text);margin:0 0 4px;}
.gc-live-chat-tip-overlay__toy-desc,.gc-live-chat-tip-overlay__note{margin:0;color:var(--gc-text-soft);font-size:12px;line-height:1.6;}
.gc-live-chat-tip-overlay__lovense-panel{display:grid;gap:10px;margin-top:12px;}
.gc-live-chat-tip-overlay__lovense-panel-host{min-height:132px;}
.gc-live-chat-tip-overlay__form{display:grid;gap:10px;padding:12px 14px 14px;border-top:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.02);}
.gc-live-chat-tip-overlay__amounts{display:flex;gap:8px;overflow:auto;padding-bottom:2px;scrollbar-width:none;}
.gc-live-chat-tip-overlay__amounts::-webkit-scrollbar{display:none;}
.gc-live-chat-tip-overlay__amount-btn{appearance:none;flex:0 0 auto;min-height:36px;padding:0 12px;border:1px solid rgba(255,255,255,.1);border-radius:var(--gc-radius-pill);background:rgba(255,255,255,.05);color:var(--gc-text);font-size:12px;font-weight:800;letter-spacing:.03em;cursor:pointer;transition:background .16s ease,border-color .16s ease,transform .16s ease;}
.gc-live-chat-tip-overlay__amount-btn:hover{background:rgba(255,255,255,.1);transform:translateY(-1px);}
.gc-live-chat-tip-overlay__amount-btn--active{border-color:rgba(var(--gc-accent-rgb), .4);background:rgba(var(--gc-accent-rgb), .14);color:#eafffb;}
.gc-live-chat-tip-overlay__send-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;}
.gc-live-chat-tip-overlay__custom-label{display:block;}
.gc-live-chat-tip-overlay__custom-input{width:100%;min-height:46px;padding:12px 14px;border:1px solid rgba(255,255,255,.12);border-radius:calc(var(--gc-radius-scale, 1) * 16px);background:rgba(255,255,255,.06);color:var(--gc-text);font-size:14px;outline:none;box-shadow:none;}
.gc-live-chat-tip-overlay__custom-input:focus{border-color:rgba(var(--gc-accent-rgb), .45);}
.gc-live-chat-tip-overlay__send-btn{min-height:46px;padding:0 18px;border-radius:calc(var(--gc-radius-scale, 1) * 16px);white-space:nowrap;}

.gc-live-tip-menu-table,.gc-live-lovense-table{width:100%;border-collapse:collapse;table-layout:fixed;}
.gc-live-tip-menu-table thead th,.gc-live-lovense-table thead th{padding:0 0 10px;border-bottom:1px solid rgba(255,255,255,.06);font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--gc-text-soft);text-align:left;}
.gc-live-tip-menu-table__tokens,.gc-live-lovense-table__tokens{text-align:right;}
.gc-live-tip-menu-table__row,.gc-live-lovense-table__row{cursor:pointer;transition:background .16s ease;}
.gc-live-tip-menu-table__row:hover,.gc-live-lovense-table__row:hover{background:rgba(255,255,255,.05);}
.gc-live-tip-menu-table__row.is-disabled{opacity:.45;cursor:not-allowed;pointer-events:none;}
.gc-live-tip-menu-table__row td,.gc-live-lovense-table__row td,.gc-live-lovense-table__empty-row td{padding:10px 0;border-bottom:1px solid rgba(255,255,255,.04);vertical-align:top;color:var(--gc-text);}
.gc-live-tip-menu-table__activity-cell,.gc-live-lovense-table__power-cell{padding-right:12px;}
.gc-live-tip-menu-table__tokens-cell,.gc-live-lovense-table__tokens-cell{text-align:right;font-weight:800;color:var(--gc-accent);white-space:nowrap;}
.gc-live-tip-menu-table__reaction,.gc-live-lovense-table__note{display:block;margin-top:4px;font-size:11px;color:var(--gc-text-soft);line-height:1.5;}
.gc-live-lovense-table__duration-cell{width:72px;color:var(--gc-text-soft);white-space:nowrap;}
.gc-lovense-power-icon{display:inline-flex;align-items:center;gap:8px;font-weight:700;}
.gc-lovense-power-icon svg{flex:0 0 auto;display:block;}
.gc-lovense-level-low{color:#22c55e;}
.gc-lovense-level-medium{color:#eab308;}
.gc-lovense-level-high{color:#f97316;}
.gc-lovense-level-ultra{color:#ef4444;}
.gc-lovense-level-wave{color:#8b5cf6;}
.gc-lovense-level-pulse{color:#ec4899;}
.gc-lovense-level-earthquake{color:#ef4444;}
.gc-lovense-level-fireworks{color:#f59e0b;}

.gc-live-chat-row--lovense{display:flex;align-items:center;gap:0 8px;}
.gc-live-chat-row__lovense-icon{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;}
.gc-live-chat-row__lovense-icon svg{display:block;width:18px;height:18px;}
.gc-live-chat-row__lovense-power{font-weight:800;}
.gc-live-chat-row__lovense-duration{font-weight:700;color:var(--gc-accent);}
.gc-live-chat-row__lovense-user{color:var(--gc-text-soft);}

.gc-live-chat-tip-overlay__lovense-panel-host > [class*="lvs-"]{max-width:100%;width:100%!important;}
.gc-live-chat-tip-overlay__lovense-panel-host .lvs-clink-pl__inner-content,.gc-live-chat-tip-overlay__lovense-panel-host .lvs-tip-pl__inner-content{max-width:100%;}

@media (max-width: 767px){
  .gc-live-chat-actions-bar{padding:0 6px 8px;}
  .gc-live-actionbar{flex-wrap:wrap;padding:10px 12px;}
  .gc-live-actionbar__spacer{display:none;}
  .gc-live-actionbar__btn--primary{flex:1 1 100%;}
  .gc-live-chat-tip-overlay{left:6px;right:6px;top:6px;bottom:6px;height:calc(100% - 12px);max-height:none;}
  .gc-live-chat-tip-overlay__tabs{padding:0 10px;}
  .gc-live-chat-tip-overlay__body,.gc-live-chat-tip-overlay__form{padding-left:10px;padding-right:10px;}
  .gc-live-chat-tip-overlay__send-row{grid-template-columns:minmax(0,1fr);}
  .gc-live-tip-total--chat{display:none;}
}


/* Livestream VibeMate + Auto Tip follow-up */
.gc-vibemate,.gc-autotip{background:var(--gc-slate);color:#f8fafc;border-radius:calc(var(--gc-radius-scale, 1) * 12px);padding:14px;margin-top:12px;font-size:13px;}
.gc-vibemate__header,.gc-autotip__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;gap:12px;}
.gc-vibemate__title,.gc-autotip__title{font-weight:700;letter-spacing:.02em;color:#f8fafc;}
.gc-vibemate__switch,.gc-autotip__switch{position:relative;width:42px;height:24px;display:inline-block;flex:0 0 auto;}
.gc-vibemate__switch input,.gc-autotip__switch input{opacity:0;width:0;height:0;position:absolute;}
.gc-vibemate__slider,.gc-autotip__slider{position:absolute;inset:0;background:#475467;border-radius:var(--gc-radius-pill);transition:.2s;cursor:pointer;}
.gc-vibemate__slider::before,.gc-autotip__slider::before{content:"";position:absolute;height:18px;width:18px;left:3px;top:3px;background:#fff;border-radius:50%;transition:.2s;}
.gc-vibemate__switch input:checked + .gc-vibemate__slider,
.gc-autotip__switch input:checked + .gc-autotip__slider{background:#ef4444;}
.gc-vibemate__switch input:checked + .gc-vibemate__slider::before,
.gc-autotip__switch input:checked + .gc-autotip__slider::before{transform:translateX(18px);}
.gc-vibemate__body,.gc-autotip__body{display:grid;gap:8px;}
.gc-vibemate__row{display:flex;gap:10px;}
.gc-vibemate__row label,.gc-autotip__body label{flex:1;display:flex;flex-direction:column;gap:4px;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:#94a3b8;}
.gc-vibemate__row input,.gc-autotip__body input{background:#1e293b;border:1px solid #334155;border-radius:calc(var(--gc-radius-scale, 1) * 8px);padding:8px;color:#f8fafc;}
.gc-vibemate__row input[type="range"]{padding:0;}
.gc-vibemate__status,.gc-autotip__status{margin-top:2px;font-size:11px;color:#94a3b8;line-height:1.45;}
.gc-vibemate__test{margin-top:4px;background:#ef4444;color:#fff;border:0;border-radius:calc(var(--gc-radius-scale, 1) * 8px);padding:8px 12px;font-weight:600;cursor:pointer;justify-self:start;}
.gc-vibemate__test:hover{background:#dc2626;}
@media (max-width: 767px){
  .gc-vibemate__row{flex-direction:column;}
}

/* GC-LOVENSE-INSTALL-MODAL 1.24.70 */
.gc-lovense-install-modal{position:fixed;inset:0;background:rgba(0,0,0,.75);display:flex;align-items:center;justify-content:center;z-index:99999;}
.gc-lovense-install-modal__box{background:#15171c;color:#fff;padding:28px 32px;border-radius:calc(var(--gc-radius-scale, 1) * 16px);max-width:420px;width:calc(100% - 40px);text-align:center;box-shadow:0 20px 60px rgba(0,0,0,.6);}
.gc-lovense-install-modal__box h3{margin:0 0 12px;font-size:20px;}
.gc-lovense-install-modal__box p{margin:0 0 18px;font-size:14px;line-height:1.5;opacity:.9;}
.gc-lovense-install-modal__cta{display:inline-block;background:#ff4e8e;color:#fff;padding:12px 22px;border-radius:var(--gc-radius-pill);font-weight:600;text-decoration:none;margin-bottom:12px;}
.gc-lovense-install-modal__cta:hover{background:#ff6aa0;}
.gc-lovense-install-modal__close{display:block;margin:8px auto 0;background:transparent;border:1px solid rgba(255,255,255,.25);color:#fff;padding:8px 18px;border-radius:var(--gc-radius-pill);cursor:pointer;}
/* Phase B: tip overlay single-scroll layout */
.gc-live-chat-tip-overlay__body{scroll-behavior:smooth;}
.gc-live-chat-tip-overlay__tabs{position:sticky;top:0;z-index:2;background:rgba(var(--gc-bg-rgb), .96);backdrop-filter:blur(18px);}
.gc-live-chat-tip-overlay__panel + .gc-live-chat-tip-overlay__panel{margin-top:18px;padding-top:18px;border-top:1px solid rgba(255,255,255,.08);}
.gc-live-chat-tip-overlay__section-title{margin:0 0 10px;font-size:13px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--gc-text);}

/* Phase C: tip menu row actions */
.gc-live-tip-menu-table__actions{width:1%;white-space:nowrap;text-align:right;}
.gc-live-tip-menu-table__actions-cell{display:flex;gap:6px;justify-content:flex-end;padding:6px 8px;}
.gc-live-tip-menu-table__btn{appearance:none;border:0;border-radius:var(--gc-radius-pill);padding:6px 12px;font-size:11px;font-weight:800;letter-spacing:.03em;text-transform:uppercase;cursor:pointer;transition:background .16s ease,transform .16s ease,opacity .16s ease;}
.gc-live-tip-menu-table__btn--send{background:var(--gc-accent,var(--gc-accent));color:#04201b;}
.gc-live-tip-menu-table__btn--send:hover{transform:translateY(-1px);}
.gc-live-tip-menu-table__btn--send[disabled]{opacity:.45;cursor:not-allowed;transform:none;}
.gc-live-tip-menu-table__btn--buy{background:rgba(255,255,255,.08);color:var(--gc-text,#fff);border:1px solid rgba(255,255,255,.15);}
.gc-live-tip-menu-table__btn--buy:hover{background:rgba(255,255,255,.14);}
.gc-live-tip-menu-table__row{cursor:default;}

/* Phase C.3 - Stripchat-style per-row confirm button with slide animation */
.gc-live-tip-menu-table__row{cursor:pointer;transition:background .14s ease;}
.gc-live-tip-menu-table__row:hover:not(.is-disabled){background:rgba(255,255,255,.04);}
.gc-live-tip-menu-table__row.is-selected{background:rgba(var(--gc-accent-rgb), .10);}
.gc-live-tip-menu-table__row.is-disabled{cursor:not-allowed;opacity:.55;}
.gc-live-tip-menu-table__tokens-cell{position:relative;text-align:right;white-space:nowrap;}
.gc-live-tip-menu-table__tokens-num{display:inline-block;font-variant-numeric:tabular-nums;transition:opacity .18s ease;}
.gc-live-tip-menu-table__row.is-selected .gc-live-tip-menu-table__tokens-num{display:none;}
.gc-live-tip-menu-confirm{display:inline-block;vertical-align:middle;max-width:0;opacity:0;transform:translateX(12px);overflow:hidden;pointer-events:none;transition:max-width .28s cubic-bezier(.2,.8,.2,1),opacity .22s ease .04s,transform .28s cubic-bezier(.2,.8,.2,1);}
.gc-live-tip-menu-table__row.is-selected .gc-live-tip-menu-confirm{max-width:240px;opacity:1;transform:translateX(0);pointer-events:auto;}
.gc-live-tip-menu-confirm__btn{display:inline-block;padding:6px 14px;border:0;border-radius:var(--gc-radius-pill);font-size:12px;font-weight:700;letter-spacing:.02em;cursor:pointer;white-space:nowrap;transition:transform .12s ease,filter .12s ease;}
.gc-live-tip-menu-confirm__btn:hover{transform:translateY(-1px);filter:brightness(1.08);}
.gc-live-tip-menu-confirm__btn--send{background:var(--gc-accent,var(--gc-accent));color:#04201b;}
.gc-live-tip-menu-confirm__btn--buy{background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.2);}
.gc-live-tip-menu-table__reaction{display:none!important;}
.gc-live-tip-menu-table__actions,.gc-live-tip-menu-table__actions-cell,.gc-live-tip-menu-table__btn,.gc-live-tip-menu-action{display:none!important;}
/* Phase D - Stripchat-style per-row confirm button on Sex Toy (Lovense) table */
.gc-live-lovense-table__row{cursor:pointer;transition:background .14s ease;}
.gc-live-lovense-table__row:hover{background:rgba(255,255,255,.04);}
.gc-live-lovense-table__row.is-selected{background:rgba(var(--gc-accent-rgb), .10);}
.gc-live-lovense-table__tokens-cell{position:relative;text-align:right;white-space:nowrap;}
.gc-live-lovense-table__tokens-num{display:inline-block;font-variant-numeric:tabular-nums;transition:opacity .18s ease;}
.gc-live-lovense-table__row.is-selected .gc-live-lovense-table__tokens-num{display:none;}
.gc-live-lovense-table__row .gc-live-tip-menu-confirm{display:inline-block;vertical-align:middle;max-width:0;opacity:0;transform:translateX(12px);overflow:hidden;pointer-events:none;transition:max-width .28s cubic-bezier(.2,.8,.2,1),opacity .22s ease .04s,transform .28s cubic-bezier(.2,.8,.2,1);}
.gc-live-lovense-table__row.is-selected .gc-live-tip-menu-confirm{max-width:240px;opacity:1;transform:translateX(0);pointer-events:auto;}

/* Phase D.2 — Lovense SDK-sourced Sex Toy tab */
#lvs-control-panel{display:none !important;visibility:hidden !important;pointer-events:none !important;}
.gc-live-lovense-table__section-row td{padding-top:14px !important;padding-bottom:6px !important;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--gc-text-soft);border-bottom:1px solid rgba(255,255,255,.08) !important;}
.gc-live-lovense-table__section-row.first td{padding-top:4px !important;}
.gc-live-lovense-table__row[data-gc-lovense-kind="special"] .gc-lovense-power-icon{color:#f0abfc;}
/* --- Lovense Toy Icons in Sex Toy Menu --- */
.gc-toy-icon-wrap{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:calc(var(--gc-radius-scale, 1) * 6px);background:rgba(255,255,255,.07);margin:1px;vertical-align:middle;transition:background .18s ease;}
.gc-toy-icon-wrap:hover{background:rgba(255,255,255,.15);}
.gc-toy-icon{display:block;color:var(--gc-accent,#a78bfa);flex-shrink:0;}
.gc-live-lovense-table__toys-cell{text-align:center;white-space:nowrap;}
.gc-live-lovense-table__toys-cell .gc-toy-icon-wrap + .gc-toy-icon-wrap{margin-left:2px;}


/* Offline Banner */
.gc-offline-banner {
  background: linear-gradient(135deg, #1a1a2e 0%, #16213e 100%);
  border-radius: calc(var(--gc-radius-scale, 1) * 12px);
  padding: 32px;
  margin: 16px 0;
  text-align: center;
}
.gc-offline-banner__avatar img { border-radius: 50%; width: 80px; height: 80px; }
.gc-offline-banner__title { color: #fff; font-size: 20px; margin: 12px 0 4px; }
.gc-offline-banner__title span { display: block; font-size: 14px; color: #999; font-weight: 400; }
.gc-offline-banner__status { color: #ccc; font-size: 15px; margin: 8px 0 20px; min-height: 20px; }
.gc-offline-banner__ctas { display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; }
.gc-offline-cta {
  display: flex; flex-direction: column; align-items: center; gap: 4px;
  background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.1);
  border-radius: calc(var(--gc-radius-scale, 1) * 10px); padding: 16px 24px; min-width: 140px;
  color: #ddd; text-decoration: none; cursor: pointer; transition: all .2s;
}
.gc-offline-cta:hover { background: rgba(255,255,255,0.1); border-color: rgba(255,255,255,0.2); }
.gc-offline-cta__icon { font-size: 24px; }
.gc-offline-cta__label { font-weight: 600; font-size: 14px; }
.gc-offline-cta__count, .gc-offline-cta__sub { font-size: 12px; color: #999; }
.gc-offline-cta--subscribe { border-color: #e74c3c; }
.gc-offline-cta--subscribe:hover { background: rgba(231,76,60,0.1); }
.gc-offline-cta--active { border-color: #2ecc71; }
.gc-offline-cta--active .gc-offline-cta__label { color: #2ecc71; }

/* Activity Tags */
.gc-activity-tags-display {
  display: flex; flex-wrap: wrap; gap: 6px; padding: 8px 0; margin: 8px 0;
}
.gc-activity-tag-link {
  display: inline-block; padding: 4px 12px; background: #2a2a2a;
  border-radius: calc(var(--gc-radius-scale, 1) * 14px); font-size: 12px; color: #ccc; text-decoration: none;
  text-transform: capitalize; transition: all .15s;
}
.gc-activity-tag-link:hover { background: #3a3a3a; color: #fff; }

/* Ticket Show CTA */
.gc-ticket-viewer-cta { background: linear-gradient(90deg, #2d1f4e 0%, #1a1a2e 100%); border-radius: calc(var(--gc-radius-scale, 1) * 10px); padding: 16px; margin: 12px 0; }
.gc-ticket-viewer-cta__inner { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.gc-ticket-viewer-cta__icon { font-size: 28px; }
.gc-ticket-viewer-cta__info { flex: 1; }
.gc-ticket-viewer-cta__info strong { display: block; color: #fff; font-size: 15px; }
.gc-ticket-viewer-cta__info span { font-size: 13px; color: #999; }
.gc-ticket-viewer-cta__buy { padding: 10px 24px; background: #9b59b6; border: none; border-radius: calc(var(--gc-radius-scale, 1) * 8px); color: #fff; font-weight: 600; cursor: pointer; transition: background .15s; }
.gc-ticket-viewer-cta__buy:hover { background: #8e44ad; }
.gc-ticket-viewer-cta__buy--purchased { background: #2ecc71; cursor: default; }
.gc-ticket-viewer-cta__count { font-size: 12px; color: #999; }

/* Cam2Cam Controls */
.gc-cam2cam-controls { display: flex; gap: 8px; align-items: center; padding: 8px 0; flex-wrap: wrap; }
.gc-cam2cam-btn { padding: 8px 16px; background: #2a2a2a; border: 1px solid #444; border-radius: calc(var(--gc-radius-scale, 1) * 6px); color: #ddd; cursor: pointer; font-size: 13px; }
.gc-cam2cam-btn:hover { border-color: #666; color: #fff; }
.gc-cam2cam-preview { width: 120px; height: 90px; border-radius: calc(var(--gc-radius-scale, 1) * 6px); object-fit: cover; border: 2px solid #e74c3c; }

/* Chat Channel Tabs */
.gc-chat-channels { display: flex; gap: 0; border-bottom: 1px solid #333; margin-bottom: 8px; }
.gc-chat-channel-btn { padding: 6px 14px; background: none; border: none; border-bottom: 2px solid transparent; color: #999; font-size: 12px; cursor: pointer; }
.gc-chat-channel-btn:hover { color: #fff; }
.gc-chat-channel-btn--active { color: #fff; border-bottom-color: #e74c3c; }


/* v4.38.81 — gc-chat-tabs-responsive-fix: better scaling for Chat/PM/Users/Settings tabs */
@media (max-width:560px){
  .gc-live-chat-card__tabs{grid-template-columns:repeat(4,1fr);}
  .gc-live-chat-card__tabs button{min-height:40px;padding:4px 2px;font-size:9px;overflow:hidden;}
  .gc-live-chat-card__tabs button svg{width:14px;height:14px;}
}
@media (max-width:400px){
  .gc-live-chat-card__tabs{grid-template-columns:repeat(2,1fr);}
  .gc-live-chat-card__tabs button{min-height:36px;font-size:10px;}
}


/* ── Voyeur Chat (Session 21) ── */
.gc-voyeur-chat-notice {
  background: rgba(139, 92, 246, .15);
  border: 1px solid rgba(139, 92, 246, .4);
  border-radius: calc(var(--gc-radius-scale, 1) * 6px);
  padding: 8px 12px;
  margin: 6px 8px;
  font-size: 12px;
  color: #c4b5fd;
  line-height: 1.4;
}
.gc-voyeur-chat-notice strong {
  color: #a78bfa;
  font-weight: 700;
}
.gc-live-chat-row--voyeur {
  border-left: 2px solid rgba(139, 92, 246, .5);
  padding-left: 8px;
}
.gc-live-chat-row--voyeur .gc-live-chat-row__meta strong {
  color: #a78bfa;
}

/* ── Ticket Show Chat (Session 29g) ── */
.gc-live-chat-row--ticket {
  border-left: 2px solid rgba(251, 191, 36, .5);
  padding-left: 8px;
}
.gc-live-chat-row--ticket .gc-live-chat-row__meta strong {
  color: #fbbf24;
}

/* ── Cam2Cam Viewer Controls (Session 24) ── */

.gc-btn--cam2cam { padding: 7px 14px; background: #2a2a2a; border: 1px solid #444; border-radius: calc(var(--gc-radius-scale, 1) * 6px); color: #ddd; cursor: pointer; font-size: 13px; transition: border-color .2s, color .2s; }
.gc-btn--cam2cam:hover { border-color: #e74c3c; color: #fff; }

/* Cam2Cam action bar button */
.gc-live-actionbar__btn--cam2cam { background: transparent; border: 1px solid #e74c3c; color: #e74c3c; transition: background .2s, color .2s; }
.gc-live-actionbar__btn--cam2cam:hover { background: rgba(231,76,60,.15); }
.gc-live-actionbar__btn--active.gc-live-actionbar__btn--cam2cam { background: #e74c3c; color: #fff; border-color: #e74c3c; }

/* Offline banner inlay variant — inside the player overlay */
.gc-live-player__overlay .gc-offline-banner--inlay {
  background: none;
  border-radius: 0;
  padding: 24px 16px;
  margin: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}
.gc-offline-banner--inlay .gc-offline-banner__content {
  max-width: 500px;
}
.gc-offline-banner--inlay .gc-offline-cta {
  padding: 12px 18px;
  min-width: 120px;
}
@media (max-width: 600px) {
  /* gc_offline_cta_mobile_compact_v1 — On mobile the player has aspect-ratio:16/9 +
     overflow:hidden, leaving only ~206px tall for the inlay overlay.
     Vertical 3-card stack needs ~640px and gets clipped (only first
     CTA + half of second visible). Switch to compact horizontal row
     so all three CTAs fit; grow the player area while overlay is
     visible so nothing is clipped by overflow:hidden. */
  .gc-offline-banner--inlay { padding: 12px !important; }
  .gc-offline-banner--inlay .gc-offline-banner__avatar img { width: 48px !important; height: 48px !important; }
  .gc-offline-banner--inlay .gc-offline-banner__title { font-size: 14px !important; margin: 4px 0 !important; line-height: 1.2 !important; }
  .gc-offline-banner--inlay .gc-offline-banner__title span { font-size: 11px !important; }
  .gc-offline-banner--inlay .gc-offline-banner__status { font-size: 12px !important; margin: 4px 0 8px !important; min-height: 0 !important; }
  .gc-offline-banner--inlay .gc-offline-banner__ctas { flex-direction: row !important; gap: 6px !important; flex-wrap: nowrap !important; align-items: stretch; }
  .gc-offline-banner--inlay .gc-offline-cta { width: auto !important; max-width: none !important; min-width: 0 !important; flex: 1 1 0 !important; padding: 8px 4px !important; gap: 2px !important; }
  .gc-offline-banner--inlay .gc-offline-cta__icon { font-size: 18px !important; }
  .gc-offline-banner--inlay .gc-offline-cta__label { font-size: 11px !important; }
  .gc-offline-banner--inlay .gc-offline-cta__count, .gc-offline-banner--inlay .gc-offline-cta__sub { font-size: 9px !important; line-height: 1.2; }
  .gc-live-player:has(.gc-live-player__overlay.is-visible) { aspect-ratio: auto !important; min-height: 320px; }
}

/* gc_mod_ui_v1 — creator chat moderation UI */
.gc-live-chat-row__mod{display:inline-flex;gap:6px;margin-top:6px;opacity:1;}
.gc-live-chat-row:hover .gc-live-chat-row__mod,.gc-live-chat-row:focus-within .gc-live-chat-row__mod{opacity:1;}
.gc-live-chat-mod-btn{font:500 11px/1 -apple-system,system-ui,sans-serif;padding:4px 8px;border-radius:calc(var(--gc-radius-scale, 1) * 6px);border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.06);color:var(--gc-text,#fff);cursor:pointer;transition:background .15s ease,border-color .15s ease;}
.gc-live-chat-mod-btn:hover,.gc-live-chat-mod-btn:focus-visible{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.3);outline:none;}
.gc-live-chat-mod-btn--ban{color:#fecaca;border-color:rgba(248,113,113,.35);background:rgba(248,113,113,.12);}
.gc-live-chat-mod-btn--ban:hover,.gc-live-chat-mod-btn--ban:focus-visible{background:rgba(248,113,113,.25);border-color:rgba(248,113,113,.55);}
.gc-live-chat-row--moderated{opacity:.45;text-decoration:line-through;}

.gc-live-chat-mod-open{display:inline-flex;align-items:center;gap:6px;margin-left:auto;padding:6px 10px;border-radius:calc(var(--gc-radius-scale, 1) * 10px);border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.05);color:var(--gc-text,#fff);font:500 12px/1 -apple-system,system-ui,sans-serif;cursor:pointer;}
.gc-live-chat-mod-open:hover,.gc-live-chat-mod-open:focus-visible{background:rgba(255,255,255,.1);outline:none;}

.gc-live-mod-modal{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:20px;}
.gc-live-mod-modal[hidden]{display:none !important;}
.gc-live-mod-modal__backdrop{position:absolute;inset:0;background:rgba(10,12,18,.72);backdrop-filter:blur(4px);}
.gc-live-mod-modal__panel{position:relative;max-width:520px;width:100%;max-height:90vh;overflow:auto;background:#15171d;color:var(--gc-text,#fff);border:1px solid rgba(255,255,255,.1);border-radius:calc(var(--gc-radius-scale, 1) * 18px);box-shadow:0 20px 60px rgba(0,0,0,.5);display:flex;flex-direction:column;}
.gc-live-mod-modal__header{display:flex;align-items:center;justify-content:space-between;padding:18px 20px 12px;border-bottom:1px solid rgba(255,255,255,.06);}
.gc-live-mod-modal__title{margin:0;font:600 16px/1.3 -apple-system,system-ui,sans-serif;}
.gc-live-mod-modal__close{border:0;background:transparent;color:rgba(255,255,255,.6);font-size:22px;line-height:1;cursor:pointer;padding:4px 8px;}
.gc-live-mod-modal__close:hover,.gc-live-mod-modal__close:focus-visible{color:#fff;outline:none;}
.gc-live-mod-modal__body{padding:16px 20px;display:flex;flex-direction:column;gap:12px;}
.gc-live-mod-modal__footer{display:flex;justify-content:flex-end;gap:8px;padding:14px 20px 18px;border-top:1px solid rgba(255,255,255,.06);}

.gc-live-mod-field{display:flex;flex-direction:column;gap:6px;}
.gc-live-mod-field--inline{flex-direction:row;align-items:center;gap:10px;}
.gc-live-mod-field--inline label{min-width:80px;}
.gc-live-mod-field label{font:600 12px/1.2 -apple-system,system-ui,sans-serif;color:rgba(255,255,255,.75);}
.gc-live-mod-field textarea,.gc-live-mod-field select,.gc-live-mod-field input[type=text]{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.12);border-radius:calc(var(--gc-radius-scale, 1) * 10px);padding:10px 12px;color:var(--gc-text,#fff);font:400 13px/1.4 -apple-system,system-ui,sans-serif;width:100%;box-sizing:border-box;}
.gc-live-mod-field textarea{resize:vertical;min-height:72px;}
.gc-live-mod-field textarea:focus,.gc-live-mod-field select:focus{border-color:rgba(var(--gc-accent-rgb), .6);outline:none;}

.gc-live-mod-btn{border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.06);color:var(--gc-text,#fff);padding:8px 14px;border-radius:calc(var(--gc-radius-scale, 1) * 10px);font:600 12px/1 -apple-system,system-ui,sans-serif;cursor:pointer;transition:background .15s ease,border-color .15s ease;}
.gc-live-mod-btn:hover,.gc-live-mod-btn:focus-visible{background:rgba(255,255,255,.12);outline:none;}
.gc-live-mod-btn--secondary{background:transparent;}
.gc-live-mod-btn--danger{background:rgba(248,113,113,.2);border-color:rgba(248,113,113,.45);color:#fecaca;}
.gc-live-mod-btn--danger:hover,.gc-live-mod-btn--danger:focus-visible{background:rgba(248,113,113,.35);}
.gc-live-mod-btn--tiny{padding:3px 8px;font-size:11px;margin-left:6px;}
.gc-live-mod-btn[disabled]{opacity:.6;cursor:not-allowed;}

.gc-live-mod-desc{margin:0;color:rgba(255,255,255,.75);font:400 13px/1.5 -apple-system,system-ui,sans-serif;}
.gc-live-mod-desc--err{color:#fca5a5;}

.gc-live-mod-history__table{width:100%;border-collapse:collapse;font:400 12px/1.4 -apple-system,system-ui,sans-serif;}
.gc-live-mod-history__table th,.gc-live-mod-history__table td{padding:8px 10px;border-bottom:1px solid rgba(255,255,255,.06);text-align:left;vertical-align:top;}
.gc-live-mod-history__table th{color:rgba(255,255,255,.6);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.04em;}
.gc-live-mod-history__act{font-weight:600;}
.gc-live-mod-history__act--ban{color:#fca5a5;}
.gc-live-mod-history__act--kick{color:#fcd34d;}
.gc-live-mod-history__act--unban{color:#86efac;}

.gc-live-mod-toast{position:fixed;bottom:24px;right:24px;z-index:10000;background:#1b1e26;border:1px solid rgba(var(--gc-accent-rgb), .45);color:#d1fae5;padding:10px 14px;border-radius:calc(var(--gc-radius-scale, 1) * 12px);font:500 13px/1.3 -apple-system,system-ui,sans-serif;box-shadow:0 10px 30px rgba(0,0,0,.4);opacity:0;transform:translateY(8px);transition:opacity .25s ease,transform .25s ease;max-width:320px;}
.gc-live-mod-toast.is-visible{opacity:1;transform:none;}
.gc-live-mod-toast--err{border-color:rgba(248,113,113,.6);color:#fecaca;}

body.gc-live-mod-open{overflow:hidden;}
/* gc_mod_ui_v1 — end */

/* === I23 (2026-04-17): Physical Items card + tab styling === */
.gc-clip-card--physical .gc-clip-card__media--image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.gc-clip-card__physical-badge {
    position: absolute;
    /* I32 (2026-04-18): moved to bottom-left so it doesn't overlap the discount
       banner rendered at top-left of the card. */
    bottom: 8px;
    left: 8px;
    z-index: 2;
    background: linear-gradient(135deg, #8b5cf6, #6d28d9);
    color: #fff;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .08em;
    padding: 3px 7px;
    border-radius: calc(var(--gc-radius-scale, 1) * 4px);
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.25);
}


/* --- I26 (2026-04-18) dark theme for checkout order-review + shipping fields when cart has physical items --- */
.gc-fast-checkout-form .woocommerce-shipping-fields {
    margin-top: 18px;
    padding-top: 18px;
    border-top: 1px solid rgba(var(--gc-border-rgb), 0.14);
}
.gc-fast-checkout-form .woocommerce-shipping-fields h3 {
    font-size: 1.02rem;
    margin: 0 0 10px 0;
    color: rgb(237, 244, 255);
}
.gc-fast-checkout-form .woocommerce-checkout-review-order {
    display: grid;
    gap: 14px;
}
.gc-fast-checkout-form .woocommerce-checkout-review-order-table,
.gc-fast-checkout-form table.shop_table {
    width: 100%;
    border-collapse: collapse;
    background: rgba(255, 255, 255, 0.035);
    border: 1px solid rgba(var(--gc-border-rgb), 0.14);
    border-radius: calc(var(--gc-radius-scale, 1) * 14px);
    overflow: hidden;
    color: rgb(237, 244, 255);
}
.gc-fast-checkout-form .woocommerce-checkout-review-order-table th,
.gc-fast-checkout-form .woocommerce-checkout-review-order-table td,
.gc-fast-checkout-form table.shop_table th,
.gc-fast-checkout-form table.shop_table td {
    padding: 10px 14px;
    border-bottom: 1px solid rgba(var(--gc-border-rgb), 0.10);
    color: rgb(237, 244, 255);
    font-size: .95rem;
}
.gc-fast-checkout-form .woocommerce-checkout-review-order-table thead th {
    background: rgba(var(--gc-border-rgb), 0.06);
    font-weight: 700;
    text-transform: uppercase;
    font-size: .78rem;
    letter-spacing: .06em;
    color: rgba(199, 210, 235, 0.85);
}
.gc-fast-checkout-form .woocommerce-checkout-review-order-table tr:last-child td,
.gc-fast-checkout-form table.shop_table tr:last-child td {
    border-bottom: none;
}
.gc-fast-checkout-form .woocommerce-checkout-review-order-table tfoot tr.order-total td,
.gc-fast-checkout-form .woocommerce-checkout-review-order-table tfoot tr.order-total th {
    font-weight: 900;
    font-size: 1.05rem;
}
.gc-fast-checkout-form #shipping_method {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    gap: 6px;
}
.gc-fast-checkout-form #shipping_method li {
    color: rgb(237, 244, 255);
}
.gc-fast-checkout-form .woocommerce-shipping-totals .shipping-calculator-button {
    color: var(--gc-accent, #d1b0ff);
}
.gc-fast-checkout-form--physical .gc-fast-checkout-form__card-header h2 {
    /* visually mark the physical-cart shipping section header */
}

/* GuyScat I28 (2026-04-18): PDP "Add extras" picker — dark theme to match site shell. */
.gc_pp_extras_picker.gc-pp-extras-dark {
    margin: 14px 0;
    padding: 14px 16px;
    border: 1px solid rgba(var(--gc-border-rgb), 0.18);
    border-radius: calc(var(--gc-radius-scale, 1) * 14px);
    background: rgba(255, 255, 255, 0.035);
    color: rgb(237, 244, 255);
    box-shadow: 0 1px 0 rgba(255,255,255,0.03) inset;
}
.gc-pp-extras-dark__title {
    display: block;
    margin-bottom: 10px;
    font-size: .78rem;
    letter-spacing: .08em;
    text-transform: uppercase;
    font-weight: 700;
    color: rgba(199, 210, 235, 0.9);
}
.gc-pp-extras-dark__list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.gc-pp-extras-dark__item {
    padding: 10px 12px;
    border-radius: calc(var(--gc-radius-scale, 1) * 10px);
    border: 1px solid rgba(var(--gc-border-rgb), 0.14);
    background: rgba(255, 255, 255, 0.02);
    transition: background-color .15s ease, border-color .15s ease;
    /* I36 (2026-04-18): tighter flex-basis so two items always fit per row inside ~320px buyboxes. */
    flex: 1 1 130px;
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
}
/* I36: make sure the dark extras list never inherits column direction from a parent. */
.gc_pp_extras_picker.gc-pp-extras-dark .gc-pp-extras-dark__list {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
}
@media (max-width: 640px) {
    .gc-pp-extras-dark__item {
        flex: 1 1 100%;
    }
}
.gc-pp-extras-dark__item:hover {
    background: rgba(var(--gc-border-rgb), 0.07);
    border-color: rgba(var(--gc-border-rgb), 0.28);
}
.gc-pp-extras-dark__item:has(.gc-pp-extras-dark__check:checked) {
    background: rgba(209, 176, 255, 0.08);
    border-color: rgba(209, 176, 255, 0.32);
}
.gc-pp-extras-dark__row {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    cursor: pointer;
    color: rgb(237, 244, 255);
}
.gc-pp-extras-dark__check {
    margin-top: 3px;
    accent-color: var(--gc-accent, #d1b0ff);
    width: 16px;
    height: 16px;
    flex: 0 0 auto;
}
.gc-pp-extras-dark__text {
    display: block;
    line-height: 1.35;
}
.gc-pp-extras-dark__label {
    font-weight: 600;
    color: rgb(237, 244, 255);
}
.gc-pp-extras-dark__price {
    margin-left: 8px;
    color: #98ffcf;
    font-weight: 600;
}
.gc-pp-extras-dark__price .woocommerce-Price-amount,
.gc-pp-extras-dark__price bdi {
    color: #98ffcf;
}
.gc-pp-extras-dark__desc {
    color: rgba(199, 210, 235, 0.75);
    font-size: 12px;
}


/* ============================================================
   I36 (2026-04-18): physical-product PDP gallery thumbnail strip.
   Sits directly under the .gc-clip-watch-player__media poster.
   ============================================================ */
.gc-pp-gallery-strip {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 10px 0 0;
    padding: 0;
}
.gc-pp-gallery-thumb {
    appearance: none;
    border: 2px solid rgba(var(--gc-border-rgb), 0.18);
    border-radius: calc(var(--gc-radius-scale, 1) * 8px);
    background: transparent;
    padding: 0;
    width: 72px;
    height: 72px;
    overflow: hidden;
    cursor: pointer;
    flex: 0 0 auto;
    transition: border-color .15s ease, transform .15s ease;
}
.gc-pp-gallery-thumb:hover,
.gc-pp-gallery-thumb:focus-visible { border-color: rgba(209, 176, 255, .55); outline: none; }
.gc-pp-gallery-thumb.is-active { border-color: var(--gc-accent, #d1b0ff); }
.gc-pp-gallery-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }


/* I37 (2026-04-18): tags-row + force horizontal extras on physical PDP */
.gc-pp-tags-row { display:flex; flex-wrap:wrap; gap:6px; margin:6px 0 10px; }
.gc-pp-tags-row .gc-pp-badge { display:inline-flex; align-items:center; padding:3px 10px; border-radius:var(--gc-radius-pill); font-size:12px; font-weight:600; line-height:1.4; letter-spacing:.2px; }
.gc-pp-tags-row .gc-pp-badge--new { background:#d41e1e; color:#fff; }
.gc-pp-tags-row .gc-pp-badge--best { background:#facc15; color:#111; }
.gc-pp-tags-row .gc-pp-badge--cond-dirty { background:var(--gc-accent-2); color:#fff; }
.gc-pp-tags-row .gc-pp-badge--cond-used  { background:#ca8a04; color:#111; }
.gc-pp-tags-row .gc-pp-badge--cond-fresh { background:#16a34a; color:#fff; }

/* Force extras picker horizontal, 2-per-row, regardless of wrapping container */
body.single-product .gc-pp-cart-form { width:100%; }
body.single-product .gc_pp_extras_picker,
body.single-product .gc-pp-extras-wrap,
body.single-product .gc-pp-extras-dark { width:100% !important; }
body.single-product .gc_pp_extras_picker .gc-pp-extras-dark__list,
body.single-product .gc-pp-extras-wrap .gc-pp-extras-dark__list,
body.single-product .gc-pp-extras-dark__list {
  display:flex !important; flex-direction:row !important; flex-wrap:wrap !important;
  gap:8px !important; width:100% !important;
}
body.single-product .gc-pp-extras-dark__item {
  flex:1 1 calc(50% - 8px) !important; min-width:0 !important; max-width:100% !important; box-sizing:border-box !important;
}
@media (max-width:520px){ body.single-product .gc-pp-extras-dark__item { flex:1 1 100% !important; } }

/* Widen the buybox/cart column so extras have room to sit 2-up on physical PDP */
body.single-product .gc-clip-watch-summary__head { flex-wrap:wrap; }
body.single-product .gc-clip-watch-buybox.has-gc-pp { flex-basis:100%; max-width:100%; }


/* I37b (2026-04-18): stack summary head vertically for physical PDP so extras drop full-width below tags */
body.single-product .gc-clip-watch-summary.gc-clip-watch-summary--physical .gc-clip-watch-summary__head,
body.single-product .gc-clip-watch-summary__head:has(.gc-pp-tags-row) {
  flex-direction: column !important;
  align-items: stretch !important;
}
body.single-product .gc-clip-watch-summary__head:has(.gc-pp-tags-row) .gc-clip-watch-summary__copy,
body.single-product .gc-clip-watch-summary__head:has(.gc-pp-tags-row) .gc-clip-watch-buybox {
  flex: 0 0 100% !important;
  max-width: 100% !important;
  width: 100% !important;
}
body.single-product .gc-clip-watch-summary__head:has(.gc-pp-tags-row) .gc-clip-watch-buybox {
  margin-top: 8px;
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 10px;
}
/* Price aligns left when below tags */
body.single-product .gc-clip-watch-summary__head:has(.gc-pp-tags-row) .gc-clip-watch-buybox__price {
  text-align: left !important;
  font-size: 22px;
}


/* I37c (2026-04-18): head uses display:grid — collapse to 1 column for physical PDP */
body.single-product .gc-clip-watch-summary__head:has(.gc-pp-tags-row) {
  display: grid !important;
  grid-template-columns: 1fr !important;
  grid-template-areas: "copy" "buybox" !important;
  gap: 12px !important;
}
body.single-product .gc-clip-watch-summary__head:has(.gc-pp-tags-row) .gc-clip-watch-summary__copy {
  grid-area: copy !important;
  width: 100% !important;
}
body.single-product .gc-clip-watch-summary__head:has(.gc-pp-tags-row) .gc-clip-watch-buybox {
  grid-area: buybox !important;
  width: 100% !important;
  max-width: 100% !important;
}
/* When the buybox takes full width, keep price on the left and CTA/extras full-width */
body.single-product .gc-clip-watch-summary__head:has(.gc-pp-tags-row) .gc-clip-watch-buybox__price {
  text-align: left !important;
}
body.single-product .gc-clip-watch-summary__head:has(.gc-pp-tags-row) .gc-pp-cart-form {
  width: 100% !important;
}

/* gc_premium_paywall_cta_v1 BEGIN — richer premium gate + low-balance banner */
.gc-live-player__premium-gate { background: radial-gradient(circle at 30% 0%, rgba(255, 82, 102, 0.18), transparent 55%), radial-gradient(circle at 70% 100%, rgba(255, 216, 122, 0.12), transparent 55%), rgba(10, 13, 22, 0.92); backdrop-filter: blur(16px); }
.gc-live-player__premium-gate-inner { position: relative; overflow: hidden; border: 1px solid rgba(255, 216, 122, 0.22); background: linear-gradient(160deg, rgba(29, 20, 26, 0.94) 0%, rgba(17, 15, 25, 0.96) 100%); box-shadow: 0 30px 60px -12px rgba(0,0,0,0.6), 0 0 0 1px rgba(255,216,122,0.08), inset 0 1px 0 rgba(255,255,255,0.06); gap: 16px; padding-top: 28px; }
.gc-live-player__premium-gate-inner::before { content: ''; position: absolute; inset: -1px; border-radius: calc(var(--gc-radius-scale, 1) * 24px); padding: 1px; background: linear-gradient(135deg, rgba(255, 82, 102, 0.55), rgba(255, 216, 122, 0.55) 50%, rgba(255, 82, 102, 0.25)); -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask-composite: xor; mask-composite: exclude; pointer-events: none; opacity: 0.9; }
.gc-live-player__premium-gate-inner::after { content: '★ PREMIUM'; position: absolute; top: 12px; left: 50%; transform: translateX(-50%); font-size: 0.7rem; font-weight: 800; letter-spacing: 0.18em; padding: 5px 14px; border-radius: var(--gc-radius-pill); color: #ffd87a; background: linear-gradient(180deg, rgba(255, 82, 102, 0.18), rgba(212, 43, 64, 0.12)); border: 1px solid rgba(255, 216, 122, 0.35); text-shadow: 0 0 12px rgba(255, 216, 122, 0.35); }
.gc-live-player__premium-gate-title { font-size: clamp(1.35rem, 1rem + 1vw, 1.9rem); font-weight: 800; letter-spacing: -0.01em; background: linear-gradient(180deg, #ffffff 0%, #ffd87a 130%); -webkit-background-clip: text; background-clip: text; color: transparent; margin-top: 6px; }
.gc-live-player__premium-gate-text { color: rgba(233, 226, 240, 0.82); font-size: 0.98rem; max-width: 42ch; margin-left: auto; margin-right: auto; }
.gc-live-player__premium-gate-meta span { background: linear-gradient(180deg, rgba(255, 82, 102, 0.12), rgba(212, 43, 64, 0.06)); border-color: rgba(255, 216, 122, 0.32); color: #ffd87a; font-weight: 700; font-size: 0.95rem; padding: 8px 14px; text-shadow: 0 0 10px rgba(255, 216, 122, 0.2); }
.gc-live-player__premium-gate-actions .gc-button--primary, .gc-live-player__premium-gate-actions button[data-gc-live-premium-start] { position: relative; background: linear-gradient(180deg, #ff5266 0%, #d42b40 100%); border: 1px solid rgba(255, 216, 122, 0.45); color: #fff; font-weight: 800; letter-spacing: 0.01em; text-transform: none; padding: 14px 26px; border-radius: calc(var(--gc-radius-scale, 1) * 14px); box-shadow: 0 10px 24px -8px rgba(255, 82, 102, 0.55), 0 0 0 1px rgba(255, 216, 122, 0.08), inset 0 1px 0 rgba(255, 255, 255, 0.18); overflow: hidden; transition: transform .14s ease, box-shadow .14s ease, filter .14s ease; }
.gc-live-player__premium-gate-actions .gc-button--primary:hover, .gc-live-player__premium-gate-actions button[data-gc-live-premium-start]:hover { transform: translateY(-1px); filter: brightness(1.05); box-shadow: 0 14px 30px -10px rgba(255, 82, 102, 0.7); }
.gc-live-player__premium-gate-actions .gc-button--primary:disabled, .gc-live-player__premium-gate-actions button[data-gc-live-premium-start]:disabled { filter: grayscale(.4) brightness(.7); cursor: not-allowed; }
.gc-live-player__premium-gate-actions .gc-button--primary::after, .gc-live-player__premium-gate-actions button[data-gc-live-premium-start]::after { content: ''; position: absolute; inset: 0; background: linear-gradient(110deg, transparent 25%, rgba(255, 255, 255, 0.22) 50%, transparent 75%); transform: translateX(-100%); animation: gc-pp-shimmer 3.2s ease-in-out infinite; pointer-events: none; }
@keyframes gc-pp-shimmer { 0% { transform: translateX(-100%); } 60% { transform: translateX(100%); } 100% { transform: translateX(100%); } }
.gc-live-player__premium-gate-actions .gc-button--ghost, .gc-live-player__premium-gate-actions a[data-gc-live-premium-link] { background: rgba(255, 255, 255, 0.04); border: 1px solid rgba(255, 216, 122, 0.28); color: #ffd87a; font-weight: 700; padding: 14px 22px; border-radius: calc(var(--gc-radius-scale, 1) * 14px); transition: background .14s ease, border-color .14s ease, color .14s ease; }
.gc-live-player__premium-gate-actions .gc-button--ghost:hover, .gc-live-player__premium-gate-actions a[data-gc-live-premium-link]:hover { background: rgba(255, 216, 122, 0.08); border-color: rgba(255, 216, 122, 0.55); color: #fff; }
.gc-live-player__premium-gate .gc-live-inline-feedback.is-warning { color: #ffd87a; }
.gc-live-player__premium-gate .gc-live-inline-feedback.is-error { color: #ff8b8b; }
.gc-premium-low-balance { position: absolute; top: 12px; right: 12px; z-index: 12; display: none; align-items: center; gap: 10px; padding: 10px 12px 10px 14px; border-radius: calc(var(--gc-radius-scale, 1) * 14px); background: linear-gradient(180deg, rgba(43, 17, 22, 0.94), rgba(30, 12, 18, 0.94)); border: 1px solid rgba(255, 216, 122, 0.38); box-shadow: 0 14px 30px -10px rgba(255, 82, 102, 0.5), 0 0 0 1px rgba(255, 216, 122, 0.1); color: #ffe7be; font-size: 0.88rem; font-weight: 600; max-width: 320px; animation: gc-plb-in .22s ease-out; }
.gc-premium-low-balance.is-visible { display: inline-flex; }
.gc-premium-low-balance__icon { font-size: 1.15rem; color: #ffd87a; flex-shrink: 0; filter: drop-shadow(0 0 6px rgba(255, 216, 122, 0.5)); }
.gc-premium-low-balance__text { display: inline-flex; flex-direction: column; line-height: 1.2; gap: 2px; }
.gc-premium-low-balance__text b { color: #fff; font-weight: 800; font-size: 0.95rem; }
.gc-premium-low-balance__text span { color: rgba(255, 231, 190, 0.78); font-size: 0.78rem; font-weight: 500; }
.gc-premium-low-balance__topup { background: linear-gradient(180deg, #ff5266 0%, #d42b40 100%); border: 1px solid rgba(255, 216, 122, 0.45); color: #fff; font-weight: 800; padding: 7px 14px; border-radius: calc(var(--gc-radius-scale, 1) * 10px); cursor: pointer; font-size: 0.82rem; line-height: 1; transition: transform .12s ease, filter .12s ease; }
.gc-premium-low-balance__topup:hover { transform: translateY(-1px); filter: brightness(1.08); }
.gc-premium-low-balance__close { background: transparent; border: 0; color: rgba(255, 231, 190, 0.6); cursor: pointer; font-size: 1.1rem; line-height: 1; padding: 2px 4px; margin-left: -4px; border-radius: calc(var(--gc-radius-scale, 1) * 6px); }
.gc-premium-low-balance__close:hover { color: #fff; background: rgba(255,255,255,0.06); }
@keyframes gc-plb-in { from { opacity: 0; transform: translateY(-6px); } to { opacity: 1; transform: translateY(0); } }
@media (max-width: 560px) { .gc-premium-low-balance { top: 8px; right: 8px; left: 8px; max-width: none; } }
/* gc_premium_paywall_cta_v1 END */

/* gc_premium_paywall_cta_v1_1 BEGIN — corrective selectors for actual DOM */
.gc-live-player__premium-gate { flex-direction: column !important; align-items: center !important; justify-content: center !important; text-align: center !important; gap: 14px !important; padding: 40px 28px 24px !important; position: relative !important; overflow: hidden !important; border-radius: calc(var(--gc-radius-scale, 1) * 24px) !important; }
.gc-live-player__premium-gate::before { content: ''; position: absolute; inset: 0; border-radius: calc(var(--gc-radius-scale, 1) * 24px); padding: 1px; background: linear-gradient(135deg, rgba(255,82,102,0.55), rgba(255,216,122,0.55) 50%, rgba(255,82,102,0.25)); -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask-composite: xor; mask-composite: exclude; pointer-events: none; opacity: 0.9; z-index: 0; }
.gc-live-player__premium-gate::after { content: '\2605 PREMIUM'; position: absolute; top: 12px; left: 50%; transform: translateX(-50%); font-size: 0.7rem; font-weight: 800; letter-spacing: 0.18em; padding: 5px 14px; border-radius: var(--gc-radius-pill); color: #ffd87a; background: linear-gradient(180deg, rgba(255,82,102,0.18), rgba(212,43,64,0.12)); border: 1px solid rgba(255,216,122,0.35); text-shadow: 0 0 12px rgba(255,216,122,0.35); z-index: 1; }
.gc-live-player__premium-gate > * { position: relative; z-index: 2; }
[data-gc-live-premium-title] { display: block; font-size: clamp(1.35rem, 1rem + 1vw, 1.9rem); font-weight: 800; letter-spacing: -0.01em; background: linear-gradient(180deg, #ffffff 0%, #ffd87a 130%); -webkit-background-clip: text; background-clip: text; color: transparent; margin-top: 6px; }
[data-gc-live-premium-text] { color: rgba(233,226,240,0.82); font-size: 0.98rem; max-width: 42ch; margin: 0 auto; }
.gc-live-player__premium-meta { display: flex; gap: 8px; justify-content: center; flex-wrap: wrap; }
.gc-live-player__premium-meta .gc-live-room-pill { background: linear-gradient(180deg, rgba(255,82,102,0.12), rgba(212,43,64,0.06)); border: 1px solid rgba(255,216,122,0.32); color: #ffd87a; font-weight: 700; font-size: 0.9rem; padding: 8px 14px; border-radius: var(--gc-radius-pill); text-shadow: 0 0 10px rgba(255,216,122,0.2); letter-spacing: 0.04em; }
.gc-live-player__premium-actions { display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; margin-top: 4px; }
.gc-live-player__premium-actions .gc-button--primary, .gc-live-player__premium-actions button[data-gc-live-premium-start] { position: relative; background: linear-gradient(180deg, #ff5266 0%, #d42b40 100%) !important; border: 1px solid rgba(255,216,122,0.45); color: #fff !important; font-weight: 800; letter-spacing: 0.01em; text-transform: none; padding: 14px 26px; border-radius: calc(var(--gc-radius-scale, 1) * 14px); box-shadow: 0 10px 24px -8px rgba(255,82,102,0.55), 0 0 0 1px rgba(255,216,122,0.08), inset 0 1px 0 rgba(255,255,255,0.18); overflow: hidden; transition: transform .14s ease, box-shadow .14s ease, filter .14s ease; }
.gc-live-player__premium-actions .gc-button--primary:hover, .gc-live-player__premium-actions button[data-gc-live-premium-start]:hover { transform: translateY(-1px); filter: brightness(1.05); box-shadow: 0 14px 30px -10px rgba(255,82,102,0.7); }
.gc-live-player__premium-actions .gc-button--primary::after, .gc-live-player__premium-actions button[data-gc-live-premium-start]::after { content: ''; position: absolute; inset: 0; background: linear-gradient(110deg, transparent 25%, rgba(255,255,255,0.22) 50%, transparent 75%); transform: translateX(-100%); animation: gc-pp-shimmer 3.2s ease-in-out infinite; pointer-events: none; }
.gc-live-player__premium-actions .gc-button--ghost, .gc-live-player__premium-actions a[data-gc-live-premium-link] { background: rgba(255,255,255,0.04); border: 1px solid rgba(255,216,122,0.28); color: #ffd87a; font-weight: 700; padding: 14px 22px; border-radius: calc(var(--gc-radius-scale, 1) * 14px); transition: background .14s ease, border-color .14s ease, color .14s ease; }
.gc-live-player__premium-actions .gc-button--ghost:hover, .gc-live-player__premium-actions a[data-gc-live-premium-link]:hover { background: rgba(255,216,122,0.08); border-color: rgba(255,216,122,0.55); color: #fff; }
.gc-live-player__premium-gate { min-height: 320px; }
/* gc_premium_paywall_cta_v1_1 END */

/* gc_private_cta_restyle_v1 BEGIN */
/* Private CTA Restyle — Match Paywall (red/gold gradient, shimmer, gold accents).
   Mirrors the pattern from gc_premium_paywall_cta_v1_1. Targets the viewer-side
   action-bar trigger button [data-gc-ab-private] and the inline-injected
   .gc-private-modal__* structure from guyscat-live.js. */

/* ── Action bar trigger button ── */
.gc-live-actionbar__btn[data-gc-ab-private] {
    position: relative;
    background: linear-gradient(180deg, #ff5266 0%, #d42b40 100%) !important;
    border: 1px solid rgba(255, 216, 122, 0.45) !important;
    color: #fff !important;
    font-weight: 800;
    letter-spacing: 0.02em;
    box-shadow: 0 10px 24px -8px rgba(255, 82, 102, 0.55),
                0 0 0 1px rgba(255, 216, 122, 0.08),
                inset 0 1px 0 rgba(255, 255, 255, 0.18) !important;
    overflow: hidden;
    transition: transform .14s ease, box-shadow .14s ease, filter .14s ease;
}
.gc-live-actionbar__btn[data-gc-ab-private]:hover {
    transform: translateY(-1px);
    filter: brightness(1.05);
    background: linear-gradient(180deg, #ff5266 0%, #d42b40 100%) !important;
    box-shadow: 0 14px 30px -10px rgba(255, 82, 102, 0.7),
                0 0 0 1px rgba(255, 216, 122, 0.18),
                inset 0 1px 0 rgba(255, 255, 255, 0.22) !important;
}
.gc-live-actionbar__btn[data-gc-ab-private]::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(110deg, transparent 25%, rgba(255, 255, 255, 0.22) 50%, transparent 75%);
    transform: translateX(-100%);
    animation: gc-pp-shimmer 3.2s ease-in-out infinite;
    pointer-events: none;
    border-radius: inherit;
}

/* ── Modal backdrop — warmer glow ── */
.gc-private-modal__backdrop {
    background: radial-gradient(circle at 30% 0%, rgba(255, 82, 102, 0.18), transparent 55%),
                radial-gradient(circle at 70% 100%, rgba(255, 216, 122, 0.12), transparent 55%),
                rgba(10, 13, 22, 0.88) !important;
}

/* ── Modal shell — gradient border, gold badge ── */
.gc-private-modal {
    position: relative;
    overflow: visible !important;
    border: 1px solid rgba(255, 216, 122, 0.22) !important;
    background: linear-gradient(160deg, rgba(29, 20, 26, 0.96) 0%, rgba(17, 15, 25, 0.97) 100%) !important;
    box-shadow: 0 30px 60px -12px rgba(0,0,0,0.6),
                0 0 0 1px rgba(255, 216, 122, 0.08),
                inset 0 1px 0 rgba(255, 255, 255, 0.06) !important;
    padding-top: 40px !important;
}
.gc-private-modal::before {
    content: '';
    position: absolute;
    inset: -1px;
    border-radius: calc(var(--gc-radius-scale, 1) * 20px);
    padding: 1px;
    background: linear-gradient(135deg, rgba(255, 82, 102, 0.55), rgba(255, 216, 122, 0.55) 50%, rgba(255, 82, 102, 0.25));
    -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
    -webkit-mask-composite: xor;
            mask-composite: exclude;
    pointer-events: none;
    opacity: 0.9;
    z-index: 0;
}
.gc-private-modal::after {
    content: '\2605 PRIVATE SHOWS';
    position: absolute;
    top: 12px;
    left: 50%;
    transform: translateX(-50%);
    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0.18em;
    padding: 5px 14px;
    border-radius: var(--gc-radius-pill);
    color: #ffd87a;
    background: linear-gradient(180deg, rgba(255, 82, 102, 0.18), rgba(212, 43, 64, 0.12));
    border: 1px solid rgba(255, 216, 122, 0.35);
    text-shadow: 0 0 12px rgba(255, 216, 122, 0.35);
    z-index: 2;
    white-space: nowrap;
}
.gc-private-modal > * {
    position: relative;
    z-index: 1;
}

/* ── Close button — gold hover ── */
.gc-private-modal__close {
    z-index: 3 !important;
}
.gc-private-modal__close:hover {
    background: rgba(255, 216, 122, 0.14) !important;
    color: #ffd87a !important;
}

/* ── Cards — subtle red (private) / gold (exclusive) theming ── */
.gc-private-modal__card {
    position: relative;
    background: rgba(255, 255, 255, 0.03) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    overflow: hidden;
}
.gc-private-modal__card--private {
    background: linear-gradient(160deg, rgba(255, 82, 102, 0.06) 0%, rgba(212, 43, 64, 0.03) 100%) !important;
    border-color: rgba(255, 82, 102, 0.22) !important;
}
.gc-private-modal__card--exclusive {
    background: linear-gradient(160deg, rgba(255, 216, 122, 0.08) 0%, rgba(245, 158, 11, 0.04) 100%) !important;
    border-color: rgba(255, 216, 122, 0.32) !important;
}

/* ── Titles — white→gold gradient (exclusive bolder) ── */
.gc-private-modal__title {
    background: linear-gradient(180deg, #ffffff 0%, #ffd87a 140%);
    -webkit-background-clip: text;
            background-clip: text;
    color: transparent !important;
    font-size: 18px !important;
    letter-spacing: -0.01em !important;
}
.gc-private-modal__title--exclusive {
    background: linear-gradient(180deg, #ffd87a 0%, #f59e0b 100%);
    -webkit-background-clip: text;
            background-clip: text;
    color: transparent !important;
}

/* ── Icons — drop shadow glow ── */
.gc-private-modal__icon {
    filter: drop-shadow(0 0 12px rgba(255, 82, 102, 0.35));
}
.gc-private-modal__card--exclusive .gc-private-modal__icon {
    filter: drop-shadow(0 0 12px rgba(255, 216, 122, 0.45));
}

/* ── Price button — red/gold gradient + shimmer (private) / gold gradient (exclusive) ── */
.gc-private-modal__price-btn {
    position: relative;
    overflow: hidden;
    border-radius: calc(var(--gc-radius-scale, 1) * 14px) !important;
    min-height: 48px !important;
    padding: 14px 22px !important;
    text-transform: none !important;
    font-size: 15px !important;
    box-shadow: 0 10px 24px -8px rgba(0, 0, 0, 0.5),
                inset 0 1px 0 rgba(255, 255, 255, 0.18);
    transition: transform .14s ease, box-shadow .14s ease, filter .14s ease !important;
}
.gc-private-modal__price-btn--private {
    background: linear-gradient(180deg, #ff5266 0%, #d42b40 100%) !important;
    border: 1px solid rgba(255, 216, 122, 0.45) !important;
    color: #fff !important;
    box-shadow: 0 10px 24px -8px rgba(255, 82, 102, 0.55),
                0 0 0 1px rgba(255, 216, 122, 0.08),
                inset 0 1px 0 rgba(255, 255, 255, 0.18) !important;
}
.gc-private-modal__price-btn--private:hover {
    background: linear-gradient(180deg, #ff5266 0%, #d42b40 100%) !important;
    transform: translateY(-1px);
    filter: brightness(1.05);
    box-shadow: 0 14px 30px -10px rgba(255, 82, 102, 0.7),
                0 0 0 1px rgba(255, 216, 122, 0.18),
                inset 0 1px 0 rgba(255, 255, 255, 0.22) !important;
}
.gc-private-modal__price-btn--exclusive {
    background: linear-gradient(180deg, #ffd87a 0%, #f59e0b 100%) !important;
    border: 1px solid rgba(255, 216, 122, 0.55) !important;
    color: #1c1917 !important;
    box-shadow: 0 10px 24px -8px rgba(245, 158, 11, 0.55),
                0 0 0 1px rgba(255, 216, 122, 0.18),
                inset 0 1px 0 rgba(255, 255, 255, 0.25) !important;
}
.gc-private-modal__price-btn--exclusive:hover {
    background: linear-gradient(180deg, #ffd87a 0%, #f59e0b 100%) !important;
    transform: translateY(-1px);
    filter: brightness(1.06);
    box-shadow: 0 14px 30px -10px rgba(245, 158, 11, 0.7),
                0 0 0 1px rgba(255, 216, 122, 0.32),
                inset 0 1px 0 rgba(255, 255, 255, 0.3) !important;
}
.gc-private-modal__price-btn::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(110deg, transparent 25%, rgba(255, 255, 255, 0.22) 50%, transparent 75%);
    transform: translateX(-100%);
    animation: gc-pp-shimmer 3.2s ease-in-out infinite;
    pointer-events: none;
    border-radius: inherit;
}
.gc-private-modal__price-btn:disabled {
    filter: grayscale(.4) brightness(.7);
    cursor: not-allowed;
}
.gc-private-modal__price-btn:disabled::after {
    animation: none;
    opacity: 0;
}

/* ── Features — gold checkmarks (private uses red), neutral text lighter ── */
.gc-private-modal__features li {
    color: rgba(233, 226, 240, 0.82) !important;
}
.gc-private-modal__card--private .gc-private-modal__features li::before {
    color: #ff8b8b !important;
}
.gc-private-modal__card--exclusive .gc-private-modal__features li::before {
    color: #ffd87a !important;
}

/* ── Tags — warmer tone, gold accent on exclusive ── */
.gc-private-modal__tags-label {
    color: rgba(255, 216, 122, 0.55) !important;
}
.gc-private-modal__tag {
    background: rgba(255, 255, 255, 0.05) !important;
    color: rgba(233, 226, 240, 0.7) !important;
    border: 1px solid rgba(255, 255, 255, 0.06);
}
.gc-private-modal__card--exclusive .gc-private-modal__tag {
    background: rgba(255, 216, 122, 0.08) !important;
    color: #ffd87a !important;
    border-color: rgba(255, 216, 122, 0.22);
}
.gc-private-modal__tags-toggle {
    color: #ffd87a !important;
}

/* ── Login prompt link — gold ── */
.gc-private-modal__login a {
    color: #ffd87a !important;
}

/* Responsive: smaller padding-top on mobile so badge doesn't overlap content */
@media(max-width: 640px) {
    .gc-private-modal {
        padding-top: 44px !important;
    }
}
/* gc_private_cta_restyle_v1 END */
/* gc_package_a2_exclusive_initial_price_v7 BEGIN */
.gc-private-modal__upfront{margin:6px 0 10px;padding:7px 12px;border:1px solid rgba(255,216,122,.4);border-radius:calc(var(--gc-radius-scale, 1) * 10px);background:linear-gradient(180deg,rgba(255,216,122,.10) 0%,rgba(245,158,11,.08) 100%);color:#ffd87a;font-size:13px;letter-spacing:.4px;text-transform:uppercase;text-align:center;}
.gc-private-modal__upfront strong{color:#fff7d6;font-weight:700;letter-spacing:.2px;}
/* gc_package_a2_exclusive_initial_price_v7 END */


/* gc_phase_n_premium_gate_visual_v2 — voyeur + ticket CTAs now reuse the
   .gc-live-player__premium-gate DOM.  These overrides (a) float the overlay
   over the player card, (b) swap the PREMIUM ::after chip for variant text,
   and (c) repaint accents (cyan for voyeur spy, amber for ticket) while
   keeping the shell identical. */
.gc-premium-gate-overlay {
  position: absolute !important;
  inset: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  gap: 14px !important;
  padding: 40px 28px 24px !important;
  z-index: 20 !important;
  overflow: hidden !important;
  border-radius: inherit !important;
  min-height: 0 !important;
}
.gc-premium-gate-overlay > * { position: relative; z-index: 2; }

/* === Voyeur variant (cyan/teal accent) === */
.gc-live-player__premium-gate--voyeur {
  background:
    radial-gradient(circle at 30% 0%, rgba(var(--gc-accent-cyan-rgb), 0.22), transparent 55%),
    radial-gradient(circle at 70% 100%, rgba(125, 211, 252, 0.14), transparent 55%),
    rgba(10, 13, 22, 0.92) !important;
  backdrop-filter: blur(16px);
}
.gc-live-player__premium-gate--voyeur::before {
  content: '';
  position: absolute; inset: 0; border-radius: inherit; padding: 1px;
  background: linear-gradient(135deg, rgba(var(--gc-accent-cyan-rgb), 0.55), rgba(125,211,252,0.55) 50%, rgba(var(--gc-accent-cyan-rgb), 0.25));
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor; mask-composite: exclude;
  pointer-events: none; opacity: 0.9; z-index: 1;
}
.gc-live-player__premium-gate--voyeur::after {
  content: '\26A1 SPY ACCESS' !important;
  position: absolute; top: 12px; left: 50%; transform: translateX(-50%);
  font-size: 0.7rem; font-weight: 800; letter-spacing: 0.18em;
  padding: 5px 14px; border-radius: var(--gc-radius-pill);
  color: #7dd3fc !important;
  background: linear-gradient(180deg, rgba(var(--gc-accent-cyan-rgb), 0.18), rgba(14,165,233,0.12)) !important;
  border: 1px solid rgba(125,211,252,0.35) !important;
  text-shadow: 0 0 12px rgba(125,211,252,0.35) !important;
  z-index: 1;
}
.gc-live-player__premium-gate--voyeur .gc-live-player__premium-gate-title {
  background: linear-gradient(180deg, #ffffff 0%, #7dd3fc 130%) !important;
  -webkit-background-clip: text !important; background-clip: text !important; color: transparent !important;
  font-weight: 800; letter-spacing: -0.01em;
  font-size: clamp(1.35rem, 1rem + 1vw, 1.9rem);
}
.gc-live-player__premium-gate--voyeur .gc-live-room-pill--accent {
  background: linear-gradient(180deg, rgba(var(--gc-accent-cyan-rgb), 0.14), rgba(14,165,233,0.08)) !important;
  border: 1px solid rgba(125,211,252,0.34) !important;
  color: #7dd3fc !important;
  text-shadow: 0 0 10px rgba(125,211,252,0.22);
  font-weight: 700; font-size: 0.95rem; padding: 8px 14px; border-radius: var(--gc-radius-pill);
}
.gc-live-player__premium-gate--voyeur .gc-live-room-pill--soft {
  background: rgba(255,255,255,0.04); border: 1px solid rgba(125,211,252,0.22);
  color: rgba(233, 246, 252, 0.82); font-weight: 600;
  font-size: 0.9rem; padding: 8px 14px; border-radius: var(--gc-radius-pill);
}
.gc-live-player__premium-gate--voyeur .gc-button--primary {
  position: relative;
  background: linear-gradient(180deg, var(--gc-accent-cyan) 0%, #0891b2 100%) !important;
  border: 1px solid rgba(125,211,252,0.55) !important;
  color: #04212b !important;
  font-weight: 800; letter-spacing: 0.01em; text-transform: none;
  padding: 14px 26px; border-radius: calc(var(--gc-radius-scale, 1) * 14px);
  box-shadow: 0 10px 24px -8px rgba(var(--gc-accent-cyan-rgb), 0.55), 0 0 0 1px rgba(125,211,252,0.1), inset 0 1px 0 rgba(255,255,255,0.3);
  overflow: hidden;
  transition: transform .14s ease, box-shadow .14s ease, filter .14s ease;
}
.gc-live-player__premium-gate--voyeur .gc-button--primary:hover {
  transform: translateY(-1px); filter: brightness(1.05);
  box-shadow: 0 14px 30px -10px rgba(var(--gc-accent-cyan-rgb), 0.7);
}
.gc-live-player__premium-gate--voyeur .gc-button--primary::after {
  content: ''; position: absolute; inset: 0;
  background: linear-gradient(110deg, transparent 25%, rgba(255,255,255,0.28) 50%, transparent 75%);
  transform: translateX(-100%);
  animation: gc-pp-shimmer 3.2s ease-in-out infinite;
  pointer-events: none;
}
.gc-live-player__premium-gate--voyeur .gc-button--ghost {
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(125,211,252,0.32) !important;
  color: #7dd3fc !important;
  font-weight: 700; padding: 14px 22px; border-radius: calc(var(--gc-radius-scale, 1) * 14px);
  transition: background .14s ease, border-color .14s ease, color .14s ease;
}
.gc-live-player__premium-gate--voyeur .gc-button--ghost:hover {
  background: rgba(125,211,252,0.08);
  border-color: rgba(125,211,252,0.6) !important;
  color: #fff !important;
}

/* === Ticket variant (amber/orange accent) === */
.gc-live-player__premium-gate--ticket {
  background:
    radial-gradient(circle at 30% 0%, rgba(245, 158, 11, 0.22), transparent 55%),
    radial-gradient(circle at 70% 100%, rgba(251, 191, 36, 0.14), transparent 55%),
    rgba(10, 13, 22, 0.92) !important;
  backdrop-filter: blur(16px);
}
.gc-live-player__premium-gate--ticket::before {
  content: '';
  position: absolute; inset: 0; border-radius: inherit; padding: 1px;
  background: linear-gradient(135deg, rgba(245,158,11,0.55), rgba(251,191,36,0.55) 50%, rgba(245,158,11,0.25));
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor; mask-composite: exclude;
  pointer-events: none; opacity: 0.9; z-index: 1;
}
.gc-live-player__premium-gate--ticket::after {
  content: '\1F3AB TICKETED SHOW' !important;
  position: absolute; top: 12px; left: 50%; transform: translateX(-50%);
  font-size: 0.7rem; font-weight: 800; letter-spacing: 0.18em;
  padding: 5px 14px; border-radius: var(--gc-radius-pill);
  color: #fbbf24 !important;
  background: linear-gradient(180deg, rgba(245,158,11,0.18), rgba(217,119,6,0.12)) !important;
  border: 1px solid rgba(251,191,36,0.4) !important;
  text-shadow: 0 0 12px rgba(251,191,36,0.35) !important;
  z-index: 1;
}
.gc-live-player__premium-gate--ticket .gc-live-player__premium-gate-title {
  background: linear-gradient(180deg, #ffffff 0%, #fbbf24 130%) !important;
  -webkit-background-clip: text !important; background-clip: text !important; color: transparent !important;
  font-weight: 800; letter-spacing: -0.01em;
  font-size: clamp(1.35rem, 1rem + 1vw, 1.9rem);
}
.gc-live-player__premium-gate--ticket .gc-live-room-pill--accent {
  background: linear-gradient(180deg, rgba(245,158,11,0.16), rgba(217,119,6,0.08)) !important;
  border: 1px solid rgba(251,191,36,0.36) !important;
  color: #fbbf24 !important;
  text-shadow: 0 0 10px rgba(251,191,36,0.22);
  font-weight: 700; font-size: 0.95rem; padding: 8px 14px; border-radius: var(--gc-radius-pill);
}
.gc-live-player__premium-gate--ticket .gc-live-room-pill--soft {
  background: rgba(255,255,255,0.04); border: 1px solid rgba(251,191,36,0.24);
  color: rgba(253, 230, 138, 0.85); font-weight: 600;
  font-size: 0.9rem; padding: 8px 14px; border-radius: var(--gc-radius-pill);
  font-variant-numeric: tabular-nums;
}
.gc-live-player__premium-gate--ticket .gc-button--primary {
  position: relative;
  background: linear-gradient(180deg, #f59e0b 0%, #d97706 100%) !important;
  border: 1px solid rgba(251,191,36,0.55) !important;
  color: #2a1a03 !important;
  font-weight: 800; letter-spacing: 0.01em; text-transform: none;
  padding: 14px 26px; border-radius: calc(var(--gc-radius-scale, 1) * 14px);
  box-shadow: 0 10px 24px -8px rgba(245,158,11,0.55), 0 0 0 1px rgba(251,191,36,0.1), inset 0 1px 0 rgba(255,255,255,0.3);
  overflow: hidden;
  transition: transform .14s ease, box-shadow .14s ease, filter .14s ease;
}
.gc-live-player__premium-gate--ticket .gc-button--primary:hover {
  transform: translateY(-1px); filter: brightness(1.05);
  box-shadow: 0 14px 30px -10px rgba(245,158,11,0.7);
}
.gc-live-player__premium-gate--ticket .gc-button--primary::after {
  content: ''; position: absolute; inset: 0;
  background: linear-gradient(110deg, transparent 25%, rgba(255,255,255,0.3) 50%, transparent 75%);
  transform: translateX(-100%);
  animation: gc-pp-shimmer 3.2s ease-in-out infinite;
  pointer-events: none;
}
.gc-live-player__premium-gate--ticket .gc-button--ghost {
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(251,191,36,0.32) !important;
  color: #fbbf24 !important;
  font-weight: 700; padding: 14px 22px; border-radius: calc(var(--gc-radius-scale, 1) * 14px);
  transition: background .14s ease, border-color .14s ease, color .14s ease;
}
.gc-live-player__premium-gate--ticket .gc-button--ghost:hover {
  background: rgba(251,191,36,0.08);
  border-color: rgba(251,191,36,0.6) !important;
  color: #fff !important;
}

@keyframes gc-pp-shimmer {
  0%   { transform: translateX(-100%); }
  45%  { transform: translateX(100%); }
  100% { transform: translateX(100%); }
}
/* gc_phase_n_premium_gate_visual_v2 END */

/* gc_phase_collab_v2 s3 -- dual-creator pill on the live overview room card. */
.gc-live-card__collab{display:inline-flex;align-items:center;gap:8px;padding:4px 10px 4px 4px;border-radius:var(--gc-radius-pill);background:rgba(99,102,241,.12);border:1px solid rgba(99,102,241,.28);color:var(--gc-text);font-size:13px;line-height:1.2;max-width:100%;}
.gc-live-card__collab-avatar{display:inline-block;width:22px;height:22px;border-radius:50%;object-fit:cover;border:2px solid var(--gc-surface);background:var(--gc-slate);}
.gc-live-card__collab-avatar--guest{margin-left:-10px;}
.gc-live-card__collab-names{font-size:13px;font-weight:700;color:var(--gc-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.gc-live-card__collab-names span{margin:0 4px;color:var(--gc-text-soft);font-weight:500;}
/* end gc_phase_collab_v2 s3 */

/* gc_phase_collab_v2 s4 -- in-show dual-creator nameplate */
.gc-live-room-title-row__eyebrow--collab{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap;margin:0 0 4px;padding:4px 10px;border-radius:var(--gc-radius-pill);background:rgba(99,102,241,.12);border:1px solid rgba(99,102,241,.28);color:var(--gc-text);font-size:13px;line-height:1.2;max-width:100%;}
.gc-live-room-title-row__eyebrow-name{font-weight:700;color:var(--gc-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:40ch;}
.gc-live-room-title-row__eyebrow-sep{color:var(--gc-text-soft);font-weight:500;margin:0 2px;}
.gc-live-creator-row__collab{display:flex;align-items:center;flex-wrap:wrap;gap:10px 12px;margin:0 0 8px;}
.gc-live-creator-row__collab-person{display:inline-flex;align-items:center;gap:8px;text-decoration:none;color:var(--gc-text);padding:4px 10px 4px 4px;border-radius:var(--gc-radius-pill);background:rgba(99,102,241,.1);border:1px solid rgba(99,102,241,.25);transition:background .15s ease,border-color .15s ease;}
.gc-live-creator-row__collab-person:hover{background:rgba(99,102,241,.18);border-color:rgba(99,102,241,.45);}
.gc-live-creator-row__collab-avatar{width:34px;height:34px;border-radius:50%;object-fit:cover;border:2px solid var(--gc-surface);background:var(--gc-slate);flex:0 0 auto;}
.gc-live-creator-row__collab-name{font-size:18px;font-weight:700;color:var(--gc-text);line-height:1.2;max-width:20ch;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.gc-live-creator-row__collab-sep{color:var(--gc-text-soft);font-size:20px;font-weight:500;line-height:1;padding:0 2px;}
@media (max-width:520px){
  .gc-live-creator-row__collab{gap:6px;}
  .gc-live-creator-row__collab-avatar{width:28px;height:28px;}
  .gc-live-creator-row__collab-name{font-size:16px;max-width:14ch;}
}
/* end gc_phase_collab_v2 s4 */

/* gc_phase_collab_v3 s3.3 -- dual-creator stage layout. gc_patch_collab_v9_1:
   stacked (top/bottom) on ALL viewports -- user feedback said 1200px
   breakpoint was insufficient at 1440px desktop, so stacking is now
   unconditional for simpler, full-viewport-width tiles. */
.gc-live-player__stage { display: block; position: relative; width: 100%; }
.gc-live-player--has-collab .gc-live-player__stage { display: grid; grid-template-columns: 1fr; grid-template-rows: 1fr 1fr; gap: 6px; align-items: stretch; }
  /* gc_patch_collab_v10_1 2A -- drop player's 16:9 aspect-ratio + overflow clip when collab active
     so the stage (948px, 2×16:9 stacked tiles) is fully visible instead of being cropped to the
     player's solo 471px box. Matches v9 "stacked on all viewports" intent. */
  .gc-live-player--has-collab { aspect-ratio: auto; height: auto; overflow: visible; }
  /* gc_patch_collab_v11_1 2A -- clamp each media tile's max-height so the stacked stage fits in a
     standard 1440x900 viewport (both tiles visible without vertical scrolling). Reserves ~220px
     for topbar + eyebrow + nameplate + page margins. aspect-ratio (16/9) preserved from the rule
     below: browser shrinks width proportionally, tiles stay 16:9, centered horizontally. Scales
     up on taller viewports. */
  .gc-live-player--has-collab .gc-live-player__media { max-height: calc((100vh - 220px) / 2); width: auto; max-width: 100%; margin-left: auto; margin-right: auto; justify-self: center; }
.gc-live-player__media { position: relative; width: 100%; min-height: 0; overflow: hidden; background: #000; }
.gc-live-player__media video { width: 100%; height: 100%; object-fit: contain; display: block; }
.gc-live-player--has-collab .gc-live-player__media { aspect-ratio: 16 / 9; }
.gc-live-player__media--guest[hidden] { display: none !important; }
/* gc_phase_collab_v3 s3.3 / gc_patch_collab_v9_1 -- end */
/* gc_patch_collab_v14_1 B2 -- overlay branches for live vs offline. When the overlay is
   visible we show exactly one branch, picked from the layout root's data-room-live
   attribute (kept in sync by setOverlay() in the v3 player JS). Always showing the
   offline branch by default so a JS-driven live→offline flip renders the card
   properly even before the next setOverlay call updates data-room-live. */
.gc-live-player__overlay-branch{display:contents;}
[data-room-live="1"] .gc-live-player__overlay-branch--offline,
[data-room-live=""] .gc-live-player__overlay-branch--offline{display:none;}
[data-room-live="0"] .gc-live-player__overlay-branch--connecting{display:none;}
/* Ensure the player card keeps its 16:9 height while the overlay is visible,
   even when the (empty) stage has no publishing media. */
.gc-live-player__overlay.is-visible{display:grid;grid-template-rows:1fr;}


/* gc_patch_collab_v15_1 R3 BEGIN — premium-gate absolute-positioned over the player.
   The player is display:grid with implicit rows; before this fix the gate
   landed in the last (tallest) row and appeared visually shifted toward the
   bottom half of the player. Floating it over the whole player gives the
   existing flex centering a proper box to center within. */
.gc-live-player__premium-gate {
    position: absolute !important;
    inset: 0 !important;
    z-index: 20 !important;
    min-height: 0 !important;
    height: auto !important;
}
/* gc_patch_collab_v15_1 R3 END */

/* gc_patch_collab_v16_1 R1 BEGIN -- premium-gate re-asserts 16:9 on collab rooms.
   v10 J set `.gc-live-player--has-collab { aspect-ratio:auto; height:auto }` so
   the 2-up stage can grow vertically when both creators publish.  v15 R3 then
   made `.gc-live-player__premium-gate` position:absolute + inset:0 to re-center
   it.  For a logged-out/non-entitled viewer on a collab room, neither tile is
   rendered, so the container has no intrinsic height, and the absolute-
   positioned gate contributes nothing -- the whole player collapses to ~6px.
   When the gate is active, re-assert 16:9 + a hard min-height so the gate
   has a canvas to center in. */
.gc-live-player.has-premium-gate.gc-live-player--has-collab {
    aspect-ratio: 16 / 9 !important;
    height: auto !important;
    min-height: 360px !important;
}
/* Belt-and-suspenders: also floor any premium-gate rendering at 360px in case
   a future class combo removes aspect-ratio without re-adding one. */
.gc-live-player.has-premium-gate {
    min-height: 360px;
}
/* gc_patch_collab_v16_1 R1 END */

/* gc_patch_collab_v17_1 R2 BEGIN -- prevent initial layout shift on collab rooms.
   v10 J removed aspect-ratio for collab rooms so a 2-up stage could grow
   vertically; but the SSR markup starts with --has-collab and no height,
   so the player collapses to ~0px on first paint then jumps to ~984px
   once JS mounts.  Re-assert aspect-ratio: 16/9 + min-height: 360px on
   every --has-collab player so space is reserved from the very first
   paint.  height:auto (from v10 J) is preserved so tiles can still grow
   past 16:9 when both creators publish. */
.gc-live-player.gc-live-player--has-collab {
    aspect-ratio: 16 / 9 !important;
    min-height: 360px !important;
}
/* gc_patch_collab_v17_1 R2 END */

/* gc_patch_collab_v18_1 R1 BEGIN -- revert v17 R2's aspect-ratio cap.
   v17 R2 applied aspect-ratio: 16/9 !important which capped the player at ~520px.
   The 2-up stacked stage renders at ~984px and, because overflow:visible was set
   by v10 J, the stage overflowed past the player bottom, overlapping the room-bar
   and action-bar. Drop the aspect-ratio cap, keep a tiered min-height so SSR
   still reserves visible space. */
.gc-live-player.gc-live-player--has-collab {
    aspect-ratio: auto !important;
    min-height: 360px !important;
}
@media (min-width: 900px) {
    .gc-live-player.gc-live-player--has-collab {
        min-height: 640px !important;
    }
}
/* gc_patch_collab_v18_1 R1 END */

/* gc_patch_collab_v19_1 BEGIN -- three bundled visual fixes. */

/* R1 -- player toolbar always visible (no hover-to-reveal, no fullscreen auto-hide).
   Previous CSS used transform:translateY(-130%) + opacity:0 by default and only
   showed on :hover / :focus-within / .is-toolbar-open.  Pinning it on. */
.gc-live-player__toolbar,
.gc-live-player-card:fullscreen .gc-live-player__toolbar,
.gc-live-player-card.is-live-fullscreen .gc-live-player__toolbar {
    transform: translateY(0) !important;
    opacity: 1 !important;
    pointer-events: auto !important;
}

/* R2 -- fullscreen collab tile sizing.
   In fullscreen, the two collab tiles were anchored to the top and left
   vertical whitespace below.  Make the player + stage fill the 100vh card
   and split the height 50/50 across the two tiles. */
.gc-live-player-card:fullscreen .gc-live-player.gc-live-player--has-collab,
.gc-live-player-card.is-live-fullscreen .gc-live-player.gc-live-player--has-collab {
    min-height: 0 !important;
    height: 100% !important;
}
.gc-live-player-card:fullscreen .gc-live-player--has-collab .gc-live-player__stage,
.gc-live-player-card.is-live-fullscreen .gc-live-player--has-collab .gc-live-player__stage {
    height: 100% !important;
    width: 100% !important;
    display: grid !important;
    grid-template-rows: 1fr 1fr !important;
    grid-template-columns: 1fr !important;
    gap: 4px;
}
.gc-live-player-card:fullscreen .gc-live-player--has-collab .gc-live-player__media,
.gc-live-player-card.is-live-fullscreen .gc-live-player--has-collab .gc-live-player__media {
    position: relative !important;
    height: 100% !important;
    width: 100% !important;
    max-width: none !important;
    max-height: none !important;
    aspect-ratio: auto !important;
    inset: auto !important;
    margin: 0 !important;
    justify-self: stretch !important;
}
.gc-live-player-card:fullscreen .gc-live-player--has-collab .gc-live-player__media video,
.gc-live-player-card.is-live-fullscreen .gc-live-player--has-collab .gc-live-player__media video {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain;
    background: #000;
}

/* R3 -- invite-co-creator modal dark Guyscat theme.
   The modal CSS is injected at runtime by gc-livestream-studio.js with a
   light theme (white panel, blue buttons).  Override here so it matches the
   dark brand palette.  All overrides keyed with high-specificity #head/#panel
   so they win against the inline <style id="gc-collab-v2-style">. */
.gc-live-collab-modal__panel {
    background: linear-gradient(160deg, #0f1522 0%, #0a0f1a 100%) !important;
    color: var(--gc-text-soft) !important;
    border: 1px solid rgba(255, 216, 122, 0.18) !important;
    box-shadow: 0 30px 60px -12px rgba(0,0,0,0.7), 0 0 0 1px rgba(255,216,122,0.08) !important;
    border-radius: calc(var(--gc-radius-scale, 1) * 18px) !important;
}
.gc-live-collab-modal__head {
    border-bottom: 1px solid rgba(255,255,255,0.06) !important;
    padding: 18px 22px !important;
}
.gc-live-collab-modal__head h2 {
    color: #ffd87a !important;
    font-weight: 800 !important;
    letter-spacing: 0.01em !important;
}
.gc-live-collab-modal__close {
    color: rgba(233, 226, 240, 0.65) !important;
    transition: color .15s ease;
}
.gc-live-collab-modal__close:hover { color: #ffd87a !important; }
.gc-live-collab-modal__backdrop {
    background: rgba(5, 9, 16, 0.78) !important;
    backdrop-filter: blur(6px) !important;
}
.gc-live-collab-modal__body { padding: 18px 22px !important; }
.gc-live-collab-modal__search {
    background: rgba(255,255,255,0.04) !important;
    border: 1px solid rgba(255,255,255,0.1) !important;
    color: var(--gc-text-soft) !important;
    border-radius: calc(var(--gc-radius-scale, 1) * 10px) !important;
    padding: 11px 14px !important;
}
.gc-live-collab-modal__search:focus {
    outline: none;
    border-color: rgba(255,216,122,0.5) !important;
    box-shadow: 0 0 0 3px rgba(255,216,122,0.12) !important;
}
.gc-live-collab-modal__row {
    background: rgba(255,255,255,0.03) !important;
    border: 1px solid rgba(255,255,255,0.08) !important;
    color: var(--gc-text-soft) !important;
    border-radius: calc(var(--gc-radius-scale, 1) * 12px) !important;
    padding: 10px 14px !important;
    transition: background .15s ease, border-color .15s ease;
}
.gc-live-collab-modal__row:hover {
    background: rgba(255,216,122,0.06) !important;
    border-color: rgba(255,216,122,0.3) !important;
}
.gc-live-collab-modal__row.is-picked {
    background: rgba(255,82,102,0.1) !important;
    border-color: rgba(255,216,122,0.55) !important;
}
.gc-live-collab-modal__name { color: var(--gc-text-soft) !important; }
.gc-live-collab-modal__pick {
    background: linear-gradient(180deg, #ff5266 0%, #d42b40 100%) !important;
    border: 1px solid rgba(255,216,122,0.45) !important;
    color: #fff !important;
    font-weight: 700 !important;
    border-radius: var(--gc-radius-pill) !important;
    padding: 7px 16px !important;
    box-shadow: 0 4px 12px -4px rgba(255, 82, 102, 0.5);
    transition: transform .15s ease, filter .15s ease;
}
.gc-live-collab-modal__pick:hover {
    transform: translateY(-1px);
    filter: brightness(1.08);
}
.gc-live-collab-modal__empty {
    color: rgba(233, 226, 240, 0.55) !important;
    padding: 32px 0 !important;
}
.gc-live-collab-modal__foot {
    border-top: 1px solid rgba(255,255,255,0.06) !important;
    padding: 16px 22px !important;
    background: rgba(255,255,255,0.02);
}
.gc-live-collab-modal__split-label,
.gc-live-collab-modal__split span:first-child {
    color: rgba(233, 226, 240, 0.7) !important;
    font-weight: 600 !important;
}
.gc-live-collab-modal__split-out,
.gc-live-collab-modal__panel output[data-gc-collab-split-out] {
    color: #ffd87a !important;
    font-weight: 800 !important;
}
.gc-live-collab-modal__split input[type=range],
.gc-live-collab-modal__panel input[type=range] {
    accent-color: #ff5266;
}
.gc-live-collab-modal__send {
    background: linear-gradient(180deg, #ff5266 0%, #d42b40 100%) !important;
    border: 1px solid rgba(255,216,122,0.45) !important;
    color: #fff !important;
    font-weight: 800 !important;
    border-radius: calc(var(--gc-radius-scale, 1) * 12px) !important;
    padding: 12px 22px !important;
    letter-spacing: 0.01em;
    box-shadow: 0 10px 24px -8px rgba(255, 82, 102, 0.55), inset 0 1px 0 rgba(255,255,255,0.18);
    transition: transform .14s ease, filter .14s ease, box-shadow .14s ease;
}
.gc-live-collab-modal__send:hover:not(:disabled) {
    transform: translateY(-1px);
    filter: brightness(1.08);
    box-shadow: 0 14px 30px -10px rgba(255, 82, 102, 0.7);
}
.gc-live-collab-modal__send:disabled {
    background: rgba(255,255,255,0.08) !important;
    border-color: rgba(255,255,255,0.1) !important;
    color: rgba(233, 226, 240, 0.4) !important;
    box-shadow: none !important;
}
/* gc_patch_collab_v19_1 END */

/* gc_patch_collab_v22_1 R1 BEGIN -- toolbar flush edge-to-edge. */
.gc-live-player__toolbar {
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    border-radius: 0 !important;
    border-top: 0 !important;
    border-left: 0 !important;
    border-right: 0 !important;
    padding: 10px 18px !important;
}
/* gc_patch_collab_v22_1 R1 END */

/* gc_patch_collab_v22_1 R2 BEGIN -- fullscreen stage true 50/50.
   v19 R2 set stage height:100% but player's implicit grid row auto-sizes
   to content, so stage actually became 2x tile-intrinsic-height.  Escape
   the grid by absolute-positioning stage and giving the player a relative
   positioning context.  Stage then fills the full player box; its own
   grid 1fr/1fr splits exactly in half. */
.gc-live-player-card:fullscreen .gc-live-player,
.gc-live-player-card.is-live-fullscreen .gc-live-player {
    position: relative !important;
    display: block !important;
    overflow: hidden !important;
}
.gc-live-player-card:fullscreen .gc-live-player--has-collab .gc-live-player__stage,
.gc-live-player-card.is-live-fullscreen .gc-live-player--has-collab .gc-live-player__stage {
    position: absolute !important;
    inset: 0 !important;
    height: auto !important;
    width: auto !important;
    display: grid !important;
    grid-template-rows: 1fr 1fr !important;
    grid-template-columns: 1fr !important;
    gap: 4px;
}
.gc-live-player-card:fullscreen .gc-live-player--has-collab .gc-live-player__media,
.gc-live-player-card.is-live-fullscreen .gc-live-player--has-collab .gc-live-player__media {
    position: relative !important;
    height: 100% !important;
    width: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: auto !important;
    margin: 0 !important;
    inset: auto !important;
}
.gc-live-player-card:fullscreen .gc-live-player--has-collab .gc-live-player__media video,
.gc-live-player-card.is-live-fullscreen .gc-live-player--has-collab .gc-live-player__media video {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain;
    background: #000;
}
/* gc_patch_collab_v22_1 R2 END */

/* gc_patch_collab_v22_1 R4 BEGIN -- invite co-creator topbar button + banner Guyscat dark theme. */
.gc-live-collab-btn {
    background: linear-gradient(180deg, #ff5266 0%, #d42b40 100%) !important;
    color: #fff !important;
    border: 1px solid rgba(255, 216, 122, 0.45) !important;
    border-radius: var(--gc-radius-pill) !important;
    padding: 9px 18px !important;
    font-weight: 800 !important;
    letter-spacing: 0.02em;
    box-shadow: 0 6px 16px -6px rgba(255, 82, 102, 0.55), inset 0 1px 0 rgba(255,255,255,0.18);
    transition: transform .14s ease, filter .14s ease, box-shadow .14s ease;
    cursor: pointer;
}
.gc-live-collab-btn:hover:not(:disabled) {
    transform: translateY(-1px);
    filter: brightness(1.08);
    box-shadow: 0 10px 22px -8px rgba(255, 82, 102, 0.7), inset 0 1px 0 rgba(255,255,255,0.18);
}
.gc-live-collab-btn:disabled {
    background: rgba(255,255,255,0.08) !important;
    color: rgba(233,226,240,0.45) !important;
    border-color: rgba(255,255,255,0.1) !important;
    box-shadow: none !important;
    cursor: not-allowed;
}
.gc-live-collab-btn__icon { font-size: 15px; line-height: 1; }

.gc-live-collab-banner {
    background: linear-gradient(90deg, rgba(var(--gc-surface-rgb), 0.94) 0%, rgba(var(--gc-surface-rgb), 0.96) 100%) !important;
    border: 1px solid rgba(255, 216, 122, 0.28) !important;
    color: var(--gc-text-soft) !important;
    box-shadow: 0 12px 28px -10px rgba(0,0,0,0.55), 0 0 0 1px rgba(255,216,122,0.06) !important;
    border-radius: calc(var(--gc-radius-scale, 1) * 14px) !important;
    padding: 12px 16px !important;
}
.gc-live-collab-banner[data-collab-status="pending"] {
    background: linear-gradient(90deg, rgba(40,26,16,0.94) 0%, rgba(22,16,10,0.96) 100%) !important;
    border-color: rgba(255, 170, 70, 0.45) !important;
}
.gc-live-collab-banner__text strong {
    color: #ffd87a !important;
    font-weight: 800 !important;
}
.gc-live-collab-banner__text small { color: rgba(233,226,240,0.65) !important; }
.gc-live-collab-banner__avatar {
    border: 2px solid rgba(255, 216, 122, 0.45) !important;
}
.gc-live-collab-banner__btn {
    background: rgba(255,255,255,0.05) !important;
    border: 1px solid rgba(255,255,255,0.14) !important;
    color: var(--gc-text-soft) !important;
    border-radius: var(--gc-radius-pill) !important;
    padding: 7px 14px !important;
    font-weight: 700 !important;
    cursor: pointer;
    transition: background .14s ease, border-color .14s ease;
}
.gc-live-collab-banner__btn:hover {
    background: rgba(255,216,122,0.08) !important;
    border-color: rgba(255,216,122,0.35) !important;
}
.gc-live-collab-banner__btn--accept {
    background: linear-gradient(180deg, #34d399 0%, #10b981 100%) !important;
    border-color: rgba(52, 211, 153, 0.45) !important;
    color: #0b1a13 !important;
    font-weight: 800 !important;
}
.gc-live-collab-banner__btn--decline,
.gc-live-collab-banner__btn--danger {
    background: linear-gradient(180deg, #ff5266 0%, #d42b40 100%) !important;
    border-color: rgba(255, 216, 122, 0.45) !important;
    color: #fff !important;
    font-weight: 800 !important;
}
/* gc_patch_collab_v22_1 R4 END */

/* gc_patch_collab_v24_1 R2 BEGIN -- revert toolbar always-visible, restore hover-to-show.
   Keeps v22 R1 edge-to-edge positioning (top:0/left:0/right:0/no border-radius) but
   hides the bar unless the player is hovered, focused-within, or .is-toolbar-open.
   Works in fullscreen too: hovering anywhere inside the player-card keeps toolbar
   visible; moving cursor out hides it. */
.gc-live-player__toolbar {
    transform: translateY(-130%) !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transition: transform .2s ease, opacity .2s ease;
}
.gc-live-player:hover .gc-live-player__toolbar,
.gc-live-player:focus-within .gc-live-player__toolbar,
.gc-live-player.is-toolbar-open .gc-live-player__toolbar,
.gc-live-player-card:fullscreen:hover .gc-live-player__toolbar,
.gc-live-player-card.is-live-fullscreen:hover .gc-live-player__toolbar {
    transform: translateY(0) !important;
    opacity: 1 !important;
    pointer-events: auto !important;
}
/* gc_patch_collab_v24_1 R2 END */

/* gc_patch_collab_v25_1 R4 BEGIN -- style the explicit switch-tile button. */
.gc-live-switch-tile {
    display: inline-flex !important;
    align-items: center;
    gap: 6px;
    padding: 0 13px !important;
    min-height: 36px;
    border-radius: var(--gc-radius-pill) !important;
    background: linear-gradient(180deg, rgba(255,82,102,0.18) 0%, rgba(212,43,64,0.12) 100%) !important;
    border: 1px solid rgba(255, 216, 122, 0.35) !important;
    color: #ffd87a !important;
    font-size: 12px;
    font-weight: 800 !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase;
    cursor: pointer;
    transition: background .15s ease, border-color .15s ease, transform .1s ease;
}
.gc-live-switch-tile:hover {
    background: linear-gradient(180deg, rgba(255,82,102,0.3) 0%, rgba(212,43,64,0.22) 100%) !important;
    border-color: rgba(255, 216, 122, 0.65) !important;
    transform: translateY(-1px);
}
.gc-live-switch-tile__icon { font-size: 14px; line-height: 1; }
.gc-live-switch-tile--zoom {
    min-height: 26px;
    padding: 0 10px !important;
    font-size: 13px;
    background: rgba(255, 216, 122, 0.15) !important;
    border-color: rgba(255, 216, 122, 0.45) !important;
    color: #ffd87a !important;
    margin-right: 6px;
}
/* Visual hint: highlight the currently-active tile in collab views. */
.gc-live-player__media.is-gc-active-tile {
    box-shadow: 0 0 0 2px rgba(255, 216, 122, 0.55) inset;
}
/* gc_patch_collab_v25_1 R4 END */

/* gc_patch_collab_v27_1 R2 */
.gc-live-switch-tile[hidden],
[data-gc-live-control="switch-tile"][hidden] { display: none !important; }
.gc-live-switch-tile:not([hidden]),
[data-gc-live-control="switch-tile"]:not([hidden]) { display: inline-flex !important; }

/* gc_patch_collab_v28_1 R3 BEGIN -- collab-guest chat accent (viewer side).
   Applied on top of --creator so host keeps gold accent and guest gets the
   distinct gold-edged purple row. */
.gc-live-chat-row--collab-guest {
    background: linear-gradient(90deg, rgba(129, 140, 248, 0.10) 0%, rgba(99, 102, 241, 0.06) 100%);
    border-left: 3px solid rgba(129, 140, 248, 0.65);
    padding-left: 9px;
}
.gc-live-chat-row--collab-guest .gc-live-chat-row__meta strong,
.gc-live-chat-row--collab-guest strong.gc-live-chat-row__name {
    color: rgb(165, 180, 252);
}
.gc-live-chat-row--collab-guest .gc-live-chat-row__body {
    color: rgba(233, 226, 240, 0.94);
}
/* gc_patch_collab_v28_1 R3 END */


/* gc_patch_b11_mobile_chat_reorder_2026_04_24 BEGIN
 * Reorder live-room layout at mobile viewports so chat appears right after the player,
 * before the creator card / tip goal / WCFM bits. Flattens .gc-live-room-main via
 * display:contents and reassigns flex order values on the shell container.
 */
@media (max-width: 1023px) {
    .gc-live-room-layout { display: flex !important; flex-direction: column; gap: 16px; }
    .gc-live-room-main { display: contents; }
    .gc-live-room-main > .gc-live-player-stack { order: 1; }
    .gc-live-room-sidebar { order: 2; }
    .gc-live-room-main > :not(.gc-live-player-stack) { order: 3; }
}
/* gc_patch_b11_mobile_chat_reorder_2026_04_24 END */

/* ==============================================================
   Models-login benefits section v2 ("Start earning on GuyScat")
   Fresh cream/gold/wine aesthetic, breaks from dark page theme.
   Scoped under .gc-models-benefits with gcb-* children.
   2026-04-23 — theme v4.42.9
============================================================== */
.gc-models-benefits {
  --gcb-bg: #07111f;
  --gcb-bg-2: rgba(14, 26, 50, 0.82);
  --gcb-bg-3: rgba(10, 19, 37, 0.78);
  --gcb-ink: #edf4ff;
  --gcb-ink-soft: #b7c6e2;
  --gcb-ink-mute: #7388a8;
  --gcb-gold: #cf8a34;
  --gcb-gold-dark: #a5691f;
  --gcb-gold-soft: rgba(207, 138, 52, 0.14);
  --gcb-accent2: #7c3aed;
  --gcb-accent2-soft: rgba(124, 58, 237, 0.18);
  --gcb-wine: #f38693;
  --gcb-wine-soft: rgba(243, 134, 147, 0.14);
  --gcb-good: #3dd68c;
  --gcb-line: rgba(164, 182, 224, 0.14);
  --gcb-radius: 28px;
  --gcb-radius-lg: 40px;
  --gcb-shadow: 0 24px 50px rgba(3, 8, 20, 0.44);
  --gcb-shadow-lg: 0 40px 80px rgba(3, 8, 20, 0.58);
  position: relative;
  width: 100%;
  max-width: none;
  margin: 0;
  padding: clamp(48px, 6vw, 96px) clamp(16px, 2vw, 24px) clamp(56px, 6vw, 96px);
  color: var(--gcb-ink);
  background:
    radial-gradient(ellipse 60% 28% at 18% 66%, rgba(var(--gc-accent-rgb), 0.36), transparent 72%),
    radial-gradient(ellipse 55% 26% at 82% 90%, rgba(var(--gc-accent-2-rgb), 0.34), transparent 72%),
    linear-gradient(180deg, var(--gc-bg) 0%, var(--gc-bg) 32%, #0a1428 62%, var(--gc-bg) 100%);
  border: 0;
  border-radius: 0;
  overflow: hidden;
  line-height: 1.55;
  box-shadow: none;
}
.gc-models-benefits::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 12% 8%, rgba(var(--gc-accent-rgb), 0.18), transparent 42%),
    radial-gradient(circle at 92% 92%, rgba(243, 134, 147, 0.08), transparent 40%);
  pointer-events: none;
  z-index: 0;
}
.gc-models-benefits > .gcb-wrap {
  position: relative;
  z-index: 1;
  display: grid;
  gap: clamp(36px, 4vw, 56px);
  max-width: 1180px;
  margin: 0 auto;
}

/* Typographic baseline (scoped) */
.gc-models-benefits h3,
.gc-models-benefits h4 {
  color: var(--gcb-ink);
  letter-spacing: -0.01em;
  line-height: 1.2;
}
.gc-models-benefits p {
  color: var(--gcb-ink-soft);
}

/* Eyebrows & flags */
.gc-models-benefits .gcb-eyebrow {
  display: inline-block;
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.22em;
  color: var(--gcb-gold-dark);
}
.gc-models-benefits .gcb-eyebrow--dark { color: var(--gcb-ink); }
.gc-models-benefits .gcb-flag {
  display: inline-block;
  padding: 6px 14px;
  border-radius: var(--gc-radius-pill);
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.18em;
  background: linear-gradient(135deg, var(--gcb-gold), var(--gcb-gold-dark));
  color: #fff;
  box-shadow: 0 6px 16px rgba(166, 125, 46, 0.28);
}

/* Buttons */
.gc-models-benefits .gcb-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 50px;
  padding: 0 26px;
  border-radius: var(--gc-radius-pill);
  font-weight: 800;
  font-size: 15px;
  letter-spacing: 0.02em;
  text-decoration: none;
  cursor: pointer;
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease, color .2s ease, filter .2s ease;
  border: 1px solid transparent;
}
.gc-models-benefits .gcb-btn--primary {
  background: linear-gradient(135deg, var(--gcb-gold), var(--gcb-gold-dark));
  color: #fff;
  box-shadow: 0 14px 34px rgba(166, 125, 46, 0.3);
}
.gc-models-benefits .gcb-btn--primary:hover {
  transform: translateY(-2px);
  box-shadow: 0 22px 44px rgba(166, 125, 46, 0.38);
  filter: saturate(1.08);
}
.gc-models-benefits .gcb-btn--ghost {
  background: transparent;
  color: var(--gcb-ink);
  border-color: rgba(3, 8, 20, 0.22);
}
.gc-models-benefits .gcb-btn--ghost:hover {
  background: rgba(var(--gc-surface-2-rgb), 0.78);
  transform: translateY(-2px);
  box-shadow: var(--gcb-shadow);
}
.gc-models-benefits .gcb-btn--large {
  min-height: 60px;
  font-size: 17px;
  padding: 0 36px;
}

/* Scroll reveal */
.gc-models-benefits [data-gcb-reveal] {
  opacity: 0;
  transform: translateY(28px);
  transition: opacity .75s ease, transform .75s cubic-bezier(.2,.7,.2,1);
  will-change: transform, opacity;
}
.gc-models-benefits [data-gcb-reveal].is-visible { opacity: 1; transform: none; }

/* Spotlight rows slide in from their anchored side */
.gc-models-benefits .gcb-spot--left[data-gcb-reveal]  { transform: translateX(-80px); }
.gc-models-benefits .gcb-spot--right[data-gcb-reveal] { transform: translateX(80px); }
.gc-models-benefits .gcb-spot--left[data-gcb-reveal].is-visible,
.gc-models-benefits .gcb-spot--right[data-gcb-reveal].is-visible { transform: none; }

/* Compare cards converge from opposite sides, staggered */
.gc-models-benefits .gcb-compare[data-gcb-reveal] .gcb-compare__card--ours {
  opacity: 0; transform: translateX(-48px);
  transition: opacity .75s ease .12s, transform .75s cubic-bezier(.2,.7,.2,1) .12s;
}
.gc-models-benefits .gcb-compare[data-gcb-reveal] .gcb-compare__card--theirs {
  opacity: 0; transform: translateX(48px);
  transition: opacity .75s ease .22s, transform .75s cubic-bezier(.2,.7,.2,1) .22s;
}
.gc-models-benefits .gcb-compare[data-gcb-reveal].is-visible .gcb-compare__card--ours,
.gc-models-benefits .gcb-compare[data-gcb-reveal].is-visible .gcb-compare__card--theirs {
  opacity: 1; transform: none;
}

/* Feature tiles stagger-reveal */
.gc-models-benefits .gcb-grid-section[data-gcb-reveal] .gcb-tile {
  opacity: 0; transform: translateY(28px);
  transition: opacity .6s ease, transform .6s cubic-bezier(.2,.7,.2,1);
}
.gc-models-benefits .gcb-grid-section[data-gcb-reveal].is-visible .gcb-tile { opacity: 1; transform: none; }
.gc-models-benefits .gcb-grid-section[data-gcb-reveal].is-visible .gcb-tile:nth-child(1) { transition-delay: 0s; }
.gc-models-benefits .gcb-grid-section[data-gcb-reveal].is-visible .gcb-tile:nth-child(2) { transition-delay: .06s; }
.gc-models-benefits .gcb-grid-section[data-gcb-reveal].is-visible .gcb-tile:nth-child(3) { transition-delay: .12s; }
.gc-models-benefits .gcb-grid-section[data-gcb-reveal].is-visible .gcb-tile:nth-child(4) { transition-delay: .18s; }
.gc-models-benefits .gcb-grid-section[data-gcb-reveal].is-visible .gcb-tile:nth-child(5) { transition-delay: .24s; }
.gc-models-benefits .gcb-grid-section[data-gcb-reveal].is-visible .gcb-tile:nth-child(6) { transition-delay: .30s; }
.gc-models-benefits .gcb-grid-section[data-gcb-reveal].is-visible .gcb-tile:nth-child(7) { transition-delay: .36s; }
.gc-models-benefits .gcb-grid-section[data-gcb-reveal].is-visible .gcb-tile:nth-child(8) { transition-delay: .42s; }
.gc-models-benefits .gcb-grid-section[data-gcb-reveal].is-visible .gcb-tile:nth-child(9) { transition-delay: .48s; }

/* Hero copy children cascade */
.gc-models-benefits .gcb-hero[data-gcb-reveal] .gcb-hero__copy > * {
  opacity: 0; transform: translateY(18px);
  transition: opacity .7s ease, transform .7s cubic-bezier(.2,.7,.2,1);
}
.gc-models-benefits .gcb-hero[data-gcb-reveal].is-visible .gcb-hero__copy > *:nth-child(1) { opacity: 1; transform: none; transition-delay: 0s; }
.gc-models-benefits .gcb-hero[data-gcb-reveal].is-visible .gcb-hero__copy > *:nth-child(2) { opacity: 1; transform: none; transition-delay: .08s; }
.gc-models-benefits .gcb-hero[data-gcb-reveal].is-visible .gcb-hero__copy > *:nth-child(3) { opacity: 1; transform: none; transition-delay: .16s; }
.gc-models-benefits .gcb-hero[data-gcb-reveal].is-visible .gcb-hero__copy > *:nth-child(4) { opacity: 1; transform: none; transition-delay: .24s; }

/* Fine-print line inside comparison card */
.gc-models-benefits .gcb-compare__fine {
  margin: 14px 0 0;
  font-size: 12.5px;
  line-height: 1.55;
  color: var(--gcb-ink-mute);
}

@media (prefers-reduced-motion: reduce) {
  .gc-models-benefits [data-gcb-reveal],
  .gc-models-benefits [data-gcb-reveal] .gcb-compare__card--ours,
  .gc-models-benefits [data-gcb-reveal] .gcb-compare__card--theirs,
  .gc-models-benefits [data-gcb-reveal] .gcb-tile,
  .gc-models-benefits [data-gcb-reveal] .gcb-hero__copy > * {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }
}

/* -------- Hero -------- */
.gc-models-benefits .gcb-hero {
  display: grid;
  gap: clamp(28px, 4vw, 48px);
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr);
  align-items: center;
  padding: clamp(28px, 3vw, 48px);
  background:
    radial-gradient(circle at 100% 0%, rgba(var(--gc-accent-2-rgb), 0.20), transparent 44%),
    radial-gradient(circle at 0% 100%, rgba(var(--gc-accent-rgb), 0.16), transparent 44%),
    linear-gradient(165deg, rgba(var(--gc-slate-rgb), 0.95), rgba(var(--gc-surface-2-rgb), 0.98));
  border-radius: var(--gcb-radius);
  backdrop-filter: blur(6px);
  box-shadow: var(--gcb-shadow-lg);
}
@media (max-width: 820px) {
  .gc-models-benefits .gcb-hero { grid-template-columns: 1fr; text-align: center; }
  .gc-models-benefits .gcb-hero__ctas { justify-content: center; }
}
.gc-models-benefits .gcb-hero__title {
  margin: 14px 0 14px;
  font-size: clamp(32px, 4.4vw, 56px);
  font-weight: 900;
  line-height: 1.08;
}
.gc-models-benefits .gcb-hero__lede {
  max-width: 540px;
  font-size: clamp(16px, 1.4vw, 18px);
  color: var(--gcb-ink-soft);
}
.gc-models-benefits .gcb-hero__ctas {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 22px;
}
.gc-models-benefits .gcb-hero__ring {
  position: relative;
  width: clamp(240px, 28vw, 320px);
  aspect-ratio: 1;
  justify-self: center;
}
.gc-models-benefits .gcb-ring {
  width: 100%;
  height: 100%;
  transform: rotate(-90deg);
}
.gc-models-benefits .gcb-ring__track {
  fill: none;
  stroke: rgba(var(--gc-accent-rgb), 0.22);
  stroke-width: 14;
}
.gc-models-benefits .gcb-ring__fill {
  fill: none;
  stroke: var(--gcb-gold);
  stroke-width: 14;
  stroke-linecap: round;
  stroke-dasharray: 528;
  stroke-dashoffset: 528;
  transition: stroke-dashoffset 1.6s cubic-bezier(.2,.7,.2,1);
}
.gc-models-benefits .gcb-ring__fill.is-filled {
  stroke-dashoffset: 184.8;
}
@media (prefers-reduced-motion: reduce) {
  .gc-models-benefits .gcb-ring__fill { stroke-dashoffset: 184.8; transition: none; }
}
.gc-models-benefits .gcb-ring__center {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  gap: 6px;
}
.gc-models-benefits .gcb-ring__num {
  font-size: clamp(56px, 8vw, 88px);
  font-weight: 900;
  letter-spacing: -0.04em;
  color: var(--gcb-ink);
  line-height: 1;
}
.gc-models-benefits .gcb-ring__value {
  display: inline-block;
  position: relative;
  line-height: 1;
}
.gc-models-benefits .gcb-ring__unit {
  position: absolute;
  left: 100%;
  top: 0.1em;
  margin-left: 6px;
  font-size: clamp(24px, 3vw, 34px);
  font-weight: 800;
  color: var(--gcb-gold-dark);
}
.gc-models-benefits .gcb-ring__label {
  margin-top: 0;
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.2em;
  color: var(--gcb-ink-mute);
}

/* -------- Calculator -------- */
.gc-models-benefits .gcb-calc {
  display: grid;
  gap: 24px;
  padding: clamp(26px, 3vw, 40px);
  background:
    radial-gradient(circle at 10% 0%, rgba(var(--gc-accent-rgb), 0.18), transparent 50%),
    linear-gradient(165deg, rgba(var(--gc-slate-rgb), 0.95), rgba(var(--gc-surface-2-rgb), 0.98));
  border-radius: var(--gcb-radius);
  box-shadow: var(--gcb-shadow);
  border: 1px solid rgba(var(--gc-accent-rgb), 0.28);
}
.gc-models-benefits .gcb-calc__intro h3 {
  margin: 8px 0 8px;
  font-size: clamp(24px, 2.6vw, 32px);
  font-weight: 900;
}
.gc-models-benefits .gcb-calc__intro p {
  margin: 0;
  max-width: 560px;
}
.gc-models-benefits .gcb-calc__controls {
  display: grid;
  gap: 18px;
}
.gc-models-benefits .gcb-calc__field {
  display: grid;
  gap: 8px;
  max-width: 280px;
}
.gc-models-benefits .gcb-calc__field-label {
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.18em;
  color: var(--gcb-ink-mute);
}
.gc-models-benefits .gcb-calc__field-input {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 0 14px;
  height: 52px;
  border-radius: calc(var(--gc-radius-scale, 1) * 16px);
  background: rgba(var(--gc-surface-2-rgb), 0.7);
  border: 2px solid rgba(var(--gc-accent-rgb), 0.38);
  transition: border-color .18s ease, box-shadow .18s ease;
}
.gc-models-benefits .gcb-calc__field-input:focus-within {
  border-color: var(--gcb-gold);
  box-shadow: 0 0 0 4px rgba(var(--gc-accent-rgb), 0.18);
}
.gc-models-benefits .gcb-calc__prefix {
  font-size: 20px;
  font-weight: 800;
  color: var(--gcb-gold-dark);
}
.gc-models-benefits .gcb-calc__field-input input {
  flex: 1;
  min-width: 0;
  border: 0;
  outline: none;
  background: transparent;
  font-size: 22px;
  font-weight: 800;
  color: var(--gcb-ink);
  padding: 0;
}
.gc-models-benefits .gcb-calc__slider {
  -webkit-appearance: none;
  appearance: none;
  width: 100%;
  height: 8px;
  border-radius: var(--gc-radius-pill);
  background: linear-gradient(90deg, var(--gcb-gold) 0%, rgba(var(--gc-accent-rgb), 0.22) 0%);
  outline: none;
  cursor: pointer;
}
.gc-models-benefits .gcb-calc__slider::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--gcb-gold), var(--gcb-gold-dark));
  border: 3px solid #fff;
  box-shadow: 0 6px 14px rgba(166, 125, 46, 0.4);
  cursor: grab;
}
.gc-models-benefits .gcb-calc__slider::-moz-range-thumb {
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--gcb-gold), var(--gcb-gold-dark));
  border: 3px solid #fff;
  box-shadow: 0 6px 14px rgba(166, 125, 46, 0.4);
  cursor: grab;
}
.gc-models-benefits .gcb-calc__ticks {
  display: flex;
  justify-content: space-between;
  font-size: 11px;
  font-weight: 700;
  color: var(--gcb-ink-mute);
  text-transform: uppercase;
  letter-spacing: 0.12em;
}
.gc-models-benefits .gcb-calc__result {
  display: grid;
  gap: 4px;
  padding: 24px;
  background: linear-gradient(135deg, var(--gcb-gold), var(--gcb-gold-dark));
  border-radius: calc(var(--gc-radius-scale, 1) * 20px);
  color: #fff;
  text-align: center;
  box-shadow: 0 20px 42px rgba(166, 125, 46, 0.34);
}
.gc-models-benefits .gcb-calc__result-label {
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.22em;
  opacity: 0.88;
}
.gc-models-benefits .gcb-calc__amount {
  font-size: clamp(40px, 6vw, 64px);
  font-weight: 900;
  line-height: 1;
  letter-spacing: -0.02em;
  transition: transform .18s ease;
}
.gc-models-benefits .gcb-calc__sub {
  font-size: 13.5px;
  opacity: 0.9;
}

/* -------- Comparison -------- */
.gc-models-benefits .gcb-compare__head {
  text-align: center;
  max-width: 720px;
  margin: 0 auto 24px;
}
.gc-models-benefits .gcb-compare__head h3 {
  margin: 10px 0 10px;
  font-size: clamp(26px, 3vw, 38px);
  font-weight: 900;
}
.gc-models-benefits .gcb-compare__grid {
  display: grid;
  gap: 20px;
  grid-template-columns: 1fr 1fr;
}
@media (max-width: 820px) {
  .gc-models-benefits .gcb-compare__grid { grid-template-columns: 1fr; }
}
.gc-models-benefits .gcb-compare__card {
  padding: 28px;
  border-radius: var(--gcb-radius);
  background: var(--gcb-bg-2);
  box-shadow: var(--gcb-shadow);
  transition: transform .2s ease, box-shadow .2s ease;
}
.gc-models-benefits .gcb-compare__card:hover {
  transform: translateY(-3px);
  box-shadow: var(--gcb-shadow-lg);
}
.gc-models-benefits .gcb-compare__card--ours {
  border: 2px solid var(--gcb-gold);
  background: linear-gradient(165deg, rgba(var(--gc-surface-rgb), 0.92), rgba(var(--gc-surface-2-rgb), 0.98));
}
.gc-models-benefits .gcb-compare__card--theirs {
  border: 1px solid rgba(243, 134, 147, 0.38);
  background: linear-gradient(165deg, rgba(62, 22, 30, 0.82), rgba(var(--gc-surface-2-rgb), 0.98));
}
.gc-models-benefits .gcb-compare__badge {
  display: inline-block;
  padding: 6px 14px;
  border-radius: var(--gc-radius-pill);
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.18em;
  background: var(--gcb-gold);
  color: #fff;
}
.gc-models-benefits .gcb-compare__badge--warn {
  background: var(--gcb-wine);
}
.gc-models-benefits .gcb-compare__card h4 {
  margin: 12px 0 18px;
  font-size: 20px;
  font-weight: 800;
}
.gc-models-benefits .gcb-compare__lines {
  margin: 0;
  padding: 0;
  display: grid;
  gap: 12px;
}
.gc-models-benefits .gcb-compare__lines div {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 16px;
  padding-bottom: 10px;
  border-bottom: 1px dashed var(--gcb-line);
}
.gc-models-benefits .gcb-compare__lines dt {
  margin: 0;
  font-size: 14px;
  color: var(--gcb-ink-soft);
}
.gc-models-benefits .gcb-compare__lines dd {
  margin: 0;
  font-size: 16px;
  font-weight: 800;
  color: var(--gcb-ink);
}
.gc-models-benefits .gcb-compare__total {
  border-bottom: 0 !important;
  margin-top: 6px;
  padding-top: 12px;
  border-top: 2px solid var(--gcb-ink);
}
.gc-models-benefits .gcb-compare__total dt {
  font-weight: 800;
  color: var(--gcb-ink);
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-size: 12px;
}
.gc-models-benefits .gcb-compare__total dd {
  font-size: clamp(22px, 2.4vw, 28px);
  font-weight: 900;
}
.gc-models-benefits .gcb-compare__card--ours .gcb-compare__total dd { color: var(--gcb-gold-dark); }
.gc-models-benefits .gcb-compare__card--theirs .gcb-compare__total dd { color: var(--gcb-wine); }
.gc-models-benefits .gcb-compare__caption {
  margin: 16px 0 0;
  font-size: 13.5px;
  color: var(--gcb-ink-mute);
  font-style: italic;
}
.gc-models-benefits .gcb-compare__promises {
  list-style: none;
  margin: 20px 0 0;
  padding: 18px 22px;
  background: rgba(14, 26, 50, 0.82);
  border-radius: calc(var(--gc-radius-scale, 1) * 20px);
  border: 1px solid var(--gcb-line);
  display: grid;
  gap: 10px 24px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  font-size: 14px;
  font-weight: 700;
  color: var(--gcb-ink);
  text-align: left;
}
@media (max-width: 820px) {
  .gc-models-benefits .gcb-compare__promises { grid-template-columns: 1fr; }
}
.gc-models-benefits .gcb-compare__promises li {
  display: flex;
  align-items: center;
  gap: 10px;
}
.gc-models-benefits .gcb-compare__promises li::before {
  content: "✓";
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  border-radius: var(--gc-radius-pill);
  background: var(--gcb-good);
  color: #fff;
  font-size: 12px;
  font-weight: 900;
  line-height: 1;
  flex: 0 0 auto;
}

/* -------- Spotlight rows -------- */
.gc-models-benefits .gcb-spot {
  display: grid;
  gap: clamp(24px, 3vw, 40px);
  grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
  align-items: center;
  padding: clamp(28px, 3vw, 44px);
  background: var(--gcb-bg-2);
  border-radius: var(--gcb-radius);
  box-shadow: var(--gcb-shadow);
  transition: transform .25s ease, box-shadow .25s ease;
}
.gc-models-benefits .gcb-spot:hover {
  transform: translateY(-3px);
  box-shadow: var(--gcb-shadow-lg);
}
.gc-models-benefits .gcb-spot--right {
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 0.8fr);
}
.gc-models-benefits .gcb-spot--right .gcb-spot__visual { order: 2; }
.gc-models-benefits .gcb-spot--right .gcb-spot__copy   { order: 1; }
@media (max-width: 820px) {
  .gc-models-benefits .gcb-spot,
  .gc-models-benefits .gcb-spot--right { grid-template-columns: 1fr; text-align: center; }
  .gc-models-benefits .gcb-spot--right .gcb-spot__visual { order: 1; }
  .gc-models-benefits .gcb-spot--right .gcb-spot__copy   { order: 2; }
  .gc-models-benefits .gcb-spot__bullets { text-align: left; }
}
.gc-models-benefits .gcb-spot--flag {
  background: linear-gradient(165deg, rgba(var(--gc-surface-rgb), 0.95), rgba(var(--gc-surface-rgb), 0.98) 65%, rgba(var(--gc-surface-rgb), 0.98));
  border: 2px solid rgba(var(--gc-accent-rgb), 0.42);
}
.gc-models-benefits .gcb-spot__visual {
  display: grid;
  place-items: center;
  padding: 20px;
  aspect-ratio: 1;
  max-width: 280px;
  margin: 0 auto;
  background: linear-gradient(160deg, rgba(var(--gc-accent-rgb), 0.18), rgba(var(--gc-accent-rgb), 0.06));
  border-radius: calc(var(--gc-radius-scale, 1) * 28px);
}
.gc-models-benefits .gcb-svg {
  width: 100%;
  height: auto;
  max-width: 160px;
}
.gc-models-benefits .gcb-spot__copy h3 {
  margin: 14px 0 14px;
  font-size: clamp(24px, 2.8vw, 32px);
  font-weight: 900;
}
.gc-models-benefits .gcb-spot__copy > p {
  margin: 0 0 16px;
  font-size: 15.5px;
  line-height: 1.65;
}
.gc-models-benefits .gcb-spot__bullets {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 10px;
}
.gc-models-benefits .gcb-spot__bullets li {
  position: relative;
  padding-left: 28px;
  font-size: 14.5px;
  color: var(--gcb-ink);
}
.gc-models-benefits .gcb-spot__bullets li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 7px;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: var(--gcb-gold);
}
.gc-models-benefits .gcb-spot__bullets li::after {
  content: "";
  position: absolute;
  left: 5px;
  top: 11px;
  width: 8px;
  height: 4px;
  border-left: 2px solid #fff;
  border-bottom: 2px solid #fff;
  transform: rotate(-45deg);
}

/* -------- Feature grid -------- */
.gc-models-benefits .gcb-grid-section__head {
  text-align: center;
  max-width: 640px;
  margin: 0 auto 22px;
}
.gc-models-benefits .gcb-grid-section__head h3 {
  margin: 10px 0 0;
  font-size: clamp(24px, 2.6vw, 32px);
  font-weight: 900;
}
.gc-models-benefits .gcb-grid {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
@media (max-width: 960px) {
  .gc-models-benefits .gcb-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
  .gc-models-benefits .gcb-grid { grid-template-columns: 1fr; }
}
.gc-models-benefits .gcb-tile {
  padding: 22px;
  background: var(--gcb-bg-2);
  border: 1px solid var(--gcb-line);
  border-radius: calc(var(--gc-radius-scale, 1) * 22px);
  box-shadow: 0 8px 20px rgba(3, 8, 20, 0.04);
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.gc-models-benefits .gcb-tile:hover {
  transform: translateY(-3px);
  border-color: rgba(var(--gc-accent-rgb), 0.5);
  box-shadow: 0 18px 36px rgba(3, 8, 20, 0.1);
}
.gc-models-benefits .gcb-tile h4 {
  margin: 0 0 8px;
  font-size: 17px;
  font-weight: 800;
}
.gc-models-benefits .gcb-tile p {
  margin: 0;
  font-size: 14.5px;
  line-height: 1.55;
}

/* -------- Payouts -------- */
.gc-models-benefits .gcb-payouts {
  padding: clamp(26px, 3vw, 40px);
  background: var(--gcb-bg-2);
  border: 1px solid var(--gcb-line);
  border-radius: var(--gcb-radius);
  box-shadow: var(--gcb-shadow);
}
.gc-models-benefits .gcb-payouts__head {
  text-align: center;
  margin-bottom: 22px;
}
.gc-models-benefits .gcb-payouts__head h3 {
  margin: 10px 0 0;
  font-size: clamp(24px, 2.6vw, 32px);
  font-weight: 900;
}
.gc-models-benefits .gcb-payouts__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  margin: 0;
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  overflow: hidden;
  border: 1px solid var(--gcb-line);
}
@media (max-width: 820px) {
  .gc-models-benefits .gcb-payouts__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 480px) {
  .gc-models-benefits .gcb-payouts__grid { grid-template-columns: 1fr; }
}
.gc-models-benefits .gcb-payouts__grid > div {
  padding: 18px 20px;
  background: rgba(var(--gc-surface-2-rgb), 0.78);
  border-right: 1px solid var(--gcb-line);
  border-bottom: 1px solid var(--gcb-line);
}
.gc-models-benefits .gcb-payouts__grid > div:last-child { border-right: 0; }
.gc-models-benefits .gcb-payouts__grid dt {
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.18em;
  color: var(--gcb-ink-mute);
  margin-bottom: 6px;
}
.gc-models-benefits .gcb-payouts__grid dd {
  margin: 0;
  font-size: 16px;
  font-weight: 800;
  color: var(--gcb-ink);
}

/* -------- Studio banner -------- */
.gc-models-benefits .gcb-studio {
  padding: clamp(32px, 4vw, 56px) clamp(24px, 3vw, 40px);
  background: linear-gradient(160deg, #0f1b38, var(--gc-bg));
  color: #fff;
  border: 1px solid rgba(var(--gc-accent-2-rgb), 0.32);
  border-radius: var(--gcb-radius);
  text-align: center;
  box-shadow: 0 30px 60px rgba(3, 8, 20, 0.4);
  position: relative;
  overflow: hidden;
}
.gc-models-benefits .gcb-studio::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 80% 0%, rgba(var(--gc-accent-2-rgb), 0.34), transparent 42%),
    radial-gradient(circle at 0% 100%, rgba(var(--gc-accent-rgb), 0.26), transparent 40%);
  pointer-events: none;
}
.gc-models-benefits .gcb-studio > * { position: relative; }
.gc-models-benefits .gcb-studio h3 {
  color: #fff;
  margin: 0 0 12px;
  font-size: clamp(26px, 3vw, 38px);
  font-weight: 900;
}
.gc-models-benefits .gcb-studio p {
  color: rgba(255, 255, 255, 0.78);
  max-width: 620px;
  margin: 0 auto 24px;
  font-size: 16px;
}
.gc-models-benefits .gcb-studio__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: center;
}
.gc-models-benefits .gcb-studio__chips span {
  padding: 8px 16px;
  border-radius: var(--gc-radius-pill);
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(var(--gc-accent-rgb), 0.4);
  color: #fff;
  font-size: 13.5px;
  font-weight: 700;
}

/* -------- Contact CTA -------- */
.gc-models-benefits .gcb-contact {
  text-align: center;
  padding: clamp(28px, 3vw, 44px);
  background: var(--gcb-bg-2);
  border-radius: var(--gcb-radius);
  box-shadow: var(--gcb-shadow);
  border: 1px solid var(--gcb-line);
}
.gc-models-benefits .gcb-contact h3 {
  margin: 0 0 8px;
  font-size: clamp(24px, 2.8vw, 34px);
  font-weight: 900;
}
.gc-models-benefits .gcb-contact p {
  margin: 0 auto 22px;
  max-width: 480px;
}


/* Founders / creator-driven section */
.gc-models-benefits .gcb-founders {
  padding: clamp(28px, 3vw, 44px);
  border-radius: var(--gcb-radius);
  background:
    radial-gradient(circle at 0% 0%, rgba(var(--gc-accent-rgb), 0.18), transparent 38%),
    linear-gradient(160deg, rgba(var(--gc-slate-rgb), 0.94), rgba(var(--gc-surface-2-rgb), 0.98));
  border: 1px solid rgba(var(--gc-accent-rgb), 0.32);
  box-shadow: var(--gcb-shadow);
}
.gc-models-benefits .gcb-founders__inner {
  max-width: 760px;
  margin: 0 auto;
  text-align: center;
}
.gc-models-benefits .gcb-founders__inner h3 {
  margin: 10px 0 12px;
  font-size: clamp(24px, 2.8vw, 34px);
  font-weight: 900;
  color: var(--gcb-ink);
}
.gc-models-benefits .gcb-founders__inner > p {
  margin: 0 auto 20px;
  font-size: 16px;
  line-height: 1.65;
  color: var(--gcb-ink-soft);
}
.gc-models-benefits .gcb-founders__points {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 10px;
  text-align: left;
  max-width: 640px;
  margin-left: auto;
  margin-right: auto;
}
.gc-models-benefits .gcb-founders__points li {
  position: relative;
  padding: 12px 16px 12px 48px;
  background: rgba(var(--gc-surface-2-rgb), 0.78);
  border: 1px solid rgba(var(--gc-accent-rgb), 0.24);
  border-radius: calc(var(--gc-radius-scale, 1) * 14px);
  font-size: 14.5px;
  font-weight: 600;
  color: var(--gcb-ink);
}
.gc-models-benefits .gcb-founders__points li::before {
  content: "♥";
  position: absolute;
  left: 14px;
  top: 50%;
  transform: translateY(-50%);
  width: 24px;
  height: 24px;
  border-radius: var(--gc-radius-pill);
  background: linear-gradient(135deg, var(--gcb-gold), var(--gcb-gold-dark));
  color: #fff;
  display: grid;
  place-items: center;
  font-size: 13px;
  box-shadow: 0 4px 10px rgba(166, 125, 46, 0.3);
}
/* ===== End founders ===== */

/* ===== End models-login benefits v2 ===== */

/* ============================================================
   Premium polish pass (standalone, appended 2026-04-23, v4.42.16)
============================================================ */

/* Gold sparkle texture layered atop the radial accents */
.gc-models-benefits::before {
  background-image:
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='80' height='80' viewBox='0 0 80 80'><circle cx='6' cy='8' r='0.9' fill='%23cf8a34' opacity='0.24'/><circle cx='42' cy='24' r='0.6' fill='%237c3aed' opacity='0.2'/><circle cx='64' cy='56' r='0.8' fill='%23cf8a34' opacity='0.22'/><circle cx='22' cy='66' r='0.7' fill='%237c3aed' opacity='0.2'/></svg>");
  background-repeat: repeat;
  background-size: 80px 80px;
}

/* Eyebrow flanking gold dashes for every .gcb-eyebrow */
.gc-models-benefits .gcb-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}
.gc-models-benefits .gcb-eyebrow::before,
.gc-models-benefits .gcb-eyebrow::after {
  content: "";
  display: inline-block;
  width: 16px;
  height: 2px;
  background: currentColor;
  opacity: 0.6;
  border-radius: calc(var(--gc-radius-scale, 1) * 2px);
}

/* Flag pill decorative sparkle prefix */
.gc-models-benefits .gcb-flag::before {
  content: "✦";
  margin-right: 8px;
  font-size: 11px;
  opacity: 0.88;
}

/* Hero: gold L-frames at top-left and bottom-right, plus CTA halo */
.gc-models-benefits .gcb-hero {
  position: relative;
  overflow: visible;
}
.gc-models-benefits .gcb-hero > .gcb-hero__frame-tl,
.gc-models-benefits .gcb-hero > .gcb-hero__frame-br {
  display: none;
}
.gc-models-benefits .gcb-hero::before,
.gc-models-benefits .gcb-hero::after {
  content: "";
  position: absolute;
  width: 56px;
  height: 56px;
  border: 2.5px solid var(--gcb-gold);
  pointer-events: none;
  z-index: 2;
}
.gc-models-benefits .gcb-hero::before {
  top: -16px;
  left: -16px;
  border-right: 0;
  border-bottom: 0;
  border-top-left-radius: calc(var(--gc-radius-scale, 1) * 16px);
}
.gc-models-benefits .gcb-hero::after {
  bottom: -16px;
  right: -16px;
  border-left: 0;
  border-top: 0;
  border-bottom-right-radius: calc(var(--gc-radius-scale, 1) * 16px);
}

/* 60% ring: outer pulsing halo (isolation-scoped so it stays behind the label) */
.gc-models-benefits .gcb-hero__ring { isolation: isolate; }
.gc-models-benefits .gcb-hero__ring::before {
  content: "";
  position: absolute;
  inset: -18px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(var(--gc-accent-rgb), 0.32), transparent 62%);
  animation: gcb-halo 3.6s ease-in-out infinite;
  pointer-events: none;
  z-index: -1;
}
@keyframes gcb-halo {
  0%, 100% { opacity: 0.55; transform: scale(1); }
  50%      { opacity: 0.95; transform: scale(1.07); }
}
@media (prefers-reduced-motion: reduce) {
  .gc-models-benefits .gcb-hero__ring::before { animation: none; opacity: 0.65; }
}

/* Primary hero CTA: soft gold halo that gently pulses */
.gc-models-benefits .gcb-hero__ctas .gcb-btn--primary {
  position: relative;
}
.gc-models-benefits .gcb-hero__ctas .gcb-btn--primary::before {
  content: "";
  position: absolute;
  inset: -6px;
  border-radius: var(--gc-radius-pill);
  background: linear-gradient(135deg, var(--gcb-gold), var(--gcb-gold-dark));
  opacity: 0.28;
  filter: blur(12px);
  z-index: -1;
  animation: gcb-cta-pulse 2.8s ease-in-out infinite;
}
@keyframes gcb-cta-pulse {
  0%, 100% { opacity: 0.22; transform: scale(1); }
  50%      { opacity: 0.55; transform: scale(1.04); }
}
@media (prefers-reduced-motion: reduce) {
  .gc-models-benefits .gcb-hero__ctas .gcb-btn--primary::before { animation: none; opacity: 0.3; }
}

/* Founders: giant translucent quote marks framing the headline */
.gc-models-benefits .gcb-founders { position: relative; overflow: hidden; }
.gc-models-benefits .gcb-founders__inner { position: relative; }
.gc-models-benefits .gcb-founders__inner::before,
.gc-models-benefits .gcb-founders__inner::after {
  position: absolute;
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 900;
  font-size: 200px;
  line-height: 0.75;
  color: rgba(var(--gc-accent-rgb), 0.18);
  pointer-events: none;
  z-index: 0;
}
.gc-models-benefits .gcb-founders__inner::before {
  content: "“";
  top: -20px;
  left: -40px;
}
.gc-models-benefits .gcb-founders__inner::after {
  content: "”";
  bottom: -60px;
  right: -40px;
}
.gc-models-benefits .gcb-founders__inner > * { position: relative; z-index: 1; }

@media (max-width: 720px) {
  .gc-models-benefits .gcb-founders__inner::before,
  .gc-models-benefits .gcb-founders__inner::after { font-size: 140px; }
  .gc-models-benefits .gcb-founders__inner::before { left: -20px; top: -10px; }
  .gc-models-benefits .gcb-founders__inner::after  { right: -20px; bottom: -40px; }
}

/* Contact CTA: subtle shimmer sweep on hover */
.gc-models-benefits .gcb-contact .gcb-btn--primary { position: relative; overflow: hidden; }
.gc-models-benefits .gcb-contact .gcb-btn--primary::after {
  content: "";
  position: absolute;
  top: 0;
  left: -70%;
  width: 50%;
  height: 100%;
  background: linear-gradient(100deg, transparent 0%, rgba(255,255,255,0.42) 50%, transparent 100%);
  transition: left .8s cubic-bezier(.4,.2,.2,1);
  pointer-events: none;
}
.gc-models-benefits .gcb-contact .gcb-btn--primary:hover::after { left: 160%; }

/* Subtle border-shimmer on the hero card for extra premium feel */
.gc-models-benefits .gcb-hero {
  border: 1px solid rgba(var(--gc-accent-rgb), 0.22);
}
.gc-models-benefits .gcb-founders {
  border: 1px solid rgba(var(--gc-accent-rgb), 0.38);
}



/* ============================================================
   Compare examples, quick-start, and extended payouts — v4.42.25
============================================================ */

.gc-models-benefits .gcb-compare__example {
  margin-top: 28px;
}
.gc-models-benefits .gcb-compare__example:first-of-type {
  margin-top: 12px;
}
.gc-models-benefits .gcb-compare__example-label {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  margin: 0 0 14px;
  font-size: clamp(13px, 1.4vw, 15px);
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.2em;
  color: var(--gcb-gold);
  text-align: center;
}
.gc-models-benefits .gcb-compare__example-label::before,
.gc-models-benefits .gcb-compare__example-label::after {
  content: "";
  flex: 0 0 36px;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(var(--gc-accent-rgb), 0.5), transparent);
}
.gc-models-benefits .gcb-compare__bridge {
  display: block;
  margin: 16px auto;
  max-width: 560px;
  font-size: 13.5px;
  color: var(--gcb-ink-mute);
  text-align: center;
  font-style: italic;
}

/* Quick-start callout */
.gc-models-benefits .gcb-quickstart {
  position: relative;
  padding: clamp(32px, 4vw, 52px) clamp(24px, 3vw, 40px);
  border-radius: var(--gcb-radius);
  background:
    radial-gradient(circle at 0% 0%, rgba(var(--gc-accent-rgb), 0.22), transparent 46%),
    radial-gradient(circle at 100% 100%, rgba(var(--gc-accent-2-rgb), 0.22), transparent 46%),
    linear-gradient(160deg, rgba(var(--gc-slate-rgb), 0.95), rgba(var(--gc-surface-2-rgb), 0.98));
  border: 1px solid rgba(var(--gc-accent-rgb), 0.28);
  box-shadow: var(--gcb-shadow);
  overflow: hidden;
}
.gc-models-benefits .gcb-quickstart__inner {
  max-width: 860px;
  margin: 0 auto;
  text-align: center;
  position: relative;
  z-index: 1;
}
.gc-models-benefits .gcb-quickstart__inner h3 {
  margin: 10px 0 12px;
  font-size: clamp(24px, 2.8vw, 34px);
  font-weight: 900;
  color: var(--gcb-ink);
}
.gc-models-benefits .gcb-quickstart__inner > p {
  margin: 0 auto 26px;
  max-width: 620px;
  font-size: 15.5px;
  color: var(--gcb-ink-soft);
  line-height: 1.65;
}
.gc-models-benefits .gcb-quickstart__steps {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
@media (max-width: 820px) {
  .gc-models-benefits .gcb-quickstart__steps { grid-template-columns: 1fr; }
}
.gc-models-benefits .gcb-quickstart__steps li {
  position: relative;
  padding: 20px 18px 18px;
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  background: rgba(var(--gc-surface-2-rgb), 0.7);
  border: 1px solid rgba(var(--gc-accent-rgb), 0.22);
  text-align: left;
}
.gc-models-benefits .gcb-quickstart__steps li strong {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--gcb-gold), var(--gcb-gold-dark));
  color: #04121c;
  font-size: 14px;
  font-weight: 900;
  margin-bottom: 10px;
  box-shadow: 0 8px 20px rgba(var(--gc-accent-rgb), 0.26);
}
.gc-models-benefits .gcb-quickstart__steps li span {
  display: block;
  font-size: 14.5px;
  font-weight: 700;
  color: var(--gcb-ink);
  line-height: 1.45;
}
.gc-models-benefits .gcb-quickstart__steps li small {
  display: block;
  margin-top: 4px;
  font-size: 13px;
  font-weight: 500;
  color: var(--gcb-ink-soft);
  line-height: 1.5;
}

/* ===== End polish pass ===== */


/* ============================================================
   Models-login full-page dark body (fills the tail gap
   between the benefits section and the footer)
============================================================ */
html body.gc-models-login-page {
  background-color: var(--gc-bg) !important;
  background-image: none !important;
}
html body.gc-models-login-page .gc-site-main {
  background-color: var(--gc-bg) !important;
}

/* Phase 4.0 (2026-04-25): Ask-a-question deep-link in PDP buybox. */
.gc-pp-ask-question{display:flex;align-items:center;gap:10px;margin-top:14px;padding:11px 16px;border-radius:calc(var(--gc-radius-scale, 1) * 12px);background:rgba(var(--gc-accent-rgb), 0.10);border:1px solid rgba(var(--gc-accent-rgb), 0.32);color:#5eead4;text-decoration:none;font-weight:600;font-size:14px;line-height:1.3;transition:background .15s ease,border-color .15s ease,color .15s ease,transform .15s ease}
.gc-pp-ask-question:hover{background:rgba(var(--gc-accent-rgb), 0.18);border-color:rgba(var(--gc-accent-rgb), 0.55);color:var(--gc-accent);transform:translateY(-1px)}
.gc-pp-ask-question:focus-visible{outline:2px solid var(--gc-accent);outline-offset:2px}
.gc-pp-ask-question__icon{position:relative;width:20px;height:20px;flex:0 0 auto;border-radius:calc(var(--gc-radius-scale, 1) * 6px);background:rgba(var(--gc-accent-rgb), 0.22);display:inline-flex}
.gc-pp-ask-question__icon::before{content:"";position:absolute;inset:4px 5px 8px 4px;border-radius:calc(var(--gc-radius-scale, 1) * 4px);background:currentColor;opacity:.85}
.gc-pp-ask-question__icon::after{content:"";position:absolute;left:6px;bottom:3px;border-style:solid;border-width:4px 4px 0 0;border-color:currentColor transparent transparent transparent;opacity:.85}

/* GC_MULTIPERIOD_V1: multi-period subscription tier picker */
.gc-storefront-subscription-cta--multi { display:flex; flex-direction:column; gap:10px; align-items:flex-start; }
.gc-storefront-sub-plans { display:flex; flex-wrap:wrap; gap:8px; width:100%; }
.gc-storefront-sub-plan { display:flex; flex-direction:column; gap:2px; padding:10px 14px; border:1px solid rgba(255,255,255,.18); border-radius:calc(var(--gc-radius-scale, 1) * 12px); background:rgba(var(--gc-slate-rgb), .45); color:#fff; text-decoration:none; min-width:108px; transition:border-color .15s ease, transform .15s ease; }
.gc-storefront-sub-plan:hover { border-color:#facc15; transform:translateY(-1px); }
.gc-storefront-sub-plan__period { font-weight:700; font-size:13px; letter-spacing:.02em; }
.gc-storefront-sub-plan__price { font-size:15px; font-weight:700; }
.gc-storefront-sub-plan__per-month { font-size:11px; opacity:.75; }
.gc-storefront-sub-plan .woocommerce-Price-amount { color:inherit; }
@media (max-width: 640px) { .gc-storefront-sub-plan { flex:1 1 calc(50% - 4px); min-width:0; } }

/* ============================================================================
   GC_MULTIPERIOD_V1: Subscribe CTA + Modal
   ============================================================================ */

.gc-sub-cta-btn {
  display: inline-flex; align-items: center; gap: 10px;
  padding: 10px 16px; border: none; border-radius: var(--gc-radius-pill);
  background: linear-gradient(135deg, #f6c453 0%, #d39c3a 60%, #b67e22 100%);
  color: #1b1004; font-weight: 700; font-size: 14px;
  letter-spacing: 0.01em; cursor: pointer;
  box-shadow: 0 2px 12px rgba(214,161,60,0.32), inset 0 1px 0 rgba(255,255,255,0.4);
  transition: transform 0.15s ease, box-shadow 0.15s ease, filter 0.15s ease;
  text-decoration: none; line-height: 1;
}
.gc-sub-cta-btn:hover, .gc-sub-cta-btn:focus-visible {
  transform: translateY(-1px);
  box-shadow: 0 4px 18px rgba(214,161,60,0.45), inset 0 1px 0 rgba(255,255,255,0.5);
  filter: brightness(1.04); outline: none;
}
.gc-sub-cta-btn:active { transform: translateY(0); }
.gc-sub-cta-btn__icon { font-size: 16px; line-height: 1; }
.gc-sub-cta-btn__label { white-space: nowrap; }
.gc-sub-cta-btn__chips { display: inline-flex; gap: 4px; margin-left: 4px; }
.gc-sub-cta-btn__chip {
  display: inline-block; padding: 2px 7px; border-radius: var(--gc-radius-pill);
  background: rgba(27,16,4,0.22); color: #1b1004;
  font-size: 11px; font-weight: 700; line-height: 1.4;
}

.gc-sub-modal {
  position: fixed; inset: 0; z-index: 99999;
  display: flex; align-items: center; justify-content: center;
  padding: 20px;
}
.gc-sub-modal[hidden] { display: none !important; }
.gc-sub-modal__overlay {
  position: absolute; inset: 0;
  background: rgba(2,6,16,0.78);
  backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px);
  cursor: pointer;
}
.gc-sub-modal__panel {
  position: relative; width: 100%; max-width: 480px;
  max-height: calc(100vh - 40px);
  display: flex; flex-direction: column;
  background: linear-gradient(180deg, #11203a 0%, #0a1428 100%);
  color: var(--gc-text-soft);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: calc(var(--gc-radius-scale, 1) * 18px);
  box-shadow: 0 30px 80px rgba(0,0,0,0.55), 0 2px 0 rgba(255,255,255,0.04) inset;
  overflow: hidden;
  animation: gc-sub-modal-pop 0.2s ease-out;
}
@keyframes gc-sub-modal-pop {
  from { opacity: 0; transform: translateY(8px) scale(0.98); }
  to   { opacity: 1; transform: translateY(0)   scale(1); }
}
.gc-sub-modal__close {
  /* gc_sub_modal_close_44_v1 — 32px → 44px touch-target compliance (E.27 audit). */
  position: absolute; top: 10px; right: 12px;
  width: 44px; height: 44px; border: none;
  background: rgba(255,255,255,0.06); color: var(--gc-text-soft);
  font-size: 22px; line-height: 1;
  border-radius: 50%; cursor: pointer; z-index: 2;
  transition: background 0.15s ease;
}
.gc-sub-modal__close:hover { background: rgba(255,255,255,0.14); }
.gc-sub-modal__head {
  padding: 20px 56px 14px 24px;
  font-size: 18px; font-weight: 700;
  border-bottom: 1px solid rgba(255,255,255,0.06);
  background: linear-gradient(180deg, rgba(246,196,83,0.08) 0%, transparent 100%);
}
.gc-sub-modal__body { padding: 18px 24px 4px; overflow-y: auto; flex: 1 1 auto; }
.gc-sub-modal__intro {
  display: flex; align-items: center; flex-wrap: wrap;
  gap: 14px 18px; padding-bottom: 16px;
  border-bottom: 1px solid rgba(255,255,255,0.06);
  margin-bottom: 16px;
}
.gc-sub-modal__avatar {
  flex: 0 0 auto; width: 56px; height: 56px;
  border-radius: 50%; overflow: hidden;
  background: rgba(255,255,255,0.08);
}
.gc-sub-modal__avatar img { width: 100%; height: 100%; object-fit: cover; display: block; }
.gc-sub-modal__intro-text { flex: 1 1 auto; min-width: 120px; }
.gc-sub-modal__creator-name { font-size: 16px; font-weight: 700; color: #f6c453; }
.gc-sub-modal__benefits {
  flex: 1 1 100%;
  list-style: none; margin: 0; padding: 0;
  display: grid; gap: 8px;
  font-size: 14px; color: #cdd5e3;
}
.gc-sub-modal__benefits li { display: flex; align-items: center; gap: 10px; }
.gc-sub-modal__benefit-icon {
  flex: 0 0 auto; width: 22px; height: 22px;
  display: inline-flex; align-items: center; justify-content: center;
  background: rgba(246,196,83,0.16); color: #f6c453;
  border-radius: 50%; font-size: 12px;
}

.gc-sub-modal__plans { display: grid; gap: 10px; margin-bottom: 16px; }
.gc-sub-modal__plan {
  display: flex; align-items: center; justify-content: space-between;
  gap: 14px; padding: 14px 16px;
  border: 1.5px solid rgba(255,255,255,0.08);
  border-radius: calc(var(--gc-radius-scale, 1) * 12px);
  background: rgba(255,255,255,0.03);
  cursor: pointer;
  transition: border-color 0.15s ease, background 0.15s ease, transform 0.1s ease;
}
.gc-sub-modal__plan:hover {
  border-color: rgba(246,196,83,0.4);
  background: rgba(246,196,83,0.05);
}
.gc-sub-modal__plan.is-selected {
  border-color: #f6c453;
  background: linear-gradient(135deg, rgba(246,196,83,0.12) 0%, rgba(246,196,83,0.04) 100%);
  box-shadow: 0 0 0 3px rgba(246,196,83,0.18);
}
.gc-sub-modal__plan-main { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.gc-sub-modal__plan-title { font-size: 14px; font-weight: 600; color: var(--gc-text-soft); }
.gc-sub-modal__plan-title strong { color: #f6c453; margin-right: 4px; }
.gc-sub-modal__plan-sub { font-size: 12px; color: #8b97ad; }
.gc-sub-modal__plan-price { flex: 0 0 auto; text-align: right; white-space: nowrap; }
.gc-sub-modal__plan-price strong { font-size: 18px; font-weight: 700; color: var(--gc-text-soft); }
.gc-sub-modal__plan-price small { display: block; font-size: 11px; color: #8b97ad; font-weight: 500; }

.gc-sub-modal__consent {
  display: flex; align-items: flex-start; gap: 10px;
  padding: 12px;
  background: rgba(255,255,255,0.03);
  border-radius: calc(var(--gc-radius-scale, 1) * 10px);
  margin-bottom: 16px;
  font-size: 12px; line-height: 1.5; color: #b9c2d3;
  cursor: pointer;
}
.gc-sub-modal__consent input[type="checkbox"] {
  flex: 0 0 auto; margin-top: 2px;
  accent-color: #f6c453; width: 16px; height: 16px;
  cursor: pointer;
}
.gc-sub-modal__consent a { color: #f6c453; text-decoration: underline; }

.gc-sub-modal__foot {
  display: flex; gap: 10px;
  padding: 14px 24px 18px;
  border-top: 1px solid rgba(255,255,255,0.06);
  background: rgba(0,0,0,0.18);
}
.gc-sub-modal__cancel,
.gc-sub-modal__submit {
  flex: 1 1 50%;
  display: inline-flex; align-items: center; justify-content: center;
  padding: 12px 18px; border-radius: calc(var(--gc-radius-scale, 1) * 10px);
  font-weight: 700; font-size: 14px;
  cursor: pointer; text-decoration: none; border: none;
  transition: transform 0.1s ease, filter 0.15s ease, box-shadow 0.15s ease;
}
.gc-sub-modal__cancel { background: rgba(255,255,255,0.06); color: #cdd5e3; }
.gc-sub-modal__cancel:hover { background: rgba(255,255,255,0.12); }
.gc-sub-modal__submit {
  background: linear-gradient(135deg, #f6c453 0%, #d39c3a 60%, #b67e22 100%);
  color: #1b1004;
  box-shadow: 0 2px 12px rgba(214,161,60,0.35);
}
.gc-sub-modal__submit:hover { filter: brightness(1.05); transform: translateY(-1px); }
.gc-sub-modal__submit[aria-disabled="true"] {
  filter: grayscale(0.6); opacity: 0.55;
  cursor: not-allowed; pointer-events: none; box-shadow: none;
}

body.gc-sub-modal-open { overflow: hidden; }

@media (max-width: 480px) {
  .gc-sub-modal { padding: 0; }
  .gc-sub-modal__panel {
    max-width: 100%; max-height: 100vh;
    border-radius: 0; height: 100vh;
  }
  .gc-sub-modal__head { padding-right: 60px; }
  .gc-sub-cta-btn__chips { display: none; }
  .gc-sub-cta-btn { padding: 10px 18px; }
}

/* GC_MULTIPERIOD_V1 button width fix */
.gc-sub-cta-btn { align-self: flex-start; width: max-content; max-width: 100%; }


/* GC_MULTIPERIOD_V1: position subscribe CTA top-right inside the storefront identity card */
.gc-storefront-identity-card { position: relative; }
.gc-storefront-identity-card__cta {
    position: absolute;
    top: clamp(14px, 2vw, 22px);
    right: clamp(14px, 2vw, 22px);
    z-index: 2;
    display: flex;
    align-items: flex-start;
    justify-content: flex-end;
    pointer-events: none;
}
.gc-storefront-identity-card__cta > * { pointer-events: auto; }
.gc-storefront-identity-card__cta .gc-sub-cta-btn { width: auto; max-width: none; align-self: auto; }
.gc-storefront-identity-card__cta:empty { display: none; }
@media (max-width: 720px) {
    .gc-storefront-identity-card__cta {
        position: static;
        margin-bottom: 8px;
        justify-content: flex-start;
    }
}

/* gc_library_deep_link_v1 (2026-04-27) - flash highlight on a deep-linked VOD card */
.gc-account-library-card--deep-link {
    box-shadow: 0 0 0 2px var(--gc-accent, var(--gc-accent)), 0 0 24px rgba(var(--gc-accent-rgb), 0.45);
    animation: gc-deep-link-pulse 1.6s ease-out 1;
}
@keyframes gc-deep-link-pulse {
    0%   { box-shadow: 0 0 0 4px var(--gc-accent, var(--gc-accent)), 0 0 32px rgba(var(--gc-accent-rgb), 0.7); }
    100% { box-shadow: 0 0 0 2px var(--gc-accent, var(--gc-accent)), 0 0 12px rgba(var(--gc-accent-rgb), 0.25); }
}


/* gc_subroom_v1_paywall_css BEGIN -- subscribers-only paywall variant. */
.gc-live-player__premium-gate--subscribers-only:not([hidden]) { display: flex; }
.gc-live-player__premium-gate--subscribers-only { background: radial-gradient(circle at 30% 0%, rgba(255,216,122,0.20), transparent 55%), radial-gradient(circle at 70% 100%, rgba(255,196,100,0.14), transparent 55%), rgba(10,13,22,0.94); }
.gc-live-player__premium-gate--subscribers-only .gc-live-player__premium-gate-inner { border-color: rgba(255,216,122,0.35); background: linear-gradient(160deg, rgba(28,23,14,0.94) 0%, rgba(15,13,8,0.96) 100%); }
.gc-live-player__premium-gate--subscribers-only .gc-live-player__premium-gate-inner::before { background: linear-gradient(135deg, rgba(255,216,122,0.55), rgba(255,196,100,0.55) 50%, rgba(255,216,122,0.35)); }
.gc-live-player__premium-gate--subscribers-only .gc-live-player__premium-gate-inner::after { content: "\2605 SUBSCRIBERS ONLY"; background: linear-gradient(180deg, rgba(255,216,122,0.20), rgba(212,161,75,0.14)); border-color: rgba(255,216,122,0.45); color: #ffd87a; }
.gc-live-player__premium-gate--subscribers-only .gc-button--primary,
.gc-live-player__premium-gate--subscribers-only [data-gc-live-subroom-subscribe] { background: linear-gradient(180deg, #ffd87a 0%, #d4a14b 100%); border-color: rgba(255,216,122,0.65); color: #1a1208; text-shadow: none; box-shadow: 0 10px 24px -8px rgba(255,216,122,0.5), 0 0 0 1px rgba(255,216,122,0.15), inset 0 1px 0 rgba(255,255,255,0.32); }
.gc-live-player__premium-gate--subscribers-only .gc-button--primary:hover,
.gc-live-player__premium-gate--subscribers-only [data-gc-live-subroom-subscribe]:hover { filter: brightness(1.08); box-shadow: 0 14px 30px -10px rgba(255,216,122,0.65); }
[data-gc-subroom-active="1"] [data-gc-live-chat-composer],
[data-gc-subroom-active="1"] [data-gc-live-tip-trigger],
[data-gc-subroom-active="1"] [data-gc-live-pm-trigger],
[data-gc-subroom-active="1"] .gc-live-action-bar__btn--tip,
[data-gc-subroom-active="1"] .gc-live-action-bar__btn--pm,
[data-gc-subroom-active="1"] .gc-live-action-bar__btn--auto-tip,
[data-gc-subroom-active="1"] .gc-live-action-bar__btn--toy { display: none !important; }
[data-gc-subroom-active="1"] .gc-live-chat-card .gc-live-chat-list,
[data-gc-subroom-active="1"] .gc-live-chat-card .gc-live-chat-tabs { display: none !important; }
[data-gc-subroom-active="1"] .gc-live-chat-card::before { content: "Subscribe to join this room's chat."; display: block; padding: 24px 16px; color: rgba(255,216,122,0.85); font-size: 0.95rem; text-align: center; border-radius: calc(var(--gc-radius-scale, 1) * 12px); background: rgba(255,216,122,0.06); border: 1px solid rgba(255,216,122,0.15); margin: 12px; }
/* gc_subroom_v1_paywall_css END */


/* gc_subroom_v1_mobile_paywall_phase6 BEGIN -- mobile paywall card tighter padding + readable copy. */
@media (max-width: 639px) {
    .gc-live-player__premium-gate--subscribers-only .gc-live-player__premium-gate-inner { padding: 22px 18px; gap: 12px; padding-top: 32px; }
    .gc-live-player__premium-gate--subscribers-only .gc-live-player__premium-gate-text { font-size: 0.92rem; line-height: 1.45; }
    .gc-live-player__premium-gate--subscribers-only .gc-live-player__premium-gate-actions { flex-direction: column; gap: 10px; width: 100%; }
    .gc-live-player__premium-gate--subscribers-only .gc-live-player__premium-gate-actions .gc-button { width: 100%; padding: 12px 18px; }
    .gc-live-card.is-locked::after { font-size: 0.72rem; padding: 6px 12px; letter-spacing: 0.04em; }
}
/* gc_subroom_v1_mobile_paywall_phase6 END */


/* gc_subroom_v1_phase6_hotfix4 BEGIN -- suppress outer PREMIUM badge + fix action-bar selectors. */
.gc-live-player__premium-gate--subscribers-only::after { content: "" !important; display: none !important; }
[data-gc-subroom-active="1"] .gc-live-actionbar__btn,
[data-gc-subroom-active="1"] .gc-live-actionbar { display: none !important; }
[data-gc-subroom-active="1"] .gc-live-chat-tip-trigger { display: none !important; }
/* gc_subroom_v1_phase6_hotfix4 END */


/* gc_subroom_v1_phase6_hotfix5_v2 BEGIN -- mobile paywall layout polish (v2). */
@media (max-width: 639px) {
    /* Outer gate fills the player area but shrinks padding so inner card fits. */
    .gc-live-player__premium-gate--subscribers-only { padding: 16px !important; box-sizing: border-box; }
    /* Inner card occupies full available width with extra top padding to clear the badge. */
    .gc-live-player__premium-gate--subscribers-only .gc-live-player__premium-gate-inner { padding: 52px 18px 20px !important; gap: 12px !important; width: 100%; max-width: 100%; box-sizing: border-box; min-height: 360px; }
    /* Badge: smaller, single-line, anchored to the inner-card top. */
    .gc-live-player__premium-gate--subscribers-only .gc-live-player__premium-gate-inner::after { top: 12px !important; font-size: 0.6rem !important; padding: 4px 10px !important; letter-spacing: 0.12em !important; white-space: nowrap !important; }
    /* Title fits on 1 line at 390px. */
    .gc-live-player__premium-gate--subscribers-only .gc-live-player__premium-gate-title { font-size: 1.35rem !important; line-height: 1.15 !important; margin: 0 !important; }
    /* Body legible. */
    .gc-live-player__premium-gate--subscribers-only .gc-live-player__premium-gate-text { font-size: 0.85rem !important; line-height: 1.4 !important; margin: 0 !important; }
    /* Stacked CTAs, full-width. */
    .gc-live-player__premium-gate--subscribers-only .gc-live-player__premium-gate-actions { flex-direction: column !important; gap: 10px !important; width: 100% !important; }
    .gc-live-player__premium-gate--subscribers-only .gc-live-player__premium-gate-actions .gc-button { width: 100% !important; padding: 12px 16px !important; }
    /* Player must be tall enough so the whole card is visible. */
    [data-gc-subroom-active="1"] .gc-live-player.has-premium-gate, [data-gc-subroom-active="1"] .gc-live-player { min-height: 460px; }
    /* Locked card pill on overview — smaller font on mobile. */
    .gc-live-card.is-locked::after { font-size: 0.7rem !important; padding: 6px 12px !important; letter-spacing: 0.04em !important; }
}
/* gc_subroom_v1_phase6_hotfix5_v2 END */


/* gc_subroom_v1_phase6_hotfix5_v3 BEGIN -- mobile paywall v3 — drop player aspect-ratio in sub-only state. */
@media (max-width: 639px) {
    /* Let the player grow to fit the paywall card. */
    [data-gc-subroom-active="1"] .gc-live-player { aspect-ratio: auto !important; min-height: auto !important; height: auto !important; }
    [data-gc-subroom-active="1"] .gc-live-player__premium-gate--subscribers-only { position: relative !important; padding: 14px !important; }
    [data-gc-subroom-active="1"] .gc-live-player__premium-gate--subscribers-only .gc-live-player__premium-gate-inner { padding: 44px 16px 18px !important; gap: 10px !important; min-height: 0 !important; }
    .gc-live-player__premium-gate--subscribers-only .gc-live-player__premium-gate-inner::after { top: 10px !important; font-size: 0.58rem !important; padding: 3px 9px !important; letter-spacing: 0.1em !important; white-space: nowrap !important; }
    .gc-live-player__premium-gate--subscribers-only .gc-live-player__premium-gate-title { font-size: 1.25rem !important; line-height: 1.15 !important; margin: 0 !important; }
    .gc-live-player__premium-gate--subscribers-only .gc-live-player__premium-gate-text { font-size: 0.82rem !important; line-height: 1.4 !important; margin: 0 !important; padding: 0 !important; }
    .gc-live-player__premium-gate--subscribers-only .gc-live-player__premium-gate-actions { flex-direction: column !important; gap: 8px !important; width: 100% !important; margin-top: 4px; }
    .gc-live-player__premium-gate--subscribers-only .gc-live-player__premium-gate-actions .gc-button { width: 100% !important; padding: 11px 14px !important; font-size: 0.95rem !important; }
}
/* gc_subroom_v1_phase6_hotfix5_v3 END */

/* gc_phase_q_logo: brand logo sized for sticky header (min-height 82px). */
.gc-brand-logo {
    height: auto;
    max-height: 56px;
    max-width: 220px;
    width: auto;
    display: block;
}
@media (max-width: 600px) {
    .gc-brand-logo {
        max-height: 44px;
        max-width: 180px;
    }
}

/* Phase 21 — gc_defect4_edit_account_FIXED_save
   v3 — Use position:fixed instead of sticky at mobile because an ancestor
   (.gc-wrap.gc-commerce-shell__inner) has overflow-y:auto, trapping
   sticky in a non-scrolling containing block. fixed bypasses it.

   Belt-and-braces:
   - keep the existing form unchanged on tablet/desktop
   - add bottom-padding to the form on mobile so the fixed bar doesn't
     cover the last form input row when scrolled to bottom
   - constrain the bar to max-width 100% of viewport at mobile for now
     (the form column IS already viewport-width on mobile due to grid
     collapse in section--account at 768)
*/
@media (max-width: 768px) {
  body.woocommerce-account .gc-commerce-panel .woocommerce form.woocommerce-EditAccountForm {
    /* room for the fixed savebar so the last form-row isn't covered */
    padding-bottom: calc(96px + env(safe-area-inset-bottom, 0px));
  }
  body.woocommerce-account .gc-commerce-panel .woocommerce form.woocommerce-EditAccountForm > p:last-child:has(button[name="save_account_details"]) {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 30;
    margin: 0;
    padding: 12px 16px calc(12px + env(safe-area-inset-bottom, 0px));
    background: linear-gradient(180deg, rgba(var(--gc-surface-2-rgb), 0.92) 0%, rgba(var(--gc-surface-rgb), 0.99) 60%, rgba(var(--gc-surface-rgb), 1) 100%);
    border-top: 1px solid rgba(var(--gc-border-rgb), 0.18);
    -webkit-backdrop-filter: blur(12px);
            backdrop-filter: blur(12px);
    box-shadow: 0 -8px 24px rgba(0, 0, 0, 0.35);
  }
  body.woocommerce-account .gc-commerce-panel .woocommerce form.woocommerce-EditAccountForm > p:last-child:has(button[name="save_account_details"]) button[name="save_account_details"] {
    width: 100%;
    min-height: 48px;
    margin: 0;
  }
  /* Fallback for browsers without :has(): the submit <p> is the only
     unclassed direct <p> child of the form. */
  @supports not selector(:has(*)) {
    body.woocommerce-account .gc-commerce-panel .woocommerce form.woocommerce-EditAccountForm > p:not([class]):last-child {
      position: fixed;
      left: 0; right: 0; bottom: 0;
      z-index: 30;
      margin: 0;
      padding: 12px 16px calc(12px + env(safe-area-inset-bottom, 0px));
      background: linear-gradient(180deg, rgba(var(--gc-surface-2-rgb), 0.92) 0%, rgba(var(--gc-surface-rgb), 0.99) 60%, rgba(var(--gc-surface-rgb), 1) 100%);
      border-top: 1px solid rgba(var(--gc-border-rgb), 0.18);
      -webkit-backdrop-filter: blur(12px);
              backdrop-filter: blur(12px);
      box-shadow: 0 -8px 24px rgba(0, 0, 0, 0.35);
    }
    body.woocommerce-account .gc-commerce-panel .woocommerce form.woocommerce-EditAccountForm > p:not([class]):last-child button[name="save_account_details"] {
      width: 100%;
      min-height: 48px;
      margin: 0;
    }
  }
}

/* Phase 21 follow-up — gc_defect4_hide_trp_switcher_on_savebar
   On /my-account/edit-account/ at <=768, the fixed savebar from Phase 21
   (gc_defect4_edit_account_FIXED_save) sits at the viewport bottom and
   the TranslatePress .trp-floating-switcher floats over its right edge
   making the Save button look broken. Hide the switcher only on this
   page + breakpoint. Translation is still reachable via the existing
   in-banner / in-footer language UI elsewhere. */
@media (max-width: 768px) {
  body.woocommerce-account.woocommerce-edit-account .trp-floating-switcher,
  body.woocommerce-account .trp-floating-switcher.trp-bottom-right {
    display: none !important;
  }
}

/* Phase 22 — gc_8_8a_tip_overlay_mobile_fixed (2026-05-04)
   8.8.a P0: clicking Send Tip on mobile (380x800) caused the page to jump
   down ~391px because .gc-live-chat-tip-overlay uses position:absolute
   relative to the chat panel ancestor. On small viewports the chat panel
   renders below the player at full content height, so when the overlay
   mounted the browser auto-scrolled the absolute element into view.
   Override to position:fixed at <=767px so the modal is viewport-relative
   and stays put regardless of scroll. */
@media (max-width: 767px) {
  .gc-live-chat-tip-overlay {
    position: fixed;
    inset: 12px;
    height: auto;
    z-index: 1000;
  }
  /* Lock background scroll while overlay is open. JS toggles aria-hidden
     in openTipOverlay/closeTipOverlay so we can target the open state
     without needing a class change. */
  body:has(.gc-live-chat-tip-overlay[aria-hidden="false"]) {
    overflow: hidden;
  }
}

/* Phase 23 — gc_header_search_overflow_v1 (2026-05-04)
   At 1241-1500px desktop viewports the .gc-header-search overflowed past the
   header-inner right edge by ~146px because flex-basis 500 + min-width
   min(100%,340px) + grid columns 170+150+52=372 didn't fit in the ~163px
   horizontal slot remaining after logo + nav. Tighten the search at this
   intermediate range so it shrinks to the available space without wrapping. */
@media (min-width: 1241px) and (max-width: 1500px) {
  .gc-header-search {
    flex: 0 1 360px;
    min-width: 0;
    grid-template-columns: minmax(0, 1fr) minmax(0, 180px) 48px;
  }
  .gc-header-search__input,
  .gc-header-search__select {
    min-width: 0;
  }
}

/* Phase 24 — gc_mobile_chat_panel_v1 (2026-05-04)
   Two related issues at iOS-class viewports (393x852, 380x800 etc.):
   (a) The base .gc-live-room-layout (line 16641) sets align-items:start as
       part of its desktop grid layout. The @media (max-width:1023px) flex
       override (line 18741) didn't reset align-items, so when the layout
       switched to flex-column, items sized to content not stretch — the
       chat sidebar rendered ~284 px in a 369 px wrap (~85 px dead space).
   (b) The 4-column tab grid drops to 2-column at <=1200px (line 16720),
       which on a phone produces a 2x2 wrap (Chat | PM / Users | Settings).
       Restore 4-col at <=767 with compact icon+label styling so all four
       tabs fit in a single row at narrow widths. */
@media (max-width: 1023px) {
  .gc-live-room-layout {
    align-items: stretch;
  }
  .gc-live-room-sidebar,
  .gc-live-chat-card {
    width: 100%;
  }
}
@media (max-width: 767px) {
  .gc-live-chat-card__tabs {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .gc-live-chat-card__tabs button {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 2px;
    min-height: 48px;
    padding: 6px 4px;
    font-size: 10px;
    line-height: 1;
    letter-spacing: .04em;
  }
  .gc-live-chat-card__tab-icon svg {
    width: 16px;
    height: 16px;
  }
}

/* Phase 25 — gc_mobile_touch_targets_v1 (2026-05-04)
   At <=767 px the chat compose emoji/send buttons are 34x34 (line 16885),
   below the iOS HIG minimum 44x44 touch target. Bump them to 44x44 and
   scale the inner SVG to 20px to keep the visual ratio. */
@media (max-width: 767px) {
  .gc-live-chat-compose__emoji,
  .gc-live-chat-compose__send {
    width: 44px;
    height: 44px;
  }
  .gc-live-chat-compose__emoji svg,
  .gc-live-chat-compose__send svg {
    width: 20px;
    height: 20px;
  }
}

/* Phase 26 — gc_mobile_confirm_btn_v1 (2026-05-04)
   Tip-menu + Lovense confirm buttons render at 31px tall on mobile (padding
   6px 14px + font-size 12px). Bump to 44+ px on touch viewports for iOS HIG
   compliance. */
@media (max-width: 767px) {
  .gc-live-tip-menu-confirm__btn {
    padding: 12px 18px;
    font-size: 13px;
    min-height: 44px;
  }
}

/* Phase 27 — gc_mobile_actionbar_touch_v1 (2026-05-04)
   Action-bar buttons (.gc-live-actionbar__btn) render at min-height 40 px
   (line 17056). The favorite button is 40x40. Player controls and quick-tip
   pills run 27-38 px. None meet the iOS HIG 44x44 touch target. Bump on
   touch viewports without changing visual style elsewhere. */
@media (max-width: 767px) {
  .gc-live-actionbar__btn,
  .gc-live-actionbar__btn--primary {
    min-height: 44px;
  }
  .gc-live-actionbar__btn--fav {
    width: 44px;
    height: 44px;
  }
  /* Player overlay controls (Controls / Tip menu / Goals / Toy / Quality / Zoom / PiP / Fullscreen) */
  .gc-live-player__control,
  .gc-live-controls__btn,
  .gc-live-overlay-btn {
    min-height: 44px;
    min-width: 44px;
  }
  /* Quick-tip activity pills below the actionbar (blowjob / deepthroat / gagging / cbt etc.) */
  .gc-live-actionbar__activity,
  .gc-live-actionbar__activity-chip,
  .gc-quick-tip-chip,
  [class*="quick-tip"] {
    min-height: 40px;
    padding-top: 8px;
    padding-bottom: 8px;
  }
}

/* Phase 28 — gc_premium_gate_mobile_fit_v1 (2026-05-04)
   At <=767 px the .gc-live-player.has-premium-gate has aspect-ratio:16/9
   (base, line 16644) + min-height:360px (line 18311 belt-and-suspenders).
   Combined those resolve to width = 360 * 16/9 = 640 px, which on a 393
   viewport overflows by 247 px and the premium gate (.gc-live-player__premium-gate
   has position:absolute inset:0) inherits the same overflow. Result: the
   "Top up wallet" CTA and the gate body text get clipped on the right.
   Drop aspect-ratio + relax min-height at mobile so the player sizes to
   parent width and the gate content fits. */
@media (max-width: 767px) {
  .gc-live-player.has-premium-gate {
    aspect-ratio: auto !important;
    min-height: 280px !important;
  }
  /* Same treatment for the collab variants in case both classes co-exist. */
  .gc-live-player.has-premium-gate.gc-live-player--has-collab {
    aspect-ratio: auto !important;
    min-height: 280px !important;
  }
  /* Make sure the gate's inner card never exceeds its container. */
  .gc-live-player__premium-gate-inner {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box;
  }
  /* Force CTAs to stack on mobile (the existing rule targets
     gc-live-player__premium-gate-actions but the actual DOM uses
     gc-live-player__premium-actions per the v1_1 selectors). */
  .gc-live-player__premium-actions {
    flex-direction: column !important;
    align-items: stretch !important;
    width: 100%;
  }
  .gc-live-player__premium-actions .gc-button,
  .gc-live-player__premium-actions a,
  .gc-live-player__premium-actions button {
    width: 100%;
    min-width: 0;
    box-sizing: border-box;
  }
}

/* Phase 29 — gc_private_modal_close_touch_v1 (2026-05-04)
   The .gc-private-modal__close button renders 32x32 on mobile, below the
   iOS HIG 44x44 touch target minimum. */
@media (max-width: 767px) {
  .gc-private-modal__close {
    width: 44px;
    height: 44px;
    min-width: 44px;
    min-height: 44px;
  }
}

/* Phase 30 — gc_premium_gate_mobile_height_v1 (2026-05-04)
   Phase 28 set .gc-live-player.has-premium-gate { min-height: 280px } but
   the gate is position:absolute; inset:0; overflow:hidden — so it fills
   the player exactly and clips anything past 280 px. With ~380 px of
   content (PREMIUM badge ribbon + title + body + meta pill + 2 stacked
   CTAs + paddings), the bottom of "Top up wallet" was cut and the title
   sat over the PREMIUM badge ribbon. Fix: make the gate position:relative
   on mobile so it sizes to its own content; the player no longer needs
   an explicit min-height. Bump padding-top so the title clears the badge. */
@media (max-width: 767px) {
  .gc-live-player.has-premium-gate {
    aspect-ratio: auto !important;
    min-height: 0 !important;
  }
  .gc-live-player.has-premium-gate .gc-live-player__premium-gate {
    position: relative !important;
    inset: auto !important;
    height: auto !important;
    width: 100%;
    min-height: 360px;
    padding: 56px 22px 24px !important;
    overflow: visible !important;
  }
  .gc-live-player.has-premium-gate .gc-live-player__premium-gate-inner {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box;
  }
  .gc-live-player.has-premium-gate [data-gc-live-premium-title],
  .gc-live-player.has-premium-gate .gc-live-player__premium-gate-title {
    margin-top: 4px !important;
  }
}

/* Phase 31 — gc_private_modal_cards_overflow_v1 (2026-05-04)
   The v1_1 restyle (line 17880-) added `overflow: hidden` on
   .gc-private-modal__card which clips children if the card height is
   constrained. Combined with the JS-injected base `.gc-private-modal__card
   { flex: 1 1 0 }` (in flex-column on mobile), cards started at 0 height
   and grew to children only when content was visible — but with
   overflow:hidden, the children flow below the (height:42) card and
   get clipped. Result: the user saw only the heart/crown icons + empty
   cards, with the title + Start button + features + tags all hidden.
   Fix: drop overflow:hidden + force cards to auto-size to their content. */
.gc-private-modal__card {
  /* gc_private_modal_cards_flex_v2 (2026-05-06)
     Phase 31 used flex:0 0 auto here, which made each card size to its
     content. The Private card's "You can enjoy" tag list ballooned past
     720px on desktop, blowing the modal + viewport. Restore the
     JS-injected `flex: 1 1 0` so both cards share the row equally and
     add `min-width: 0` so flex shrinking ignores intrinsic content
     min-width. `overflow: hidden` contains any future runaways. */
  overflow: hidden !important;
  flex: 1 1 0 !important;
  min-width: 0 !important;
  height: auto !important;
}
@media (max-width: 640px) {
  /* Stack cards full-width on mobile */
  .gc-private-modal__card {
    width: 100% !important;
    flex: 1 1 100% !important;
    min-width: 0 !important;
  }
  /* Make sure the title doesn't render fully transparent in case the
     -webkit-background-clip:text fallback isn't honored — keep the gold
     fallback color so it remains readable. */
  .gc-private-modal__title {
    color: #fff !important;
    background: none !important;
    -webkit-background-clip: border-box !important;
    background-clip: border-box !important;
  }
  .gc-private-modal__title--exclusive {
    color: #ffd87a !important;
  }
}

/* Phase 32 — gc_voyeur_ticket_overlay_mobile_v1 (2026-05-04)
   The voyeur (.gc-live-player__premium-gate--voyeur) and ticket
   (.gc-live-player__premium-gate--ticket) overlays both carry
   .gc-premium-gate-overlay (line 18024 in v2 visual restyle) which sets
   position:absolute + overflow:hidden + min-height:0. They're injected
   over .gc-live-player-card. On mobile the player-card has a constrained
   height (~206-280 px) so the absolute overlay clips title/body/meta —
   only the CTAs were visible. Apply the same position:relative auto-size
   pattern as Phase 30 (premium gate) to these overlay variants. */
@media (max-width: 767px) {
  .gc-premium-gate-overlay,
  .gc-live-player__premium-gate--voyeur,
  .gc-live-player__premium-gate--ticket {
    position: relative !important;
    inset: auto !important;
    height: auto !important;
    width: 100%;
    min-height: 360px;
    overflow: visible !important;
    padding: 56px 22px 24px !important;
  }
  /* The player card needs to grow with the in-flow overlay too. */
  .gc-live-player-card:has(.gc-premium-gate-overlay),
  .gc-live-player-card:has(.gc-live-player__premium-gate--voyeur),
  .gc-live-player-card:has(.gc-live-player__premium-gate--ticket) {
    aspect-ratio: auto !important;
    min-height: 0 !important;
  }
  .gc-live-player-card:has(.gc-premium-gate-overlay) .gc-live-player,
  .gc-live-player-card:has(.gc-live-player__premium-gate--voyeur) .gc-live-player,
  .gc-live-player-card:has(.gc-live-player__premium-gate--ticket) .gc-live-player {
    aspect-ratio: auto !important;
    min-height: 0 !important;
  }
}

/* Phase 33 — gc_wallet_pill_mobile_touch_v1 (2026-05-04)
   Header wallet pill (.gc-header-wallet) renders 144x40 on mobile, below
   the iOS HIG 44x44 minimum. Bump to 44 height at touch viewports. */
@media (max-width: 767px) {
  .gc-header-wallet {
    min-height: 44px;
  }
}

/* Phase 33b — gc_wallet_pill_mobile_touch_v1_force (2026-05-04)
   Phase 33 used min-height:44 but computed `height: 40px` was set somewhere
   else (couldn't locate via grep). Force with !important. */
@media (max-width: 767px) {
  .gc-header-wallet {
    min-height: 44px !important;
    height: 44px !important;
  }
}

/* Phase 34 — gc_profile_tabs_mobile_touch_v1 (2026-05-04)
   .gc-live-profile__tab buttons are 38px tall on mobile, fail iOS HIG 44.
   Bump to 44 at <=767px. */
@media (max-width: 767px) {
  .gc-live-profile__tab {
    min-height: 44px !important;
    padding-top: 10px;
    padding-bottom: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }
}

/* Phase 35 -- gc_stream_ended_overlay_v1 (2026-05-04)
   When the broadcaster stops the stream, data-room-live flips to "0" on
   the layout root (.gc-wrap.gc-live-room-layout[data-gc-live-room]). The
   existing overlay-branch CSS (lines ~18271-18274) already toggles
   offline vs connecting branches, but two issues remained:
     (a) .gc-live-player__premium-gate is a SIBLING of the overlay and
         stays visible when the viewer had clicked Start watching,
         covering the offline-branch UI.
     (b) .gc-live-player__overlay only renders with .is-visible, which
         the JS poll only adds after ~35s of consecutive offline strikes.
   This patch:
     1. Hides every premium-gate variant when room is offline.
     2. Forces the overlay container to render immediately on
        data-room-live=0, surfacing the offline-branch CSS without
        waiting for the JS poll 10-strike threshold.
     3. Adds a STREAM ENDED eyebrow (Unicode star via CSS escape) above
        the existing is currently offline title so the viewer understands
        this is a stream-ended state, not a never-online state.
     4. Dims the stale LIVE / PREMIUM / 16 TOKENS / MIN pills so the
        viewer does not think the room is still active.
   No JS changes. Uses the existing .gc-offline-banner + .gc-offline-cta
   (Clips/Follow/Subscribe) structure already in page-live-room.php. */
[data-gc-live-room][data-room-live="0"] .gc-live-player__premium-gate {
  display: none !important;
}
[data-gc-live-room][data-room-live="0"] .gc-live-player__overlay {
  display: grid !important;
}
[data-gc-live-room][data-room-live="0"] .gc-offline-banner__title::before {
  content: "\2726  STREAM ENDED";
  letter-spacing: 0.18em;
  font-size: 0.7rem;
  display: block;
  color: #ffd87a;
  margin-bottom: 8px;
  font-weight: 700;
}
[data-gc-live-room][data-room-live="0"] .gc-live-room-pill,
[data-gc-live-room][data-room-live="0"] .gc-live-card__badge--live {
  opacity: 0.45;
}

/* Phase 36 -- gc_homepage_mobile_touch_targets_v1 (2026-05-05)
   E.1 audit (HANDOFF-PHASE-E-BROADER-SITE-QA.md) found 4 mobile
   touch-target families on / homepage below iOS HIG >=44 px:
     1. .gc-main-nav__link (header nav links: Home, Categories, Models,
        Live, All Clips, Models Login, My Account) -- h:40, padding
        explicit 0 14, min-height/height locked to 40.
     2. .gc-section-header__link (Browse all X links above each
        homepage section) -- h:25, display:flex, no vertical padding.
     3. .gc-clip-card__title a (clip card title link, distinct from
        cover link) -- h:20, inline.
     4. .gc-clip-card__store (creator name link inside clip card,
        distinct destination from cover) -- h:23, display:block,
        no padding.
   Fix: scoped to <=767 viewport, lift each to >=44 by min-height
   (nav links use display:flex + min-height) or vertical padding
   (section header + card text links). Mirrors Phase 27 (action-bar
   buttons), Phase 33b (wallet pill force-44), and Phase 34 (profile
   tabs) patterns. Cards grow ~30-40 px each on mobile but stay
   well within the existing flow -- no overflow risk because nothing
   constrains card heights in this region. Desktop layout unchanged. */
@media (max-width: 767px) {
  /* (1) Header nav links */
  .gc-main-nav__link {
    min-height: 44px !important;
    height: auto !important;
    display: flex;
    align-items: center;
  }
  /* (2) Section header See more links */
  .gc-section-header__link {
    min-height: 44px;
    padding-top: 10px;
    padding-bottom: 10px;
    box-sizing: border-box;
  }
  /* (3) Clip card title link */
  .gc-clip-card__title a {
    display: inline-block;
    min-height: 44px;
    padding-top: 12px;
    padding-bottom: 12px;
    box-sizing: border-box;
    line-height: 1.2;
  }
  /* (4) Clip card store creator name link */
  .gc-clip-card__store {
    display: inline-block;
    min-height: 44px;
    padding-top: 11px;
    padding-bottom: 11px;
    box-sizing: border-box;
    line-height: 1.4;
  }
}

/* Phase 37 -- gc_categories_mobile_touch_targets_v1 (2026-05-05)
   E.2 audit (HANDOFF-PHASE-E-BROADER-SITE-QA.md) found 3 mobile
   touch-target families on /all-categories/ below iOS HIG >=44 px:
     1. .gc-cat-link (249 category tag pills under each section
        Appearance/Activities/Attributes/Show type/Countries) --
        h:28, padding 4 8, font-size 13.
     2. .gc-allcats__mode (Live / Clips & Physical mode toggles
        in the page header) -- h:34, padding 7 18.
     3. .gc-allcats__jumplinks a (intra-page section-anchor links
        in the sticky sub-nav: Appearance, Activities, Attributes,
        Show type, Countries & Languages, Filter directly) -- h:33,
        padding 6 12.
   Fix: scoped to <=767 viewport, lift each to >=44 by additive
   vertical padding plus min-height defense. Mirrors Phase 36
   pattern. Page grows ~16 px x 249 cat links = ~4k px taller on
   mobile -- acceptable given the page is already a long vertical
   list and there is no horizontal-scroll risk (verified). Desktop
   layout unchanged. */
@media (max-width: 767px) {
  .gc-cat-link {
    min-height: 44px;
    padding: 12px 14px;
    box-sizing: border-box;
    align-items: center;
  }
  .gc-allcats__mode {
    min-height: 44px;
    padding: 12px 18px;
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
  }
  .gc-allcats__jumplinks a {
    min-height: 44px;
    padding: 12px 16px;
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
  }
}

/* Phase 38 -- gc_footer_cookie_mobile_touch_targets_v1 (2026-05-05)
   E.3 audit (HANDOFF-PHASE-E-BROADER-SITE-QA.md) found 4 sitewide
   chrome touch-target families below iOS HIG >=44 px on every
   anonymous page (footer + cookie banner are sitewide):
     1. .gc-footer__brand (footer wordmark link) -- h:40, padding 0,
        display:inline-block.
     2. .gc-footer__social-link (Twitter/Telegram/Instagram/Reddit/
        Discord/Bluesky badges in footer connect column) -- h:33,
        padding 6 12, display:inline-flex.
     3. .gc-footer__legal a (the bottom row of legal links: Terms /
        Privacy / Imprint / 18 U.S.C. 2257 / Report Content / NCC /
        Anti-SPAM) -- h:29, no padding, plain inline.
     4. .cmplz-close (Complianz cookie-banner close X) -- 20x20
        role=button, plugin element.
   Fix: scoped to <=767 viewport, lift each to >=44 by min-height +
   vertical padding + display:inline-flex with align-items:center
   so the link inflates without requiring layout changes around it.
   Sitewide benefit -- this clears the same 16 footer hits on
   every page in the Phase E sweep (E.4 .. E.40), so they stop
   appearing as defects in subsequent audits. Desktop unchanged. */
@media (max-width: 767px) {
  .gc-site-footer .gc-footer__brand {
    min-height: 44px;
    padding: 12px 0;
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
  }
  .gc-site-footer .gc-footer__social-link {
    min-height: 44px;
    padding: 12px 14px;
    box-sizing: border-box;
    align-items: center;
  }
  .gc-site-footer .gc-footer__legal a {
    min-height: 44px;
    padding: 12px 8px;
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
  }
  .cmplz-cookiebanner .cmplz-close,
  .cmplz-close[role="button"] {
    min-width: 44px;
    min-height: 44px;
    padding: 12px;
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }
}

/* ===========================================================================
   Phase 39 — gc_live_overview_and_footer_nav_mobile_touch_targets_v1 (E.4)
   2026-05-05 — extends Phase 36/37/38 mobile touch-target work to:
   - /live/ overview live segment tabs (.gc-live-v2__seg) — h:40 -> 44
   - /live/ filters drawer toggle (.gc-live-v2__rail-toggle) — h:42 -> 44
   - /live/ "Browse every category" link (.gc-live-v2__browse-all-link) — h:42 -> 44
   - sitewide footer EXPLORE column (.gc-footer__col--nav .gc-footer__list a) — h:28 -> 44
     (Phase 38 missed this column; fix here so it benefits every page.)
   Scoped strictly to @media (max-width:767px). Desktop preserved (40/42/28).
   =========================================================================== */
@media (max-width: 767px) {
  .gc-live-v2__seg {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
  }
  .gc-live-v2__rail-toggle {
    min-height: 44px;
  }
  .gc-live-v2__browse-all-link {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
  }
  .gc-site-footer .gc-footer__col--nav .gc-footer__list a {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
  }
}
/* Phase 39 END */

/* Phase 39 addendum (same ship cycle) — sitewide footer support-email link
   .gc-footer__col--connect .gc-footer__email a — was 139x28 (mailto:support@guyscat.com).
   Lifts to 44+. Found during Phase 39 verification on /live/. Same chrome family. */
@media (max-width: 767px) {
  .gc-site-footer .gc-footer__col--connect .gc-footer__email a {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
  }
}
/* Phase 39 addendum END */

/* ===========================================================================
   Phase 40 — gc_short_text_link_min_width_v1 (E.5)
   2026-05-05 — closes the 2nd-axis gap in P36 + P39:
   - P36 set min-height:44 on .gc-clip-card__title a (clip card titles) but
     short titles like "asd" rendered at 30 wide -> failed WCAG 2.5.5 width.
   - P39 set min-height:44 on .gc-footer__col--nav .gc-footer__list a but
     short labels like "Home" rendered at 39 wide -> same gap.
   Fix: add min-width:44px to both selectors at @media (max-width:767px).
   inline-flex + align-items:center already set by P36/P39 -> just need
   justify-content:center to keep text centered when min-width kicks in.
   Long-title clips (e.g. "QA-tier1-stickyfluff-1.43GB" at 240w) keep their
   intrinsic width because min-width is a floor.
   Desktop preserved (no @media match).
   =========================================================================== */
@media (max-width: 767px) {
  .gc-clip-card__title a {
    min-width: 44px;
    justify-content: center;
  }
  .gc-site-footer .gc-footer__col--nav .gc-footer__list a {
    min-width: 44px;
    justify-content: center;
  }
}
/* Phase 40 END */

/* ===========================================================================
   Phase 41 — gc_storefront_mobile_touch_targets_v1 (E.6)
   2026-05-05 — /store/<creator>/ WCFM single-store page mobile touch targets.
   Four families lifted to ≥44 at @media (max-width:767px):
   - .gc-sub-cta-btn (Subscribe CTA in identity card) — h:36 -> 44
   - .gc-storefront-tab x 5 (Buy Clips / Feed / Live Stream / Order Custom /
     Physical Items) — h:38 -> 44
   - .gc-storefront-socials__list a (Twitter / FB / IG / YT / LinkedIn / etc.)
     — w/h:38 -> 44 (also min-width for short labels like "Gplus")
   - .gc-pagination .page-numbers — 40x40 -> 44x44 (lifts both axes)
   Desktop (>=768) preserved (39/42/38/40 baselines).
   =========================================================================== */
@media (max-width: 767px) {
  .gc-sub-cta-btn {
    min-height: 44px;
  }
  .gc-storefront-tab {
    min-height: 44px;
  }
  .gc-storefront-socials__list a {
    min-height: 44px;
    min-width: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }
  .gc-pagination .page-numbers {
    min-height: 44px;
    min-width: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }
}
/* Phase 41 END */

/* ===========================================================================
   Phase 42 — gc_single_clip_mobile_touch_targets_v1 (E.7)
   2026-05-05 — single clip product page (/clips/<slug>/) mobile touch targets.
   Four families lifted to ≥44 at @media (max-width:767px):
   - .gc-clip-watch-category × 2 (Solo / Straight category pills under player)
     — h:34 -> 44
   - .gc-track-control × 2 (‹ › Recommended Clips track navigation arrows)
     — 38x38 -> 44x44 (square, both axes)
   - .comment-form .stars a × 5 (review rating star links 1-5)
     — h:20 -> 44 (clickable rating ranges)
   - .comment-form input[type="submit"] (Submit review button)
     — w:69 h:26 -> 44h with padding
   At-target chrome on this page (already passes pre-P42): Subscribe 133x44,
   Add to cart 168x46, Follow Me 113x44, Tip Me 87x44, Search 50x48,
   cookie banner 353x45.
   Desktop (>=768) preserved.
   =========================================================================== */
@media (max-width: 767px) {
  .gc-clip-watch-category {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
  }
  .gc-track-control {
    min-height: 44px;
    min-width: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }
  .comment-form .stars a {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
  }
  .comment-form input[type="submit"] {
    min-height: 44px;
    padding-top: 10px;
    padding-bottom: 10px;
  }
}
/* Phase 42 END */

/* ===========================================================================
   Phase 43 — gc_feed_card_byline_mobile_touch_targets_v1 (E.8)
   2026-05-05 — feed-card byline + read-more touch targets on storefront feed.
   Three families lifted to ≥44 at @media (max-width:767px):
   - .gc-feed-timeline-item__author (creator name link in byline) — h:24 -> 44
   - .gc-feed-timeline-item__date (relative timestamp link) — h:19/39/58 -> 44
   - .gc-feed-timeline-item__body-readmore ("Read more" expander) — h:30 -> 44
   On locked/paid cards, author + date elements were rendering as low as 7w due
   to a tighter byline flex layout — min-width:44 floors that.
   Note: gc_feed_post post-type is public=false (no single-page permalink).
   E.8 audit covers the inline render of feed cards on /store/<creator>/?tab=feed.
   Critical action footer (avatar 44x44, Follow 93x44, Like 50x44, Comment 46x44,
   Tip 115x44, Report 44x44) was already at-target pre-P43.
   Desktop (>=768) preserved (author 637x24, date 637x19, readmore 77x30).
   =========================================================================== */
@media (max-width: 767px) {
  .gc-feed-timeline-item__author {
    min-height: 44px;
    min-width: 44px;
  }
  .gc-feed-timeline-item__date {
    min-height: 44px;
    min-width: 44px;
  }
  .gc-feed-timeline-item__body-readmore {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
  }
}
/* Phase 43 END */

/* ===========================================================================
 * Phase 45 — /my-account/ dashboard hero copy column collapse fix (E.10)
 * Theme version 4.55.77 -> 4.55.78
 * Created 2026-05-05 during Phase E continuation.
 *
 * Bug surfaced by E.10 audit at 1440x900 (logged in as guyscattest):
 *   - .gc-account-dashboard__hero base template was
 *       grid-template-columns: minmax(min-content, 1.2fr) auto;
 *   - With 10 main action buttons the actions column (auto) consumed its
 *     natural content width (1049px), starving the copy column down to
 *     min-content (133px = the longest single token, here "guyscattest").
 *   - Result: the H2 "Welcome back, guyscattest" wrapped onto 3 lines at
 *     24px font, looking visually broken.
 *
 * Fix: at >=981px (the breakpoint above which the existing
 * collapse-to-single-column rule does NOT apply), specify both columns
 * with explicit fr ratios so neither can starve the other:
 *
 *   minmax(320px, 1fr) minmax(0, 1.4fr)
 *     -> copy at least 320px, flex 1fr
 *     -> actions max 1.4fr (caps natural max-content)
 *
 * Mobile (<=980px) untouched -- the existing rule
 *   @media (max-width: 980px) { .gc-account-dashboard__hero { grid-template-columns: 1fr; } }
 * still wins via cascade order.
 * ========================================================================= */
@media (min-width: 981px) {
  .gc-account-dashboard__hero {
    grid-template-columns: minmax(320px, 1fr) minmax(0, 1.4fr);
  }
}

/* ===========================================================================
 * Phase 46 — view-order.php status-aware email-banner modifiers (E.11)
 * Theme version 4.55.78 -> 4.55.79
 * Created 2026-05-05 during Phase E continuation.
 *
 * Adds amber `--warning` and red `--error` modifiers for the
 * gc-order-received__email-banner family (which previously only had
 * `--neutral` defined). Color palette matches the existing
 * gc-order-status-pill-- families so the banner ties visually to the
 * status pill rendered in the summary block above it:
 *   pending / on-hold       -> warning  (amber, rgba(251, 191, 36))
 *   failed / cancelled / refunded -> error    (red,   rgba(248, 113, 113))
 *
 * The PHP side (view-order.php) now picks the right variant based on
 * $order->get_status(). Completed/processing orders keep the existing
 * `--neutral` purple tint via the unchanged base rule at line 5853.
 * ========================================================================= */
.gc-order-received__email-banner--warning {
  border-color: rgba(251, 191, 36, 0.28);
  background: linear-gradient(135deg, rgba(251, 191, 36, 0.10), rgba(251, 191, 36, 0.04));
}

.gc-order-received__email-banner--warning .gc-order-received__email-banner-icon {
  color: rgb(251, 191, 36);
}

.gc-order-received__email-banner--error {
  border-color: rgba(248, 113, 113, 0.28);
  background: linear-gradient(135deg, rgba(248, 113, 113, 0.10), rgba(248, 113, 113, 0.04));
}

.gc-order-received__email-banner--error .gc-order-received__email-banner-icon {
  color: rgb(248, 113, 113);
}

/* Phase 48 (2026-05-05) — E.13: my-account inline-shell shop_table mobile rules.
   Theme owns WooCommerce styling, so woocommerce-smallscreen.css is not enqueued
   — without WC's stacked-card rules at <=760, the .shop_table_responsive cells
   render in their 5-column table layout, blowing .gc-account-inline-shell's
   implicit grid column to the table's min-content (~580px). That width propagates
   up to .gc-commerce-hero (~607px) and clips half the dashboard via overflow-x:
   hidden on .gc-commerce-shell__inner. Scoped to .gc-account-inline-shell so
   cart/checkout tables stay untouched. Surfaces fixed: /my-account/subscriptions/,
   /orders/, /downloads/, /payment-methods/. */
@media (max-width: 760px) {
  .gc-account-inline-shell {
    grid-template-columns: minmax(0, 1fr);
  }
  .gc-account-inline-shell table.shop_table_responsive {
    display: block;
    overflow-x: visible;
  }
  .gc-account-inline-shell table.shop_table_responsive thead {
    display: none;
  }
  .gc-account-inline-shell table.shop_table_responsive tbody,
  .gc-account-inline-shell table.shop_table_responsive tbody tr {
    display: block;
    width: 100%;
  }
  .gc-account-inline-shell table.shop_table_responsive tbody th {
    display: none;
  }
  .gc-account-inline-shell table.shop_table_responsive tbody tr {
    border: 1px solid rgba(255, 255, 255, 0.06);
    border-radius: calc(var(--gc-radius-scale, 1) * 14px);
    margin: 0 0 12px;
    padding: 6px 0;
    background: rgba(255, 255, 255, 0.02);
  }
  .gc-account-inline-shell table.shop_table_responsive tbody tr td {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    width: 100%;
    min-height: 44px;
    padding: 12px 16px !important;
    border: 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
    text-align: right !important;
  }
  .gc-account-inline-shell table.shop_table_responsive tbody tr td:last-child {
    border-bottom: 0;
  }
  .gc-account-inline-shell table.shop_table_responsive tbody tr td::before {
    content: attr(data-title);
    font-weight: 700;
    color: rgba(var(--gc-text-rgb), 0.62);
    text-transform: uppercase;
    font-size: 0.78rem;
    letter-spacing: 0.04em;
    flex: 0 0 auto;
    text-align: left;
  }
  .gc-account-inline-shell table.shop_table_responsive tbody tr td.actions::before,
  .gc-account-inline-shell table.shop_table_responsive tbody tr td.order-actions::before,
  .gc-account-inline-shell table.shop_table_responsive tbody tr td.product-remove::before {
    display: none;
  }
  .gc-account-inline-shell table.shop_table_responsive tbody tr td.actions,
  .gc-account-inline-shell table.shop_table_responsive tbody tr td.order-actions {
    justify-content: flex-end;
    flex-wrap: wrap;
  }
  .gc-account-inline-shell table.shop_table_responsive tbody tr td.order-actions .button,
  .gc-account-inline-shell table.shop_table_responsive tbody tr td.actions .button {
    min-height: 44px;
    padding: 8px 18px;
  }
  .gc-account-inline-shell table.shop_table_responsive tbody tr td > a {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
  }
}

/* Phase 50 (2026-05-05) - E.15 + E.16 + E.17 batched touch-target bumps at <=760.
   Bumps account-area interactives that were measuring 13-40px tall on mobile
   (below the 44px Apple HIG / WCAG 2.5.5 minimum) to a min-height of 44px.
   Surfaces fixed:
     - /my-account/messages/ message-media Open/Download buttons, filter pills,
       panel header Store/Pop-out, "Close section" header button, "Load older"
       button, clip-ref-card title links
     - /my-account/edit-account/ social-login links + show-password toggles
     - /cart/ fast-cart Remove link + gc_wallet payment-method li
*/
@media (max-width: 760px) {
  /* E.15 Messenger — message-media action buttons (Open / Download per attachment) */
  .gc-account-inline-shell .gc-message-media__actions a.gc-button,
  .gc-account-inline-shell .gc-message-media__actions button.gc-button {
    min-height: 44px;
    padding-top: 10px;
    padding-bottom: 10px;
  }

  /* E.15 Messenger — toolbar filters (All / Unread / etc.) */
  .gc-account-inline-shell .gc-messages-filter,
  .gc-account-inline-shell .gc-messages-shell__filters .gc-messages-filter {
    min-height: 44px;
    padding-top: 8px;
    padding-bottom: 8px;
  }

  /* E.15 Messenger — panel header actions (Store / Pop out) */
  .gc-account-inline-shell .gc-messages-panel__actions a.gc-button,
  .gc-account-inline-shell .gc-messages-panel__actions button.gc-button {
    min-height: 44px;
    padding-top: 10px;
    padding-bottom: 10px;
  }

  /* E.15 Messenger — inline-shell header "Close section" button (also covers other endpoints) */
  .gc-account-inline-shell__header button.gc-button,
  .gc-account-inline-shell__header a.gc-button {
    min-height: 44px;
    padding-top: 10px;
    padding-bottom: 10px;
  }

  /* E.15 Messenger — "Load older messages (N)" button */
  .gc-account-inline-shell .gc-messages-panel__load-older-button {
    min-height: 44px;
    padding-top: 10px;
    padding-bottom: 10px;
  }

  /* E.15 Messenger — clip-ref-card title link (78x20 inline link) */
  .gc-account-inline-shell .gc-message-clip-ref-card__title a {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    padding-top: 8px;
    padding-bottom: 8px;
  }

  /* E.16 edit-account — social-login link buttons (X / Discord, 269x40) */
  .gc-account-inline-shell .nsl-button,
  .gc-account-inline-shell a.nsl-button,
  .gc-account-inline-shell .nsl-container a {
    min-height: 44px;
    padding-top: 10px;
    padding-bottom: 10px;
  }

  /* E.16 edit-account — show-password toggle inside password fields (60x34) */
  .gc-account-inline-shell .show-password-input,
  .woocommerce-MyAccount-content .show-password-input,
  .gc-fast-checkout-form .show-password-input {
    min-height: 44px;
    min-width: 44px;
    width: 44px;
    height: 44px;
  }

  /* E.16 edit-account — wrapping checkbox label gives at-least-44h hit area */
  .gc-account-inline-shell .woocommerce-form__label-for-checkbox,
  .gc-account-inline-shell label > input[type="checkbox"] + span {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    gap: 10px;
  }

  /* E.17 cart — fast-cart "Remove" link (51x20 actionable) */
  .gc-fast-cart__remove,
  .gc-fast-cart .gc-fast-cart__remove {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    min-width: 44px;
    padding: 8px 12px;
  }

  /* E.17 cart — payment-method options ensure each li is at-least-44h tappable */
  .gc-fast-checkout-form .wc_payment_methods > li.wc_payment_method,
  .woocommerce-checkout-payment .wc_payment_methods > li.wc_payment_method {
    min-height: 44px;
  }
  .gc-fast-checkout-form .wc_payment_methods > li.wc_payment_method > label,
  .woocommerce-checkout-payment .wc_payment_methods > li.wc_payment_method > label {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    min-height: 44px;
  }
}

/* Phase 50b (2026-05-05) - higher-specificity touch-target bumps that Phase 50 missed.
   The existing body.gc-account-page scoped rules in style.css have specificity (0,2,2)
   for the messenger header/panel-action buttons, which beat Phase 50's plain
   .gc-account-inline-shell rules at (0,1,2). 50b matches body.gc-account-page scope. */
@media (max-width: 760px) {
  body.gc-account-page .gc-account-inline-shell__header button.gc-button,
  body.gc-account-page .gc-account-inline-shell__header a.gc-button {
    min-height: 44px;
    padding-top: 10px;
    padding-bottom: 10px;
  }

  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__actions a.gc-button,
  body.gc-account-page .gc-account-inline-shell.gc-account-inline-shell--messages .gc-messages-panel__actions button.gc-button,
  body.gc-account-page .gc-messages-panel__actions a.gc-button,
  body.gc-account-page .gc-messages-panel__actions button.gc-button {
    min-height: 44px;
    padding-top: 10px;
    padding-bottom: 10px;
  }

  /* Phase 50 missed clip-ref-card__actions — Open clip CTAs */
  body.gc-account-page .gc-message-clip-ref-card__actions a.gc-button,
  body.gc-account-page .gc-message-clip-ref-card__actions button.gc-button,
  .gc-message-clip-ref-card__actions a.gc-button,
  .gc-message-clip-ref-card__actions button.gc-button {
    min-height: 44px;
    padding-top: 10px;
    padding-bottom: 10px;
  }
}

/* Phase 50c (2026-05-05) - !important to beat existing body.gc-account-page.gc-messages-page rules
   at min-height:38px (style.css:9547) and any messages-page override that sets gc-button height to
   36-40 on mobile. Last in the file so cascade order also helps. */
@media (max-width: 760px) {
  body.gc-account-page .gc-account-inline-shell__header button.gc-button,
  body.gc-account-page .gc-account-inline-shell__header a.gc-button {
    min-height: 44px !important;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }
  body.gc-account-page .gc-messages-panel__actions a.gc-button,
  body.gc-account-page .gc-messages-panel__actions button.gc-button {
    min-height: 44px !important;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }
  body.gc-account-page .gc-message-clip-ref-card__actions a.gc-button,
  body.gc-account-page .gc-message-clip-ref-card__actions button.gc-button {
    min-height: 44px !important;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }
}

/* Phase 51 (2026-05-05) - /models-login/ mobile fixes (E.19).
   See outputs/phase51-patch.py for full rationale. */
@media (max-width: 760px) {
  /* Neuter horizontal entry-animation that overshoots mobile viewport.
     Original transforms at lines 18911-18917 push --theirs by translateX(48px)
     which renders the card at x=68 w=361 = right=429 (>393). Vertical-only
     entry animation stays within bounds. */
  .gc-models-benefits .gcb-compare[data-gcb-reveal] .gcb-compare__card--ours,
  .gc-models-benefits .gcb-compare[data-gcb-reveal] .gcb-compare__card--theirs {
    transform: translateY(20px) !important;
  }

  /* Touch-target bumps on the login form footer links */
  body.gc-models-login-page .lost_password a,
  body.gc-models-login-page .gc-models-login__lost-link,
  body.gc-models-login-page .gc-models-login__customer-link,
  body.gc-models-login-page .gc-models-login a[href*="lost-password"],
  body.gc-models-login-page .gc-models-login a[href*="my-account"] {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    padding: 10px 0;
  }

  /* Wrapping label hit area for rememberme + wcfm-agree checkboxes */
  body.gc-models-login-page label.woocommerce-form-login__rememberme,
  body.gc-models-login-page label.gc-rememberme,
  body.gc-models-login-page .wcfm-tos-wrapper label,
  body.gc-models-login-page label:has(> input[type="checkbox"]) {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    gap: 10px;
  }
}

/* Phase 51b (2026-05-05) - /models-login/ corrected selectors. */
@media (max-width: 760px) {
  /* Spot reveal animation translateX(-80) and translateX(80) overshoot mobile.
     Switch to translateY-only at <=760 for same in-bounds entry. */
  .gc-models-benefits .gcb-spot--left[data-gcb-reveal],
  .gc-models-benefits .gcb-spot--right[data-gcb-reveal] {
    transform: translateY(20px) !important;
  }

  /* Login form footer links — actual class is .gc-models-login-links */
  body.gc-models-login-page .gc-models-login-links a {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    padding: 10px 0;
  }

  /* Rememberme label — actual class is .gc-models-login-form__remember */
  body.gc-models-login-page label.gc-models-login-form__remember {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    gap: 10px;
  }

  /* WCFM membership-wrapper checkbox label */
  body.gc-models-login-page .wcfm-membership-wrapper label,
  body.gc-models-login-page .wcfm-content label {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    gap: 10px;
  }
}

/* Phase 52 (2026-05-05) - /store-manager/* + sitewide chrome touch-target bumps (E.21).
   Forces 44h on header/footer/profile chrome that wasn't reached by Phase 36 due to
   either body-class specificity issues or store-manager-specific overrides. */
@media (max-width: 767px) {
  /* Header nav links + wallet/cart pills (sitewide chrome — should already be 44 from P36+P33b but doesn't always reach store-manager body class) */
  body .gc-main-nav__link,
  body .gc-main-nav__item > a,
  body .gc-header-wallet,
  body .gc-header-cart {
    min-height: 44px !important;
    height: auto !important;
    display: inline-flex !important;
    align-items: center !important;
  }

  /* Footer social-link icons */
  body .gc-footer__social-link {
    min-height: 44px !important;
    min-width: 44px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  /* Creator profile savebar buttons (Save / Cancel / Reset) */
  body .gc-profile-savebar__btn,
  body .gc-profile-savebar .gc-button {
    min-height: 44px !important;
    padding: 8px 14px !important;
    display: inline-flex !important;
    align-items: center !important;
  }

  /* Creator profile media-row buttons (Upload / Choose / Remove) */
  body .gc-profile-media-btn,
  body .gc-profile-media-clear {
    min-height: 44px !important;
    padding: 8px 12px !important;
    display: inline-flex !important;
    align-items: center !important;
  }
}


/* gc_tip_overlay_close_44_v1 — Phase 67 / E.29 — 2026-05-07
   Tip-overlay close button 34→44px to meet 44px mobile touch-target standard.
   Same family as Phase 65 (.gc-sub-modal__close) and Phase 66 (.gc-co-sf-show-more). */
.gc-live-chat-tip-overlay__close{width:44px;height:44px;}

/* gc_autotip_switch_44_v1 — Phase 68 / E.30 — 2026-05-07
   Auto Tip toggle label height 24→44px on mobile to meet 44px touch-target standard.
   Slider visual stays at 42×24 (centered via inline-flex) so aesthetic is unchanged.
   Same family as Phase 65/66/67. */
@media (max-width:600px){
  .gc-autotip__switch{height:44px;display:inline-flex;align-items:center;}
  .gc-autotip__slider{position:relative;inset:auto;width:42px;height:24px;flex:0 0 auto;}
}


/* gc_clip_sub_disc_badge_v1 -- subscriber-discount badges (Slice D) */
.gc-sale-badge--sub-disc {
  display: inline-flex;
  gap: 6px;
  align-items: center;
  white-space: nowrap;
}
.gc-sale-badge--sub-disc-paid {
  background: linear-gradient(135deg, #34d399, #059669);
  color: #042417;
}
.gc-sale-badge--sub-disc-teaser {
  background: linear-gradient(135deg, #1f8273, var(--gc-accent-2)); /* gc_sub_gradient_wcag_v1 */
  color: #ffffff;
}
.gc-sub-disc-badge__pct {
  font-size: .78em;
  opacity: .9;
  margin-left: 4px;
  white-space: nowrap;
  font-weight: 700;
}

/* gc_clip_sub_disc_pdp_v1 -- PDP price-area sub-disc CTA variants (Slice D) */
.gc-storefront-subscription-cta--sub-disc-paid {
  border-color: rgba(52, 211, 153, .34);
  background: linear-gradient(135deg, rgba(52, 211, 153, .96), rgba(5, 150, 105, .92));
  color: #042417;
  cursor: default;
}
.gc-storefront-subscription-cta--sub-disc-paid .gc-storefront-subscription-cta__text small {
  color: rgba(4, 36, 23, .8);
}
.gc-storefront-subscription-cta--sub-disc-teaser {
  border-color: rgba(var(--gc-accent-rgb), .34);
  background: linear-gradient(135deg, rgba(var(--gc-accent-rgb), .94), rgba(var(--gc-accent-2-rgb), .92));
  color: #ffffff;
  cursor: default;
}
.gc-storefront-subscription-cta--sub-disc-teaser .gc-storefront-subscription-cta__text small {
  color: rgba(255, 255, 255, .82);
}


/* gc_clip_sub_disc_collision_v1 -- when a card has a sub-disc badge, hide the
   theme's vanilla "X% OFF" badge to avoid two badges saying the same thing in
   the same corner. The vanilla badge selector is `.gc-sale-badge--clip-card`
   without the `--subscription`, `--sub-disc`, or `--category-top` modifiers --
   that's the existing on-sale percent badge (functions.php:2342 etc). */
.gc-sale-badge--sub-disc ~ .gc-sale-badge--clip-card:not(.gc-sale-badge--subscription):not(.gc-sale-badge--sub-disc) {
  display: none !important;
}

/* Keep the new badge readable in the corner: allow it to wrap onto two lines
   on narrow cards so the price never clips. */
.gc-sale-badge--sub-disc-paid,
.gc-sale-badge--sub-disc-teaser {
  white-space: normal;
  max-width: calc(100% - 24px);
  line-height: 1.15;
  padding: 6px 10px;
  font-size: .82rem;
}
.gc-sale-badge--sub-disc-paid .woocommerce-Price-amount {
  font-weight: 700;
}
.gc-sub-disc-badge__pct {
  display: inline-block;
}

/* ============================================================ */
/* gc_chat_subscriber_crown_v1                                   */
/* Gold crown in front of names of viewers who hold an active    */
/* subscription to the room's creator. Applies in chat rows AND  */
/* the user-list panel. Creator/co-creator badges win precedence */
/* (handled in JS by an else-if).                                */
/* ============================================================ */
.gc-live-chat-row--subscriber .gc-live-chat-row__meta::before,
.gc-live-user-row--subscriber > strong::before{
  content:"";
  display:inline-block;
  width:14px;height:14px;
  margin-right:4px;
  vertical-align:-2px;
  flex-shrink:0;
  background:#f5c518; /* gold */
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='currentColor'%3E%3Cpath d='M3 7l4.5 3.2L12 4l4.5 6.2L21 7l-1.6 11H4.6zM5 20h14v2H5z'/%3E%3C/svg%3E") center/contain no-repeat;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='currentColor'%3E%3Cpath d='M3 7l4.5 3.2L12 4l4.5 6.2L21 7l-1.6 11H4.6zM5 20h14v2H5z'/%3E%3C/svg%3E") center/contain no-repeat;
}
.gc-live-chat-row--subscriber .gc-live-chat-row__meta strong{
  color:#f5c518;
}
/* If a row is BOTH creator and subscriber (shouldn't happen in practice -- a
   creator can't subscribe to themselves -- but just in case the JS branches
   ever overlap), keep the existing creator speech-bubble badge. */
.gc-live-chat-row--creator.gc-live-chat-row--subscriber .gc-live-chat-row__meta::before{
  background:#f87171;
}


/* gc_report_phase6a_livestream_v1 — Report-this-stream button styles. */
.gc-live-player__action {
    background: transparent;
    border: 1px solid rgba(255,255,255,.18);
    color: rgba(255,255,255,.78);
    padding: 6px 12px;
    border-radius: var(--gc-radius-pill);
    font-size: 12px;
    cursor: pointer;
    transition: background-color .12s ease, color .12s ease;
}
.gc-live-player__action:hover,
.gc-live-player__action:focus-visible {
    background: rgba(255,255,255,.08);
    color: #fff;
    outline: none;
}
.gc-live-player__action--report {
    opacity: .75;
}
.gc-live-player__action--report:hover {
    opacity: 1;
}
.gc-live-player__toolbar-group--meta {
    margin-left: auto;
}
@media (max-width: 640px) {
    /* gc_report_phase6_mobile_taptarget_specificity_v1
       `.gc-live-player__toolbar button` (specificity 0,1,1) was beating the
       original `.gc-live-player__action` (0,1,0) so min-height:44px / padding:8px
       14px never applied on mobile. Adding the `.gc-live-player__toolbar`
       ancestor makes it (0,2,0) and wins the cascade. Real WCAG 2.5.5 miss.
       Caught by report-feature.spec.js Phase 6.A [mobile]. */
    .gc-live-player__toolbar .gc-live-player__action {
        min-height: 44px;
        padding: 8px 14px;
    }
}

/* gc_live_pm_anon_cta_v1 (2026-05-10): styling for anon viewer CTA in /live/<creator>/ PM panel */
.gc-live-pm-anon-cta { padding: 18px 16px; text-align: center; color: var(--gc-pm-color-fg, #cfd6e4); }
.gc-live-pm-anon-cta__title { margin: 0 0 8px; font-size: 1.05em; line-height: 1.35; }
.gc-live-pm-anon-cta__sub { margin: 0 0 16px; font-size: .92em; line-height: 1.45; opacity: .85; }
.gc-live-pm-anon-cta__actions { display: flex; gap: 10px; justify-content: center; margin: 0; flex-wrap: wrap; }
.gc-live-pm-anon-cta__btn {
    display: inline-block;
    padding: 10px 18px;
    border-radius: var(--gc-radius-pill);
    font-weight: 600;
    text-decoration: none;
    line-height: 1.2;
    transition: background-color .15s ease, transform .1s ease;
    min-height: 36px;
}
.gc-live-pm-anon-cta__btn--primary {
    background: var(--gc-accent, #19c2a6);
    color: var(--gc-accent-fg, #06121a);
}
.gc-live-pm-anon-cta__btn--primary:hover,
.gc-live-pm-anon-cta__btn--primary:focus { background: var(--gc-accent-hover, #15a78f); color: var(--gc-accent-fg, #06121a); }
.gc-live-pm-anon-cta__btn--secondary {
    background: rgba(255, 255, 255, .08);
    color: inherit;
    border: 1px solid rgba(255, 255, 255, .18);
}
.gc-live-pm-anon-cta__btn--secondary:hover,
.gc-live-pm-anon-cta__btn--secondary:focus { background: rgba(255, 255, 255, .14); }

/* gc_clips_topalign_v1 (theme top-align fix 2026-05-10) — remove top gap between filter rail and clips column */
.gc-clips-browser-layout { align-items: start; }
.gc-clips-sidebar,
.gc-clips-results { align-self: start; }
.gc-clips-sidebar > :first-child,
.gc-clips-sidebar__form > :first-child,
.gc-clips-results > :first-child { margin-top: 0; }
.gc-clips-results__header { align-items: flex-start; }
.gc-clips-results__header > div:first-child { padding-top: 0; }
.gc-clips-filter-card--search { padding: 16px; }
/* gc_clips_topalign_v1.1 (2026-05-10) - real fix: position:sticky + top:96px was shifting
   the sidebar 96px below the grid cell top in CSS Grid; sticky measures from cell top
   in this layout. top:0 keeps sticky behavior (sidebar stays visible while scrolling)
   and lands flush with the results column on the initial paint. */
.gc-clips-sidebar { top: 0; }
/* end gc_clips_topalign_v1 */

/* gc_clip_share_buttons_v1 (2026-05-10) - share row on clip detail page */
.gc-clip-watch-share { margin: 18px 0 0; display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.gc-clip-watch-share__label { color: var(--gc-text-soft); font-size: 0.92rem; font-weight: 600; letter-spacing: .02em; }
.gc-clip-watch-share__list { display: flex; gap: 8px; padding: 0; margin: 0; list-style: none; flex-wrap: wrap; }
.gc-clip-watch-share__btn { display: inline-flex; align-items: center; gap: 6px; padding: 8px 12px; border-radius: var(--gc-radius-pill); background: rgba(255,255,255,.06); border: 1px solid var(--gc-border); color: var(--gc-text); font-size: 0.86rem; font-weight: 600; transition: background .15s ease, border-color .15s ease, color .15s ease; text-decoration: none; }
.gc-clip-watch-share__btn:hover { background: rgba(255,255,255,.12); border-color: var(--gc-accent); color: var(--gc-accent); }
.gc-clip-watch-share__btn svg { display: block; }
.gc-clip-watch-share__btn--x:hover { color: #fff; background: #000; border-color: #000; }
.gc-clip-watch-share__btn--tg:hover { color: #fff; background: #229ED9; border-color: #229ED9; }
.gc-clip-watch-share__btn--reddit:hover { color: #fff; background: #FF4500; border-color: #FF4500; }
/* end gc_clip_share_buttons_v1 */

/* gc_live_room_mobile_scroll_perf_v1 (2026-05-11)
 * The site header is `position:sticky; top:0; backdrop-filter: blur(18px)`
 * with a 307px height on mobile (393px-class viewport). On the /live/{slug}/
 * page, scrolling forces the GPU to re-run the blur kernel over the entire
 * scrolling content area every frame — Safari momentum scroll perceives this
 * as a stutter / non-fluid jump, especially right as the video scrolls past.
 *
 * Surgical fix scoped to body.gc-live-room-page at <=767px:
 *   - Drop `backdrop-filter` and `-webkit-backdrop-filter` (the compositor work)
 *   - Swap semi-transparent rgba(var(--gc-bg-rgb), .84) for fully opaque rgb(7,16,31)
 *     so the header still looks identical without the blur.
 *
 * Live-room is the only surface that has a tall scrolling content area with
 * an embedded media element that benefits from this. Other pages keep the
 * blurred header (its scroll cost there is acceptable on desktop and small
 * on shorter mobile pages). */
@media (max-width: 767px) {
    body.gc-live-room-page header.gc-site-header {
        backdrop-filter: none;
        -webkit-backdrop-filter: none;
        background: rgb(7, 16, 31);
        /* Hint to the compositor: this element only needs paint on style
         * changes, not on every scroll frame. */
        will-change: auto;
        contain: layout paint;
    }
}
/* end gc_live_room_mobile_scroll_perf_v1 */

/* gc_live_room_mobile_scroll_perf_v2 (2026-05-11)
 * Broadens v1: previous fix capped at <=767px and only touched the header.
 * Real iOS Safari touch momentum is still stuttery because of:
 *   1. Header blur returns at 768-1023px (some phones in landscape, iPads portrait).
 *   2. .gc-live-player__toolbar and .gc-live-player__toolbar-toggle BOTH have
 *      backdrop-filter (14px/12px) and sit IN the scroll path on top of the
 *      video. Even when the toolbar is hidden via transform/opacity, Safari
 *      can still composite the backdrop-filter layer per scroll frame.
 *   3. .gc-live-player__zoom-panel + .gc-live-player__control-feedback +
 *      .gc-live-player__zoom-pip all have backdrop-filter and ride along
 *      with the player as it scrolls.
 *
 * v2 strategy: kill every backdrop-filter in the live-room scroll path
 * up to 1023px wide. The visual fallback (opaque rgba background already
 * present) looks identical to a casual eye and is cheaper by orders of
 * magnitude on a mobile GPU. */
@media (max-width: 1023px) {
    /* Header: extend the v1 fix to cover tablet portrait too */
    body.gc-live-room-page header.gc-site-header {
        backdrop-filter: none;
        -webkit-backdrop-filter: none;
        background: rgb(7, 16, 31);
        will-change: auto;
        contain: layout paint;
    }

    /* In-player overlays: strip every blur. The translucent rgba() bg already
     * present on each (e.g. rgba(var(--gc-bg-rgb), .74) for the toolbar) reads as a
     * subtle dark scrim without the per-frame GPU cost. */
    body.gc-live-room-page .gc-live-player__toolbar,
    body.gc-live-room-page .gc-live-player__toolbar-toggle,
    body.gc-live-room-page .gc-live-player__zoom-panel,
    body.gc-live-room-page .gc-live-player__zoom-pip,
    body.gc-live-room-page .gc-live-player__zoom-crosshair-controls,
    body.gc-live-room-page .gc-live-player__control-feedback,
    body.gc-live-room-page .gc-live-card__badge {
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
    }

    /* Chat overlay variant: same treatment */
    body.gc-live-room-page .gc-live-chat-card--fullscreen-overlay,
    body.gc-live-room-page .gc-live-chat-card--fs-overlay {
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
    }
}
/* end gc_live_room_mobile_scroll_perf_v2 */

/* gc_live_room_mobile_scroll_perf_v3 (2026-05-11)
 * v2 killed the blur cost but the user still perceives a jump in Chrome DevTools
 * mobile view. The remaining cause is the sticky 307px-tall header itself:
 * with 36% of the viewport pinned in place, mouse-wheel scrolling moves the
 * other 64% of content past static chrome in big steps — the brain reads that
 * as "jumpy" even though every individual frame is layout-correct.
 *
 * v3 fix: at <=1023px on body.gc-live-room-page, the header is just static
 * (no sticky). The entire page scrolls as one unit — no static chrome left
 * for the eye to compare against. Users on real iOS Safari also benefit
 * because the sticky-element compositor cost goes to zero. Desktop and other
 * pages keep the sticky header as before. */
@media (max-width: 1023px) {
    body.gc-live-room-page header.gc-site-header {
        position: static !important;
        top: auto !important;
    }
}
/* end gc_live_room_mobile_scroll_perf_v3 */

/* gc_live_room_player_chat_paint_isolation_v1 (2026-05-11)
 * User report: after v3 (header non-sticky on mobile /live/), the page scrolls
 * fluidly overall but still jumps "in the area with the livestream viewport
 * and the chat". Mutation observer captured 416 input.style changes during
 * scroll the first time it was probed (couldn't be reliably reproduced).
 *
 * Two likely causes that compositor isolation fixes:
 *   1. The video element's GPU layer gets recreated as it scrolls in/out of
 *      view — `contain: layout paint` on its container prevents that.
 *   2. Mouse-wheel scroll in Chrome DevTools mobile view briefly hovers over
 *      buttons/inputs as the page slides past the cursor — that triggers
 *      :hover transitions that visually flicker. `contain: paint` confines
 *      those repaints to the element's own layer instead of bleeding out.
 *
 * Apply at <=1023px on body.gc-live-room-page only — desktop is unaffected
 * (no scrolling in/out of view there since the player stays large). */
@media (max-width: 1023px) {
    body.gc-live-room-page .gc-live-player-card,
    body.gc-live-room-page .gc-live-player,
    body.gc-live-room-page .gc-live-room-bar,
    body.gc-live-room-page .gc-live-chat-card {
        contain: layout paint;
        /* Promote each to its own compositor layer so cross-element repaints
         * during scroll don't blur boundaries. transform:translateZ(0) is the
         * cheap way to force a layer; will-change is the modern hint. */
        will-change: transform;
        transform: translateZ(0);
    }

    /* Disable transitions on the player toolbar buttons during scroll —
     * accidental hover-state firings while mouse-wheel scrolls past them
     * cause visible flicker. CSS `pointer-events: none` on the toolbar
     * is already set when toolbar is hidden; this catches the visible state. */
    body.gc-live-room-page .gc-live-player__toolbar button {
        transition: none;
    }
}
/* end gc_live_room_player_chat_paint_isolation_v1 */



/* gc_phase_f_FK9_search_overlap_v1 -- prevent header search input from overlapping the category select.
 *   F.B1 walk found the .gc-header-search__input had x=1342,w=32 while .gc-header-search__select
 *   had x=1342,w=53 -- same x, overlapping bounding boxes -- because at 1241-1500px viewports the
 *   media query collapsed grid-template-columns to minmax(0,1fr) and the squeezed flex container
 *   couldn't honor the column minimums. Result: clicking on the visible input area landed on the
 *   select (Playwright "intercepts pointer events" error). Quick fix: hide the category select at
 *   the broken range, give the input full width. Category filter is still reachable via /clips/ sidebar.
 */
@media (min-width: 1241px) and (max-width: 1500px) {
  .gc-header-search {
    grid-template-columns: minmax(0, 1fr) 52px;
    min-width: 280px;
    flex: 1 1 280px;
  }
  .gc-header-search__select {
    display: none !important;
  }
  /* allow main nav to compress so search keeps its 280px minimum */
  .gc-main-nav {
    flex-shrink: 1;
    min-width: 0;
    overflow: hidden;
  }
}

/* gc_phase_f_FX1_hide_resp_toggler_desktop_v1 -- Dominik reported a duplicate hamburger toggle on
 * the desktop WCFM store-manager header. WCFM renders `<span class="wcfm_responsive_menu_toggler...">`
 * conditionally via server-side `wcfm_is_mobile() || wcfm_is_tablet()` UA detection. When the UA is
 * detected as mobile but the viewport is desktop (e.g. mobile-UA stuck after page nav, or a stale
 * browser cache), the responsive toggler renders alongside the desktop `wcfm_menu_toggler` so the
 * user sees two hamburger icons.
 *
 * Fix: force-hide `wcfm_responsive_menu_toggler` on viewports >= 769px. Mobile (<=768px) is
 * untouched, so the custom mobile menu/toggle Dominik’s team built still works.
 */
@media (min-width: 769px) {
  #wcfm-main-contentainer .wcfm_responsive_menu_toggler {
    display: none !important;
  }
}

/* gc_sub_inclusion_no_zero_v1 (2026-05-14): "Watch in your library" action button
   inside the included-in-subscription PDP badge. The badge previously only had text;
   the button gives subscribed viewers a direct deep-link to their library, since the
   subscription no longer overrides the cart price to €0. */
.gc-storefront-subscription-cta--has-action {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 14px;
  cursor: default;
}
.gc-storefront-subscription-cta--has-action .gc-storefront-subscription-cta__text {
  flex: 1 1 220px;
  min-width: 0;
}
.gc-storefront-subscription-cta__btn {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 16px;
  background: #2b1700;
  color: #ffd76b;
  font-size: 0.85rem;
  font-weight: 700;
  letter-spacing: .02em;
  text-decoration: none;
  border-radius: var(--gc-radius-pill);
  border: 1px solid rgba(255, 215, 107, 0.4);
  transition: background .15s ease, color .15s ease, border-color .15s ease, transform .15s ease;
  white-space: nowrap;
}
.gc-storefront-subscription-cta__btn:hover,
.gc-storefront-subscription-cta__btn:focus {
  background: #ffd76b;
  color: #2b1700;
  border-color: #ffd76b;
  transform: translateY(-1px);
  text-decoration: none;
}
.gc-storefront-subscription-cta__btn::before {
  content: "▶";
  font-size: 0.75em;
  line-height: 1;
}

/* gc_sub_inclusion_no_zero_v1 (2026-05-14): when multiple .gc-sale-badge--clip-card
   badges fire on a single clip card (Included + Subscribers-save), the base rule
   pins both at top:12px;left:12px so they overlap and only the last one paints.
   Stack additional badges vertically beneath the first using nth-of-type offsets.
   The cumulative offset is approximate (badge height ~30px + 6px gap = 36px per row). */
.gc-clip-card .gc-sale-badge--clip-card:nth-of-type(2) {
  top: 50px;
}
.gc-clip-card .gc-sale-badge--clip-card:nth-of-type(3) {
  top: 88px;
}

/* gc_sub_inclusion_storefront_section_v1 (2026-05-14): subscribe CTA shown to
   non-subscribers in the 'Included in subscription' storefront section header. */
.gc-section-header--sub-library {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 18px;
}
.gc-section-header--sub-library h2,
.gc-section-header--sub-library p {
  flex: 0 1 auto;
  margin: 0;
}
.gc-section-header--sub-library p {
  color: rgba(var(--gc-text-rgb), 0.72);
  font-size: 0.92rem;
}
.gc-section-header__cta {
  flex: 0 0 auto;
  margin-left: auto;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 9px 18px;
  background: linear-gradient(135deg, #1f8273, var(--gc-accent-2)); /* gc_sub_gradient_wcag_v1 */
  color: #fff;
  font-weight: 700;
  text-decoration: none;
  border-radius: var(--gc-radius-pill);
  font-size: .92rem;
  letter-spacing: .02em;
  transition: transform .15s ease, filter .15s ease;
  white-space: nowrap;
}
.gc-section-header__cta:hover,
.gc-section-header__cta:focus {
  transform: translateY(-1px);
  filter: brightness(1.08);
  text-decoration: none;
}
.gc-section-header__cta::before {
  content: "\1F451";
  font-size: 1em;
  line-height: 1;
}

/* ============================================================ */
/* gc_sub_inclusion_badge_wrap_v1 (2026-05-14)                   */
/* Flex-column wrapper for badges emitted via gc_clip_card_badges*/
/* filter. Replaces the nth-of-type fixed-pixel offsets shipped  */
/* in gc_sub_inclusion_no_zero_v1 with proper flow layout so     */
/* stacked badges (Included + Subscribers-save) lay out with     */
/* gap, never paint over each other, and reflow correctly on     */
/* narrow mobile cards. The legacy nth-of-type rules above       */
/* remain harmless: their selector only matches absolute-pos     */
/* siblings, so they auto-disable inside the flex wrapper.       */
/* ============================================================ */
.gc-clip-card__badges {
  position: absolute;
  top: 12px;
  left: 12px;
  right: 12px;
  z-index: 3;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
  pointer-events: none;
  max-width: calc(100% - 24px);
}
.gc-clip-card__badges > .gc-sale-badge,
.gc-clip-card__badges > .gc-sale-badge--clip-card {
  position: static;
  top: auto;
  left: auto;
  right: auto;
  pointer-events: auto;
  max-width: 100%;
}
/* Reset legacy nth-of-type stacking offsets when inside the wrapper. */
.gc-clip-card__badges > .gc-sale-badge--clip-card:nth-of-type(n) {
  top: auto;
}
@media (max-width: 480px) {
  .gc-clip-card__badges {
    gap: 4px;
  }
  .gc-clip-card__badges > .gc-sale-badge--clip-card {
    font-size: .72rem;
    min-height: 24px;
    padding: 4px 8px;
  }
}

/* ============================================================ */
/* gc_sub_inclusion_nonsub_accent_v1 (2026-05-14)                */
/* Visual differentiation for the PDP "Included in subscription" */
/* banner shown to non-subscribed viewers (--nonsub modifier).   */
/* Subscribed users still see the bright gold "you have it"      */
/* gradient via --included; non-subs now see a muted variant     */
/* that reads as "you could have this" without losing the gold   */
/* brand identity. Aspirational rather than disabled.            */
/* ============================================================ */
.gc-storefront-subscription-cta--nonsub {
  background: linear-gradient(135deg, rgba(255, 214, 102, .42), rgba(249, 168, 37, .42));
  border-color: rgba(255, 223, 120, .26);
  box-shadow: 0 12px 28px rgba(0, 0, 0, .18);
  color: rgba(43, 23, 0, .82);
}
.gc-storefront-subscription-cta--nonsub .gc-storefront-subscription-cta__icon {
  background: rgba(255, 255, 255, .26);
  opacity: .78;
}
.gc-storefront-subscription-cta--nonsub .gc-storefront-subscription-cta__text strong {
  color: rgba(43, 23, 0, .9);
}
.gc-storefront-subscription-cta--nonsub .gc-storefront-subscription-cta__text small {
  color: rgba(43, 23, 0, .68);
}

/* ============================================================ */
/* gc_sub_inclusion_badge_compact_v1 (2026-05-14)                */
/* Compact badge sizing when stacked inside .gc-clip-card__badges*/
/* wrapper. The full-size badge variants (.gc-sale-badge--sub-   */
/* disc-paid/teaser at .82rem 6px/10px) are designed for use     */
/* OUTSIDE the card (PDP buybox, PPV badges showing prices) and  */
/* dominate the card image when stacked. Overrides only fire     */
/* when the badge is a direct child of the new wrapper, so       */
/* PDP/PPV/storefront-section badges are unaffected.             */
/* ============================================================ */
.gc-clip-card__badges { gap: 4px; }
.gc-clip-card__badges > .gc-sale-badge,
.gc-clip-card__badges > .gc-sale-badge--clip-card,
.gc-clip-card__badges > .gc-sale-badge--sub-disc,
.gc-clip-card__badges > .gc-sale-badge--sub-disc-paid,
.gc-clip-card__badges > .gc-sale-badge--sub-disc-teaser,
.gc-clip-card__badges > .gc-sale-badge--subscription {
  min-height: 22px;
  padding: 2px 8px;
  font-size: .68rem;
  line-height: 1.2;
  white-space: nowrap;
  letter-spacing: .01em;
  border-radius: calc(var(--gc-radius-scale, 1) * 8px);
}
.gc-clip-card__badges .gc-sub-disc-badge__pct {
  font-size: .85em;
  margin-left: 3px;
}
@media (max-width: 480px) {
  .gc-clip-card__badges { gap: 3px; }
  .gc-clip-card__badges > .gc-sale-badge,
  .gc-clip-card__badges > .gc-sale-badge--clip-card,
  .gc-clip-card__badges > .gc-sale-badge--sub-disc,
  .gc-clip-card__badges > .gc-sale-badge--sub-disc-paid,
  .gc-clip-card__badges > .gc-sale-badge--sub-disc-teaser,
  .gc-clip-card__badges > .gc-sale-badge--subscription {
    min-height: 20px;
    padding: 1px 7px;
    font-size: .62rem;
    border-radius: calc(var(--gc-radius-scale, 1) * 7px);
  }
}

/* ============================================================ */
/* gc_sub_inclusion_badge_wrap_v2 (2026-05-14)                   */
/* Split-corner badge layout. Wrapper spans entire media area    */
/* (inset:0). Subscription badge anchors TOP-LEFT, sub-disc +    */
/* vanilla WC discount anchor BOTTOM-LEFT (via margin-top:auto). */
/* Edges of each badge are flush with the corresponding card     */
/* corner; corner radii form a label/tab look instead of pills.  */
/* Supersedes gc_sub_inclusion_badge_wrap_v1 + _compact_v1.      */
/* ============================================================ */
.gc-clip-card__badges {
  position: absolute;
  inset: 0;                /* top:0 right:0 bottom:0 left:0 */
  z-index: 3;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
  pointer-events: none;
  padding: 0;
  max-width: 100%;
}
.gc-clip-card__badges > .gc-sale-badge,
.gc-clip-card__badges > .gc-sale-badge--clip-card {
  position: static;
  top: auto;
  left: auto;
  right: auto;
  bottom: auto;
  pointer-events: auto;
  max-width: calc(100% - 8px); /* leave a few px for the right side, avoid hitting duration badge */
  margin: 0;
}
/* Subscription badge → top-left flush, label/tab corner. */
.gc-clip-card__badges > .gc-sale-badge--subscription {
  align-self: flex-start;
  border-radius: 0 0 calc(var(--gc-radius-scale, 1) * 8px) 0;
}
/* Discount badges (sub-disc paid/teaser + vanilla WC) → bottom-left flush. */
.gc-clip-card__badges > .gc-sale-badge--sub-disc,
.gc-clip-card__badges > .gc-sale-badge--sub-disc-paid,
.gc-clip-card__badges > .gc-sale-badge--sub-disc-teaser,
.gc-clip-card__badges > .gc-sale-badge--clip-card:not(.gc-sale-badge--subscription):not(.gc-sale-badge--sub-disc) {
  margin-top: auto;
  align-self: flex-start;
  border-radius: 0 calc(var(--gc-radius-scale, 1) * 8px) 0 0;
  max-width: calc(70% - 6px); /* leave room for the duration badge at bottom-right */
}
/* Compact size (carried over from v1 compact); no internal padding bumps. */
.gc-clip-card__badges > .gc-sale-badge,
.gc-clip-card__badges > .gc-sale-badge--clip-card,
.gc-clip-card__badges > .gc-sale-badge--sub-disc,
.gc-clip-card__badges > .gc-sale-badge--sub-disc-paid,
.gc-clip-card__badges > .gc-sale-badge--sub-disc-teaser,
.gc-clip-card__badges > .gc-sale-badge--subscription {
  min-height: 22px;
  padding: 3px 10px;
  font-size: .7rem;
  line-height: 1.2;
  white-space: nowrap;
  letter-spacing: .01em;
}
/* Reset legacy nth-of-type stacking offsets when inside the wrapper. */
.gc-clip-card__badges > .gc-sale-badge--clip-card:nth-of-type(n) {
  top: auto;
}
@media (max-width: 480px) {
  .gc-clip-card__badges > .gc-sale-badge,
  .gc-clip-card__badges > .gc-sale-badge--clip-card,
  .gc-clip-card__badges > .gc-sale-badge--sub-disc,
  .gc-clip-card__badges > .gc-sale-badge--sub-disc-paid,
  .gc-clip-card__badges > .gc-sale-badge--sub-disc-teaser,
  .gc-clip-card__badges > .gc-sale-badge--subscription {
    min-height: 20px;
    padding: 2px 8px;
    font-size: .64rem;
  }
  .gc-clip-card__badges > .gc-sale-badge--subscription {
    border-radius: 0 0 calc(var(--gc-radius-scale, 1) * 6px) 0;
  }
  .gc-clip-card__badges > .gc-sale-badge--sub-disc,
  .gc-clip-card__badges > .gc-sale-badge--sub-disc-paid,
  .gc-clip-card__badges > .gc-sale-badge--sub-disc-teaser,
  .gc-clip-card__badges > .gc-sale-badge--clip-card:not(.gc-sale-badge--subscription):not(.gc-sale-badge--sub-disc) {
    border-radius: 0 calc(var(--gc-radius-scale, 1) * 6px) 0 0;
  }
}

/* ============================================================ */
/* gc_sub_inclusion_duration_flush_v1 (2026-05-14)               */
/* Move .gc-clip-card__duration-badge from inset-pill to flush   */
/* bottom-right with label/tab corner radius. Sizes are now      */
/* visually paired with the bottom-left discount badge so the    */
/* two share the same baseline along the media bottom edge.      */
/* Also tighten the bottom-left badge's max-width so it leaves   */
/* a clean horizontal gap for the duration badge.                */
/* ============================================================ */
.gc-clip-card__duration-badge {
  right: 0;
  bottom: 0;
  top: auto;
  min-height: 22px;
  padding: 2px 10px;
  border-radius: calc(var(--gc-radius-scale, 1) * 8px) 0 0 0;
  font-size: .7rem;
  font-weight: 800;
  letter-spacing: .01em;
}
.gc-clip-card__badges > .gc-sale-badge--sub-disc,
.gc-clip-card__badges > .gc-sale-badge--sub-disc-paid,
.gc-clip-card__badges > .gc-sale-badge--sub-disc-teaser,
.gc-clip-card__badges > .gc-sale-badge--clip-card:not(.gc-sale-badge--subscription):not(.gc-sale-badge--sub-disc) {
  max-width: calc(100% - 100px); /* leave room for duration badge at bottom-right */
}
@media (max-width: 480px) {
  .gc-clip-card__duration-badge {
    min-height: 20px;
    padding: 1px 8px;
    border-radius: calc(var(--gc-radius-scale, 1) * 6px) 0 0 0;
    font-size: .64rem;
  }
  .gc-clip-card__badges > .gc-sale-badge--sub-disc,
  .gc-clip-card__badges > .gc-sale-badge--sub-disc-paid,
  .gc-clip-card__badges > .gc-sale-badge--sub-disc-teaser,
  .gc-clip-card__badges > .gc-sale-badge--clip-card:not(.gc-sale-badge--subscription):not(.gc-sale-badge--sub-disc) {
    max-width: calc(100% - 90px);
  }
}

/* ============================================================ */
/* gc_sub_inclusion_sidebar_strip_flush_v1 (2026-05-14)          */
/* Apply the same flush-corner + label/tab geometry to the       */
/* Recommended Clips sidebar (.gc-clip-sidebar-card) and         */
/* horizontal strip (.gc-clip-strip-card) sale + duration        */
/* badges so the design system is uniform across all clip-card   */
/* variants. Sale badge → flush top-left tab. Duration badge →   */
/* flush bottom-right tab.                                       */
/* ============================================================ */
.gc-sale-badge--strip,
.gc-sale-badge--sidebar {
  top: 0;
  left: 0;
  right: auto;
  bottom: auto;
  min-height: 22px;
  padding: 2px 8px;
  border-radius: 0 0 calc(var(--gc-radius-scale, 1) * 8px) 0;
  font-size: .66rem;
  font-weight: 800;
  letter-spacing: .01em;
  line-height: 1.2;
}
.gc-clip-strip-card__duration,
.gc-clip-sidebar-card__duration {
  top: auto;
  left: auto;
  right: 0;
  bottom: 0;
  min-height: 22px;
  padding: 2px 8px;
  border-radius: calc(var(--gc-radius-scale, 1) * 8px) 0 0 0;
  border: none;
  font-size: .66rem;
  font-weight: 800;
  letter-spacing: .01em;
  line-height: 1.2;
}
@media (max-width: 480px) {
  .gc-sale-badge--strip,
  .gc-sale-badge--sidebar {
    min-height: 20px;
    padding: 1px 7px;
    font-size: .6rem;
    border-radius: 0 0 calc(var(--gc-radius-scale, 1) * 6px) 0;
  }
  .gc-clip-strip-card__duration,
  .gc-clip-sidebar-card__duration {
    min-height: 20px;
    padding: 1px 7px;
    font-size: .6rem;
    border-radius: calc(var(--gc-radius-scale, 1) * 6px) 0 0 0;
  }
}

/* ============================================================================
   gc_storefront_subscribe_card_v1 (2026-05-16)
   Bigger preview-card variant of the Subscribe trigger button used on the
   creator storefront hero. Click still opens the existing gc-sub-modal.
   Pill variant (.gc-sub-cta-btn without --card) is unchanged — still used by
   the live-tab offline banner and the VOD CTA.
   ============================================================================ */
.gc-sub-cta-btn--card {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 10px;
  width: clamp(260px, 26vw, 340px);
  max-width: 92vw;
  padding: 14px 16px 12px;
  border-radius: calc(var(--gc-radius-scale, 1) * 16px);
  background: linear-gradient(155deg, #f6c453 0%, #d39c3a 55%, #a36912 100%);
  color: #1b1004;
  text-align: left;
  line-height: 1.3;
  box-shadow:
    0 8px 24px rgba(214,161,60,0.32),
    0 2px 6px rgba(0,0,0,0.30),
    inset 0 1px 0 rgba(255,255,255,0.55);
  transition: transform 0.18s ease, box-shadow 0.18s ease, filter 0.18s ease;
}
.gc-sub-cta-btn--card:hover,
.gc-sub-cta-btn--card:focus-visible {
  transform: translateY(-2px);
  box-shadow:
    0 12px 30px rgba(214,161,60,0.45),
    0 4px 10px rgba(0,0,0,0.35),
    inset 0 1px 0 rgba(255,255,255,0.65);
  filter: brightness(1.04);
  outline: none;
}
.gc-sub-cta-btn--card:active { transform: translateY(0); }

.gc-sub-cta-btn__card-head {
  display: flex;
  align-items: center;
  gap: 10px;
}
.gc-sub-cta-btn--card .gc-sub-cta-btn__icon {
  font-size: 22px;
  line-height: 1;
  flex: 0 0 auto;
}
.gc-sub-cta-btn__head-text {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 2px;
  min-width: 0;
  flex: 1 1 auto;
}
.gc-sub-cta-btn--card .gc-sub-cta-btn__label {
  font-size: 16px;
  font-weight: 800;
  letter-spacing: 0.01em;
  white-space: normal;
  line-height: 1.15;
}
.gc-sub-cta-btn__price {
  font-size: 12px;
  font-weight: 600;
  color: #3a200a;
  opacity: 0.92;
  line-height: 1.2;
}
.gc-sub-cta-btn__price .amount,
.gc-sub-cta-btn__price bdi { font-weight: 700; color: #1b1004; }

.gc-sub-cta-btn__benefits {
  list-style: none;
  margin: 4px 0 0 0;
  padding: 10px 12px;
  border-radius: calc(var(--gc-radius-scale, 1) * 12px);
  background: rgba(27,16,4,0.14);
  display: grid;
  gap: 6px;
}
.gc-sub-cta-btn__benefits li {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12.5px;
  font-weight: 600;
  color: #1b1004;
  line-height: 1.25;
}
.gc-sub-cta-btn__benefit-icon {
  flex: 0 0 18px;
  width: 18px;
  height: 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: calc(var(--gc-radius-scale, 1) * 6px);
  background: rgba(27,16,4,0.20);
  color: #1b1004;
  font-size: 11px;
  line-height: 1;
}
.gc-sub-cta-btn__benefit-text { flex: 1 1 auto; min-width: 0; }

.gc-sub-cta-btn__chips--card {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  margin: 2px 0 0 0;
  justify-content: flex-start;
}
.gc-sub-cta-btn--card .gc-sub-cta-btn__chip {
  background: rgba(27,16,4,0.22);
  color: #1b1004;
  font-size: 10.5px;
  font-weight: 700;
  padding: 2px 7px;
  border-radius: var(--gc-radius-pill);
  line-height: 1.4;
}
.gc-sub-cta-btn__hint {
  margin-top: 2px;
  font-size: 11.5px;
  font-weight: 700;
  color: #2a1606;
  text-align: right;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  opacity: 0.9;
}

/* In the storefront hero corner, drop the absolute-position cap so the bigger
   card can occupy its natural width; keep it gracefully aligned to the right. */
.gc-storefront-identity-card__cta .gc-sub-cta-btn--card { width: clamp(260px, 26vw, 340px); max-width: 92vw; align-self: flex-start; }
@media (max-width: 720px) {
  .gc-sub-cta-btn--card {
    width: 100%;
    max-width: none;
  }
  .gc-storefront-identity-card__cta .gc-sub-cta-btn--card { width: 100%; }
}

/* ============================================================================
   gc_storefront_subscribe_card_v1 round-3 (2026-05-16): single render slot.
   The partial is now included ONCE in the natural DOM flow after the tab nav.
   On desktop the slot is absolute-positioned to the top-right of the identity
   card (same visual position as before); on mobile it flows inline below the
   tab pills (Buy Clips / Feed / Live Stream / Order Custom / Physical Items).
   The .gc-storefront-identity-card__cta wrapper is unchanged and continues to
   host the "Included in your subscription" badge for subscribed viewers.
   Avatar bump 136→168/112→144 kept; grid column max bumped to match.
   Card corners squared up so the CTA reads as a panel, not a pill.
   ============================================================================ */

/* Single-slot positioning */
.gc-storefront-subscribe-slot { display: block; }
.gc-storefront-subscribe-slot:empty { display: none !important; }
@media (max-width: 720px) {
  .gc-storefront-subscribe-slot { margin-top: 14px; }
  .gc-storefront-subscribe-slot .gc-sub-cta-btn--card { width: 100%; max-width: none; }
}
@media (min-width: 721px) {
  .gc-storefront-subscribe-slot {
    position: absolute;
    top: clamp(14px, 2vw, 22px);
    right: clamp(14px, 2vw, 22px);
    z-index: 2;
    width: clamp(260px, 26vw, 340px);
  }
  .gc-storefront-subscribe-slot .gc-sub-cta-btn--card { width: 100%; max-width: none; align-self: stretch; }
}

/* More rectangular corners across the card (was pill-ish at 16px / 12px / 999px) */
.gc-sub-cta-btn--card { border-radius: calc(var(--gc-radius-scale, 1) * 6px); }
.gc-sub-cta-btn__benefits { border-radius: calc(var(--gc-radius-scale, 1) * 4px); }
.gc-sub-cta-btn--card .gc-sub-cta-btn__chip { border-radius: calc(var(--gc-radius-scale, 1) * 3px); }
.gc-sub-cta-btn__benefit-icon { border-radius: calc(var(--gc-radius-scale, 1) * 3px); }

/* Avatar bump (creator stays in focus). Overrides the v1.3.0 storefront
   correction-pass rules. Both selectors are needed because that block sets
   max-width on .gc-storefront-identity-card__avatar directly (height is auto
   via aspect-ratio 1/1) and a media-query override for ≤820px. */
.gc-storefront-identity-card__avatar { max-width: 168px; }
.gc-storefront-identity-card { grid-template-columns: minmax(120px, 168px) minmax(0, 1fr); }
@media (max-width: 820px) {
  .gc-storefront-identity-card__avatar { max-width: 144px; }
  .gc-storefront-identity-card { grid-template-columns: 1fr; }
}

/* ===========================================================================
   Phase 70 - gc_feed_card_date_no_wrap_v1 (Section CD F.D3 layout bug)
   2026-05-16 - Feed card date was wrapping onto 3 lines on mobile 393.
   Root cause stack:
     1. .gc-feed-timeline-item__header is flex-row containing: avatar (44px)
        + byline (flex:1 1 0) + follow button (~102px) + badge (~88px).
     2. On 393px viewport, follow + badge + avatar + gaps eat ~268px of the
        273px content width, leaving ~5px for the byline column.
     3. Phase 43 (gc_feed_card_byline_mobile_touch_targets_v1) added
        min-width:44px on .gc-feed-timeline-item__author + __date - so each
        text anchor was forced to 44px wide, and "2 Wochen ago" wrapped to
        3 lines (one word per line).
   Fix:
     - At <=767px: allow header to flex-wrap; let byline take a full row
       below the avatar; remove min-width:44 floor on author/date (keep
       min-height for vertical touch comfort); add white-space:nowrap +
       text-overflow:ellipsis on the date so it cannot wrap.
     - Pairs with PHP fix (gc_feed_card_date_no_wrap_v1) in
       class-gc-feed-posts.php at lines 1864 + 3106: replaces hardcoded
       ' . " ago"' suffix with sprintf( __( '%s ago', 'guyscat-platform' ) )
       so DE renders "vor 2 Wochen" (via TRP) instead of "2 Wochen ago".
   =========================================================================== */
@media (max-width: 767px) {
  .gc-feed-timeline-item__header {
    flex-wrap: wrap;
    row-gap: 6px;
    align-items: flex-start;
  }
  .gc-feed-timeline-item__byline {
    flex: 1 1 calc(100% - 56px); /* full row width minus avatar(44)+gap(12) */
    min-width: 0;
  }
  .gc-feed-timeline-item__author,
  .gc-feed-timeline-item__date {
    min-width: 0 !important;        /* override Phase 43 44px floor */
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  .gc-feed-timeline-item__date {
    white-space: nowrap;
  }
}
/* Phase 70 END */

/* ===========================================================================
   Phase 71 - gc_feed_card_header_compact_v1 (Section CD F.D3 v2)
   2026-05-16 - Phase 70 stopped the 3-line date wrap but left the header
   awkward: byline took 90px of row 1 (author 44px + date 44px stacked),
   forcing follow-btn + badge onto row 2 floating in the middle.
   This pass tightens the byline so author + date stack with natural
   line-height (no 44px touch-target on text anchors), and reorders
   row 1 to "avatar + byline + badge", row 2 to follow-btn (right-aligned).
   Result: header ~70px tall (was 162px after Phase 70).
   =========================================================================== */
@media (max-width: 767px) {
  .gc-feed-timeline-item__header {
    align-items: flex-start;
    row-gap: 8px;
    column-gap: 10px;
    padding-top: 12px;
    padding-bottom: 12px;
  }
  /* Row 1: avatar + byline + badge */
  .gc-feed-timeline-item__avatar-link {
    order: 1;
  }
  .gc-feed-timeline-item__byline {
    order: 2;
    flex: 1 1 0;
    min-width: 0;
    gap: 2px;
  }
  .gc-feed-timeline-item__badge {
    order: 3;
    flex: 0 0 auto;
    align-self: center;
  }
  /* Row 2: follow button right-aligned */
  .gc-feed-follow-btn--card {
    order: 4;
    margin-left: auto;
    flex: 0 0 auto;
  }
  /* Compact byline text anchors (drop Phase 43's 44px touch floor on TEXT;
     the 44px touch target only matters for tappable icons, not for the
     creator-name link + relative-date link). */
  .gc-feed-timeline-item__author {
    min-height: 0 !important;
    line-height: 1.25;
    font-size: 15px;
  }
  .gc-feed-timeline-item__date {
    min-height: 0 !important;
    line-height: 1.25;
    font-size: 12px;
    opacity: 0.75;
  }
}
/* Phase 71 END */

/* ===========================================================================
   Phase 72 - gc_feed_card_header_grid_v1 (Section CD F.D3 v3)
   2026-05-16 - Phase 70 + 71 still left the byline squashed because the
   follow button stayed on row 1 with the avatar + byline + badge, eating
   the available width down to ~9px for the byline column.
   Switch to CSS grid on mobile: 3 columns x 2 rows.
     row 1: avatar | byline (name+date) | badge
     row 2:   .    | follow button (right-aligned spanning byline+badge)
   Wins via specificity + media query order against Phase 70 + 71.
   =========================================================================== */
@media (max-width: 767px) {
  .gc-feed-timeline-item__header {
    display: grid;
    grid-template-columns: 44px 1fr auto;
    grid-template-rows: auto auto;
    grid-template-areas:
      "avatar byline badge"
      ".      follow follow";
    column-gap: 10px;
    row-gap: 8px;
    align-items: center;
    flex-wrap: nowrap; /* neutralise Phase 70 flex-wrap */
  }
  .gc-feed-timeline-item__avatar-link { grid-area: avatar; align-self: start; }
  .gc-feed-timeline-item__byline {
    grid-area: byline;
    flex: unset;
    min-width: 0;
    max-width: 100%;
    display: flex;
    flex-direction: column;
    gap: 2px;
    align-self: center;
  }
  .gc-feed-timeline-item__badge {
    grid-area: badge;
    align-self: center;
    flex: unset;
  }
  .gc-feed-follow-btn--card {
    grid-area: follow;
    justify-self: end;
    margin-left: 0; /* neutralise Phase 71 margin-left: auto */
    flex: unset;
  }
  /* Author/date stay compact text anchors (no 44px touch floor on text) */
  .gc-feed-timeline-item__author {
    min-height: 0 !important;
    line-height: 1.25;
    font-size: 15px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .gc-feed-timeline-item__date {
    min-height: 0 !important;
    line-height: 1.25;
    font-size: 12px;
    opacity: 0.75;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
}
/* Phase 72 END */
/*gc_clip_watch_mobile_overflow_v1_START*/
/* gc_clip_watch_mobile_overflow_v1 2026-05-16 --- CSS Grid tracks default to min-width:auto, so on mobile (393px) the .gc-clip-strip flex-container grow to fit its 210px-wide .gc-clip-strip-card children, pushing docScrollW to 613px. Fix: constrain grid-tracks with min-width:0 and hard-clamp the carousel to viewport width. */
@media (max-width: 1180px) {
  .gc-clip-watch-main {
    min-width: 0; /* allow this grid item to shrink below intrinsic min-content */
  }
}

@media (max-width: 768px) {
  .gc-clip-watch-main,
  .gc-clip-watch-carousel,
  .gc-clip-watch-summary,
  .gc-clip-watch-longtext,
  .gc-clip-watch-comments {
    max-width: 100% !important;
    min-width: 0;
  }
  .gc-clip-strip {
    max-width: 100%;
    min-width: 0;
  }
}
/*gc_clip_watch_mobile_overflow_v1_END*/

/* gc_social_adultnative_v1 — storefront social row (adult-creator-native).
 * Renders in WCFMmp store header where the old icon row used to live. */
.gc-storefront-socials__list {
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	padding: 0;
	margin: 8px 0;
}
/* gc_storefront_socials_marker_fix_v1 -- prevents the near-white ::marker from rendering as a "white dot" in browsers where list-style:none on the parent does not suppress the marker pseudo. */
.gc-storefront-socials__item { margin: 0; list-style: none !important; }
.gc-storefront-socials__item::marker { content: '' !important; color: transparent !important; }
.gc-storefront-socials__link {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 6px 10px;
	border-radius: var(--gc-radius-pill);
	background: rgba(255, 255, 255, 0.08);
	border: 1px solid rgba(255, 255, 255, 0.12);
	color: inherit;
	text-decoration: none;
	line-height: 1;
	transition: background 0.15s ease, border-color 0.15s ease, transform 0.15s ease;
}
.gc-storefront-socials__link:hover,
.gc-storefront-socials__link:focus-visible {
	background: rgba(0, 200, 255, 0.12);
	border-color: rgba(0, 200, 255, 0.45);
	transform: translateY(-1px);
	outline: none;
}
.gc-storefront-socials__icon { display: inline-flex; align-items: center; }
.gc-storefront-socials__icon svg { display: block; }
.gc-storefront-socials__text { font-size: 13px; font-weight: 500; }
/* Per-platform brand colors on hover — subtle, applied to the icon stroke/fill only. */
.gc-storefront-socials__item--twitter   .gc-storefront-socials__link:hover { color: #fff; }
.gc-storefront-socials__item--instagram .gc-storefront-socials__link:hover { color: #e1306c; }
.gc-storefront-socials__item--telegram  .gc-storefront-socials__link:hover { color: #229ed9; }
.gc-storefront-socials__item--bluesky   .gc-storefront-socials__link:hover { color: #1185fe; }
.gc-storefront-socials__item--onlyfans  .gc-storefront-socials__link:hover { color: #00aff0; }
.gc-storefront-socials__item--fansly    .gc-storefront-socials__link:hover { color: #1ea7f4; }
.gc-storefront-socials__item--pornhub   .gc-storefront-socials__link:hover { color: #ff9000; }
.gc-storefront-socials__item--reddit    .gc-storefront-socials__link:hover { color: #ff4500; }
.gc-storefront-socials__item--other     .gc-storefront-socials__link:hover { color: var(--gc-accent); }

/* ==== gc_logout_btn_highlight_v1 — 2026-05-20 ====
 * /my-account/ Log out item was inheriting the near-transparent nav-link
 * style (background rgba(255,255,255,0.03)) and was hardly readable.
 * Paint it red so it visibly stands apart from the other endpoints.
 * Higher-specificity selectors override the base .woocommerce-MyAccount-
 * navigation-link a rule defined around line 4464.
 */
.gc-commerce-panel .woocommerce .woocommerce-MyAccount-navigation-link--customer-logout a,
.gc-commerce-panel .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout a,
.gc-account-nav__list li.woocommerce-MyAccount-navigation-link--customer-logout a,
.woocommerce-MyAccount-navigation-link--customer-logout > a {
  background: rgba(220, 38, 38, 0.18);
  border: 1px solid rgba(220, 38, 38, 0.55);
  color: #fecaca;
  font-weight: 700;
}
.gc-commerce-panel .woocommerce .woocommerce-MyAccount-navigation-link--customer-logout a:hover,
.gc-commerce-panel .woocommerce .woocommerce-MyAccount-navigation-link--customer-logout.is-active a,
.gc-account-nav__list li.woocommerce-MyAccount-navigation-link--customer-logout a:hover,
.gc-account-nav__list li.woocommerce-MyAccount-navigation-link--customer-logout.is-active a,
.woocommerce-MyAccount-navigation-link--customer-logout > a:hover {
  background: rgba(220, 38, 38, 0.35);
  border-color: rgba(239, 68, 68, 0.75);
  color: #fff;
}
/* ==== /gc_logout_btn_highlight_v1 ==== */

/* ==== gc_logout_btn_highlight_v1 (dashboard button variant) — 2026-05-20 ====
 * The actual Log out button on /my-account/ dashboard is rendered as
 * <a class="gc-button gc-button--ghost" href=".../customer-logout/...">,
 * not as a WC nav-link. Target it by href so the styling lands.
 */
.gc-account-dashboard__actions a.gc-button[href*="customer-logout"],
a.gc-button[href*="/customer-logout/"] {
  background: rgba(220, 38, 38, 0.20) !important;
  border: 1px solid rgba(220, 38, 38, 0.65) !important;
  color: #fecaca !important;
  font-weight: 700 !important;
}
.gc-account-dashboard__actions a.gc-button[href*="customer-logout"]:hover,
.gc-account-dashboard__actions a.gc-button[href*="customer-logout"]:focus-visible,
a.gc-button[href*="/customer-logout/"]:hover,
a.gc-button[href*="/customer-logout/"]:focus-visible {
  background: rgba(220, 38, 38, 0.40) !important;
  border-color: rgba(239, 68, 68, 0.85) !important;
  color: #fff !important;
}
/* ==== /gc_logout_btn_highlight_v1 (dashboard button variant) ==== */

/* gc_product_buybox_missing_asset_fallback_v1 (2026-05-23) -- styling for
   orphan-clip placeholder card and suppressed Add-to-Cart message.
   Renders inside .gc-clip-watch-player__media when both $preview_url and
   $poster_url are falsy on a non-physical product. */
.gc-clip-watch-player__media .gc-clip-watch-player__unavailable {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    aspect-ratio: 16 / 9;
    background: #14171c;
    color: #b6bcc6;
    border-radius: calc(var(--gc-radius-scale, 1) * 8px);
    padding: 32px 24px;
    gap: 10px;
}
.gc-clip-watch-player__unavailable-icon {
    font-size: 36px;
    line-height: 1;
    color: #ffb547;
}
.gc-clip-watch-player__unavailable-message {
    margin: 0;
    font-weight: 600;
    color: #f0f2f5;
    font-size: 16px;
}
.gc-clip-watch-player__unavailable-hint {
    margin: 0;
    font-size: 13px;
    color: #8a929e;
    max-width: 380px;
    line-height: 1.4;
}
.gc-clip-watch-buybox__unavailable {
    margin: 0;
    padding: 12px 16px;
    background: rgba(255, 181, 71, 0.08);
    border: 1px solid rgba(255, 181, 71, 0.3);
    border-radius: calc(var(--gc-radius-scale, 1) * 6px);
    color: #ffb547;
    font-size: 14px;
    font-weight: 500;
    text-align: center;
}

/* gc_n_bubble_meta_time_contrast_v1 (Group N 2026-06-03) -- customer chat timestamp 2.74:1 -> AA */
.gc-messages-panel__timeline .gc-message-bubble__meta,
.gc-messages-panel__timeline .gc-message-bubble__meta time { color: rgba(var(--gc-text-muted-rgb), 0.92) !important; }

/* gc_n_topup_quick_taptarget_v1 (Group N / K7 2026-06-03) -- live-room "+" quick top-up 22x22 -> WCAG2.2 AA 24px min */
.gc-topup-quick { min-width: 24px; min-height: 24px; }

/* gc_myaccount_login_register_align_v1 (2026-06-04) -- Dominik: (1) register box same height as login box
   (columns were grid with content-centering, short register form floated mid-column); (2) password Show
   button hugged the wrapper right edge while the input was only ~293px wide -- make the input fill the
   wrapper so the button sits at the field edge. */
.gc-commerce-panel .woocommerce .u-columns { align-items: stretch; }
.gc-commerce-panel .woocommerce .u-column1,
.gc-commerce-panel .woocommerce .u-column2 { grid-template-rows: auto 1fr; align-content: stretch; }
.gc-commerce-panel .woocommerce .u-column1 > form.woocommerce-form-login,
.gc-commerce-panel .woocommerce .u-column2 > form.woocommerce-form-register { height: 100%; box-sizing: border-box; }
.gc-commerce-panel .woocommerce .password-input input[type="password"],
.gc-commerce-panel .woocommerce .password-input input[type="text"] { width: 100% !important; box-sizing: border-box; }

/* gc_product_teaser_missing_render_poster_v1 (2026-06-05) -- poster + explicit
   no-preview overlay for clip products whose teaser asset is missing. Poster
   fills the player area; bottom gradient keeps text contrast >= 4.5:1 even on
   bright posters (worst case white poster behind 0.88 dark overlay). */
.gc-clip-watch-player__media .gc-clip-watch-player__noteaser {
    position: relative;
    border-radius: calc(var(--gc-radius-scale, 1) * 8px);
    overflow: hidden;
}
.gc-clip-watch-player__noteaser img {
    display: block;
    width: 100%;
    height: auto;
}
.gc-clip-watch-player__noteaser-overlay {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 18px 16px 14px;
    background: linear-gradient(180deg, rgba(10, 12, 16, 0) 0%, rgba(10, 12, 16, 0.82) 40%, rgba(10, 12, 16, 0.94) 100%);
    text-align: center;
    pointer-events: none;
}
.gc-clip-watch-player__noteaser-message {
    margin: 0;
    font-weight: 600;
    font-size: 15px;
    color: #f0f2f5;
}
.gc-clip-watch-player__noteaser-hint {
    margin: 2px 0 0;
    font-size: 13px;
    color: #c7cdd6;
    line-height: 1.4;
}

/* gc_sub_gradient_wcag_v2 -- white-text buttons on mint->purple gradient: darken mint stop so white clears AA (Batch5C: subscriptions View, clip-watch buybox cart). */
.gc-clip-watch-buybox__cart,
.woocommerce-MyAccount-content a.woocommerce-button.button,
.woocommerce-orders-table a.woocommerce-button.button,
a.woocommerce-button.button.view {
  background: linear-gradient(135deg, #1f8273, var(--gc-accent-2)) !important;
  color: #fff !important;
}
