:root{--bg:#f7f8f5;--surface:#fff;--ink:#17211c;--muted:#748079;--line:#e8ece7;--green:#0b7654;--mint:#e7f5ef;--orange:#ff8a1f;--orangeSoft:#fff0df;--navy:#101c35;--shadow:0 12px 32px rgba(28,48,38,.08)}*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}html{background:var(--bg)}body{font-family:-apple-system,BlinkMacSystemFont,'SF Pro Display','Helvetica Neue',sans-serif;background:var(--bg);color:var(--ink);min-height:100vh;max-width:560px;margin:auto}.screen{display:none;padding-bottom:112px}.screen.active{display:block}.brand-mark{width:40px;height:40px;border-radius:14px;background:var(--green);color:#fff;display:grid;place-items:center;font-weight:900;font-size:20px}.section-kicker,.eyebrow{font-size:10px;letter-spacing:1.35px;font-weight:900;color:var(--muted)}.mockup-topbar{padding:18px 20px 10px;display:flex;align-items:center;justify-content:space-between}.mockup-brand{display:flex;align-items:center;gap:11px}.mockup-brand>div:last-child{display:flex;flex-direction:column}.mockup-brand small{font-size:9px;letter-spacing:1.5px;font-weight:900;color:var(--muted)}.mockup-brand strong{font-size:15px;margin-top:3px}.streak{padding:9px 11px;border-radius:999px;background:var(--orangeSoft);border:1px solid #ffd9b4;color:#9a5112}.streak b{font-size:17px}.mockup-home{padding:0 16px}.greeting{padding:13px 4px 8px}.greeting h1{font-size:25px;letter-spacing:-.5px}.greeting p{margin-top:6px;color:var(--muted);font-size:14px}.mockup-heading{padding:10px 4px 14px;display:flex;justify-content:space-between;align-items:flex-end}.mockup-heading h2{font-size:20px;margin-top:4px}.nav-arrows{display:flex;gap:8px}.circle,.mini-back{width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:#fff;color:var(--green);font-size:22px}.next-card{background:linear-gradient(145deg,#0c172d,#152443);color:#fff;border:1px solid #253656;border-radius:22px;padding:22px;box-shadow:0 16px 34px rgba(16,28,53,.18)}.next-label{font-size:10px;letter-spacing:1.4px;font-weight:900;color:#c8d0df}.next-card h2{font-size:24px;line-height:1.1;margin-top:20px}.next-card h3{font-size:17px;margin-top:10px;font-weight:750;color:#f4f6fb}.next-date-nav{display:grid;grid-template-columns:40px 1fr 40px;gap:8px;align-items:center;margin-top:14px}.next-arrow{width:40px;height:40px;border-radius:50%;border:1px solid #ffffff2e;background:#ffffff0f;color:#fff;font-size:25px;line-height:1}.next-date-button{min-width:0;border:0;background:transparent;color:#fff;font:inherit;display:flex;justify-content:center;align-items:center;gap:9px;padding:7px 2px;font-size:20px;font-weight:850;text-align:center}.date-status{width:7px;height:7px;border-radius:50%;display:inline-block;flex:0 0 7px;background:#87919f}.date-status.done{background:#36bd66}.date-status.open,.date-status.planned{background:#f0a51b}.date-status.alert{background:#e45d5d}.date-status.rest{background:#87919f}.week-picker{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-top:10px;padding:10px 6px;border-radius:15px;background:#ffffff0d;border:1px solid #ffffff1c}.week-picker[hidden]{display:none}.picker-day{border:0;background:transparent;color:#c8cfdb;padding:5px 1px;border-radius:11px}.picker-day strong{display:block;font-size:9px}.picker-day span{width:27px;height:27px;margin:4px auto;display:grid;place-items:center;border-radius:50%;font-size:12px}.picker-day .date-status{display:block;margin:0 auto}.picker-day.active{background:#ffffff12;color:#fff}.picker-day.active span{background:#fff;color:#17211c;font-weight:900}.next-meta{display:flex;gap:16px;flex-wrap:wrap;margin-top:18px;color:#c8cfdb;font-size:12px}.hero-start{width:100%;margin-top:20px;padding:15px 16px;border:0;border-radius:13px;background:#fff;color:#17211c;font-weight:900;font-size:15px}.hero-complete{margin-top:20px;padding:14px;border-radius:13px;background:#ffffff14;border:1px solid #ffffff25;text-align:center;font-weight:850}.week-overview{padding:24px 4px 8px}.mockup-section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.text-link{border:0;background:none;color:#5f6870;font-size:12px;font-weight:750}.week-strip{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.week-day{text-align:center;padding:8px 2px;border-radius:14px}.week-day strong{display:block;font-size:10px}.week-day span{width:30px;height:30px;margin:6px auto 4px;display:grid;place-items:center;border-radius:50%;font-size:13px}.week-day i{width:6px;height:6px;display:block;border-radius:50%;background:#d5dad6;margin:auto}.week-day.today span{background:var(--navy);color:#fff;font-weight:900}.week-day.done i{background:#36bd66}.week-day.open i{background:#f0a51b}.progress-card,.phase-card{background:#fff;border:1px solid var(--line);border-radius:22px;margin:17px 0 0;padding:20px;box-shadow:0 8px 25px rgba(28,48,38,.05)}.progress-head{display:flex;justify-content:space-between;align-items:center;gap:14px}.progress-head strong{font-size:10px;letter-spacing:1.2px}.progress-head span{font-size:12px;color:var(--muted)}.progress-track{height:8px;background:#edf0ed;border-radius:99px;margin-top:18px;overflow:hidden}.progress-track span{display:block;height:100%;background:#43bf68;border-radius:99px}.metrics{display:grid;grid-template-columns:repeat(3,1fr);margin-top:22px;border-top:1px solid var(--line);padding-top:20px}.metrics>div{text-align:center;padding:0 7px;border-right:1px solid var(--line)}.metrics>div:last-child{border-right:0}.metrics small{display:block;font-size:8px;line-height:1.35;color:var(--muted);font-weight:800}.metrics b{display:block;font-size:20px;margin-top:9px}.phase-card{display:flex;align-items:center;justify-content:space-between;gap:15px}.phase-card h3{font-size:22px;margin-top:10px}.phase-card p{font-size:13px;color:var(--muted);margin-top:8px;line-height:1.4}.phase-ring{width:88px;height:88px;flex:0 0 88px;border:5px solid #e6ece8;border-top-color:#4bc66d;border-right-color:#4bc66d;border-radius:50%;display:grid;place-items:center;text-align:center;padding:10px}.phase-ring b{font-size:19px}.phase-ring span{font-size:9px;color:var(--muted);line-height:1.15}.mockup-primary-action{display:none}.card{background:#fff;border:1px solid var(--line);border-radius:22px;margin:13px 16px 0;padding:18px;box-shadow:0 6px 20px rgba(30,50,40,.045)}.card>.title{font-size:10px;letter-spacing:1.2px;text-transform:uppercase;font-weight:900;color:var(--muted);margin-bottom:12px}.exercise{padding:14px 0;border-bottom:1px solid var(--line)}.exercise:last-child{border-bottom:0}.exercise strong{font-size:16px}.detail{font-size:13px;color:var(--muted);line-height:1.45;margin-top:5px}.cue{font-size:12px;color:var(--green);font-weight:750;margin-top:7px}.source{font-size:9px;color:#a0aaa4;text-transform:uppercase;letter-spacing:.6px;margin-top:6px}.exercise-video{display:inline-flex;margin-top:9px;padding:7px 10px;background:var(--mint);border-radius:999px;color:var(--green);font-size:12px;font-weight:800;text-decoration:none}.hero{margin:10px 16px 0;padding:23px;border-radius:28px;background:var(--green);color:#fff}.hero.test{background:#f2c84b;color:#3f3108}.badge{display:inline-flex;padding:6px 10px;border-radius:999px;background:#fff;color:var(--green);font-size:9px;font-weight:900}.page-head{padding:24px 20px 13px;display:flex;gap:13px;align-items:flex-start}.page-head h1{font-size:31px;letter-spacing:-1px;margin-top:4px}.page-head p{font-size:13px;color:var(--muted);margin-top:5px}.flow-switch{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin:8px 16px 0;padding:4px;background:#e9ede9;border-radius:17px}.flow-tab{border:0;border-radius:14px;padding:12px 6px;background:transparent;color:var(--muted);font-size:12px;font-weight:850}.flow-tab.active{background:#fff;color:var(--green)}.flow{display:none}.flow.active{display:block}.prompt{margin:18px 16px 0;padding:19px;display:flex;gap:13px;align-items:center;background:#eef8f3;border-radius:22px;border:1px solid #dceee6}.prompt-icon{width:44px;height:44px;border-radius:15px;background:var(--mint);display:grid;place-items:center;font-size:21px}.prompt h2{font-size:21px}.prompt p{font-size:12px;color:var(--muted);margin-top:4px}.choice2,.choice3,.choice4,.grid5,.rpe{display:grid;gap:8px}.choice2{grid-template-columns:repeat(2,1fr)}.choice3{grid-template-columns:repeat(3,1fr)}.choice4{grid-template-columns:repeat(4,1fr)}.grid5,.rpe{grid-template-columns:repeat(5,1fr)}.choice2 button,.choice3 button,.choice4 button,.grid5 button,.rpe button{border:1px solid var(--line);background:#f5f7f4;border-radius:15px;min-height:50px;color:var(--ink);font-weight:850}.choice4 button{font-size:21px;padding:9px 2px}.choice4 small{display:block;font-size:8px;color:var(--muted);margin-top:5px}.choice2 button.sel,.choice3 button.sel,.choice4 button.sel,.grid5 button.sel,.rpe button.sel{background:var(--mint);border-color:#77bea5;color:#075d43}.rpe-label{text-align:center;font-size:12px;color:var(--muted);font-weight:750;margin-top:10px}.hidden{display:none!important}.input{width:100%;background:#f5f7f4;border:1px solid var(--line);border-radius:15px;color:var(--ink);font-size:16px;padding:13px}.row{display:grid;grid-template-columns:1fr 1fr;gap:9px}.button{width:calc(100% - 32px);margin:14px 16px 0;padding:16px;border:0;border-radius:18px;background:var(--green);color:#fff;font-size:15px;font-weight:900}.entry{padding:14px 0;border-bottom:1px solid var(--line)}.entry-head{font-size:13px;font-weight:850;display:flex;justify-content:space-between}.entry-sub{font-size:12px;color:var(--muted);margin-top:6px}.done,.open{font-size:9px;padding:5px 7px;border-radius:999px}.done{background:var(--orangeSoft)}.open{background:#fff5cb}.test-result{display:grid;grid-template-columns:1fr auto;gap:8px;padding:10px 0;border-bottom:1px solid var(--line);font-size:13px}.muted{color:var(--muted)}.bottom{position:fixed;left:50%;transform:translateX(-50%);bottom:0;width:min(560px,100%);display:flex;background:#ffffffed;backdrop-filter:blur(20px);border-top:1px solid #e7ebe6;padding:7px 7px calc(8px + env(safe-area-inset-bottom));z-index:100}.nav{flex:1;border:0;background:none;color:#9aa49e;padding:6px 1px 3px;font-size:9px;font-weight:800}.nav span{display:grid;place-items:center;height:24px;font-size:19px;margin-bottom:2px}.nav.active{color:var(--green)}.toast{position:fixed;top:58px;left:50%;transform:translateX(-50%);z-index:999;background:#17231d;color:#fff;padding:11px 17px;border-radius:999px;font-size:12px;font-weight:850;opacity:0;pointer-events:none}.toast.show{opacity:1}@media(max-width:370px){.greeting h1{font-size:23px}.next-date-button{font-size:17px}.metrics b{font-size:17px}.choice4 small{display:none}.nav{font-size:8px}}