@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&display=swap');
*{box-sizing:border-box}body{margin:0;background:#19191b;color:#fff;font-family:'DM Sans',Arial,sans-serif}header{max-width:1220px;margin:auto;padding:23px 30px;display:flex;align-items:center;justify-content:space-between}header img{background:white;padding:12px;width:208px;height:auto;border-radius:4px}header span{font-size:11px;letter-spacing:2px;color:#a8a8ab}main{max-width:1220px;margin:auto;padding:0 30px 18px}.player{position:relative;width:100%;aspect-ratio:16/9;max-height:66vh;background:#242526;border-radius:10px;overflow:hidden}.player>video{width:100%;height:100%;object-fit:contain}.video-caption{position:absolute;left:0;right:0;bottom:0;padding:48px 26px 23px;background:linear-gradient(transparent,#000c);pointer-events:none}.video-caption span,.next span,.timer>span,#transitionLabel{font-size:10px;letter-spacing:2px;font-weight:700;color:#bdbdbf}h2{margin:7px 0 0;font-size:28px;font-weight:600;letter-spacing:-.6px}.bottom{display:flex;align-items:center;justify-content:space-between;padding:22px 0;border-bottom:1px solid #3b3b3e;gap:20px}.next{display:flex;align-items:center;gap:18px}.next video{width:144px;aspect-ratio:16/9;object-fit:cover;border-radius:5px}.next span{color:#ef555b}.next h2{font-size:20px}.timer{text-align:right;display:flex;flex-direction:column}.timer strong{font-size:64px;line-height:1.1;font-weight:600;letter-spacing:-3px;font-variant-numeric:tabular-nums}.controls{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:18px}button{font:inherit;cursor:pointer;border:0;background:transparent;color:#aaa;padding:12px 16px;border-radius:5px;font-size:12px}button:hover{background:#303033;color:#fff}button:focus-visible{outline:2px solid #ef555b;outline-offset:4px}#start{background:#c4161c;color:white;font-weight:700;min-width:170px}#start:hover{background:#a51218}#transition{position:absolute;inset:0;background:#242526f5;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:24px}#transition[hidden]{display:none}#transitionLabel{color:#ef555b}#transition h1{font-size:clamp(30px,5vw,64px);letter-spacing:-2px;margin:18px 0}#error{text-align:center;color:#ffb5b5;font-size:12px;margin:8px 0}#error:empty{display:none}@media(max-width:600px){header{padding:16px}header img{width:160px;padding:8px}main{padding:0 16px 16px}.player{aspect-ratio:4/3;max-height:none}.video-caption{padding:35px 16px 15px}.video-caption h2{font-size:23px}.next video{width:86px}.next{gap:10px}.next h2{font-size:15px}.timer strong{font-size:48px}.bottom{gap:12px;padding:18px 0}.timer>span,.next span{font-size:8px}.controls{margin-top:12px}}

.edit-link{color:#aaa;font-size:11px;text-decoration:none;margin-left:auto;margin-right:24px}.edit-link:hover{color:#fff}

.zone-tile{position:absolute;top:22px;right:22px;z-index:3;background:#252527ed;border:1px solid #e6b83e;border-left:5px solid #e6b83e;border-radius:7px;padding:14px 18px;min-width:170px;box-shadow:0 3px 18px #0004}.zone-tile[hidden]{display:none}.zone-tile span{display:block;font-size:8px;letter-spacing:1.5px;color:#d9d9dc}.zone-tile strong{display:block;font-size:28px;letter-spacing:-.5px;margin-top:5px}.zone-tile[data-zone="1"]{border-color:#a5a5ae}.zone-tile[data-zone="2"]{border-color:#4ba7df}.zone-tile[data-zone="3"]{border-color:#52b781}.zone-tile[data-zone="4"]{border-color:#edb34e}.zone-tile[data-zone="5"]{border-color:#ef555b}.video-caption{padding:16px 26px;background:transparent;top:0;bottom:auto;right:auto}.video-caption span{display:inline-block;background:#222c;padding:8px;border-radius:4px}@media(max-width:600px){.zone-tile{top:12px;right:12px;padding:10px 12px;min-width:132px}.zone-tile strong{font-size:23px}.zone-tile span{font-size:7px}.video-caption{padding:12px}.video-caption span{font-size:8px}}
/* Solid target-zone colours. */
.zone-tile{box-shadow:0 3px 18px #0004;border:0;color:#fff}
.zone-tile span{color:inherit;opacity:.95}
.zone-tile[data-zone="1"]{background:#66666e}
.zone-tile[data-zone="2"]{background:#1674ad}
.zone-tile[data-zone="3"]{background:#23834e}
.zone-tile[data-zone="4"]{background:#edb34e;color:#24201a}
.zone-tile[data-zone="5"]{background:#c4161c}

.circuit-title{font-size:22px;font-weight:600;letter-spacing:-.5px;margin:0 24px;line-height:1.3;overflow-wrap:anywhere;flex:1}.edit-link{white-space:nowrap}header>span{white-space:nowrap}@media(max-width:700px){header{flex-wrap:wrap;gap:12px}.circuit-title{order:3;flex-basis:100%;margin:3px 0 0;font-size:22px}.edit-link{margin-left:auto;margin-right:0}header>span{font-size:9px}}

.circuit-heading{padding:8px 0 25px;position:relative}.circuit-heading p{margin:0 0 10px;font-size:10px;letter-spacing:3px;font-weight:700;color:#ef555b}.circuit-heading .circuit-title{margin:0;max-width:100%;font-size:clamp(34px,5.3vw,68px);font-weight:700;line-height:1.03;letter-spacing:-2px;text-transform:uppercase;border-left:6px solid #c4161c;padding-left:20px;text-wrap:balance}.player{max-height:59vh}@media(max-width:700px){.circuit-heading{padding:10px 0 22px}.circuit-heading .circuit-title{font-size:clamp(32px,8vw,48px);letter-spacing:-1.5px;padding-left:14px;border-left-width:4px}.circuit-heading p{font-size:9px;letter-spacing:2.4px}.player{max-height:none}}

#transition{background:#202023;display:grid;grid-template-columns:1.05fr 1fr;gap:30px;padding:45px;text-align:left;align-items:center;justify-content:initial;z-index:2;overflow:hidden}#transition[hidden]{display:none}#transition:before{content:'';position:absolute;top:0;left:0;width:7px;height:100%;background:#c4161c}.transition-copy{position:relative;z-index:1}#transitionLabel{color:#ff6268;font-size:12px;letter-spacing:4px}#transitionTitle{font-size:clamp(28px,4vw,52px);line-height:1.05;font-weight:700;letter-spacing:-1.8px;margin:18px 0}#transitionHint{font-size:13px;line-height:1.6;color:#b4b4b9;margin:0}.transition-count{display:flex;align-items:center;gap:18px;margin-top:25px}.transition-count strong{font-size:clamp(60px,9vw,110px);line-height:1;font-variant-numeric:tabular-nums;letter-spacing:-5px}.transition-count span{font-size:9px;line-height:1.8;letter-spacing:2px;max-width:60px;color:#b7b7bc}.transition-preview{border-radius:8px;overflow:hidden;border:1px solid #45454b;background:#18181a;transform:rotate(-2deg)}.transition-preview video{width:100%;aspect-ratio:16/10;object-fit:contain;display:block}.transition-preview>span{display:block;font-size:8px;letter-spacing:2px;padding:13px 16px;color:#bbb;border-top:3px solid #c4161c}#transition.complete{grid-template-columns:1fr;text-align:center}#transition.complete .transition-preview,#transition.complete .transition-count{display:none}.circuit-heading{padding-top:8px}.zone-tile{z-index:3}@media(max-width:700px){#transition{padding:25px;gap:15px;grid-template-columns:1fr 1fr}#transitionTitle{font-size:28px;letter-spacing:-1px;margin:12px 0}#transitionHint{font-size:11px}.transition-count{margin-top:18px;gap:12px}.transition-count strong{font-size:64px;letter-spacing:-3px}#transitionLabel{font-size:10px;letter-spacing:2px}.transition-count span{font-size:7px}.transition-preview>span{font-size:6px;padding:10px}.zone-tile{z-index:1}}
.player:has(#transition:not([hidden])) .zone-tile,.player:has(#transition:not([hidden])) .video-caption{display:none}

/* Clean, level exercise preview with a clear equipment list. */
.transition-preview{transform:none;border:0;border-radius:7px;background:#161618}.transition-preview video{aspect-ratio:16/9;object-fit:contain}.transition-preview>span{display:none}#transition{gap:36px;padding:40px}#transitionTitle{font-size:clamp(28px,3.5vw,46px);margin:15px 0 12px}.equipment-block{margin-top:23px}.equipment-block>span{font-size:8px;letter-spacing:2px;color:#a8a8af;font-weight:700}#equipmentList{list-style:none;padding:0;margin:10px 0 0;display:flex;flex-wrap:wrap;gap:7px}#equipmentList li{font-size:13px;padding:8px 12px;border:1px solid #48484e;border-radius:4px;background:#2a2a2e;color:#fff}.transition-count{margin-top:24px}.transition-count strong{font-size:clamp(58px,7vw,88px)}#transition.complete .equipment-block{display:none}@media(max-width:700px){#transition{padding:24px;gap:18px}.equipment-block{margin-top:16px}#equipmentList li{font-size:11px;padding:6px 9px}#transitionTitle{font-size:26px}.transition-count{margin-top:16px}.transition-count strong{font-size:58px}}

/* Spacious recovery slide. */
#transition{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:28px 44px;background:radial-gradient(ellipse at 50% 50%,#353334 0%,#252527 70%);gap:0}#transition:before{display:none}.transition-copy{width:100%;display:flex;flex-direction:column;align-items:center}#transitionLabel{font-size:11px;letter-spacing:4px;color:#ed777b}#transitionTitle{font-size:clamp(23px,3vw,38px);font-weight:500;letter-spacing:-.8px;margin:12px 0 0}#transitionHint{order:1;font-size:clamp(20px,2.5vw,30px);line-height:1.4;color:#ededee;margin:17px 0 0;max-width:90%}.transition-count{order:2;display:flex;flex-direction:column;gap:9px;margin:20px 0 0;align-items:center}.transition-count strong{font-size:clamp(78px,10vw,132px);line-height:.95;font-weight:500;letter-spacing:-5px}.transition-count span{max-width:none;font-size:9px;letter-spacing:3px;color:#b5b3b9}.equipment-block{order:3;display:flex;align-items:center;justify-content:center;gap:12px;margin-top:22px}.equipment-block>span{font-size:8px;letter-spacing:1.5px;color:#aaa7af}#equipmentList{margin:0;justify-content:center}#equipmentList li{font-size:11px;padding:6px 10px;background:#ffffff08;border-color:#ffffff25;color:#d2d0d5}#transition.complete #transitionHint{font-size:25px}#transition.complete .equipment-block{display:none}@media(max-width:700px){#transition{padding:18px 22px}#transitionLabel{font-size:9px;letter-spacing:3px}#transitionTitle{font-size:23px;margin-top:8px}#transitionHint{font-size:20px;margin-top:14px;max-width:100%}.transition-count{margin-top:18px;gap:8px}.transition-count strong{font-size:80px}.transition-count span{font-size:8px}.equipment-block{margin-top:18px;gap:8px;flex-wrap:wrap}}
main:has(#transition:not([hidden])) .bottom{display:none}
.video-grid{height:100%;width:100%;position:absolute;inset:0;display:grid;gap:9px;background:#19191b}.video-grid[data-layout="1"]{grid-template-columns:1fr}.video-grid[data-layout="4"]{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr))}.video-grid[data-layout="6"]{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr))}.station{position:relative;overflow:hidden;min-width:0;min-height:0;background:#242526;border-radius:6px}.station>video{width:100%;height:100%;object-fit:contain;display:block}.empty-station{display:flex;align-items:center;justify-content:center;color:#777;font-size:12px;border:1px dashed #444}.station-number{position:absolute;bottom:9px;left:10px;font-size:8px;letter-spacing:1.5px;background:#19191bdf;padding:7px 9px;border-radius:3px}.multi .zone-tile{top:10px;right:10px;padding:8px 10px;min-width:90px;border-radius:4px}.multi .zone-tile span{font-size:6px;letter-spacing:1px}.multi .zone-tile strong{font-size:19px;margin-top:3px}.multi .video-caption{display:none}.next h2{max-width:850px}#transitionExercises{color:#bbb;font-size:13px;line-height:1.6;max-width:85%;margin:10px 0 0}.next video[hidden]{display:none}@media(max-width:700px){.player.multi{aspect-ratio:4/3}.video-grid{gap:5px}.multi .zone-tile{top:5px;right:5px;padding:5px 6px;min-width:60px}.multi .zone-tile strong{font-size:13px}.multi .zone-tile span{font-size:5px;letter-spacing:0}.station-number{font-size:6px;left:4px;bottom:4px;padding:4px}.empty-station{font-size:9px}.next h2{font-size:13px}#transitionExercises{font-size:11px;max-width:100%}}
