/* ── Кабинет спортсмена: неделя, режим тренировки, дельты, боли, достижения ── */
.week-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-top:12px}
.wday{border:1px solid var(--line);border-radius:var(--r-m);padding:10px;background:var(--bg2);cursor:pointer;
  transition:border-color .15s ease,transform .06s ease}
.wday:hover{border-color:var(--ac)}
.wday.today{border-color:var(--ac);box-shadow:inset 0 0 0 1px var(--ac)}
.wday.done{opacity:.75}
.wday.missed{border-color:var(--bad)}
.wday.empty{cursor:default;border-style:dashed;opacity:.6}
.wd-h{display:flex;justify-content:space-between;align-items:baseline;font-size:13px;margin-bottom:4px}
.wd-t{font-weight:600;font-size:13.5px;margin-bottom:4px}
.wd-f{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:6px;font-size:12px}

.sess-timer{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin-top:12px;padding:12px;
  border:1px solid var(--line);border-radius:var(--r-m);background:var(--bg2)}
.timer-display{font-size:34px;font-weight:700;font-variant-numeric:tabular-nums;min-width:130px}
.sess-item{display:flex;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line)}
.sess-item:last-child{border-bottom:none}
.sess-item input[type=checkbox]{width:20px;height:20px;flex:0 0 20px}
.sess-item span{flex:1;min-width:0}
.sess-item.done span{opacity:.6;text-decoration:line-through}
.sess-actual{width:110px;flex:0 0 110px}

.delta-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;margin-top:10px}
.delta{border:1px solid var(--line);border-radius:var(--r-m);padding:10px 12px;background:var(--bg2)}
.delta.good{border-color:var(--ok)}
.delta.bad{border-color:var(--warn)}
.d-title{font-size:13px;color:var(--tx2);display:flex;gap:6px;align-items:center}
.d-row{display:flex;gap:8px;align-items:baseline;margin:6px 0 2px}
.d-from{color:var(--tx3);text-decoration:line-through}
.d-arrow{color:var(--tx3)}
.d-to{font-weight:700;font-size:17px}
.d-foot{font-size:12.5px;color:var(--tx2)}

.pain-zones{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.chip-btn{border:1px solid var(--line2);background:transparent;color:var(--tx2);border-radius:999px;
  padding:6px 12px;font:inherit;font-size:13px;cursor:pointer}
.chip-btn:hover{background:var(--bg2);color:var(--tx)}
.chip-btn.on{border-color:var(--warn);color:var(--warn);font-weight:600}
.chip-btn.on.lvl2{border-color:#e2803a;color:#e2803a}
.chip-btn.on.lvl3{border-color:var(--bad);color:var(--bad)}

.coach-note{margin-top:7px;padding:9px 11px;border-left:3px solid var(--ac);border-radius:var(--r-s);
  background:var(--bg2);font-size:13.5px}

.ach-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin-top:12px}
.ach{border:1px solid var(--line);border-radius:var(--r-m);padding:12px;background:var(--bg2);text-align:center;opacity:.75}
.ach.earned{border-color:var(--ok);opacity:1;box-shadow:var(--shadow)}
.ach-ico{font-size:28px;line-height:1.2}
.ach-t{margin-top:4px;font-size:13.5px}

@media (max-width:720px){
  .week-grid{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}
  .timer-display{font-size:28px}
  .delta-grid,.ach-grid{grid-template-columns:1fr}
}
