@font-face{font-family:'Barlow Condensed';src:url('fonts/BarlowCondensed-ExtraBold.ttf') format('truetype');font-weight:800;font-style:normal;font-display:swap}
@font-face{font-family:Montserrat;src:url('fonts/Montserrat-Latin-Variable.woff') format('woff');font-weight:100 900;font-style:normal;font-display:swap}
/* Public club/preview tactics. Shares the admin's card language, not its write controls. */
.public-pitch-scroll{min-width:0;max-width:100%;overflow:auto;overscroll-behavior-x:contain}
.public-tactical-pitch{--public-pitch-height:clamp(540px,calc(100dvh - 240px),640px);container-type:size;position:relative;width:100%;min-width:680px;height:var(--public-pitch-height);min-height:0;overflow:hidden;border:1px solid #345a62;box-shadow:none;background:linear-gradient(90deg,transparent 49.9%,#d7fff320 50%,transparent 50.1%),#073526}
.public-tactical-pitch:before{content:'';position:absolute;inset:16px;border:1px solid #d7fff329;pointer-events:none}
.public-tactical-pitch:after{pointer-events:none}
.public-tactical-pitch .public-player-card{--card-y:var(--y);position:absolute;left:var(--x);top:var(--card-y);z-index:2;display:grid;grid-template-rows:minmax(0,1fr) 44px;align-items:stretch;justify-items:stretch;width:clamp(104px,15%,146px);height:clamp(98px,18cqh,128px);padding:0;gap:0;transform:translate(-50%,-50%);border:1px solid #8d7948;border-radius:12px 12px 18px 18px;background:#0a2035;color:#fff;box-shadow:none;text-decoration:none;cursor:pointer;filter:none;opacity:1;isolation:isolate}
.public-tactical-pitch .public-player-card:is(:hover,:focus-visible){transform:translate(-50%,-50%);z-index:5;border-color:#ffd05a;outline:3px solid #ffd05a;outline-offset:3px;filter:none}
.public-player-card .public-card-position{position:absolute;z-index:3;left:6px;top:5px;font:700 10px/1.4 Montserrat,Arial,sans-serif;color:#ffe39b;white-space:nowrap}
.public-player-card .public-card-number{position:absolute;z-index:3;right:6px;top:5px;font:800 16px/1.1 'Barlow Condensed',Arial,sans-serif;color:#fff}
.public-player-card .public-card-photo{position:relative;display:grid;place-items:center;min-height:0;overflow:hidden;border-radius:11px 11px 0 0;background:linear-gradient(145deg,#164d70,#0b263e 65%);color:#b8d8f0}
.public-card-photo>b{font:800 32px/1 'Barlow Condensed',Arial,sans-serif}
.public-card-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center var(--focus,35%)}
.public-player-card .public-card-details{display:grid;grid-template-rows:30px 14px;min-height:0;text-align:center}
.public-player-card .public-card-details b{display:flex;align-items:center;justify-content:center;min-width:0;margin:0;padding:1px 4px;font:700 12px/1.2 Montserrat,Arial,sans-serif;color:#fff;overflow:hidden;overflow-wrap:anywhere;text-transform:none;letter-spacing:0}
.public-player-card .public-card-details small{margin:0;padding:0 3px 2px;font:500 9px/1.2 Montserrat,Arial,sans-serif;color:#c8deef;white-space:nowrap;letter-spacing:0}
.public-card-captain{position:absolute;z-index:3;left:5px;bottom:46px;display:grid;place-items:center;width:17px;height:17px;border-radius:4px;background:#ffd05a;color:#061525;font:800 11px/1 Montserrat,Arial,sans-serif}
.public-tactical-pitch[data-formation="4-3-3"] .public-player-card{--card-y:42%}
.public-tactical-pitch[data-formation="4-3-3"] [data-position=DMF]{--card-y:48%}
.public-tactical-pitch[data-formation="4-4-2"] .public-player-card{--card-y:43%}
.public-tactical-pitch[data-formation="4-2-3-1"] .public-player-card{--card-y:31%}
.public-tactical-pitch[data-formation="4-2-3-1"] [data-position=DMF]{--card-y:51%}
.public-tactical-pitch[data-formation="3-5-2"] .public-player-card{--card-y:50%}
.public-tactical-pitch[data-formation="3-5-2"] [data-position=AMF]{--card-y:31%}
.public-tactical-pitch .public-player-card[data-position=CF]{--card-y:12%}
.public-tactical-pitch .public-player-card:is([data-position=CB],[data-position=LB],[data-position=RB]){--card-y:71%}
.public-tactical-pitch .public-player-card[data-position=GK]{--card-y:90%}
.public-tactical-pitch[data-formation="4-3-3"] :is([data-position=CF],[data-position=LWF],[data-position=RWF]){--card-y:14%}
.home-public .public-tactical-pitch.public-pitch-preview{--public-pitch-height:520px;min-width:640px;height:520px;min-height:0;background:linear-gradient(90deg,transparent 49.9%,#d7fff320 50%,transparent 50.1%),#073526}
.public-pitch-preview .public-player-card{width:clamp(86px,15%,116px);height:94px;grid-template-rows:minmax(0,1fr) 38px}
.public-pitch-preview .public-card-details{grid-template-rows:26px 12px}
.public-pitch-preview .public-card-details b{font-size:10px}
.public-pitch-preview .public-card-details small{font-size:8px}
.public-pitch-preview .public-card-position{font-size:9px}
.public-pitch-preview .public-card-number{font-size:14px}
.public-pitch-preview .public-card-captain{bottom:40px}
.home-public .public-tactical-pitch:has(>.showcase-pitch-empty){container-type:normal;min-width:0;height:auto;min-height:240px}
.club-stage .roster-panel{min-width:0}
.club-stage .tactical-layout{grid-template-columns:minmax(0,1fr);align-items:start;min-width:0}
.club-stage .bench-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-height:300px;overflow:auto;align-self:start}
.club-stage .bench-group{min-width:0}
.club-stage .bench-group+.bench-group{border-top:0;border-left:1px solid #304b64}
.club-stage .bench-player{min-height:64px;cursor:pointer}
.club-stage .bench-player b{font-size:12px;line-height:1.4}
.club-stage .bench-player small{font-size:10px;line-height:1.5;color:#bdd2e7}
.club-stage :is(.bench-player,.roster-player):focus-visible{outline:3px solid #ffd05a;outline-offset:-3px}
.club-stage .tactical-heading{align-items:center;flex-wrap:wrap;gap:8px 20px}
.club-stage .tactical-heading>span{font-size:12px;line-height:1.5;color:#b8cce0;max-width:34ch}
.club-stage .tactical-heading h3{font:800 30px/1.15 'Barlow Condensed',Arial,sans-serif}
@media(min-width:1101px){.club-stage{grid-template-columns:240px minmax(0,1fr);align-items:start}.club-stage .club-identity{padding:24px}.club-stage .club-identity h3{font:800 30px/1.2 'Barlow Condensed',Arial,sans-serif}}
@media(min-width:1600px){.club-stage .tactical-layout{grid-template-columns:minmax(0,1fr) 230px}.club-stage .bench-panel{display:block;max-height:var(--public-pitch-height,640px)}.club-stage .bench-group+.bench-group{border-left:0;border-top:1px solid #304b64}}
@media(max-width:600px){.club-stage .bench-panel{grid-template-columns:1fr}.club-stage .bench-group+.bench-group{border-left:0;border-top:1px solid #304b64}.club-stage .tactical-heading>span{text-align:left;max-width:none}}









/* Player dossier: sporting identity, bounded portrait and an independent statistics rail. */
.public-basic-player{scroll-margin-top:110px;padding-block:32px 40px}
.public-basic-player:focus{outline:none}
.public-basic-player :is(a,button):focus-visible{outline:3px solid #ffd05a;outline-offset:4px}
.basic-player-return{display:inline-flex;align-items:center;gap:10px;min-height:44px;margin-bottom:16px;padding:10px 16px;border:1px solid #43627e;border-radius:8px;background:#0a1b2c;color:#bfdef6;font:600 13px/1.5 Montserrat,Arial,sans-serif}
.basic-player-return:hover{border-color:#85c7ff;color:#fff;background:#102b43}
.basic-player-return svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.basic-player-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:0;padding:0;overflow:hidden;border:1px solid #34536f;border-radius:16px;background:#071726;box-shadow:0 18px 48px #0003}
.basic-player-media{display:flex;flex-direction:column;justify-content:center;gap:14px;min-width:0;padding:24px;background:radial-gradient(ellipse at 50% 22%,#14528788,transparent 72%),linear-gradient(150deg,#0d2c48,#071b2d);border-top:3px solid #ffc94d}
.basic-player-photo{position:relative;width:100%;aspect-ratio:4/5;min-height:0;overflow:hidden;border:1px solid #46759b;border-radius:12px;background:radial-gradient(ellipse at 50% 32%,#1a5780 0,#0c2b47 66%);color:#c6e2f7;box-shadow:inset 0 0 0 6px #061a2b88,0 16px 34px #0005}
.basic-player-photo[data-photo-kind="presentation"]{aspect-ratio:3/4;background:radial-gradient(ellipse at 50% 42%,#1b639362,transparent 74%),linear-gradient(155deg,#123755,#061827)}
.basic-player-photo[data-photo-kind="portrait"]{background:radial-gradient(ellipse at 50% 34%,#1b6393 0,#0c2b47 68%)}
.basic-player-photo img{position:absolute;inset:0;width:100%;height:100%;padding:10px;object-fit:contain;object-position:center center}
.basic-player-photo[data-photo-kind="portrait"] img{padding:0;object-position:center bottom}
.basic-player-photo-note[hidden]{display:none}
.basic-player-photo-fallback{position:absolute;inset:14px 4px 0;display:grid;place-items:center}
.basic-player-photo-fallback[hidden]{display:none}
.basic-player-photo-fallback svg{position:absolute;width:100%;height:100%;fill:none;stroke-width:1.2}
.basic-kit-body{fill:#143b59;stroke:#6aa7cc}.basic-kit-lines{stroke:#6aa7cc;opacity:.7}
.basic-player-photo-fallback b{position:relative;align-self:center;margin-top:20px;font:800 clamp(58px,5vw,86px)/1 'Barlow Condensed',Arial,sans-serif;color:#d2e9f8}
.basic-player-position{display:inline-flex;align-self:flex-start;padding:5px 8px;border:1px solid #ffc94d66;border-radius:5px;background:#071a2de8;color:#ffda76;font:700 11px/1.3 Montserrat,Arial,sans-serif}
.basic-player-photo-note{position:absolute;bottom:10px;left:0;right:0;color:#c1d7e8;font:500 10px/1.4 Montserrat,Arial,sans-serif;text-align:center}
.basic-player-club{display:grid;grid-template-columns:46px minmax(0,1fr);gap:12px;align-items:center}
.basic-player-club-mark{position:relative;display:grid;place-items:center;width:46px;height:52px;overflow:hidden;color:#cde2f4;font:800 15px/1 'Barlow Condensed',Arial,sans-serif}
.basic-player-club-mark img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.basic-player-club dl{margin:0;min-width:0}
.basic-player-club dt{font:500 10px/1.5 Montserrat,Arial,sans-serif;color:#b4cce0;text-transform:uppercase;letter-spacing:.07em}
.basic-player-club dd{margin:3px 0 0;color:#fff;font:800 23px/1.15 'Barlow Condensed',Arial,sans-serif;overflow-wrap:anywhere}
.basic-player-copy{min-width:0;padding:32px 36px}
.basic-player-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding-bottom:24px;border-bottom:1px solid #29465f}
.basic-player-heading>div{min-width:0}
.basic-player-category{display:block;margin-bottom:10px;color:#91c9f7;font:600 11px/1.5 Montserrat,Arial,sans-serif;letter-spacing:.09em;text-transform:uppercase}
.basic-player-heading h2{margin:0;color:#fff;font:800 clamp(34px,3.8vw,60px)/1.05 'Barlow Condensed',Arial,sans-serif;letter-spacing:-.015em;text-transform:uppercase;overflow-wrap:anywhere}
.basic-player-shirt{flex-shrink:0;min-width:70px;margin:0;padding:12px 16px;border:1px solid #47617a;border-radius:10px;text-align:center;background:#102940}
.basic-player-shirt dt{font:600 10px/1.4 Montserrat,Arial,sans-serif;color:#c1d4e5;text-transform:uppercase;letter-spacing:.06em}
.basic-player-shirt dd{margin:4px 0 0;color:#ffd05a;font:800 42px/1 'Barlow Condensed',Arial,sans-serif}
.basic-player-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px;margin:10px 0 22px}
.basic-player-facts>div{min-width:0;padding:16px 0;border-bottom:1px solid #254056}
.basic-player-facts dt{margin:0 0 6px;color:#a9c5dc;font:500 11px/1.5 Montserrat,Arial,sans-serif}
.basic-player-facts dd{margin:0;color:#edf5fc;font:600 14px/1.5 Montserrat,Arial,sans-serif;overflow-wrap:anywhere}
.basic-player-facts .basic-player-availability{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:14px;padding:10px 14px;border:1px solid #2e6558;border-radius:7px;background:#12352c}
.basic-player-availability dt{margin:0;color:#c3e4d6}.basic-player-availability dd{display:flex;gap:8px;align-items:center;color:#a9efd0;font-size:12px}
.basic-player-availability i{width:6px;height:6px;background:currentColor;border-radius:50%}
.basic-player-facts .basic-player-availability.is-suspended{background:#361d29;border-color:#98596e}.basic-player-availability.is-suspended :is(dt,dd){color:#ffc4ce}
.basic-player-notice{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border:1px solid #8d763e;border-radius:8px;background:#2d2719}
.basic-player-notice>svg{width:20px;height:20px;flex-shrink:0;fill:none;stroke:#ffda7d;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.basic-player-status{display:block;color:#ffdf8b;font:600 12px/1.5 Montserrat,Arial,sans-serif}
.basic-player-notice p{max-width:68ch;margin:4px 0 0;color:#dbcfaf;font:400 12px/1.6 Montserrat,Arial,sans-serif}
.basic-player-performance{grid-column:1/-1;margin:0;padding:24px 28px 26px;border-top:1px solid #36516c;background:linear-gradient(110deg,#0d2943,#081c2f)}
.basic-player-performance>header{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:18px}
.basic-player-performance>header span{color:#9dc5e4;font:600 10px/1.5 Montserrat,Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase}
.basic-player-performance h3{margin:5px 0 0;color:#fff;font:800 25px/1.2 'Barlow Condensed',Arial,sans-serif}
.basic-player-performance>header p{max-width:36ch;margin:0;color:#afc8de;font:400 11px/1.6 Montserrat,Arial,sans-serif;text-align:right}
.basic-player-performance dl{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:0}
.basic-player-performance dl>div{display:flex;flex-direction:column;justify-content:space-between;gap:12px;min-width:0;padding:16px 18px;border:1px solid #426581;border-radius:10px;background:#0c2237}
.basic-player-performance dt{display:flex;align-items:center;gap:9px;margin:0;color:#c2d9eb;font:500 11px/1.4 Montserrat,Arial,sans-serif}
.basic-player-performance dt svg{width:21px;height:21px;flex-shrink:0;fill:none;stroke:#7dc5ff;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.basic-player-performance dd{margin:0;color:#f3f8ff;font:800 42px/1 'Barlow Condensed',Arial,sans-serif;font-variant-numeric:tabular-nums}
.basic-player-performance dl>div:nth-child(2) dd{color:#ffd05a}
@media(max-width:1100px){.basic-player-layout{grid-template-columns:230px minmax(0,1fr)}.basic-player-media{padding:20px}.basic-player-copy{padding:24px}.basic-player-performance{padding:22px}.basic-player-performance dl>div{padding:14px}.basic-player-performance dt{gap:6px;font-size:10px}}
@media(max-width:800px){.basic-player-layout{grid-template-columns:1fr}.basic-player-media{display:grid;grid-template-columns:130px minmax(0,1fr);align-items:center;gap:20px;padding:20px;border-top:3px solid #ffc94d}.basic-player-photo{aspect-ratio:4/5;grid-row:1/3}.basic-player-position{grid-column:2;grid-row:1;align-self:end}.basic-player-club{grid-column:2;grid-row:2}.basic-player-photo-fallback b{font-size:55px}.basic-player-club{grid-template-columns:1fr;justify-items:start;gap:10px}.basic-player-club-mark{width:46px;height:52px}.basic-player-performance dl{gap:8px}.basic-player-performance dl>div{padding:12px}.basic-player-performance dt{display:grid;gap:8px}}
@media(max-width:600px){.public-basic-player{padding-block:20px 28px}.basic-player-copy{padding:22px 20px}.basic-player-heading{gap:12px;padding-bottom:18px}.basic-player-category{font-size:9px;letter-spacing:.05em}.basic-player-shirt{min-width:54px;padding:10px}.basic-player-shirt dd{font-size:34px}.basic-player-facts{gap:0 18px;margin-bottom:18px}.basic-player-facts dd{font-size:12px}.basic-player-facts dt{font-size:10px}.basic-player-notice{padding:12px;gap:9px}.basic-player-performance{padding:20px}.basic-player-performance>header{align-items:start;flex-direction:column;gap:8px}.basic-player-performance>header p{text-align:left;max-width:none}.basic-player-performance dl{grid-template-columns:repeat(3,minmax(0,1fr))}.basic-player-performance dl>div{gap:10px;padding:12px 10px}.basic-player-performance dd{font-size:36px}}
@media(max-width:360px){.basic-player-media{grid-template-columns:108px minmax(0,1fr);gap:14px;padding:16px}.basic-player-position{padding:4px;font-size:9px}.basic-player-club dd{font-size:20px}.basic-player-photo-note{font-size:9px}.basic-player-copy{padding:20px 16px}.basic-player-heading h2{font-size:32px}.basic-player-facts{gap:0 12px}.basic-player-performance{padding:18px 16px}.basic-player-performance dl{grid-template-columns:repeat(2,minmax(0,1fr))}.basic-player-performance dl>div:first-child{grid-column:1/-1;flex-direction:row;align-items:center}.basic-player-performance dl>div:first-child dt{display:flex}}
