/**
 * Vault forced palette — overrides Shopify Admin saved colors (Miason/cream legacy).
 * Loaded last intentionally.
 */

body.theme-tcg,
body.theme-tcg :root {
  --color-bg: #050508 !important;
  --color-bg-secondary: #0a0a10 !important;
  --color-card: #111118 !important;
  --color-warm-white: #ebe8e0 !important;
  --color-text: #ebe8e0 !important;
  --color-text-60: rgba(235, 232, 227, 0.62) !important;
  --color-text-40: rgba(235, 232, 227, 0.4) !important;
  --color-accent: #be9b4a !important;
  --color-accent-hover: #9a7d3a !important;
  --color-accent-text: #050508 !important;
  --color-green: #6b9ae8 !important;
  --color-beige: #16161e !important;
  --color-tortora: #6a6a78 !important;
  --color-wood: #be9b4a !important;
  --color-border: #26262f !important;
  --color-sale: #9e2233 !important;
  --vault-gold: #be9b4a !important;
  --vault-gold-dim: rgba(190, 155, 74, 0.14) !important;
  --vault-blue: #6b9ae8 !important;
  --vault-red: #9e2233 !important;
  --vault-crimson: #c43d52 !important;
  --btn-radius: 6px !important;
}

body.theme-tcg {
  background-color: #050508 !important;
  color: #ebe8e0 !important;
}

body.theme-tcg .announcement {
  background: #0a0a10 !important;
  color: #be9b4a !important;
}

body.theme-tcg .header--sticky {
  background: rgba(5, 5, 8, 0.92) !important;
  border-bottom-color: #26262f !important;
}

body.theme-tcg .header--over-hero:not(.is-scrolled) {
  background: transparent !important;
  border-bottom-color: transparent !important;
}

body.theme-tcg .footer {
  background: #050508 !important;
  border-top-color: #26262f !important;
}

body.theme-tcg .btn {
  border-radius: 6px !important;
}

body.theme-tcg .btn:not(.btn--vault-ghost):not(.btn--outline):not(.btn--outline-light) {
  background: #be9b4a !important;
  border-color: #be9b4a !important;
  color: #050508 !important;
}

body.theme-tcg .btn:hover:not(.btn--vault-ghost):not(.btn--outline):not(.btn--outline-light) {
  background: #9a7d3a !important;
  border-color: #9a7d3a !important;
  box-shadow: 0 8px 24px -8px rgba(0, 0, 0, 0.6) !important;
}

body.theme-tcg .eyebrow {
  color: #be9b4a !important;
}

body.theme-tcg .card__tag {
  background: rgba(190, 155, 74, 0.14) !important;
  color: #be9b4a !important;
  border: 1px solid rgba(190, 155, 74, 0.25) !important;
}

body.theme-tcg .newsletter__form input[type="email"] {
  background: #0a0a10 !important;
  border-color: #26262f !important;
  color: #ebe8e0 !important;
}

body.theme-tcg .facets__price input,
body.theme-tcg .collection-toolbar__sort select {
  background: #0a0a10 !important;
  border-color: rgba(120, 130, 180, 0.28) !important;
  border-radius: 10px !important;
  color: #ebe8e0 !important;
}

/* Quantity stepper uses --color-warm-white for its background, which in this
   dark palette equals --color-text (#ebe8e0), making the number invisible. */
body.theme-tcg .qty {
  background: #0a0a10 !important;
  border-color: #26262f !important;
}
body.theme-tcg .qty__input,
body.theme-tcg .qty__btn {
  color: #ebe8e0 !important;
}

body.theme-tcg .nav-drawer__panel,
body.theme-tcg .cart-drawer__panel,
body.theme-tcg .facets-drawer__panel {
  background: #0a0a10 !important;
}

body.theme-tcg .to-top {
  background: #111118 !important;
  border-color: #26262f !important;
  color: #ebe8e0 !important;
}

/* Catalog hub */
.catalog-hub__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  margin-bottom: 32px;
}

.catalog-hub__card {
  display: flex;
  flex-direction: column;
  padding: 22px;
  text-decoration: none;
  color: inherit;
  border-top: 3px solid var(--vault-gold);
  transition: transform 0.25s ease, border-color 0.25s ease;
}

.catalog-hub__card--blue { border-top-color: var(--vault-blue); }
.catalog-hub__card--red { border-top-color: var(--vault-crimson); }
.catalog-hub__card--neutral { border-top-color: var(--color-border); }

.catalog-hub__card:hover {
  transform: translateY(-3px);
  border-color: rgba(190, 155, 74, 0.45);
}

.catalog-hub__code {
  font-family: ui-monospace, monospace;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  color: var(--vault-gold);
  margin-bottom: 8px;
}

.catalog-hub__card--blue .catalog-hub__code { color: var(--vault-blue); }
.catalog-hub__card--red .catalog-hub__code { color: var(--vault-crimson); }

.catalog-hub__title { font-size: 1.1rem; margin: 0 0 8px; }
.catalog-hub__desc { font-size: 0.88rem; color: var(--color-text-60); margin: 0 0 14px; line-height: 1.5; flex: 1; }

.catalog-hub__link {
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--vault-gold);
}

.catalog-hub__footer {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-bottom: 16px;
}

.catalog-hub__note {
  font-size: 0.78rem;
  color: var(--color-text-40);
  line-height: 1.5;
  margin: 0;
}

@media (max-width: 989px) {
  .catalog-hub__grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 749px) {
  .catalog-hub__grid { grid-template-columns: 1fr; }
}
