/* trophy-room.css
   The Trophy Room is intentionally isolated from style.css, player.css,
   and players.css. Every selector is scoped beneath .trophy-room-page. */

.trophy-room-page .trophy-card-shape-defs{
  position:absolute;
  width:0;
  height:0;
  overflow:hidden;
  pointer-events:none;
}

.trophy-room-page .trophy-room-main{
  padding-top:30px;
  padding-bottom:52px;
}

.trophy-room-page .trophy-room-hero,
.trophy-room-page .trophy-room-controls,
.trophy-room-page .trophy-room-ledger{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(255,184,28,.22);
  border-radius:22px;
  background:
    repeating-linear-gradient(135deg,rgba(255,255,255,.012) 0 2px,transparent 2px 8px),
    linear-gradient(145deg,rgba(18,27,34,.97),rgba(7,13,18,.98));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 18px 38px rgba(0,0,0,.22);
}

.trophy-room-page .trophy-room-hero{
  display:grid;
  grid-template-columns:minmax(0,1fr) 120px;
  gap:22px;
  align-items:center;
  margin-bottom:20px;
  padding:34px 38px 30px;
}

.trophy-room-page .trophy-room-hero::before{
  content:"";
  position:absolute;
  inset:-55% 45% 20% -15%;
  pointer-events:none;
  transform:rotate(-12deg);
  background:linear-gradient(110deg,transparent,rgba(255,184,28,.11),transparent);
}

.trophy-room-page .trophy-room-hero-copy,
.trophy-room-page .trophy-room-chip,
.trophy-room-page .trophy-room-summary{
  position:relative;
  z-index:1;
}

.trophy-room-page .trophy-room-kicker,
.trophy-room-page .trophy-room-ledger-head > div > span{
  display:block;
  color:var(--gold);
  font-size:.72rem;
  font-weight:1000;
  letter-spacing:.15em;
  text-transform:uppercase;
}

.trophy-room-page .trophy-room-hero h2{
  margin:5px 0 8px;
  color:#fff;
  font-size:clamp(2.35rem,5vw,4.6rem);
  line-height:.95;
  letter-spacing:-.045em;
  text-shadow:0 2px 0 rgba(0,0,0,.30),0 0 28px rgba(255,184,28,.12);
}

.trophy-room-page .trophy-room-hero-copy p{
  max-width:760px;
  margin:0;
  color:#afbdc8;
  font-size:1rem;
  line-height:1.55;
}

.trophy-room-page .trophy-room-chip{
  width:112px;
  height:112px;
  object-fit:contain;
  justify-self:end;
  filter:drop-shadow(0 13px 14px rgba(0,0,0,.35)) drop-shadow(0 0 16px rgba(255,184,28,.22));
}

.trophy-room-page .trophy-room-summary{
  grid-column:1 / -1;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin-top:9px;
  padding-top:20px;
  border-top:1px solid rgba(255,184,28,.16);
}

.trophy-room-page .trophy-room-summary > div{
  display:grid;
  gap:3px;
  min-width:0;
  padding:12px 15px;
  border:1px solid rgba(255,255,255,.07);
  border-radius:13px;
  background:rgba(255,255,255,.025);
}

.trophy-room-page .trophy-room-summary span{
  color:#81919e;
  font-size:.58rem;
  font-weight:900;
  letter-spacing:.09em;
  text-transform:uppercase;
}

.trophy-room-page .trophy-room-summary strong{
  overflow:hidden;
  color:#f7d77e;
  font-size:1.45rem;
  line-height:1.05;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.trophy-room-page .trophy-room-controls{
  display:grid;
  gap:18px;
  margin-bottom:20px;
  padding:18px 20px;
}

.trophy-room-page .trophy-filter-family{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.trophy-room-page .trophy-filter-family button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-height:38px;
  padding:8px 13px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:999px;
  color:#bdc9d2;
  background:rgba(255,255,255,.025);
  font:inherit;
  font-size:.72rem;
  font-weight:900;
  cursor:pointer;
  transition:border-color .18s ease,color .18s ease,background .18s ease,transform .18s ease;
}

.trophy-room-page .trophy-filter-family button:hover,
.trophy-room-page .trophy-filter-family button:focus-visible{
  border-color:rgba(255,184,28,.45);
  color:#fff;
  transform:translateY(-1px);
}

.trophy-room-page .trophy-filter-family button.is-active{
  border-color:#dca620;
  color:#1b1305;
  background:linear-gradient(180deg,#ffd568,#ffb81c);
  box-shadow:0 6px 15px rgba(255,184,28,.15);
}

.trophy-room-page .trophy-filter-family button > span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:21px;
  min-height:21px;
  padding:2px 5px;
  border-radius:999px;
  color:inherit;
  background:rgba(0,0,0,.20);
  font-size:.60rem;
}

.trophy-room-page .trophy-filter-fields{
  display:grid;
  grid-template-columns:repeat(3,minmax(150px,1fr));
  gap:12px;
}

.trophy-room-page .trophy-filter-fields label{
  display:grid;
  gap:6px;
}

.trophy-room-page .trophy-filter-fields label > span{
  color:#8fa0ad;
  font-size:.56rem;
  font-weight:1000;
  letter-spacing:.11em;
  text-transform:uppercase;
}

.trophy-room-page .trophy-filter-fields select{
  width:100%;
  min-height:42px;
  padding:8px 34px 8px 11px;
  border:1px solid rgba(255,184,28,.20);
  border-radius:10px;
  color:#eef3f6;
  background:#101820;
  font:inherit;
  font-size:.78rem;
  font-weight:800;
}

.trophy-room-page .trophy-filter-fields select:focus{
  outline:2px solid rgba(255,184,28,.62);
  outline-offset:2px;
}

.trophy-room-page .trophy-room-ledger{
  padding:24px;
}

.trophy-room-page .trophy-room-ledger-head{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:18px;
  margin-bottom:26px;
  padding:0 3px 16px;
  border-bottom:1px solid rgba(255,184,28,.16);
}

.trophy-room-page .trophy-room-ledger-head h3{
  margin:3px 0 0;
  color:#f4f7f9;
  font-size:1.75rem;
  line-height:1;
}

.trophy-room-page .trophy-room-ledger-head > strong{
  padding:7px 11px;
  border:1px solid rgba(255,184,28,.22);
  border-radius:999px;
  color:#f7d77e;
  background:rgba(255,184,28,.055);
  font-size:.68rem;
  white-space:nowrap;
}

.trophy-room-page .trophy-card-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:34px 22px;
  align-items:start;
  justify-items:center;
}

.trophy-room-page .trophy-collection-item{
  display:grid;
  grid-template-rows:auto 1fr;
  justify-items:center;
  width:100%;
  max-width:260px;
  min-width:0;
}

.trophy-room-page .trophy-collection-hall{
  --special-accent:#a77b20;
  --card-glow:rgba(255,220,126,.42);
}

.trophy-room-page .trophy-collection-infamy{
  --special-accent:#ff6385;
  --card-glow:rgba(255,34,92,.46);
}

.trophy-room-page .trophy-collection-leader{
  --special-accent:#a8d8ff;
  --card-glow:rgba(88,173,255,.36);
}

.trophy-room-page .trophy-collection-edition-leader-profit{
  --special-accent:#65f0aa;
  --card-glow:rgba(48,219,133,.35);
}

.trophy-room-page .trophy-collection-edition-leader-knockouts{
  --special-accent:#ff7884;
  --card-glow:rgba(255,67,83,.36);
}

.trophy-room-page .trophy-collection-edition-leader-roi{
  --special-accent:#6de8ff;
  --card-glow:rgba(41,207,244,.37);
}

.trophy-room-page .trophy-collection-edition-leader-cash-rate{
  --special-accent:#d29aff;
  --card-glow:rgba(169,83,255,.38);
}

.trophy-room-page .trophy-collection-heater{
  --special-accent:#ffb24c;
  --card-glow:rgba(255,83,24,.48);
}

.trophy-room-page .trophy-collection-edition-milestone-10{
  --special-accent:#79e3c8;
  --card-glow:rgba(54,210,177,.34);
}

.trophy-room-page .trophy-collection-edition-milestone-25{
  --special-accent:#1f8994;
  --card-glow:rgba(91,236,239,.40);
}

.trophy-room-page .trophy-collection-edition-milestone-50{
  --special-accent:#f3c956;
  --card-glow:rgba(247,198,62,.42);
}

.trophy-room-page .trophy-collection-edition-milestone-75{
  --special-accent:#dfb0ff;
  --card-glow:rgba(185,104,255,.46);
}

.trophy-room-page .trophy-collection-edition-milestone-100{
  --special-accent:#b98516;
  --card-glow:rgba(255,220,116,.52);
}

.trophy-room-page .trophy-card{
  --card-edge:#ffe39a;
  --card-surface-a:#171107;
  --card-surface-b:#73500c;
  --card-surface-c:#211707;
  --card-ink:#fff1b9;
  --card-muted:#d8c07b;
  --card-line:rgba(255,227,154,.30);
  --card-glow:rgba(255,184,28,.28);
  --special-accent:#ffd36a;
  display:block;
  width:100%;
  aspect-ratio:.655;
  padding:2px;
  color:var(--card-ink);
  background:var(--card-frame,linear-gradient(145deg,#fff4c2 0%,var(--card-edge) 32%,#916411 63%,#ffeaa5 100%));
  clip-path:polygon(13% 5.5%,23% 1.4%,50% 0,77% 1.4%,87% 5.5%,88% 9.4%,92% 12.7%,100% 14%,100% 85.5%,91% 93.4%,50% 100%,9% 93.4%,0 85.5%,0 14%,8% 12.7%,12% 9.4%);
  clip-path:url(#tlpt-trophy-card-shape);
  filter:drop-shadow(0 15px 16px rgba(0,0,0,.32)) drop-shadow(0 0 13px var(--card-glow));
  isolation:isolate;
  transition:transform .22s ease,filter .22s ease;
}

.trophy-room-page .trophy-card:hover,
.trophy-room-page .trophy-card:focus-visible{
  color:var(--card-ink);
  transform:translateY(-6px) scale(1.012);
  filter:drop-shadow(0 21px 21px rgba(0,0,0,.38)) drop-shadow(0 0 20px var(--card-glow));
}

.trophy-room-page .trophy-card:focus-visible{
  outline:3px solid var(--gold);
  outline-offset:5px;
}

.trophy-room-page .trophy-card-inner{
  position:relative;
  display:grid;
  grid-template-rows:52px minmax(100px,1fr) 52px 78px 19px 15px;
  width:100%;
  height:100%;
  overflow:hidden;
  padding:18px 18px 22px;
  color:var(--card-ink);
  background:
    radial-gradient(circle at 76% 24%,rgba(255,255,255,.20),transparent 21%),
    radial-gradient(circle at 26% 38%,rgba(255,255,255,.09),transparent 30%),
    linear-gradient(145deg,var(--card-surface-a) 0%,var(--card-surface-b) 48%,var(--card-surface-c) 100%);
  clip-path:polygon(13% 5.5%,23% 1.4%,50% 0,77% 1.4%,87% 5.5%,88% 9.4%,92% 12.7%,100% 14%,100% 85.5%,91% 93.4%,50% 100%,9% 93.4%,0 85.5%,0 14%,8% 12.7%,12% 9.4%);
  clip-path:url(#tlpt-trophy-card-shape);
}

.trophy-room-page .trophy-card-inner::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:var(--edition-overlay,radial-gradient(circle at 50% 8%,rgba(255,211,106,.25),transparent 28%));
  mix-blend-mode:var(--edition-blend,screen);
  opacity:var(--edition-opacity,.70);
}

.trophy-room-page .trophy-card-inner::after{
  content:"";
  position:absolute;
  inset:-38% -68%;
  z-index:6;
  pointer-events:none;
  transform:translateX(-58%) rotate(20deg);
  background:linear-gradient(90deg,transparent 42%,rgba(255,255,255,.02) 47%,rgba(255,255,255,.22) 50%,rgba(255,255,255,.02) 53%,transparent 58%);
  transition:transform .58s ease;
}

.trophy-room-page .trophy-card:hover .trophy-card-inner::after,
.trophy-room-page .trophy-card:focus-visible .trophy-card-inner::after{
  transform:translateX(58%) rotate(20deg);
}

.trophy-room-page .trophy-card-metal{
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:
    linear-gradient(118deg,transparent 0 14%,rgba(255,255,255,.05) 15%,rgba(255,255,255,.17) 18%,transparent 23% 42%,rgba(255,255,255,.10) 45%,transparent 49% 72%,rgba(255,255,255,.07) 75%,transparent 79%),
    repeating-linear-gradient(102deg,rgba(255,255,255,.025) 0 1px,rgba(0,0,0,.018) 1px 4px);
}

.trophy-room-page .trophy-card-header,
.trophy-room-page .trophy-card-portrait,
.trophy-room-page .trophy-card-identity,
.trophy-room-page .trophy-card-attributes,
.trophy-room-page .trophy-card-earned,
.trophy-room-page .trophy-card-suits{
  position:relative;
  z-index:2;
}

.trophy-room-page .trophy-card-header{
  display:grid;
  grid-template-columns:46px minmax(0,1fr) 42px;
  gap:6px;
  align-items:start;
  padding:5px 14px 0;
}

.trophy-room-page .trophy-card-rating{
  display:flex;
  flex-direction:column;
  align-items:center;
  line-height:1;
}

.trophy-room-page .trophy-card-rating strong{
  font-size:2.12rem;
  font-weight:500;
  letter-spacing:-.075em;
}

.trophy-room-page .trophy-card-rating small{
  min-width:30px;
  margin-top:2px;
  padding-top:3px;
  border-top:1px solid var(--card-line);
  font-size:.70rem;
  font-weight:1000;
  text-align:center;
}

.trophy-room-page .trophy-card-edition{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:1px;
  min-width:0;
  padding-top:4px;
  color:var(--card-muted);
  line-height:1.05;
  text-transform:uppercase;
}

.trophy-room-page .trophy-card-edition small{
  font-size:.40rem;
  font-weight:1000;
  letter-spacing:.14em;
}

.trophy-room-page .trophy-card-edition strong{
  max-width:100%;
  overflow:hidden;
  color:var(--card-ink);
  font-size:.48rem;
  font-weight:1000;
  letter-spacing:.06em;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.trophy-room-page .trophy-card-edition em{
  margin-top:3px;
  padding:2px 5px;
  border:1px solid var(--special-accent);
  border-radius:999px;
  color:var(--special-accent);
  background:rgba(5,9,13,.62);
  font-size:.31rem;
  font-style:normal;
  font-weight:1000;
  letter-spacing:.09em;
}

.trophy-room-page .trophy-card-header > img{
  width:38px;
  height:38px;
  object-fit:contain;
  justify-self:end;
  filter:drop-shadow(0 5px 6px rgba(0,0,0,.28));
}

.trophy-room-page .trophy-card-portrait{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:0;
  margin-top:-3px;
}

.trophy-room-page .trophy-card-avatar-wrap{
  display:flex;
  width:min(128px,100%);
  aspect-ratio:1;
  border-radius:50%;
}

.trophy-room-page .trophy-card-avatar-wrap img,
.trophy-room-page .trophy-card-avatar-fallback{
  align-items:center;
  justify-content:center;
  width:100%;
  height:100%;
  border:3px solid var(--card-edge);
  border-radius:50%;
  color:var(--card-ink);
  background:rgba(10,14,18,.25);
  font-size:1.6rem;
  font-weight:1000;
  object-fit:cover;
  object-position:center;
  image-rendering:auto;
  box-shadow:0 0 0 2px rgba(0,0,0,.10),0 10px 16px rgba(0,0,0,.25),0 0 15px var(--card-glow);
}

.trophy-room-page .trophy-card-identity{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  min-width:0;
  border-top:1px solid var(--card-line);
  border-bottom:1px solid var(--card-line);
  text-align:center;
}

.trophy-room-page .trophy-card-identity strong{
  width:100%;
  overflow:hidden;
  color:var(--card-ink);
  font-size:1rem;
  font-weight:1000;
  line-height:1.05;
  text-overflow:ellipsis;
  text-transform:uppercase;
  white-space:nowrap;
}

.trophy-room-page .trophy-card-identity small{
  width:100%;
  margin-top:4px;
  overflow:hidden;
  color:var(--special-accent);
  font-size:.45rem;
  font-weight:1000;
  letter-spacing:.045em;
  text-overflow:ellipsis;
  text-transform:uppercase;
  white-space:nowrap;
}

.trophy-room-page .trophy-card-attributes{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  grid-template-rows:repeat(3,minmax(0,1fr));
  gap:0 12px;
  padding:5px 10px 2px;
}

.trophy-room-page .trophy-card-attributes > span{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  min-width:0;
}

.trophy-room-page .trophy-card-attributes > span:nth-child(odd)::after{
  content:"";
  position:absolute;
  top:18%;
  right:-6px;
  width:1px;
  height:64%;
  background:var(--card-line);
}

.trophy-room-page .trophy-card-attributes strong{
  font-size:1.05rem;
  font-weight:1000;
  line-height:1;
}

.trophy-room-page .trophy-card-attributes small{
  color:var(--card-muted);
  font-size:.58rem;
  font-weight:1000;
}

.trophy-room-page .trophy-card-earned{
  align-self:center;
  overflow:hidden;
  color:var(--card-muted);
  font-size:.38rem;
  font-weight:1000;
  letter-spacing:.055em;
  text-align:center;
  text-overflow:ellipsis;
  text-transform:uppercase;
  white-space:nowrap;
}

.trophy-room-page .trophy-card-suits{
  align-self:center;
  color:var(--card-muted);
  font-size:.43rem;
  letter-spacing:.18em;
  text-align:center;
}

.trophy-room-page .trophy-card-suits b{
  color:#d33b48;
}

.trophy-room-page .trophy-card-suits i{
  color:#d33b48;
  font-style:normal;
}

.trophy-room-page .trophy-card-plaque{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:5px 8px;
  width:calc(100% - 10px);
  min-height:128px;
  margin-top:12px;
  padding:11px 12px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:13px;
  background:linear-gradient(145deg,rgba(18,27,34,.97),rgba(8,13,17,.98));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 9px 18px rgba(0,0,0,.18);
}

.trophy-room-page .trophy-card-plaque::before{
  content:"";
  position:absolute;
  top:-1px;
  left:14px;
  width:44px;
  height:2px;
  background:var(--special-accent,#ffb81c);
  box-shadow:0 0 8px var(--card-glow,rgba(255,184,28,.25));
}

.trophy-room-page .trophy-card-plaque > div{
  display:grid;
  min-width:0;
}

.trophy-room-page .trophy-card-plaque > div span{
  color:var(--special-accent,#f7d77e);
  font-size:.48rem;
  font-weight:1000;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.trophy-room-page .trophy-card-plaque > div strong{
  overflow:hidden;
  color:#f1f5f7;
  font-size:.72rem;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.trophy-room-page .trophy-card-plaque > em{
  align-self:start;
  padding:3px 6px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:999px;
  color:#a9b7c1;
  background:rgba(255,255,255,.025);
  font-size:.43rem;
  font-style:normal;
  font-weight:900;
  white-space:nowrap;
}

.trophy-room-page .trophy-card-featured{
  grid-column:1 / -1;
  justify-self:start;
  padding:4px 8px;
  border:1px solid rgba(101,240,170,.50);
  border-radius:999px;
  color:#bdfbd7;
  background:rgba(10,49,34,.72);
  box-shadow:0 0 12px rgba(61,226,139,.12),inset 0 1px 0 rgba(255,255,255,.07);
  font-size:.46rem;
  font-weight:1000;
  letter-spacing:.075em;
  line-height:1;
  text-transform:uppercase;
}

.trophy-room-page .trophy-collection-item.is-featured-on-crew .trophy-card-plaque{
  border-color:rgba(101,240,170,.22);
}

.trophy-room-page .trophy-card-plaque p{
  grid-column:1 / -1;
  display:-webkit-box;
  min-height:2.8em;
  margin:0;
  overflow:hidden;
  color:#9dacb7;
  font-size:.57rem;
  line-height:1.4;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
}

.trophy-room-page .trophy-card-plaque > small{
  grid-column:1 / -1;
  overflow:hidden;
  padding-top:5px;
  border-top:1px solid rgba(255,255,255,.06);
  color:#71828f;
  font-size:.49rem;
  font-weight:800;
  text-overflow:ellipsis;
  white-space:nowrap;
}

/* Hall: ivory, engraved gold and old-money restraint. */
.trophy-room-page .trophy-card-hall{
  --card-edge:#d2ad53;
  --card-surface-a:#fff9e8;
  --card-surface-b:#d7c495;
  --card-surface-c:#f4e7c2;
  --card-ink:#2d2517;
  --card-muted:#745f2f;
  --card-line:rgba(86,65,23,.28);
  --card-glow:rgba(255,220,126,.42);
  --special-accent:#a77b20;
  --card-frame:linear-gradient(145deg,#fffdf1 0%,#d8b75f 28%,#8c651c 54%,#f4d98c 76%,#fff7cf 100%);
  --edition-blend:multiply;
  --edition-opacity:.48;
  --edition-overlay:
    radial-gradient(ellipse at 50% 9%,rgba(255,255,255,.92),transparent 29%),
    repeating-linear-gradient(90deg,transparent 0 11%,rgba(103,78,30,.07) 11.5% 12.2%,transparent 12.8% 22%),
    linear-gradient(118deg,transparent 0 39%,rgba(255,255,255,.65) 45%,transparent 51% 100%);
}

/* Infamy: black lacquer and crimson warning lights. */
.trophy-room-page .trophy-card-infamy{
  --card-edge:#ff5b76;
  --card-surface-a:#07060a;
  --card-surface-b:#4b081d;
  --card-surface-c:#10050b;
  --card-ink:#fff1f4;
  --card-muted:#ff9bac;
  --card-line:rgba(255,105,131,.28);
  --card-glow:rgba(255,34,92,.46);
  --special-accent:#ff6385;
  --card-frame:linear-gradient(145deg,#ffd0da 0%,#ff426d 22%,#3a0617 49%,#b70e3c 72%,#ff9ab0 100%);
  --edition-opacity:.84;
  --edition-overlay:
    repeating-radial-gradient(circle at 50% 43%,transparent 0 34px,rgba(255,93,133,.13) 36px,transparent 39px 54px),
    repeating-linear-gradient(132deg,transparent 0 20px,rgba(255,58,104,.13) 21px,transparent 24px),
    radial-gradient(circle at 50% 88%,rgba(91,0,28,.66),transparent 44%);
}

/* League Leaders: navy platinum with category-specific neon. */
.trophy-room-page .trophy-card-leader{
  --card-edge:#dbeaff;
  --card-surface-a:#071425;
  --card-surface-b:#123b67;
  --card-surface-c:#07111f;
  --card-ink:#f4f9ff;
  --card-muted:#bfd1e6;
  --card-line:rgba(222,238,255,.26);
  --card-glow:rgba(88,173,255,.36);
  --special-accent:#a8d8ff;
  --card-frame:linear-gradient(145deg,#f4fbff 0%,var(--special-accent) 26%,#507392 48%,#dcecff 72%,var(--special-accent) 100%);
  --edition-opacity:.78;
  --edition-overlay:
    conic-gradient(from 228deg at 50% 36%,transparent 0 10deg,rgba(88,173,255,.18) 11deg 16deg,transparent 17deg 31deg,rgba(88,173,255,.18) 32deg 37deg,transparent 38deg 360deg),
    linear-gradient(122deg,transparent 0 30%,rgba(88,173,255,.20) 31% 34%,transparent 35% 63%,rgba(255,255,255,.16) 64% 67%,transparent 68%);
}

.trophy-room-page .trophy-card-edition-leader-profit{
  --special-accent:#65f0aa;
  --card-glow:rgba(48,219,133,.35);
}

.trophy-room-page .trophy-card-edition-leader-knockouts{
  --special-accent:#ff7884;
  --card-glow:rgba(255,67,83,.36);
}

.trophy-room-page .trophy-card-edition-leader-roi{
  --special-accent:#6de8ff;
  --card-glow:rgba(41,207,244,.37);
}

.trophy-room-page .trophy-card-edition-leader-cash-rate{
  --special-accent:#d29aff;
  --card-glow:rgba(169,83,255,.38);
}

/* Heater: molten orange and carbon black. */
.trophy-room-page .trophy-card-heater{
  --card-edge:#ffb347;
  --card-surface-a:#080808;
  --card-surface-b:#8d2109;
  --card-surface-c:#1b0804;
  --card-ink:#fff4dd;
  --card-muted:#ffc47d;
  --card-line:rgba(255,181,79,.30);
  --card-glow:rgba(255,83,24,.48);
  --special-accent:#ffb24c;
  --card-frame:linear-gradient(145deg,#fff0b5 0%,#ffad3b 23%,#a92508 50%,#ff6324 72%,#ffe29a 100%);
  --edition-opacity:.86;
  --edition-overlay:
    radial-gradient(ellipse at 24% 105%,rgba(255,219,73,.58),transparent 28%),
    radial-gradient(ellipse at 55% 104%,rgba(255,59,12,.60),transparent 36%),
    radial-gradient(ellipse at 82% 105%,rgba(255,172,42,.50),transparent 25%),
    repeating-linear-gradient(104deg,transparent 0 18px,rgba(255,193,87,.12) 20px,transparent 23px);
}

/* Milestone clubs become progressively rarer and more ceremonial. */
.trophy-room-page .trophy-card-edition-milestone-10{
  --card-edge:#e7a66d;
  --card-surface-a:#3c180d;
  --card-surface-b:#ad5e31;
  --card-surface-c:#4d2012;
  --card-ink:#fff0dd;
  --card-muted:#9ff0dc;
  --card-line:rgba(155,239,217,.28);
  --card-glow:rgba(54,210,177,.34);
  --special-accent:#79e3c8;
  --card-frame:linear-gradient(145deg,#ffe2c3 0%,#d78750 24%,#6a2c17 50%,#46bda1 74%,#f0b17d 100%);
  --edition-opacity:.72;
  --edition-overlay:repeating-radial-gradient(circle at 50% 52%,transparent 0 17px,rgba(112,229,199,.12) 18px,transparent 20px 34px);
}

.trophy-room-page .trophy-card-edition-milestone-25{
  --card-edge:#dffcff;
  --card-surface-a:#dcecef;
  --card-surface-b:#79bfc7;
  --card-surface-c:#ecf8f9;
  --card-ink:#10292e;
  --card-muted:#245d65;
  --card-line:rgba(11,72,82,.27);
  --card-glow:rgba(91,236,239,.40);
  --special-accent:#1f8994;
  --card-frame:linear-gradient(145deg,#ffffff 0%,#b8e9ed 23%,#5da8b2 50%,#dffcff 74%,#8ce5e5 100%);
  --edition-blend:multiply;
  --edition-opacity:.46;
  --edition-overlay:repeating-conic-gradient(from 45deg at 50% 45%,rgba(255,255,255,.30) 0 8deg,transparent 9deg 22deg,rgba(31,137,148,.08) 23deg 31deg,transparent 32deg 45deg);
}

.trophy-room-page .trophy-card-edition-milestone-50{
  --card-edge:#f2cb67;
  --card-surface-a:#05070a;
  --card-surface-b:#242a31;
  --card-surface-c:#080a0d;
  --card-ink:#ffe9a1;
  --card-muted:#d7bd69;
  --card-line:rgba(242,203,103,.30);
  --card-glow:rgba(247,198,62,.42);
  --special-accent:#f3c956;
  --card-frame:linear-gradient(145deg,#fff4bf 0%,#e1b33e 21%,#171b20 48%,#775915 69%,#ffe08a 100%);
  --edition-opacity:.78;
  --edition-overlay:repeating-conic-gradient(from 45deg at 50% 44%,rgba(255,213,98,.10) 0 8deg,transparent 9deg 22deg,rgba(255,255,255,.05) 23deg 31deg,transparent 32deg 45deg);
}

.trophy-room-page .trophy-card-edition-milestone-75{
  --card-edge:#eee4ff;
  --card-surface-a:#130720;
  --card-surface-b:#6b2c9d;
  --card-surface-c:#180926;
  --card-ink:#fff8ff;
  --card-muted:#e4c5ff;
  --card-line:rgba(231,208,255,.29);
  --card-glow:rgba(185,104,255,.46);
  --special-accent:#dfb0ff;
  --card-frame:linear-gradient(145deg,#fff8ff 0%,#d9b1f5 21%,#6f289f 47%,#58d7e5 70%,#f0caff 100%);
  --edition-opacity:.82;
  --edition-overlay:conic-gradient(from 210deg at 50% 36%,transparent 0 18deg,rgba(102,222,239,.20) 19deg 26deg,transparent 27deg 51deg,rgba(223,176,255,.22) 52deg 60deg,transparent 61deg 360deg);
}

.trophy-room-page .trophy-card-edition-milestone-100{
  --card-edge:#f1cb5f;
  --card-surface-a:#ffffff;
  --card-surface-b:#cbd0d7;
  --card-surface-c:#f7f7f5;
  --card-ink:#080a0d;
  --card-muted:#4e4330;
  --card-line:rgba(24,25,27,.28);
  --card-glow:rgba(255,220,116,.52);
  --special-accent:#b98516;
  --card-frame:linear-gradient(145deg,#ffffff 0%,#efd16f 18%,#0a0d10 42%,#f8f8f4 63%,#c08d19 82%,#ffffff 100%);
  --edition-blend:multiply;
  --edition-opacity:.54;
  --edition-overlay:
    repeating-radial-gradient(circle at 50% 44%,transparent 0 23px,rgba(13,15,18,.08) 24px,transparent 27px 40px,rgba(185,133,22,.10) 41px,transparent 44px 60px),
    conic-gradient(from 45deg at 50% 42%,rgba(92,222,235,.10),rgba(255,128,188,.10),rgba(255,220,91,.12),rgba(92,222,235,.10));
}

.trophy-room-page .trophy-empty-state,
.trophy-room-page .trophy-load-error{
  grid-column:1 / -1;
  display:grid;
  gap:5px;
  width:100%;
  padding:42px 20px;
  border:1px dashed rgba(255,184,28,.25);
  border-radius:16px;
  color:#9cabb6;
  text-align:center;
}

.trophy-room-page .trophy-empty-state[hidden]{
  display:none;
}

.trophy-room-page .trophy-empty-state strong,
.trophy-room-page .trophy-load-error strong{
  color:#f5d77f;
  font-size:1.05rem;
}

@media (max-width:1100px){
  .trophy-room-page .trophy-card-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media (max-width:820px){
  .trophy-room-page .trophy-room-hero{
    grid-template-columns:minmax(0,1fr) 82px;
    padding:27px 24px 24px;
  }

  .trophy-room-page .trophy-room-chip{
    width:78px;
    height:78px;
  }

  .trophy-room-page .trophy-room-summary{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .trophy-room-page .trophy-filter-fields{
    grid-template-columns:1fr;
  }

  .trophy-room-page .trophy-card-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:30px 16px;
  }
}

@media (max-width:560px){
  .trophy-room-page .trophy-room-main{
    padding-top:18px;
  }

  .trophy-room-page .trophy-room-hero{
    grid-template-columns:1fr;
    border-radius:17px;
  }

  .trophy-room-page .trophy-room-chip{
    position:absolute;
    top:18px;
    right:18px;
    width:58px;
    height:58px;
    opacity:.72;
  }

  .trophy-room-page .trophy-room-hero-copy{
    padding-right:42px;
  }

  .trophy-room-page .trophy-room-summary{
    grid-template-columns:1fr 1fr;
  }

  .trophy-room-page .trophy-room-summary strong{
    font-size:1.2rem;
  }

  .trophy-room-page .trophy-room-controls,
  .trophy-room-page .trophy-room-ledger{
    padding:15px 10px;
    border-radius:17px;
  }

  .trophy-room-page .trophy-filter-family{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .trophy-room-page .trophy-filter-family button{
    width:100%;
    padding:7px 9px;
    font-size:.66rem;
  }

  .trophy-room-page .trophy-room-ledger-head{
    align-items:start;
    flex-direction:column;
  }

  .trophy-room-page .trophy-card-grid{
    grid-template-columns:1fr;
  }

  .trophy-room-page .trophy-collection-item{
    max-width:260px;
  }
}

@media (prefers-reduced-motion:reduce){
  .trophy-room-page .trophy-card,
  .trophy-room-page .trophy-card-inner::after,
  .trophy-room-page .trophy-filter-family button{
    transition:none;
  }

  .trophy-room-page .trophy-card:hover,
  .trophy-room-page .trophy-card:focus-visible,
  .trophy-room-page .trophy-filter-family button:hover,
  .trophy-room-page .trophy-filter-family button:focus-visible{
    transform:none;
  }

  .trophy-room-page .trophy-card:hover .trophy-card-inner::after,
  .trophy-room-page .trophy-card:focus-visible .trophy-card-inner::after{
    transform:translateX(-58%) rotate(20deg);
  }
}
