/* IFKDB player profile v6 */
.player-page,
.player-page * { box-sizing: border-box; }

.player-page {
  --player-blue: #1D4289;
  --player-blue-dark: #173872;
  --player-ink: #10243b;
  --player-muted: #66768b;
  --player-border: rgba(18,54,96,.15);
  --player-soft: #f1f5fa;
  --player-soft-blue: #e8f0fa;
  min-width: 0;
  color: var(--player-ink);
  background: linear-gradient(180deg,#edf3f9 0,#fff 31rem);
}

body.player-page > #spelarbakgrund,
body.player-page > #sidbanner { display: none !important; }

.player-page #main.wrapper {
  margin: 0 !important;
  padding: clamp(.8rem,2vw,1.25rem) 0 3rem !important;
  background: transparent !important;
}

.player-page #main > .inner {
  width: 100% !important;
  max-width: 84rem !important;
  margin: 0 auto !important;
  padding-inline: clamp(1rem,3vw,2rem) !important;
}

/* Profile overview: intentionally quieter than a hero. */
.player-profile {
  display: grid;
  grid-template-columns: minmax(14rem,29%) minmax(0,1fr);
  min-height: 20rem;
  overflow: hidden;
  border: 1px solid var(--player-border);
  border-radius: 1.15rem;
  background: #fff;
  box-shadow: 0 .8rem 2.2rem rgba(16,36,59,.09);
  color: var(--player-ink);
  text-align: left;
}

.player-profile__media {
  position: relative;
  min-width: 0;
  min-height: 20rem;
  overflow: hidden;
  border-right: 1px solid var(--player-border);
  background: #dfe7f1;
}

.player-profile__media .slideshow-container,
.player-profile__media > .card,
.player-profile__media > a,
.player-profile__media .mySlides,
.player-profile__media .kamerareportage {
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  margin: 0 !important;
}

.player-profile__media .mySlides { position: absolute; inset: 0; }

.player-profile__media img,
.player-profile__media .fits,
.player-profile__media .card,
.player-profile__media .cardvideo,
.player-profile__media .thumbnail {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  object-fit: cover !important;
  object-position: center 17% !important;
}

.player-profile__media .kamerareportage .img-top { display: none !important; }
.player-profile__media .imagetext {
  position: absolute;
  right: .6rem;
  bottom: .6rem;
  z-index: 6;
  max-width: calc(100% - 1.2rem);
  padding: .32rem .48rem;
  border-radius: .45rem;
  background: rgba(7,25,52,.76);
  color: #fff !important;
  font-size: .62rem;
  line-height: 1.35;
}
.player-profile__media .imagetext a { color: #fff !important; }

.player-profile__media > div[style*="text-align:center"] {
  position: absolute;
  bottom: .65rem;
  left: 50%;
  z-index: 8;
  display: flex;
  gap: .35rem;
  transform: translateX(-50%);
}

.player-profile__media .dot {
  width: .55rem !important;
  height: .55rem !important;
  margin: 0 !important;
  border: 1px solid rgba(255,255,255,.78) !important;
  background: rgba(255,255,255,.4) !important;
}
.player-profile__media .dot.active { background: #fff !important; }

.player-profile__media .prev,
.player-profile__media .next {
  top: 50% !important;
  z-index: 9 !important;
  display: grid !important;
  width: 2.45rem !important;
  height: 2.45rem !important;
  place-items: center !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid rgba(255,255,255,.35) !important;
  border-radius: 999px !important;
  background: rgba(10,35,76,.7) !important;
  color: #fff !important;
  font-size: 1rem !important;
  text-decoration: none !important;
  transform: translateY(-50%);
}
.player-profile__media .prev { left: .65rem !important; }
.player-profile__media .next { right: .65rem !important; }

.player-profile__content {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
  padding: clamp(1.2rem,2.7vw,2rem);
  background:
    radial-gradient(circle at 100% 0,rgba(29,66,137,.07),transparent 18rem),
    linear-gradient(145deg,#fff,#f7f9fc);
  color: var(--player-ink) !important;
}
.player-profile__content:after { display: none !important; }

.player-profile #sidbanner {
  position: relative;
  z-index: 1;
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  color: var(--player-ink) !important;
  text-align: left !important;
}

.player-profile #sidbanner h2 {
  max-width: 54rem;
  margin: 0 !important;
  color: var(--player-ink) !important;
  font-size: clamp(1.8rem,3.35vw,3rem) !important;
  letter-spacing: -.035em !important;
  line-height: 1.02 !important;
  overflow-wrap: anywhere;
  text-align: left !important;
  text-shadow: none !important;
}

.player-profile #sidbanner h2 a {
  color: var(--player-ink) !important;
  text-decoration: none !important;
}

.player-profile #sidbanner > p,
.player-profile #sidbanner > p span,
.player-profile #sidbanner > p font,
.player-profile #sidbanner .big,
.player-profile #sidbanner .big span {
  color: #405166 !important;
  text-shadow: none !important;
}

.player-profile #sidbanner > p {
  max-width: 54rem;
  margin: .55rem 0 0 !important;
  font-size: .86rem !important;
  line-height: 1.48 !important;
  text-align: left !important;
}

.player-profile #sidbanner > p a,
.player-profile #outer a,
.player-profile #inners a { color: var(--player-blue) !important; }
.player-profile #sidbanner .flag-icon { margin-right: .28rem; }
.player-profile #sidbanner .big {
  display: flex;
  flex-wrap: wrap;
  gap: .25rem .6rem;
  margin-top: .28rem;
}
.player-profile #sidbanner .big b {
  color: var(--player-ink) !important;
  font-size: 1.12rem !important;
}

.player-profile #outer {
  position: relative;
  z-index: 1;
  width: 100% !important;
  margin: .8rem 0 0 !important;
  padding: 0 !important;
}

.player-profile #inners {
  width: 100% !important;
  max-height: none !important;
  margin: 0 !important;
  padding: .78rem .85rem !important;
  overflow: visible !important;
  border: 1px solid rgba(18,54,96,.12) !important;
  border-radius: .8rem !important;
  background: var(--player-soft) !important;
  color: #405166 !important;
  font-size: .7rem !important;
  line-height: 1.42 !important;
  text-align: left !important;
  box-shadow: none !important;
}
.player-profile #inners * { color: inherit; }
.player-profile #inners i {
  width: 1.1rem;
  color: var(--player-blue) !important;
  text-align: center;
}
.player-profile #inners.is-enhanced {
  display: grid !important;
  grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  align-content: start;
  gap: .25rem .85rem;
}
.player-profile #inners .player-profile__fact { min-width: 0; overflow-wrap: anywhere; }

.player-page .alert-box.warning,
.player-page .namne {
  width: min(100%,58rem) !important;
  margin: 1rem auto 0 !important;
  padding: .8rem 1rem !important;
  border: 1px solid var(--player-border) !important;
  border-radius: .8rem !important;
  background: #fff8e8 !important;
  color: #4d5969 !important;
  font-size: .8rem !important;
  line-height: 1.5 !important;
  box-shadow: none !important;
}
.player-page .namne { background: #eef4fb !important; }

.player-content {
  margin-top: clamp(1rem,2.5vw,1.6rem);
  padding: clamp(1rem,2.5vw,1.45rem);
  border: 1px solid var(--player-border);
  border-radius: 1.05rem;
  background: rgba(255,255,255,.98);
  box-shadow: 0 .7rem 2rem rgba(16,36,59,.065);
  text-align: left;
}
.player-content__intro { margin: 0 0 .8rem; }
.player-content__intro p {
  margin: 0 0 .2rem !important;
  color: var(--player-blue) !important;
  font-size: .66rem !important;
  font-weight: 900 !important;
  letter-spacing: .1em !important;
  text-transform: uppercase !important;
}
.player-content__intro h2 {
  margin: 0 !important;
  color: var(--player-ink) !important;
  font-size: clamp(1.3rem,2.6vw,1.9rem) !important;
  line-height: 1.15 !important;
}

.player-page .tabset {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: .4rem;
  min-width: 0;
}
.player-page .tabset > input[type="radio"] {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}
.player-page .tabset > label {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: .4rem !important;
  min-height: 2.45rem !important;
  margin: 0 !important;
  padding: .5rem .68rem !important;
  border: 1px solid transparent !important;
  border-radius: .68rem !important;
  background: #edf3fa !important;
  color: #526176 !important;
  font-size: .74rem !important;
  font-weight: 850 !important;
  line-height: 1.2 !important;
  cursor: pointer !important;
}
.player-page .tabset > label:after { display: none !important; }
.player-page .tabset > label:hover { background: #e3edf9 !important; color: var(--player-blue) !important; }
.player-page .tabset > input:checked + label {
  border-color: rgba(29,66,137,.16) !important;
  background: var(--player-blue) !important;
  color: #fff !important;
}
.player-page .tabset > input:focus-visible + label { outline: 3px solid rgba(29,66,137,.18); }

.player-page .tab-panels {
  flex: 1 0 100%;
  min-width: 0;
  margin-top: .8rem;
}
.player-page .tab-panels > .tab-panel { display: none !important; }
.player-page .tab-panels > .tab-panel.is-active { display: block !important; }
.player-page .tab-panels > #bilder.is-active { display: grid !important; }
.player-page .tab-panel {
  min-width: 0;
  padding: 1rem 0 0 !important;
  border-top: 1px solid var(--player-border) !important;
  color: #405166;
  text-align: left;
}
.player-page .tab-panel h3 {
  margin: 0 0 .7rem !important;
  color: var(--player-ink) !important;
  font-size: clamp(1.05rem,2.2vw,1.38rem) !important;
  line-height: 1.25 !important;
}
.player-page .tab-panel .bio,
.player-page .tab-panel p {
  color: #405166;
  font-size: .88rem;
  line-height: 1.7;
}

/* Graphical statistics overview. */
.player-stats-dashboard {
  margin: 0 0 1rem !important;
  padding: clamp(.9rem,2vw,1.15rem) !important;
  border: 1px solid var(--player-border) !important;
  border-radius: .95rem !important;
  background: linear-gradient(145deg,#f8fafd,#edf3fa) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.85);
}
.player-stats-dashboard__header {
  display: flex !important;
  align-items: flex-end !important;
  justify-content: space-between !important;
  gap: 1rem !important;
  margin-bottom: .8rem !important;
}
.player-stats-dashboard__header span {
  display: block;
  margin-bottom: .15rem;
  color: var(--player-blue);
  font-size: .62rem;
  font-weight: 900;
  letter-spacing: .09em;
  text-transform: uppercase;
}
.player-stats-dashboard__header h3 { margin: 0 !important; font-size: clamp(1.18rem,2.3vw,1.55rem) !important; }
.player-stats-dashboard__header p {
  max-width: 23rem;
  margin: 0 !important;
  color: var(--player-muted) !important;
  font-size: .7rem !important;
  line-height: 1.4 !important;
  text-align: right;
}
.player-stats-kpis {
  display: grid !important;
  grid-template-columns: repeat(4,minmax(0,1fr)) !important;
  gap: .6rem !important;
}
.player-stats-kpis article {
  position: relative;
  min-width: 0;
  padding: .75rem .82rem !important;
  overflow: hidden;
  border: 1px solid rgba(18,54,96,.12) !important;
  border-radius: .8rem !important;
  background: rgba(255,255,255,.95) !important;
  box-shadow: 0 .3rem .85rem rgba(16,36,59,.04);
}
.player-stats-kpis article:after {
  position: absolute;
  right: -.8rem;
  bottom: -.9rem;
  width: 3.2rem;
  height: 3.2rem;
  border: .65rem solid rgba(29,66,137,.055);
  border-radius: 50%;
  content: "";
}
.player-stats-kpis span {
  display: block;
  color: var(--player-muted);
  font-size: .6rem;
  font-weight: 850;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.player-stats-kpis strong {
  position: relative;
  z-index: 1;
  display: block;
  margin-top: .15rem;
  color: var(--player-ink);
  font-size: clamp(1.45rem,2.5vw,2rem);
  line-height: 1;
}
.player-stats-kpis small {
  position: relative;
  z-index: 1;
  display: block;
  margin-top: .22rem;
  color: var(--player-muted);
  font-size: .63rem;
  line-height: 1.3;
}
.player-stats-distribution {
  display: grid !important;
  grid-template-columns: minmax(10rem,.55fr) minmax(0,1.45fr) !important;
  gap: .9rem !important;
  margin-top: .8rem !important;
  padding-top: .8rem !important;
  border-top: 1px solid rgba(18,54,96,.1) !important;
}
.player-stats-distribution__title strong { display: block; color: var(--player-ink); font-size: .86rem; }
.player-stats-distribution__title span { display: block; margin-top: .18rem; color: var(--player-muted); font-size: .66rem; line-height: 1.4; }
.player-stats-bars { display: grid !important; gap: .42rem !important; }
.player-stats-bar__label {
  display: flex !important;
  align-items: baseline !important;
  justify-content: space-between !important;
  gap: .7rem !important;
  margin-bottom: .16rem !important;
  color: #405166;
  font-size: .67rem;
}
.player-stats-bar__label strong { color: var(--player-ink); font-size: .7rem; }
.player-stats-bar__label small { color: var(--player-muted); font-size: .6rem; }
.player-stats-bar__track { height: .5rem; overflow: hidden; border-radius: 999px; background: #dce6f2; }
.player-stats-bar__track span {
  display: block;
  width: var(--player-stat-width);
  height: 100%;
  min-width: .25rem;
  border-radius: inherit;
  background: linear-gradient(90deg,var(--player-blue),#6c91ca);
}

/* Detailed statistics are rebuilt into clean cards by player-modern.js. */
.player-stats-detail-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: .85rem;
  align-items: start;
}
.player-stat-detail {
  min-width: 0;
  padding: .9rem;
  border: 1px solid var(--player-border);
  border-radius: .9rem;
  background: #fff;
  box-shadow: 0 .3rem 1rem rgba(16,36,59,.04);
}
.player-stat-detail--wide { grid-column: 1/-1; }
.player-stat-detail h3 { margin: 0 0 .6rem !important; padding: 0 !important; }

.player-page .player-table-scroll {
  width: 100%;
  max-height: none !important;
  margin: 0 !important;
  overflow-x: visible !important;
  overflow-y: visible !important;
  border: 1px solid var(--player-border);
  border-radius: .72rem;
  background: #fff;
  box-shadow: none !important;
}
.player-page .player-table-scroll table { margin: 0 !important; border: 0 !important; }
.player-page table.tg {
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  border-collapse: collapse !important;
  background: #fff !important;
  color: #405166 !important;
  font-size: .72rem !important;
  table-layout: auto;
}
.player-page table.tg th {
  padding: .58rem .62rem !important;
  border-bottom: 1px solid var(--player-border) !important;
  background: #edf3fa !important;
  color: var(--player-ink) !important;
  font-size: .6rem !important;
  font-weight: 900 !important;
  letter-spacing: .035em !important;
  line-height: 1.25 !important;
  text-transform: uppercase !important;
  white-space: normal !important;
}
.player-page table.tg td {
  padding: .55rem .62rem !important;
  border-bottom: 1px solid rgba(18,54,96,.09) !important;
  background: #fff !important;
  color: #405166 !important;
  line-height: 1.35 !important;
  vertical-align: middle !important;
}
.player-page table.tg tr:last-child td { border-bottom: 0 !important; }
.player-page table.tg tr:hover td { background: #f7f9fc !important; }
.player-page table.tg a { color: var(--player-blue) !important; font-weight: 750; }

.player-page #statistik > p { margin: 0 !important; }
.player-page #statistik .row,
.player-page #statistik .column,
.player-page #statistik .leftx,
.player-page #statistik .rightx {
  display: block !important;
  float: none !important;
  width: auto !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
}

.player-page #matcher .player-table-scroll {
  margin-top: .7rem !important;
  overflow-x: visible !important;
}
.player-page #matcher table.tg { font-size: .74rem !important; }

/* Photos are a real, isolated panel. */
.player-page #bilder {
  grid-template-columns: repeat(auto-fill,minmax(11rem,1fr));
  gap: .75rem;
}
.player-page #bilder a {
  display: block;
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--player-border);
  border-radius: .8rem;
  background: #edf2f8;
  box-shadow: 0 .35rem 1rem rgba(16,36,59,.05);
}
.player-page #bilder img.borderz,
.player-page #bilder img.borderz2 {
  display: block !important;
  width: 100% !important;
  height: 10rem !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  object-fit: cover !important;
}
.player-page #bilder .player-gallery-empty {
  grid-column: 1/-1;
  padding: 1rem;
  border: 1px dashed var(--player-border);
  border-radius: .8rem;
  color: var(--player-muted);
  text-align: center;
}

@media (max-width: 68rem) {
  .player-profile { grid-template-columns: minmax(13rem,34%) minmax(0,1fr); min-height: 18rem; }
  .player-profile__media { min-height: 18rem; }
  .player-profile #inners.is-enhanced { grid-template-columns: minmax(0,1fr) !important; }
  .player-stats-detail-grid { grid-template-columns: minmax(0,1fr); }
  .player-stat-detail--wide { grid-column: auto; }
}

@media (max-width: 47.99rem) {
  .player-profile {
    grid-template-columns: 8.5rem minmax(0,1fr);
    min-height: 0;
    align-items: stretch;
  }
  .player-profile__media { min-height: 13.5rem; border-right: 1px solid var(--player-border); }
  .player-profile__content { padding: .9rem; }
  .player-profile #sidbanner h2 { font-size: clamp(1.45rem,7vw,2rem) !important; }
  .player-profile #sidbanner > p { margin-top: .38rem !important; font-size: .76rem !important; }
  .player-profile #sidbanner .big b { font-size: .95rem !important; }
  .player-profile #outer { margin-top: .55rem !important; }
  .player-profile #inners { display: none !important; }
  .player-profile__media .prev,
  .player-profile__media .next { width: 2rem !important; height: 2rem !important; }

  .player-page .tabset {
    flex-wrap: nowrap;
    padding-bottom: .2rem;
    overflow-x: auto;
    scrollbar-width: none;
  }
  .player-page .tabset::-webkit-scrollbar { display: none; }
  .player-page .tabset > label { flex: 0 0 auto; }
  .player-stats-dashboard__header { align-items: flex-start !important; flex-direction: column !important; gap: .2rem !important; }
  .player-stats-dashboard__header p { text-align: left; }
  .player-stats-kpis { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  .player-stats-distribution { grid-template-columns: minmax(0,1fr) !important; gap: .6rem !important; }

  .player-page .player-table-scroll,
  .player-page #matcher .player-table-scroll {
    overflow-x: auto !important;
    overflow-y: visible !important;
    -webkit-overflow-scrolling: touch;
  }
  .player-page table.tg { min-width: 36rem !important; font-size: .68rem !important; }
  .player-page #bilder { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .player-page #bilder img.borderz,
  .player-page #bilder img.borderz2 { height: 8rem !important; }
}

@media (max-width: 30rem) {
  .player-profile { grid-template-columns: 7rem minmax(0,1fr); }
  .player-profile__media { min-height: 12rem; }
  .player-profile #sidbanner h2 { font-size: 1.35rem !important; }
  .player-profile #sidbanner .big { font-size: .72rem; }
  .player-stats-kpis,
  .player-page #bilder { grid-template-columns: minmax(0,1fr) !important; }
}

@media (prefers-reduced-motion: reduce) {
  .player-page * { scroll-behavior: auto !important; }
}

/* IFKDB player profile v7 — aligned with the current match/season design system. */
.player-page {
  --player-blue: #1d4289;
  --player-blue-dark: #16356f;
  --player-blue-deep: #102d61;
  --player-ink: #10243b;
  --player-muted: #647287;
  --player-border: rgba(18,54,96,.14);
  --player-soft: #f3f6fa;
  background: linear-gradient(180deg,#f4f7fb 0,#fff 35rem) !important;
}

.player-page #main.wrapper {
  padding: clamp(.8rem,2vw,1.35rem) 0 3rem !important;
}

.player-page #main > .inner {
  max-width: 84rem !important;
  padding-inline: clamp(1rem,3vw,2rem) !important;
}

.player-profile {
  position: relative;
  grid-template-columns: minmax(15rem,30%) minmax(0,1fr) !important;
  min-height: 22rem !important;
  overflow: hidden;
  border: 0 !important;
  border-radius: 1.3rem !important;
  background: var(--player-blue) !important;
  box-shadow: 0 1.2rem 3.2rem rgba(29,66,137,.25) !important;
  color: #fff !important;
  isolation: isolate;
}

.player-profile::before {
  position: absolute;
  inset: 0;
  z-index: 0;
  background: linear-gradient(115deg,#1d4289,#102d61);
  content: "";
  pointer-events: none;
}

.player-profile__media,
.player-profile__content {
  position: relative;
  z-index: 1;
}

.player-profile__media {
  min-height: 22rem !important;
  border-right: 1px solid rgba(255,255,255,.12) !important;
  background: #102d61 !important;
}

.player-profile__media::after {
  position: absolute;
  inset: 0;
  z-index: 5;
  background: linear-gradient(90deg,transparent 55%,rgba(16,45,97,.2) 78%,rgba(16,45,97,.68) 100%);
  content: "";
  pointer-events: none;
}

.player-profile__media .prev,
.player-profile__media .next,
.player-profile__media > div[style*="text-align:center"],
.player-profile__media .imagetext {
  z-index: 7 !important;
}

.player-profile__content {
  justify-content: center !important;
  padding: clamp(1.35rem,3.2vw,2.35rem) !important;
  background:
    radial-gradient(circle at 100% 0,rgba(255,255,255,.11),transparent 18rem),
    linear-gradient(135deg,rgba(255,255,255,.045),transparent 48%),
    transparent !important;
  color: #fff !important;
}

.player-profile__content::after {
  position: absolute !important;
  right: -5rem;
  bottom: -8rem;
  display: block !important;
  width: 23rem;
  height: 23rem;
  border: 1px solid rgba(255,255,255,.07);
  border-radius: 50%;
  content: "";
  pointer-events: none;
}

.player-profile__topline {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: clamp(1.15rem,2.5vw,1.8rem);
  color: rgba(255,255,255,.7);
  font-size: .68rem;
  font-weight: 850;
  letter-spacing: .055em;
  text-transform: uppercase;
}

.player-profile__topline a {
  color: #fff !important;
  text-decoration: none !important;
}

.player-profile__topline a::before {
  margin-right: .35rem;
  content: "‹";
}

.player-profile #sidbanner {
  position: relative;
  z-index: 2;
  color: #fff !important;
}

.player-profile #sidbanner h2 {
  max-width: 52rem;
  color: #fff !important;
  font-size: clamp(2rem,4.4vw,3.65rem) !important;
  letter-spacing: -.04em !important;
  line-height: .98 !important;
  text-shadow: none !important;
}

.player-profile #sidbanner h2 a,
.player-profile #sidbanner > p a {
  color: #fff !important;
  text-decoration-color: rgba(255,255,255,.46) !important;
  text-underline-offset: .14rem;
}

.player-profile #sidbanner > p,
.player-profile #sidbanner > p span,
.player-profile #sidbanner > p font,
.player-profile #sidbanner .big,
.player-profile #sidbanner .big span {
  color: rgba(255,255,255,.82) !important;
  text-shadow: none !important;
}

.player-profile #sidbanner > p {
  max-width: 52rem;
  margin-top: .72rem !important;
  font-size: .86rem !important;
  line-height: 1.55 !important;
}

.player-profile #sidbanner .big {
  display: block !important;
  margin-top: .35rem;
  color: rgba(255,255,255,.72) !important;
  font-size: .78rem !important;
}

.player-profile #sidbanner .big b {
  color: #fff !important;
  font-size: 1.05rem !important;
}

.player-page #outer.player-profile-details {
  width: 100% !important;
  margin: .85rem 0 0 !important;
  padding: 0 !important;
}

.player-page #inners {
  width: 100% !important;
  max-height: none !important;
  margin: 0 !important;
  padding: .9rem 1rem !important;
  overflow: visible !important;
  border: 1px solid var(--player-border) !important;
  border-radius: .95rem !important;
  background: rgba(255,255,255,.98) !important;
  color: #405166 !important;
  font-size: .72rem !important;
  line-height: 1.5 !important;
  text-align: left !important;
  box-shadow: 0 .45rem 1.4rem rgba(16,36,59,.045) !important;
}

.player-page #inners.is-enhanced {
  display: grid !important;
  grid-template-columns: repeat(3,minmax(0,1fr)) !important;
  gap: .36rem 1rem !important;
}

.player-page #inners .player-profile__fact {
  min-width: 0;
  padding: .2rem 0;
  overflow-wrap: anywhere;
}

.player-page #inners i {
  width: 1.15rem;
  color: var(--player-blue) !important;
  text-align: center;
}

.player-page #inners a {
  color: var(--player-blue) !important;
}

.player-page .alert-box.warning,
.player-page .namne {
  width: 100% !important;
  margin: .75rem 0 0 !important;
  border-radius: .8rem !important;
  text-align: left !important;
}

.player-content {
  margin-top: .9rem !important;
  padding: 0 !important;
  overflow: hidden;
  border: 1px solid var(--player-border) !important;
  border-radius: 1.05rem !important;
  background: rgba(255,255,255,.99) !important;
  box-shadow: 0 .7rem 2rem rgba(16,36,59,.065) !important;
}

.player-page .tabset {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: .35rem !important;
  padding: .62rem !important;
  background: #f4f7fb !important;
  border-bottom: 1px solid var(--player-border) !important;
}

.player-page .tabset > label {
  min-height: 2.45rem !important;
  padding: .5rem .72rem !important;
  border-radius: .65rem !important;
  background: transparent !important;
  color: #5c6b7f !important;
  font-size: .72rem !important;
}

.player-page .tabset > label:hover {
  background: #e8eff8 !important;
}

.player-page .tabset > input:checked + label {
  border-color: rgba(29,66,137,.14) !important;
  background: #e5edf8 !important;
  color: var(--player-blue) !important;
  box-shadow: inset 0 0 0 1px rgba(29,66,137,.035);
}

.player-page .tab-panels {
  flex: 1 0 100%;
  width: 100%;
  margin-top: 0 !important;
  padding: 0 clamp(.85rem,2.2vw,1.25rem) clamp(.9rem,2.2vw,1.25rem);
}

.player-page .tab-panel {
  padding-top: clamp(.9rem,2vw,1.2rem) !important;
  border-top: 0 !important;
}

.player-page .tab-panel h3 {
  font-size: clamp(1.2rem,2.4vw,1.6rem) !important;
}

.player-page .tab-panel .bio,
.player-page .tab-panel p {
  font-size: .86rem !important;
  line-height: 1.72 !important;
}

.player-stats-dashboard {
  margin: 0 0 1.05rem !important;
  background: linear-gradient(145deg,#f8fafd,#edf3fa) !important;
}

.player-page article {
  -webkit-columns: auto !important;
  -moz-columns: auto !important;
  columns: auto !important;
  column-count: auto !important;
  column-width: auto !important;
  column-gap: normal !important;
}

.player-stats-kpis article {
  display: block !important;
  width: auto !important;
}

.player-stat-detail,
.player-page #artikel,
.player-page #externa-nyheter {
  columns: auto !important;
  column-count: auto !important;
  column-width: auto !important;
}

.player-page .responsiveimg {
  display: block;
  max-width: 100% !important;
  margin: .8rem auto !important;
  border-radius: .8rem;
}

@media (max-width: 68rem) {
  .player-profile {
    grid-template-columns: minmax(13rem,34%) minmax(0,1fr) !important;
    min-height: 20rem !important;
  }
  .player-profile__media { min-height: 20rem !important; }
  .player-page #inners.is-enhanced { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
}

@media (max-width: 47.99rem) {
  .player-page #main > .inner { padding-inline: .75rem !important; }

  .player-profile {
    grid-template-columns: 8.75rem minmax(0,1fr) !important;
    min-height: 14.25rem !important;
    border-radius: 1.05rem !important;
  }

  .player-profile__media {
    min-height: 14.25rem !important;
  }

  .player-profile__media::after {
    background: linear-gradient(90deg,transparent 45%,rgba(16,45,97,.6) 100%);
  }

  .player-profile__content {
    padding: .9rem !important;
  }

  .player-profile__topline {
    margin-bottom: .7rem;
    font-size: .55rem;
  }

  .player-profile__topline span { display: none; }

  .player-profile #sidbanner h2 {
    font-size: clamp(1.45rem,7vw,2rem) !important;
  }

  .player-profile #sidbanner > p {
    margin-top: .38rem !important;
    font-size: .7rem !important;
    line-height: 1.42 !important;
  }

  .player-profile #sidbanner .big {
    font-size: .64rem !important;
    line-height: 1.4 !important;
  }

  .player-profile #sidbanner .big b { font-size: .82rem !important; }

  .player-page #inners.is-enhanced {
    grid-template-columns: minmax(0,1fr) !important;
  }

  .player-page .tabset {
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    padding: .5rem !important;
    scrollbar-width: none;
  }
  .player-page .tabset::-webkit-scrollbar { display: none; }
  .player-page .tabset > label { flex: 0 0 auto !important; }

  .player-stats-kpis {
    grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  }

  .player-page .player-table-scroll,
  .player-page #matcher .player-table-scroll {
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch;
  }
}

@media (max-width: 30rem) {
  .player-profile {
    grid-template-columns: 7.15rem minmax(0,1fr) !important;
    min-height: 12.5rem !important;
  }
  .player-profile__media { min-height: 12.5rem !important; }
  .player-profile #sidbanner h2 { font-size: 1.32rem !important; }
  .player-profile #sidbanner > p { font-size: .65rem !important; }
  .player-stats-kpis { grid-template-columns: minmax(0,1fr) !important; }
}

/* =========================================================
   Player modern v8: shared page system
   ========================================================= */

.player-page {
  --player-blue: #1d4289;
  --player-blue-dark: #17386f;
  --player-blue-deep: #0d2a58;
  --player-ink: #10243b;
  --player-muted: #5e6e82;
  --player-faint: #8491a1;
  --player-border: rgba(18, 54, 96, .13);
  --player-border-strong: rgba(18, 54, 96, .2);
  --player-surface: #fff;
  --player-surface-soft: #f5f7fa;
  --player-surface-muted: #edf2f7;
  --player-shadow: 0 .75rem 2rem rgba(16, 36, 59, .07);
  font-size: 16px !important;
  background:
    radial-gradient(circle at 50% -12rem, rgba(29, 66, 137, .08), transparent 36rem),
    linear-gradient(180deg, #f4f7fb 0, #fff 42rem) !important;
}

.player-page article,
.player-page article > div,
.player-page .tab-panel,
.player-page .tab-panel > div {
  columns: auto !important;
  column-count: 1 !important;
}

.player-page #main.wrapper {
  margin: 0 !important;
  padding: clamp(.8rem, 2vw, 1.35rem) 0 3rem !important;
  overflow-x: hidden !important;
}

.player-page #main > .inner {
  width: 100% !important;
  max-width: 84rem !important;
  min-width: 0 !important;
  margin: 0 auto !important;
  padding-inline: clamp(1rem, 3vw, 2rem) !important;
}

/* Navigation follows the same dimensions and alignment as the season navigation. */
.player-modern-navigation {
  position: relative !important;
  display: grid !important;
  width: 100% !important;
  min-height: 3.7rem !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  align-items: center !important;
  margin: 0 0 .85rem !important;
  padding: .45rem !important;
  border: 1px solid rgba(18, 54, 96, .10) !important;
  border-radius: 1rem !important;
  background: #fff !important;
  box-shadow: 0 .25rem .8rem rgba(16, 36, 59, .045) !important;
  gap: .55rem !important;
}

.player-modern-navigation__players {
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  z-index: 2 !important;
  display: flex !important;
  width: max-content !important;
  max-width: calc(100% - 18rem) !important;
  min-width: 0 !important;
  align-items: center !important;
  justify-content: center !important;
  gap: .4rem !important;
  transform: translate(-50%, -50%) !important;
}

.player-page .player-modern-navigation__button {
  appearance: none !important;
  display: inline-flex !important;
  min-width: 0 !important;
  min-height: 2.7rem !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  padding: .58rem .78rem !important;
  border: 1px solid transparent !important;
  border-radius: .72rem !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #27476d !important;
  font: inherit !important;
  font-size: .72rem !important;
  font-weight: 850 !important;
  letter-spacing: 0 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  text-transform: none !important;
  white-space: nowrap !important;
  gap: .38rem !important;
  transition: background .18s ease, border-color .18s ease, box-shadow .18s ease, color .18s ease !important;
}

.player-page .player-modern-navigation__button strong {
  color: inherit !important;
  font: inherit !important;
  font-weight: 900 !important;
  line-height: 1 !important;
}

.player-page .player-modern-navigation__button > span {
  display: inline !important;
  min-width: 0 !important;
  height: auto !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: inherit !important;
  font: inherit !important;
  line-height: 1 !important;
}

.player-page .player-modern-navigation__button--all {
  border-color: rgba(18, 54, 96, .09) !important;
  background: #f7f9fc !important;
}

.player-page .player-modern-navigation__button--all > span {
  color: var(--player-muted) !important;
  font-size: .64rem !important;
  font-weight: 800 !important;
}

.player-page .player-modern-navigation__button.is-disabled {
  color: #a6b1bf !important;
  cursor: default !important;
  pointer-events: none !important;
}

.player-page .player-modern-navigation__button:focus-visible {
  outline: 3px solid rgba(29, 66, 137, .3) !important;
  outline-offset: 2px !important;
}

@media (hover: hover) and (pointer: fine) {
  .player-page a.player-modern-navigation__button:hover {
    border-color: rgba(29, 66, 137, .22) !important;
    background: #edf3fb !important;
    color: var(--player-blue-dark) !important;
    box-shadow: 0 .2rem .6rem rgba(16, 36, 59, .07) !important;
  }

  .player-page a.player-modern-navigation__button--all:hover {
    background: #e2ebf7 !important;
  }
}

/* Hero uses the shared dark-blue page model. */
.player-modern-hero {
  position: relative !important;
  overflow: hidden !important;
  border-radius: 1.3rem !important;
  background: var(--player-blue) !important;
  box-shadow: 0 1.2rem 3.2rem rgba(29, 66, 137, .25) !important;
  color: #fff !important;
  isolation: isolate !important;
  text-align: left !important;
}

.player-modern-hero::before {
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
  background: linear-gradient(115deg, #1d4289, #102d61) !important;
  content: "" !important;
}

.player-modern-hero__background {
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  object-fit: cover !important;
  object-position: center 34% !important;
  pointer-events: none !important;
}

.player-modern-hero.has-image::after {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  background: linear-gradient(90deg, rgba(15, 42, 90, .96) 0%, rgba(15, 42, 90, .83) 44%, rgba(15, 42, 90, .62) 100%) !important;
  content: "" !important;
  pointer-events: none !important;
}

.player-modern-hero__top,
.player-modern-hero-summary,
.player-modern-hero__facts {
  position: relative !important;
  z-index: 2 !important;
}

.player-modern-hero__top {
  display: flex !important;
  min-height: 3.1rem !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 1rem !important;
  padding: .72rem 1rem !important;
  border-bottom: 1px solid rgba(255, 255, 255, .14) !important;
}

.player-modern-hero__meta {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: .3rem .75rem !important;
  color: rgba(255, 255, 255, .78) !important;
  font-size: .858rem !important;
  font-weight: 750 !important;
}

.player-modern-hero__meta strong {
  color: #fff !important;
}

.player-modern-hero-summary {
  display: grid !important;
  min-height: 12.5rem !important;
  grid-template-columns: minmax(0, 1fr) minmax(14rem, .9fr) minmax(0, 1fr) !important;
  align-items: center !important;
  gap: clamp(1.2rem, 4vw, 3.6rem) !important;
  padding: clamp(1.5rem, 3.4vw, 2.8rem) clamp(1.2rem, 4vw, 3.2rem) !important;
}

.player-modern-hero-summary__portrait {
  display: grid !important;
  min-width: 0 !important;
  grid-template-columns: auto minmax(0, 1fr) !important;
  align-items: center !important;
  gap: clamp(.8rem, 2vw, 1.25rem) !important;
}

.player-modern-hero-summary__portrait > .player-modern-hero-summary__label {
  grid-column: 2 !important;
  align-self: end !important;
}

.player-modern-hero-summary__portrait > small {
  grid-column: 2 !important;
  align-self: start !important;
}

.player-modern-hero-portrait {
  grid-row: 1 / span 2 !important;
  display: grid !important;
  width: clamp(5.6rem, 8.6vw, 7.6rem) !important;
  height: clamp(6.5rem, 9.8vw, 8.8rem) !important;
  place-items: center !important;
  overflow: hidden !important;
  border: 1px solid rgba(255, 255, 255, .25) !important;
  border-radius: 1rem !important;
  background: rgba(255, 255, 255, .08) !important;
  box-shadow: 0 .65rem 1.6rem rgba(3, 16, 36, .25) !important;
}

.player-modern-hero-portrait img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: cover !important;
  object-position: center 14% !important;
}

.player-modern-hero-summary__identity,
.player-modern-hero-summary__career {
  min-width: 0 !important;
}

.player-modern-hero-summary__identity {
  text-align: center !important;
}

.player-modern-hero-summary__career {
  text-align: right !important;
}

.player-modern-hero-summary__label {
  display: block !important;
  color: rgba(255, 255, 255, .64) !important;
  font-size: .72rem !important;
  font-weight: 900 !important;
  letter-spacing: .075em !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
}

.player-modern-hero-summary__identity h1 {
  margin: .18rem 0 0 !important;
  color: #fff !important;
  font-family: "Francois One", "Arial Narrow", sans-serif !important;
  font-size: clamp(2.75rem, 6.2vw, 5.5rem) !important;
  font-weight: 400 !important;
  letter-spacing: .01em !important;
  line-height: .92 !important;
  overflow-wrap: anywhere !important;
  text-align: center !important;
  text-shadow: none !important;
}

.player-modern-hero-summary__career strong {
  display: block !important;
  margin-top: .28rem !important;
  color: #fff !important;
  font-family: "Francois One", "Arial Narrow", sans-serif !important;
  font-size: clamp(2rem, 4.7vw, 4rem) !important;
  font-weight: 400 !important;
  letter-spacing: .01em !important;
  line-height: .96 !important;
}

.player-modern-hero-summary__portrait small,
.player-modern-hero-summary__identity small,
.player-modern-hero-summary__career small {
  display: block !important;
  margin-top: .45rem !important;
  color: rgba(255, 255, 255, .78) !important;
  font-size: .86rem !important;
  font-weight: 850 !important;
  line-height: 1.25 !important;
}

.player-modern-hero__facts {
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  border-top: 1px solid rgba(255, 255, 255, .14) !important;
  background: rgba(4, 23, 54, .42) !important;
}

.player-modern-hero__fact {
  display: grid !important;
  min-width: 0 !important;
  min-height: 4.35rem !important;
  align-content: center !important;
  padding: .72rem .95rem !important;
  border-left: 1px solid rgba(255, 255, 255, .1) !important;
}

.player-modern-hero__fact:first-child {
  border-left: 0 !important;
}

.player-modern-hero__fact span {
  display: block !important;
  color: rgba(255, 255, 255, .6) !important;
  font-size: .726rem !important;
  font-weight: 850 !important;
  letter-spacing: .08em !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
}

.player-modern-hero__fact strong {
  display: block !important;
  margin-top: .28rem !important;
  color: #fff !important;
  font-size: .94rem !important;
  font-weight: 850 !important;
  line-height: 1.24 !important;
}

/* Secondary profile facts remain separate from the hero. */
.player-page .player-profile-details {
  width: 100% !important;
  margin: 1rem 0 0 !important;
  padding: 0 !important;
  border: 1px solid var(--player-border) !important;
  border-radius: 1rem !important;
  background: #fff !important;
  box-shadow: var(--player-shadow) !important;
  text-align: left !important;
}

.player-page .player-profile-details #inners {
  display: grid !important;
  width: 100% !important;
  max-height: none !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  align-content: start !important;
  gap: .45rem 1rem !important;
  margin: 0 !important;
  padding: .85rem 1rem !important;
  overflow: visible !important;
  border: 0 !important;
  border-radius: inherit !important;
  background: transparent !important;
  color: #405166 !important;
  font-size: .74rem !important;
  line-height: 1.45 !important;
  text-align: left !important;
  box-shadow: none !important;
}

.player-page .player-profile-details #inners .player-profile__fact {
  min-width: 0 !important;
  padding: .2rem 0 !important;
  overflow-wrap: anywhere !important;
}

.player-page .player-profile-details #inners i {
  width: 1.15rem !important;
  color: var(--player-blue) !important;
  text-align: center !important;
}

/* Tabs use the same page-card pattern as season pages. */
.player-page .player-content {
  margin-top: 1rem !important;
  padding: 0 !important;
  overflow: visible !important;
  border: 1px solid var(--player-border) !important;
  border-radius: 1rem !important;
  background: var(--player-surface) !important;
  box-shadow: var(--player-shadow) !important;
  text-align: left !important;
}

.player-modern-tabs {
  position: relative !important;
  z-index: 3 !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: .25rem !important;
  margin: 0 !important;
  padding: .42rem .5rem !important;
  border: 0 !important;
  border-bottom: 1px solid var(--player-border) !important;
  border-radius: 1rem 1rem 0 0 !important;
  background: #eef2f7 !important;
  box-shadow: none !important;
}

.player-page .player-modern-tabs button {
  appearance: none !important;
  display: inline-flex !important;
  width: auto !important;
  min-width: 0 !important;
  min-height: 2.4rem !important;
  flex: 0 0 auto !important;
  align-items: center !important;
  gap: .42rem !important;
  margin: 0 !important;
  padding: .46rem .72rem !important;
  border: 0 !important;
  border-radius: .62rem !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #52647a !important;
  font: inherit !important;
  font-size: .858rem !important;
  font-weight: 850 !important;
  letter-spacing: 0 !important;
  line-height: 1 !important;
  text-transform: none !important;
  cursor: pointer !important;
}

.player-page .player-modern-tabs button[aria-selected="true"] {
  background: #fff !important;
  color: var(--player-blue) !important;
  box-shadow: 0 .22rem .62rem rgba(16, 36, 59, .12) !important;
}

.player-page .player-modern-tabs button:focus-visible {
  outline: 3px solid rgba(29, 66, 137, .24) !important;
  outline-offset: 1px !important;
}

.player-modern-tab-count {
  display: inline-grid !important;
  min-width: 1.35rem !important;
  height: 1.35rem !important;
  place-items: center !important;
  padding-inline: .28rem !important;
  border-radius: 999px !important;
  background: rgba(29, 66, 137, .09) !important;
  color: #526a88 !important;
  font-size: .682rem !important;
  font-weight: 900 !important;
}

.player-modern-tabs button[aria-selected="true"] .player-modern-tab-count {
  background: #e9f0fa !important;
  color: var(--player-blue) !important;
}

.player-page .tab-panels {
  min-width: 0 !important;
  margin: 0 !important;
  padding: clamp(1rem, 2.4vw, 1.55rem) !important;
}

.player-page .tab-panels > .tab-panel {
  display: block !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #405166 !important;
  text-align: left !important;
}

.player-page .tab-panels > .tab-panel[hidden] {
  display: none !important;
}

.player-modern-noscript-note,
.player-modern-empty {
  margin: 0 !important;
  padding: 1rem !important;
  border: 1px solid var(--player-border) !important;
  border-radius: .8rem !important;
  background: var(--player-surface-soft) !important;
  color: var(--player-muted) !important;
}

.player-modern-eyebrow {
  margin: 0 0 .3rem !important;
  color: var(--player-blue) !important;
  font-size: .726rem !important;
  font-weight: 900 !important;
  letter-spacing: .1em !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
}

.player-section-head {
  display: flex !important;
  align-items: flex-end !important;
  justify-content: space-between !important;
  gap: 1rem !important;
  margin-bottom: 1rem !important;
}

.player-section-head h2 {
  margin: 0 !important;
  color: var(--player-ink) !important;
  font-size: clamp(1.25rem, 3vw, 1.8rem) !important;
  font-weight: 900 !important;
  line-height: 1.15 !important;
  text-align: left !important;
}

.player-section-head > div > p:last-child {
  max-width: 40rem !important;
  margin: .35rem 0 0 !important;
  color: var(--player-muted) !important;
  font-size: .814rem !important;
  line-height: 1.45 !important;
}

.player-section-head__meta {
  margin: 0 !important;
  color: var(--player-muted) !important;
  font-size: .78rem !important;
  text-align: right !important;
  white-space: nowrap !important;
}

.player-section-head__meta strong {
  color: var(--player-ink) !important;
  font-size: 1rem !important;
}

/* Biography portrait archive. */
.player-more-portraits {
  margin: 0 0 1.2rem !important;
  padding: 1rem !important;
  border: 1px solid var(--player-border) !important;
  border-radius: .9rem !important;
  background: linear-gradient(180deg, #f5f7fa, #fff) !important;
}

.player-more-portraits header p {
  margin: 0 0 .2rem !important;
  color: var(--player-blue) !important;
  font-size: .7rem !important;
  font-weight: 900 !important;
  letter-spacing: .09em !important;
  text-transform: uppercase !important;
}

.player-more-portraits header h3 {
  margin: 0 0 .8rem !important;
  color: var(--player-ink) !important;
  font-size: 1.15rem !important;
}

.player-more-portraits__grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(8rem, 10rem)) !important;
  gap: .65rem !important;
}

.player-page .player-more-portraits__item {
  appearance: none !important;
  width: 100% !important;
  aspect-ratio: 4 / 5 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 1px solid var(--player-border) !important;
  border-radius: .72rem !important;
  background: #e9eef4 !important;
  box-shadow: none !important;
  cursor: zoom-in !important;
}

.player-more-portraits__item img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  object-fit: cover !important;
  object-position: center 12% !important;
  transition: transform .18s ease !important;
}

.player-more-portraits__item:hover img,
.player-more-portraits__item:focus-visible img {
  transform: scale(1.035) !important;
}

/* Autographs are presented on a white paper surface. */
.player-autograph {
  display: grid !important;
  margin: 1.35rem 0 0 !important;
  padding: 1rem 1rem 0 !important;
  overflow: hidden !important;
  border: 1px solid var(--player-border) !important;
  border-radius: .9rem !important;
  background: linear-gradient(180deg, #f3f6fa 0%, #fbfcfd 34%, #fff 66%, #fff 100%) !important;
  text-align: center !important;
}

.player-autograph > span {
  color: var(--player-blue) !important;
  font-size: .72rem !important;
  font-weight: 900 !important;
  letter-spacing: .09em !important;
  text-transform: uppercase !important;
}

.player-autograph__paper {
  display: grid !important;
  width: min(100%, 34rem) !important;
  min-height: 9rem !important;
  place-items: center !important;
  margin: .65rem auto 0 !important;
  padding: 1rem 1.25rem !important;
  background: #fff !important;
}

.player-autograph__paper img {
  display: block !important;
  width: auto !important;
  height: auto !important;
  max-width: min(100%, 24rem) !important;
  max-height: 9rem !important;
  margin: 0 auto !important;
  object-fit: contain !important;
}

/* Statistics dashboard and charts. */
.player-stats-dashboard {
  margin: 0 0 1.2rem !important;
  padding: 1rem !important;
  border: 1px solid var(--player-border) !important;
  border-radius: .95rem !important;
  background: linear-gradient(180deg, #f7f9fc, #fff) !important;
}

.player-stats-dashboard__header {
  display: flex !important;
  align-items: flex-end !important;
  justify-content: space-between !important;
  gap: 1rem !important;
  margin-bottom: .85rem !important;
}

.player-stats-dashboard__header span {
  color: var(--player-blue) !important;
  font-size: .7rem !important;
  font-weight: 900 !important;
  letter-spacing: .09em !important;
  text-transform: uppercase !important;
}

.player-stats-dashboard__header h3 {
  margin: .15rem 0 0 !important;
  color: var(--player-ink) !important;
  font-size: 1.35rem !important;
}

.player-stats-dashboard__header p {
  max-width: 31rem !important;
  margin: 0 !important;
  color: var(--player-muted) !important;
  font-size: .78rem !important;
  text-align: right !important;
}

.player-stats-kpis {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: .65rem !important;
}

.player-stats-kpis article {
  min-width: 0 !important;
  padding: .8rem !important;
  border: 1px solid var(--player-border) !important;
  border-radius: .75rem !important;
  background: #fff !important;
}

.player-stats-kpis article span,
.player-stats-kpis article small {
  display: block !important;
  color: var(--player-muted) !important;
}

.player-stats-kpis article span {
  font-size: .66rem !important;
  font-weight: 900 !important;
  letter-spacing: .07em !important;
  text-transform: uppercase !important;
}

.player-stats-kpis article strong {
  display: block !important;
  margin-top: .16rem !important;
  color: var(--player-ink) !important;
  font-family: "Francois One", "Arial Narrow", sans-serif !important;
  font-size: 1.8rem !important;
  font-weight: 400 !important;
  line-height: 1 !important;
}

.player-stats-kpis article small {
  margin-top: .25rem !important;
  font-size: .67rem !important;
  line-height: 1.35 !important;
}

.player-stats-visuals {
  display: grid !important;
  grid-template-columns: minmax(0, 1.5fr) minmax(16rem, .75fr) !important;
  gap: .75rem !important;
  margin-top: .8rem !important;
}

.player-chart-card {
  min-width: 0 !important;
  padding: .85rem !important;
  border: 1px solid var(--player-border) !important;
  border-radius: .8rem !important;
  background: #fff !important;
}

.player-chart-card header span {
  color: var(--player-blue) !important;
  font-size: .64rem !important;
  font-weight: 900 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}

.player-chart-card header h4 {
  margin: .12rem 0 .75rem !important;
  color: var(--player-ink) !important;
  font-size: .95rem !important;
  line-height: 1.2 !important;
}

.player-chart--seasons {
  min-width: 0 !important;
  overflow-x: auto !important;
  padding-bottom: .2rem !important;
  scrollbar-width: thin !important;
}

.player-season-bars {
  display: flex !important;
  min-width: max-content !important;
  height: 11.5rem !important;
  align-items: end !important;
  gap: .34rem !important;
  padding: .6rem .25rem .2rem !important;
  border-bottom: 1px solid rgba(18, 54, 96, .11) !important;
  background: repeating-linear-gradient(to top, rgba(18, 54, 96, .055) 0, rgba(18, 54, 96, .055) 1px, transparent 1px, transparent 25%) !important;
}

.player-season-bars__item {
  display: grid !important;
  width: 2.45rem !important;
  min-width: 2.45rem !important;
  height: 100% !important;
  grid-template-rows: minmax(0, 1fr) auto !important;
  gap: .28rem !important;
}

.player-season-bars__bars {
  display: flex !important;
  height: 100% !important;
  align-items: end !important;
  justify-content: center !important;
  gap: .14rem !important;
}

.player-season-bars__bar {
  display: block !important;
  width: .62rem !important;
  height: var(--player-bar-height, 0%) !important;
  min-height: 0 !important;
  border-radius: .26rem .26rem .08rem .08rem !important;
}

.player-season-bars__bar--matches {
  background: var(--player-blue) !important;
}

.player-season-bars__bar--goals {
  background: #d8a72f !important;
}

.player-season-bars__label {
  color: var(--player-muted) !important;
  font-size: .58rem !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  text-align: center !important;
  white-space: nowrap !important;
}

.player-chart-legend {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: .7rem !important;
  margin-top: .55rem !important;
  color: var(--player-muted) !important;
  font-size: .66rem !important;
  font-weight: 800 !important;
}

.player-chart-legend span {
  display: inline-flex !important;
  align-items: center !important;
  gap: .28rem !important;
}

.player-chart-key {
  display: inline-block !important;
  width: .58rem !important;
  height: .58rem !important;
  border-radius: .18rem !important;
}

.player-chart-key--matches { background: var(--player-blue) !important; }
.player-chart-key--goals { background: #d8a72f !important; }

.player-competition-bars {
  display: grid !important;
  gap: .62rem !important;
}

.player-competition-bars__heading {
  display: flex !important;
  align-items: baseline !important;
  justify-content: space-between !important;
  gap: .5rem !important;
  color: var(--player-muted) !important;
  font-size: .68rem !important;
  line-height: 1.2 !important;
}

.player-competition-bars__heading span {
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.player-competition-bars__heading strong {
  color: var(--player-ink) !important;
}

.player-competition-bars__track {
  height: .46rem !important;
  margin-top: .22rem !important;
  overflow: hidden !important;
  border-radius: 999px !important;
  background: #e9eef4 !important;
}

.player-competition-bars__bar {
  display: block !important;
  width: var(--player-bar-width, 0%) !important;
  height: 100% !important;
  border-radius: inherit !important;
  background: linear-gradient(90deg, var(--player-blue), #4776b9) !important;
}

.player-chart-empty {
  margin: 0 !important;
  color: var(--player-muted) !important;
  font-size: .75rem !important;
}

.player-stats-detail-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: .85rem !important;
  margin-top: 1rem !important;
}

.player-stat-detail {
  min-width: 0 !important;
  align-self: start !important;
  overflow: hidden !important;
  border: 1px solid var(--player-border) !important;
  border-radius: .85rem !important;
  background: #fff !important;
}

.player-stat-detail--wide {
  grid-column: 1 / -1 !important;
}

.player-stat-detail > h3 {
  margin: 0 !important;
  padding: .78rem .85rem !important;
  border-bottom: 1px solid var(--player-border) !important;
  background: #f7f9fc !important;
  color: var(--player-ink) !important;
  font-size: .95rem !important;
}

.player-table-scroll {
  width: 100% !important;
  min-width: 0 !important;
  overflow-x: auto !important;
  -webkit-overflow-scrolling: touch !important;
}

.player-page #statistik .row,
.player-page #statistik .column,
.player-page #statistik .leftx,
.player-page #statistik .rightx {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  float: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.player-page #statistik table {
  width: 100% !important;
  min-width: 34rem !important;
  margin: 0 !important;
  border: 0 !important;
  border-collapse: collapse !important;
  background: #fff !important;
  color: #31445c !important;
  font-size: .72rem !important;
  line-height: 1.35 !important;
}

.player-page #statistik table th,
.player-page #statistik table td {
  padding: .62rem .7rem !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(18, 54, 96, .09) !important;
  background: transparent !important;
  color: inherit !important;
  text-align: left !important;
  vertical-align: middle !important;
}

.player-page #statistik table th {
  background: #f3f6fa !important;
  color: #52647a !important;
  font-size: .64rem !important;
  font-weight: 900 !important;
  letter-spacing: .04em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

.player-page #statistik table tbody tr:nth-child(even) td {
  background: #fafbfd !important;
}

.player-page #statistik table tbody tr:hover td {
  background: #f1f5fa !important;
}

/* Match list uses the same shared renderer as season pages. */
.player-modern-match-list {
  margin-top: .4rem !important;
}

.player-page .ifk-match-list article,
.player-page .ifk-match-list article > div {
  columns: auto !important;
  column-count: 1 !important;
}

/* Season gallery component adapted to the player page variables. */
.player-page .season-modern-photo-grid.image-search-grid {
  display: grid !important;
  width: 100% !important;
  min-width: 0 !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: .9rem !important;
}

.player-page .season-modern-photo-card.image-search-card {
  display: block !important;
  min-width: 0 !important;
  overflow: hidden !important;
  border: 1px solid var(--player-border) !important;
  border-radius: .9rem !important;
  background: #fff !important;
  box-shadow: 0 .5rem 1.35rem rgba(16, 38, 64, .07) !important;
  transition: transform .18s ease, box-shadow .18s ease !important;
}

.player-page button.image-search-card-button,
.player-page button.image-search-card-button:hover,
.player-page button.image-search-card-button:focus,
.player-page button.image-search-card-button:active {
  appearance: none !important;
  display: flex !important;
  width: 100% !important;
  height: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  aspect-ratio: 4 / 3 !important;
  flex-direction: column !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: inherit !important;
  background: #e8edf3 !important;
  box-shadow: none !important;
  line-height: normal !important;
  transform: none !important;
  cursor: zoom-in !important;
}

.player-page .season-modern-photo-card .image-search-image-wrap {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  overflow: hidden !important;
  background: #e8edf3 !important;
}

.player-page .season-modern-photo-card .image-search-image-wrap img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 100% !important;
  min-height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: cover !important;
  object-position: center 34% !important;
  transform: scale(1.002) !important;
  transition: transform .18s ease !important;
}

.player-page .image-search-zoom {
  position: absolute !important;
  right: .55rem !important;
  bottom: .55rem !important;
  display: inline-flex !important;
  min-height: 1.8rem !important;
  align-items: center !important;
  padding: .3rem .48rem !important;
  border: 1px solid rgba(255, 255, 255, .35) !important;
  border-radius: .45rem !important;
  background: rgba(5, 20, 36, .78) !important;
  color: #fff !important;
  font-size: .66rem !important;
  font-weight: 850 !important;
  opacity: 0 !important;
  transform: translateY(.2rem) !important;
  transition: opacity .16s ease, transform .16s ease !important;
}

.player-page .season-modern-photo-card:hover,
.player-page .season-modern-photo-card:focus-within {
  box-shadow: 0 .75rem 1.8rem rgba(16, 38, 64, .13) !important;
  transform: translateY(-2px) !important;
}

.player-page .season-modern-photo-card:hover .image-search-image-wrap img,
.player-page .season-modern-photo-card:focus-within .image-search-image-wrap img {
  transform: scale(1.035) !important;
}

.player-page .season-modern-photo-card:hover .image-search-zoom,
.player-page .season-modern-photo-card:focus-within .image-search-zoom {
  opacity: 1 !important;
  transform: translateY(0) !important;
}

.player-page .image-search-dialog {
  width: min(76rem, calc(100vw - 1.5rem)) !important;
  max-width: 100% !important;
  max-height: calc(100dvh - 1.5rem) !important;
  margin: auto !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 1px solid rgba(255, 255, 255, .16) !important;
  border-radius: 1.15rem !important;
  background: #081525 !important;
  box-shadow: 0 1.8rem 5rem rgba(0, 0, 0, .55) !important;
  color: #fff !important;
}

.player-page .image-search-dialog::backdrop,
.player-portrait-dialog::backdrop {
  background: rgba(2, 9, 18, .92) !important;
  backdrop-filter: blur(8px) !important;
}

.player-page .image-search-dialog-inner {
  position: relative !important;
  display: grid !important;
  width: 100% !important;
  height: min(94dvh, 54rem) !important;
  max-height: calc(100dvh - 1.5rem) !important;
  grid-template-columns: minmax(0, 1fr) !important;
  grid-template-rows: minmax(0, 1fr) auto !important;
  overflow: hidden !important;
}

.player-page .image-search-dialog-media {
  position: relative !important;
  display: flex !important;
  min-height: 18rem !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
  background: radial-gradient(circle at 50% 42%, rgba(29, 66, 137, .2), transparent 50%), #06101d !important;
}

.player-page .image-search-dialog img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: none !important;
  margin: 0 !important;
  padding: clamp(.7rem, 1.8vw, 1.35rem) !important;
  object-fit: contain !important;
  object-position: center !important;
  user-select: none !important;
}

.player-page .image-search-dialog-text {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  max-height: min(35dvh, 16rem) !important;
  padding: 1rem 1.15rem 1.1rem !important;
  overflow-y: auto !important;
  border-top: 1px solid rgba(17, 57, 97, .12) !important;
  background: #fff !important;
  color: #11253c !important;
  text-align: left !important;
}

.player-page .image-search-dialog-counter {
  display: block !important;
  margin-bottom: .5rem !important;
  color: #607080 !important;
  font-size: .748rem !important;
  font-weight: 850 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
}

.player-page .image-search-dialog-text h2 {
  margin: 0 !important;
  color: #11253c !important;
  font-size: clamp(1rem, 1.55vw, 1.25rem) !important;
  font-weight: 850 !important;
  line-height: 1.3 !important;
  text-align: left !important;
}

.player-page .image-search-dialog-text p {
  margin: .55rem 0 0 !important;
  color: #607080 !important;
  font-size: .968rem !important;
  line-height: 1.5 !important;
  text-align: left !important;
}

.player-page .image-search-dialog-people strong {
  color: #344a63 !important;
}

.player-page .image-search-dialog-people a {
  color: var(--player-blue) !important;
  font-weight: 800 !important;
  text-decoration: none !important;
}

.player-page .image-search-dialog-text p[hidden],
.player-page .image-search-dialog-text a[hidden] {
  display: none !important;
}

.player-page .image-search-dialog-actions {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: .55rem !important;
  margin-top: .8rem !important;
}

.player-page .image-search-dialog-match-link,
.player-page .image-search-dialog-photo-link {
  appearance: none !important;
  display: inline-flex !important;
  min-height: 2.55rem !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  padding: .52rem .78rem !important;
  border: 1px solid var(--player-blue) !important;
  border-radius: .58rem !important;
  background: var(--player-blue) !important;
  color: #fff !important;
  font-size: .88rem !important;
  font-weight: 850 !important;
  text-decoration: none !important;
}

.player-page .image-search-dialog-photo-link {
  border-color: rgba(29, 66, 137, .18) !important;
  background: #eaf1fb !important;
  color: var(--player-blue) !important;
}

.player-page .image-search-dialog-close,
.player-page .image-search-dialog-nav {
  appearance: none !important;
  position: absolute !important;
  z-index: 4 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid rgba(255, 255, 255, .25) !important;
  background: rgba(5, 20, 36, .88) !important;
  box-shadow: 0 .55rem 1.4rem rgba(0, 0, 0, .28) !important;
  color: #fff !important;
  cursor: pointer !important;
}

.player-page .image-search-dialog-close {
  top: .75rem !important;
  right: .75rem !important;
  width: 2.7rem !important;
  height: 2.7rem !important;
  border-radius: 50% !important;
  font-size: 1.5rem !important;
}

.player-page .image-search-dialog-nav {
  top: 50% !important;
  width: 3rem !important;
  height: 3.5rem !important;
  border-radius: .78rem !important;
  font-size: 1.8rem !important;
  transform: translateY(-50%) !important;
}

.player-page .image-search-dialog-prev { left: .75rem !important; }
.player-page .image-search-dialog-next { right: .75rem !important; }
.player-page .image-search-dialog-nav:disabled { opacity: .24 !important; cursor: default !important; }

/* Portrait dialog uses the same dark viewing surface. */
.player-portrait-dialog {
  width: min(40rem, calc(100vw - 1.5rem)) !important;
  max-height: calc(100dvh - 1.5rem) !important;
  margin: auto !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 1px solid rgba(255, 255, 255, .16) !important;
  border-radius: 1.1rem !important;
  background: #081525 !important;
  box-shadow: 0 1.8rem 5rem rgba(0, 0, 0, .55) !important;
  color: #fff !important;
}

.player-portrait-dialog__inner {
  position: relative !important;
  display: grid !important;
  grid-template-rows: minmax(0, 1fr) auto !important;
  max-height: calc(100dvh - 1.5rem) !important;
}

.player-portrait-dialog img {
  display: block !important;
  width: 100% !important;
  height: min(78dvh, 46rem) !important;
  margin: 0 !important;
  padding: 1rem !important;
  object-fit: contain !important;
}

.player-portrait-dialog p {
  margin: 0 !important;
  padding: .85rem 1rem !important;
  background: #fff !important;
  color: var(--player-ink) !important;
  font-size: .8rem !important;
  text-align: center !important;
}

.player-portrait-dialog__close {
  position: absolute !important;
  top: .75rem !important;
  right: .75rem !important;
  z-index: 3 !important;
  display: grid !important;
  width: 2.7rem !important;
  height: 2.7rem !important;
  place-items: center !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid rgba(255, 255, 255, .25) !important;
  border-radius: 50% !important;
  background: rgba(5, 20, 36, .88) !important;
  color: #fff !important;
  font-size: 1.5rem !important;
  cursor: pointer !important;
}

/* External news keeps the shared news-card renderer inside the tab card. */
.player-page .player-external-news {
  margin: 0 !important;
}

.player-page .player-external-news__heading {
  margin-bottom: 1rem !important;
}

@media (max-width: 64rem) {
  .player-modern-hero-summary {
    grid-template-columns: minmax(0, 1fr) minmax(12rem, .8fr) minmax(0, 1fr) !important;
    gap: 1.2rem !important;
    padding-inline: 1.35rem !important;
  }

  .player-modern-hero-summary__identity h1 {
    font-size: clamp(2.5rem, 6vw, 4.5rem) !important;
  }

  .player-modern-hero-summary__career strong {
    font-size: clamp(1.8rem, 4.2vw, 3.2rem) !important;
  }

  .player-stats-visuals {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .player-page .season-modern-photo-grid.image-search-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 47.99rem) {
  .player-page #main.wrapper {
    padding-top: .75rem !important;
  }

  .player-page #main > .inner {
    padding-inline: .75rem !important;
  }

  .player-modern-navigation {
    display: flex !important;
    min-height: 0 !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    margin-bottom: .55rem !important;
    padding: .28rem !important;
    overflow-x: auto !important;
    gap: .28rem !important;
    scrollbar-width: none !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .player-modern-navigation::-webkit-scrollbar {
    display: none !important;
  }

  .player-modern-navigation__players {
    position: static !important;
    display: grid !important;
    width: 100% !important;
    max-width: none !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: .35rem !important;
    transform: none !important;
  }

  .player-page .player-modern-navigation__button {
    width: auto !important;
    min-width: 0 !important;
    border-radius: .58rem !important;
    gap: .26rem !important;
  }

  .player-page .player-modern-navigation__button--all {
    flex-direction: row !important;
    gap: .2rem !important;
  }

  .player-page .player-modern-navigation__button--all > span {
    display: none !important;
  }

  .player-modern-hero-summary {
    min-height: 0 !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 1rem !important;
    padding: 1.15rem 1rem 1.35rem !important;
  }

  .player-modern-hero-summary__identity {
    grid-column: 1 / -1 !important;
    grid-row: 1 !important;
  }

  .player-modern-hero-summary__portrait {
    grid-column: 1 !important;
    grid-row: 2 !important;
  }

  .player-modern-hero-summary__career {
    grid-column: 2 !important;
    grid-row: 2 !important;
    align-self: center !important;
  }

  .player-modern-hero-summary__identity h1 {
    font-size: clamp(2.6rem, 12vw, 4rem) !important;
  }

  .player-modern-hero-summary__career strong {
    font-size: clamp(1.65rem, 7vw, 2.5rem) !important;
  }

  .player-modern-hero-portrait {
    width: 5.2rem !important;
    height: 6.2rem !important;
  }

  .player-modern-hero__facts {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  .player-modern-hero__fact:nth-child(4) {
    border-left: 0 !important;
  }

  .player-page .player-profile-details #inners {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .player-modern-tabs {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  .player-page .player-modern-tabs button {
    width: 100% !important;
    justify-content: center !important;
    padding-inline: .4rem !important;
    font-size: .78rem !important;
  }

  .player-modern-tab-count {
    display: none !important;
  }

  .player-section-head,
  .player-stats-dashboard__header {
    align-items: flex-start !important;
    flex-direction: column !important;
  }

  .player-section-head__meta,
  .player-stats-dashboard__header p {
    text-align: left !important;
  }

  .player-stats-kpis {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .player-stats-detail-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .player-stat-detail--wide {
    grid-column: auto !important;
  }

  .player-page .season-modern-photo-grid.image-search-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: .52rem !important;
  }

  .player-page .season-modern-photo-card .image-search-zoom {
    right: .35rem !important;
    bottom: .35rem !important;
    min-height: 1.45rem !important;
    padding: .22rem .38rem !important;
    font-size: .616rem !important;
    opacity: 1 !important;
    transform: none !important;
  }

  .player-page .image-search-dialog {
    width: 100% !important;
    max-height: 100dvh !important;
    border-width: 0 !important;
    border-radius: 0 !important;
  }

  .player-page .image-search-dialog-inner {
    height: 100dvh !important;
    max-height: 100dvh !important;
  }

  .player-page .image-search-dialog-media {
    min-height: 0 !important;
  }

  .player-page .image-search-dialog img {
    padding: .5rem !important;
  }

  .player-page .image-search-dialog-text {
    max-height: 38dvh !important;
    padding: .9rem .95rem max(1rem, env(safe-area-inset-bottom)) !important;
  }

  .player-page .image-search-dialog-actions {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: .45rem !important;
  }

  .player-page .image-search-dialog-match-link,
  .player-page .image-search-dialog-photo-link {
    width: 100% !important;
  }
}

@media (max-width: 30rem) {
  .player-modern-navigation__players {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .player-modern-hero-summary {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: .9rem !important;
  }

  .player-modern-hero-summary__identity,
  .player-modern-hero-summary__portrait,
  .player-modern-hero-summary__career {
    grid-column: 1 !important;
  }

  .player-modern-hero-summary__identity { grid-row: 1 !important; }
  .player-modern-hero-summary__portrait { grid-row: 2 !important; }
  .player-modern-hero-summary__career { grid-row: 3 !important; text-align: left !important; }

  .player-modern-hero-summary__portrait {
    grid-template-columns: auto minmax(0, 1fr) !important;
  }

  .player-modern-hero__facts {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .player-modern-hero__fact:nth-child(odd) {
    border-left: 0 !important;
  }

  .player-page .player-profile-details #inners {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .player-modern-tabs {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .player-stats-kpis {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .player-more-portraits__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 21.99rem) {
  .player-page .season-modern-photo-grid.image-search-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .player-page *,
  .player-page *::before,
  .player-page *::after {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
  }
}

/* =========================================================
   Player modern v9: profile layout refinement
   ========================================================= */

body.player-page {
  background-color: #fff !important;
  background-image:
    radial-gradient(circle at 50% -12rem, rgba(29, 66, 137, .08), transparent 36rem),
    linear-gradient(180deg, #f4f7fb 0, #fff 42rem) !important;
  background-repeat: no-repeat, no-repeat !important;
  background-size: 100% 42rem, 100% 42rem !important;
}

.player-page #main.wrapper,
.player-page #main.wrapper > .inner {
  background: transparent !important;
  background-image: none !important;
}

.player-modern-hero__top {
  min-height: 3.05rem !important;
  padding: .8rem clamp(1rem, 3vw, 1.5rem) !important;
}

.player-modern-hero__meta {
  font-size: .73rem !important;
}

.player-modern-hero__kamrat {
  display: inline-flex !important;
  min-height: 1.85rem !important;
  align-items: center !important;
  justify-content: center !important;
  padding: .3rem .55rem !important;
  border: 1px solid rgba(255, 255, 255, .2) !important;
  border-radius: .52rem !important;
  background: rgba(255, 255, 255, .08) !important;
  color: #fff !important;
  font-size: .68rem !important;
  font-weight: 850 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}

.player-modern-hero-summary {
  min-height: 10.2rem !important;
  grid-template-columns: minmax(10.5rem, .72fr) minmax(0, 1.42fr) minmax(12.5rem, .9fr) !important;
  gap: clamp(1rem, 2.5vw, 2.25rem) !important;
  padding: clamp(1.2rem, 2.7vw, 2rem) clamp(1.2rem, 3vw, 2.4rem) !important;
}

.player-modern-hero-summary__portrait {
  grid-template-columns: auto minmax(0, 1fr) !important;
  gap: .85rem !important;
}

.player-modern-hero-portrait {
  width: clamp(4.8rem, 6.2vw, 5.8rem) !important;
  height: auto !important;
  aspect-ratio: 2 / 3 !important;
  border-radius: .82rem !important;
}

.player-modern-hero-portrait img {
  width: 100% !important;
  height: 100% !important;
  aspect-ratio: 2 / 3 !important;
  object-fit: cover !important;
  object-position: center top !important;
}

.player-modern-hero-summary__identity h1 {
  margin-top: .14rem !important;
  font-size: clamp(2.4rem, 4.3vw, 4.45rem) !important;
  line-height: .94 !important;
  white-space: nowrap !important;
  overflow-wrap: normal !important;
}

.player-modern-hero-summary__identity h1.is-long {
  font-size: clamp(2.15rem, 3.7vw, 3.8rem) !important;
}

.player-modern-hero-summary__identity h1.is-very-long {
  font-size: clamp(1.9rem, 3.2vw, 3.25rem) !important;
}

.player-modern-hero-summary__career strong {
  margin-top: .22rem !important;
  font-size: clamp(1.75rem, 3vw, 3.15rem) !important;
  line-height: .98 !important;
  white-space: nowrap !important;
}

.player-modern-hero-summary__career strong.is-long {
  font-size: clamp(1.55rem, 2.55vw, 2.65rem) !important;
}

.player-modern-hero-summary__career strong.is-very-long {
  font-size: clamp(1.35rem, 2.2vw, 2.25rem) !important;
  white-space: normal !important;
  text-wrap: balance !important;
}

.player-modern-hero-summary__label {
  font-size: .65rem !important;
}

.player-modern-hero-summary__portrait small,
.player-modern-hero-summary__identity small,
.player-modern-hero-summary__career small {
  margin-top: .35rem !important;
  font-size: .74rem !important;
}

.player-modern-hero__facts {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: stretch !important;
  gap: 1px !important;
  border-top: 1px solid rgba(255, 255, 255, .14) !important;
  background: rgba(255, 255, 255, .09) !important;
}

.player-modern-hero__fact {
  display: block !important;
  min-width: 5.75rem !important;
  min-height: 0 !important;
  flex: 1 1 auto !important;
  padding: .62rem .72rem !important;
  border-left: 0 !important;
  background: rgba(5, 24, 55, .22) !important;
}

.player-modern-hero__fact span {
  font-size: .62rem !important;
  letter-spacing: .045em !important;
}

.player-modern-hero__fact strong {
  margin-top: .25rem !important;
  font-size: .82rem !important;
  font-weight: 800 !important;
  line-height: 1.3 !important;
}

/* Profile facts use compact tiles without iconography. */
.player-page .player-profile-details {
  margin-top: .8rem !important;
  border-color: rgba(18, 54, 96, .11) !important;
  box-shadow: 0 .35rem 1.15rem rgba(16, 36, 59, .055) !important;
}

.player-page .player-profile-details #inners,
.player-page .player-profile-details #inners.is-enhanced {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: .48rem !important;
  padding: .65rem !important;
  font-size: .76rem !important;
}

.player-page .player-profile-details #inners i,
.player-page .player-profile-details #inners .flag-icon {
  display: none !important;
}

.player-page .player-profile-details #inners .player-profile__fact {
  display: flex !important;
  min-height: 2.55rem !important;
  align-items: center !important;
  margin: 0 !important;
  padding: .55rem .68rem !important;
  border: 1px solid rgba(18, 54, 96, .085) !important;
  border-radius: .62rem !important;
  background: #f7f9fc !important;
  color: #405166 !important;
  font-size: .75rem !important;
  font-weight: 650 !important;
  line-height: 1.38 !important;
}

.player-page .player-profile-details #inners .player-profile__fact.is-achievement {
  background: #f2f6fb !important;
}

.player-page .player-profile-details #inners .player-profile__fact a {
  color: var(--player-blue) !important;
  font-weight: 800 !important;
}

/* Biography keeps text dominant and limits the portrait archive to a narrow right rail. */
.player-biography-layout {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(12rem, 15rem) !important;
  align-items: start !important;
  gap: clamp(1.2rem, 3vw, 2rem) !important;
}

.player-biography-copy {
  min-width: 0 !important;
}

.player-biography-copy > h3:first-child {
  margin-top: 0 !important;
}

.player-more-portraits {
  margin: 0 !important;
  padding: .85rem !important;
  border: 1px solid var(--player-border) !important;
  border-radius: .85rem !important;
  background: #f7f9fc !important;
  box-shadow: none !important;
}

.player-more-portraits header p {
  margin-bottom: .1rem !important;
  font-size: .64rem !important;
}

.player-more-portraits header h3 {
  margin: 0 0 .65rem !important;
  font-size: 1rem !important;
}

.player-more-portraits__grid {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: .55rem !important;
}

.player-page .player-more-portraits__item {
  aspect-ratio: 2 / 3 !important;
  border-radius: .62rem !important;
}

.player-more-portraits__item img {
  aspect-ratio: 2 / 3 !important;
  object-fit: cover !important;
  object-position: center top !important;
}

.player-autograph {
  display: grid !important;
  width: min(100%, 22rem) !important;
  margin: 1.7rem auto 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  text-align: center !important;
}

.player-autograph figcaption {
  margin: 0 0 .35rem !important;
  color: var(--player-blue) !important;
  font-size: .64rem !important;
  font-weight: 900 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}

.player-autograph img,
.player-page .player-autograph img.fits3 {
  display: block !important;
  width: auto !important;
  height: auto !important;
  max-width: min(100%, 20rem) !important;
  max-height: 9rem !important;
  margin: 0 auto !important;
  padding: 0 !important;
  border: 0 !important;
  background: #fff !important;
  object-fit: contain !important;
}

/* Statistics use three visual summaries on wide screens and slightly larger typography. */
.player-stats-dashboard {
  padding: 1.05rem !important;
}

.player-stats-dashboard__header {
  margin-bottom: .9rem !important;
}

.player-stats-dashboard__header h3 {
  font-size: 1.45rem !important;
}

.player-stats-kpis article {
  padding: .9rem !important;
}

.player-stats-kpis article span {
  font-size: .7rem !important;
}

.player-stats-kpis article strong {
  margin-top: .2rem !important;
  font-size: 2rem !important;
}

.player-stats-kpis article small {
  display: none !important;
}

.player-stats-visuals {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: .8rem !important;
}

.player-chart-card {
  padding: .9rem !important;
}

.player-chart-card header span {
  font-size: .68rem !important;
}

.player-chart-card header h4 {
  font-size: 1.02rem !important;
}

.player-season-bars {
  height: 12rem !important;
}

.player-season-bars__label {
  font-size: .62rem !important;
}

.player-season-bars__bar--secondary {
  background: #d8a72f !important;
}

.player-chart-key--secondary {
  background: #d8a72f !important;
}

.player-chart-legend,
.player-competition-bars__heading {
  font-size: .72rem !important;
}

.player-result-bar {
  display: flex !important;
  width: 100% !important;
  height: .8rem !important;
  margin: .5rem 0 1rem !important;
  overflow: hidden !important;
  border-radius: 999px !important;
  background: #e9eef4 !important;
}

.player-result-bar__segment {
  display: block !important;
  width: var(--player-result-width, 0%) !important;
  height: 100% !important;
}

.player-result-bar__segment--w,
.player-result-key--w { background: #16824f !important; }
.player-result-bar__segment--d,
.player-result-key--d { background: #d17a00 !important; }
.player-result-bar__segment--l,
.player-result-key--l { background: #c43f3f !important; }

.player-result-summary {
  display: grid !important;
  gap: .62rem !important;
}

.player-result-summary > div {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto 2.8rem !important;
  align-items: center !important;
  gap: .55rem !important;
  padding-bottom: .5rem !important;
  border-bottom: 1px solid rgba(18, 54, 96, .08) !important;
  color: var(--player-muted) !important;
  font-size: .74rem !important;
}

.player-result-summary > div:last-child {
  padding-bottom: 0 !important;
  border-bottom: 0 !important;
}

.player-result-summary span {
  display: inline-flex !important;
  align-items: center !important;
  gap: .38rem !important;
  font-weight: 750 !important;
}

.player-result-summary strong {
  color: var(--player-ink) !important;
  font-size: .82rem !important;
}

.player-result-summary small {
  color: var(--player-muted) !important;
  text-align: right !important;
}

.player-result-key {
  display: inline-block !important;
  width: .58rem !important;
  height: .58rem !important;
  border-radius: .18rem !important;
}

.player-page #statistik table {
  font-size: .78rem !important;
}

.player-page #statistik table th {
  font-size: .68rem !important;
}

.player-page #statistik table td {
  font-size: .76rem !important;
  line-height: 1.4 !important;
}

/* Archive controls are shared by player matches and photos. */
.player-archive-toolbar {
  display: grid !important;
  grid-template-columns: minmax(12rem, 1.5fr) repeat(4, minmax(8rem, .8fr)) auto !important;
  align-items: end !important;
  gap: .6rem !important;
  margin: .2rem 0 1rem !important;
  padding: .75rem !important;
  border: 1px solid var(--player-border) !important;
  border-radius: .82rem !important;
  background: #f7f9fc !important;
}

.player-photo-toolbar {
  grid-template-columns: minmax(14rem, 1fr) minmax(10rem, .34fr) auto !important;
}

.player-archive-control {
  display: grid !important;
  min-width: 0 !important;
  gap: .28rem !important;
  margin: 0 !important;
}

.player-archive-control > span {
  color: var(--player-muted) !important;
  font-size: .64rem !important;
  font-weight: 900 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
}

.player-page .player-archive-control input,
.player-page .player-archive-control select {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  height: 2.35rem !important;
  margin: 0 !important;
  padding: .48rem .62rem !important;
  border: 1px solid rgba(18, 54, 96, .16) !important;
  border-radius: .58rem !important;
  background: #fff !important;
  color: var(--player-ink) !important;
  font: inherit !important;
  font-size: .76rem !important;
  line-height: 1.2 !important;
  box-shadow: none !important;
}

.player-archive-actions {
  display: flex !important;
  align-items: center !important;
  gap: .45rem !important;
}

.player-page .player-archive-actions button,
.player-page .player-archive-actions a {
  display: inline-flex !important;
  min-height: 2.35rem !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  padding: .5rem .72rem !important;
  border-radius: .58rem !important;
  font-size: .72rem !important;
  font-weight: 850 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}

.player-page .player-archive-actions button {
  border: 1px solid var(--player-blue) !important;
  background: var(--player-blue) !important;
  color: #fff !important;
}

.player-page .player-archive-actions a {
  border: 1px solid rgba(18, 54, 96, .13) !important;
  background: #fff !important;
  color: var(--player-blue) !important;
}

.player-modern-match-list {
  margin-top: 0 !important;
}

.player-pagination {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: .75rem !important;
  margin-top: 1rem !important;
}

.player-pagination__pages {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: center !important;
  gap: .3rem !important;
}

.player-pagination a,
.player-pagination span {
  display: inline-flex !important;
  min-width: 2rem !important;
  min-height: 2rem !important;
  align-items: center !important;
  justify-content: center !important;
  padding: .35rem .48rem !important;
  border: 1px solid rgba(18, 54, 96, .12) !important;
  border-radius: .52rem !important;
  background: #fff !important;
  color: var(--player-blue) !important;
  font-size: .72rem !important;
  font-weight: 850 !important;
  text-decoration: none !important;
}

.player-pagination .is-current {
  border-color: var(--player-blue) !important;
  background: var(--player-blue) !important;
  color: #fff !important;
}

.player-pagination__direction {
  min-width: 7.2rem !important;
}

.player-pagination a[aria-disabled="true"] {
  opacity: .38 !important;
  pointer-events: none !important;
}

/* Photo archive uses fixed 4:3 cards and is isolated from legacy #bilder grid rules. */
.player-page .tab-panels > #bilder.is-active {
  display: block !important;
}

.player-page .player-photo-grid.image-search-grid {
  display: grid !important;
  width: 100% !important;
  min-width: 0 !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: .72rem !important;
  margin: 0 !important;
}

.player-page .player-photo-card.image-search-card {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
  border: 1px solid var(--player-border) !important;
  border-radius: .88rem !important;
  background: #fff !important;
  box-shadow: none !important;
}

.player-page .player-photo-card button.image-search-card-button,
.player-page .player-photo-card button.image-search-card-button:hover,
.player-page .player-photo-card button.image-search-card-button:focus,
.player-page .player-photo-card button.image-search-card-button:active {
  appearance: none !important;
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  aspect-ratio: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: inherit !important;
  background: #fff !important;
  box-shadow: none !important;
  color: inherit !important;
  text-align: left !important;
  transform: none !important;
  cursor: zoom-in !important;
}

.player-page .player-photo-card .image-search-image-wrap {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 4 / 3 !important;
  overflow: hidden !important;
  background: #e8edf3 !important;
}

.player-page .player-photo-card .image-search-image-wrap img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: cover !important;
  object-position: center 34% !important;
}

.player-photo-card__caption {
  display: block !important;
  padding: .58rem .62rem !important;
}

.player-photo-card__caption strong {
  display: block !important;
  overflow: hidden !important;
  color: var(--player-ink) !important;
  font-size: .78rem !important;
  font-weight: 850 !important;
  line-height: 1.28 !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.player-photo-card__caption small {
  display: block !important;
  margin-top: .16rem !important;
  color: var(--player-muted) !important;
  font-size: .68rem !important;
}

[data-player-match-view-panel][hidden],
[data-player-match-pagination][hidden],
[data-player-card-sort-control][hidden] {
  display: none !important;
}

.player-match-table-wrap {
  overflow: hidden !important;
  border: 1px solid var(--player-border) !important;
  border-radius: .78rem !important;
  background: #fff !important;
}

.player-page .player-match-table {
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  border-collapse: collapse !important;
  background: #fff !important;
  font-size: .82rem !important;
}

.player-page .player-match-table th {
  padding: .38rem .68rem !important;
  border: 0 !important;
  border-bottom: 2px solid rgba(18,54,96,.16) !important;
  background: #f7f9fc !important;
  background-image: none !important;
  color: #53667c !important;
  font-size: .68rem !important;
  font-weight: 900 !important;
  letter-spacing: .02em !important;
  text-align: left !important;
  white-space: nowrap !important;
}

.player-page .player-match-table th button {
  display: inline-flex !important;
  max-width: 100% !important;
  align-items: center !important;
  gap: .25rem !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
  background: transparent !important;
  color: inherit !important;
  font: inherit !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  cursor: pointer !important;
}

.player-page .player-match-table th button:hover,
.player-page .player-match-table th button:focus-visible {
  color: var(--player-blue) !important;
}

.player-page .player-match-table__sort-marker {
  display: inline-block !important;
  min-width: .65rem !important;
  flex: 0 0 auto !important;
  color: var(--player-blue) !important;
  font-size: .58rem !important;
}

.player-page .player-match-table th[aria-sort]::before,
.player-page .player-match-table th[aria-sort]::after,
.player-page .player-match-table th button::before,
.player-page .player-match-table th button::after {
  display: none !important;
  content: none !important;
}

.player-page .player-match-table th.sorting,
.player-page .player-match-table th.sorting_asc,
.player-page .player-match-table th.sorting_desc,
.player-page .player-match-table th.sorting_asc_disabled,
.player-page .player-match-table th.sorting_desc_disabled {
  background-image: none !important;
}

.player-page .player-match-table__label-short,
.player-page .player-match-table__date-short,
.player-page .player-match-table__match-short {
  display: none !important;
}

.player-page .player-match-table__competition-short {
  display: none !important;
}

.player-page .player-match-table__competition-badge {
  display: inline-flex !important;
  min-width: 2rem !important;
  min-height: 1.45rem !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 .35rem !important;
  border-radius: .42rem !important;
  background: var(--player-blue) !important;
  color: #fff !important;
  font-size: .67rem !important;
  font-weight: 900 !important;
  letter-spacing: .03em !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
}

.player-page .player-match-table__competition-badge.is-cup {
  background: #2a5ca8 !important;
}

.player-page .player-match-table__competition-badge.is-friendly {
  background: #5a6f8d !important;
}

.player-page .player-match-table__competition-badge.is-europe {
  background: #2f4f9f !important;
}

.player-page .player-match-table td {
  min-width: 0 !important;
  padding: .46rem .68rem !important;
  overflow: hidden !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(18,54,96,.11) !important;
  background: #fff !important;
  color: #42566e !important;
  line-height: 1.3 !important;
  text-overflow: ellipsis !important;
  vertical-align: middle !important;
}

.player-page .player-match-table tbody tr:nth-child(even) td { background: #fafbfd !important; }
.player-page .player-match-table tbody tr:hover td { background: #f2f6fb !important; }
.player-page .player-match-table tbody tr:last-child td { border-bottom: 0 !important; }
.player-page .player-match-table tbody tr.is-bench td { color: #8b98a8 !important; }

.player-page .player-match-table a {
  color: var(--player-blue) !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}

.player-page .player-match-table a:hover { text-decoration: underline !important; }
.player-page .player-match-table__result { white-space: nowrap !important; }
.player-page .player-match-table__result small { margin-left: .28rem !important; color: var(--player-muted) !important; font-weight: 600 !important; }
.player-page .player-match-table .is-number { text-align: center !important; font-variant-numeric: tabular-nums !important; }

.player-page .player-match-table__truncate,
.player-page .player-match-table__match-full,
.player-page .player-match-table__match-short {
  max-width: 100% !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.player-page .player-match-table__match-full { display: block !important; }
.player-page .player-match-table__match-short small { font-size: .82em !important; font-weight: 800 !important; }

.player-match-table__position {
  display: inline-flex !important;
  max-width: 100% !important;
  min-width: 0 !important;
  align-items: center !important;
  gap: .32rem !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.player-match-table__position small { flex: 0 0 auto !important; font-size: .68rem !important; font-weight: 850 !important; }
.player-match-table__position small.is-in { color: #168252 !important; }
.player-match-table__position small.is-out { color: #c14c4c !important; }

@media (max-width: 56rem) {
  .player-page .player-match-table {
    table-layout: fixed !important;
    font-size: .75rem !important;
  }

  .player-page .player-match-table th {
    padding: .34rem .48rem !important;
    font-size: .64rem !important;
  }

  .player-page .player-match-table td {
    padding: .42rem .48rem !important;
  }

  .player-page .player-match-table__label-full,
  .player-page .player-match-table__date-full,
  .player-page .player-match-table__match-full {
    display: none !important;
  }

  .player-page .player-match-table__label-short,
  .player-page .player-match-table__date-short,
  .player-page .player-match-table__match-short {
    display: block !important;
  }

  .player-page .player-match-table .col-date { width: 14% !important; }
  .player-page .player-match-table .col-match { width: 27% !important; }
  .player-page .player-match-table .col-result { width: 15% !important; }
  .player-page .player-match-table .col-competition { width: 17% !important; }
  .player-page .player-match-table .col-position { width: 17% !important; }
  .player-page .player-match-table .col-goals { width: 5% !important; }
  .player-page .player-match-table .col-secondary { width: 5% !important; }
}

@media (max-width: 48rem) {
  .player-page .player-match-table .col-position,
  .player-page .player-match-table .col-secondary {
    display: none !important;
  }

  .player-page .player-match-table th,
  .player-page .player-match-table td {
    padding-inline: .32rem !important;
  }

  .player-page .player-match-table th button {
    gap: .12rem !important;
  }

  .player-page .player-match-table__sort-marker {
    min-width: .42rem !important;
    font-size: .52rem !important;
  }

  .player-page .player-match-table__competition-full {
    display: none !important;
  }

  .player-page .player-match-table__competition-short {
    display: inline-flex !important;
    align-items: center !important;
  }

  .player-page .player-match-table .col-date { width: 18% !important; }
  .player-page .player-match-table .col-match { width: 39% !important; }
  .player-page .player-match-table .col-result { width: 18% !important; }
  .player-page .player-match-table .col-competition { width: 13% !important; }
  .player-page .player-match-table .col-goals { width: 12% !important; }
}

@media (max-width: 40rem) {
  .player-page .player-match-table {
    font-size: .69rem !important;
  }

  .player-page .player-match-table th {
    padding: .29rem .24rem !important;
    font-size: .6rem !important;
  }

  .player-page .player-match-table td {
    padding: .36rem .24rem !important;
  }

  .player-page .player-match-table .col-goals,
  .player-page .player-match-table .col-secondary,
  .player-page .player-match-table .col-position {
    display: none !important;
  }

  .player-page .player-match-table .col-date { width: 22% !important; }
  .player-page .player-match-table .col-match { width: 45% !important; }
  .player-page .player-match-table .col-result { width: 20% !important; }
  .player-page .player-match-table .col-competition { width: 13% !important; }

  .player-page .player-match-table__result small {
    display: none !important;
  }
}

@media (max-width: 30rem) {
  .player-page .player-match-table {
    font-size: .66rem !important;
  }

  .player-page .player-match-table th,
  .player-page .player-match-table td {
    padding-inline: .2rem !important;
  }

  .player-page .player-match-table .col-date { width: 22% !important; }
  .player-page .player-match-table .col-match { width: 46% !important; }
  .player-page .player-match-table .col-result { width: 20% !important; }
  .player-page .player-match-table .col-competition { width: 12% !important; }

  .player-page .player-match-table__competition-badge {
    min-width: 1.65rem !important;
    min-height: 1.2rem !important;
    padding-inline: .18rem !important;
    font-size: .56rem !important;
  }
}


@media (max-width: 72rem) {
  .player-modern-hero-summary {
    grid-template-columns: minmax(9.5rem, .72fr) minmax(0, 1.25fr) minmax(11rem, .86fr) !important;
    gap: 1rem !important;
  }

  .player-modern-hero-summary__identity h1 {
    font-size: clamp(2.15rem, 4.1vw, 3.65rem) !important;
  }

  .player-modern-hero-summary__career strong {
    font-size: clamp(1.55rem, 2.7vw, 2.55rem) !important;
  }

  .player-archive-toolbar {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  .player-archive-control--search {
    grid-column: span 2 !important;
  }
}

@media (max-width: 62rem) {
  .player-stats-visuals {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .player-chart-card--results {
    display: none !important;
  }

  .player-biography-layout {
    grid-template-columns: minmax(0, 1fr) minmax(11rem, 13rem) !important;
  }

  .player-page .player-profile-details #inners,
  .player-page .player-profile-details #inners.is-enhanced {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  .player-page .player-photo-grid.image-search-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 47.99rem) {
  .player-modern-hero__top {
    padding: .72rem .85rem !important;
  }

  .player-modern-hero-summary {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    gap: .8rem 1rem !important;
    padding: 1rem !important;
  }

  .player-modern-hero-summary__identity {
    grid-column: 1 / -1 !important;
  }

  .player-modern-hero-summary__identity h1,
  .player-modern-hero-summary__identity h1.is-long,
  .player-modern-hero-summary__identity h1.is-very-long {
    font-size: clamp(2.2rem, 10.5vw, 3.45rem) !important;
    white-space: normal !important;
    text-wrap: balance !important;
  }

  .player-modern-hero-summary__career strong,
  .player-modern-hero-summary__career strong.is-long,
  .player-modern-hero-summary__career strong.is-very-long {
    font-size: clamp(1.45rem, 6.7vw, 2.2rem) !important;
    white-space: normal !important;
  }

  .player-modern-hero-portrait {
    width: 4.7rem !important;
  }

  .player-modern-hero__facts {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 1px !important;
  }

  .player-modern-hero__fact {
    min-width: 0 !important;
    padding: .58rem .62rem !important;
  }

  .player-page .player-profile-details #inners,
  .player-page .player-profile-details #inners.is-enhanced {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .player-biography-layout {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .player-more-portraits {
    width: min(100%, 19rem) !important;
  }

  .player-more-portraits__grid {
    grid-template-columns: repeat(2, minmax(0, 7.25rem)) !important;
  }

  .player-archive-toolbar,
  .player-photo-toolbar {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .player-archive-control--search {
    grid-column: 1 / -1 !important;
  }

  .player-archive-actions {
    grid-column: 1 / -1 !important;
  }

  .player-pagination {
    flex-wrap: wrap !important;
    justify-content: center !important;
  }

  .player-pagination__pages {
    order: -1 !important;
    width: 100% !important;
  }

  .player-page .player-photo-grid.image-search-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: .55rem !important;
  }
}

@media (max-width: 30rem) {
  .player-modern-hero__kamrat {
    font-size: .64rem !important;
  }

  .player-page .player-profile-details #inners,
  .player-page .player-profile-details #inners.is-enhanced {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .player-archive-toolbar,
  .player-photo-toolbar {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .player-archive-control,
  .player-archive-control--search,
  .player-archive-actions {
    grid-column: 1 !important;
  }
}

/* Player modern v9.1: final profile refinements */
body.player-page,
body.player-page #main.wrapper,
body.player-page #main.wrapper > .inner,
body.player-page .player-content,
body.player-page .tab-panels {
  background-repeat: no-repeat !important;
}

.player-modern-hero-summary {
  min-height: 9.2rem !important;
  padding-block: clamp(.95rem, 2vw, 1.35rem) !important;
}

.player-modern-hero-portrait {
  width: clamp(4.35rem, 5.5vw, 5.15rem) !important;
  aspect-ratio: 2 / 3 !important;
}

.player-modern-hero-summary__identity h1,
.player-modern-hero-summary__career strong {
  max-width: 100% !important;
}

.player-page .player-profile-details #inners .player-profile__fact.is-primary {
  display: grid !important;
  grid-template-columns: minmax(0, .42fr) minmax(0, .58fr) !important;
  align-content: center !important;
  gap: .18rem .5rem !important;
}

.player-profile__fact-label {
  color: #7a8899 !important;
  font-size: .61rem !important;
  font-weight: 900 !important;
  letter-spacing: .055em !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
}

.player-profile__fact-value {
  min-width: 0 !important;
  color: var(--player-ink) !important;
  font-size: .76rem !important;
  font-weight: 800 !important;
  line-height: 1.3 !important;
}

/* The player gallery uses the same image-card proportions as the season archive. */
.player-page .season-modern-photo-grid.image-search-grid.player-photo-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: .9rem !important;
}

.player-page .season-modern-photo-card.player-photo-card button.image-search-card-button,
.player-page .season-modern-photo-card.player-photo-card button.image-search-card-button:hover,
.player-page .season-modern-photo-card.player-photo-card button.image-search-card-button:focus,
.player-page .season-modern-photo-card.player-photo-card button.image-search-card-button:active {
  aspect-ratio: 4 / 3 !important;
  background: #e8edf3 !important;
}

.player-page .season-modern-photo-card.player-photo-card .image-search-image-wrap {
  height: 100% !important;
  aspect-ratio: auto !important;
}

@media (max-width: 62rem) {
  .player-page .season-modern-photo-grid.image-search-grid.player-photo-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 47.99rem) {
  .player-modern-hero-summary {
    min-height: 0 !important;
    padding-block: .9rem !important;
  }

  .player-page .season-modern-photo-grid.image-search-grid.player-photo-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: .55rem !important;
  }

  .player-page .player-profile-details #inners .player-profile__fact.is-primary {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}

/* Player modern v10: scoped statistics, biography facts and lightbox refinement. */
.player-modern-hero-summary {
  grid-template-columns: minmax(11.75rem, .78fr) minmax(0, 1.45fr) minmax(12rem, .88fr) !important;
}

.player-modern-hero-summary__portrait {
  grid-template-columns: auto minmax(0, 1fr) !important;
  align-items: center !important;
}

.player-modern-hero-portrait,
.player-modern-hero-portrait:hover,
.player-modern-hero-portrait:focus,
.player-modern-hero-portrait:active {
  appearance: none !important;
  display: block !important;
  width: clamp(5.5rem, 7vw, 6.65rem) !important;
  height: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  aspect-ratio: 2 / 3 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 1px solid rgba(255,255,255,.34) !important;
  border-radius: .88rem !important;
  background: rgba(255,255,255,.1) !important;
  box-shadow: 0 .55rem 1.3rem rgba(2,12,28,.18) !important;
  transform: none !important;
  cursor: zoom-in !important;
}

.player-modern-hero-portrait:focus-visible {
  outline: 3px solid rgba(255,255,255,.68) !important;
  outline-offset: 3px !important;
}

.player-modern-hero-portrait img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  aspect-ratio: 2 / 3 !important;
  object-fit: cover !important;
  object-position: center top !important;
}

.player-modern-hero-summary__identity .player-modern-hero-summary__label {
  letter-spacing: .07em !important;
}

.player-modern-hero__fact {
  padding: .52rem .68rem !important;
}

.player-modern-hero__fact span {
  font-size: .585rem !important;
}

.player-modern-hero__fact strong {
  margin-top: .18rem !important;
  font-size: .78rem !important;
  line-height: 1.25 !important;
}

/* The legacy fact stream is retained but placed in the biography sidebar. */
.player-biography-layout {
  grid-template-columns: minmax(0, 1fr) minmax(17rem, 19rem) !important;
  gap: clamp(1.35rem, 3vw, 2.25rem) !important;
}

.player-biography-sidebar {
  display: grid !important;
  min-width: 0 !important;
  align-content: start !important;
  gap: .85rem !important;
}

.player-biography-sidebar .player-more-portraits {
  width: 100% !important;
}

.player-more-portraits__grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  align-items: start !important;
  gap: .6rem !important;
}

.player-page .player-more-portraits__item,
.player-page .player-more-portraits__item:hover,
.player-page .player-more-portraits__item:focus,
.player-page .player-more-portraits__item:active {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  aspect-ratio: 2 / 3 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 1px solid var(--player-border) !important;
  border-radius: .68rem !important;
  background: #e7edf4 !important;
  box-shadow: none !important;
  transform: none !important;
  cursor: zoom-in !important;
}

.player-page .player-more-portraits__item img {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: cover !important;
  object-position: center top !important;
}

.player-biography-facts-slot {
  min-width: 0 !important;
}

.player-page .player-profile-details.is-in-biography {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: .85rem !important;
  border: 1px solid var(--player-border) !important;
  border-radius: .85rem !important;
  background: #fff !important;
  box-shadow: none !important;
}

.player-biography-facts__heading {
  display: grid !important;
  gap: .05rem !important;
  margin: 0 0 .65rem !important;
}

.player-biography-facts__heading > span {
  color: var(--player-blue) !important;
  font-size: .62rem !important;
  font-weight: 900 !important;
  letter-spacing: .085em !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
}

.player-biography-facts__heading > strong {
  color: var(--player-ink) !important;
  font-size: 1rem !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
}

.player-biography-sidebar .player-profile-details #inners,
.player-biography-sidebar .player-profile-details #inners.is-enhanced {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: .42rem !important;
  padding: 0 !important;
}

.player-biography-sidebar .player-profile-details #inners .player-profile__fact,
.player-biography-sidebar .player-profile-details #inners .player-profile__fact.is-primary,
.player-biography-sidebar .player-profile-details #inners .player-profile__fact.is-achievement {
  display: grid !important;
  min-height: 0 !important;
  grid-template-columns: 1.85rem minmax(0, 1fr) !important;
  align-items: start !important;
  gap: .55rem !important;
  margin: 0 !important;
  padding: .58rem .62rem !important;
  border: 1px solid rgba(18,54,96,.085) !important;
  border-radius: .62rem !important;
  background: #f7f9fc !important;
  color: #405166 !important;
  font-size: .72rem !important;
  font-weight: 650 !important;
  line-height: 1.42 !important;
}

.player-profile__fact-icon {
  display: grid !important;
  width: 1.85rem !important;
  height: 1.85rem !important;
  place-items: center !important;
  border-radius: .52rem !important;
  background: #e7eef8 !important;
  color: var(--player-blue) !important;
}

.player-profile__fact-icon svg {
  width: 1.05rem !important;
  height: 1.05rem !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 1.7 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

.player-profile__fact-body {
  display: block !important;
  min-width: 0 !important;
  padding-top: .08rem !important;
}

.player-profile__fact-body .player-profile__fact-label,
.player-profile__fact-body .player-profile__fact-value {
  display: block !important;
}

.player-profile__fact-body .player-profile__fact-label {
  margin-bottom: .12rem !important;
}

/* Season-style statistics scope. */
.player-stats-dashboard__header {
  align-items: flex-start !important;
}

.player-stat-scope {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: .2rem !important;
  padding: .24rem !important;
  border: 1px solid var(--player-border) !important;
  border-radius: .7rem !important;
  background: #edf2f7 !important;
}

.player-page .player-stat-scope button,
.player-page .player-stat-scope button:hover,
.player-page .player-stat-scope button:focus,
.player-page .player-stat-scope button:active {
  appearance: none !important;
  min-height: 2.25rem !important;
  margin: 0 !important;
  padding: .44rem .68rem !important;
  border: 0 !important;
  border-radius: .58rem !important;
  background: transparent !important;
  box-shadow: none !important;
  color: var(--player-muted) !important;
  font: inherit !important;
  font-size: .792rem !important;
  font-weight: 850 !important;
  line-height: 1.1 !important;
  transform: none !important;
  cursor: pointer !important;
}

.player-page .player-stat-scope button[aria-pressed="true"] {
  background: #fff !important;
  color: var(--player-blue) !important;
  box-shadow: 0 .2rem .55rem rgba(16,36,59,.1) !important;
}

.player-page #statistik table {
  font-size: .82rem !important;
}

.player-page #statistik table th {
  font-size: .7rem !important;
}

.player-page #statistik table td {
  font-size: .8rem !important;
  line-height: 1.45 !important;
}

/* Shared lightbox treatment for archive photos and portraits. */
.player-page .image-search-dialog,
.player-portrait-dialog {
  width: min(76rem, calc(100vw - 2rem)) !important;
  height: min(86dvh, 48rem) !important;
  max-width: none !important;
  max-height: calc(100dvh - 2rem) !important;
  border-radius: 1.05rem !important;
  background: #07111f !important;
}

.player-page .image-search-dialog-inner,
.player-portrait-dialog__inner {
  display: grid !important;
  width: 100% !important;
  height: 100% !important;
  max-height: none !important;
  grid-template-columns: minmax(0, 1.55fr) minmax(18rem, .55fr) !important;
  grid-template-rows: minmax(0, 1fr) !important;
  overflow: hidden !important;
}

.player-page .image-search-dialog-media,
.player-portrait-dialog__media {
  position: relative !important;
  display: flex !important;
  min-width: 0 !important;
  min-height: 0 !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
  background: radial-gradient(circle at 50% 42%, rgba(29,66,137,.22), transparent 52%), #06101d !important;
}

.player-page .image-search-dialog img,
.player-portrait-dialog img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  margin: 0 !important;
  padding: clamp(.8rem, 2vw, 1.4rem) !important;
  object-fit: contain !important;
  object-position: center !important;
}

.player-page .image-search-dialog-text,
.player-portrait-dialog__text {
  display: flex !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-height: none !important;
  flex-direction: column !important;
  justify-content: center !important;
  padding: clamp(1.15rem, 2.4vw, 1.75rem) !important;
  overflow-y: auto !important;
  border-top: 0 !important;
  border-left: 1px solid rgba(18,54,96,.12) !important;
  background: #fff !important;
  color: var(--player-ink) !important;
  text-align: left !important;
}

.player-portrait-dialog__text > p {
  order: -1 !important;
  margin: 0 0 .2rem !important;
  color: var(--player-blue) !important;
  font-size: .64rem !important;
  font-weight: 900 !important;
  letter-spacing: .085em !important;
  text-transform: uppercase !important;
}

.player-portrait-dialog__text h2 {
  margin: .2rem 0 0 !important;
  color: var(--player-ink) !important;
  font-size: clamp(1.05rem, 1.7vw, 1.35rem) !important;
  line-height: 1.25 !important;
}

.player-portrait-dialog__counter,
.player-page .image-search-dialog-counter {
  display: block !important;
  margin-bottom: .7rem !important;
  color: #718096 !important;
  font-size: .7rem !important;
  font-weight: 850 !important;
  letter-spacing: .055em !important;
  text-transform: uppercase !important;
}

.player-page .image-search-dialog-text h2 {
  font-size: clamp(1.05rem, 1.7vw, 1.35rem) !important;
}

.player-page .image-search-dialog-text p {
  font-size: .84rem !important;
  line-height: 1.55 !important;
}

.player-page .image-search-dialog-people {
  display: grid !important;
  gap: .42rem !important;
  margin-top: .8rem !important;
}

.player-page .image-search-dialog-people > strong {
  color: #607080 !important;
  font-size: .66rem !important;
  font-weight: 900 !important;
  letter-spacing: .055em !important;
  text-transform: uppercase !important;
}

.image-search-dialog-people__chips {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: .35rem !important;
}

.player-page .image-search-dialog-people__chips a,
.player-page .image-search-dialog-people__chips > span {
  display: inline-flex !important;
  min-height: 1.8rem !important;
  align-items: center !important;
  padding: .3rem .48rem !important;
  border: 1px solid rgba(29,66,137,.12) !important;
  border-radius: 999px !important;
  background: #edf3fa !important;
  color: var(--player-blue) !important;
  font-size: .72rem !important;
  font-weight: 800 !important;
  line-height: 1.15 !important;
  text-decoration: none !important;
}

.player-page .image-search-dialog-close,
.player-portrait-dialog__close,
.player-page .image-search-dialog-nav,
.player-portrait-dialog__nav {
  appearance: none !important;
  position: absolute !important;
  z-index: 5 !important;
  display: grid !important;
  place-items: center !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid rgba(255,255,255,.24) !important;
  background: rgba(4,16,31,.86) !important;
  box-shadow: 0 .45rem 1.2rem rgba(0,0,0,.24) !important;
  color: #fff !important;
  line-height: 1 !important;
  cursor: pointer !important;
}

.player-page .image-search-dialog-close,
.player-portrait-dialog__close {
  top: .8rem !important;
  right: .8rem !important;
  width: 2.7rem !important;
  height: 2.7rem !important;
  border-radius: 50% !important;
  font-size: 0 !important;
}

.player-page .image-search-dialog-close svg,
.player-portrait-dialog__close svg {
  display: block !important;
  width: 1.15rem !important;
  height: 1.15rem !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 2 !important;
  stroke-linecap: round !important;
}

.player-page .image-search-dialog-nav,
.player-portrait-dialog__nav {
  top: 50% !important;
  width: 2.8rem !important;
  height: 3.4rem !important;
  border-radius: .72rem !important;
  font-size: 1.6rem !important;
  transform: translateY(-50%) !important;
}

.player-page .image-search-dialog-prev,
.player-portrait-dialog__prev { left: .75rem !important; }
.player-page .image-search-dialog-next,
.player-portrait-dialog__next { right: .75rem !important; }

.player-portrait-dialog__nav:disabled,
.player-page .image-search-dialog-nav:disabled {
  opacity: .25 !important;
  cursor: default !important;
}

@media (max-width: 68rem) {
  .player-modern-hero-summary {
    grid-template-columns: minmax(10.5rem, .8fr) minmax(0, 1.35fr) minmax(11rem, .85fr) !important;
  }

  .player-biography-layout {
    grid-template-columns: minmax(0, 1fr) minmax(15rem, 17rem) !important;
  }

  .player-page .image-search-dialog-inner,
  .player-portrait-dialog__inner {
    grid-template-columns: minmax(0, 1.4fr) minmax(16rem, .6fr) !important;
  }
}

@media (max-width: 47.99rem) {
  .player-modern-hero-portrait {
    width: 5.35rem !important;
  }

  .player-modern-hero__fact {
    padding: .48rem .56rem !important;
  }

  .player-biography-layout {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .player-biography-sidebar {
    width: 100% !important;
  }

  .player-more-portraits {
    width: min(100%, 22rem) !important;
  }

  .player-stat-scope {
    width: 100% !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .player-page .player-stat-scope button {
    width: 100% !important;
  }

  .player-page .image-search-dialog,
  .player-portrait-dialog {
    width: 100% !important;
    height: 100dvh !important;
    max-height: 100dvh !important;
    border-width: 0 !important;
    border-radius: 0 !important;
  }

  .player-page .image-search-dialog-inner,
  .player-portrait-dialog__inner {
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: minmax(0, 1fr) auto !important;
  }

  .player-page .image-search-dialog-text,
  .player-portrait-dialog__text {
    max-height: 38dvh !important;
    justify-content: flex-start !important;
    padding: .95rem 1rem max(1rem, env(safe-area-inset-bottom)) !important;
    border-left: 0 !important;
    border-top: 1px solid rgba(18,54,96,.12) !important;
  }
}

/* Player modern v1.4.0: centered hero, compact profile facts and match archive controls. */
.player-modern-hero-summary {
  grid-template-columns: minmax(11.75rem, 1fr) minmax(0, 1.45fr) minmax(11.75rem, 1fr) !important;
}

.player-modern-hero-summary__portrait {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  justify-self: stretch !important;
}

.player-modern-hero-summary__identity {
  min-width: 0 !important;
  text-align: center !important;
}

.player-modern-hero-summary__career {
  justify-self: stretch !important;
  text-align: right !important;
}

.player-modern-hero-summary__career strong {
  margin-left: auto !important;
}

.player-modern-navigation__icon {
  display: none !important;
  width: 1.15rem !important;
  height: 1.15rem !important;
  flex: 0 0 1.15rem !important;
  place-items: center !important;
  color: currentColor !important;
}

.player-modern-navigation__icon svg {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 2 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

/* The biography sidebar uses one shared fact card instead of separate fact tiles. */
.player-page .player-profile-details.is-in-biography {
  padding: .72rem .8rem !important;
}

.player-biography-facts__heading {
  margin-bottom: .42rem !important;
}

.player-biography-sidebar .player-profile-details #inners,
.player-biography-sidebar .player-profile-details #inners.is-enhanced {
  gap: 0 !important;
}

.player-biography-sidebar .player-profile-details #inners .player-profile__fact,
.player-biography-sidebar .player-profile-details #inners .player-profile__fact.is-primary,
.player-biography-sidebar .player-profile-details #inners .player-profile__fact.is-achievement {
  grid-template-columns: 1.55rem minmax(0, 1fr) !important;
  gap: .48rem !important;
  padding: .46rem .08rem !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(18,54,96,.085) !important;
  border-radius: 0 !important;
  background: transparent !important;
  font-size: .72rem !important;
  line-height: 1.35 !important;
}

.player-biography-sidebar .player-profile-details #inners .player-profile__fact:last-child {
  border-bottom: 0 !important;
}

.player-biography-sidebar .player-profile__fact-icon {
  width: 1.55rem !important;
  height: 1.55rem !important;
  border-radius: .44rem !important;
}

.player-biography-sidebar .player-profile__fact-icon svg {
  width: .92rem !important;
  height: .92rem !important;
}

.player-biography-sidebar .player-profile__fact-body {
  padding-top: .02rem !important;
}

/* Match filtering keeps many options readable without turning each filter into a full-width row. */
.player-match-toolbar {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  align-items: end !important;
}

.player-match-toolbar .player-archive-control--search {
  grid-column: span 2 !important;
}

.player-archive-check {
  display: flex !important;
  min-height: 2.35rem !important;
  align-items: center !important;
  gap: .55rem !important;
  margin: 0 !important;
  padding: .42rem .55rem !important;
  border: 1px solid rgba(18,54,96,.12) !important;
  border-radius: .58rem !important;
  background: #fff !important;
  color: var(--player-ink) !important;
  cursor: pointer !important;
}

.player-page .player-archive-check input {
  width: 1rem !important;
  height: 1rem !important;
  flex: 0 0 1rem !important;
  margin: 0 !important;
  accent-color: var(--player-blue) !important;
}

.player-archive-check > span {
  display: grid !important;
  min-width: 0 !important;
  gap: .06rem !important;
}

.player-archive-check strong {
  color: var(--player-ink) !important;
  font-size: .72rem !important;
  font-weight: 850 !important;
  line-height: 1.15 !important;
}

.player-archive-check small {
  color: var(--player-muted) !important;
  font-size: .61rem !important;
  line-height: 1.2 !important;
}

.player-match-head-actions {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: .7rem !important;
}

.player-match-view-toggle {
  display: inline-flex !important;
  align-items: center !important;
  gap: .2rem !important;
  padding: .2rem !important;
  border: 1px solid rgba(18,54,96,.12) !important;
  border-radius: .62rem !important;
  background: #f2f5f9 !important;
}

.player-page .player-match-view-toggle a,
.player-page .player-match-view-toggle button {
  display: inline-flex !important;
  min-height: 2rem !important;
  align-items: center !important;
  justify-content: center !important;
  gap: .3rem !important;
  padding: .38rem .52rem !important;
  border-radius: .46rem !important;
  color: #5a6d83 !important;
  font-size: .68rem !important;
  font-weight: 850 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  border: 0 !important;
  background: transparent !important;
  font-family: inherit !important;
  cursor: pointer !important;
}

.player-page .player-match-view-toggle a.is-active,
.player-page .player-match-view-toggle button.is-active {
  background: #fff !important;
  color: var(--player-blue) !important;
  box-shadow: 0 .12rem .35rem rgba(16,36,59,.1) !important;
}

.player-match-view-toggle svg {
  width: .92rem !important;
  height: .92rem !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 1.8 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

.player-match-card--bench .ifk-match-card__date::after {
  content: "Bänk" !important;
  display: inline-flex !important;
  width: max-content !important;
  margin-top: .28rem !important;
  padding: .17rem .38rem !important;
  border-radius: 999px !important;
  background: #e8edf4 !important;
  color: #52647a !important;
  font-size: .58rem !important;
  font-weight: 900 !important;
  letter-spacing: .045em !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
}

.player-match-compact-list {
  overflow: hidden !important;
  border: 1px solid var(--player-border) !important;
  border-radius: .82rem !important;
  background: #fff !important;
}

.player-page .player-match-compact-row {
  position: relative !important;
  display: grid !important;
  grid-template-columns: 8.4rem minmax(9rem, .8fr) minmax(18rem, 1.5fr) minmax(9rem, .8fr) auto 1rem !important;
  align-items: center !important;
  gap: .75rem !important;
  min-height: 4.2rem !important;
  padding: .65rem .8rem !important;
  border-bottom: 1px solid rgba(18,54,96,.09) !important;
  color: var(--player-ink) !important;
  text-decoration: none !important;
}

.player-page .player-match-compact-row:last-child {
  border-bottom: 0 !important;
}

.player-page .player-match-compact-row:hover {
  background: #f7f9fc !important;
}

.player-match-compact-row::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 auto 0 0 !important;
  width: 3px !important;
  background: #90a0b2 !important;
}

.player-match-compact-row.is-w::before { background: #138a52 !important; }
.player-match-compact-row.is-d::before { background: #c68b17 !important; }
.player-match-compact-row.is-l::before { background: #c84b4b !important; }

.player-match-compact-row time {
  display: grid !important;
  gap: .12rem !important;
}

.player-match-compact-row time strong,
.player-match-compact-row__competition strong {
  color: var(--player-ink) !important;
  font-size: .72rem !important;
  font-weight: 850 !important;
  line-height: 1.2 !important;
}

.player-match-compact-row time span,
.player-match-compact-row__competition small,
.player-match-compact-row__venue {
  color: var(--player-muted) !important;
  font-size: .64rem !important;
  line-height: 1.25 !important;
}

.player-match-compact-row__competition {
  display: grid !important;
  min-width: 0 !important;
  gap: .1rem !important;
}

.player-match-compact-row__fixture {
  display: grid !important;
  min-width: 0 !important;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) !important;
  align-items: center !important;
  gap: .55rem !important;
  text-align: center !important;
}

.player-match-compact-row__fixture > span {
  overflow: hidden !important;
  color: #30445e !important;
  font-size: .73rem !important;
  font-weight: 750 !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.player-match-compact-row__fixture > span:first-child { text-align: right !important; }
.player-match-compact-row__fixture > span:last-child { text-align: left !important; }

.player-match-compact-row__fixture > strong {
  min-width: 3.2rem !important;
  color: var(--player-blue) !important;
  font-size: 1rem !important;
  font-weight: 950 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

.player-match-compact-row__bench {
  display: inline-flex !important;
  grid-column: 5 !important;
  align-items: center !important;
  justify-content: center !important;
  padding: .22rem .42rem !important;
  border-radius: 999px !important;
  background: #e8edf4 !important;
  color: #52647a !important;
  font-size: .58rem !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
}

.player-match-compact-row__arrow {
  grid-column: 6 !important;
  color: #73859a !important;
  font-size: 1rem !important;
  font-weight: 900 !important;
}

@media (max-width: 72rem) {
  .player-modern-hero-summary {
    grid-template-columns: minmax(10rem, 1fr) minmax(0, 1.35fr) minmax(10rem, 1fr) !important;
  }

  .player-match-toolbar {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  .player-match-toolbar .player-archive-control--search {
    grid-column: span 2 !important;
  }

  .player-page .player-match-compact-row {
    grid-template-columns: 7.5rem minmax(8rem, .75fr) minmax(16rem, 1.5fr) auto 1rem !important;
  }

  .player-match-compact-row__venue {
    display: none !important;
  }

  .player-match-compact-row__bench {
    grid-column: 4 !important;
  }

  .player-match-compact-row__arrow {
    grid-column: 5 !important;
  }
}

@media (max-width: 47.99rem) {
  .player-modern-navigation {
    overflow: hidden !important;
  }

  .player-modern-navigation__players {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: .2rem !important;
  }

  .player-page .player-modern-navigation__button {
    min-height: 2.45rem !important;
    padding: .42rem !important;
  }

  .player-page .player-modern-navigation__button strong,
  .player-page .player-modern-navigation__button--all > span:not(.player-modern-navigation__icon) {
    display: none !important;
  }

  .player-page .player-modern-navigation__icon,
  .player-page .player-modern-navigation__button--all > .player-modern-navigation__icon {
    display: grid !important;
    width: 1.25rem !important;
    height: 1.25rem !important;
    flex-basis: 1.25rem !important;
  }

  .player-modern-hero-summary__identity,
  .player-modern-hero-summary__career,
  .player-modern-hero-summary__portrait {
    text-align: center !important;
  }

  .player-modern-hero-summary__portrait {
    justify-content: center !important;
  }

  .player-modern-hero-summary__career {
    justify-self: stretch !important;
  }

  .player-modern-hero__fact {
    text-align: center !important;
  }

  .player-modern-tabs {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: .22rem !important;
  }

  .player-page .player-modern-tabs button {
    min-height: 2.35rem !important;
    justify-content: center !important;
    gap: .24rem !important;
    padding: .42rem .3rem !important;
    font-size: .73rem !important;
  }

  .player-modern-tab-count {
    display: inline-grid !important;
    min-width: 1.15rem !important;
    height: 1.15rem !important;
    padding-inline: .2rem !important;
    font-size: .58rem !important;
  }

  .player-match-head-actions {
    width: 100% !important;
    justify-content: space-between !important;
  }

  .player-match-toolbar {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .player-match-toolbar .player-archive-control--search {
    grid-column: 1 / -1 !important;
  }

  .player-match-toolbar .player-archive-actions {
    grid-column: 1 / -1 !important;
  }

  .player-page .player-match-compact-row {
    grid-template-columns: 6.4rem minmax(0, 1fr) auto !important;
    gap: .55rem !important;
    min-height: 4.4rem !important;
    padding: .62rem .7rem !important;
  }

  .player-match-compact-row time {
    grid-column: 1 !important;
    grid-row: 1 / span 2 !important;
  }

  .player-match-compact-row__competition {
    grid-column: 2 !important;
    grid-row: 2 !important;
  }

  .player-match-compact-row__fixture {
    grid-column: 2 !important;
    grid-row: 1 !important;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) !important;
  }

  .player-match-compact-row__venue {
    display: none !important;
  }

  .player-match-compact-row__bench {
    grid-column: 3 !important;
    grid-row: 2 !important;
  }

  .player-match-compact-row__arrow {
    grid-column: 3 !important;
    grid-row: 1 !important;
  }
}

@media (max-width: 30rem) {
  .player-match-toolbar {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .player-match-toolbar .player-archive-control,
  .player-match-toolbar .player-archive-control--search,
  .player-match-toolbar .player-archive-check,
  .player-match-toolbar .player-archive-actions {
    grid-column: 1 !important;
  }

  .player-page .player-match-view-toggle a span,
  .player-page .player-match-view-toggle button span {
    display: none !important;
  }

  .player-page .player-match-view-toggle a,
.player-page .player-match-view-toggle button {
    width: 2rem !important;
    padding-inline: .42rem !important;
  }
}

@media (max-width: 23rem) {
  .player-modern-tab-count {
    display: none !important;
  }
}

/* Player modern v1.4.1: fact spacing and statistics readability. */
.player-page .player-profile-details.is-in-biography {
  padding: .95rem 1rem !important;
}

.player-biography-facts__heading {
  margin-bottom: .58rem !important;
}

.player-biography-sidebar .player-profile-details #inners .player-profile__fact,
.player-biography-sidebar .player-profile-details #inners .player-profile__fact.is-primary,
.player-biography-sidebar .player-profile-details #inners .player-profile__fact.is-achievement {
  padding: .5rem .18rem !important;
}

.player-stats-kpis article span {
  font-size: .75rem !important;
}

.player-chart-card header span {
  font-size: .74rem !important;
}

.player-season-bars__label {
  font-size: .68rem !important;
}

.player-chart-legend,
.player-competition-bars__heading {
  font-size: .78rem !important;
}

.player-result-summary > div {
  font-size: .8rem !important;
}

.player-result-summary strong {
  font-size: .88rem !important;
}

.player-page #statistik table {
  font-size: .84rem !important;
}

.player-page #statistik table th {
  font-size: .75rem !important;
}

.player-page #statistik table td {
  font-size: .82rem !important;
  line-height: 1.45 !important;
}

.player-page .player-stat-scope button,
.player-page .player-stat-scope button:hover,
.player-page .player-stat-scope button:focus,
.player-page .player-stat-scope button:active {
  font-size: .82rem !important;
}


/* Player modern v1.4.2: single-label biography sidebar headings. */
.player-more-portraits header p,
.player-biography-facts__heading > span {
  margin: 0 0 .65rem !important;
  color: var(--player-blue) !important;
  font-size: .64rem !important;
  font-weight: 900 !important;
  letter-spacing: .085em !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
}

.player-biography-facts__heading {
  display: block !important;
  margin: 0 !important;
}

.player-biography-facts__heading > strong,
.player-more-portraits header h3 {
  display: none !important;
}

/* Player modern v1.4.3: align biography fact card with portrait card. */
.player-biography-facts-slot {
  width: 100% !important;
  padding: .85rem !important;
  border: 1px solid var(--player-border) !important;
  border-radius: .85rem !important;
  background: #f7f9fc !important;
  box-shadow: none !important;
}

.player-page .player-biography-facts-slot .player-profile-details.is-in-biography {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.player-biography-facts__heading {
  display: block !important;
  margin: 0 0 .65rem !important;
  padding: 0 !important;
}

.player-biography-facts__heading > span {
  display: block !important;
  margin: 0 !important;
}

.player-biography-sidebar .player-profile-details #inners .player-profile__fact,
.player-biography-sidebar .player-profile-details #inners .player-profile__fact.is-primary,
.player-biography-sidebar .player-profile-details #inners .player-profile__fact.is-achievement,
.player-biography-sidebar .player-profile-details #inners .player-profile__fact.is-link {
  align-items: center !important;
}

.player-biography-sidebar .player-profile__fact-icon {
  align-self: center !important;
}

.player-biography-sidebar .player-profile__fact-body {
  align-self: center !important;
  padding-top: 0 !important;
}


/* Player modern v1.4.4: unified tab headings and season-style statistics layout. */
body.player-page .player-tab-heading,
body.player-page .player-external-news__heading {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  align-items: flex-end !important;
  margin: 0 0 1rem !important;
  padding: 0 !important;
}

body.player-page .player-tab-heading h2,
body.player-page .player-external-news__heading h3 {
  margin: 0 !important;
  color: var(--player-ink) !important;
  font-size: clamp(1.25rem, 3vw, 1.8rem) !important;
  font-weight: 900 !important;
  line-height: 1.15 !important;
  text-align: left !important;
}

body.player-page .player-external-news__eyebrow {
  display: block !important;
  margin: 0 0 .3rem !important;
  color: var(--player-blue) !important;
  font-size: .726rem !important;
  font-weight: 900 !important;
  letter-spacing: .1em !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
}

/* The statistics tab follows the open hierarchy used by the season overview.
   KPI and chart components remain cards, but there is no surrounding card around them. */
body.player-page #statistik .player-stats-dashboard {
  width: 100% !important;
  max-width: none !important;
  margin: 0 0 1.35rem !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.player-page #statistik .player-stats-dashboard__header {
  display: flex !important;
  justify-content: space-between !important;
  gap: 1rem !important;
}

body.player-page #statistik .player-stats-dashboard__header > div:first-child {
  min-width: 0 !important;
}

body.player-page #statistik .player-stats-dashboard__header .player-modern-eyebrow {
  margin-bottom: .3rem !important;
}

body.player-page #statistik .player-stats-kpis {
  margin-top: 0 !important;
}

body.player-page #statistik .player-stats-visuals {
  margin-top: 1rem !important;
}

body.player-page #statistik .player-stats-detail-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 1.25rem 1rem !important;
  margin-top: 1.5rem !important;
}

body.player-page #statistik .player-stat-section {
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.player-page #statistik .player-stat-section--wide {
  grid-column: 1 / -1 !important;
}

body.player-page #statistik .player-stat-section > h3 {
  margin: 0 0 .58rem !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: var(--player-ink) !important;
  font-size: 1.08rem !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
}

body.player-page #statistik .player-stat-section > .player-table-scroll {
  overflow-x: auto !important;
  border: 1px solid var(--player-border) !important;
  border-radius: .8rem !important;
  background: #fff !important;
}

body.player-page #statistik .player-stat-section table {
  border-radius: 0 !important;
}

/* Biography sidebar headings are actual section titles, not eyebrow labels. */
body.player-page .player-more-portraits header p,
body.player-page .player-biography-facts__heading > span {
  margin: 0 0 .72rem !important;
  color: var(--player-ink) !important;
  font-size: 1.08rem !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
  line-height: 1.15 !important;
  text-transform: none !important;
}

.player-portrait-heading-mobile {
  display: none !important;
}

/* External news uses the full available tab width. */
body.player-page #externa-nyheter,
body.player-page #externa-nyheter .player-external-news,
body.player-page #externa-nyheter .ifk-news-grid {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
}

body.player-page #externa-nyheter .player-external-news {
  margin: 0 !important;
}

body.player-page #externa-nyheter .ifk-news-grid {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 18rem), 1fr)) !important;
}

@media (max-width: 47.99rem) {
  body.player-page .player-tab-heading,
  body.player-page .player-external-news__heading,
  body.player-page #statistik .player-stats-dashboard__header {
    align-items: flex-start !important;
    flex-direction: column !important;
  }

  body.player-page #statistik .player-stats-detail-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body.player-page #statistik .player-stat-section--wide {
    grid-column: auto !important;
  }

  .player-portrait-heading-desktop {
    display: none !important;
  }

  .player-portrait-heading-mobile {
    display: inline !important;
  }
}

/* Player modern v1.4.5: statistics tables, biography typography and season chart. */
body.player-page .player-modern-eyebrow,
body.player-page .player-external-news__eyebrow {
  font-size: .75rem !important;
  font-weight: 900 !important;
  letter-spacing: .1em !important;
  line-height: 1.2 !important;
}

body.player-page #statistik .player-stats-dashboard__header p.player-modern-eyebrow {
  margin: 0 0 .3rem !important;
  color: var(--player-blue) !important;
  font-size: .75rem !important;
  font-weight: 900 !important;
  letter-spacing: .1em !important;
  line-height: 1.2 !important;
  text-align: left !important;
  text-transform: uppercase !important;
}

body.player-page #biografi .player-biography-copy .bio,
body.player-page #biografi .player-biography-copy p {
  font-size: .94rem !important;
  line-height: 1.76 !important;
}

body.player-page #statistik .player-stat-section > .player-table-scroll,
body.player-page #statistik .player-table-scroll {
  width: 100% !important;
  max-width: 100% !important;
  overflow: visible !important;
  scrollbar-width: none !important;
}

body.player-page #statistik .player-table-scroll::-webkit-scrollbar {
  display: none !important;
}

body.player-page #statistik .player-stat-section table,
body.player-page #statistik .player-table-scroll table,
body.player-page #statistik table.tg {
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  table-layout: fixed !important;
}

body.player-page #statistik table th,
body.player-page #statistik table td {
  min-width: 0 !important;
  overflow-wrap: anywhere !important;
  word-break: normal !important;
}

body.player-page #statistik .player-chart--seasons {
  overflow: visible !important;
  padding-bottom: 0 !important;
}

.player-season-line-wrap {
  width: 100% !important;
  min-width: 0 !important;
  overflow: hidden !important;
}

.player-season-line {
  display: block !important;
  width: 100% !important;
  height: 12rem !important;
  overflow: visible !important;
}

.player-season-line__grid {
  stroke: rgba(18, 54, 96, .11) !important;
  stroke-width: 1 !important;
  vector-effect: non-scaling-stroke !important;
}

.player-season-line__series {
  fill: none !important;
  stroke-width: 2.4 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
  vector-effect: non-scaling-stroke !important;
}

.player-season-line__series--matches {
  stroke: var(--player-blue) !important;
}

.player-season-line__series--secondary {
  stroke: #d8a72f !important;
}

.player-season-line__point {
  fill: #fff !important;
  stroke-width: 2 !important;
  vector-effect: non-scaling-stroke !important;
}

.player-season-line__point--matches {
  stroke: var(--player-blue) !important;
}

.player-season-line__point--secondary {
  stroke: #d8a72f !important;
}

.player-season-line__axis-label,
.player-season-line__season-label {
  fill: var(--player-muted) !important;
  font-family: inherit !important;
  font-weight: 800 !important;
}

.player-season-line__axis-label {
  font-size: 10px !important;
}

.player-season-line__season-label {
  font-size: 10px !important;
}

.player-biography-namesake {
  width: 100% !important;
  margin: .85rem 0 0 !important;
}

.player-biography-namesake .namne {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: .72rem .8rem !important;
  border-color: rgba(18, 54, 96, .12) !important;
  background: #eef4fb !important;
  color: #405166 !important;
  font-size: .76rem !important;
  line-height: 1.5 !important;
  text-align: left !important;
}

@media (max-width: 44rem) {
  body.player-page #biografi .player-biography-copy .bio,
  body.player-page #biografi .player-biography-copy p {
    font-size: .91rem !important;
    line-height: 1.72 !important;
  }

  .player-season-line {
    height: 10.8rem !important;
  }
}

/* Player modern v1.4.6: compact hero, scoped season data and biography records. */
body.player-page .player-modern-hero-summary__career strong.player-modern-hero-summary__matches {
  display: block !important;
  margin-top: .24rem !important;
  color: #fff !important;
  font-family: "Francois One", "Arial Narrow", sans-serif !important;
  font-size: clamp(2.15rem, 4.7vw, 4rem) !important;
  font-weight: 400 !important;
  letter-spacing: .01em !important;
  line-height: .94 !important;
  white-space: nowrap !important;
}

body.player-page .player-modern-hero-summary__career strong.player-modern-hero-summary__matches em {
  font-family: inherit !important;
  font-size: .42em !important;
  font-style: normal !important;
  font-weight: 400 !important;
  letter-spacing: .02em !important;
  vertical-align: .18em !important;
}

body.player-page .player-modern-hero__fact--career strong {
  white-space: normal !important;
}

body.player-page .player-season-line__axis-label {
  font-size: 14px !important;
  font-weight: 900 !important;
}

body.player-page .player-season-line__season-label {
  font-size: 13px !important;
  font-weight: 900 !important;
}

body.player-page .player-season-line {
  height: 13.25rem !important;
}

body.player-page .player-season-statistics {
  width: 100% !important;
  min-width: 0 !important;
  margin: 1.2rem 0 0 !important;
  padding-top: 1rem !important;
  border-top: 1px solid var(--player-border) !important;
}

body.player-page .player-season-statistics__head {
  display: flex !important;
  align-items: flex-end !important;
  justify-content: space-between !important;
  gap: 1rem !important;
  margin: 0 0 .65rem !important;
}

body.player-page .player-season-statistics__head > div > span {
  display: block !important;
  margin-bottom: .18rem !important;
  color: var(--player-blue) !important;
  font-size: .72rem !important;
  font-weight: 900 !important;
  letter-spacing: .09em !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
}

body.player-page .player-season-statistics__head h3 {
  margin: 0 !important;
  color: var(--player-ink) !important;
  font-size: 1.12rem !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
}

body.player-page .player-season-statistics__head > strong {
  color: var(--player-muted) !important;
  font-size: .76rem !important;
  font-weight: 850 !important;
  line-height: 1.2 !important;
  text-align: right !important;
}

body.player-page .player-season-statistics__table-wrap {
  width: 100% !important;
  min-width: 0 !important;
  overflow: visible !important;
  border: 1px solid var(--player-border) !important;
  border-radius: .8rem !important;
  background: #fff !important;
}

body.player-page .player-season-statistics__table {
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  border-collapse: collapse !important;
  table-layout: fixed !important;
  font-size: .78rem !important;
  line-height: 1.25 !important;
}

body.player-page .player-season-statistics__table th,
body.player-page .player-season-statistics__table td {
  min-width: 0 !important;
  padding: .62rem .42rem !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(18, 54, 96, .09) !important;
  color: var(--player-ink) !important;
  text-align: center !important;
  vertical-align: middle !important;
  white-space: nowrap !important;
}

body.player-page .player-season-statistics__table thead th {
  background: #f3f7fb !important;
  color: #536579 !important;
  font-size: .7rem !important;
  font-weight: 900 !important;
  letter-spacing: .035em !important;
  text-transform: uppercase !important;
}

body.player-page .player-season-statistics__table thead th:first-child,
body.player-page .player-season-statistics__table tbody th {
  width: 11.5% !important;
  text-align: left !important;
}

body.player-page .player-season-statistics__table .is-number {
  width: 5.5% !important;
}

body.player-page .player-season-statistics__table .is-results {
  width: 10.5% !important;
  font-variant-numeric: tabular-nums !important;
}

body.player-page .player-season-statistics__table tbody tr:last-child th,
body.player-page .player-season-statistics__table tbody tr:last-child td {
  border-bottom: 0 !important;
}

body.player-page .player-season-statistics__table tbody tr:hover th,
body.player-page .player-season-statistics__table tbody tr:hover td {
  background: #f7faff !important;
}

body.player-page .player-season-statistics__table tbody th {
  font-weight: 900 !important;
}

body.player-page .player-season-statistics__table tbody th a {
  color: var(--player-blue) !important;
  text-decoration: none !important;
}

body.player-page .player-season-statistics__table td strong {
  color: var(--player-ink) !important;
  font-weight: 950 !important;
}

body.player-page .player-season-statistics__empty {
  padding: 1.1rem !important;
  color: var(--player-muted) !important;
  text-align: left !important;
  white-space: normal !important;
}

body.player-page .player-biography-records {
  display: grid !important;
  width: 100% !important;
  min-width: 0 !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 1rem !important;
  margin: 1.35rem 0 0 !important;
  padding-top: 1.25rem !important;
  border-top: 1px solid var(--player-border) !important;
}

body.player-page .player-record-panel {
  min-width: 0 !important;
  overflow: hidden !important;
  border: 1px solid var(--player-border) !important;
  border-radius: .9rem !important;
  background: #fff !important;
}

body.player-page .player-record-panel__head {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: .72rem !important;
  padding: .9rem 1rem !important;
  border-bottom: 1px solid rgba(18, 54, 96, .1) !important;
  background: linear-gradient(135deg, #f7faff 0%, #edf4fb 100%) !important;
}

body.player-page .player-record-panel__icon {
  display: grid !important;
  width: 2.3rem !important;
  height: 2.3rem !important;
  place-items: center !important;
  border-radius: .65rem !important;
  background: var(--player-blue) !important;
  color: #fff !important;
}

body.player-page .player-record-panel__icon svg {
  width: 1.35rem !important;
  height: 1.35rem !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
  stroke-width: 1.8 !important;
}

body.player-page .player-record-panel__head div > span {
  display: block !important;
  margin-bottom: .14rem !important;
  color: var(--player-blue) !important;
  font-size: .66rem !important;
  font-weight: 900 !important;
  letter-spacing: .085em !important;
  line-height: 1.15 !important;
  text-transform: uppercase !important;
}

body.player-page .player-record-panel__head h3 {
  margin: 0 !important;
  color: var(--player-ink) !important;
  font-size: 1.08rem !important;
  font-weight: 950 !important;
  line-height: 1.15 !important;
}

body.player-page .player-record-panel__head > strong {
  display: grid !important;
  min-width: 2rem !important;
  height: 2rem !important;
  place-items: center !important;
  padding: 0 .48rem !important;
  border-radius: 999px !important;
  background: #fff !important;
  color: var(--player-blue) !important;
  font-size: .78rem !important;
  font-weight: 950 !important;
  box-shadow: inset 0 0 0 1px rgba(18, 54, 96, .12) !important;
}

body.player-page .player-record-list {
  display: grid !important;
  margin: 0 !important;
  padding: .2rem 1rem !important;
  list-style: none !important;
}

body.player-page .player-record-list li {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: .8rem !important;
  margin: 0 !important;
  padding: .72rem 0 !important;
  border-bottom: 1px solid rgba(18, 54, 96, .085) !important;
}

body.player-page .player-record-list li:last-child {
  border-bottom: 0 !important;
}

body.player-page .player-record-list__name {
  min-width: 0 !important;
  color: #33475e !important;
  font-size: .8rem !important;
  font-weight: 750 !important;
  line-height: 1.4 !important;
}

body.player-page .player-record-list__name a {
  color: var(--player-blue) !important;
  text-decoration: none !important;
}

body.player-page .player-record-list__value,
body.player-page .player-record-list__rank {
  display: inline-flex !important;
  min-width: 2.8rem !important;
  min-height: 1.85rem !important;
  align-items: center !important;
  justify-content: center !important;
  padding: .28rem .56rem !important;
  border-radius: .55rem !important;
  background: #eaf2fb !important;
  color: var(--player-blue) !important;
  font-size: .76rem !important;
  font-weight: 950 !important;
  line-height: 1.15 !important;
  text-align: center !important;
  white-space: nowrap !important;
}

body.player-page .player-record-list__rank {
  background: #f2f4f7 !important;
  color: #405166 !important;
}

body.player-page .player-record-panel__note {
  margin: 0 !important;
  padding: .65rem 1rem .8rem !important;
  border-top: 1px solid rgba(18, 54, 96, .08) !important;
  color: var(--player-muted) !important;
  font-size: .68rem !important;
  line-height: 1.45 !important;
}

@media (max-width: 47.99rem) {
  body.player-page .player-modern-hero-summary__career {
    text-align: center !important;
  }

  body.player-page .player-modern-hero-summary__career strong.player-modern-hero-summary__matches {
    font-size: clamp(1.85rem, 7vw, 2.7rem) !important;
  }

  body.player-page .player-season-statistics__head {
    align-items: flex-start !important;
    flex-direction: column !important;
    gap: .25rem !important;
  }

  body.player-page .player-season-statistics__head > strong {
    text-align: left !important;
  }

  body.player-page .player-season-statistics__table {
    font-size: .74rem !important;
  }

  body.player-page .player-season-statistics__table .is-detail,
  body.player-page .player-season-statistics__table .is-number {
    display: none !important;
  }

  body.player-page .player-season-statistics__table thead th:first-child,
  body.player-page .player-season-statistics__table tbody th {
    width: 28% !important;
  }

  body.player-page .player-season-statistics__table .is-results {
    width: 25% !important;
  }

  body.player-page .player-biography-records {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body.player-page .player-season-line__axis-label {
    font-size: 16px !important;
  }

  body.player-page .player-season-line__season-label {
    font-size: 15px !important;
  }
}

@media (max-width: 30rem) {
  body.player-page .player-modern-hero-summary__career {
    text-align: center !important;
  }

  body.player-page .player-season-statistics__table th,
  body.player-page .player-season-statistics__table td {
    padding: .56rem .28rem !important;
  }

  body.player-page .player-record-panel__head {
    padding-inline: .8rem !important;
  }

  body.player-page .player-record-list {
    padding-inline: .8rem !important;
  }
}

/* Player modern v1.4.7: tighter statistics, biography transfers and scoped win percentage. */
body.player-page #statistik .player-stats-dashboard {
  margin-top: -2px !important;
}

body.player-page .player-modern-hero-summary__career {
  display: flex !important;
  min-width: 0 !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  justify-content: center !important;
}

body.player-page .player-modern-hero-summary__career .player-modern-hero-summary__label {
  margin: 0 0 .38rem !important;
}

body.player-page .player-modern-hero-summary__career strong.player-modern-hero-summary__matches {
  margin: 0 0 0 auto !important;
  font-size: clamp(2.4rem, 5vw, 4.35rem) !important;
  line-height: .88 !important;
}

body.player-page .player-modern-hero-summary__identity small.player-modern-hero-summary__honour {
  color: #fff !important;
  font-weight: 900 !important;
  letter-spacing: .02em !important;
}

body.player-page .player-legacy-stats {
  display: none !important;
}

body.player-page .player-biography-transfers {
  width: 100% !important;
  min-width: 0 !important;
  margin: 1.35rem 0 0 !important;
  padding-top: 1.25rem !important;
  border-top: 1px solid var(--player-border) !important;
}

body.player-page .player-biography-transfers__head {
  display: flex !important;
  align-items: flex-end !important;
  justify-content: space-between !important;
  gap: 1rem !important;
  margin: 0 0 .7rem !important;
}

body.player-page .player-biography-transfers__head span {
  display: block !important;
  margin: 0 0 .2rem !important;
  color: var(--player-blue) !important;
  font-size: .72rem !important;
  font-weight: 900 !important;
  letter-spacing: .09em !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
}

body.player-page .player-biography-transfers__head h3 {
  margin: 0 !important;
  color: var(--player-ink) !important;
  font-size: 1.16rem !important;
  font-weight: 950 !important;
  line-height: 1.15 !important;
}

body.player-page .player-biography-transfers__head > strong {
  display: grid !important;
  min-width: 2rem !important;
  height: 2rem !important;
  place-items: center !important;
  padding: 0 .5rem !important;
  border: 1px solid rgba(18, 54, 96, .12) !important;
  border-radius: 999px !important;
  background: #f4f7fb !important;
  color: var(--player-blue) !important;
  font-size: .78rem !important;
  font-weight: 950 !important;
}

body.player-page .player-transfer-list {
  overflow: hidden !important;
  border: 1px solid var(--player-border) !important;
  border-radius: .9rem !important;
  background: #fff !important;
}

body.player-page .player-transfer-row {
  display: grid !important;
  grid-template-columns: 7.2rem minmax(0, 1fr) minmax(8rem, auto) !important;
  align-items: center !important;
  gap: 1rem !important;
  margin: 0 !important;
  padding: .82rem 1rem !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(18, 54, 96, .09) !important;
  background: #fff !important;
}

body.player-page .player-transfer-row:last-child {
  border-bottom: 0 !important;
}

body.player-page .player-transfer-row time {
  color: var(--player-muted) !important;
  font-size: .76rem !important;
  font-weight: 800 !important;
  font-variant-numeric: tabular-nums !important;
}

body.player-page .player-transfer-row__route {
  display: grid !important;
  min-width: 0 !important;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) !important;
  align-items: center !important;
  gap: .7rem !important;
}

body.player-page .player-transfer-row__route > span {
  min-width: 0 !important;
}

body.player-page .player-transfer-row__route small {
  display: block !important;
  margin-bottom: .12rem !important;
  color: #7b8999 !important;
  font-size: .62rem !important;
  font-weight: 900 !important;
  letter-spacing: .06em !important;
  line-height: 1.15 !important;
  text-transform: uppercase !important;
}

body.player-page .player-transfer-row__route strong,
body.player-page .player-transfer-row__route a {
  display: block !important;
  overflow: hidden !important;
  color: var(--player-ink) !important;
  font-size: .82rem !important;
  font-weight: 850 !important;
  line-height: 1.3 !important;
  text-overflow: ellipsis !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}

body.player-page .player-transfer-row__route a {
  color: var(--player-blue) !important;
}

body.player-page .player-transfer-row__route > i {
  display: grid !important;
  width: 1.75rem !important;
  height: 1.75rem !important;
  place-items: center !important;
  border-radius: 999px !important;
  background: #eef4fb !important;
  color: var(--player-blue) !important;
}

body.player-page .player-transfer-row__route > i svg {
  width: 1rem !important;
  height: 1rem !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
  stroke-width: 1.9 !important;
}

body.player-page .player-transfer-row__meta {
  display: flex !important;
  min-width: 0 !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: .5rem !important;
}

body.player-page .player-transfer-row__meta span,
body.player-page .player-transfer-row__meta strong {
  display: inline-flex !important;
  min-height: 1.72rem !important;
  align-items: center !important;
  padding: .26rem .52rem !important;
  border-radius: 999px !important;
  font-size: .68rem !important;
  font-weight: 850 !important;
  line-height: 1.15 !important;
  white-space: nowrap !important;
}

body.player-page .player-transfer-row__meta span {
  background: #f0f3f7 !important;
  color: #526477 !important;
}

body.player-page .player-transfer-row__meta strong {
  background: #eaf2fb !important;
  color: var(--player-blue) !important;
}

body.player-page .player-win-chart {
  display: grid !important;
  min-height: 9.4rem !important;
  grid-template-columns: minmax(7.8rem, .8fr) minmax(0, 1.2fr) !important;
  align-items: center !important;
  gap: 1rem !important;
}

body.player-page .player-win-donut {
  position: relative !important;
  display: grid !important;
  width: min(8.8rem, 100%) !important;
  aspect-ratio: 1 !important;
  place-items: center !important;
  justify-self: center !important;
  border-radius: 50% !important;
  background: conic-gradient(var(--player-blue) 0 var(--player-win-percentage, 0%), #e5ebf2 var(--player-win-percentage, 0%) 100%) !important;
}

body.player-page .player-win-donut::after {
  position: absolute !important;
  width: 72% !important;
  aspect-ratio: 1 !important;
  border-radius: 50% !important;
  background: #fff !important;
  content: "" !important;
}

body.player-page .player-win-donut__centre {
  position: relative !important;
  z-index: 1 !important;
  display: grid !important;
  place-items: center !important;
  text-align: center !important;
}

body.player-page .player-win-donut__centre strong {
  color: var(--player-ink) !important;
  font-family: "Francois One", "Arial Narrow", sans-serif !important;
  font-size: clamp(1.7rem, 3.5vw, 2.35rem) !important;
  font-weight: 400 !important;
  line-height: .95 !important;
}

body.player-page .player-win-donut__centre span {
  margin-top: .2rem !important;
  color: var(--player-muted) !important;
  font-size: .62rem !important;
  font-weight: 900 !important;
  letter-spacing: .045em !important;
  line-height: 1.15 !important;
  text-transform: uppercase !important;
}

body.player-page .player-win-summary {
  min-width: 0 !important;
}

body.player-page .player-win-summary > p {
  margin: 0 0 .75rem !important;
  color: var(--player-muted) !important;
  font-size: .78rem !important;
  line-height: 1.45 !important;
}

body.player-page .player-win-summary > p strong {
  color: var(--player-ink) !important;
  font-weight: 950 !important;
}

body.player-page .player-win-summary__results {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: .4rem !important;
}

body.player-page .player-win-summary__results > span {
  display: grid !important;
  grid-template-columns: auto auto 1fr !important;
  align-items: center !important;
  gap: .32rem !important;
  padding: .42rem .46rem !important;
  border-radius: .55rem !important;
  background: #f4f7fa !important;
  color: #5b6c7e !important;
  font-size: .68rem !important;
  line-height: 1.15 !important;
}

body.player-page .player-win-summary__results i {
  width: .5rem !important;
  height: .5rem !important;
  border-radius: 50% !important;
  background: #8b99a8 !important;
}

body.player-page .player-win-summary__results .is-w i { background: #16824f !important; }
body.player-page .player-win-summary__results .is-d i { background: #d17a00 !important; }
body.player-page .player-win-summary__results .is-l i { background: #c43f3f !important; }

body.player-page .player-win-summary__results b {
  color: var(--player-muted) !important;
  font-weight: 900 !important;
}

body.player-page .player-win-summary__results strong {
  justify-self: end !important;
  color: var(--player-ink) !important;
  font-size: .76rem !important;
  font-weight: 950 !important;
}

@media (max-width: 47.99rem) {
  body.player-page .player-modern-hero-summary__career {
    align-items: center !important;
    text-align: center !important;
  }

  body.player-page .player-modern-hero-summary__career strong.player-modern-hero-summary__matches {
    margin-left: 0 !important;
  }

  body.player-page .player-transfer-row {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: .6rem !important;
  }

  body.player-page .player-transfer-row__meta {
    justify-content: flex-start !important;
  }

  body.player-page .player-win-chart {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body.player-page .player-win-summary {
    text-align: center !important;
  }
}

@media (max-width: 30rem) {
  body.player-page .player-transfer-row__route {
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) !important;
    gap: .45rem !important;
  }

  body.player-page .player-transfer-row__route strong,
  body.player-page .player-transfer-row__route a {
    font-size: .76rem !important;
  }
}

/* Player modern v1.5.0: responsive profile hierarchy and integrated hero portrait. */
body.player-page .player-modern-hero__top,
body.player-page .player-modern-hero-summary,
body.player-page .player-modern-hero__facts {
  z-index: 3 !important;
}

body.player-page .player-modern-hero__integrated-portrait,
body.player-page .player-modern-hero__integrated-portrait:hover,
body.player-page .player-modern-hero__integrated-portrait:focus,
body.player-page .player-modern-hero__integrated-portrait:active {
  appearance: none !important;
  position: absolute !important;
  z-index: 2 !important;
  top: 0 !important;
  bottom: -25px !important;
  left: 0 !important;
  display: block !important;
  width: clamp(10rem, 13vw, 12.8rem) !important;
  height: calc(100% + 25px) !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  cursor: zoom-in !important;
  transform: none !important;
  -webkit-mask-image: linear-gradient(90deg, #000 0%, #000 62%, rgba(0,0,0,.88) 74%, transparent 100%) !important;
  mask-image: linear-gradient(90deg, #000 0%, #000 62%, rgba(0,0,0,.88) 74%, transparent 100%) !important;
}

body.player-page .player-modern-hero__integrated-portrait:focus-visible {
  outline: 3px solid rgba(255,255,255,.72) !important;
  outline-offset: -4px !important;
}

body.player-page .player-modern-hero__integrated-portrait img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 !important;
  object-fit: cover !important;
  object-position: center top !important;
  filter: saturate(.92) contrast(1.04) !important;
  opacity: .94 !important;
}

body.player-page .player-modern-hero.has-integrated-portrait .player-modern-hero__top {
  padding-left: clamp(9.25rem, 12vw, 11.75rem) !important;
}

body.player-page .player-modern-hero-summary {
  grid-template-columns: minmax(0, 1fr) minmax(14rem, 1.45fr) minmax(0, 1fr) !important;
}

body.player-page .player-modern-hero-summary__balance {
  min-width: 0 !important;
}

body.player-page .player-modern-hero-summary__identity {
  width: 100% !important;
  min-width: 0 !important;
  justify-self: stretch !important;
  text-align: center !important;
}

body.player-page .player-modern-hero-summary__identity h1,
body.player-page .player-modern-hero-summary__identity h1.is-long,
body.player-page .player-modern-hero-summary__identity h1.is-very-long {
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
}

body.player-page .player-modern-hero__facts {
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
}

body.player-page .player-modern-hero__fact--matches {
  display: none !important;
}

body.player-page .player-more-portraits header p,
body.player-page .player-biography-facts__heading > span {
  font-size: 1.08rem !important;
}

body.player-page .player-more-portraits__grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

body.player-page .player-more-portraits--1 .player-more-portraits__grid {
  grid-template-columns: minmax(0, 1fr) !important;
}

body.player-page .player-more-portraits--2 .player-more-portraits__grid {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

body.player-page .player-biography-copy > .player-tab-heading {
  margin-top: 0 !important;
}

@media (max-width: 47.99rem) {
  body.player-page .player-modern-hero__integrated-portrait {
    display: none !important;
  }

  body.player-page .player-modern-hero.has-integrated-portrait .player-modern-hero__top {
    padding-left: .85rem !important;
  }

  body.player-page .player-modern-hero-summary {
    display: grid !important;
    min-height: 0 !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 0 !important;
    padding: .95rem .85rem 1rem !important;
  }

  body.player-page .player-modern-hero-summary__balance,
  body.player-page .player-modern-hero-summary__career {
    display: none !important;
  }

  body.player-page .player-modern-hero-summary__identity {
    grid-column: 1 !important;
    justify-self: stretch !important;
    text-align: center !important;
  }

  body.player-page .player-modern-hero-summary__identity .player-modern-hero-summary__label {
    text-align: center !important;
  }

  body.player-page .player-modern-hero-summary__identity h1,
  body.player-page .player-modern-hero-summary__identity h1.is-long,
  body.player-page .player-modern-hero-summary__identity h1.is-very-long {
    max-width: 100% !important;
    margin: .2rem auto 0 !important;
    font-size: clamp(2.25rem, 10.5vw, 3.65rem) !important;
    line-height: .94 !important;
    text-align: center !important;
  }

  body.player-page .player-modern-hero-summary__identity small {
    display: none !important;
  }

  body.player-page .player-modern-hero__facts {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body.player-page .player-modern-hero__fact--career {
    grid-column: 1 / -1 !important;
    min-height: 3.55rem !important;
    text-align: center !important;
  }

  body.player-page .player-modern-hero__fact--matches {
    display: grid !important;
  }

  body.player-page .player-modern-hero__fact:last-child {
    grid-column: 1 / -1 !important;
  }

  body.player-page .player-modern-hero__fact {
    min-height: 3.5rem !important;
    padding: .5rem .55rem !important;
    text-align: center !important;
  }

  body.player-page .player-biography-layout {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 1rem !important;
  }

  body.player-page .player-biography-sidebar {
    grid-row: 1 !important;
    width: 100% !important;
    gap: .75rem !important;
  }

  body.player-page .player-biography-copy {
    grid-row: 2 !important;
  }

  body.player-page .player-more-portraits {
    width: 100% !important;
  }

  body.player-page .player-more-portraits__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    justify-content: center !important;
    gap: .55rem !important;
  }

  body.player-page .player-more-portraits--1 .player-more-portraits__grid {
    width: min(9rem, 100%) !important;
    grid-template-columns: minmax(0, 1fr) !important;
    margin-inline: auto !important;
  }

  body.player-page .player-more-portraits--2 .player-more-portraits__grid {
    width: min(18rem, 100%) !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    margin-inline: auto !important;
  }

  body.player-page #statistik .player-stats-kpis {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: .65rem !important;
  }

  body.player-page #statistik .player-stats-visuals {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: .85rem !important;
  }

  body.player-page #statistik .player-chart-card,
  body.player-page #statistik .player-chart-card--results {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    padding: 1rem !important;
  }

  body.player-page #statistik .player-chart {
    width: 100% !important;
    min-width: 0 !important;
  }

  body.player-page .player-match-toolbar {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: .55rem !important;
  }

  body.player-page .player-match-toolbar .player-archive-control--search,
  body.player-page .player-match-toolbar .player-archive-actions {
    grid-column: 1 / -1 !important;
  }

  body.player-page .player-match-toolbar .player-archive-control,
  body.player-page .player-match-toolbar .player-archive-check {
    grid-column: auto !important;
    min-width: 0 !important;
  }

  body.player-page .player-match-compact-row {
    grid-template-columns: auto minmax(0, 1fr) auto !important;
    grid-template-rows: auto auto !important;
    gap: .48rem .65rem !important;
    min-height: 5.1rem !important;
    padding: .72rem .72rem .68rem !important;
  }

  body.player-page .player-match-compact-row__fixture {
    grid-column: 1 / -1 !important;
    grid-row: 1 !important;
    grid-template-columns: minmax(0, 1fr) minmax(2.8rem, auto) minmax(0, 1fr) !important;
    gap: .5rem !important;
    width: 100% !important;
  }

  body.player-page .player-match-compact-row__fixture > span {
    overflow: visible !important;
    font-size: .83rem !important;
    font-weight: 850 !important;
    line-height: 1.16 !important;
    text-overflow: clip !important;
    white-space: normal !important;
  }

  body.player-page .player-match-compact-row__fixture > strong {
    min-width: 2.8rem !important;
    font-size: 1.05rem !important;
  }

  body.player-page .player-match-compact-row time {
    display: flex !important;
    grid-column: 1 !important;
    grid-row: 2 !important;
    align-items: baseline !important;
    gap: .35rem !important;
  }

  body.player-page .player-match-compact-row time strong {
    font-size: .69rem !important;
  }

  body.player-page .player-match-compact-row time span {
    font-size: .62rem !important;
  }

  body.player-page .player-match-compact-row__competition {
    display: flex !important;
    grid-column: 2 !important;
    grid-row: 2 !important;
    min-width: 0 !important;
    align-items: baseline !important;
    gap: .3rem !important;
  }

  body.player-page .player-match-compact-row__competition strong {
    overflow: hidden !important;
    font-size: .67rem !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  body.player-page .player-match-compact-row__competition small {
    display: none !important;
  }

  body.player-page .player-match-compact-row__bench {
    grid-column: 3 !important;
    grid-row: 2 !important;
  }

  body.player-page .player-match-compact-row__arrow {
    display: none !important;
  }
}

@media (max-width: 30rem) {
  body.player-page .player-match-toolbar {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body.player-page .player-match-toolbar .player-archive-control--search,
  body.player-page .player-match-toolbar .player-archive-actions {
    grid-column: 1 / -1 !important;
  }

  body.player-page .player-match-toolbar .player-archive-control,
  body.player-page .player-match-toolbar .player-archive-check {
    grid-column: auto !important;
  }
}

body.player-page .player-modern-hero__top,
body.player-page .player-modern-hero-summary,
body.player-page .player-modern-hero__facts {
  pointer-events: none !important;
}

body.player-page .player-modern-hero__kamrat {
  pointer-events: auto !important;
}

/* Player modern v1.5.1: softer hero media, missing-data card and clearer statistics dashboard. */
body.player-page .player-modern-hero.has-image::after {
  background:
    linear-gradient(180deg, rgba(8, 29, 65, .32) 0%, rgba(8, 29, 65, .08) 24%, rgba(8, 29, 65, .06) 68%, rgba(8, 29, 65, .38) 100%),
    linear-gradient(90deg, rgba(15, 42, 90, .9) 0%, rgba(15, 42, 90, .76) 42%, rgba(15, 42, 90, .58) 100%) !important;
}

body.player-page .player-modern-hero.has-fallback-image .player-modern-hero__background {
  object-position: center center !important;
  filter: saturate(.72) contrast(1.02) brightness(.72) !important;
}

body.player-page .player-modern-hero.has-fallback-image::after {
  background:
    linear-gradient(180deg, rgba(8, 29, 65, .4) 0%, rgba(8, 29, 65, .14) 30%, rgba(8, 29, 65, .12) 67%, rgba(8, 29, 65, .46) 100%),
    linear-gradient(90deg, rgba(15, 42, 90, .92) 0%, rgba(15, 42, 90, .74) 52%, rgba(15, 42, 90, .62) 100%) !important;
}

body.player-page .player-modern-hero__integrated-portrait,
body.player-page .player-modern-hero__integrated-portrait:hover,
body.player-page .player-modern-hero__integrated-portrait:focus,
body.player-page .player-modern-hero__integrated-portrait:active {
  width: clamp(11.25rem, 15vw, 14.6rem) !important;
  cursor: default !important;
  pointer-events: none !important;
  -webkit-mask-image: radial-gradient(ellipse 115% 86% at 15% 50%, #000 0%, #000 45%, rgba(0,0,0,.94) 57%, rgba(0,0,0,.68) 70%, rgba(0,0,0,.28) 84%, transparent 100%) !important;
  mask-image: radial-gradient(ellipse 115% 86% at 15% 50%, #000 0%, #000 45%, rgba(0,0,0,.94) 57%, rgba(0,0,0,.68) 70%, rgba(0,0,0,.28) 84%, transparent 100%) !important;
}

body.player-page .player-modern-hero__integrated-portrait img {
  filter: saturate(.9) contrast(1.025) brightness(.93) !important;
  opacity: .9 !important;
}

body.player-page .player-modern-hero.has-integrated-portrait .player-modern-hero__top {
  padding-left: 1rem !important;
}

body.player-page .player-modern-hero__meta {
  position: relative !important;
  z-index: 4 !important;
  justify-content: flex-start !important;
  text-align: left !important;
  text-shadow: 0 1px 7px rgba(4, 19, 46, .7) !important;
}

body.player-page .player-missing-facts {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) !important;
  align-items: start !important;
  gap: .75rem !important;
  margin: 0 !important;
  padding: .9rem .95rem !important;
  border: 1px solid rgba(29, 66, 137, .14) !important;
  border-radius: .8rem !important;
  background: linear-gradient(135deg, #f4f8fd, #eef4fb) !important;
  color: var(--player-ink) !important;
  box-shadow: none !important;
  text-align: left !important;
}

body.player-page .player-missing-facts__icon {
  display: grid !important;
  width: 2rem !important;
  height: 2rem !important;
  place-items: center !important;
  border-radius: .62rem !important;
  background: #dfeaf8 !important;
  color: var(--player-blue) !important;
}

body.player-page .player-missing-facts__icon svg {
  width: 1.05rem !important;
  height: 1.05rem !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
  stroke-width: 1.8 !important;
}

body.player-page .player-missing-facts strong {
  display: block !important;
  margin: 0 0 .18rem !important;
  color: var(--player-blue-dark) !important;
  font-size: .82rem !important;
  font-weight: 950 !important;
  line-height: 1.2 !important;
}

body.player-page .player-missing-facts p {
  margin: 0 !important;
  color: #617286 !important;
  font-size: .73rem !important;
  line-height: 1.45 !important;
}

body.player-page #statistik .player-stats-dashboard {
  display: block !important;
}

body.player-page #statistik .player-stats-kpis {
  gap: .7rem !important;
}

body.player-page #statistik .player-stats-kpis > article {
  min-height: 5.4rem !important;
  padding: .9rem 1rem !important;
  border: 1px solid rgba(18, 54, 96, .1) !important;
  border-radius: .78rem !important;
  background: linear-gradient(180deg, #fff, #f7f9fc) !important;
  box-shadow: none !important;
}

body.player-page #statistik .player-stats-visuals {
  display: grid !important;
  grid-template-columns: repeat(12, minmax(0, 1fr)) !important;
  gap: .85rem !important;
  align-items: stretch !important;
}

body.player-page #statistik .player-chart-card {
  min-width: 0 !important;
  min-height: 0 !important;
  padding: 1rem 1.05rem !important;
  border: 1px solid rgba(18, 54, 96, .1) !important;
  border-radius: .8rem !important;
  background: #f8fafc !important;
  box-shadow: none !important;
}

body.player-page #statistik .player-chart-card:first-child {
  grid-column: span 8 !important;
}

body.player-page #statistik .player-chart-card--results {
  grid-column: span 4 !important;
}

body.player-page #statistik .player-chart-card:nth-child(2) {
  grid-column: span 7 !important;
}

body.player-page #statistik .player-chart-card--role {
  grid-column: span 5 !important;
}

body.player-page #statistik .player-chart-card header {
  margin-bottom: .85rem !important;
}

body.player-page #statistik .player-chart-card header span {
  color: var(--player-blue) !important;
  font-size: .7rem !important;
  font-weight: 900 !important;
  letter-spacing: .075em !important;
  text-transform: uppercase !important;
}

body.player-page #statistik .player-chart-card header h4 {
  margin-top: .18rem !important;
  color: var(--player-ink) !important;
  font-size: 1rem !important;
  font-weight: 950 !important;
  line-height: 1.18 !important;
}

body.player-page .player-role-chart {
  display: grid !important;
  min-height: 9.4rem !important;
  grid-template-columns: minmax(7.5rem, .82fr) minmax(0, 1.18fr) !important;
  align-items: center !important;
  gap: 1rem !important;
}

body.player-page .player-role-donut {
  position: relative !important;
  display: grid !important;
  width: min(8.6rem, 100%) !important;
  aspect-ratio: 1 !important;
  place-items: center !important;
  justify-self: center !important;
  border-radius: 50% !important;
  background: conic-gradient(#d8a72f 0 var(--player-start-percentage, 0%), #e5ebf2 var(--player-start-percentage, 0%) 100%) !important;
}

body.player-page .player-role-donut::after {
  position: absolute !important;
  width: 72% !important;
  aspect-ratio: 1 !important;
  border-radius: 50% !important;
  background: #f8fafc !important;
  content: "" !important;
}

body.player-page .player-role-donut__centre {
  position: relative !important;
  z-index: 1 !important;
  display: grid !important;
  place-items: center !important;
  text-align: center !important;
}

body.player-page .player-role-donut__centre strong {
  color: var(--player-ink) !important;
  font-family: "Francois One", "Arial Narrow", sans-serif !important;
  font-size: clamp(1.65rem, 3vw, 2.2rem) !important;
  font-weight: 400 !important;
  line-height: .95 !important;
}

body.player-page .player-role-donut__centre span {
  margin-top: .2rem !important;
  color: var(--player-muted) !important;
  font-size: .6rem !important;
  font-weight: 900 !important;
  letter-spacing: .045em !important;
  line-height: 1.15 !important;
  text-transform: uppercase !important;
}

body.player-page .player-role-summary {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: .45rem !important;
}

body.player-page .player-role-summary > div {
  min-width: 0 !important;
  padding: .52rem .58rem !important;
  border-radius: .58rem !important;
  background: #fff !important;
  border: 1px solid rgba(18, 54, 96, .08) !important;
}

body.player-page .player-role-summary span {
  display: block !important;
  color: var(--player-muted) !important;
  font-size: .62rem !important;
  font-weight: 850 !important;
  line-height: 1.15 !important;
}

body.player-page .player-role-summary strong {
  display: block !important;
  margin-top: .18rem !important;
  color: var(--player-ink) !important;
  font-size: .98rem !important;
  font-weight: 950 !important;
  line-height: 1 !important;
}

body.player-page #statistik .player-season-statistics {
  margin-top: 1rem !important;
  border: 1px solid rgba(18, 54, 96, .1) !important;
  border-radius: .8rem !important;
  background: #fff !important;
  box-shadow: none !important;
}

@media (max-width: 68rem) and (min-width: 48rem) {
  body.player-page #statistik .player-chart-card:first-child,
  body.player-page #statistik .player-chart-card:nth-child(2),
  body.player-page #statistik .player-chart-card--results,
  body.player-page #statistik .player-chart-card--role {
    grid-column: span 6 !important;
  }
}

@media (max-width: 47.99rem) {
  body.player-page .player-modern-hero.has-image::after {
    background:
      linear-gradient(180deg, rgba(8, 29, 65, .34) 0%, rgba(8, 29, 65, .12) 28%, rgba(8, 29, 65, .12) 68%, rgba(8, 29, 65, .42) 100%),
      linear-gradient(90deg, rgba(15, 42, 90, .82), rgba(15, 42, 90, .62)) !important;
  }

  body.player-page .player-modern-hero__top,
  body.player-page .player-modern-hero.has-integrated-portrait .player-modern-hero__top {
    padding-left: .85rem !important;
  }

  body.player-page .player-modern-hero__meta {
    width: 100% !important;
    justify-content: flex-start !important;
    text-align: left !important;
  }

  body.player-page #statistik .player-stats-visuals {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body.player-page #statistik .player-chart-card:first-child,
  body.player-page #statistik .player-chart-card:nth-child(2),
  body.player-page #statistik .player-chart-card--results,
  body.player-page #statistik .player-chart-card--role {
    grid-column: 1 !important;
  }

  body.player-page .player-role-chart,
  body.player-page .player-win-chart {
    grid-template-columns: minmax(6.7rem, .72fr) minmax(0, 1.28fr) !important;
    gap: .8rem !important;
  }

  body.player-page .player-missing-facts {
    padding: .82rem !important;
  }
}

@media (max-width: 25rem) {
  body.player-page .player-role-chart,
  body.player-page .player-win-chart {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body.player-page .player-role-summary {
    width: 100% !important;
  }
}

@media (min-width: 68.01rem) {
  body.player-page #statistik .player-chart-card:first-child {
    grid-column: 1 / span 8 !important;
    grid-row: 1 !important;
  }

  body.player-page #statistik .player-chart-card--results {
    grid-column: 9 / -1 !important;
    grid-row: 1 !important;
  }

  body.player-page #statistik .player-chart-card:nth-child(2) {
    grid-column: 1 / span 7 !important;
    grid-row: 2 !important;
  }

  body.player-page #statistik .player-chart-card--role {
    grid-column: 8 / -1 !important;
    grid-row: 2 !important;
  }
}

/* Player modern v1.5.2: ensure the integrated hero portrait fully fades before its bounds. */
body.player-page .player-modern-hero__integrated-portrait,
body.player-page .player-modern-hero__integrated-portrait:hover,
body.player-page .player-modern-hero__integrated-portrait:focus,
body.player-page .player-modern-hero__integrated-portrait:active {
  -webkit-mask-image: none !important;
  mask-image: none !important;
}

body.player-page .player-modern-hero__integrated-portrait img {
  -webkit-mask-image: radial-gradient(ellipse 86% 66% at 0% 50%, #000 0%, #000 46%, rgba(0,0,0,.94) 58%, rgba(0,0,0,.72) 70%, rgba(0,0,0,.38) 82%, rgba(0,0,0,.12) 91%, transparent 100%) !important;
  mask-image: radial-gradient(ellipse 86% 66% at 0% 50%, #000 0%, #000 46%, rgba(0,0,0,.94) 58%, rgba(0,0,0,.72) 70%, rgba(0,0,0,.38) 82%, rgba(0,0,0,.12) 91%, transparent 100%) !important;
  -webkit-mask-repeat: no-repeat !important;
  mask-repeat: no-repeat !important;
  -webkit-mask-size: 100% 100% !important;
  mask-size: 100% 100% !important;
}

/* Player modern v1.5.3: portrait-free hero with symmetric season/match summary. */
body.player-page .player-modern-hero__integrated-portrait {
  display: none !important;
}

body.player-page .player-modern-hero-summary {
  grid-template-columns: minmax(0, 1fr) minmax(14rem, 1.45fr) minmax(0, 1fr) !important;
}

body.player-page .player-modern-hero-summary__seasons,
body.player-page .player-modern-hero-summary__career {
  display: flex !important;
  min-width: 0 !important;
  flex-direction: column !important;
  justify-content: center !important;
}

body.player-page .player-modern-hero-summary__seasons {
  align-items: flex-start !important;
  text-align: left !important;
}

body.player-page .player-modern-hero-summary__career {
  align-items: flex-end !important;
  text-align: right !important;
}

body.player-page .player-modern-hero-summary__seasons .player-modern-hero-summary__label,
body.player-page .player-modern-hero-summary__career .player-modern-hero-summary__label {
  margin: 0 0 .38rem !important;
}

body.player-page .player-modern-hero-summary__seasons strong,
body.player-page .player-modern-hero-summary__career strong.player-modern-hero-summary__matches {
  margin: 0 !important;
  color: #fff !important;
  font-family: "Francois One", "Arial Narrow", sans-serif !important;
  font-size: clamp(2.4rem, 5vw, 4.35rem) !important;
  font-weight: 400 !important;
  line-height: .88 !important;
}

body.player-page .player-modern-hero-summary__career strong.player-modern-hero-summary__matches {
  margin-left: auto !important;
}

body.player-page .player-modern-hero__facts {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

body.player-page .player-modern-hero__fact--matches,
body.player-page .player-modern-hero__fact--seasons {
  display: none !important;
}

@media (max-width: 47.99rem) {
  body.player-page .player-modern-hero-summary__seasons,
  body.player-page .player-modern-hero-summary__career {
    display: none !important;
  }

  body.player-page .player-modern-hero__facts {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body.player-page .player-modern-hero__fact--matches,
  body.player-page .player-modern-hero__fact--seasons {
    display: grid !important;
  }
}

/* Player modern v2.11: regression guard for compact navigation and centered mobile hero. */
@media (max-width: 47.99rem) {
  body.player-page .player-modern-navigation {
    display: block !important;
    min-height: 0 !important;
    padding: .28rem !important;
    overflow: hidden !important;
  }

  body.player-page .player-modern-navigation__players {
    position: static !important;
    display: grid !important;
    width: 100% !important;
    max-width: none !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    align-items: stretch !important;
    gap: .2rem !important;
    transform: none !important;
  }

  body.player-page .player-modern-navigation__button {
    width: 100% !important;
    min-width: 0 !important;
    justify-content: center !important;
  }

  body.player-page .player-modern-hero-summary {
    grid-template-columns: minmax(0, 1fr) !important;
    justify-items: stretch !important;
  }

  body.player-page .player-modern-hero-summary__identity {
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 100% !important;
    justify-self: stretch !important;
    text-align: center !important;
  }

  body.player-page .player-modern-hero-summary__identity .player-modern-hero-summary__label,
  body.player-page .player-modern-hero-summary__identity h1,
  body.player-page .player-modern-hero-summary__identity h1.is-long,
  body.player-page .player-modern-hero-summary__identity h1.is-very-long {
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }
}

/* Player statistics: source coverage and historical completeness. */
body.player-page #statistik .player-stat-quality-note {
  margin: .72rem 0 1rem !important;
  padding: .72rem .82rem !important;
  border: 1px solid rgba(18, 54, 96, .12) !important;
  border-radius: .68rem !important;
  background: rgba(244, 247, 250, .92) !important;
  color: var(--player-muted) !important;
  font-size: .74rem !important;
  line-height: 1.55 !important;
}

body.player-page #statistik .player-chart-data-note {
  grid-column: 1 / -1 !important;
  margin: .58rem 0 0 !important;
  color: var(--player-muted) !important;
  font-size: .66rem !important;
  line-height: 1.4 !important;
}

body.player-page #statistik .player-win-summary > p.player-chart-data-note {
  margin: .62rem 0 0 !important;
  font-size: .66rem !important;
}


/* Player modern v2.14: denser mobile hero facts and bounded player navigation. */
@media (max-width: 47.99rem) {
  body.player-page .player-modern-navigation {
    min-height: 0 !important;
    max-height: 3.15rem !important;
    margin-bottom: .5rem !important;
    padding: .24rem !important;
  }

  body.player-page .player-modern-navigation__players {
    align-items: center !important;
    gap: .18rem !important;
  }

  body.player-page .player-modern-navigation__button {
    min-height: 2.45rem !important;
    max-height: 2.45rem !important;
    padding: .34rem .4rem !important;
  }

  body.player-page .player-modern-hero__facts {
    grid-template-columns: repeat(auto-fit, minmax(3.6rem, 1fr)) !important;
  }

  body.player-page .player-modern-hero__fact {
    min-height: 3.45rem !important;
    padding: .42rem .38rem !important;
  }

  body.player-page .player-modern-hero__fact span {
    font-size: .55rem !important;
    letter-spacing: .055em !important;
    line-height: 1.12 !important;
  }

  body.player-page .player-modern-hero__fact strong {
    margin-top: .12rem !important;
    font-size: .76rem !important;
    line-height: 1.15 !important;
  }
}


/* Player modern v2.15: compact mobile hero facts, single-row tabs and mobile-era placement. */
body.player-page .player-modern-hero-summary__era-mobile {
  display: none !important;
}

@media (max-width: 47.99rem) {
  body.player-page .player-modern-hero__facts {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  body.player-page .player-modern-hero__fact--career {
    display: none !important;
  }

  body.player-page .player-modern-hero-summary__identity small,
  body.player-page .player-modern-hero-summary__identity .player-modern-hero-summary__honour {
    display: none !important;
  }

  body.player-page .player-modern-hero-summary__era-mobile {
    display: block !important;
    margin: .42rem auto 0 !important;
    color: rgba(255, 255, 255, .86) !important;
    font-size: .88rem !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
    text-align: center !important;
  }

  body.player-page .player-modern-hero__fact {
    min-height: 3.3rem !important;
  }

  body.player-page .player-modern-tabs {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: .18rem !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    padding: .45rem .45rem .52rem !important;
    scrollbar-width: none !important;
    -webkit-overflow-scrolling: touch !important;
  }

  body.player-page .player-modern-tabs::-webkit-scrollbar {
    display: none !important;
  }

  body.player-page .player-modern-tabs button {
    width: auto !important;
    min-width: max-content !important;
    flex: 0 0 auto !important;
    min-height: 2.22rem !important;
    padding: .38rem .68rem !important;
    font-size: .72rem !important;
    white-space: nowrap !important;
  }

  body.player-page .player-modern-tab-count {
    display: none !important;
  }
}

@media (max-width: 23.5rem) {
  body.player-page .player-modern-hero-summary__era-mobile {
    font-size: .82rem !important;
  }

  body.player-page .player-modern-tabs button {
    padding-inline: .6rem !important;
    font-size: .69rem !important;
  }
}

/* Player modern v2.15: balanced mobile hero facts and single-row tabs. */
@media (max-width: 47.99rem) {
  body.player-page .player-modern-hero__facts {
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  }

  body.player-page .player-modern-hero__fact,
  body.player-page .player-modern-hero__fact:last-child {
    grid-column: auto !important;
  }

  body.player-page .player-modern-tabs {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: .08rem !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scrollbar-width: none !important;
    -webkit-overflow-scrolling: touch !important;
  }

  body.player-page .player-modern-tabs::-webkit-scrollbar {
    display: none !important;
  }

  body.player-page .player-modern-tabs button {
    width: auto !important;
    min-width: max-content !important;
    flex: 0 0 auto !important;
    padding-inline: .55rem !important;
  }

  body.player-page .player-modern-tab-count {
    display: none !important;
  }
}

@media (max-width: 355px) {
  body.player-page .player-modern-hero__facts {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}


/* Player modern v2.16: authoritative mobile fact placement. */
@media (max-width: 47.99rem) {
  body.player-page .player-modern-hero__facts {
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  }
  body.player-page .player-modern-hero__fact,
  body.player-page .player-modern-hero__fact:last-child {
    grid-column: auto !important;
  }
}
@media (max-width: 355px) {
  body.player-page .player-modern-hero__facts {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

/* Player modern v2.17: measured mobile name fitting with a readable single-line floor. */
@media (max-width: 47.99rem) {
  body.player-page .player-modern-hero-summary__identity h1.is-mobile-single-line {
    font-size: var(--player-mobile-name-size) !important;
    white-space: nowrap !important;
    text-wrap: nowrap !important;
    overflow-wrap: normal !important;
  }

  body.player-page .player-modern-hero-summary__identity h1.is-mobile-multiline {
    font-size: clamp(2.25rem, 10.5vw, 3.65rem) !important;
    white-space: normal !important;
    text-wrap: balance !important;
  }
}

/* Shared profile-mode switch for people with both player and personnel careers. */
body.player-page .person-mode-switch {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .16rem;
  width: min(24rem, 100%);
  margin: 0 auto .55rem;
  padding: .2rem;
  border: 1px solid rgba(21, 61, 112, .12);
  border-radius: .72rem;
  background: #edf2f7;
  box-shadow: none;
}
body.player-page .person-mode-switch > a,
body.player-page .person-mode-switch > span {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-width: 0;
  min-height: 2.45rem;
  padding: .34rem .62rem;
  border-radius: .52rem;
  color: #52657a;
  text-align: center;
  text-decoration: none;
  transition: background .16s ease, color .16s ease, box-shadow .16s ease;
}
body.player-page .person-mode-switch > a:hover,
body.player-page .person-mode-switch > a:focus-visible {
  background: #f8fafc;
  color: #173f78;
}
body.player-page .person-mode-switch > .is-active {
  background: #173f78;
  color: #fff;
  box-shadow: 0 .18rem .5rem rgba(23, 63, 120, .16);
}
body.player-page .person-mode-switch span > span,
body.player-page .person-mode-switch a > span {
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .025em;
  text-transform: uppercase;
}
body.player-page .person-mode-switch small {
  display: block;
  max-width: 100%;
  margin-top: .08rem;
  overflow: hidden;
  font-size: .61rem;
  font-weight: 700;
  line-height: 1.2;
  opacity: .76;
  text-overflow: ellipsis;
  white-space: nowrap;
}
@media (max-width: 31rem) {
  body.player-page .person-mode-switch {
    width: 100%;
    margin-bottom: .45rem;
  }
  body.player-page .person-mode-switch > a,
  body.player-page .person-mode-switch > span {
    min-height: 2.35rem;
    padding: .32rem .45rem;
  }
  body.player-page .person-mode-switch small {
    font-size: .58rem;
  }
}

/* Player modern v2.18: profile-mode switch integrated with the tab bar. */
body.player-page .player-profile-tabbar {
  display: flex;
  align-items: stretch;
  min-width: 0;
  border-bottom: 1px solid var(--player-border);
  border-radius: 1rem 1rem 0 0;
  background: #eef2f7;
}

body.player-page .player-profile-tabbar .player-modern-tabs {
  flex: 1 1 auto;
  min-width: 0;
  border-bottom: 0 !important;
  border-radius: 1rem 0 0 0 !important;
}

body.player-page .player-profile-tabbar .person-mode-switch {
  flex: 0 0 14.5rem;
  align-self: center;
  width: 14.5rem;
  margin: .32rem .42rem .32rem 0;
  padding: .16rem;
  background: rgba(255,255,255,.62);
}

body.player-page .player-profile-tabbar .person-mode-switch > a,
body.player-page .player-profile-tabbar .person-mode-switch > span {
  min-height: 2.22rem;
  padding: .28rem .42rem;
}

body.player-page .player-profile-tabbar .person-mode-switch span > span,
body.player-page .player-profile-tabbar .person-mode-switch a > span {
  font-size: .66rem;
}

body.player-page .player-profile-tabbar .person-mode-switch small {
  font-size: .56rem;
}

@media (max-width: 47.99rem) {
  body.player-page .player-profile-tabbar {
    display: grid;
    grid-template-columns: minmax(0,1fr);
  }

  body.player-page .player-profile-tabbar .player-modern-tabs {
    width: 100%;
    border-radius: 1rem 1rem 0 0 !important;
  }

  body.player-page .player-profile-tabbar .person-mode-switch {
    justify-self: end;
    width: min(15rem, calc(100% - .8rem));
    margin: .25rem .4rem .38rem;
  }
}

/* Player modern v2.19: one shared profile rhythm for player and personnel views. */
body.player-page .player-modern-hero + .player-content {
  margin-top: 3.5rem !important;
}

@media (max-width: 47.99rem) {
  body.player-page .player-modern-hero + .player-content {
    margin-top: 1.1rem !important;
  }
}

/* Player modern v2.20: center profile identity against the full hero on desktop. */
@media (min-width: 48rem) {
  body.player-page .player-modern-hero-summary {
    grid-template-columns: minmax(8rem, 1fr) minmax(0, 1.45fr) minmax(8rem, 1fr) !important;
  }

  body.player-page .player-modern-hero-summary__seasons {
    grid-column: 1 !important;
    grid-row: 1 !important;
    position: relative !important;
    z-index: 3 !important;
  }

  body.player-page .player-modern-hero-summary__identity {
    grid-column: 1 / -1 !important;
    grid-row: 1 !important;
    width: min(72%, 62rem) !important;
    max-width: none !important;
    justify-self: center !important;
    position: relative !important;
    z-index: 2 !important;
    text-align: center !important;
  }

  body.player-page .player-modern-hero-summary__identity .player-modern-hero-summary__label,
  body.player-page .player-modern-hero-summary__identity h1,
  body.player-page .player-modern-hero-summary__identity h1.is-long,
  body.player-page .player-modern-hero-summary__identity h1.is-very-long,
  body.player-page .player-modern-hero-summary__identity small {
    text-align: center !important;
  }

  body.player-page .player-modern-hero-summary__career {
    grid-column: 3 !important;
    grid-row: 1 !important;
    position: relative !important;
    z-index: 3 !important;
  }
}

/* Player multisite RC3: deferred match-card layout. */
@supports (content-visibility: auto) {
  body.player-page .player-modern-match-list .ifk-match-card {
    content-visibility: auto;
    contain-intrinsic-size: 8rem;
  }
}

/* RC4: use the left column while it is efficient, but let long record sets use the full profile width. */
body.player-page .player-biography-layout {
  align-content: start !important;
}

body.player-page .player-biography-main,
body.player-page .player-biography-secondary {
  min-width: 0 !important;
}

body.player-page .player-biography-secondary > .player-biography-transfers:first-child,
body.player-page .player-biography-secondary > .player-biography-records:first-child {
  margin-top: .65rem !important;
}

body.player-page .player-biography-records--wide {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  margin-top: .25rem !important;
}

body.player-page .player-biography-records > .player-record-panel:only-child {
  grid-column: 1 / -1 !important;
}

/* Slightly smaller centre values keep long percentage values inside both donut rings. */
body.player-page .player-win-donut__centre strong {
  font-size: clamp(1.4rem, 2.65vw, 1.95rem) !important;
}

body.player-page .player-role-donut__centre strong {
  font-size: clamp(1.35rem, 2.45vw, 1.85rem) !important;
}

@media (max-width: 47.99rem) {
  body.player-page .player-biography-main {
    grid-row: 2 !important;
  }

  body.player-page .player-biography-secondary > .player-biography-transfers:first-child,
  body.player-page .player-biography-secondary > .player-biography-records:first-child {
    margin-top: .9rem !important;
  }

  body.player-page .player-biography-records--wide {
    grid-column: 1 !important;
    margin-top: .9rem !important;
  }
}
