/* Approved next-page adapters; no new requests or behavioural controls. */
html[data-tcgn-v1] #main.tcgn-page-shell .tcgn-title-row h1 {
  font-size: var(--tcgn-page-title-size);
  line-height: 1.12;
  font-weight: 700;
  letter-spacing: -0.035em;
}
@media (max-width: 700px) {
  html[data-tcgn-v1] #main.tcgn-page-shell .tcgn-title-row h1 {
    font-size: var(--tcgn-page-title-mobile-size);
  }
}
html[data-tcgn-v1][data-tcgn-page]:is(
    [data-tcgn-page='wishlist'],
    [data-tcgn-page='activity'],
    [data-tcgn-page='insights'],
    [data-tcgn-page='account']
  )
  #main
  :is(.page-heading h1, .insights-intro h1, .account-header h1) {
  font-size: var(--tcgn-page-title-size);
  line-height: 1.12;
  font-weight: 700;
  letter-spacing: -0.035em;
}
html[data-tcgn-v1] .activity-filters {
  border-bottom: 0;
  gap: 8px;
}
html[data-tcgn-v1] .activity-filters a {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  padding: 0 16px;
  border: 1px solid var(--border);
  border-radius: var(--tcgn-radius-control);
  color: var(--muted);
  font: 600 13px/var(--tcgn-control-line) var(--tcgn-control-font);
}
html[data-tcgn-v1] .activity-filters a[aria-current] {
  color: var(--text);
  background: var(--surface-secondary);
  border-color: var(--control-border);
}
html[data-tcgn-v1] .activity-filters a:hover {
  color: var(--text);
  background: var(--hover);
  text-decoration: none;
}
html[data-tcgn-v1] .activity-feed li {
  padding: 12px 0;
  background: transparent;
}
html[data-tcgn-v1] .activity-feed .activity-placeholder {
  border-radius: var(--tcgn-radius-control);
  color: var(--muted);
  background: var(--surface);
}
html[data-tcgn-v1] :is(.activity-empty, .collection-empty) {
  padding: 24px 0;
  background: transparent;
  border: 0;
  box-shadow: none;
}
html[data-tcgn-v1] .collection-empty h2 {
  font-size: 20px;
}
html[data-tcgn-v1] .collection-empty p {
  color: var(--muted);
}
/* Same flat metrics vocabulary; two real snapshot counters, no invented KPIs. */
html[data-tcgn-v1] .insight-facts {
  gap: 0;
  border: 1px solid var(--border);
  border-radius: var(--tcgn-radius-surface);
  overflow: hidden;
  background: var(--surface);
}
html[data-tcgn-v1] .insight-facts > div {
  border: 0;
  border-radius: 0;
  padding: 20px 24px;
  min-height: 110px;
  background: transparent;
  flex-direction: column-reverse;
  justify-content: center;
  gap: 8px;
}
html[data-tcgn-v1] .insight-facts > div + div {
  border-inline-start: 1px solid var(--border);
}
html[data-tcgn-v1] .insight-facts strong {
  font-size: 32px;
  line-height: 38px;
  font-weight: 700;
}
html[data-tcgn-v1] .insight-facts span {
  font-size: 11px;
  line-height: 16px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--muted);
}
html[data-tcgn-v1] .insights-page .section-title h2 {
  font-size: 24px;
  line-height: 1.2;
}
html[data-tcgn-v1] .insights-page .set-sparkline {
  color: var(--brand);
}
html[data-tcgn-v1] .insight-change:is(.up, .down) {
  color: var(--muted);
}
html[data-tcgn-v1] .insight-row:hover {
  color: var(--text);
  background: var(--hover);
  text-decoration: none;
}
/* Network Account anatomy: original data/actions; compact flat sections. */
html[data-tcgn-v1] .account-shell {
  max-width: 900px;
}
html[data-tcgn-v1] .account-section > h2,
html[data-tcgn-v1] #identity-heading {
  font-size: 18px;
  line-height: 24px;
  margin-bottom: 16px;
}
html[data-tcgn-v1] .account-row {
  min-height: 80px;
  padding: 16px 0;
}
html[data-tcgn-v1] .account-row h3 {
  margin: 0 0 8px;
  font-size: 15px;
}
html[data-tcgn-v1] .account-row-details:has(> p:only-child) p {
  margin: 0;
}
html[data-tcgn-v1] .account-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  border-radius: var(--tcgn-radius-control);
  padding: 0 16px;
  font: 600 13px/var(--tcgn-control-line) var(--tcgn-control-font);
  border: 1px solid var(--border);
  box-shadow: none;
}
html[data-tcgn-v1] .account-workspace .account-action:not(.secondary) {
  background: var(--brand);
  color: var(--on-mint);
}
html[data-tcgn-v1] .account-action.secondary {
  background: var(--surface-secondary);
  color: var(--text);
}
html[data-tcgn-v1] .account-action:hover {
  background: var(--hover);
  color: var(--text);
  text-decoration: none;
}
html[data-tcgn-v1] .account-workspace .account-progress {
  height: 4px;
  border-radius: var(--tcgn-radius-control);
}
html[data-tcgn-v1] .account-progress::-webkit-progress-value {
  background: var(--brand);
}
html[data-tcgn-v1] .account-progress::-moz-progress-bar {
  background: var(--brand);
}
@media (max-width: 700px) {
  html[data-tcgn-v1][data-tcgn-page]:is(
      [data-tcgn-page='wishlist'],
      [data-tcgn-page='activity'],
      [data-tcgn-page='insights'],
      [data-tcgn-page='account']
    )
    #main
    :is(.page-heading h1, .insights-intro h1, .account-header h1) {
    font-size: var(--tcgn-page-title-mobile-size);
  }
  html[data-tcgn-v1] .insight-facts > div {
    padding: 10px 8px;
    min-height: 68px;
    gap: 4px;
  }
  html[data-tcgn-v1] .insight-facts strong {
    font-size: 18px;
    line-height: 24px;
  }
  html[data-tcgn-v1] .insight-facts span {
    font-size: 9px;
    line-height: 12px;
    letter-spacing: 0.04em;
  }
  html[data-tcgn-v1] .account-header {
    padding: 24px 0;
  }
  html[data-tcgn-v1] .account-row {
    grid-template-columns: minmax(0, 1fr);
    gap: 12px;
  }
  html[data-tcgn-v1] .account-row-details {
    grid-column: auto;
    grid-row: auto;
  }
  html[data-tcgn-v1] .account-row > :is(.account-action, .account-subscription-action) {
    width: 100%;
  }
  html[data-tcgn-v1] .account-usage-groups {
    grid-template-columns: minmax(0, 1fr);
  }
  html[data-tcgn-v1] .account-identity {
    grid-template-columns: minmax(0, 1fr);
    gap: 16px;
  }
}

/* Canonical page stack. These tokens own page rhythm, including sticky insets. */
html[data-tcgn-v1] {
  --tcgn-page-breadcrumb-inset: 20px;
  --tcgn-page-stack-gap: 24px;
  --tcgn-page-chip-gap: 12px;
  --tcgn-page-section-gap: 32px;
  --tcgn-toolbar-inset: 12px;
}
html[data-tcgn-v1] #main.tcgn-page-shell {
  padding-top: var(--tcgn-page-breadcrumb-inset);
}
html[data-tcgn-v1] #main.tcgn-page-shell > .breadcrumb-bar {
  display: block;
  position: static;
  padding: 0;
  margin: 0 0 var(--tcgn-page-stack-gap);
  height: auto;
  min-height: 0;
  background: transparent;
  border: 0;
}
html[data-tcgn-v1] #main.tcgn-page-shell .tcgn-title-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 0;
  margin: 0 0 var(--tcgn-page-stack-gap);
}
html[data-tcgn-v1] #main.tcgn-page-shell .tcgn-title-row h1 {
  margin: 0;
}
html[data-tcgn-v1] #main.tcgn-page-shell .insights-page {
  padding-top: 0;
}
html[data-tcgn-v1] #main.tcgn-page-shell .insights-intro {
  flex-wrap: wrap;
}
html[data-tcgn-v1] #main.tcgn-page-shell .insights-intro > p {
  width: 100%;
}
html[data-tcgn-v1] #main.tcgn-page-shell :is(.catalogue-controls, .activity-filters) {
  position: sticky;
  top: var(--product-header-height);
  z-index: 30;
  padding: var(--tcgn-toolbar-inset) 0;
  margin: 0 0 var(--tcgn-page-stack-gap);
  background: var(--page);
  border: 0;
  box-shadow: none;
}
html[data-tcgn-v1] #main.tcgn-page-shell .active-filter-chips {
  margin-top: var(--tcgn-page-chip-gap);
}
html[data-tcgn-v1] #main.tcgn-page-shell :is(#progressive-cards, .activity-feed) {
  margin-top: 0;
}
html[data-tcgn-v1] #main.tcgn-page-shell :is(.insight-section, .insight-snapshot) {
  margin-top: var(--tcgn-page-section-gap);
}
html[data-tcgn-v1] .tcgn-page-utility {
  flex: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 38px;
  min-height: 38px;
  padding: 0 16px;
  border-radius: var(--tcgn-radius-pill);
  background: var(--text);
  color: var(--page);
  border: 0;
}
html[data-tcgn-v1] .activity-feed li.tcgn-date-separator {
  padding: 16px 0 8px;
  border: 0;
  font-size: 12px;
  font-weight: 600;
  color: var(--muted);
}
html[data-tcgn-v1] .activity-feed li:not(.tcgn-date-separator):hover {
  background: var(--hover);
}
html[data-tcgn-v1] #main.tcgn-page-shell .account-section {
  padding: 24px;
  margin: 0 0 var(--tcgn-page-stack-gap);
  border-radius: var(--tcgn-radius-surface);
  background: var(--surface);
  border: 0;
}
html[data-tcgn-v1] #main.tcgn-page-shell .account-identity {
  display: grid;
  grid-template-columns: 1fr 1.5fr 1fr;
  gap: 0;
  margin: 0;
  border-radius: var(--tcgn-radius-surface);
  overflow: hidden;
  background: var(--surface-secondary);
}
html[data-tcgn-v1] #main.tcgn-page-shell .account-identity > div {
  padding: 16px;
  min-width: 0;
}
html[data-tcgn-v1] #main.tcgn-page-shell .account-identity > div + div {
  border-inline-start: 1px solid var(--border);
}
html[data-tcgn-v1] #main.tcgn-page-shell .account-identity dt {
  text-transform: uppercase;
  font-size: 10px;
  letter-spacing: 0.04em;
}
html[data-tcgn-v1] #main.tcgn-page-shell .account-identity dd {
  font-size: 14px;
  margin: 8px 0 0;
}
@media (max-width: 700px) {
  html[data-tcgn-v1] {
    --tcgn-page-stack-gap: 20px;
    --tcgn-page-section-gap: 24px;
    --tcgn-toolbar-inset: 8px;
    --tcgn-page-breadcrumb-inset: 16px;
  }
  html[data-tcgn-v1] #main.tcgn-page-shell .account-section {
    padding: 16px;
  }
  html[data-tcgn-v1] #main.tcgn-page-shell .account-identity {
    grid-template-columns: minmax(0, 1fr);
  }
  html[data-tcgn-v1] #main.tcgn-page-shell .account-identity > div + div {
    border-inline-start: 0;
    border-top: 1px solid var(--border);
  }
}
html[data-tcgn-v1]
  #main.tcgn-page-shell
  > :is(.v1-set-page, .insights-page, .personal-activity, .community-activity, .account-shell) {
  padding-top: 0;
}
html[data-tcgn-v1] #main.tcgn-page-shell .tcgn-title-row .tcgn-page-utility {
  margin: 0;
  background: #f3f5f4;
  color: #0c0e0e;
}
html[data-tcgn-v1] #main.tcgn-page-shell:has(.account-shell) > .breadcrumb-bar .breadcrumbs {
  max-width: 900px;
  margin-inline: auto;
}
html[data-tcgn-v1] #main.tcgn-page-shell > .breadcrumb-bar .breadcrumbs {
  padding: 0;
  min-height: 18px;
  height: auto;
  line-height: 18px;
  font-size: 11px;
  gap: 8px;
}
/* Canonical Collection and Set renderers enter the same Page Shell. */
html[data-tcgn-v1] #main.tcgn-page-shell :is(.collection-analytics, .value-metrics) {
  margin: 0 0 var(--tcgn-page-stack-gap);
}
html[data-tcgn-v1] #main.tcgn-page-shell .set-hero {
  padding: 0;
}
html[data-tcgn-v1] #main.tcgn-page-shell .set-hero h1 {
  font-size: var(--tcgn-page-title-size);
  line-height: 1.12;
  letter-spacing: -0.035em;
}
@media (max-width: 700px) {
  html[data-tcgn-v1] #main.tcgn-page-shell .set-hero h1 {
    font-size: var(--tcgn-page-title-mobile-size);
  }
}

/* Shared set header: title left, one metadata/action composition at the right edge. */
html[data-tcgn-v1] #main.tcgn-page-shell .set-hero .set-identity {
  width: 100%;
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  column-gap: var(--tcgn-page-section-gap);
}
html[data-tcgn-v1] #main.tcgn-page-shell .set-hero .set-meta-actions {
  grid-column: 2;
  grid-row: 1 / 3;
  justify-self: end;
  align-self: center;
  justify-items: end;
  gap: var(--tcgn-page-chip-gap);
  text-align: right;
}
html[data-tcgn-v1] #main.tcgn-page-shell .set-hero .metadata {
  justify-content: flex-end;
  flex-wrap: wrap;
  max-width: none;
  gap: var(--tcgn-page-chip-gap);
}
html[data-tcgn-v1] #main.tcgn-page-shell .set-hero .metadata > span {
  white-space: nowrap;
}
@media (max-width: 700px) {
  html[data-tcgn-v1] #main.tcgn-page-shell .set-hero .set-identity {
    grid-template-columns: minmax(0, 1fr);
  }
  html[data-tcgn-v1] #main.tcgn-page-shell .set-hero .set-meta-actions {
    grid-column: 1;
    grid-row: auto;
    justify-self: start;
    justify-items: start;
    text-align: left;
    margin-top: var(--tcgn-page-chip-gap);
  }
  html[data-tcgn-v1] #main.tcgn-page-shell .set-hero .metadata {
    justify-content: flex-start;
    max-width: 100%;
  }
  html[data-tcgn-v1] #main.tcgn-page-shell .set-hero .metadata > span:last-child {
    flex-basis: 100%;
  }
}

/* Shared card-detail composition; original data/controls remain authoritative. */
html[data-tcgn-v1] .tcgn-card-detail {display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);gap:48px;align-items:start;margin:var(--tcgn-page-section-gap) 0 0;padding:0;background:transparent;border:0;box-shadow:none}
html[data-tcgn-v1] .tcgn-card-detail .detail-image {display:flex;flex-direction:column;align-items:center;gap:20px;padding:0;background:transparent;border:0;min-width:0}
html[data-tcgn-v1] .tcgn-card-detail .card-foreground {width:min(100%,380px);height:auto;aspect-ratio:5/7;background:transparent;box-shadow:none}
html[data-tcgn-v1] .tcgn-card-detail .detail-image img {width:100%;height:100%;max-height:none;object-fit:contain;border-radius:12px}
html[data-tcgn-v1] .tcgn-card-detail .detail-copy {min-width:0;display:flex;flex-direction:column;gap:18px}
html[data-tcgn-v1] .tcgn-card-detail .card-title {margin:0}
html[data-tcgn-v1] .tcgn-card-detail h1 {font-size:36px;line-height:1.12;letter-spacing:-.035em;margin:0}
html[data-tcgn-v1] .tcgn-card-detail .detail-set-identity {font-size:15px;margin:0;color:var(--muted)}
html[data-tcgn-v1] .tcgn-card-detail .detail-meta {display:flex;flex-wrap:wrap;gap:12px;margin:0;color:var(--muted);font-size:13px}
html[data-tcgn-v1] .tcgn-price-summary {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0}
html[data-tcgn-v1] .tcgn-price-summary.raw-only {grid-template-columns:1fr}
html[data-tcgn-v1] .tcgn-price-summary > div {display:flex;flex-direction:column;gap:8px;padding:20px;background:var(--surface);border:0;border-radius:16px;box-shadow:none}
html[data-tcgn-v1] .tcgn-price-summary span {font-size:12px;color:var(--muted)}
html[data-tcgn-v1] .tcgn-price-summary strong {font-size:26px;line-height:1.15;letter-spacing:-.025em;color:var(--text)}
html[data-tcgn-v1] .tcgn-card-detail .collection-action {margin:0;padding:0;background:transparent;border:0}
html[data-tcgn-v1] .tcgn-card-detail .section-title {margin:0 0 12px}
html[data-tcgn-v1] .tcgn-card-detail h2 {font-size:18px;line-height:24px;margin:0}
html[data-tcgn-v1] .tcgn-card-detail .card-neighbours {display:flex;justify-content:space-between;gap:12px;width:min(100%,380px);margin:0;padding:0}
html[data-tcgn-v1] .tcgn-card-detail .card-neighbours a {display:flex;align-items:center;min-height:44px;max-width:48%;font-size:13px;color:var(--muted);text-decoration:none}
html[data-tcgn-v1] .tcgn-card-detail .price-history {margin:0;padding:18px 0;background:transparent;border:0;border-radius:0;box-shadow:none}
html[data-tcgn-v1] .tcgn-card-detail dl {margin:0;font-size:13px}
html[data-tcgn-v1] .tcgn-card-detail .card-menu,html[data-tcgn-v1] .tcgn-card-detail .graded-panel {background:var(--surface);border:0;border-radius:16px;padding:16px;margin:0}
@media(max-width:900px) {
 html[data-tcgn-v1] .tcgn-card-detail {grid-template-columns:1fr;gap:24px}
 html[data-tcgn-v1] .tcgn-card-detail .card-foreground {width:280px;max-width:100%}
 html[data-tcgn-v1] .tcgn-card-detail .card-neighbours {width:100%;max-width:420px}
}
@media(max-width:700px) {
 html[data-tcgn-v1] .tcgn-card-detail {margin-top:var(--tcgn-page-section-gap);gap:20px}
 html[data-tcgn-v1] .tcgn-card-detail .card-foreground {width:230px}
 html[data-tcgn-v1] .tcgn-card-detail h1 {font-size:28px}
 html[data-tcgn-v1] .tcgn-price-summary > div {padding:16px}
 html[data-tcgn-v1] .tcgn-price-summary strong {font-size:24px}
 html[data-tcgn-v1] .tcgn-card-detail .detail-copy {gap:16px}
}
html[data-tcgn-v1] .tcgn-card-detail .price-chart .chart-line {stroke:var(--price-blue)}
html[data-tcgn-v1] .tcgn-card-detail .price-chart circle {fill:var(--price-blue);stroke:var(--price-blue)}
html[data-tcgn-v1] .tcgn-card-detail .price-chart path[fill^="url"] {fill:none}
html[data-tcgn-v1] .tcgn-card-detail .price-chart .chart-grid {stroke:var(--line);stroke-opacity:.45}
html[data-tcgn-v1] .tcgn-card-detail .card-menu summary {font-size:15px;min-height:44px;display:flex;align-items:center}
html[data-tcgn-v1] .tcgn-card-detail .graded-panel h3 {font-size:18px}
html[data-tcgn-v1] .tcgn-card-detail .detail-image {width:100%;max-width:none}
html[data-tcgn-v1] .tcgn-card-detail .detail-image img {opacity:0;transition:opacity 180ms ease}
html[data-tcgn-v1] .tcgn-card-detail .detail-image img.tcgn-image-ready {opacity:1}
@media(prefers-reduced-motion:reduce) {html[data-tcgn-v1] .tcgn-card-detail .detail-image img {transition:none}}
@media(max-width:700px) {
 html[data-tcgn-v1] #main .tcgn-detail-breadcrumb {flex-wrap:wrap}
 html[data-tcgn-v1] #main .tcgn-detail-breadcrumb > :is(:nth-child(3),:nth-child(4),:nth-child(5),:nth-child(6)) {display:none}
 html[data-tcgn-v1] #main .tcgn-detail-breadcrumb > :not(.breadcrumb-separator) {flex:0 1 auto;max-width:none;white-space:normal;overflow:visible;text-overflow:clip}
}
/* Semantic Wishlist colour overrides product accents throughout the opted-in UI. */
html[data-tcgn-v1] :is(.wishlist,[data-workspace-wishlist],#scan-wish) {color:var(--wishlist);background:transparent}
html[data-tcgn-v1] :is(.wishlist,[data-workspace-wishlist],#scan-wish):is(:hover,:focus-visible,[aria-pressed=true]) {color:var(--wishlist);background:transparent}
html[data-tcgn-v1] :is(.wishlist,[data-workspace-wishlist])[aria-pressed=true] svg {fill:currentColor}
html[data-tcgn-v1] .tcgn-card-detail .card-title {display:flex;align-items:center;gap:12px}
html[data-tcgn-v1] .tcgn-card-detail .card-title h1 {margin-right:auto}
html[data-tcgn-v1] .tcgn-card-detail .card-title .wishlist {position:static;inset:auto;min-width:44px;min-height:44px;color:var(--wishlist);background:transparent}
html[data-tcgn-v1] .tcgn-price-summary {background:var(--surface);border-radius:16px;gap:0;overflow:visible}
html[data-tcgn-v1] .tcgn-price-summary > div {position:relative;min-width:0;background:transparent;border-radius:0;padding:20px}
html[data-tcgn-v1] .tcgn-price-summary > div+div {border-left:1px solid var(--line)}
html[data-tcgn-v1] .tcgn-price-summary .chart-treatment-select {position:absolute;right:16px;top:12px;min-height:32px;max-width:55%;padding:4px 24px 4px 8px;border:0;border-radius:8px;background:var(--surface-secondary);font-size:11px}
html[data-tcgn-v1] .tcgn-detail-meta-actions {display:flex;align-items:center;justify-content:space-between;gap:16px}
html[data-tcgn-v1] .tcgn-card-detail .tcgn-detail-meta-actions .purchase-actions {margin:0;flex-shrink:0}
html[data-tcgn-v1] .tcgn-detail-meta-actions .purchase-actions a {font-size:12px;padding:0 12px;min-height:38px;background:var(--surface-secondary);border:0}
html[data-tcgn-v1] .tcgn-menu {position:relative;flex-shrink:0}
html[data-tcgn-v1] .tcgn-menu summary {list-style:none;display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;cursor:pointer;font-size:24px;background:transparent}
html[data-tcgn-v1] .tcgn-menu summary::-webkit-details-marker {display:none}
html[data-tcgn-v1] .tcgn-menu-panel {position:absolute;right:0;top:48px;min-width:190px;max-width:calc(100vw - 40px);z-index:25;background:var(--surface-secondary);padding:6px;border-radius:12px;box-shadow:0 12px 36px #0006}
html[data-tcgn-v1] :is(.tcgn-menu-panel,.card-menu>div) .custom-set-card-action,html[data-tcgn-v1] .custom-set-card-action {display:flex;align-items:center;min-height:44px;width:100%;padding:10px 12px;border:0;border-radius:8px;outline:0;background:transparent;box-shadow:none;text-align:left;color:var(--text)}
html[data-tcgn-v1] .custom-set-card-action:hover {background:var(--surface-secondary);box-shadow:none;outline:0}
html[data-tcgn-v1] .tcgn-menu-panel .custom-set-card-action:hover {background:var(--surface)}
html[data-tcgn-v1] .custom-set-card-action:focus-visible {outline:2px solid var(--focus);outline-offset:-2px}
@media(max-width:700px){
 html[data-tcgn-v1] .tcgn-detail-meta-actions {align-items:flex-start;flex-wrap:wrap;gap:8px}
 html[data-tcgn-v1] .tcgn-price-summary > div {padding:16px}
 html[data-tcgn-v1] .tcgn-price-summary .chart-treatment-select {position:static;max-width:100%;align-self:flex-start;order:3;margin-top:4px}
}
html[data-tcgn-v1] .custom-set-card-action {cursor:pointer;opacity:1}
html[data-tcgn-v1] .custom-set-card-action:disabled {cursor:not-allowed;opacity:.45}
html[data-tcgn-v1] #main .card-menu > div {background:var(--surface-secondary);border:0;border-radius:12px;box-shadow:0 12px 36px #0006}
html[data-tcgn-v1] #main .card-menu button.custom-set-card-action {padding:10px 12px;min-height:44px;border:0;border-radius:8px;background:transparent;outline:0;box-shadow:none}
html[data-tcgn-v1] #main .card-menu button.custom-set-card-action:hover {background:var(--surface);outline:0;box-shadow:none}
html[data-tcgn-v1] #main .card-menu button.custom-set-card-action:focus-visible {outline:2px solid var(--focus);outline-offset:-2px}

/* The visual stack sticks only while the detail layout has two columns. */
html[data-tcgn-v1] .tcgn-card-detail .detail-image {position:static;align-self:start}
html[data-tcgn-v1] .tcgn-card-detail .card-neighbours a:is(:hover,:focus-visible) {color:var(--text);text-decoration:none;background:transparent}
@media(min-width:901px) {
 html[data-tcgn-v1] .tcgn-card-detail .detail-image {position:sticky;top:calc(var(--product-header-height) + var(--tcgn-page-breadcrumb-inset))}
 html[data-tcgn-v1] .tcgn-card-detail .card-foreground {width:min(100%,380px,max(180px,calc((100svh - var(--product-header-height) - 2 * var(--tcgn-page-breadcrumb-inset) - 64px) * 5 / 7)))}
}

/* Compact visual stack, with shared lower clearance reserved while sticky. */
html[data-tcgn-v1] .tcgn-card-detail .detail-image {gap:10px}
@media(min-width:901px) {
 html[data-tcgn-v1] .tcgn-card-detail .detail-image {padding-bottom:var(--tcgn-page-section-gap)}
 html[data-tcgn-v1] .tcgn-card-detail .card-foreground {width:min(100%,380px,max(180px,calc((100svh - var(--product-header-height) - 2 * var(--tcgn-page-breadcrumb-inset) - 54px - var(--tcgn-page-section-gap)) * 5 / 7)))}
}
html[data-tcgn-v1] .tcgn-card-detail .detail-image {gap:5px}
@media(min-width:901px) {
 html[data-tcgn-v1] .tcgn-card-detail .detail-image {padding-bottom:calc(2 * var(--tcgn-page-section-gap))}
 html[data-tcgn-v1] .tcgn-card-detail .card-foreground {width:min(100%,380px,max(180px,calc((100svh - var(--product-header-height) - 2 * var(--tcgn-page-breadcrumb-inset) - 49px - 2 * var(--tcgn-page-section-gap)) * 5 / 7)))}
}
html[data-tcgn-v1] .legal-document {max-width:900px;margin:0 auto;padding:0 0 40px;font-size:15px;line-height:1.75;color:var(--muted)}
html[data-tcgn-v1] .legal-document h1 {font-size:38px;line-height:1.15;color:var(--text);margin:0 0 20px}
html[data-tcgn-v1] .legal-document h2 {font-size:20px;line-height:1.35;color:var(--text);margin:32px 0 12px}
html[data-tcgn-v1] .legal-document h3 {font-size:16px;color:var(--text);margin:24px 0 10px}
html[data-tcgn-v1] .legal-document p,html[data-tcgn-v1] .legal-document ul,html[data-tcgn-v1] .legal-document ol {margin:0 0 18px}
html[data-tcgn-v1] .legal-document li {margin:8px 0}
html[data-tcgn-v1] .legal-document a {color:var(--text);text-underline-offset:3px}
html[data-tcgn-v1] #main:has(.legal-document) > .breadcrumb-bar .breadcrumbs {max-width:900px;margin-inline:auto}
@media(max-width:700px){html[data-tcgn-v1] .legal-document h1{font-size:28px}}
html[data-tcgn-v1] .legal-document address {font-style:normal;margin:18px 0 24px}
html[data-tcgn-v1] .legal-document button {font:inherit;border:0;border-radius:8px;padding:10px 14px;background:var(--surface-secondary);color:var(--text)}

/* Static legal pages keep their current breadcrumb on mobile. */
html[data-tcgn-v1] #main:has(.legal-document) > .breadcrumb-bar .breadcrumbs > [aria-current="page"] {display:inline}

/* Shared catalogue cards retain their resting surface and never underline text. */
html[data-tcgn-v1] #main :is(.set-tile, .set-card, .collection-set):is(:hover, :focus-visible) {
  background: var(--surface);
  text-decoration: none;
}
html[data-tcgn-v1] #main :is(.set-tile, .set-card, .collection-set):is(:hover, :focus-visible) :is(h3, span, p) {
  text-decoration: none;
}

html[data-tcgn-v1] .legal-workspace {--tcgn-legal-title-gap:64px}
html[data-tcgn-v1] .legal-document {padding-top:var(--tcgn-legal-title-gap,64px)}
@media(max-width:700px){html[data-tcgn-v1] .legal-workspace {--tcgn-legal-title-gap:40px}}
