@font-face{font-family:'Special Elite';src:url('../fonts/game-special-elite.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Chivo Mono';src:url('../fonts/game-chivo-mono-bold.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'Chivo Mono';src:url('../fonts/chivo-mono.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Chivo';src:url('../fonts/game-chivo-bold.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'Chivo';src:url('../fonts/chivo.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Archivo Variable';src:url('../fonts/game-archivo-variable.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:'Archivo Black';src:url('../fonts/archivo-black.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
/* Generated from src/index.css. Refresh with scripts/export-game-components.mjs; do not recreate the game card styling here. */
.game-object{

  --color-blackout: #06060A;
  --color-panel: #161616;
  --color-toner: #77776E;
  --color-paper: #EDEAE3;
  --color-accent: #F0ABFC;
  --color-live: #A7F3D0;
  --color-alarm: #FDE68A;
  --color-info: #93C5FD;
  --color-hazard: var(--color-alarm);
  --color-volt: #8EA7E3;
  --color-forge: #E58C6C;
  --color-shield: #3DB87E;
  --color-ember: #DFBC59;
  --color-pulse: #BA8AE0;
  --color-flow: #57C0D0;
  --color-seed: #92CC30;
  --color-crest: #A3131D;
  --color-common: #2E2E2C;
  --color-uncommon: #D8D8D0;
  --color-rare: #A98BF5;
  --color-epic: #F2E500;
  --color-legendary: #FF3B14;
  --color-mythic: #E879F9;
  --font-shout: 'Archivo Black', 'Archivo', system-ui, sans-serif;
  --font-label: 'Archivo Variable', 'Archivo', system-ui, sans-serif;
  --font-stamp: 'Special Elite', 'Courier New', serif;
  --font-voice: 'Chivo', system-ui, -apple-system, sans-serif;
  --font-data: 'Chivo Mono', ui-monospace, SFMono-Regular, Menlo, monospace;
  --color-holo-ground: #06060A;
  --color-holo-ground-lift: #0A0A0C;
  --color-holo-paper: #F0EEE8;
  --color-holo-ink: #0B0B0B;
  --color-holo-mute: #9AA0B4;
  --color-holo-secondary: #7E8496;
  --color-holo-dim: #565C6E;
  --color-holo-behind: #6C7386;
  --color-holo-rail: #3E4354;
  --color-holo-wordmark: #D4145A;
  --color-holo-pink: #F0ABFC;
  --color-holo-mint: #A7F3D0;
  --color-holo-amber: #FDE68A;
  --color-holo-blue: #93C5FD;
  font-family: var(--font-voice);
  line-height: 1.5}
.game-object .absolute{position:absolute}
.game-object .inset-0{inset:0}
.game-object .overflow-hidden{overflow:hidden}
.game-object .h-full{height:100%}
.game-object .w-full{width:100%}
.game-object .object-cover{object-fit:cover}
.game-object .select-none{user-select:none}
.game-object iconify-icon{display:inline-flex;vertical-align:middle}
.game-object .bg-gradient-to-b{background-image:linear-gradient(to bottom,rgba(0,0,0,.5),rgba(0,0,0,0),rgba(0,0,0,.72))}
.game-object [data-card-system="alphadeck-card-system-v1.1"] {
  --rarity-color: #9ca3af;
  perspective: 900px;
  min-width: 0;
  container-type: inline-size;
}
.game-object [data-card-rarity="common"]    { --rarity-color: #2E2E2C; --rarity-ink: #8A8A84; --rarity-plate-ink: #4A4A46; }
.game-object [data-card-rarity="uncommon"]  { --rarity-color: #D8D8D0; --rarity-ink: #D8D8D0; --rarity-plate-ink: #6E675A; }
.game-object [data-card-rarity="rare"]      { --rarity-color: #A98BF5; --rarity-ink: #A98BF5; --rarity-plate-ink: #1D4ED8; }
.game-object [data-card-rarity="epic"]      { --rarity-color: #F2E500; --rarity-ink: #F2E500; --rarity-plate-ink: #8A7A00; }
.game-object [data-card-rarity="legendary"] { --rarity-color: #FF3B14; --rarity-ink: #FF3B14; --rarity-plate-ink: #8C1B06; }
.game-object [data-card-rarity="mythic"]    { --rarity-color: #E879F9; --rarity-ink: #E879F9; --rarity-plate-ink: #9333EA; }
.game-object .alpha-card::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 3;
  pointer-events: none;
  border-radius: inherit;
  padding: var(--rarity-edge, 1.5px);
  background: var(--rarity-finish, transparent);
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  mask-composite: exclude;
}
.game-object [data-card-rarity="common"] .alpha-card {
  --rarity-edge: 1px;
  --rarity-finish: linear-gradient(180deg,rgba(240,238,232,.16),rgba(240,238,232,.05));
}
.game-object [data-card-rarity="uncommon"] .alpha-card {
  --rarity-edge: 1.5px;
  --rarity-finish: linear-gradient(150deg,#4A4A46,#D8D8D0 45%,#4A4A46);
}
.game-object [data-card-rarity="rare"] .alpha-card {
  --rarity-edge: 2px;
  --rarity-finish: conic-gradient(from 210deg,#5B21B6,#E9E4FF,#3B0F80,#A98BF5,#5B21B6);
}
.game-object [data-card-rarity="epic"] .alpha-card {
  --rarity-edge: 2px;
  --rarity-finish: conic-gradient(from 40deg,#FDE68A,#FFFFFF,#B08900,#FDE68A);
}
.game-object [data-card-rarity="legendary"] .alpha-card {
  --rarity-edge: 2.5px;
  --rarity-finish: conic-gradient(from 300deg,#7A0C00,#FF6A45,#FFD9CE,#FF3B14,#7A0C00);
}
.game-object [data-card-rarity="mythic"] .alpha-card {
  --rarity-edge: 2.5px;
  --rarity-finish: conic-gradient(from 90deg,#F0ABFC,#A7F3D0,#FDE68A,#93C5FD,#F0ABFC);
  animation: rarity-prism 9s linear infinite;
}

@media (prefers-reduced-motion: reduce) {
  .game-object [data-card-rarity="mythic"] .alpha-card { animation: none; }
}

.game-object .alpha-card-host--raw {
  aspect-ratio: 5 / 7;
}

.game-object .alpha-card-host--slab {
  /* Height is owned by the slab contents so its compact container-query
     variant can collapse cleanly to the raw 5:7 card face. */
}

.game-object .alpha-slab {
  position: relative;
  isolation: isolate;
  width: 100%;
  height: auto;
  display: flex;
  flex-direction: column;
  gap: 2cqw;
  padding: 3cqw;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, .34);
  border-radius: calc(var(--card-radius) * 1.22);
  background:
    linear-gradient(115deg, rgba(255,255,255,.16), transparent 28% 72%, rgba(255,255,255,.07)),
    rgba(216, 225, 232, .055);
  box-shadow:
    0 22px 38px rgba(0,0,0,.38),
    0 5px 12px rgba(0,0,0,.24),
    inset 0 0 0 1px rgba(255,255,255,.08);
  backdrop-filter: blur(4px);
}

.game-object .alpha-slab::before,
.game-object .alpha-slab::after {
  position: absolute;
  z-index: 5;
  pointer-events: none;
  content: '';
}

.game-object .alpha-slab::before {
  inset: 1.3cqw;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: calc(var(--card-radius) * 1.02);
}

.game-object .alpha-slab::after {
  inset: 0;
  background: linear-gradient(112deg, rgba(255,255,255,.13), transparent 17% 73%, rgba(255,255,255,.04));
}

.game-object .alpha-slab__label {
  position: relative;
  z-index: 3;
  flex: 0 0 12cqw;
  min-height: 0;
  display: grid;
  grid-template-columns: 1.15fr 1fr .5fr;
  align-items: center;
  gap: 2cqw;
  padding: 1.4cqw 2cqw;
  overflow: hidden;
  border-top: 2px solid var(--rarity-color);
  border-radius: calc(var(--card-radius) * .38);
  color: #16181c;
  /* Paper. Flat, not a tinted gradient — this is the same cream the header
     plates, the card backs and the manual all use, and the rarity states
     itself in ink on it rather than by tinting it. */
  background: #F0EEE8;
  box-shadow: 0 2px 5px rgba(0,0,0,.25), inset 0 0 0 1px rgba(0,0,0,.12);
  font-variant-numeric: tabular-nums;
}

.game-object .alpha-slab__brand,
.game-object .alpha-slab__asset,
.game-object .alpha-slab__grade {
  min-width: 0;
}

.game-object .alpha-slab__brand span,
.game-object .alpha-slab__asset strong,
.game-object .alpha-slab__grade strong {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.game-object .alpha-slab__brand {
  display: flex;
  align-items: center;
  gap: 1.6cqw;
}

.game-object .alpha-slab__mark {
  flex: none;
  width: clamp(9px, 4.4cqw, 14px);
  height: auto;
  color: var(--color-crest);
}

.game-object .alpha-slab__brandtext {
  min-width: 0;
}

.game-object .alpha-slab__brand span span {
  color: var(--color-crest);
  font-family: var(--font-label);
  font-size: clamp(4.4px, 3.2cqw, 9.5px);
  font-weight: 800;
  font-stretch: 112%;
  line-height: 1;
  letter-spacing: .04em;
}

.game-object .alpha-slab__brand small,
.game-object .alpha-slab__asset small,
.game-object .alpha-slab__asset span,
.game-object .alpha-slab__grade span {
  display: block;
  overflow: hidden;
  color: #697078;
  font-size: clamp(3.8px, 1.9cqw, 6.5px);
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: .08em;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
}

.game-object .alpha-slab__asset {
  padding-left: 2cqw;
  border-left: 1px solid rgba(15,23,42,.13);
}

.game-object .alpha-slab__asset strong {
  font-size: clamp(5px, 3.3cqw, 10px);
  line-height: 1;
}

.game-object .alpha-slab__asset span {
  /* On PAPER, so it takes the dark plate ink. --rarity-color is tuned for the
     dark ground and several tiers are unreadable on cream — rare's #A98BF5
     against #F0EEE8 is about 2:1. */
  color: var(--rarity-plate-ink, var(--rarity-color));
}

.game-object .alpha-slab__grade {
  padding-left: 1.5cqw;
  border-left: 1px solid rgba(15,23,42,.13);
  text-align: center;
}

.game-object .alpha-slab__grade strong {
  color: #111318;
  font-size: clamp(8px, 6cqw, 18px);
  font-weight: 850;
  line-height: .9;
}

.game-object .alpha-slab__grade span {
  margin-top: .4cqw;
  color: var(--rarity-color);
}

.game-object .alpha-slab__well {
  position: relative;
  z-index: 2;
  flex: 0 0 auto;
  width: 100%;
  aspect-ratio: 5 / 7;
  padding: .8cqw;
  overflow: hidden;
  border-radius: calc(var(--card-radius) * 1.02);
  background: rgba(3,5,7,.32);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.12), inset 0 3px 8px rgba(0,0,0,.25);
}

.game-object .alpha-slab__well > .alpha-card {
  height: 100%;
}

.game-object .alpha-slab__seal {
  position: absolute;
  z-index: 6;
  right: 4.5cqw;
  bottom: 4.2cqw;
  display: grid;
  width: 7cqw;
  aspect-ratio: 1;
  place-items: center;
  border: 1px solid rgba(255,255,255,.28);
  border-radius: 999px;
  color: rgba(255,255,255,.4);
  font-size: 2.5cqw;
  font-weight: 900;
  letter-spacing: -.08em;
  background: rgba(12,15,19,.2);
}
@container (max-width: 165px) {
  .game-object .alpha-slab {
    display: block;
    padding: 0;
    overflow: visible;
    border: 0;
    border-radius: var(--card-radius);
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
  }

  .game-object .alpha-slab::before,
.game-object .alpha-slab::after,
.game-object .alpha-slab__label,
.game-object .alpha-slab__seal {
    display: none;
  }

  .game-object .alpha-slab__well {
    width: 100%;
    padding: 0;
    border-radius: var(--card-radius);
    background: transparent;
    box-shadow: none;
  }
}

.game-object [data-card-size="sm"] {
  --card-radius: 9px;
  --card-frame: 3px;
  --card-pad: 5px;
  --card-micro: 5.8px;
  --card-ticker: 16px;
  --card-company: 6.6px;
  --card-rarity: 5.6px;
  --card-game: 5.7px;
  --card-score: 10px;
}

.game-object [data-card-size="md"] {
  --card-radius: 12px;
  --card-frame: 4px;
  --card-pad: 7px;
  --card-micro: 7px;
  --card-ticker: 24px;
  --card-company: 8.5px;
  --card-rarity: 7px;
  --card-game: 7.2px;
  --card-score: 13px;
}

.game-object [data-card-size="lg"] {
  --card-radius: 15px;
  --card-frame: 5px;
  --card-pad: 9px;
  --card-micro: 8.5px;
  --card-ticker: 31px;
  --card-company: 10.5px;
  --card-rarity: 8px;
  --card-game: 8.8px;
  --card-score: 16px;
}

.game-object [data-card-size="xl"],
.game-object [data-card-size="fluid"] {
  --card-radius: clamp(12px, 5.8cqw, 19px);
  --card-frame: clamp(4px, 1.8cqw, 6px);
  --card-pad: clamp(7px, 3.2cqw, 12px);
  --card-micro: clamp(7px, 3.2cqw, 10px);
  --card-ticker: clamp(22px, 12cqw, 38px);
  --card-company: clamp(8px, 4.2cqw, 13px);
  --card-rarity: clamp(7px, 3.4cqw, 10px);
  --card-game: clamp(7px, 3.5cqw, 11px);
  --card-score: clamp(13px, 6.5cqw, 21px);
  container-type: inline-size;
}

.game-object .alpha-card {
  --card-paper: #17181b;
  --card-panel: rgba(13, 14, 17, 0.92);
  --card-ink: #f4f4f5;
  --card-muted: #8b8b93;
  --card-accent: #a1a1aa;
  --card-edge-a: #4b4d52;
  --card-edge-b: #18191c;
  position: relative;
  isolation: isolate;
  width: 100%;
  height: 100%;
  min-width: 0;
  overflow: hidden;
  display: grid;
  grid-template-rows: 8% 70% 15% 7%;
  padding: var(--card-pad);
  border-radius: var(--card-radius);
  color: var(--card-ink);
  background: var(--card-paper);
  transform: translateZ(0);
  box-shadow:
    0 18px 30px rgba(0, 0, 0, 0.42),
    0 4px 10px rgba(0, 0, 0, 0.34),
    inset 0 1px 0 rgba(255, 255, 255, 0.18);
}

.game-object .alpha-card-host--raw > .alpha-card {
  height: 100%;
}

.game-object .alpha-card__edge,
.game-object .alpha-card__material,
.game-object .alpha-card__finish,
.game-object .alpha-card__specular {
  position: absolute;
  pointer-events: none;
}

.game-object .alpha-card__edge {
  z-index: 0;
  inset: 0;
  background:
    linear-gradient(145deg, rgba(255,255,255,.42), transparent 20% 70%, rgba(0,0,0,.65)),
    linear-gradient(135deg, var(--card-edge-a), var(--card-edge-b) 58%, var(--card-edge-a));
}

.game-object .alpha-card__material {
  z-index: 1;
  inset: var(--card-frame);
  border-radius: calc(var(--card-radius) - var(--card-frame));
  background-color: var(--card-paper);
  background-image:
    linear-gradient(115deg, rgba(255,255,255,.08), transparent 28% 70%, rgba(0,0,0,.15)),
    repeating-linear-gradient(90deg, transparent 0 18px, rgba(255,255,255,.025) 18px 19px);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.08);
}

.game-object .alpha-card__header,
.game-object .alpha-card__art-frame,
.game-object .alpha-card__identity,
.game-object .alpha-card__gameplay {
  position: relative;
  z-index: 3;
  min-width: 0;
}

.game-object .alpha-card__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 4px;
  padding: 0 3%;
  color: var(--card-muted);
  font-size: var(--card-micro);
  font-weight: 700;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.game-object .alpha-card__family {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: .38em;
  color: var(--card-accent);
  white-space: nowrap;
}

.game-object .alpha-card__family iconify-icon {
  font-size: 1.2em;
}

.game-object .alpha-card__receipt {
  max-width: 46%;
  overflow: hidden;
  color: var(--card-muted);
  text-overflow: ellipsis;
  white-space: nowrap;
}

.game-object .alpha-card__chain {
  display: inline-flex;
  flex: none;
  gap: .28em;
  align-items: center;
  padding: .1em .42em;
  border: 1px solid color-mix(in srgb, var(--card-accent) 45%, rgba(255,255,255,.28));
  border-radius: 999px;
  color: var(--card-ink);
  font-weight: 700;
  letter-spacing: .06em;
  line-height: 1;
}

.game-object .alpha-card__chain iconify-icon {
  font-size: 1.05em;
}

.game-object [data-card-art-layout="full-art"] .alpha-card__chain {
  border-color: rgba(255,255,255,.5);
  color: #fff;
}

.game-object .alpha-card__art-frame {
  margin: 0 3%;
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--card-accent) 35%, rgba(255,255,255,.18));
  border-radius: calc(var(--card-radius) * .42);
  background: #09090b;
  box-shadow:
    0 7px 16px rgba(0,0,0,.34),
    inset 0 0 0 1px rgba(255,255,255,.06);
}

.game-object .alpha-card__full-art {
  z-index: 2;
  inset: var(--card-frame);
  border-radius: calc(var(--card-radius) - var(--card-frame));
}

.game-object .alpha-card__full-art img {
  transform: scale(1.015);
  transition: transform 650ms cubic-bezier(.2,.7,.2,1);
}

.game-object .alpha-card__art-frame--full {
  margin: 0;
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.game-object .alpha-card__art-frame--full .alpha-card__art-light {
  display: none;
}

.game-object .alpha-card__art-frame img {
  transform: scale(1.01);
  transition: transform 500ms cubic-bezier(.2,.7,.2,1);
}

.game-object [data-card-system="alphadeck-card-system-v1.1"]:hover .alpha-card__art-frame img,
.game-object [data-card-system="alphadeck-card-system-v1.1"]:hover .alpha-card__full-art img {
  transform: scale(1.035);
}

.game-object .alpha-card__art-light {
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  background:
    linear-gradient(180deg, rgba(255,255,255,.12), transparent 18% 75%, rgba(0,0,0,.34)),
    linear-gradient(110deg, transparent 30%, rgba(255,255,255,.07) 48%, transparent 66%);
}

.game-object .alpha-card__art-fallback {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  color: var(--card-accent);
  background:
    radial-gradient(circle at 50% 40%, color-mix(in srgb, var(--card-accent) 27%, transparent), transparent 56%),
    repeating-linear-gradient(135deg, transparent 0 18px, rgba(255,255,255,.025) 18px 19px),
    #0b0c0f;
}

.game-object .alpha-card__art-fallback iconify-icon {
  font-size: clamp(26px, 20cqw, 68px);
  filter: drop-shadow(0 5px 12px rgba(0,0,0,.6));
}

.game-object .alpha-card__identity {
  display: grid;
  grid-template-columns: 1fr auto;
  grid-template-rows: 63% 37%;
  align-items: end;
  column-gap: 5px;
  padding: 1% 4% 0;
  background: linear-gradient(180deg, transparent, var(--card-panel) 22%);
}

.game-object .alpha-card__ticker {
  min-width: 0;
  align-self: end;
  overflow: hidden;
  color: var(--card-ink);
  font-size: var(--card-ticker);
  font-weight: 850;
  line-height: .9;
  letter-spacing: -.055em;
  text-overflow: ellipsis;
  white-space: nowrap;
  text-shadow: 0 1px 0 rgba(255,255,255,.08);
}

.game-object .alpha-card__company {
  min-width: 0;
  align-self: start;
  overflow: hidden;
  color: var(--card-muted);
  font-size: var(--card-company);
  font-weight: 550;
  line-height: 1.1;
  letter-spacing: .01em;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.game-object .alpha-card__rarity {
  grid-column: 2;
  grid-row: 1 / span 2;
  align-self: center;
  display: flex;
  align-items: center;
  gap: .45em;
  /* The rarity spine is a STAMP (Brand Book §10) — Special Elite, wide. */
  font-family: var(--font-stamp);
  color: var(--rarity-ink, var(--rarity-color));
  font-size: var(--card-rarity);
  font-weight: 800;
  letter-spacing: .16em;
  text-transform: uppercase;
  writing-mode: vertical-rl;
  transform: rotate(180deg);
}
.game-object .alpha-card__rarity-gem {
  width: .7em;
  height: .7em;
  flex: 0 0 auto;
  transform: rotate(45deg);
  border: 1px solid var(--rarity-ink, currentColor);
  background: var(--rarity-finish, transparent);
  background-size: 200% 200%;
}

.game-object .alpha-card__gameplay {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 4px;
  margin: 0 3%;
  padding: 0 1%;
  border-top: 1px solid color-mix(in srgb, var(--card-accent) 25%, transparent);
  color: var(--card-muted);
}

.game-object .alpha-card__ability {
  min-width: 0;
  overflow: hidden;
  font-size: var(--card-game);
  font-weight: 600;
  line-height: 1;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.game-object .alpha-card__score {
  flex: 0 0 auto;
  display: flex;
  align-items: baseline;
  gap: .28em;
  color: var(--card-accent);
}

.game-object .alpha-card__score small {
  color: var(--card-muted);
  font-size: calc(var(--card-game) * .82);
  font-weight: 700;
  letter-spacing: .08em;
}

.game-object .alpha-card__score strong {
  font-size: var(--card-score);
  line-height: 1;
  font-variant-numeric: tabular-nums;
}

.game-object .alpha-card__score em {
  display: none;
}
.game-object [data-card-art-layout="full-art"] .alpha-card__header {
  margin: 0 2%;
  padding: 0 3%;
  border-radius: calc(var(--card-radius) * .28);
  color: rgba(255,255,255,.72);
  background: linear-gradient(90deg, rgba(4,6,9,.72), rgba(4,6,9,.38) 72%, rgba(4,6,9,.7));
  text-shadow: 0 1px 3px rgba(0,0,0,.8);
  backdrop-filter: blur(3px);
}

.game-object [data-card-art-layout="full-art"] .alpha-card__family {
  color: #fff;
}

.game-object [data-card-art-layout="full-art"] .alpha-card__receipt,
.game-object [data-card-art-layout="full-art"] .alpha-card__company,
.game-object [data-card-art-layout="full-art"] .alpha-card__ability,
.game-object [data-card-art-layout="full-art"] .alpha-card__score small {
  color: rgba(255,255,255,.75);
}

.game-object [data-card-art-layout="full-art"] .alpha-card__identity {
  margin: 0 2%;
  padding-right: 5%;
  padding-left: 5%;
  border-radius: calc(var(--card-radius) * .32) calc(var(--card-radius) * .32) 0 0;
  background: linear-gradient(180deg, transparent, rgba(3,5,8,.78) 33%, rgba(3,5,8,.9));
}

.game-object [data-card-art-layout="full-art"] .alpha-card__ticker {
  color: #fff;
  text-shadow: 0 2px 8px rgba(0,0,0,.8);
}

.game-object [data-card-art-layout="full-art"] .alpha-card__gameplay {
  margin: 0 2%;
  padding: 0 4%;
  border-top-color: color-mix(in srgb, var(--rarity-color) 55%, rgba(255,255,255,.18));
  border-radius: 0 0 calc(var(--card-radius) * .32) calc(var(--card-radius) * .32);
  color: rgba(255,255,255,.78);
  background: rgba(3,5,8,.9);
}

.game-object [data-card-art-layout="full-art"] .alpha-card__score {
  color: #fff;
}

.game-object .alpha-card__finish {
  z-index: 5;
  inset: 1.5%;
  border-radius: calc(var(--card-radius) * .86);
  opacity: 0;
}

.game-object .alpha-card__specular {
  z-index: 6;
  inset: 0;
  border-radius: inherit;
  opacity: .22;
  background: linear-gradient(118deg, rgba(255,255,255,.26), transparent 19% 72%, rgba(255,255,255,.08));
}
.game-object [data-card-family="growth"] .alpha-card {
  --card-paper: #e7e8e6;
  --card-panel: rgba(235,238,241,.96);
  --card-ink: #111827;
  --card-muted: #647083;
  --card-accent: #2f6fd6;
  --card-edge-a: #f8fafc;
  --card-edge-b: #79828d;
}
.game-object [data-card-family="growth"] .alpha-card__material {
  background-image: linear-gradient(115deg, rgba(255,255,255,.7), transparent 36%), repeating-linear-gradient(90deg, transparent 0 22px, rgba(15,23,42,.055) 22px 23px);
}

.game-object [data-card-family="cyclicals"] .alpha-card {
  --card-paper: #25221f;
  --card-panel: rgba(32,28,24,.95);
  --card-ink: #f4e9dc;
  --card-muted: #a89684;
  --card-accent: #d77837;
  --card-edge-a: #be7041;
  --card-edge-b: #343536;
}
.game-object [data-card-family="cyclicals"] .alpha-card__material {
  background-image: linear-gradient(145deg, rgba(219,123,63,.14), transparent 44%), repeating-linear-gradient(0deg, transparent 0 19px, rgba(255,255,255,.035) 19px 20px);
}

.game-object [data-card-family="defensive"] .alpha-card {
  --card-paper: #102019;
  --card-panel: rgba(12,28,21,.96);
  --card-ink: #e8f3ec;
  --card-muted: #809b89;
  --card-accent: #4bb477;
  --card-edge-a: #aebbb3;
  --card-edge-b: #264735;
}
.game-object [data-card-family="defensive"] .alpha-card__material {
  background-image: radial-gradient(circle at 10px 10px, rgba(111,207,151,.09) 1px, transparent 1.5px), linear-gradient(120deg, rgba(255,255,255,.08), transparent 35%);
  background-size: 20px 20px, auto;
}

.game-object [data-card-family="real-assets"] .alpha-card {
  --card-paper: #302619;
  --card-panel: rgba(44,33,20,.96);
  --card-ink: #fff1d1;
  --card-muted: #b9a177;
  --card-accent: #e2aa42;
  --card-edge-a: #dfba67;
  --card-edge-b: #6b4422;
}
.game-object [data-card-family="real-assets"] .alpha-card__material {
  background-image: repeating-linear-gradient(165deg, transparent 0 13px, rgba(240,190,96,.07) 13px 14px), linear-gradient(110deg, rgba(255,255,255,.08), transparent 40%);
}

.game-object [data-card-family="crypto"] .alpha-card {
  --card-paper: #0d0a14;
  --card-panel: rgba(13,9,20,.96);
  --card-ink: #f5f0ff;
  --card-muted: #9a8aad;
  --card-accent: #b67aff;
  --card-edge-a: #8758c7;
  --card-edge-b: #08070c;
}
.game-object [data-card-family="crypto"] .alpha-card__material {
  background-image: radial-gradient(circle at 70% 18%, rgba(180,113,255,.16), transparent 26%), repeating-linear-gradient(90deg, transparent 0 20px, rgba(187,124,255,.055) 20px 21px), repeating-linear-gradient(0deg, transparent 0 20px, rgba(187,124,255,.04) 20px 21px);
}

.game-object [data-card-family="financials"] .alpha-card {
  --card-paper: #0d1718;
  --card-panel: rgba(9,21,22,.97);
  --card-ink: #e7f7f5;
  --card-muted: #7f9e9b;
  --card-accent: #38c6b7;
  --card-edge-a: #9bb8b4;
  --card-edge-b: #153d3a;
}
.game-object [data-card-family="financials"] .alpha-card__material {
  background-image: repeating-radial-gradient(ellipse at 50% 50%, transparent 0 8px, rgba(56,198,183,.045) 8px 9px), linear-gradient(115deg, rgba(255,255,255,.07), transparent 34%);
}

.game-object [data-card-family="disruptors"] .alpha-card {
  --card-paper: #151b17;
  --card-panel: rgba(15,24,18,.96);
  --card-ink: #edfff1;
  --card-muted: #829688;
  --card-accent: #69d98a;
  --card-edge-a: #789383;
  --card-edge-b: #1c2b21;
}
.game-object [data-card-family="disruptors"] .alpha-card__material {
  background-image: linear-gradient(122deg, transparent 0 64%, rgba(105,217,138,.08) 64% 66%, transparent 66%), repeating-linear-gradient(135deg, transparent 0 24px, rgba(255,255,255,.035) 24px 25px);
}
.game-object [data-card-rarity="uncommon"] .alpha-card__finish {
  opacity: .38;
  border: 1px solid color-mix(in srgb, var(--rarity-color) 52%, transparent);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--rarity-color) 10%, transparent);
}

.game-object [data-card-rarity="rare"] .alpha-card__finish {
  opacity: .5;
  border: 1px solid color-mix(in srgb, var(--rarity-color) 66%, white);
  background:
    linear-gradient(90deg, color-mix(in srgb, var(--rarity-color) 12%, transparent), transparent 5% 95%, color-mix(in srgb, var(--rarity-color) 10%, transparent)),
    linear-gradient(180deg, color-mix(in srgb, var(--rarity-color) 10%, transparent), transparent 5% 95%, color-mix(in srgb, var(--rarity-color) 12%, transparent));
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--rarity-color) 12%, transparent), 0 0 8px color-mix(in srgb, var(--rarity-color) 12%, transparent);
}

.game-object [data-card-rarity="epic"] .alpha-card__finish {
  opacity: .5;
  border: 1px solid color-mix(in srgb, var(--rarity-color) 58%, white);
  background: radial-gradient(circle at 84% 10%, color-mix(in srgb, var(--rarity-color) 36%, transparent), transparent 15%), radial-gradient(circle at 8% 88%, rgba(255,255,255,.1), transparent 13%);
  mix-blend-mode: screen;
}

.game-object [data-card-rarity="legendary"] .alpha-card__finish {
  opacity: .64;
  border: 1px solid color-mix(in srgb, var(--rarity-color) 78%, white);
  box-shadow: inset 0 0 8px color-mix(in srgb, var(--rarity-color) 18%, transparent);
}
.game-object [data-card-rarity="legendary"] .alpha-card__ticker {
  color: color-mix(in srgb, var(--rarity-color) 55%, white);
  text-shadow: 0 1px 0 #721b1b, 0 0 12px color-mix(in srgb, var(--rarity-color) 32%, transparent);
}

.game-object [data-card-rarity="mythic"] .alpha-card__finish {
  opacity: .58;
  border: 1px solid color-mix(in srgb, var(--rarity-color) 72%, white);
  background:
    radial-gradient(circle at 86% 9%, rgba(82,225,255,.2), transparent 14%),
    radial-gradient(circle at 8% 90%, rgba(238,121,255,.18), transparent 13%),
    linear-gradient(90deg, rgba(82,225,255,.1), transparent 4% 96%, rgba(255,219,91,.08));
  mix-blend-mode: screen;
}
.game-object [data-card-rarity="mythic"] .alpha-card__ticker {
  background: linear-gradient(90deg, #c8f5ff, #f2c6ff 48%, #ffe7aa);
  background-clip: text;
  color: transparent;
  -webkit-background-clip: text;
}
.game-object .alpha-card.alpha-card--back {
  display: grid;
  /* The face's 8/70/15/7 row template belongs to the FRONT — stripe, art,
     readout, footer. Inheriting it here dropped the badge into the 8% stripe
     row and centred it there, hanging it off the top edge of the card. The
     back is one field with one thing in the middle of it. */
  grid-template-rows: 1fr;
  place-items: center;
  padding: 10%;
  color: var(--color-paper, #EDEAE3);
  background: var(--color-blackout, #0B0B0B);

  /* A BACK MUST NOT NAME ITS RARITY. The finish ring is drawn for every
     .alpha-card, so a face-down mythic wore the prismatic edge and announced
     itself before the flip — which is the one thing the reveal sells. Every
     back gets the same paper hairline, and the prism does not run. */
  --rarity-edge: 1.5px;
  --rarity-finish: rgba(237, 234, 227, 0.22);
  animation: none;

  /* Rendered inside a parent rotated 180° for the flip, so it is pre-mirrored
     here — otherwise every glyph reads backwards. */
  transform: rotateY(180deg);
}
.game-object .alpha-card__back-halftone {
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background-image: radial-gradient(circle at 1px 1px, rgba(237, 234, 227, .13) 1px, transparent 0);
  background-size: 5px 5px;
}
.game-object .alpha-card__back-rule-box {
  position: absolute;
  inset: 6.5%;
  border: 1px solid rgba(237, 234, 227, .18);
  border-radius: calc(var(--card-radius) * .55);
}

.game-object .alpha-card__back-badge {
  position: relative;
  z-index: 2;
  display: grid;
  place-items: center;
  transform: scale(var(--card-badge-scale, 1));
}
.game-object .alpha-card__back-stamp {
  position: absolute;
  bottom: 10%;
  z-index: 2;
  font-family: var(--font-stamp);
  font-size: var(--card-micro);
  letter-spacing: .28em;
  text-transform: uppercase;
  color: var(--color-toner, #77776E);
}

@media (prefers-reduced-motion: reduce) {
  .game-object .alpha-card__finish {
    animation: none !important;
  }
  .game-object .alpha-card__art-frame img,
.game-object .alpha-card__full-art img {
    transition: none;
  }
}
.game-object .alpha-pack {
  position: relative;
  isolation: isolate;
  aspect-ratio: 3 / 5;
  display: grid;
  grid-template-rows: 8% 84% 8%;
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--pack-accent) 38%, rgba(255,255,255,.28));
  border-radius: 4px;
  color: #fff;
  background: #111318;
  box-shadow:
    0 20px 34px rgba(0,0,0,.52),
    0 5px 12px rgba(0,0,0,.32),
    inset 0 0 0 1px rgba(255,255,255,.18);
  container-type: inline-size;
}

.game-object .alpha-pack__artwork,
.game-object .alpha-pack__fallback,
.game-object .alpha-pack__side-seals,
.game-object .alpha-pack__foil {
  position: absolute;
  inset: 0;
}

.game-object .alpha-pack__artwork {
  z-index: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.game-object .alpha-pack--full-wrapper {
  overflow: visible;
  border-color: transparent;
  background: transparent;
  box-shadow: none;
}

.game-object .alpha-pack--full-wrapper .alpha-pack__artwork {
  object-fit: contain;
  filter: drop-shadow(0 4cqw 5cqw rgba(0,0,0,.48));
}

.game-object .alpha-pack__fallback {
  z-index: 0;
  display: grid;
  place-items: center;
  overflow: hidden;
  background: var(--pack-gradient);
}

.game-object .alpha-pack__fallback::before,
.game-object .alpha-pack__fallback::after {
  position: absolute;
  content: '';
}

.game-object .alpha-pack__fallback::before {
  width: 76%;
  aspect-ratio: 1;
  border: 1px solid rgba(255,255,255,.22);
  border-radius: 50%;
  background:
    radial-gradient(circle, color-mix(in srgb, var(--pack-color) 38%, transparent), transparent 65%),
    repeating-radial-gradient(circle, transparent 0 8cqw, rgba(255,255,255,.055) 8cqw 8.5cqw);
  box-shadow: 0 0 20cqw color-mix(in srgb, var(--pack-color) 35%, transparent);
}

.game-object .alpha-pack__fallback::after {
  inset: 12% 7%;
  border: 1px solid rgba(255,255,255,.11);
  background: linear-gradient(115deg, rgba(255,255,255,.12), transparent 28% 72%, rgba(0,0,0,.16));
}

.game-object .alpha-pack__fallback-grid {
  position: absolute;
  inset: 0;
  opacity: .28;
  background-image:
    linear-gradient(rgba(255,255,255,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.08) 1px, transparent 1px);
  background-size: 8cqw 8cqw;
  mask-image: linear-gradient(180deg, transparent 8%, black 24% 76%, transparent 92%);
}

.game-object .alpha-pack__culture-roster {
  position: absolute;
  inset: 18% 8% 15%;
  z-index: 1;
  display: flex;
  flex-wrap: wrap;
  align-content: space-between;
  justify-content: space-around;
  gap: 2cqw 3cqw;
  opacity: .36;
  transform: rotate(-4deg) scale(1.08);
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 4.4cqw;
  font-weight: 900;
  letter-spacing: -.05em;
  text-transform: uppercase;
  color: rgba(255,255,255,.86);
  mix-blend-mode: screen;
}

.game-object .alpha-pack__culture-roster span:nth-child(3n) {
  color: var(--pack-color);
  transform: rotate(7deg);
}

.game-object .alpha-pack__culture-roster span:nth-child(4n) {
  color: var(--pack-accent);
  transform: rotate(-7deg);
}

.game-object .alpha-pack__fallback > iconify-icon {
  position: relative;
  z-index: 2;
  font-size: 24cqw;
  color: rgba(255,255,255,.9);
  filter: drop-shadow(0 3cqw 6cqw rgba(0,0,0,.55));
}

.game-object .alpha-pack__crimp {
  position: relative;
  z-index: 6;
  background:
    repeating-linear-gradient(90deg, transparent 0 2.2cqw, rgba(0,0,0,.2) 2.2cqw 3cqw),
    linear-gradient(180deg, #f1f3f4, #9da2a8 52%, #e5e7e9);
  box-shadow: inset 0 1px rgba(255,255,255,.75), inset 0 -1px rgba(0,0,0,.24);
}

.game-object .alpha-pack__crimp--top {
  grid-row: 1;
}

.game-object .alpha-pack__crimp--bottom {
  grid-row: 3;
  transform: scaleY(-1);
}

.game-object .alpha-pack__body {
  position: relative;
  z-index: 3;
  grid-row: 2;
  min-height: 0;
}

.game-object .alpha-pack__manufacturer,
.game-object .alpha-pack__identity {
  position: absolute;
  z-index: 4;
  left: 12%;
  right: 12%;
}

.game-object .alpha-pack__manufacturer {
  top: 5%;
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  padding-bottom: 2.4cqw;
  border-bottom: 1px solid rgba(255,255,255,.32);
  text-shadow: 0 1px 4px rgba(0,0,0,.72);
}

.game-object .alpha-pack__manufacturer span {
  font-size: 6.3cqw;
  font-weight: 900;
  letter-spacing: -.045em;
}

.game-object .alpha-pack__manufacturer small {
  font-size: 3.2cqw;
  font-weight: 750;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.game-object .alpha-pack__identity {
  top: 27%;
  bottom: 23%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  text-shadow: 0 1.5cqw 3cqw rgba(0,0,0,.7);
}

.game-object .alpha-pack__set-mark {
  display: grid;
  width: 21cqw;
  aspect-ratio: 1;
  margin-bottom: 5cqw;
  place-items: center;
  border: 1px solid rgba(255,255,255,.48);
  border-radius: 50%;
  background: color-mix(in srgb, var(--pack-accent) 68%, rgba(4,5,8,.42));
  box-shadow: 0 0 0 1.8cqw rgba(255,255,255,.08), 0 4cqw 10cqw rgba(0,0,0,.35);
}

.game-object .alpha-pack__set-mark iconify-icon {
  font-size: 10cqw;
}

.game-object .alpha-pack__identity strong {
  max-width: 100%;
  font-size: 10cqw;
  font-weight: 900;
  line-height: .92;
  letter-spacing: -.055em;
  text-transform: uppercase;
}

.game-object .alpha-pack__identity small {
  margin-top: 3cqw;
  font-size: 4cqw;
  font-weight: 650;
  line-height: 1.15;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.game-object .alpha-pack__side-seals {
  z-index: 5;
  border-right: 1.4cqw solid rgba(222,225,228,.58);
  border-left: 1.4cqw solid rgba(222,225,228,.58);
  box-shadow: inset 1.5cqw 0 2cqw rgba(0,0,0,.22), inset -1.5cqw 0 2cqw rgba(0,0,0,.22);
  pointer-events: none;
}

.game-object .alpha-pack__foil {
  z-index: 7;
  opacity: .46;
  pointer-events: none;
  background:
    linear-gradient(108deg, transparent 8%, rgba(255,255,255,.38) 26%, transparent 43% 67%, rgba(255,255,255,.18) 78%, transparent 94%),
    linear-gradient(180deg, rgba(255,255,255,.16), transparent 24% 76%, rgba(0,0,0,.15));
  mix-blend-mode: screen;
}

@media (prefers-reduced-motion: reduce) {
  .game-object .alpha-pack__foil {
    animation: none !important;
  }
}

@keyframes holo {
  0% { background-position: 200% 0; }
  100% { background-position: -200% 0; }
}

@keyframes rarity-prism {
  to { filter: hue-rotate(360deg); }
}
