/* Team Training uses the same controls and plan/day hierarchy as Athlete Training. */
.ctp-perform{min-width:0;color:var(--ink);font:400 var(--text-body)/1.45 var(--font)}
.ctp-tabs,.ctp-sections,.ctp-venues{display:grid;gap:8px;min-width:0;width:100%;margin:0 0 14px;padding:0;border:0}
.ctp-tabs,.ctp-sections{grid-template-columns:repeat(2,minmax(0,1fr))}
.ctp-venues{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:24px}
.ctp-perform :is(.ctp-tabs,.ctp-sections,.ctp-venues)>button{display:flex;align-items:center;justify-content:center;min-width:0;min-height:var(--control-height,44px);padding:10px 8px;border:0;border-radius:7px;background:var(--ink,#111);color:#fff;font:600 var(--text-label,14px)/1.3 var(--font);white-space:normal;text-align:center;cursor:pointer}
.ctp-perform :is(.ctp-tabs,.ctp-sections,.ctp-venues)>button:is(:hover,:active){background:var(--ink,#111);color:#fff;transform:none}
.ctp-perform :is(.ctp-tabs,.ctp-sections,.ctp-venues)>button[aria-selected=true],.ctp-perform :is(.ctp-tabs,.ctp-sections,.ctp-venues)>button[aria-selected=true]:is(:hover,:active){background:var(--red);color:#fff}
.ctp-content{min-width:0}
.ctp-unit{margin-top:var(--section-space,24px)}
.ctp-unit>header{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px}
.ctp-unit h3{margin:0;font:800 var(--text-body)/1.3 var(--display)}
.ctp-unit>header>span{color:var(--muted);font:400 var(--text-label)/1.4 var(--font)}
.ctp-people,.ctp-group-plans,.ctp-plan-list{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;min-width:0}
.ctp-person{min-width:0;padding:12px 0;background:var(--white)}
.ctp-person>h4{margin:0 0 10px;font:700 var(--text-body)/1.3 var(--font);overflow-wrap:anywhere}
.ctp-plan-item{min-width:0;border:0;border-radius:7px;overflow:hidden}
.ctp-perform .ctp-plan-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-width:0;min-height:var(--control-height,44px);padding:16px;border:0;border-radius:7px;background:var(--ink,#111);color:#fff;text-align:left;cursor:pointer}
.ctp-perform .ctp-plan-heading:is(:hover,:active){background:var(--ink,#111);color:#fff;transform:none}
.ctp-perform .ctp-plan-heading[aria-expanded=true],.ctp-perform .ctp-plan-heading[aria-expanded=true]:is(:hover,:active){background:var(--red);color:#fff}
.ctp-plan-heading>span{display:grid;gap:4px;min-width:0}
.ctp-plan-heading strong{font:800 var(--text-body)/1.3 var(--display);overflow-wrap:anywhere}
.ctp-plan-heading small{color:inherit;opacity:.85;font:400 var(--text-label)/1.4 var(--font);overflow-wrap:anywhere}
.ctp-plan-heading>svg{flex:none}
.ctp-plan-heading[aria-expanded=true]>svg{transform:rotate(180deg)}
.ctp-perform .ctp-plan-content{padding:20px 0 0;border:0;background:#fff;min-width:0}
.ctp-perform .ctp-training-days{margin-bottom:12px;min-width:0;touch-action:pan-y}
.ctp-perform .co-training-day-heading{border-radius:7px}
.ctp-perform .co-training-day.is-open>.co-training-day-heading{border-radius:7px 7px 0 0}
.ctp-player-day{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;width:100%;padding:10px 0;border:0;border-bottom:1px solid var(--line,#111);text-align:left;background:transparent;color:var(--ink,#111);cursor:pointer}
.ctp-player-day>span:first-child{display:grid;gap:3px;min-width:0}
.ctp-player-day strong{font:700 var(--text-body)/1.3 var(--font);overflow-wrap:anywhere}
.ctp-player-day small,.ctp-empty,.ctp-day-roster>p{color:var(--muted);font:400 var(--text-label)/1.4 var(--font)}
.ctp-player-day>span:last-child{color:var(--red);flex:none}
.ctp-empty{margin:8px 0 0}
.ctp-plan-history{min-width:0;font:400 var(--text-label)/1.45 var(--font)}
.ctp-plan-history>p{margin-top:0;color:var(--muted)}
.ctp-plan-history h5{font:600 var(--text-label)/1.4 var(--font);margin:10px 0 6px}
.ctp-plan-history ul{padding-left:20px;margin:6px 0}
.ctp-perform :is(button,summary,[tabindex="0"]):focus-visible{outline:2px solid var(--red);outline-offset:3px}
@media(max-width:600px){.ctp-tabs,.ctp-sections,.ctp-venues{gap:8px}.ctp-tabs>button{padding-inline:6px}.ctp-perform .ctp-plan-heading{padding:14px}.ctp-plan-heading strong{font-size:16px}.ctp-perform .ctp-plan-content{padding-top:16px}}
