/* coach_profile.css — единая карточка спортсмена (Т4) */
.cp-slot { margin-bottom: var(--space-md); }
.cp-block { padding: var(--space-lg); }
.cp-head { display: flex; align-items: baseline; gap: var(--space-sm); flex-wrap: wrap; }
.cp-head h3 { margin: 0; font-size: 19px; display: flex; align-items: center; gap: var(--space-xs); }
.cp-tabs { display: flex; gap: 6px; flex-wrap: wrap; margin: var(--space-sm) 0 var(--space-md); }
.cp-tab { padding: 7px 14px; border-radius: var(--radius-full); cursor: pointer; border: 1px solid var(--line);
  background: var(--bg-card); color: var(--text-muted); font: inherit; font-size: 13.5px; }
.cp-tab.active { border-color: var(--accent-primary); color: var(--text-main); background: var(--bg-main); }
.cp-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: var(--space-sm); }
.cp-card { padding: var(--space-sm) var(--space-md); border: 1px solid var(--line); border-radius: var(--radius-sm); background: var(--bg-card); }
.cp-card b { font-size: 14.5px; }
.cp-row { display: flex; justify-content: space-between; gap: var(--space-sm); font-size: 13.5px; }
.cp-row .muted { min-width: 120px; }
.cp-missing { margin-top: var(--space-sm); padding: var(--space-sm) var(--space-md); border-left: 3px solid var(--status-warning);
  background: var(--bg-card); border-radius: var(--radius-sm); font-size: 13.5px; }
.cp-list { display: flex; flex-direction: column; gap: 4px; font-size: 13.5px; }
@media (max-width: 640px) { .cp-block { padding: var(--space-md); } }
