.position-picker-launch{display:flex;flex-direction:column;min-width:0}
.position-picker-label{display:block;margin-bottom:7px;font:800 11px var(--pps-font);letter-spacing:1.2px;text-transform:uppercase}
.position-picker-state{display:none!important}
.position-picker-open{display:flex;align-items:center;width:100%;min-height:48px;padding:11px 14px;border:2px solid var(--line);background:var(--paper2);color:var(--ink);font-family:var(--pps-font);text-align:left;cursor:pointer}
.position-picker-open strong{min-width:0;font:400 16px/1.35 var(--pps-font);overflow-wrap:anywhere}
.position-picker-open:focus-visible{outline:3px solid var(--red);outline-offset:2px}

body.position-picker-opened{overflow:hidden}
.position-picker-modal{position:fixed;inset:0;z-index:1200;display:grid;place-items:center;padding:max(10px,env(safe-area-inset-top)) max(10px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left))}
.position-picker-card{display:grid;grid-template-rows:auto auto auto minmax(0,1fr) auto;width:min(980px,100%);height:min(760px,100%);max-height:calc(100dvh - 20px);padding:18px;overflow:hidden}
.position-picker-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.position-picker-head h3{margin:3px 0 10px;font-family:var(--pps-font)}
.position-picker-close{flex:0 0 44px;width:44px;height:44px;padding:0;font:900 24px/1 var(--pps-font)}
.position-picker-draft-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-bottom:8px}
.position-picker-draft-summary span{display:flex;align-items:center;justify-content:space-between;gap:6px;min-width:0;padding:7px 9px;border:2px solid #171717;background:#f4efe5;font:900 8px/1.2 var(--pps-font);letter-spacing:.05em}
.position-picker-draft-summary b{min-width:0;color:var(--red);font-size:11px;text-align:right;overflow-wrap:anywhere}
.position-picker-mode{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin-bottom:8px}
.position-picker-mode button{min-height:38px;padding:7px;border:2px solid #171717;background:#fff;color:#171717;font:900 9px/1 var(--pps-font);letter-spacing:.04em;cursor:pointer}
.position-picker-mode button.is-active{background:#171717;color:#fff}
.position-picker-body{min-height:0;overflow:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.position-picker-panel{display:grid;grid-template-columns:minmax(270px,520px) minmax(220px,320px);align-items:center;justify-content:center;gap:clamp(16px,4vw,44px);min-height:100%;padding:6px}
.position-picker-panel.hidden{display:none!important}
.position-picker-panel .position-pitch{grid-column:1;grid-row:1;width:min(100%,384px);min-height:360px;max-height:520px;justify-self:center}
.position-picker-panel>.position-picker-hint{grid-column:2;grid-row:1;align-self:center;width:100%;margin:0;color:#5f594f;font:800 12px/1.5 var(--pps-font);text-align:left}
.position-picker-no-secondary{grid-column:2;grid-row:1;align-self:end;min-height:44px;margin-bottom:22px;font-family:var(--pps-font)}
.position-picker-panel[data-position-panel="archetype"]{display:block;max-width:900px;min-height:0;margin:auto;padding:6px}
.position-picker-panel[data-position-panel="archetype"]>.position-picker-hint{width:auto;margin:0 0 8px;text-align:center}
.position-picker-actions{display:grid;grid-template-columns:minmax(110px,.35fr) minmax(180px,1fr);gap:10px;padding-top:10px}
.position-picker-actions button{min-height:44px;font-family:var(--pps-font)}

.position-pitch{position:relative;aspect-ratio:68/92;overflow:hidden;border:3px solid #d8ead8;background:linear-gradient(90deg,rgba(255,255,255,.035) 50%,transparent 50%),#07551b;background-size:20% 100%;box-shadow:inset 0 0 0 2px #0b3917}
.position-pitch:before{content:"";position:absolute;inset:5px;border:1px solid rgba(255,255,255,.68)}
.position-pitch-line.centre{position:absolute;left:5px;right:5px;top:50%;border-top:1px solid rgba(255,255,255,.68)}
.position-pitch-line.centre:after{content:"";position:absolute;left:50%;top:0;width:22%;aspect-ratio:1;border:1px solid rgba(255,255,255,.68);border-radius:50%;transform:translate(-50%,-50%)}
.position-pitch-box{position:absolute;left:27%;width:46%;height:15%;border:1px solid rgba(255,255,255,.68)}
.position-pitch-box.top{top:5px;border-top:0}.position-pitch-box.bottom{bottom:5px;border-bottom:0}
.position-pitch button{position:absolute;left:clamp(24px,var(--pitch-x),calc(100% - 24px));top:clamp(24px,var(--pitch-y),calc(100% - 24px));z-index:2;display:grid;place-items:center;width:44px;height:44px;min-width:44px;padding:0;border:2px solid #fff;border-radius:50%;background:#8b1118;color:#fff;font:900 8px/1 var(--pps-font);box-sizing:border-box;box-shadow:0 2px 4px #001a08;transform:translate(-50%,-50%);opacity:.58;cursor:pointer}
.position-pitch button.is-compatible{opacity:1;background:#a96808}
.position-pitch button.is-secondary{background:#165f9c;opacity:1}
.position-pitch button.is-primary{background:#e40012;opacity:1;outline:3px solid #f7e200;outline-offset:1px}
.position-pitch button.is-unavailable{opacity:.22;filter:grayscale(1);cursor:not-allowed}
.position-pitch button:disabled{pointer-events:none}

.club-tactic-card{display:grid;grid-template-columns:minmax(180px,260px) 1fr;gap:14px;align-items:center;margin:14px 0;padding:14px;border:2px solid var(--line);background:var(--paper2)}
.club-tactic-card header{display:flex;flex-direction:column;gap:5px}.club-tactic-card header span{font:900 10px var(--pps-font);letter-spacing:.08em}.club-tactic-card header strong{font:900 25px var(--pps-font)}.club-tactic-card header small,.club-tactic-card p{color:var(--muted);line-height:1.4}.club-tactic-card p{grid-column:1/-1;margin:0}
.club-tactic-pitch,.squad-position-pitch{position:relative;aspect-ratio:68/92;justify-self:center;overflow:hidden;border:3px solid #d8ead8;background:#07551b;box-shadow:inset 0 0 0 2px #0b3917}
.club-tactic-pitch{width:min(100%,260px)}.squad-position-pitch{width:min(100%,430px)}
.club-tactic-pitch:before,.squad-position-pitch:before{content:"";position:absolute;inset:5px;border:1px solid rgba(255,255,255,.68)}
.club-tactic-pitch .centre,.squad-position-pitch .centre{position:absolute;left:5px;right:5px;top:50%;border-top:1px solid rgba(255,255,255,.68)}
.club-tactic-pitch .box,.squad-position-pitch .box{position:absolute;left:27%;width:46%;height:15%;border:1px solid rgba(255,255,255,.68)}
.club-tactic-pitch .box.top,.squad-position-pitch .box.top{top:5px;border-top:0}.club-tactic-pitch .box.bottom,.squad-position-pitch .box.bottom{bottom:5px;border-bottom:0}
.club-tactic-slot{position:absolute;left:var(--pitch-x);top:var(--pitch-y);z-index:2;display:grid;place-items:center;width:32px;height:32px;padding:0;border:2px solid #fff;border-radius:50%;background:#b80d19;color:#fff;font:900 8px var(--pps-font);box-sizing:border-box;transform:translate(-50%,-50%)}.club-tactic-slot.is-player-slot{background:#155fa2;outline:3px solid #f7e200}
.squad-position-pitch-card{display:grid;grid-template-columns:minmax(170px,230px) minmax(280px,430px);justify-content:center;align-items:center;gap:16px;margin:14px 0;padding:14px;border:2px solid var(--line);background:var(--paper2)}
.squad-position-pitch-card header{display:flex;flex-direction:column;gap:5px}.squad-position-pitch-card header span{font:900 10px var(--pps-font)}.squad-position-pitch-card header strong{font:900 27px var(--pps-font)}.squad-position-pitch-card header small,.squad-position-pitch-card p{color:var(--muted);line-height:1.4}.squad-position-pitch-card p{grid-column:1/-1;margin:0}
.squad-pitch-player{position:absolute;left:var(--pitch-x);top:var(--pitch-y);z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;width:54px;height:54px;padding:4px;border:2px solid #fff;border-radius:50%;background:#8b1118;color:#fff;box-sizing:border-box;transform:translate(-50%,-50%);font:800 7px/1.05 var(--pps-font);text-align:center}.squad-pitch-player small{display:block;width:42px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.squad-pitch-player b{font-size:15px}.squad-pitch-player em{font-size:6px;font-style:normal;color:#ffe56a}.squad-pitch-player.is-career-player{background:#155fa2;outline:3px solid #f7e200}.squad-pitch-player.is-prospective{width:46px;height:46px;border-style:dashed;background:#111;color:#ffe500}
.squad-position-pitch-card.is-compact{grid-template-columns:150px minmax(260px,360px)}.squad-position-pitch-card.is-compact .squad-position-pitch{width:min(100%,360px)}
.squad-position-report{margin:14px 0;border:2px solid var(--line);background:var(--paper2)}.squad-position-report>header{padding:13px 15px;border-bottom:2px solid var(--line);background:var(--paper)}.squad-position-report>header p{margin:0;color:var(--muted)}
.squad-position-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line)}.squad-position-metrics>div{display:flex;flex-direction:column;gap:4px;padding:10px;background:var(--paper2)}.squad-position-adaptation{margin:12px;padding:10px;border-left:5px solid #b38b00;background:var(--paper);font-weight:800}

@media(max-width:700px){
  .position-picker-modal{place-items:stretch;padding:0}
  .position-picker-card{width:100%;height:100dvh;max-height:100dvh;padding:max(9px,env(safe-area-inset-top)) max(9px,env(safe-area-inset-right)) max(9px,env(safe-area-inset-bottom)) max(9px,env(safe-area-inset-left));border-width:0}
  .position-picker-head h3{margin-bottom:5px;font-size:18px}.position-picker-head .eyebrow{font-size:7px}
  .position-picker-draft-summary{gap:3px;margin-bottom:5px}.position-picker-draft-summary span{display:grid;gap:2px;padding:5px;font-size:6px}.position-picker-draft-summary b{text-align:left;font-size:9px}
  .position-picker-mode{gap:3px;margin-bottom:5px}.position-picker-mode button{min-height:34px;padding:5px;font-size:8px}
  .position-picker-panel{display:flex;min-height:0;flex-direction:column;justify-content:flex-start;gap:7px;padding:3px}
  .position-picker-panel .position-pitch{order:1;width:min(100%,318px);min-width:min(240px,100%);height:auto;min-height:360px;max-height:430px;flex:0 0 auto}
  .position-picker-panel>.position-picker-hint{order:2;width:min(100%,330px);margin:0;font-size:9px;line-height:1.35;text-align:center}
  .position-picker-no-secondary{order:3;width:min(100%,330px);min-height:38px;margin:0}
  .position-pitch button{left:clamp(21px,var(--pitch-x),calc(100% - 21px));top:clamp(21px,var(--pitch-y),calc(100% - 21px));width:38px;height:38px;min-width:38px}
  .position-picker-actions{grid-template-columns:1fr 2fr;gap:6px;padding-top:6px}.position-picker-actions button{min-height:40px}
  .club-tactic-card,.squad-position-pitch-card,.squad-position-pitch-card.is-compact{grid-template-columns:1fr}
  .club-tactic-card p,.squad-position-pitch-card p{grid-column:auto}.squad-position-pitch{width:min(100%,320px)}.squad-position-metrics{grid-template-columns:repeat(2,1fr)}
}
@media(max-height:620px){
  .position-picker-card{padding-top:7px;padding-bottom:7px}
  .position-picker-head h3{font-size:16px}.position-picker-close{width:38px;height:38px;flex-basis:38px}
  .position-picker-panel .position-pitch{width:min(100%,266px);height:360px;min-height:360px;max-height:none}
  .position-pitch button{width:34px;height:34px;min-width:34px;font-size:7px}
}
