/* Player "draft card" — shared by register success, draft board, projector, admin */
.pcard {
  --tc: #2a3f73;
  position: relative; border-radius: 16px; overflow: hidden; aspect-ratio: 4 / 5.4;
  background: linear-gradient(170deg, #182c5c, #0a1633 70%);
  box-shadow: 0 18px 40px -18px rgba(0,0,0,.85), inset 0 0 0 1px rgba(255,255,255,.08);
  isolation: isolate; transition: transform .25s, opacity .3s, filter .3s;
}
.pcard .ph { position: absolute; inset: 0 0 26% 0; width: 100%; height: 74%; object-fit: cover; object-position: 50% 30%; }
.pcard .nophoto { position: absolute; inset: 0 0 26% 0; display: grid; place-items: center; font-family: var(--display); font-size: 44px; color: rgba(207,230,255,.35); background: radial-gradient(circle at 50% 40%, #1c3570, #0c1a3d); }
/* vintage trading card: cream frame + a gold rule along the top of the name plate */
.pcard::before { content: ''; position: absolute; inset: 0; z-index: 3; pointer-events: none; border-radius: inherit;
  box-shadow: inset 0 0 0 3px var(--cream-2, #e6d3a6), inset 0 0 0 4px rgba(0,0,0,.35); }
.pcard::after { content: ''; position: absolute; inset: 0; z-index: 1; pointer-events: none;
  background: linear-gradient(180deg, transparent 45%, rgba(6,13,32,.35) 60%, color-mix(in srgb, var(--tc), #050b1a 55%) 78%, color-mix(in srgb, var(--tc), #050b1a 30%) 100%); }
.pcard .meta { position: absolute; left: 0; right: 0; bottom: 0; z-index: 2; padding: 10px 12px 12px; min-width: 0; }
.pcard .meta::before { content: ''; position: absolute; left: 3px; right: 3px; top: 0; height: 2px; background: linear-gradient(90deg, transparent, rgba(242,191,74,.9) 10%, rgba(242,191,74,.9) 90%, transparent); }
.pcard .first { font-family: var(--cond); font-weight: 500; text-transform: uppercase; letter-spacing: .12em; font-size: 12px; color: rgba(238,244,255,.8); line-height: 1.1; }
.pcard .last { font-family: var(--display); text-transform: uppercase; font-size: 22px; line-height: 1; letter-spacing: .01em; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pcard .tags { display: flex; gap: 5px; margin-top: 6px; flex-wrap: wrap; }
.pcard .tag { font-family: var(--cond); font-size: 10.5px; letter-spacing: .1em; text-transform: uppercase; padding: 2px 7px; border-radius: 6px; background: rgba(0,0,0,.35); color: rgba(238,244,255,.85); border: 1px solid rgba(255,255,255,.12); }
.pcard .tag.pos { background: var(--gold); color: #1a1203; border: 0; font-weight: 600; }
.pcard .tag.rookie { background: rgba(207,230,255,.14); color: var(--ice, #cfe6ff); border-color: rgba(207,230,255,.35); }
.pcard .tag.vet { background: rgba(244,232,204,.16); color: var(--cream, #f4e8cc); border-color: rgba(244,232,204,.4); }
.pcard .tag.champ { background: var(--barn, #c7362b); color: var(--cream, #f4e8cc); border: 0; font-weight: 600; }
.pcard .badge-cup { position: absolute; top: 8px; right: 8px; z-index: 4; width: 26px; height: 26px; border-radius: 50%; background: var(--gold); color: #1a1203; display: grid; place-items: center; box-shadow: 0 4px 10px rgba(0,0,0,.4); }
.pcard .badge-cup svg { width: 15px; height: 15px; }
.pcard .drafted { position: absolute; top: 10px; left: -34px; z-index: 4; transform: rotate(-35deg); width: 130px; text-align: center; background: var(--tc); color: #fff; font-family: var(--display); font-size: 11px; letter-spacing: .1em; padding: 3px 0; text-transform: uppercase; box-shadow: 0 4px 10px rgba(0,0,0,.4); text-shadow: 0 1px 2px rgba(0,0,0,.4); }
.pcard.is-drafted { filter: saturate(.55) brightness(.75); }
.pcard.is-drafted .drafted { filter: none; }
.pcard.big { border-radius: 26px; }
.pcard.big::before { box-shadow: inset 0 0 0 6px var(--cream-2, #e6d3a6), inset 0 0 0 8px rgba(0,0,0,.35); }
.pcard.big .first { font-family: var(--script, cursive); text-transform: none; letter-spacing: .01em; font-size: 34px; line-height: 1; color: var(--cream, #f4e8cc); text-shadow: 0 2px 0 rgba(0,0,0,.45); margin-bottom: 2px; }
.pcard.big .last { font-size: 54px; }
.pcard.big .tag { font-size: 15px; padding: 4px 11px; }
.pcard.big .meta { padding: 20px 24px 24px; }
.nophoto { display: grid; place-items: center; }
/* No headshot uploaded: the committee "chose" one */
img.committee-pick { object-fit: contain !important; padding: 10%; background: radial-gradient(circle at 50% 40%, #1c3570, #0c1a3d); }
.pcard img.committee-pick { padding: 12% 16% 8%; }
