.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

.guest-workout-banner{margin:0 0 14px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border:1px solid rgba(208,164,119,.34);border-radius:20px;background:radial-gradient(circle at 92% 0,rgba(208,164,119,.14),transparent 12rem),linear-gradient(145deg,rgba(22,25,24,.97),rgba(8,13,16,.98));box-shadow:0 18px 48px rgba(0,0,0,.24)}.guest-workout-banner[hidden]{display:none!important}.guest-workout-banner>div{display:grid;gap:3px}.guest-workout-banner small{color:#d9ac80;font-size:10px;font-weight:950;letter-spacing:.13em}.guest-workout-banner strong{font-size:17px;letter-spacing:-.025em}.guest-workout-banner span{color:#8e9c93;font-size:11px}.guest-workout-banner>a{min-height:44px;display:inline-flex;align-items:center;padding:0 13px;border:1px solid rgba(208,164,119,.24);border-radius:12px;color:#e5c39f;text-decoration:none;font-size:11px;font-weight:900;white-space:nowrap}.guest-workout-race{flex:1 1 100%;margin-top:8px;padding:10px 11px;border:1px solid rgba(158,207,177,.16);border-radius:12px;background:rgba(158,207,177,.035)}.guest-workout-race[hidden]{display:none!important}.guest-workout-race b{display:block;color:#b9dac5;font-size:10px;font-weight:950;letter-spacing:.09em}.guest-workout-race span{display:block;margin-top:5px;color:#dce6e0;font-size:11px;font-weight:850}.guest-workout-race small{display:block;margin-top:4px;color:#88968e;font-size:10px;line-height:1.4}
body.guest-hyrox-workout .player-head{padding:16px;border:1px solid rgba(208,164,119,.16);border-radius:18px;background:linear-gradient(145deg,rgba(208,164,119,.055),rgba(8,13,16,.72))}
body.guest-hyrox-workout #sessionEyebrow{color:#d9ac80}
body.guest-hyrox-workout .player-stage{border-color:rgba(208,164,119,.24);box-shadow:0 28px 78px rgba(0,0,0,.3),inset 0 1px 0 rgba(255,255,255,.025)}

.player-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.focus-mode-btn{min-height:36px;padding:0 11px;border-radius:999px;border:1px solid rgba(208,164,119,.26);background:rgba(208,164,119,.07);color:#d8c4b0;font-size:10px;font-weight:900;letter-spacing:.035em;cursor:pointer;transition:background .18s ease,border-color .18s ease,transform .18s ease}.focus-mode-btn:hover{border-color:rgba(208,164,119,.44);background:rgba(208,164,119,.12)}.focus-mode-btn:active{transform:translateY(1px)}.focus-mode-btn[aria-pressed="true"]{background:#d0a477;color:#17100b;border-color:#d0a477;box-shadow:0 8px 26px rgba(208,164,119,.14)}.focus-mode-btn:focus-visible{outline:2px solid #d0a477;outline-offset:3px}

.resume-banner{margin:0 0 14px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;border:1px solid rgba(208,164,119,.34);border-radius:20px;background:linear-gradient(135deg,rgba(208,164,119,.12),rgba(17,25,19,.92));box-shadow:0 18px 46px rgba(0,0,0,.22)}
.resume-banner>div{display:grid;gap:3px}.resume-banner small{color:#d9ac80;font-size:10px;font-weight:950;letter-spacing:.13em}.resume-banner strong{font-size:16px;letter-spacing:-.025em}.resume-banner span{color:#8e9c93;font-size:11px}.resume-action{min-height:46px;padding:0 15px;border-radius:14px;border:1px solid rgba(208,164,119,.38);background:#d0a477;color:#15100c;font-weight:950;white-space:nowrap}

.player-journey{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:0 0 14px;padding:8px;border:1px solid rgba(255,255,255,.07);border-radius:18px;background:rgba(7,12,15,.74)}
.player-journey span{min-height:44px;display:flex;align-items:center;justify-content:center;gap:8px;border-radius:12px;color:#6f7c73;font-size:11px;font-weight:900;transition:background .18s ease,color .18s ease,border-color .18s ease}
.player-journey i{width:22px;height:22px;display:grid;place-items:center;border-radius:50%;border:1px solid #354238;font-style:normal;font-size:10px}.player-journey b{font-weight:900}
.player-journey span.done{color:#97a39a}.player-journey span.done i{background:#263029;border-color:#425046;color:#dce5de}
.player-journey span.active{background:rgba(208,164,119,.09);color:#f2f7f3}.player-journey span.active i{background:var(--accent);border-color:var(--accent);color:#09100b;box-shadow:0 0 24px rgba(208,164,119,.13)}

.player-progress{margin-top:12px;padding:13px 15px;border:1px solid rgba(255,255,255,.07);border-radius:16px;background:rgba(13,21,25,.9)}
.player-progress>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px}.player-progress small{color:#748178;font-size:10px;font-weight:950;letter-spacing:.12em}.player-progress strong{font-size:11px;color:#cbd5cd}
.player-progress-track{height:5px;border-radius:999px;background:#27312a;overflow:hidden}.player-progress-track span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#d0a477,var(--accent));transition:width .25s ease}
.player-insights{display:grid;grid-template-columns:1.35fr .8fr .8fr;gap:8px;margin-top:12px}.player-insights>div{min-width:0;padding:10px 11px;border:1px solid rgba(255,255,255,.055);border-radius:13px;background:rgba(6,11,14,.48)}.player-insights small{display:block;margin-bottom:4px}.player-insights strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#f2f7f3}.player-insights>div:first-child{border-color:rgba(208,164,119,.16);background:linear-gradient(135deg,rgba(208,164,119,.08),rgba(6,10,7,.45))}.player-remaining-insight{border-color:rgba(208,164,119,.11)!important}.player-remaining-insight strong{font-variant-numeric:tabular-nums}

#restTimerBar[role="timer"]{border-color:rgba(208,164,119,.24);box-shadow:0 12px 30px rgba(0,0,0,.16)}#restTimerBar[role="timer"] strong{font-variant-numeric:tabular-nums}html[data-rest-urgent="true"] #restTimerBar{border-color:rgba(208,164,119,.34);background:linear-gradient(135deg,rgba(208,164,119,.08),rgba(12,18,13,.96));box-shadow:0 12px 38px rgba(208,164,119,.08)}

.complete-metrics{display:inline-flex;align-items:center;gap:8px;margin:2px 0 18px;padding:8px 11px;border:1px solid rgba(208,164,119,.24);border-radius:999px;background:rgba(208,164,119,.08);color:#d9c0a7;font-size:11px;font-weight:850}.guest-complete-next{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(250px,.82fr);gap:18px;align-items:center;margin:0 0 18px;padding:19px;border:1px solid rgba(208,164,119,.32);border-radius:20px;background:radial-gradient(circle at 92% 0,rgba(208,164,119,.14),transparent 14rem),linear-gradient(145deg,rgba(22,25,24,.98),rgba(8,13,16,.99));box-shadow:0 20px 52px rgba(0,0,0,.26)}.guest-complete-next[hidden]{display:none!important}.guest-complete-next small{color:#d9ac80;font-size:10px;font-weight:950;letter-spacing:.12em}.guest-complete-next h2{margin:7px 0 8px;font-size:28px;line-height:1;letter-spacing:-.045em}.guest-complete-next p{margin:0;color:#98a59d;font-size:12px;line-height:1.5}.guest-complete-actions{display:grid;gap:8px}.guest-complete-actions .primary-btn{width:100%}.guest-complete-actions .secondary-link{min-height:44px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(208,164,119,.2);border-radius:13px;color:#e1c2a3;text-decoration:none;font-size:11px;font-weight:900}.guest-complete-actions>small{text-align:center;color:#7f8d85;font-size:10px;letter-spacing:0}.completion-share-btn{appearance:none;-webkit-appearance:none;border:0;background:transparent;font:inherit;cursor:pointer;color:#d8c4b0}.completion-share-btn:hover{color:#fff}.completion-share-btn:focus-visible{outline:2px solid #d0a477;outline-offset:4px;border-radius:8px}

.action-dock{position:sticky;bottom:max(env(safe-area-inset-bottom),10px);z-index:30;margin:18px -8px 0;padding:8px;border:1px solid rgba(255,255,255,.09);border-radius:21px;background:rgba(8,13,16,.92);box-shadow:0 18px 55px rgba(0,0,0,.48);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.action-dock button{min-height:58px;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.action-dock .main-action{box-shadow:0 10px 34px rgba(208,164,119,.12)}
.action-dock button:focus-visible,.resume-action:focus-visible,.guided-card button:focus-visible,.strength-log-card button:focus-visible{outline:2px solid #d0a477;outline-offset:3px}
.player-shortcuts{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;margin:8px 0 0;color:#657269;font-size:10px;font-weight:800;letter-spacing:.02em}.player-shortcuts span{padding:5px 8px;border:1px solid rgba(255,255,255,.055);border-radius:999px;background:rgba(7,12,15,.48)}
html[data-workout-phase="live"] .action-dock .main-action{background:#f0f5f1;color:#0a100c}
html[data-workout-phase="live"] .player-stage{border-color:rgba(208,164,119,.3)}
html[data-workout-phase="live"] .timer-ring{box-shadow:0 0 100px rgba(208,164,119,.12)}
html[data-workout-phase="paused"] .resume-banner{border-color:rgba(208,164,119,.52)}
html[data-workout-phase="paused"] .player-stage{border-color:rgba(208,164,119,.28)}
html[data-workout-phase="paused"] .player-journey span.active{background:rgba(208,164,119,.1);color:#f4e7da}
html[data-workout-phase="paused"] .player-journey span.active i{background:#d0a477;border-color:#d0a477;color:#17100b;box-shadow:0 0 24px rgba(208,164,119,.13)}
html[data-online="false"] #connectionState{color:#d9ac80}

.workout-shortcut-dialog{width:min(92vw,520px);padding:20px;border:1px solid rgba(208,164,119,.28);border-radius:24px;background:linear-gradient(155deg,#11191d,#070d10 72%);color:#f3f6f4;box-shadow:0 30px 100px rgba(0,0,0,.62)}.workout-shortcut-dialog::backdrop{background:rgba(3,6,8,.76);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.shortcut-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:16px}.shortcut-dialog-head small{display:block;margin-bottom:4px;color:#d0a477;font-size:10px;font-weight:950;letter-spacing:.13em}.shortcut-dialog-head h2{margin:0;font-size:24px;letter-spacing:-.035em}.shortcut-dialog-head button{width:38px;height:38px;border:1px solid rgba(255,255,255,.1);border-radius:50%;background:rgba(255,255,255,.04);color:#e7ece8;font-size:20px;cursor:pointer}.shortcut-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.shortcut-grid span{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid rgba(255,255,255,.07);border-radius:14px;background:rgba(255,255,255,.03)}.shortcut-grid kbd{min-width:58px;padding:6px 8px;border:1px solid rgba(208,164,119,.3);border-radius:9px;background:rgba(208,164,119,.08);color:#e5c39f;font:800 10px/1 system-ui;text-align:center}.shortcut-grid b{font-size:11px;color:#dce4de;text-align:right}

html[data-focus-mode="true"] body{background:#05090c}html[data-focus-mode="true"] .topbar,html[data-focus-mode="true"] .player-journey,html[data-focus-mode="true"] .session-focus-card,html[data-focus-mode="true"] #sessionDescription,html[data-focus-mode="true"] .fine,html[data-focus-mode="true"] .player-shortcuts{display:none!important}html[data-focus-mode="true"] .shell{max-width:760px}html[data-focus-mode="true"] .player-head{margin-top:max(env(safe-area-inset-top),10px)}html[data-focus-mode="true"] .player-stage{padding-top:22px;padding-bottom:22px;border-color:rgba(208,164,119,.22);box-shadow:0 28px 80px rgba(0,0,0,.36)}html[data-focus-mode="true"] .timer-ring{transform:scale(1.035)}html[data-focus-mode="true"] .action-dock{bottom:max(env(safe-area-inset-bottom),10px)}
:fullscreen body{background:#05090c}:fullscreen .shell{max-width:860px;padding-top:max(env(safe-area-inset-top),14px);padding-bottom:max(env(safe-area-inset-bottom),14px)}

@media(max-width:600px){
  .guest-complete-next{grid-template-columns:1fr;padding:16px}.guest-complete-next h2{font-size:25px}
  .guest-workout-banner{align-items:flex-start;flex-direction:column;padding:13px 14px}.guest-workout-banner>a{width:100%;justify-content:center}
  .player-head-actions{align-items:flex-end;flex-direction:column}.focus-mode-btn{min-height:34px;font-size:10px}#shortcutHelpBtn{display:none}
  .resume-banner{align-items:flex-start}.resume-banner span{display:none}.resume-action{min-height:44px}
  .player-journey{gap:4px}.player-journey span{gap:5px;font-size:10px}.player-journey i{width:20px;height:20px}
  .player-insights{grid-template-columns:1.2fr .8fr}.player-insights>div:last-child{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px}.player-insights>div:last-child small{margin:0}
  .action-dock{margin-left:-4px;margin-right:-4px;bottom:max(env(safe-area-inset-bottom),6px);grid-template-columns:.72fr 1.55fr .82fr;gap:7px}
  .action-dock .main-action{grid-column:auto;grid-row:auto}.action-dock button{min-width:0;padding-left:8px;padding-right:8px;font-size:13px}
  .player-shortcuts{display:none}.shortcut-grid{grid-template-columns:1fr}
  html[data-focus-mode="true"] .player-head{align-items:flex-start}html[data-focus-mode="true"] .player-head-actions{flex-direction:row;align-items:center}html[data-focus-mode="true"] .timer-ring{transform:none}
}
@media(max-width:390px){.player-journey b{font-size:10px}.player-insights{grid-template-columns:1fr}.player-insights>div:last-child{grid-column:auto}.action-dock{grid-template-columns:.65fr 1.5fr .78fr}.action-dock button{font-size:12px}}


/* RESPONSIVE PLAYER X2 — wide desktop workspace + compact mobile stage */
@media(min-width:1180px){
  .shell{width:min(1240px,calc(100% - 64px))}
  #player{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(340px,.72fr);gap:14px 18px;align-items:start}
  #player>.player-head,#player>.resume-banner,#player>.player-journey{grid-column:1/-1}
  #player>.player-stage{grid-column:1;grid-row:4/span 4;min-height:620px;align-self:stretch}
  #player>.player-progress,#player>.guided-card,#player>.strength-log-card,#player>.session-focus-card{grid-column:2;margin-top:0}
  #player>.player-progress{grid-row:4}
  #player>.action-dock,#player>.player-shortcuts,#player>.fine{grid-column:1/-1}
  .player-stage{grid-template-columns:minmax(0,1.25fr) minmax(220px,.7fr);padding:30px}
  .timer-ring{width:min(430px,32vw)}
  .action-dock{margin-top:4px}
}
@media(max-width:520px){
  .player-stage{padding:14px;border-radius:22px}
  .timer-ring{width:min(330px,78vw);padding:9px}
  .timer-ring:before{inset:9px}
  .timer-core strong{font-size:clamp(58px,18vw,70px)}
  .session-data{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
  .session-data>div{display:block;min-width:0;padding:10px 8px;text-align:center}
  .session-data small{margin-bottom:4px;font-size:10px}
  .session-data strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}
  .focus-card{padding:18px}
}

@media(prefers-reduced-motion:reduce){.player-journey span,.player-progress-track span,.focus-mode-btn{transition:none}html[data-focus-mode="true"] .timer-ring{transform:none}}

.guided-card{position:relative;overflow:hidden}.guided-step-media{position:relative;overflow:hidden;margin:0 0 12px;aspect-ratio:16/9;border:1px solid rgba(208,164,119,.16);border-radius:15px;background:#080d0f}.guided-step-media img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;background:#080d0f;filter:saturate(.86) contrast(1.04) brightness(.88)}body.guest-hyrox-workout .guided-step-media{border-color:rgba(208,164,119,.3);box-shadow:0 14px 34px rgba(0,0,0,.2)}body.guest-hyrox-workout .guided-step-media:after{content:"HYROX GUEST";position:absolute;right:9px;top:9px;padding:5px 7px;border:1px solid rgba(208,164,119,.25);border-radius:999px;background:rgba(5,10,12,.72);color:#e5c39f;font-size:10px;font-weight:900;letter-spacing:.08em}
.guided-transition-overlay{position:absolute;z-index:24;inset:0;display:grid;place-items:center;padding:20px;border-radius:inherit;background:radial-gradient(circle at 50% 34%,rgba(208,164,119,.2),transparent 36%),rgba(5,10,7,.95);text-align:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.guided-transition-overlay[hidden]{display:none!important}
.guided-transition-overlay>div{display:grid;justify-items:center;gap:8px;max-width:94%}
.guided-transition-overlay small{color:#d0a477;font-size:10px;font-weight:950;letter-spacing:.17em}
.guided-transition-overlay strong{color:#f5f4ef;font-size:clamp(72px,24vw,132px);font-weight:1000;line-height:.82;letter-spacing:-.075em;font-variant-numeric:tabular-nums;text-shadow:0 0 34px rgba(208,164,119,.16)}
.guided-transition-overlay span{max-width:620px;color:#eef4ef;font-size:clamp(16px,4.8vw,25px);font-weight:900;line-height:1.08;letter-spacing:-.025em;overflow-wrap:anywhere}
.guided-transition-overlay[data-go="true"]{background:radial-gradient(circle at 50% 36%,rgba(208,164,119,.25),transparent 38%),rgba(5,10,7,.94)}
.guided-transition-overlay[data-go="true"] small{color:var(--accent)}
@media(prefers-reduced-motion:no-preference){.guided-transition-overlay:not([hidden]) strong{animation:hybri8-guided-countdown-pop .66s cubic-bezier(.2,.8,.2,1)}@keyframes hybri8-guided-countdown-pop{0%{opacity:.25;transform:scale(.74)}48%{opacity:1;transform:scale(1.04)}100%{transform:scale(1)}}}
@media(prefers-reduced-motion:reduce){.guided-transition-overlay strong{animation:none!important}}


/* WORKOUT MOBILE LEGIBILITY X5 — readable live state without changing player hierarchy */
@media(max-width:600px){
  .resume-banner small{font-size:10px;line-height:1.2}
  .player-progress small{font-size:10px;line-height:1.2}
  .focus-mode-btn{font-size:10px;line-height:1.15}
  .session-data small{font-size:10px;line-height:1.2}
}
@media(max-width:390px){
  .player-journey b{font-size:10px;line-height:1.15}
}

/* Native Apple TV / AirPlay action. */
.airplay-workout-btn{min-height:44px}.airplay-workout-btn:focus-visible{outline:2px solid #d0a477;outline-offset:3px}@media(max-width:600px){.airplay-workout-btn{display:inline-flex;min-height:44px}}
