/* ============================================================
   athlete_home.css — блок «Мой следующий шаг» на дашборде спортсмена (С2).
   Только переменные платформы (tokens.css).
   ============================================================ */
.ah-slot { display: flex; flex-direction: column; gap: var(--space-md); margin-bottom: var(--space-lg); }

/* один главный призыв к действию */
.ah-hero { display: flex; align-items: center; gap: var(--space-md); flex-wrap: wrap;
  padding: var(--space-lg); border-radius: var(--radius-lg);
  background: linear-gradient(135deg, var(--bg-card), var(--bg-main));
  border: 1px solid var(--line); box-shadow: var(--shadow-card); }
.ah-hero-txt { flex: 1 1 260px; display: flex; flex-direction: column; gap: 2px; }
.ah-hero-txt b { font-size: 21px; }
.ah-eyebrow { text-transform: uppercase; letter-spacing: .08em; font-size: 11.5px;
  color: var(--accent-primary); font-weight: 700; }
.ah-cta { font-size: 16.5px; padding: 14px 24px; }
.ah-hero.ah-feedback { border-color: var(--status-warning); }
.ah-hero.ah-video { border-color: var(--accent-primary); box-shadow: var(--glow-primary); }
.ah-hero.ah-trainer { border-color: var(--accent-fire); }

.ah-block { padding: var(--space-md) var(--space-lg); }
.ah-block-h { display: flex; align-items: baseline; gap: var(--space-sm); margin-bottom: var(--space-sm); }
.ah-block-h h3 { margin: 0; font-size: 17px; display: flex; align-items: center; gap: var(--space-xs); }
.ah-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: var(--space-sm); }
.ah-cell { display: flex; flex-direction: column; gap: 2px; padding: var(--space-sm) var(--space-md);
  border: 1px solid var(--line); border-radius: var(--radius-sm); background: var(--bg-card); }
.ah-cell .muted { font-size: 12px; }
.ah-cell.ah-wait { border-left: 3px solid var(--status-warning); }
.ah-cell.ah-ok { border-left: 3px solid var(--status-success); }

.ah-quick { display: flex; flex-wrap: wrap; gap: var(--space-md); margin-top: var(--space-sm); }
.ah-link { display: inline-flex; align-items: center; gap: 6px; color: var(--text-muted);
  font-size: 14px; text-decoration: none; }
.ah-link:hover { color: var(--accent-primary); }

.ah-more { border-top: 1px solid var(--line); padding-top: var(--space-sm); }
.ah-more summary { cursor: pointer; color: var(--text-muted); font-size: 14px; }

@media (max-width: 640px) {
  .ah-hero { padding: var(--space-md); }
  .ah-cta { width: 100%; justify-content: center; }
  .ah-block { padding: var(--space-md); }
}
