:root{--ink:#111317;--paper:#f5f1e9;--white:#fff;--orange:#f04b23;--lime:#c9f33a;--muted:#6d716f;--line:#d9d4ca;--navy:#18242b;--shadow:0 18px 50px rgba(17,19,23,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,"PingFang SC","Microsoft YaHei",system-ui,sans-serif;line-height:1.5}button,a,input{font:inherit}button,a{outline-offset:4px}a{color:inherit;text-decoration:none}.topbar{height:72px;padding:0 clamp(22px,5vw,72px);display:flex;align-items:center;justify-content:space-between;background:var(--ink);color:#fff;position:sticky;top:0;z-index:20}.brand{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:900;letter-spacing:.12em}.brand-mark{display:grid;place-items:center;width:30px;height:30px;background:var(--orange);color:#fff;transform:skew(-8deg);font-style:italic}.topbar nav{display:flex;gap:30px;font-size:13px;color:#d1d3d2}.topbar nav a:hover{color:var(--lime)}.sound-toggle{border:1px solid #4a4e50;background:transparent;color:#fff;padding:8px 12px;border-radius:99px;font-size:12px;cursor:pointer}.hero{min-height:650px;display:grid;grid-template-columns:1.05fr .95fr;background:var(--ink);color:#fff;overflow:hidden}.hero-copy{padding:clamp(70px,10vw,130px) clamp(28px,7vw,110px)}.eyebrow{margin:0 0 16px;color:var(--lime);font-size:11px;font-weight:900;letter-spacing:.2em;text-transform:uppercase}.eyebrow.dark{color:#747a75}.hero h1{font-size:clamp(50px,6.8vw,96px);line-height:.94;letter-spacing:-.065em;margin:0;max-width:760px}.hero h1 em{color:var(--orange);font-style:normal}.hero-intro{max-width:620px;color:#b6bbba;font-size:16px;margin:30px 0}.hero-actions{display:flex;align-items:center;gap:24px}.primary-btn{display:inline-flex;gap:24px;align-items:center;background:var(--lime);color:var(--ink);font-weight:800;padding:15px 20px}.primary-btn span{font-size:20px}.text-btn{border:0;background:transparent;color:#aaa;text-decoration:underline;text-underline-offset:4px;cursor:pointer}.stat-row{display:flex;gap:50px;margin-top:54px}.stat-row div{display:flex;flex-direction:column}.stat-row strong{font-size:28px}.stat-row span{font-size:11px;color:#8f9594;text-transform:uppercase;letter-spacing:.08em}.hero-visual{position:relative;background:var(--orange);min-height:520px;overflow:hidden;clip-path:polygon(10% 0,100% 0,100% 100%,0 100%)}.track-lines{position:absolute;inset:-20%;background:repeating-radial-gradient(ellipse at 95% 80%,transparent 0 62px,rgba(255,255,255,.18) 64px 66px)}.speed-word{position:absolute;right:-20px;bottom:10px;font-size:clamp(85px,13vw,190px);font-weight:950;font-style:italic;letter-spacing:-.1em;color:rgba(20,20,20,.15);transform:rotate(-9deg)}.base{position:absolute;width:44px;height:44px;background:#fff;transform:rotate(45deg);box-shadow:0 12px 25px rgba(0,0,0,.18)}.base-one{right:17%;top:25%}.base-two{left:20%;bottom:20%}.runner{position:absolute;left:48%;top:48%;width:150px;height:260px;transform:translate(-50%,-50%) rotate(-12deg)}.runner span{position:absolute;display:block;background:var(--ink);border-radius:50px}.runner .head{width:48px;height:48px;left:66px;top:0;border-radius:50%}.runner .body{width:54px;height:120px;left:55px;top:48px;transform:rotate(14deg)}.runner .arm{width:24px;height:112px;top:55px;transform-origin:top}.runner .a1{left:65px;transform:rotate(58deg)}.runner .a2{left:98px;transform:rotate(-54deg)}.runner .leg{width:29px;height:135px;top:146px;transform-origin:top}.runner .l1{left:75px;transform:rotate(48deg)}.runner .l2{left:87px;transform:rotate(-55deg)}.section-shell{padding:90px clamp(22px,6vw,90px)}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:28px;margin-bottom:28px}.section-heading h2,.workout-head h2,.safety h2{font-size:clamp(30px,4vw,54px);line-height:1;margin:0;letter-spacing:-.045em}.progress-copy{font-size:13px;color:var(--muted)}.progress-copy span{font-size:24px;color:var(--ink);font-weight:900}.progress-track{height:5px;background:#d8d4cb;margin-bottom:35px}.progress-track span{display:block;width:0;height:100%;background:var(--orange);transition:width .35s}.phase-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.phase-card{position:relative;text-align:left;min-height:190px;padding:22px;background:transparent;border:1px solid var(--line);cursor:pointer;transition:.2s}.phase-card:hover,.phase-card.active{background:var(--ink);color:#fff;transform:translateY(-4px);box-shadow:var(--shadow)}.phase-card>span{position:absolute;right:18px;top:10px;font-size:50px;color:#d9d5cc;font-weight:900}.phase-card.active>span,.phase-card:hover>span{color:#36383a}.phase-card small{display:block;color:var(--orange);font-weight:800;margin-bottom:46px}.phase-card strong{display:block;font-size:21px}.phase-card p{font-size:12px;color:#858a87;margin-bottom:0}.workout{background:#fff}.workout-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:30px}.workout-head h2{font-size:72px}.workout-head h2 span{color:var(--orange)}.day-title{margin:6px 0 0;font-weight:800}.day-controls{display:flex;align-items:center;gap:10px}.day-controls button{width:42px;height:42px;border:1px solid var(--line);background:#fff;cursor:pointer}.day-controls label{font-size:0}.day-controls input{width:72px;height:42px;border:1px solid var(--line);text-align:center;font-weight:900}.workout-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:18px}.session-card{border:1px solid var(--line);padding:28px}.session-meta{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:26px}.session-meta span{padding:7px 10px;background:#f3f1ed;font-size:12px;font-weight:700}.timeline-row{display:grid;grid-template-columns:52px 1fr auto;gap:16px;padding:18px 0;border-top:1px solid #e5e1d9;align-items:start}.timeline-row:last-child{border-bottom:1px solid #e5e1d9}.timeline-min{font-weight:900;color:var(--orange);font-size:12px}.timeline-row h3{font-size:16px;margin:0 0 5px}.timeline-row p{margin:0;color:var(--muted);font-size:13px}.timeline-type{font-size:10px;letter-spacing:.12em;font-weight:900;color:#9a9d99}.coach-note{display:grid;grid-template-columns:90px 1fr;gap:14px;background:#eff7d6;margin:22px 0;padding:16px}.coach-note span{font-size:11px;font-weight:900}.coach-note p{font-size:13px;margin:0}.complete-btn{width:100%;border:0;background:var(--ink);color:#fff;padding:16px;cursor:pointer;font-weight:900}.complete-btn .check{display:inline-grid;place-items:center;width:22px;height:22px;border:1px solid #777;border-radius:50%;margin-right:8px}.complete-btn.done{background:var(--lime);color:var(--ink)}.complete-btn.done .check{border-color:var(--ink)}.timer-card{background:var(--navy);color:#fff;padding:28px;display:flex;flex-direction:column;align-items:center}.timer-card>.eyebrow{align-self:flex-start}.timer-ring{--progress:0deg;width:190px;height:190px;margin:12px 0 24px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--orange) var(--progress),#3a464b 0);position:relative}.timer-ring:after{content:"";position:absolute;inset:8px;border-radius:50%;background:var(--navy)}.timer-ring>div{position:relative;z-index:1;text-align:center}.timer-ring strong{display:block;font-variant-numeric:tabular-nums;font-size:38px;letter-spacing:-.04em}.timer-ring span{font-size:11px;color:#929b9f}.timer-presets{display:flex;gap:5px}.timer-presets button{background:#2a363b;color:#aeb6b8;border:0;padding:8px 10px;font-size:11px;cursor:pointer}.timer-presets button.active{background:var(--orange);color:#fff}.timer-main{width:100%;margin-top:18px;border:0;background:var(--lime);padding:13px;font-weight:900;cursor:pointer}.timer-reset{border:0;background:transparent;color:#8f989b;font-size:11px;margin-top:8px;cursor:pointer}.calendar-section{background:#efebe2}.legend{display:flex;gap:16px;font-size:11px}.dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:5px}.dot.done{background:var(--orange)}.dot.current{background:var(--ink)}.dot.rest{background:#b6b2aa}.calendar{display:grid;grid-template-columns:repeat(10,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.day-cell{aspect-ratio:1;min-height:72px;border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:transparent;text-align:left;padding:10px;position:relative;cursor:pointer}.day-cell:hover{background:#fff}.day-cell strong{font-size:14px}.day-cell small{display:block;margin-top:4px;color:#858984;font-size:9px}.day-cell.done{background:var(--orange);color:#fff}.day-cell.done small{color:#ffe0d7}.day-cell.current{box-shadow:inset 0 0 0 3px var(--ink)}.day-cell.rest:after{content:"";position:absolute;width:7px;height:7px;border-radius:50%;background:#aaa;right:8px;top:8px}.guide{background:var(--lime)}.heading-note{max-width:290px;font-size:13px}.move-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.move-grid article{background:#fff;padding:26px;min-height:250px}.move-icon{display:grid;place-items:center;width:46px;height:46px;background:var(--ink);color:var(--lime);font-size:23px;margin-bottom:38px}.move-grid small{font-size:10px;color:var(--orange);font-weight:900;letter-spacing:.15em}.move-grid h3{font-size:19px;margin:5px 0 12px}.move-grid p{font-size:13px;color:var(--muted)}.safety{display:grid;grid-template-columns:80px .7fr 1.3fr;gap:35px;align-items:start;background:#fff}.safety-mark{width:54px;height:54px;border:3px solid var(--orange);color:var(--orange);border-radius:50%;display:grid;place-items:center;font-weight:900;font-size:25px}.safety-copy{display:grid;grid-template-columns:1fr 1fr;gap:28px;color:var(--muted);font-size:13px}.safety-copy p{margin:0}footer{background:var(--ink);color:#fff;padding:45px clamp(22px,6vw,90px);display:grid;grid-template-columns:1fr 2fr 1fr;gap:20px;align-items:center;font-size:11px;color:#999}footer .brand{color:#fff}.foot-note{text-align:right}
@media(max-width:900px){.topbar nav{display:none}.hero{grid-template-columns:1fr}.hero-visual{min-height:380px;clip-path:none}.phase-grid,.move-grid{grid-template-columns:repeat(2,1fr)}.workout-layout{grid-template-columns:1fr}.timer-card{min-height:400px}.calendar{grid-template-columns:repeat(5,1fr)}.safety{grid-template-columns:60px 1fr}.safety-copy{grid-column:2;grid-template-columns:1fr}footer{grid-template-columns:1fr}.foot-note{text-align:left}}
@media(max-width:560px){.topbar{height:62px}.sound-toggle{font-size:10px}.hero-copy{padding:65px 22px}.hero h1{font-size:50px}.stat-row{gap:25px}.section-shell{padding:65px 18px}.section-heading,.workout-head{align-items:flex-start;flex-direction:column}.phase-grid,.move-grid{grid-template-columns:1fr 1fr}.phase-card{min-height:175px;padding:16px}.workout-head h2{font-size:58px}.session-card{padding:18px}.timeline-row{grid-template-columns:42px 1fr}.timeline-type{display:none}.calendar{grid-template-columns:repeat(5,1fr)}.day-cell{min-height:62px;padding:7px}.safety{grid-template-columns:1fr}.safety-copy{grid-column:1}.safety-mark{margin-bottom:5px}.hero-actions{align-items:flex-start;flex-direction:column}.hero-visual{min-height:330px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.hero h1{font-size:clamp(50px,5vw,84px)}
.day-controls input{color:var(--ink);background:#fff;opacity:1}
.result-card{margin:22px 0;border:1px solid var(--line);background:#f8f6f1;padding:22px}.result-head{display:flex;align-items:start;justify-content:space-between;gap:16px;margin-bottom:18px}.result-kicker{display:block;color:var(--orange);font-size:9px;font-weight:900;letter-spacing:.18em}.result-head h3{margin:3px 0 0;font-size:18px}.save-state{background:#e6e2da;color:#747975;border-radius:99px;padding:5px 9px;font-size:10px;white-space:nowrap}.save-state.saved{background:#def4a1;color:#253000}.result-fields{display:grid;grid-template-columns:1.5fr .7fr .9fr;gap:12px}.result-fields label{display:flex;flex-direction:column;gap:6px}.result-fields label>span{font-size:10px;font-weight:900;color:#6f7470;letter-spacing:.06em}.result-fields input,.result-fields select,.result-fields textarea{width:100%;border:1px solid #d6d1c7;background:#fff;color:var(--ink);padding:11px 12px;border-radius:0;outline-offset:2px}.result-fields textarea{resize:vertical;min-height:78px}.result-fields input:focus,.result-fields select:focus,.result-fields textarea:focus{outline:2px solid var(--orange);border-color:transparent}.result-notes{grid-column:1/-1}.result-actions{display:flex;gap:10px;margin-top:12px}.result-actions button{border:0;padding:11px 15px;font-size:12px;font-weight:900;cursor:pointer}.result-actions #saveResult{background:var(--orange);color:#fff}.result-actions #clearResult{background:transparent;color:#777;text-decoration:underline;text-underline-offset:3px}.day-cell.has-record:before{content:"✓";position:absolute;right:7px;bottom:6px;width:16px;height:16px;border-radius:50%;display:grid;place-items:center;background:var(--lime);color:var(--ink);font-size:9px;font-weight:900}.day-cell.done.has-record:before{background:#fff}.day-cell.has-record small{font-weight:900;color:var(--ink)}.day-cell.done.has-record small{color:#fff}
@media(max-width:650px){.result-fields{grid-template-columns:1fr 1fr}.result-main,.result-notes{grid-column:1/-1}.result-card{padding:16px}.result-actions{flex-direction:column}.result-actions button{width:100%}}
.history-panel{display:grid;grid-template-columns:210px 1fr;gap:12px;margin-bottom:18px}.history-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px}.history-stats>div{display:flex;flex-direction:column;justify-content:center;min-height:120px;background:var(--ink);color:#fff;padding:15px}.history-stats .best-stat{background:var(--orange)}.history-stats span,.trend-box>div>span{font-size:9px;font-weight:900;letter-spacing:.1em}.history-stats strong{font-size:20px;margin:7px 0 2px;white-space:nowrap}.history-stats small{color:#9fa3a2;font-size:8px}.history-stats .best-stat small{color:#ffd7ca}.trend-box{background:#fff;border:1px solid #e0dcd3;padding:11px 14px 5px;min-width:0}.trend-box>div{display:flex;justify-content:space-between;align-items:center}.trend-box>div small{font-size:8px;color:#8b908c}.trend-box svg{display:block;width:100%;height:95px;margin-top:2px;overflow:visible}.chart-grid{stroke:#e8e4dc;stroke-width:1}.chart-line{fill:none;stroke:var(--orange);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.chart-area{fill:url(#trendFill)}.chart-dot{fill:var(--white);stroke:var(--orange);stroke-width:3}.chart-dot.latest{fill:var(--lime);stroke:var(--ink)}.chart-label{fill:#7c817d;font-size:9px;font-family:inherit}.chart-empty{fill:#9da19e;font-size:12px;font-family:inherit}.value-input{display:flex;border:1px solid #d6d1c7;background:#fff}.result-fields .value-input input{border:0;min-width:0}.value-input b{display:grid;place-items:center;min-width:42px;padding:0 8px;color:#777;font-size:11px;border-left:1px solid #e5e1d8}.result-fields .value-input:focus-within{outline:2px solid var(--orange);outline-offset:2px}.result-fields .value-input input:focus{outline:0}.result-actions button:disabled{opacity:.35;cursor:not-allowed}
@media(max-width:760px){.history-panel{grid-template-columns:1fr}.history-stats>div{min-height:100px}.trend-box svg{height:125px}}
.result-fields{grid-template-columns:1fr 1fr 1.15fr}.result-fields .value-input input{flex:1;width:0;appearance:textfield}.result-fields .value-input input::-webkit-inner-spin-button,.result-fields .value-input input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
@media(max-width:650px){.result-fields{grid-template-columns:1fr 1fr}.result-main,.result-notes{grid-column:1/-1}}
.club-day-btn{width:100%;display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:12px;margin:0 0 22px;border:1px dashed #9da38f;background:#f4fadf;color:var(--ink);padding:13px 15px;text-align:left;cursor:pointer}.club-day-btn>span:first-child{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--lime);font-size:17px}.club-day-btn strong,.club-day-btn small{display:block}.club-day-btn strong{font-size:13px}.club-day-btn small{margin-top:2px;color:#737871;font-size:10px}.club-day-btn b{font-size:20px}.club-day-btn:hover{border-color:var(--ink);background:#ebf9bc}.club-day-btn.active{border-style:solid;border-color:var(--navy);background:var(--navy);color:#fff;cursor:default}.club-day-btn.active small{color:#aeb8bb}.club-day-btn.active>span:first-child{background:var(--orange)}.dot.club{background:var(--lime);box-shadow:0 0 0 1px var(--ink)}.day-cell.club{background:var(--navy);color:#fff}.day-cell.club small{color:var(--lime);font-weight:900}.day-cell.club:after{background:var(--lime)}
.club-day-btn.active{cursor:pointer}
