:root{font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;color:#172e27;background:#f5f6f2;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}header{height:76px;background:#102922;color:white;display:flex;align-items:center;justify-content:space-between;padding:12px max(20px,calc((100vw - 860px)/2));}.brand{display:flex;align-items:center;gap:12px}.brand small{display:block;color:#a5c0b3;font-size:10px;font-weight:800;letter-spacing:1.2px}.brand strong{display:block;font-size:24px;letter-spacing:-1px}.logo{background:#d1e780;color:#102922;font-size:27px;font-weight:bold;border-radius:13px;height:43px;width:43px;text-align:center;line-height:43px}.topright{color:#b9cebb;font-size:12px}main{max-width:860px;margin:auto;padding:24px 20px 106px}.hero{border-radius:22px;background:#14362c;color:white;padding:30px 28px;background-image:radial-gradient(circle at 96% 20%,#426b4c 0,transparent 43%)}.eyebrow{color:#d4ed98;font-size:11px;letter-spacing:1.4px;font-weight:800}.hero h1{font-size:clamp(32px,6vw,50px);letter-spacing:-2px;margin:12px 0 6px}.hero h1 span{color:#d8eb9e}.hero p{color:#cfdbd0;font-size:14px}.herofooter{display:flex;gap:16px;flex-wrap:wrap;margin-top:25px;color:#dbe6d4;font-size:12px}.herofooter span{padding:8px 11px;border:1px solid #72917c;border-radius:99px}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:16px 0 27px}.metrics>div{background:white;border:1px solid #e4eae3;border-radius:15px;padding:17px}.metrics small{display:block;color:#697a70;font-size:12px}.metrics b{font-size:25px;display:block;margin-top:8px}.metrics b span{font-size:12px;color:#6c8273}h2{font-size:19px;margin:0 0 15px}.sectionhead{display:flex;justify-content:space-between;align-items:center}.textbtn{border:0;background:none;color:#256748;font-weight:700}.weekbar{display:flex;gap:12px;align-items:center;justify-content:space-between;margin:16px 0}.weekbar button{height:40px;width:40px;border:1px solid #dce5d9;background:white;border-radius:12px;font-size:23px}.weekbar button:disabled{opacity:.3}.weekbar div{text-align:center}.weekbar b{display:block;font-size:14px}.weekbar small{color:#6c8273;font-size:12px}.sessions{display:flex;flex-direction:column;gap:9px}.session{width:100%;text-align:left;background:white;border:1px solid #e3e8e0;border-radius:16px;padding:16px;display:flex;gap:12px;align-items:center;color:inherit}.session.done{border-color:#a6ccaa;background:#f8fdf7}.session-main{flex:1;min-width:0}.line{display:flex;justify-content:space-between;gap:10px}.line b{font-size:14px}.line small{color:#819089;font-size:12px;white-space:nowrap}.sub{display:block;margin:5px 0;color:#4d6658;font-size:13px}.type{font-size:11px;color:#7b8b80}.dot{height:12px;width:12px;border-radius:50%;background:#3a8963;flex:none}.dot.renfo{background:#e0a85d}.dot.velo{background:#8794bb}.chevron{font-size:25px;color:#94a49a}.advice,.panel{margin-top:22px;padding:20px;border-radius:16px;background:white;border:1px solid #e1e8df}.advice{border-left:4px solid #6eaa76}.advice.amber{border-left-color:#dfa849}.advice.red{border-left-color:#c25555}.advice p,.panel p{font-size:14px;line-height:1.6}.advice small,.muted{color:#78867e;font-size:12px}.pageTitle h1{margin:0 0 6px;font-size:30px}.pageTitle p{color:#718177;font-size:14px;margin:0 0 22px}.selectlabel{font-size:12px;color:#6e7f72;display:block}.selectlabel select{display:block;width:100%;margin-top:7px;padding:12px;border:1px solid #d7e4d8;border-radius:11px;background:white;color:#233b2d}.hint{font-size:12px;color:#75877c;line-height:1.6;margin:16px 0}.tabs{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:center;background:#fff;border-top:1px solid #dde7dd;padding:9px 8px calc(10px + env(safe-area-inset-bottom));z-index:10}.tabs button{border:0;background:none;color:#687c6c;padding:10px 16px;font-size:12px;font-weight:700;white-space:nowrap}.tabs button.active{color:#186342;background:#e9f4e8;border-radius:12px}.bars{height:180px;display:flex;gap:3px;align-items:end;border-bottom:1px solid #d7e0d7;padding-top:15px}.bar{flex:1;background:#8abfa0;border-radius:3px 3px 0 0}.bar.current{background:#235d43}.barcap{display:flex;justify-content:space-between;color:#839085;font-size:11px;margin-top:8px}.statrow{display:flex;justify-content:space-between;padding:12px 0;border-top:1px solid #e6ebe4;font-size:13px}.panel label{display:block;font-size:13px;font-weight:600;margin-top:12px}.panel input{display:block;margin-top:7px;padding:10px;border:1px solid #dce4dc;border-radius:8px;max-width:220px}.buttonrow{display:flex;gap:10px;flex-wrap:wrap}.primary,.import{display:inline-flex;justify-content:center;align-items:center;background:#1c5e40;color:white;border:0;border-radius:11px;padding:12px 15px;font-weight:700;font-size:13px;cursor:pointer}.import{background:#e8f0e8;color:#245d42}.danger{background:none;border:1px solid #d99b9b;color:#ac4343;border-radius:10px;margin-top:18px;padding:10px;font-size:13px}.overlay{position:fixed;inset:0;background:#10221d98;display:flex;align-items:center;justify-content:center;z-index:30;padding:14px}.modal{width:min(100%,560px);max-height:95dvh;overflow:auto;background:#fff;border-radius:22px;padding:24px}.modalTop{display:flex;justify-content:space-between;gap:12px}.modalTop small{color:#678575;font-size:11px}.modalTop h2{margin:6px 0 10px}.close{border:0;background:#eff4ef;border-radius:50%;height:34px;width:34px}.prescribed{background:#f0f6ed;border-radius:12px;padding:15px;margin-bottom:17px}.prescribed p{margin:5px 0 0;color:#486653;font-size:13px}.modal label{display:block;font-size:12px;font-weight:700;color:#3e5a49;margin-bottom:13px}.modal input:not([type=checkbox]),.modal textarea{width:100%;border:1px solid #d9e3dc;border-radius:9px;padding:11px;margin-top:6px;background:white;color:#1e3525}.fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.checkline{display:flex!important;align-items:center;gap:10px;font-size:15px!important}.checkline input{height:19px;width:19px}.wide{width:100%;margin-top:6px}.micro{line-height:1.5}@media(max-width:450px){main{padding:16px 13px 100px}.hero{padding:23px 20px}.metrics{gap:7px}.metrics>div{padding:11px}.metrics small{font-size:10px}.metrics b{font-size:19px}.tabs button{padding:10px 9px;font-size:11px}.line{display:block}.line small{margin-left:8px}.fields{gap:8px}.modal{padding:18px}}
