:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif;color:#193d32;background:#f6f6f0;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;border:1px solid #d5dcd0;background:transparent;color:inherit;border-radius:8px;padding:10px 15px}button:hover{background:#e7ecdf}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #bc8d2d;outline-offset:3px}input,textarea,select{border:1px solid #ccd5c8;border-radius:7px;padding:10px;background:#fff;color:#193d32;min-width:0}input[type=checkbox]{accent-color:#285b43;width:21px;height:21px;cursor:pointer}input:disabled,textarea:disabled{opacity:.55}header{height:92px;max-width:1120px;margin:auto;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #dce1d5;padding:0 30px}.brand{display:flex;align-items:center;gap:12px;letter-spacing:3px;font-size:22px;font-weight:800;text-decoration:none;color:inherit}.brand span{font-size:9px;letter-spacing:2px;font-weight:500;border-left:1px solid #9bab9c;padding-left:15px;margin-left:10px}main{max-width:1060px;margin:auto;padding:0 30px}.hero{display:flex;justify-content:space-between;align-items:center;padding:58px 0 42px;gap:30px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:750;color:#738271}h1{font-size:clamp(35px,4.7vw,57px);font-weight:500;line-height:1.1;letter-spacing:-2px;margin:20px 0}h1 em{font-family:Georgia,serif;font-weight:400;color:#69815e}p{line-height:1.65;color:#687568}h2{font-size:30px;letter-spacing:-.8px;font-weight:550;margin:12px 0}h3{font-size:22px;font-weight:550;margin:10px 0}.hero-art{width:290px;background:#e7eddf;border-radius:50% 50% 10px 10px;padding:6px 20px 20px;text-align:center;flex-shrink:0}.hero-art .visual-controls{display:none}.hero-art span{font-size:11px;color:#65785e}.tabs{display:flex;gap:25px;border-bottom:1px solid #d9dfd2}.tabs button{border:0;border-radius:0;padding:17px 0;color:#788274;font-size:14px}.tabs .active{color:#193d32;box-shadow:0 2px #193d32}.datebar{display:flex;align-items:center;gap:12px;margin:26px 0 18px;font-size:12px}.datebar label{display:flex;align-items:center;gap:12px}.datebar span{margin-left:auto;color:#7b8579;font-size:11px}.week{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.week button{background:#eff1e9;display:flex;flex-direction:column;gap:7px;align-items:center;padding:15px 3px;border:0}.week span{font-size:10px;letter-spacing:1px}.week b{font-size:23px;font-weight:500}.week i{font-size:9px;font-style:normal;color:#7c8875}.week .selected{background:#234b3c;color:#fff}.week .selected i{color:#c8d6b6}.day-heading{display:flex;justify-content:space-between;align-items:center;margin-top:35px}.progress{text-align:right}.progress b{font-size:26px;font-weight:500}.progress b span{color:#a2ab9b}.progress small{display:block;font-size:10px;color:#7b8574;margin-top:5px}.progress-track{height:3px;background:#e1e7d9;margin:16px 0 24px}.progress-track>div{height:100%;background:#9aac74;transition:width .3s}.exercise{display:grid;grid-template-columns:260px 1fr;background:#fff;border:1px solid #e1e5db;border-radius:12px;overflow:hidden;margin:16px 0}.exercise-visual{background:#edf1e5;position:relative;display:flex;align-items:center;padding:20px 5px}.number{position:absolute;top:17px;left:20px;color:#9eac8d;font-size:13px;letter-spacing:2px}.illustration{width:100%}.illustration svg{width:100%;display:block}.visual-controls{display:flex;align-items:center;justify-content:center;gap:4px;flex-wrap:wrap;font-size:9px;color:#6b7c60}.visual-controls span{width:100%;text-align:center;margin-bottom:5px}.visual-controls button{font-size:10px;padding:6px;border:0}.exercise-body{padding:26px 28px}.exercise-body p{font-size:13px;margin:12px 0}.rest{font-size:11px;color:#748267;margin:12px 0}.sets{display:grid;gap:7px;margin-top:16px}.set{display:flex;align-items:center;gap:8px;padding:8px;background:#f6f7f2;border-radius:7px}.set.done{background:#eaf0e1}.set label{display:flex;align-items:center;gap:7px;font-size:12px;flex:1;white-space:nowrap}.set>input{width:95px;font-size:11px;padding:8px}.variant{font-size:11px;display:flex;flex-direction:column;gap:7px}.variant select{font-size:12px;width:100%}.notes{padding:25px 0}.notes textarea{display:block;width:100%;min-height:90px;resize:vertical;margin:15px 0}.notes label{display:flex;align-items:center;gap:10px;font-size:13px}.hint{font-size:13px;background:#eeeedc;padding:14px;border-radius:8px}.error{padding:15px;background:#f5e4d9;color:#7b3620;margin:15px 0;border-radius:8px;font-size:13px}.error button{margin:5px}.rest-day{background:#eaf0e1;padding:40px;text-align:center;border-radius:12px}.rest-day>span{font-size:45px;color:#b69b4d}.history,.guide{padding:35px 0;min-height:450px}.history>button{display:flex;width:100%;justify-content:space-between;align-items:center;gap:12px;margin:10px 0;padding:20px;background:#fff}.history span,.history small{font-size:12px}.guide{max-width:720px}.guide h3{margin-top:30px}.guide p{font-size:15px}footer{border-top:1px solid #dbe0d3;padding:30px 0 40px;margin-top:25px;font-size:9px;letter-spacing:1.5px;color:#8b9682;display:flex;justify-content:space-between}footer span{letter-spacing:0}.login{max-width:530px;padding-top:12vh}.login .brand{margin-bottom:50px}.login .brand span{font-size:8px}.login h1{font-size:44px}.login form{display:grid;gap:18px;margin:30px 0}.login label{display:grid;gap:8px;font-size:13px}.primary{background:#234b3c;color:#fff;padding:15px}.primary:hover{background:#39644e}.login small{font-size:11px;color:#7c8b73}@media(max-width:700px){header{height:72px;padding:0 20px}.brand{font-size:20px}.brand span{display:none}main{padding:0 18px}.hero{padding:30px 0;gap:8px}.hero-art{width:125px;padding:0 4px 10px}.hero-art span{font-size:8px;display:block}.hero h1{font-size:34px;letter-spacing:-1px}.hero p{font-size:11px}.eyebrow{font-size:8px;letter-spacing:1.2px}.tabs{gap:23px}.tabs button{font-size:12px}.datebar{flex-wrap:wrap}.datebar span{width:100%;margin:0}.week{gap:4px}.week button{padding:12px 2px}.week i{font-size:8px}.week b{font-size:20px}.exercise{grid-template-columns:1fr}.exercise-visual{padding:10px 20px}.exercise-visual .illustration{max-width:260px;margin:auto}.exercise-visual svg{height:155px}.visual-controls span{width:auto;margin:0}.exercise-body{padding:20px}.set{gap:5px;padding:7px}.set>input{width:76px;padding:7px 4px}.set label{font-size:11px;gap:3px}h2{font-size:24px}.progress b{font-size:23px}.history>button{flex-wrap:wrap}.login{padding-top:8vh}.login h1{font-size:37px}footer{font-size:8px;gap:15px}.guide p{font-size:14px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}.motion-note{font-size:11px;line-height:1.5;margin:10px 12px 5px;color:#50654d;text-align:center}.support-key{font-size:9px;color:#697b5e;text-align:center;line-height:1.5;margin:5px 10px}.support-key i{display:inline-block;width:7px;height:7px;background:#c18d2c;border-radius:50%;margin-right:4px}.visual-controls input[type=range]{width:85%;padding:0;height:20px;accent-color:#285b43;background:transparent;border:0}.hero-art .motion-note,.hero-art .support-key{display:none}.exercise-visual{padding-top:34px;padding-bottom:20px}.hero-art svg{min-height:120px}@media(max-width:700px){.exercise-visual .illustration{max-width:320px}.exercise-visual svg{height:205px}.motion-note{margin:10px 8px 5px}.hero-art svg{min-height:85px}}.exercise{grid-template-columns:330px 1fr}.exercise-visual{background:#eef2e8;padding:38px 18px 24px}.exercise-visual svg{height:255px;width:100%;overflow:hidden}.visual-controls{gap:5px;margin-top:15px}.visual-controls>span{font-size:11px;font-weight:600;color:#4f6d58;margin-bottom:8px}.visual-controls button{background:#e2e9d9;border-radius:5px;font-size:10px;padding:7px 9px}.visual-controls input[type=range]{margin-top:8px;width:96%}.motion-note{font-size:12px;line-height:1.5;margin:15px 4px 6px}.support-key{font-size:10px;color:#81917c}.hero-art svg{height:170px}.hero-art{padding:20px}.hero-art .illustration{max-width:250px}.hero-art>span{display:block;margin-top:10px}.number{color:#8c9d80}@media(max-width:700px){.exercise{grid-template-columns:1fr}.exercise-visual{padding:35px 20px 20px}.exercise-visual .illustration{max-width:100%}.exercise-visual svg{height:240px}.hero-art{padding:10px}.hero-art svg{height:90px}.visual-controls button{min-height:34px}.motion-note{font-size:12px}}
