/* coach_crm.css — мини-CRM тренера (Т7) */
.crm-slot { margin-bottom: var(--space-md); }
.crm-block { padding: var(--space-lg); }
.crm-head { display: flex; align-items: baseline; gap: var(--space-sm); flex-wrap: wrap; }
.crm-head h3 { margin: 0; font-size: 18px; display: flex; align-items: center; gap: var(--space-xs); }
.crm-money { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: var(--space-sm); margin: var(--space-sm) 0; }
.crm-m { padding: var(--space-sm) var(--space-md); border: 1px solid var(--line); border-radius: var(--radius-sm); background: var(--bg-card); }
.crm-m .muted { font-size: 12px; }
.crm-m b { font-size: 17px; }
.crm-m.crm-bad b { color: var(--status-danger); }
.crm-m.crm-ok b { color: var(--status-success); }
.crm-table { width: 100%; border-collapse: collapse; font-size: 13.5px; }
.crm-table th, .crm-table td { border-bottom: 1px solid var(--line); padding: 7px 8px; text-align: left; }
.crm-table th { color: var(--text-muted); font-weight: 600; }
.crm-chip { font-size: 11.5px; }
.crm-overdue { color: var(--status-danger); }
.crm-renewal { color: var(--status-warning); }
.crm-rem { margin-top: var(--space-sm); display: flex; flex-direction: column; gap: 4px; font-size: 13.5px; }
@media (max-width: 760px) { .crm-block { padding: var(--space-md); } .crm-table td:nth-child(4) { display: none; } }
