.playerpedia-section { position: relative; }
.playerpedia-heading { align-items: flex-start !important; }
.player-status {
  flex: 0 0 auto;
  padding: 10px 14px;
  border-radius: 999px;
  background: #f5f0ff;
  color: var(--purple);
  font-weight: 850;
  font-size: .86rem;
  border: 1px solid #e4d7fa;
}

.player-tools {
  display: grid;
  grid-template-columns: minmax(240px, 1.4fr) minmax(210px, .8fr) auto;
  gap: 12px;
  align-items: end;
  padding: 18px;
  margin-bottom: 20px;
  border: 1px solid var(--line);
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 12px 35px rgba(20,10,47,.06);
}
.player-tools label { display: grid; gap: 7px; }
.player-tools label > span {
  color: var(--muted);
  font-size: .76rem;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.player-tools input,
.player-tools select {
  width: 100%;
  min-height: 48px;
  border: 1px solid var(--line);
  border-radius: 14px;
  padding: 0 14px;
  background: var(--paper);
  color: var(--ink);
  font: inherit;
  font-weight: 700;
  outline: none;
}
.player-tools input:focus,
.player-tools select:focus {
  border-color: var(--purple);
  box-shadow: 0 0 0 4px rgba(107,43,217,.1);
}
.reset-player-filters {
  min-height: 48px;
  border: 0;
  border-radius: 14px;
  padding: 0 18px;
  background: var(--deep);
  color: var(--lime);
  font: inherit;
  font-weight: 900;
  cursor: pointer;
}

.az-grid { margin-bottom: 18px; }
.az-grid button:first-child { aspect-ratio: auto; min-width: 58px; }
.az-grid button.active {
  background: var(--deep);
  color: var(--lime);
  border-color: var(--deep);
  box-shadow: 0 8px 20px rgba(20,10,47,.16);
}

.playerpedia-meta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  margin: 24px 0 16px;
  color: var(--muted);
  font-size: .9rem;
}
.playerpedia-meta strong { color: var(--ink); font-size: 1rem; }
.playerpedia-meta span { text-align: right; max-width: 650px; }

.player-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}
.player-card {
  width: 100%;
  min-height: 116px;
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr) 24px;
  gap: 14px;
  align-items: center;
  text-align: left;
  border: 1px solid var(--line);
  border-radius: 20px;
  padding: 16px;
  background: #fff;
  color: var(--ink);
  font: inherit;
  cursor: pointer;
  box-shadow: 0 8px 24px rgba(20,10,47,.045);
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.player-card:hover,
.player-card:focus-visible {
  transform: translateY(-3px);
  border-color: #bda1e9;
  box-shadow: 0 16px 34px rgba(20,10,47,.10);
  outline: none;
}
.player-avatar {
  width: 58px;
  height: 58px;
  border-radius: 18px;
  display: grid;
  place-items: center;
  background: linear-gradient(145deg, var(--purple), #3c1385);
  color: var(--lime);
  font-weight: 950;
  letter-spacing: -.03em;
  transform: rotate(-2deg);
}
.player-avatar.photo-avatar{
  position:relative;
  overflow:hidden;
  transform:none;
  background:linear-gradient(145deg,var(--purple),#3c1385);
}
.player-avatar-fallback{
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  color:var(--lime);
  font-weight:950;
  letter-spacing:-.03em;
}
.player-avatar-image{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 18%;
  display:block;
  background:#eee9f3;
}
.player-avatar.large {
  width: 82px;
  height: 82px;
  border-radius: 24px;
  font-size: 1.35rem;
}
.player-card-copy { min-width: 0; display: grid; gap: 3px; }
.player-card-copy strong {
  font-size: 1.05rem;
  line-height: 1.15;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.player-card-copy > span:last-child {
  color: var(--muted);
  font-size: .86rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.player-card-topline {
  color: var(--purple);
  font-size: .7rem;
  font-weight: 900;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.player-card-arrow { color: var(--purple); font-weight: 950; font-size: 1.2rem; }
.player-card-loading {
  min-height: 116px;
  border: 0;
  background: linear-gradient(110deg, #f2edf8 10%, #faf8fc 30%, #f2edf8 50%);
  cursor: default;
  animation: playerpulse 1.5s ease-in-out infinite;
}
@keyframes playerpulse { 50% { opacity: .58; } }

.player-empty,
.playerpedia-error {
  grid-column: 1 / -1;
  border-radius: 20px;
}
.player-empty {
  padding: 28px;
  border: 1px dashed var(--line);
  background: #faf8fc;
  display: grid;
  gap: 4px;
  color: var(--muted);
}
.player-empty strong { color: var(--ink); }

.player-modal {
  width: min(760px, calc(100% - 28px));
  max-height: min(88vh, 850px);
  overflow-y: auto;
  border: 0;
  border-radius: 28px;
  padding: 0;
  color: var(--ink);
  background: var(--paper);
  box-shadow: 0 40px 120px rgba(8,3,22,.45);
}
.player-modal::backdrop {
  background: rgba(13,6,34,.72);
  backdrop-filter: blur(5px);
}
.player-modal-close {
  position: sticky;
  top: 14px;
  float: right;
  z-index: 3;
  width: 42px;
  height: 42px;
  margin: 14px 14px 0 0;
  border: 0;
  border-radius: 50%;
  background: var(--deep);
  color: #fff;
  font-size: 1.6rem;
  line-height: 1;
  cursor: pointer;
}
.player-modal-body { padding: 34px; clear: both; }
.profile-loading,
.profile-hero {
  display: flex;
  gap: 20px;
  align-items: center;
}
.profile-hero { margin-bottom: 24px; }
.profile-hero h3,
.profile-loading h3 {
  margin: 2px 0 6px;
  font-size: clamp(2rem, 5vw, 3.3rem);
  line-height: .95;
  letter-spacing: -.045em;
}
.profile-teamline { margin: 0; color: var(--muted); font-weight: 800; }
.profile-facts {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 22px 0;
}
.profile-fact {
  min-height: 82px;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: #fff;
  display: grid;
  gap: 4px;
  align-content: center;
}
.profile-fact span {
  color: var(--muted);
  font-size: .68rem;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.profile-fact strong { line-height: 1.2; }
.profile-subsection { margin-top: 26px; }
.profile-subsection h4 { margin: 0 0 10px; font-size: 1.05rem; }
.profile-description { margin: 0; color: #514a5c; line-height: 1.7; }
.profile-tags { display: flex; flex-wrap: wrap; gap: 8px; }
.profile-tags span {
  padding: 9px 12px;
  border-radius: 999px;
  background: #f1e8ff;
  color: #4d1d97;
  font-weight: 800;
  font-size: .85rem;
}
.why-we-know-her {
  margin-top: 30px;
  padding: 24px;
  border-radius: 22px;
  background: var(--deep);
  color: #fff;
}
.why-we-know-her > span {
  display: block;
  color: var(--lime);
  font-size: .72rem;
  font-weight: 950;
  letter-spacing: .12em;
}
.why-we-know-her strong { display: block; margin: 7px 0; font-size: 1.35rem; }
.why-we-know-her p { margin: 0; color: rgba(255,255,255,.72); }

/* Player Wire */
.player-wire-section{background:#140a2f;color:#fff;}
.player-wire-section .page-heading h2{color:#fff;}
.player-wire-section .page-heading>p:last-child{color:rgba(255,255,255,.72);}
.player-wire-grid{display:grid;grid-template-columns:.8fr 1.1fr 1.1fr;gap:16px;align-items:start;}
.player-wire-panel{background:#fff;color:#17131f;border-radius:24px;padding:22px;border:1px solid rgba(255,255,255,.12);box-shadow:0 16px 36px rgba(0,0,0,.18);min-width:0;}
.player-wire-live{background:#d8ff4f;position:sticky;top:18px;}
.player-wire-label{display:block;color:#6c2ad9;font-size:.7rem;font-weight:950;letter-spacing:.11em;text-transform:uppercase;margin-bottom:8px;}
.player-wire-live strong{display:block;font-size:clamp(2rem,4vw,3.3rem);line-height:.95;letter-spacing:-.04em;margin:10px 0;}
.player-wire-live p{color:#4a4350;line-height:1.55;}
.player-wire-live a{display:inline-flex;margin-top:10px;padding:10px 13px;border-radius:999px;background:#140a2f;color:#d8ff4f;text-decoration:none;font-weight:900;}
.player-wire-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px;}
.player-wire-head h3{margin:0;font-size:1.35rem;}
.wire-updated{font-size:.72rem;color:#7a7182;font-weight:800;white-space:nowrap;}
.wire-feed{display:grid;gap:0;border-top:1px solid #ece5f1;}
.wire-row{display:grid;grid-template-columns:78px minmax(0,1fr);gap:12px;padding:14px 0;border-bottom:1px solid #ece5f1;align-items:start;}
.wire-row:last-child{border-bottom:0;}
.wire-date{font-size:.78rem;color:#776e7e;font-weight:850;padding-top:3px;}
.wire-chip,.wire-status{display:inline-flex;align-items:center;width:max-content;padding:5px 8px;border-radius:999px;background:#eee6fb;color:#5b22b7;font-size:.64rem;font-weight:950;letter-spacing:.06em;margin-bottom:5px;}
.wire-status.out{background:#fee6e6;color:#a62222;}
.wire-status.out-for-season{background:#17131f;color:#fff;}
.wire-status.day-to-day{background:#fff2cb;color:#7c5b00;}
.wire-row strong{display:block;font-size:.94rem;line-height:1.25;}
.wire-row p{margin:4px 0 0;color:#706879;font-size:.8rem;line-height:1.45;}
.wire-asof{white-space:nowrap;color:#9a91a0;}
.player-wire-note{color:rgba(255,255,255,.6)!important;margin-top:16px;}
.live-profile-note{padding:16px;border-radius:16px;background:#f1e8ff;border:1px solid #dfd0f5;}
.live-profile-note p{margin:0;color:#51475d;}

@media (max-width: 1000px){
  .player-wire-grid{grid-template-columns:1fr 1fr;}
  .player-wire-live{grid-column:1/-1;position:static;}
}
@media (max-width: 900px) {
  .player-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .player-tools { grid-template-columns: 1fr 1fr; }
  .reset-player-filters { grid-column: 1 / -1; }
}

@media (max-width: 680px) {
  .player-tools { grid-template-columns: 1fr; padding: 14px; }
  .reset-player-filters { grid-column: auto; }
  .playerpedia-meta { align-items: flex-start; flex-direction: column; gap: 6px; }
  .playerpedia-meta span { text-align: left; }
  .player-grid { grid-template-columns: 1fr; }
  .player-card { min-height: 104px; grid-template-columns: 54px minmax(0, 1fr) 20px; padding: 14px; }
  .player-avatar { width: 54px; height: 54px; border-radius: 16px; }
  .player-modal-body { padding: 26px 20px 24px; }
  .profile-hero, .profile-loading { align-items: flex-start; }
  .player-avatar.large { width: 66px; height: 66px; border-radius: 20px; flex: 0 0 auto; }
  .profile-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .player-wire-grid{grid-template-columns:1fr;}
  .player-wire-live{grid-column:auto;}
  .wire-row{grid-template-columns:68px minmax(0,1fr);}
  .player-wire-head{flex-direction:column;gap:4px;}
}
