/* public/shared/gw-elite-player.css — the player pages (/players/*), team pages (/teams/*) and their indexes in the
 * site's elite look (gw-elite.css). Loaded after gw-player.css + gw-elite.css; everything is scoped to body.ge-pp,
 * so the Research home (which shares gw-player.css) is untouched.
 *
 * Each page's <body> carries its team's colors (render.mjs teamVars): --tc the team color, --tl its light on a dark
 * page (sky, cards, hero), --ta an accent that reads as text (bars, active controls, section numbers).
 * Type: Bebas Neue for names and numerals, Barlow Condensed for labels and figures, Barlow for reading. Never Inter.
 */
body.ge-pp{
  --mono:"Barlow Condensed","Arial Narrow",sans-serif;--cond:"Barlow Condensed","Arial Narrow",sans-serif;--sans:Barlow,system-ui,-apple-system,sans-serif;
  --disp:"Bebas Neue","Barlow Condensed","Arial Narrow",sans-serif;
  --card:rgba(10,17,27,.88);--card2:rgba(15,24,36,.92);--line:rgba(160,190,230,.09);--line2:rgba(160,190,230,.15);--line3:rgba(160,190,230,.24);
  --text:#ebf2fa;--dim:#9eacc0;--mute:#71809a;--faint:#3e4a5e;
  --green:var(--ta,#00e676);
  font:16px/1.5 var(--sans);font-variant-numeric:tabular-nums
}
body.ge-pp .pp{position:relative;z-index:2;max-width:820px}
body.ge-pp .foot,body.ge-pp main{position:relative;z-index:2}
/* a wash of the team's light behind the top of the page */
body.ge-pp::before{content:"";position:absolute;left:0;right:0;top:0;height:900px;z-index:1;pointer-events:none;
  background:radial-gradient(90% 60% at 80% 0%,color-mix(in srgb,var(--tl) 34%,transparent),transparent 70%)}

/* ── hero: the player standing on his team's logo ── */
body.ge-pp .xh{padding:0 0 4px}
.ge-pp .xh-stage{position:relative;margin:0 -16px;height:clamp(356px,96vw,440px);overflow:hidden;isolation:isolate}
/* the lit backdrop fades out at its foot, so the hero melts into the page whatever the sky is doing behind it */
.ge-pp .xh-art{position:absolute;inset:0;z-index:0;pointer-events:none;
  background:radial-gradient(115% 72% at 88% 0%,color-mix(in srgb,var(--tl) 82%,#fff 18%) 0%,transparent 58%),
    linear-gradient(166deg,var(--tl) 0%,color-mix(in srgb,var(--tl) 44%,#05080e) 52%,rgba(5,8,14,.6) 100%);
  -webkit-mask-image:linear-gradient(180deg,#000 70%,transparent 100%);mask-image:linear-gradient(180deg,#000 70%,transparent 100%)}
.ge-pp .xh-art::before{content:"";position:absolute;inset:0;mix-blend-mode:soft-light;
  background:repeating-linear-gradient(115deg,rgba(255,255,255,.06) 0 2px,transparent 2px 14px)}
.ge-pp .xh-stage::after{content:"";position:absolute;left:0;right:0;bottom:0;height:62%;z-index:3;pointer-events:none;
  background:linear-gradient(180deg,transparent 0%,rgba(5,8,14,.42) 40%,rgba(5,8,14,.72) 72%,rgba(5,8,14,0) 100%)}
.ge-pp .xh-wm{position:absolute;right:-64px;top:-46px;width:300px;height:300px;object-fit:contain;opacity:.15;transform:rotate(-12deg);filter:saturate(1.1)}
.ge-pp .xh-num{position:absolute;left:14px;top:12px;font:400 clamp(104px,30vw,168px)/.8 var(--disp);letter-spacing:.01em;color:transparent;-webkit-text-stroke:1.5px rgba(255,255,255,.5);white-space:nowrap}
.ge-pp .xh-fig{position:absolute;right:-6px;bottom:0;z-index:2;width:min(340px,88vw);height:clamp(250px,70vw,320px);
  -webkit-mask-image:linear-gradient(180deg,#000 74%,transparent 100%);mask-image:linear-gradient(180deg,#000 74%,transparent 100%)}
.ge-pp .xh-lg{position:absolute;right:30px;bottom:54px;width:clamp(150px,44vw,210px);height:auto;aspect-ratio:1;object-fit:contain;opacity:.92;
  filter:drop-shadow(0 14px 30px rgba(0,0,0,.45));transition:opacity .35s,transform .45s cubic-bezier(.2,.8,.2,1)}
.ge-pp .xh-fig.has .xh-lg{opacity:.34;transform:scale(1.18) translateY(-14px)}
.ge-pp .xh-ph{position:absolute;right:0;bottom:0;width:100%;height:auto;max-height:100%;object-fit:contain;object-position:bottom right;opacity:0;transition:opacity .4s;
  filter:drop-shadow(0 18px 26px rgba(0,0,0,.55)) drop-shadow(0 0 1px rgba(255,255,255,.55))}
.ge-pp .xh-fig.has .xh-ph{opacity:1}
.ge-pp .xh-fig.nop .xh-lg{opacity:1;right:24px;bottom:96px;width:clamp(160px,48vw,230px)}
.ge-pp .xh-id{position:absolute;left:16px;right:16px;bottom:14px;z-index:4}
.ge-pp .xh .kick{display:flex;align-items:center;gap:8px;font:700 14px/1 var(--cond);letter-spacing:.04em;text-transform:none;color:rgba(235,242,250,.9);margin:0 0 6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ge-pp .xh-pos{flex:none;display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:6px;background:var(--pc,#4a9eff);color:#05080e;font:800 13px/1 var(--cond);letter-spacing:.06em}
.ge-pp .xh h1{font:400 clamp(56px,16.5vw,104px)/.84 var(--disp);letter-spacing:.012em;text-transform:none;color:#fff;margin:0;max-width:13ch;
  text-shadow:0 4px 30px rgba(0,0,0,.55),0 1px 0 rgba(0,0,0,.4)}
.ge-pp .xh .bio{font:600 14.5px/1.4 var(--cond);letter-spacing:.02em;color:rgba(235,242,250,.82);margin-top:8px;max-width:62ch}
.ge-pp .xh .bio b{color:#fff;font-weight:700}
@media(min-width:760px){
  .ge-pp .xh-stage{margin:0 calc(50% - 50vw);height:470px}
  .ge-pp .xh-fig{right:max(0px,calc(50vw - 460px));width:420px;height:400px}
  .ge-pp .xh-id{left:max(16px,calc(50vw - 394px));right:auto;max-width:520px;bottom:30px}
  .ge-pp .xh-num{left:max(14px,calc(50vw - 398px));top:26px;font-size:190px}
  .ge-pp .xh-wm{right:max(-60px,calc(50vw - 560px));top:-60px;width:420px;height:420px}
  .ge-pp .xh h1{font-size:112px}
  .ge-pp .xh-lg{width:240px;right:60px;bottom:70px}
}

/* chips, scoring switch, the three numbers, actions */
.ge-pp .chips{margin-top:14px}
.ge-pp .chip{min-height:36px;padding:0 13px;border-color:var(--line2);background:rgba(13,21,32,.86);font:600 14px var(--cond);letter-spacing:.02em}
.ge-pp .chip.healthy .dot{background:#2bd07a}
.ge-pp .seg{border-radius:14px;padding:4px;gap:4px;background:rgba(9,16,26,.9);border:1px solid var(--line)}
.ge-pp .seg button{border-radius:10px;font:800 16px var(--cond);letter-spacing:.06em;color:var(--dim)}
.ge-pp .seg button+button{border-left:0}
.ge-pp .seg button[aria-pressed=true]{background:var(--ta);color:#05080e;box-shadow:0 8px 22px -8px var(--ta)}
.ge-pp .kpi{position:relative;overflow:hidden;padding:12px 12px 13px;border-radius:16px;background:linear-gradient(180deg,rgba(15,24,36,.94),rgba(9,16,26,.94));border:1px solid var(--line2)}
.ge-pp .kpi::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--kc,var(--ta))}
.ge-pp .kpi.ro{--kc:#ebf2fa}.ge-pp .kpi.dy{--kc:#00d4ff}
.ge-pp .kpi .l{font:700 13px var(--cond);letter-spacing:.03em;text-transform:none;color:var(--dim)}
.ge-pp .kpi b{font:400 clamp(36px,10vw,46px)/.9 var(--disp);letter-spacing:.02em;margin-top:6px}
.ge-pp .kpi.wk b{color:var(--ta)}.ge-pp .kpi.dy b{color:#00d4ff}
.ge-pp .kpi .s{font:600 13px/1.3 var(--cond);letter-spacing:.02em}
.ge-pp .act{min-height:62px;border-radius:14px;background:rgba(13,21,32,.7);border-color:var(--line2);font:700 13.5px var(--cond);letter-spacing:.03em}
.ge-pp .act svg{color:var(--ta)}

/* ── the section rail ── */
.ge-pp .snav{background:rgba(5,8,14,.9);border-bottom:1px solid var(--line2)}
.ge-pp .snav a{font:700 15px var(--cond);letter-spacing:.04em;text-transform:none;color:var(--mute);border-radius:999px;margin:6px 0;min-height:36px;padding:0 13px;box-shadow:none}
.ge-pp .snav a.on{color:#05080e;background:var(--ta);box-shadow:none}

/* ── sections: outlined numerals, condensed titles ── */
.ge-pp .sec{padding:34px 0 2px}
.ge-pp .sh{align-items:flex-end;gap:12px;margin:0 0 14px}
.ge-pp .sh .n{font:400 58px/.78 var(--disp);letter-spacing:.02em;color:transparent;-webkit-text-stroke:1.3px color-mix(in srgb,var(--ta) 80%,transparent)}
.ge-pp .sh h2{font:800 clamp(28px,7vw,36px)/.95 var(--cond);letter-spacing:.005em;text-transform:none;color:#fff}
.ge-pp .sh .asof{font:600 13px var(--cond);letter-spacing:.02em;color:var(--mute)}
.ge-pp h3{font:800 19px/1.15 var(--cond);letter-spacing:.01em;text-transform:none;color:var(--text);margin:24px 0 10px}
.ge-pp h3 .q{font:600 13px var(--cond);letter-spacing:.02em;color:var(--mute)}
.ge-pp .card{border-radius:18px;padding:15px;background:linear-gradient(180deg,rgba(14,22,34,.92),rgba(9,15,24,.92));border:1px solid var(--line2);box-shadow:0 1px 0 rgba(255,255,255,.05) inset}
.ge-pp .card.flat{background:transparent;box-shadow:none}
.ge-pp .lab{font:700 13px var(--cond);letter-spacing:.03em;text-transform:none;color:var(--dim)}
.ge-pp .note{font:500 13px/1.55 var(--sans);color:var(--mute)}
.ge-pp .p{font:400 15.5px/1.62 var(--sans)}

/* tiles and reads */
.ge-pp .tile{border-radius:16px;padding:12px 13px;background:linear-gradient(180deg,rgba(15,24,36,.92),rgba(9,16,26,.92));border:1px solid var(--line2)}
.ge-pp .tile .l{font:700 13px var(--cond);letter-spacing:.02em;text-transform:none;color:var(--dim)}
.ge-pp .tile .v{font:400 36px/1 var(--disp);letter-spacing:.02em;margin-top:6px}
.ge-pp .tile .v small{font:700 15px var(--cond)}
.ge-pp .tile .s{font:600 13px/1.3 var(--cond);letter-spacing:.02em}
.ge-pp .tile.cg .v{color:var(--ta)}
.ge-pp .callchip{font:800 15px/1 var(--cond);border-radius:9px;padding:8px 11px}
.ge-pp .callchip.up{color:#2bd07a}
.ge-pp .head{font:800 19px/1.25 var(--cond);letter-spacing:.01em}
.ge-pp .read{border-radius:12px;background:rgba(5,8,14,.5)}
.ge-pp .read .l{font:700 12px var(--cond);letter-spacing:.03em;text-transform:none}
.ge-pp .read b{font:400 30px/1 var(--disp);letter-spacing:.02em}
.ge-pp .bul li{font:500 15px/1.5 var(--sans)}

/* charts */
.ge-pp .chart text{font-family:var(--cond);font-weight:600;font-size:11px}
.ge-pp .chart .tb{font-size:12.5px;font-weight:700}
.ge-pp .chart .tg{fill:#ffb700}
.ge-pp .chart .gr{stroke:rgba(160,190,230,.08)}
.ge-pp .chart [stroke="#00e676"]{stroke:var(--ta)}
.ge-pp .chart [fill="#00e676"]{fill:var(--ta)}
.ge-pp .legend{font:600 13px var(--cond);letter-spacing:.02em}
.ge-pp .rail .band{background:linear-gradient(90deg,color-mix(in srgb,var(--ta) 70%,transparent),color-mix(in srgb,var(--ta) 22%,transparent))}
.ge-pp .rail .mk{border-color:var(--ta);box-shadow:0 0 18px -2px var(--ta)}
.ge-pp .rail .ml,.ge-pp .rail .el,.ge-pp .gauge .e,.ge-pp .vband .t{font:700 12px var(--cond);letter-spacing:.02em}

/* this week */
.ge-pp .mu .tm img{width:56px;height:56px}
.ge-pp .mu .mid .at{font:400 34px/1 var(--disp);letter-spacing:.04em}
.ge-pp .proj .big{font:400 72px/.86 var(--disp);color:var(--ta);letter-spacing:.01em}
.ge-pp .proj .rk{font:400 28px/1 var(--disp);letter-spacing:.03em}
.ge-pp .proj .tier{font:700 13px var(--cond);letter-spacing:.04em;text-transform:none}
.ge-pp .statline span,.ge-pp .env{font:600 13.5px var(--cond);letter-spacing:.02em;border-radius:9px}
.ge-pp .zc .pg{font:400 24px/1 var(--disp);letter-spacing:.02em}
.ge-pp .zc .rk,.ge-pp .zmap .rh,.ge-pp .zmap .ch{font-family:var(--cond);font-weight:700;letter-spacing:.03em;text-transform:none;font-size:11.5px}
.ge-pp .zsum .n{font:400 44px/1 var(--disp)}

/* game log */
.ge-pp .g{grid-template-columns:44px 1fr auto;padding:12px 2px}
.ge-pp .g .wk{font:700 12.5px var(--cond)}
.ge-pp .g .wk img{width:28px;height:28px}
.ge-pp .g .m1{font:800 16.5px var(--cond)}
.ge-pp .g .m1 .res{font:600 13px var(--cond);letter-spacing:.02em}
.ge-pp .g .m2{font:600 13.5px var(--cond);letter-spacing:.01em}
.ge-pp .g .pts{font:400 32px/1 var(--disp);letter-spacing:.02em}
.ge-pp .g .fin{font:700 12px var(--cond);letter-spacing:.02em}
.ge-pp .gx{background:rgba(5,8,14,.6)}
.ge-pp .kv{border-radius:12px}
.ge-pp .kv div{background:rgba(10,17,27,.94)}
.ge-pp .kv .l{font:700 11.5px var(--cond);letter-spacing:.03em;text-transform:none}
.ge-pp .kv .v{font:400 22px/1.05 var(--disp);letter-spacing:.02em}

/* tables */
.ge-pp table.t{font:600 14px var(--cond)}
.ge-pp .t th{font:700 12px var(--cond);letter-spacing:.04em;text-transform:none;color:var(--mute)}
.ge-pp .t td{font:600 14px var(--cond);letter-spacing:.01em}
.ge-pp .t td:first-child{font:700 14.5px var(--cond)}
.ge-pp .t td .sub{font:600 12px var(--cond)}
.ge-pp .t tr.hi td{background:color-mix(in srgb,var(--ta) 9%,transparent)}

/* percentiles */
.ge-pp .pc .nm{font:600 15px var(--cond);letter-spacing:.01em}
.ge-pp .pc .nm small{font:600 12px var(--cond)}
.ge-pp .pc .val{font:400 21px/1 var(--disp);letter-spacing:.03em}
.ge-pp .pc .bar .tr{height:8px;top:6px;border-radius:4px;background:rgba(255,255,255,.07)}
.ge-pp .pc .bar .fl{height:8px;top:6px;border-radius:4px}
.ge-pp .pc .bar .q{font:800 12px/20px var(--cond);border-radius:7px;box-shadow:0 4px 12px -4px rgba(0,0,0,.6)}
.ge-pp .pctkey{font:700 11.5px var(--cond);letter-spacing:.04em;text-transform:none}

/* bars, splits, schedule, health, value */
.ge-pp .hb .n,.ge-pp .hb2 .n{font:600 14.5px var(--cond);letter-spacing:.01em}
.ge-pp .hb .v,.ge-pp .hb2 .v{font:700 14px var(--cond)}
.ge-pp .hb .b{height:14px;border-radius:0 6px 6px 0}
.ge-pp .ww .who{font:800 17px var(--cond)}
.ge-pp .ww .who small,.ge-pp .ww .sub,.ge-pp .ww .row .k{font-family:var(--cond);font-weight:700;letter-spacing:.02em;text-transform:none}
.ge-pp .ww .row .v{font:400 22px/1 var(--disp)}
.ge-pp .sg{width:58px;border-radius:12px}
.ge-pp .sg .w,.ge-pp .sg .r{font:700 11px var(--cond);letter-spacing:.02em}
.ge-pp .sg .o{font:800 13.5px var(--cond)}
.ge-pp .hc{border-radius:10px}
.ge-pp .hc .w{font:700 11px var(--cond)}
.ge-pp .hc .s{font:400 18px/1 var(--disp);letter-spacing:.03em}
.ge-pp .prob{font:600 14px var(--cond)}
.ge-pp .prob .v{font:400 19px/1 var(--disp)}
.ge-pp .prob .b{height:10px;border-radius:5px}
.ge-pp .lchip{border-radius:12px;font:600 13.5px var(--cond)}
.ge-pp .lchip b{font:400 22px/1 var(--disp)}
.ge-pp .take .m,.ge-pp .flag .m{font:800 12.5px var(--cond);letter-spacing:.04em;text-transform:none}
.ge-pp .flag{border-radius:16px}
.ge-pp .lk{min-height:58px;border-radius:14px;background:rgba(13,21,32,.7);font:700 15.5px/1.3 var(--cond);letter-spacing:.01em}
.ge-pp .lk span{font:500 13px/1.4 var(--sans)}
.ge-pp .lk::after{color:var(--ta)}
.ge-pp details.ss summary{font:800 17px var(--cond);letter-spacing:.01em;min-height:52px}
.ge-pp details.ss summary span{font:600 13px var(--cond)}
.ge-pp .carc{border-radius:18px;background:rgba(10,17,27,.9)}
.ge-pp .carc .cb a,.ge-pp .carc .cb button{font:800 13.5px var(--cond);letter-spacing:.04em;text-transform:none;min-height:44px}
.ge-pp .foot{font:500 13px/1.8 var(--sans)}
.ge-pp .srcs{font:500 12px/1.65 var(--sans)}
.ge-pp .tip{border-color:color-mix(in srgb,var(--ta) 60%,transparent);font:600 13.5px/1.45 var(--cond)}
.ge-pp .empty{font:500 14px/1.55 var(--sans)}

/* ── team pages and the two indexes ── */
.ge-pp .xh.team .xh-fig{width:min(300px,78vw)}
.ge-pp .xh.team .xh-lg{opacity:1;right:22px;bottom:78px;width:clamp(170px,52vw,250px);transform:none}
.ge-pp .xh.team h1{max-width:9ch}
.ge-pp .xh.idx .xh-stage{height:clamp(300px,80vw,360px)}
.ge-pp .xh.idx .xh-num{font-size:clamp(84px,24vw,140px);opacity:.8}
.ge-pp .xh.idx h1{max-width:none}
.ge-pp .xh-lede{font:500 15px/1.5 var(--sans);color:rgba(235,242,250,.8);margin:8px 0 0;max-width:56ch}
.ge-pp .tcard,.ge-pp .tool,.ge-pp .logos a{border-radius:16px;background:linear-gradient(180deg,rgba(15,24,36,.92),rgba(9,16,26,.92));border-color:var(--line2)}
.ge-pp .tcard b{font:800 18px/1.1 var(--cond)}
.ge-pp .tcard .tn span{font:600 12.5px var(--cond)}
.ge-pp .tool b{font:400 26px/1 var(--disp);letter-spacing:.03em}
.ge-pp .ri b,.ge-pp .qbr .n,.ge-pp .tg .m1{font-family:var(--cond);font-weight:800}
.ge-pp .ri .v,.ge-pp .qbr .p,.ge-pp .tg .fs,.ge-pp .pj .v{font-family:var(--disp);font-weight:400;letter-spacing:.03em;font-size:24px}
.ge-pp .ri .s,.ge-pp .ri .k,.ge-pp .qbr .t2,.ge-pp .tg .m2,.ge-pp .tg .sc,.ge-pp .pj .r{font-family:var(--cond);font-weight:600;letter-spacing:.02em;font-size:13px}
.ge-pp .ztabs button{font:800 15px var(--cond);min-height:44px}
.ge-pp .ztabs button[aria-pressed=true]{border-color:var(--ta);color:#05080e;background:var(--ta)}
.ge-pp .big-search input{min-height:56px;border-radius:999px;background:rgba(13,21,32,.86);font:500 17px var(--sans)}
.ge-pp .big-search input:focus{border-color:var(--ta)}
.ge-pp .sres{border-radius:18px;background:rgba(10,17,27,.96)}
.ge-pp .sres b{font:800 17px var(--cond)}
.ge-pp .sres span,.ge-pp .sres .tag{font-family:var(--cond);font-weight:700;letter-spacing:.03em}

@media(prefers-reduced-motion:reduce){.ge-pp .xh-lg,.ge-pp .xh-ph{transition:none}}

/* where his value is heading: label above the call on a phone */
.ge-pp .hbv{display:block!important;padding:9px 0;border-bottom:1px solid var(--line)}
.ge-pp .hbv:last-of-type{border-bottom:0}
.ge-pp .hbv .n{font:800 16px var(--cond);color:#fff;white-space:normal}
.ge-pp .hbv .v{text-align:left!important;margin-top:3px;font:600 14px/1.35 var(--cond)!important;white-space:normal}
.ge-pp .hbv .v>span:first-child{font:400 26px/1 var(--disp)!important;letter-spacing:.02em}
