.training-cycle{margin-bottom:16px;padding:18px;border-radius:22px;background:var(--card);box-shadow:var(--shadow)}.cycle-head{display:flex;align-items:start;justify-content:space-between;gap:12px}.cycle-head span{color:var(--muted);font-size:.78rem}.week-schedule{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin:18px 0}.schedule-day{display:grid;place-items:center;gap:6px;min-width:0;padding:10px 2px;border-radius:13px;background:var(--bg);color:var(--muted)}.schedule-day b{font-size:.7rem}.schedule-day span{font-size:.65rem;text-align:center;overflow:hidden;text-overflow:ellipsis;width:100%;white-space:nowrap}.schedule-day.today{background:linear-gradient(145deg,var(--blue),var(--green));color:#fff;box-shadow:0 8px 18px rgba(50,103,227,.24)}.month-phases{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.phase{padding:10px 6px;border-radius:12px;background:var(--bg);text-align:center}.phase b,.phase small{display:block}.phase small{color:var(--muted);font-size:.65rem;margin-top:3px}.phase.active{background:#ddf8ed;color:#087d58}.cycle-note{color:var(--muted);font-size:.75rem;line-height:1.45;margin-top:13px}
@media(max-width:390px){.schedule-day span{display:none}.schedule-day{padding:9px 1px}.month-phases{grid-template-columns:1fr 1fr}}
