/* GP Platform layout for the Coach Edition (2 Nov 2026, Dries: light theme,
   platform layout on every screen). body.pf is set at boot. Tokens only. */
/* GP Platform layout for the Coach Edition (mock layer, injected). Tokens only. */
body.pf{background:var(--bg)}
.pf .ce-topbar{background:var(--surface);border-bottom:1px solid var(--border);height:58px;padding:0 20px;display:flex;align-items:center;gap:12px}
.theme-master.pf-root .pf .ce-topbar{background:#1B2A47;border-bottom-color:#1B2A47}
.theme-master.pf-root .pf .ce-brand-t{color:#F4F2EE}.theme-master.pf-root .pf .ce-brand-s{color:#AFC0DD}
.theme-master.pf-root .pf .topbar-logo img{filter:brightness(0) invert(1)}
.pf .ce-proto-pill{display:none}
.pf-role{font:700 11px 'Barlow Semi Condensed';letter-spacing:.14em;text-transform:uppercase;border:1px solid currentColor;border-radius:99px;padding:3px 10px;opacity:.85}
.pf-who{font:600 14px Barlow;opacity:.9}
.theme-master.pf-root .pf .pf-role,.theme-master.pf-root .pf .pf-who,.theme-master.pf-root .pf .pf-sync{color:#F4F2EE}
.pf-sync{font-size:12px;opacity:.65;margin-left:auto}
.pf .ce-side{top:58px;height:calc(100vh - 58px);width:236px;background:var(--surface);padding:18px 12px;gap:4px}
.pf .ce-side .nav-item{font:600 15px Barlow;padding:11px 14px;border-radius:10px;color:var(--text2);gap:12px}
.pf .ce-side .nav-item.active{background:var(--surface2);color:var(--text);box-shadow:inset 3px 0 0 var(--accent)}
.pf-side-foot{margin-top:auto;border-top:1px solid var(--border);padding:12px 6px 0;font-size:12.5px;color:var(--text2)}
.pf-side-foot b{display:block;font:800 18px 'Barlow Condensed';color:var(--text)}
.pf-side-bar{height:6px;border-radius:3px;background:var(--surface2);margin-top:6px;overflow:hidden}.pf-side-bar i{display:block;height:100%;background:var(--accent)}
.pf .ce-main{padding:0 30px 50px}
.pf .ce-main > *{max-width:1200px}
/* the hero band */
.pf .page-header.pf-hero,.pf-hero{position:relative;display:block;margin:0 auto 22px;padding:26px 34px 26px;border-radius:0 0 28px 28px;color:#fff;box-shadow:none;
 background-image:radial-gradient(640px 280px at 16% 20%,rgba(120,150,210,.24),transparent 70%),linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(160deg,#1B2A47,#0E1626);
 background-size:auto,28px 28px,28px 28px,auto;border:0}
.theme-master-dark .pf .page-header.pf-hero,.theme-master-dark .pf-hero{background-image:radial-gradient(640px 280px at 16% 20%,rgba(120,150,210,.16),transparent 70%),linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(180deg,#101828,#080D17);border:1px solid #1B2A47;border-top:0}
.pf .pf-hero .page-title{font:800 52px/1 'Barlow Condensed';text-transform:uppercase;color:#fff;letter-spacing:.01em}
.pf .pf-hero .page-sub{color:#C9D1E0;font-size:15px;margin-top:6px;max-width:720px}
.pf .pf-hero > div:first-child{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap}
.pf .pf-hero .btn{background:#F4F2EE;color:#1B2A47;border:0;font:700 14px 'Barlow Semi Condensed';border-radius:10px;padding:10px 16px}
.pf .pf-hero .btn.btn-ghost{background:rgba(255,255,255,.07);color:#fff;border:1px solid rgba(255,255,255,.3)}
.pf-hrow{display:flex;gap:14px;align-items:stretch;margin-top:22px;flex-wrap:wrap}
.pf-stat{flex:1 1 0;min-width:150px;border:1px solid rgba(255,255,255,.2);border-radius:14px;padding:13px 16px;background:rgba(255,255,255,.05)}
.pf-stat span{display:block;font:700 11px 'Barlow Semi Condensed';letter-spacing:.13em;text-transform:uppercase;color:#C9D1E0}
.pf-stat b{display:block;font:800 40px/1.05 'Barlow Condensed';color:#fff}.pf-stat b small{font-size:16px;color:#C9D1E0;margin-left:3px}
.pf-stat em{font-style:normal;font-size:13px;color:#C9D1E0}.pf-stat em.up{color:#9EE2B1;font:800 15px 'Barlow Condensed'}
.pf-tabs{display:flex;gap:26px;margin:22px 0 -26px;border-top:1px solid rgba(255,255,255,.12)}
.pf-tabs span{font:700 14px 'Barlow Semi Condensed';color:#AFC0DD;padding:13px 0}.pf-tabs span.on{color:#fff;box-shadow:inset 0 -3px 0 #F4F2EE}
.pf .pf-hero .form-label{color:#C9D1E0}.pf .pf-hero .form-input{background:rgba(255,255,255,.08);color:#fff;border-color:rgba(255,255,255,.25)}
/* cards */
.pf .card{border-radius:16px}
.theme-master-dark .pf .card{background:var(--surface);border-color:#1B2A47}
/* athlete rows as tiles */
.pf .ce-arow{grid-template-columns:72px minmax(0,1fr) 260px auto;padding:14px 18px}
.pf-mring{width:64px;height:64px}
.pf .ce-aname{font-size:24px}
.pf-chip{display:inline-block;font:700 12px 'Barlow Semi Condensed';letter-spacing:.06em;text-transform:uppercase;border-radius:7px;padding:4px 9px;background:var(--surface2);color:var(--text)}
.pf-up{font:800 16px 'Barlow Condensed';color:var(--good);margin-left:8px}.theme-master-dark .pf-up{color:#9EE2B1}
/* board */
.pf .ce-board-row, .pf [class*="ce-bd"]{border-radius:16px}
/* modal */
.pf .modal{border-radius:18px;overflow:hidden}.pf .modal-header{background:#1B2A47;color:#fff}.pf .modal-title{color:#fff;font:800 26px 'Barlow Condensed';text-transform:uppercase}
.pf .modal-close{color:#fff}
@media(max-width:760px){
 .pf .ce-side{height:auto;width:auto;top:58px;padding:6px 8px}
 .pf .ce-side .nav-item{font-size:11px;padding:6px 2px}
 .pf-side-foot{display:none}
 .pf .ce-main{padding:0 0 40px}
 .pf .page-header.pf-hero,.pf-hero{border-radius:0 0 22px 22px;padding:20px 18px}
 .pf .pf-hero .page-title{font-size:36px}
 .pf-stat{min-width:120px}.pf-stat b{font-size:30px}
 .pf .ce-main > *:not(.pf-hero){margin-left:12px;margin-right:12px}
 .pf .ce-arow{grid-template-columns:56px 1fr}
 .pf-steps,.pf-mark{grid-template-columns:1fr}
 .pf-who,.pf-sync{display:none}
}
.pf .ce-side{align-self:stretch;height:auto;min-height:calc(100vh - 58px)}
.pf .ce-brow-h{border-radius:16px;color:#fff;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(160deg,#1B2A47,#0E1626);background-size:28px 28px,28px 28px,auto}
.theme-master-dark .pf .ce-brow-h{border:1px solid #2A416E}

@media(max-width:760px){ .pf .ce-side{min-height:0;height:auto;align-self:auto} .pf .ce-arow{grid-template-columns:64px 1fr;gap:10px} .pf .ce-aright{grid-column:2} .pf .ce-aact{grid-column:1/-1} }
.pf-chip{white-space:nowrap}

.st-flow{display:flex;gap:10px;align-items:center;margin:0 0 18px;font:700 13px 'Barlow Semi Condensed';letter-spacing:.08em;text-transform:uppercase;color:var(--text2)}
.st-flow span{background:var(--surface);border:1px solid var(--border);border-radius:99px;padding:6px 14px}.st-flow span.on{background:var(--accent);color:var(--btn-text);border-color:var(--accent)}
.st-2{display:grid;grid-template-columns:1.55fr 1fr;gap:16px;align-items:start}
.st-box{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:18px 20px;margin-bottom:16px}
.st-box h4{margin:0 0 4px;font:800 21px 'Barlow Condensed';text-transform:uppercase;color:var(--text)}
.st-box .sub{font-size:13.5px;color:var(--text2);margin-bottom:12px}
.st-app{background:#FBFAF7;border:1.5px dashed var(--border2);border-radius:16px;padding:16px 18px}
.st-app h4{margin:0 0 2px;font:800 19px 'Barlow Condensed';text-transform:uppercase;color:var(--text)}
.st-app pre{white-space:pre-wrap;font:500 13.5px/1.55 Barlow;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:12px 14px;margin:10px 0;color:var(--text)}
.st-app .row{display:flex;gap:8px}.st-btn{font:700 13px 'Barlow Semi Condensed';border-radius:9px;padding:8px 13px;border:1.5px solid var(--accent);background:var(--accent);color:var(--btn-text)}.st-btn.g{background:transparent;color:var(--text)}
.st-j{display:inline-block;font:800 10px 'Barlow Semi Condensed';letter-spacing:.08em;text-transform:uppercase;background:#F2B33D;color:#1A1A1A;border-radius:4px;padding:2px 5px;vertical-align:1px}
.pb-lad{display:flex;flex-direction:column;gap:8px}
.pb-r{display:grid;grid-template-columns:54px 1fr 150px 120px;gap:12px;align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:10px 14px}
.pb-r .n{font:800 30px 'Barlow Condensed';color:var(--text3);text-align:center}
.pb-r b{font:700 16px Barlow;display:block}.pb-r small{font-size:12.5px;color:var(--text2)}
.pb-r .d{font:800 22px 'Barlow Condensed';color:var(--text);text-align:right}
.pb-r .w{font:700 11px 'Barlow Semi Condensed';letter-spacing:.08em;text-transform:uppercase;background:var(--surface2);border-radius:6px;padding:4px 8px;text-align:center;color:var(--text2)}
.pb-r.on{border:2px solid var(--accent);background:#F5F7FB}.pb-r.on .n{color:var(--accent)}
.pb-sig{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.pb-sig div{border-radius:12px;padding:14px;border:1px solid var(--border)}
.pb-sig b{display:block;font:800 22px 'Barlow Condensed';text-transform:uppercase}
.pb-sig p{margin:4px 0 0;font-size:14px;color:var(--text2)}
.pb-sig .up{background:#EAF3EC;border-color:#BBD8C3}.pb-sig .up b{color:#1f6f3a}
.pb-sig .st{background:#F7F1E8;border-color:#E7D2B4}.pb-sig .st b{color:#9A521C}
.pb-sig .dn{background:#F4ECEC;border-color:#DDC0C0}.pb-sig .dn b{color:#8c2a2a}
.pb-src{font-size:12px;color:var(--text3);margin-top:6px}
.tk-row{display:grid;grid-template-columns:170px minmax(240px,1fr) 190px auto;gap:14px;align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:12px 16px;margin-bottom:10px}
.tk-row b{font:800 20px 'Barlow Condensed';display:block}.tk-row small{font-size:12.5px;color:var(--text2)}
.tk-sp{height:46px}
.tk-rung{font:700 14px Barlow}.tk-rung span{display:block;font-size:12.5px;color:var(--text2);font-weight:500}
.tk-btn{font:700 13px 'Barlow Semi Condensed';border-radius:9px;padding:8px 12px;border:1.5px solid var(--accent);background:var(--accent);color:var(--btn-text)}
.tk-btn.g{background:transparent;color:var(--text)}
.tk-hint{font:700 12px 'Barlow Semi Condensed';letter-spacing:.06em;color:#1f6f3a;text-transform:uppercase}
.bl{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.bl > div{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:16px 18px;display:flex;flex-direction:column}
.bl .t{font:700 12px 'Barlow Semi Condensed';letter-spacing:.12em;text-transform:uppercase;color:var(--text2)}
.bl h5{margin:2px 0 8px;font:800 28px 'Barlow Condensed';text-transform:uppercase;color:var(--text)}
.bl .row{display:flex;justify-content:space-between;padding:7px 0;border-top:1px solid var(--border);font-size:14.5px}.bl .row b{font:800 18px 'Barlow Condensed'}
.bl .for{font-size:13px;color:var(--text2);margin:8px 0 12px}
.bl > div.pick{border:2px solid var(--accent)}
.tk-btn{white-space:nowrap}
.pf-since{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:14px 18px;margin-bottom:20px}
.pf-k2{font:700 12px 'Barlow Semi Condensed';letter-spacing:.14em;text-transform:uppercase;color:var(--text2);margin-bottom:8px}
.pf-ts{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}
.pf-t span{font:700 11px 'Barlow Semi Condensed';letter-spacing:.08em;text-transform:uppercase;color:var(--text2)}
.pf-t b{display:block;font:800 28px/1.1 'Barlow Condensed';color:var(--text)}.pf-t b small{font-size:13px;color:var(--text2);margin-left:2px}
.pf-t em{font:800 16px 'Barlow Condensed';font-style:normal;color:var(--good)}
/* real-build additions */
.pf .pf-hero .pf-in{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap}
.pf-hero .page-title{font:800 52px/1 'Barlow Condensed';text-transform:uppercase;color:#fff}
.pf-hero .page-sub{color:#C9D1E0;font-size:15px;margin-top:6px}
.pf-backbtn{background:none;border:0;color:#C9D1E0;font:600 13px 'Barlow Semi Condensed';padding:0;margin-bottom:8px;cursor:pointer}
.pf-hbtns{display:flex;gap:8px;flex-wrap:wrap}
.pf-hrow-ath{align-items:center}.pf-sc{min-width:220px}
.pf-k{font:700 12px 'Barlow Semi Condensed';letter-spacing:.14em;text-transform:uppercase;color:#AFC0DD}
.pf-chg{font:800 22px 'Barlow Condensed';color:#9EE2B1}.pf-blk{font:800 24px 'Barlow Condensed';margin-top:6px;color:#fff}.pf-sub{font-size:13px;color:#C9D1E0}
.pf-mcell{cursor:pointer}
.pf-t em.dn{color:var(--warn)}
@media(max-width:760px){ .pf-hero .page-title{font-size:36px} .pf-ring{width:110px;height:110px} .pf-ts{grid-template-columns:repeat(2,1fr)} }
.pf-t{border:1px solid var(--border);border-radius:11px;padding:10px 12px;background:var(--surface2)}
/* progress (real) */
.cep-tabs button{background:none;border:0;font:700 14px 'Barlow Semi Condensed';color:#AFC0DD;padding:13px 0;cursor:pointer}
.cep-tabs button.on{color:#fff;box-shadow:inset 0 -3px 0 #F4F2EE}
.cep-step{display:grid;grid-template-columns:90px 1fr;gap:12px;padding:10px 0;border-top:1px solid var(--border)}
.cep-step .n{font:800 22px 'Barlow Condensed';text-transform:uppercase;color:var(--text)}
.cep-dr{display:flex;flex-direction:column;gap:6px}
.cep-dr .pb-r,.st-box > .pb-r{grid-template-columns:1fr auto;margin-bottom:6px}
.cep-acts{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.cep-nospark{font-size:12.5px;color:var(--text3);padding:14px 0}
.cep-bl .st-app{margin-top:10px}.cep-bl .st-app pre{font-size:12.5px}
.st-app .sub{font-size:13px;color:var(--text2)}
@media(max-width:900px){ .st-2{grid-template-columns:1fr} .tk-row{grid-template-columns:1fr} .bl{grid-template-columns:1fr} .pb-sig{grid-template-columns:1fr} .cep-acts{justify-content:flex-start} }
@media print{ .pf-hero,.pf-side-foot{display:none!important} body[data-print="progress"] .st-app .row{display:none} }
/* Report option A */
.ce-report.ra{padding:40px 46px;border-radius:14px}
.ra-top{display:flex;justify-content:space-between;align-items:center}.ra-logo{max-height:52px;max-width:200px;object-fit:contain}div.ra-logo{width:140px;height:48px}
.ra-club{text-align:right;display:flex;flex-direction:column}.ra-club b{font:800 18px 'Barlow Condensed';color:#1B2A47}.ra-club span{font-size:12.5px;color:#666}
.ra-hero{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:26px;padding-bottom:24px;border-bottom:3px solid #1B2A47}
.ra-eye{font:700 12px 'Barlow Semi Condensed';letter-spacing:.16em;text-transform:uppercase;color:#888}
.ra-name{font:800 60px/.95 'Barlow Condensed';text-transform:uppercase;color:#1B2A47;margin-top:6px;word-break:break-word}
.ra-meta{font-size:15px;color:#555;margin-top:6px}
.ra-block{margin-top:16px;border-left:4px solid #1B2A47;padding-left:12px}.ra-block span{font:700 11px 'Barlow Semi Condensed';letter-spacing:.14em;text-transform:uppercase;color:#888}.ra-block b{display:block;font:800 26px 'Barlow Condensed';color:#1B2A47}
.ra-ring{text-align:center;flex-shrink:0}.ra-chg{font:800 22px 'Barlow Condensed';color:#1f6f3a}.ra-chg.dn{color:#9A521C}.ra-chg small{font:500 12px Barlow;color:#777}
.ra-sec{display:flex;justify-content:space-between;align-items:baseline;font:800 20px 'Barlow Condensed';text-transform:uppercase;color:#1B2A47;margin:22px 0 6px;gap:10px;flex-wrap:wrap}
.ra-sec span{font:500 12px Barlow;text-transform:none;color:#666;display:flex;align-items:center;gap:6px}
.ra-sec i{width:10px;height:10px;border-radius:50%;display:inline-block}.ra-sec .k0{background:#C9C6C0}.ra-sec .k1{background:#1B2A47;margin-left:8px}
.ra-db{display:grid;grid-template-columns:170px 1fr 130px 60px;gap:12px;align-items:center;padding:9px 0;border-bottom:1px solid #EEE}
.ra-dbn{font-size:14px;font-weight:600}.ra-dbbar{position:relative;height:10px;background:#F0EFEC;border-radius:5px}
.ra-dbbar i{position:absolute;top:3px;height:4px;background:#1B2A47;opacity:.35;border-radius:2px}
.ra-dbbar s,.ra-dbbar b{position:absolute;top:-2px;width:14px;height:14px;border-radius:50%;transform:translateX(-50%)}.ra-dbbar s{background:#C9C6C0}.ra-dbbar b{background:#1B2A47}
.ra-dbv{text-align:right}.ra-dbv small{color:#999;font-size:12px;margin-right:6px;text-decoration:line-through}.ra-dbv strong{font:800 20px 'Barlow Condensed';color:#1B2A47}.ra-dbv span{font-size:12px;color:#666;margin-left:2px}
.ra-dbc{font:800 17px 'Barlow Condensed';color:#1f6f3a;text-align:right}.ra-dbc.dn{color:#9A521C}
.ra-three{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:20px}
.ra-card{border:1px solid #E4E2DE;border-radius:10px;padding:13px 14px}.ra-card.ra-dark{background:#1B2A47;border-color:#1B2A47}.ra-card.ra-dark .ra-k{color:#AFC0DD}.ra-card.ra-dark .ra-big{color:#fff;font-size:24px}.ra-card.ra-dark .ra-s{color:#C9D1E0}
.ra-k{font:700 11px 'Barlow Semi Condensed';letter-spacing:.14em;text-transform:uppercase;color:#888}
.ra-big{font:800 32px/1.1 'Barlow Condensed';color:#1B2A47;margin:3px 0}.ra-s{font-size:12.5px;color:#555;line-height:1.4}
.ra-foot{font-size:11px;color:#999;border-top:1px solid #EEE;padding-top:8px;margin-top:22px}
.ra-p2{margin-top:34px;padding-top:24px;border-top:2px dashed #E4E2DE}.ra-top2{margin-bottom:12px}
@media(max-width:700px){ .ce-report.ra{padding:20px 16px} .ra-hero{flex-direction:column;align-items:flex-start} .ra-name{font-size:40px} .ra-db{grid-template-columns:1fr 110px 50px}.ra-dbbar{display:none} .ra-three{grid-template-columns:1fr} }
@media print{ .ce-report.ra{padding:0;border:0} .ra-p1{min-height:265mm;display:flex;flex-direction:column} .ra-p1 .ra-foot{margin-top:auto} .ra-p2{break-before:page;page-break-before:always;border-top:0;margin-top:0;padding-top:0} }
/* Methods */
.cem-tag{display:inline-block;margin-top:4px;font:800 10px 'Barlow Semi Condensed';letter-spacing:.08em;text-transform:uppercase;border-radius:5px;padding:3px 7px}
.cem-t td{vertical-align:top;font-size:14px}.cem-t td b{font:600 14px Barlow}.cem-t sup{color:var(--text2);font-weight:700}
.cem-refs{margin:0;padding-left:20px;font-size:13px;line-height:1.5;color:var(--text)}.cem-refs li{margin-bottom:6px}
@media print{ body[data-print="methods"] .st-2{grid-template-columns:1fr} }
.tbl{width:100%;border-collapse:collapse;font-size:14px}
.tbl th{font:700 11px 'Barlow Semi Condensed';letter-spacing:.1em;text-transform:uppercase;color:var(--text2);text-align:left;padding:6px;border-bottom:2px solid var(--accent)}
.tbl td{padding:9px 6px;border-bottom:1px solid var(--border);vertical-align:top}
/* Selects inside the dark band: the open list is drawn by the browser on white, so its options need dark text. */
.pf-hero select option,.pf-hero select optgroup{color:#1A1A1A;background:#fff}
/* sign in */
.ce-signedout .ce-side{display:none}
.ce-signin{max-width:440px!important;margin:0 auto;padding:22px 24px}
