:root{color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#f7f5f2;background:#080808;font-synthesis:none;text-rendering:optimizeLegibility;--red: #ef3340;--red-deep: #a70e19;--white: #f7f5f2;--muted: #9b9896;--panel: #121212;--line: #2a2727}*{box-sizing:border-box}html{background:#080808;min-height:100%}body{margin:0;min-width:320px;min-height:100vh;min-height:100dvh;background:#080808}button{font:inherit}button:focus-visible{outline:3px solid #fff;outline-offset:4px}button:disabled{cursor:not-allowed}#root{min-height:100vh;min-height:100dvh}.start-screen{position:relative;min-height:100vh;min-height:100dvh;display:grid;place-items:center;overflow:hidden;padding:max(28px,env(safe-area-inset-top)) 24px max(28px,env(safe-area-inset-bottom));background:#080808}.start-screen:before,.start-screen:after{content:"";position:absolute;left:50%;width:1px;background:linear-gradient(transparent,#ef3340cc)}.start-screen:before{top:max(76px,calc(env(safe-area-inset-top) + 58px));height:max(0px,calc(50% - 245px))}.start-screen:after{bottom:0;height:max(0px,calc(50% - 190px));transform:rotate(180deg)}.start-mark{position:absolute;top:max(32px,calc(env(safe-area-inset-top) + 18px));left:50%;transform:translate(-50%);display:flex;align-items:center;gap:10px;font-family:Barlow Condensed,Impact,sans-serif;font-weight:900;font-size:14px;letter-spacing:.16em;white-space:nowrap}.start-mark i{width:28px;height:3px;background:var(--red);transform:skew(-24deg)}.start-button{position:relative;width:clamp(214px,66vw,274px);aspect-ratio:1;border:1px solid rgba(255,255,255,.16);border-radius:50%;color:var(--white);background:var(--red);box-shadow:0 0 0 9px #080808,0 0 0 10px #ef334085,0 22px 58px #ef33402b;font-family:Barlow Condensed,Impact,sans-serif;font-size:clamp(52px,15vw,72px);font-weight:900;text-transform:uppercase;letter-spacing:-.045em;cursor:pointer;transition:transform .16s ease,background .16s ease}.start-button:active{transform:scale(.96);background:#d71f2c}.workout-screen{min-height:100vh;min-height:100dvh;display:grid;grid-template-rows:auto auto 1fr auto;background:#080808;padding-bottom:env(safe-area-inset-bottom)}.progress-track{height:4px;background:#251416}.progress-track span{display:block;height:100%;background:var(--red);transition:width .3s ease}.workout-header{display:flex;align-items:flex-start;justify-content:space-between;padding:20px 20px 4px}.master-timer{display:flex;flex-direction:column;gap:1px}.master-timer span:first-child{color:var(--muted);text-transform:uppercase;letter-spacing:.14em;font-size:10px;font-weight:700}.master-timer strong{font-family:Barlow Condensed,ui-monospace,monospace;font-size:30px;line-height:1;letter-spacing:.025em;font-variant-numeric:tabular-nums}.exit-button{width:44px;height:44px;border:0;border-radius:50%;color:#b8b2af;background:transparent;font-size:31px;line-height:1;cursor:pointer}.exit-button:active{color:#fff;background:#1b1b1b}.stage{width:min(100%,660px);margin:0 auto;padding:clamp(18px,5vh,54px) 20px 22px;display:flex;flex-direction:column;min-height:0;animation:stage-in .24s ease-out}@keyframes stage-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.stage-meta{display:flex;align-items:center;justify-content:space-between;margin-bottom:13px}.stage-label{color:var(--red);font-family:Barlow Condensed,Impact,sans-serif;font-size:15px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.stage-time{display:inline-flex;align-items:baseline;gap:7px;color:#aaa5a2;font-family:Barlow Condensed,ui-monospace,monospace;font-size:20px;font-weight:700;font-variant-numeric:tabular-nums}.stage-time small{color:#686361;font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:9px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.stage h1{max-width:570px;margin:0;color:var(--white);font-family:Barlow Condensed,Impact,sans-serif;font-size:clamp(46px,13vw,82px);font-weight:900;line-height:.9;letter-spacing:-.035em;text-transform:uppercase;text-wrap:balance}.prescription{margin:22px 0 0;color:var(--white);font-family:Barlow Condensed,Impact,sans-serif;font-size:clamp(40px,11vw,66px);font-weight:800;line-height:.95;letter-spacing:-.02em}.stage-detail{margin:10px 0 0;color:#aaa5a2;font-size:clamp(16px,4.4vw,22px);font-weight:600;line-height:1.35}.sequence-bars{list-style:none;display:grid;gap:8px;padding:0;margin:clamp(24px,5vh,48px) 0 0}.sequence-bar{position:relative;min-height:52px;display:flex;align-items:center;border-radius:5px;overflow:hidden;color:#080808;background:var(--swatch);box-shadow:inset 0 0 0 1px #ffffff24}.sequence-index{width:52px;display:grid;place-items:center;align-self:stretch;border-right:1px solid rgba(0,0,0,.2);font-family:Barlow Condensed,Impact,sans-serif;font-weight:900;font-size:20px}.sequence-color-name{padding:0 16px;font-family:Barlow Condensed,Impact,sans-serif;font-size:24px;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.sequence-bars--compact{gap:4px;margin-top:10px}.sequence-bars--compact .sequence-bar{min-height:25px;border-radius:3px}.sequence-bars--compact .sequence-index{width:26px;font-size:12px}.sequence-bars--compact .sequence-color-name{padding:0 8px;font-size:12px}.stage--run{justify-content:flex-start}.run-visual{position:relative;display:grid;align-content:center;flex:1;min-height:230px;padding:20px 0}.run-distance{font-family:Barlow Condensed,Impact,sans-serif;font-size:clamp(132px,42vw,230px);font-weight:900;line-height:.65;letter-spacing:-.08em;color:var(--white)}.run-unit{margin-left:7px;color:var(--red);font-family:Barlow Condensed,Impact,sans-serif;font-size:30px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.run-visual i{position:absolute;right:4%;top:24%;width:19%;aspect-ratio:1;border:8px solid var(--red);border-left-color:transparent;border-radius:50%;transform:rotate(-35deg);opacity:.75}.stage-footer{width:min(100%,660px);margin:0 auto;padding:12px 20px max(20px,env(safe-area-inset-bottom))}.primary-button{width:100%;min-height:62px;border:0;border-radius:6px;color:#fff;background:var(--red);font-family:Barlow Condensed,Impact,sans-serif;font-size:22px;font-weight:900;letter-spacing:.035em;text-transform:uppercase;cursor:pointer;box-shadow:0 12px 34px #ef334029;transition:transform .12s ease,background .12s ease}.primary-button:active:not(:disabled){transform:translateY(2px);background:#d71f2c}.primary-button:disabled{opacity:.28;box-shadow:none}.recall-builder{margin-top:clamp(28px,6vh,60px)}.recall-slots{display:grid;grid-template-columns:repeat(6,1fr);gap:6px}.recall-slot{position:relative;aspect-ratio:.72;border:1px solid #363231;border-radius:5px;color:#66615f;background:#131313;cursor:pointer}.recall-slot:after{content:"";position:absolute;inset:0;background:var(--swatch);opacity:0;transition:opacity .15s}.recall-slot--filled:after{opacity:1}.recall-slot span{position:relative;z-index:1;font-family:Barlow Condensed,Impact,sans-serif;font-size:15px;font-weight:900}.recall-slot--filled span{color:#000000b8}.color-picker{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:22px}.color-picker button{position:relative;height:62px;border:0;border-radius:5px;overflow:hidden;color:#070707;background:var(--swatch);font-family:Barlow Condensed,Impact,sans-serif;font-size:18px;font-weight:900;text-transform:uppercase;cursor:pointer}.color-picker button:disabled{filter:grayscale(1);opacity:.15}.reset-recall{display:block;margin:20px auto 0;border:0;color:#aaa5a2;background:transparent;text-decoration:underline;text-underline-offset:4px;cursor:pointer}.results-screen{width:min(100%,720px);min-height:100vh;min-height:100dvh;margin:0 auto;padding:max(42px,env(safe-area-inset-top)) 20px max(36px,env(safe-area-inset-bottom))}.results-hero{padding:4px 0 32px;border-bottom:1px solid var(--line)}.eyebrow{margin:0 0 10px;color:var(--red);font-family:Barlow Condensed,Impact,sans-serif;font-size:15px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.results-hero h1{margin:0;font-family:Barlow Condensed,Impact,sans-serif;font-size:clamp(80px,24vw,140px);font-weight:900;line-height:.78;letter-spacing:-.055em;font-variant-numeric:tabular-nums}.recall-result{display:inline-flex;align-items:center;gap:9px;margin-top:28px;padding:8px 12px;border:1px solid;border-radius:4px;font-family:Barlow Condensed,Impact,sans-serif;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.recall-result--correct{color:#39da8e;border-color:#1f754f;background:#19b86a1a}.recall-result--miss{color:#ff5a65;border-color:#7c252d;background:#ef33401a}.recall-result-icon{font-size:20px}.sequence-review{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:30px 0;border-bottom:1px solid var(--line)}.sequence-review p{margin:0;color:var(--muted);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.splits-section{padding:30px 0}.section-heading{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:15px}.section-heading h2{margin:0;font-family:Barlow Condensed,Impact,sans-serif;font-size:32px;font-weight:900;text-transform:uppercase}.section-heading span{color:var(--muted);font-size:12px;text-transform:uppercase}.splits-list{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}.splits-list li{display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:50px;border-bottom:1px solid var(--line)}.split-number{color:var(--red);font-family:Barlow Condensed,Impact,sans-serif;font-weight:800}.split-title{min-width:0;color:#d5d1ce;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:14px}.splits-list strong{font-family:Barlow Condensed,ui-monospace,monospace;font-size:18px;font-variant-numeric:tabular-nums}@media(min-width:700px){.workout-header{width:min(100%,760px);margin:0 auto}.stage{padding-left:20px;padding-right:20px}.recall-slots{gap:10px}}@media(max-height:690px){.stage{padding-top:12px}.stage h1{font-size:clamp(40px,11vw,58px)}.sequence-bars{gap:5px;margin-top:16px}.sequence-bar{min-height:40px}.sequence-index{width:42px}.sequence-color-name{font-size:20px}.recall-builder{margin-top:18px}.color-picker button{height:52px}.stage-footer{padding-top:6px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
