.workout-layout{display:grid;grid-template-columns:minmax(0,530px) minmax(0,1fr);gap:22px;align-items:start}
.workout-main{background:var(--panel);border:1px solid var(--line);border-radius:25px;overflow:hidden;box-shadow:var(--shadow)}
.workout-top{min-height:60px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 14px;background:#030914;color:#fff}
.workout-top .icon-btn{border:0;background:#ffffff15;color:#fff;font-size:23px}
.workout-day{font-size:11px;font-weight:900;letter-spacing:1.1px;text-align:center}
.video-frame{height:min(60vh,570px);min-height:350px;position:relative;background:#000;overflow:hidden}
.video-frame video{width:100%;height:100%;object-fit:contain;display:block;background:#000}
.video-label{position:absolute;left:15px;top:15px;background:#071227ba;color:white;border-radius:100px;padding:8px 12px;font-size:12px;font-weight:800;pointer-events:none}
.video-error{position:absolute;inset:0;display:grid;place-items:center;text-align:center;padding:22px;color:#fff;background:#06101ddb;font-weight:700}
.video-error[hidden]{display:none}
.workout-controls{padding:18px}
.step-track{display:flex;gap:5px;margin-bottom:15px}
.step{height:5px;flex:1;border:0;background:var(--line);border-radius:100px;padding:0}
.step.active,.step.done{background:var(--lime)}
.workout-details{display:flex;justify-content:space-between;align-items:start;gap:12px}
.workout-details h2{margin:4px 0;font-size:23px;line-height:1.08}
.prescription{margin:0;color:var(--muted);font-size:12px;font-weight:700}
.session-clock{text-align:right;flex:none}
.session-clock strong{font-family:Outfit,sans-serif;font-size:29px;color:var(--lime);line-height:1;display:block}
.session-clock small{font-size:9px;font-weight:800;color:var(--muted);letter-spacing:.5px}
.exercise-cue{margin:17px 0 7px;font-size:14px}
.exercise-easier{font-size:12px;color:var(--muted);margin-bottom:17px}
.workout-arrows{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:8px 0}
.workout-arrows .btn{width:100%;font-size:12px}
.btn-complete{background:transparent;border:1px solid var(--lime);color:var(--lime);font-size:13px}
.session-footnote{border-top:1px solid var(--line);padding-top:13px;margin-top:15px;display:grid;gap:5px;color:var(--muted);font-size:11px}
.workout-aside{background:var(--panel);border:1px solid var(--line);border-radius:25px;padding:24px;box-shadow:var(--shadow)}
.workout-aside h2{margin:9px 0 5px}
.workout-list{display:grid;gap:8px;margin:22px 0}
.workout-list-item{width:100%;display:flex;align-items:center;gap:11px;text-align:left;border:1px solid var(--line);background:var(--panel2);color:var(--text);border-radius:13px;padding:10px}
.workout-list-item.selected{border-color:var(--lime)}
.workout-list-item strong,.workout-list-item small{display:block}
.workout-list-item strong{font-size:13px}
.workout-list-item small{font-size:11px;color:var(--muted);margin-top:2px}
.list-number{width:31px;height:31px;flex:none;border-radius:9px;display:grid;place-items:center;background:#2478ee25;color:var(--lime);font-size:12px;font-weight:900}
.workout-type{display:inline-block;padding:4px 8px;border-radius:100px;background:#2478ee25;color:var(--lime);font-size:10px;font-weight:900}
.day small{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0 2px}
.rest-card{max-width:650px;margin:auto;text-align:center;padding:38px}
.rest-symbol{width:86px;height:86px;margin:0 auto 20px;border-radius:26px;background:#2478ee25;color:var(--lime);display:grid;place-items:center;font-size:42px}
.rest-card p{color:var(--muted);max-width:460px;margin:0 auto 26px}
@media(max-width:800px){.workout-layout{grid-template-columns:1fr;max-width:520px;margin:auto}.workout-aside{display:none}}
@media(max-width:560px){.workout-main{border-radius:19px}.workout-top{min-height:48px;padding:5px 9px}.workout-top .icon-btn{width:34px;height:34px;border-radius:10px}.video-frame{height:min(58vh,520px);min-height:290px}.workout-controls{padding:15px}.workout-details h2{font-size:20px}.session-clock strong{font-size:25px}.workout-arrows .btn{min-height:38px;padding:8px}.rest-card{padding:27px 18px}}
