:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#203a34;background:#f5f6f2;font-synthesis:none;--bg:#f5f6f2;--card:#fff;--text:#203a34;--muted:#74817c;--line:#e3e8e2;--soft:#eef3eb;--green:#184e3e;--input:#f5f7f3;--accent:#d7ed9b;--bottom-nav-height: calc(80px + env(safe-area-inset-bottom)) ;color-scheme:light}*{box-sizing:border-box}[data-theme=dark]{--bg:#101b17;--card:#1b2a23;--text:#e8eee6;--muted:#a3b3a6;--line:#334239;--soft:#25372a;--green:#b8d99b;--input:#15221c;color-scheme:dark;background:var(--bg);color:var(--text)}body{margin:0}button,input,select{font:inherit}button,a{cursor:pointer}button{min-height:44px;border:0;border-radius:12px;padding:10px 16px;color:var(--text);background:var(--soft);font-weight:600}button:disabled{opacity:.5;cursor:default}button:focus-visible,a:focus-visible{outline:3px solid #8dab4c;outline-offset:3px}input:focus,select:focus{outline:2px solid #819b64}button:active{transform:scale(.98)}h1{font-size:30px;letter-spacing:-1px;line-height:1.3;margin:10px 0}h2{font-size:19px;margin:8px 0 14px}h3{font-size:16px;margin-top:24px}p{line-height:1.7;margin:10px 0;font-size:14px}.shell{max-width:880px;margin:auto;padding:0 28px}.top{display:flex;align-items:center;justify-content:space-between;padding:28px 0;border-bottom:1px solid var(--line)}.top a{font-size:20px;font-weight:900;letter-spacing:2px}.top a span{font-size:12px;font-weight:500;letter-spacing:1px;margin-left:12px}.local{font-size:12px;color:var(--muted)}main{padding:30px 0 calc(var(--bottom-nav-height) + 32px)}.eyebrow{font-size:11px;letter-spacing:1.4px;font-weight:700;color:var(--muted)}.page-title{margin-bottom:28px}.page-title p{color:var(--muted)}.hero{background:#163f33;color:#f4f9ef;border-radius:22px;padding:30px;position:relative;overflow:hidden}.hero .eyebrow{color:#afc6b2}.hero h2{font-size:26px;margin-top:18px}.hero p{color:#c4d5c7;max-width:450px}.primary{background:var(--green);color:var(--bg)}.hero .primary{background:#d7ed9b;color:#183d2d;margin-top:14px}.full{width:100%}.secondary{border:1px solid var(--line);background:var(--card);font-size:13px}.metrics{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:18px 0}.metrics section{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:20px}.metrics span{font-size:13px;color:var(--muted)}.metrics strong{font-size:34px;display:block;margin-top:10px}.metrics small{font-size:16px;color:var(--muted);font-weight:500}.metrics p{font-size:11px;color:var(--muted)}.card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:22px;margin-bottom:18px}.subtle{background:transparent}.muted{color:var(--muted);font-size:12px}.week{display:flex;justify-content:space-between;gap:5px}.week div{display:flex;flex:1;align-items:center;flex-direction:column;border-radius:12px;padding:10px 2px;gap:12px;color:var(--muted);font-size:12px}.week b{font-size:17px;color:var(--text)}.week .today{background:var(--soft);box-shadow:inset 0 0 0 1px var(--green)}.week small{font-size:10px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.section-head>span{font-size:12px;color:var(--muted)}.section-head h2{margin:8px 0}.tag{font-size:11px;border-radius:6px;padding:5px 9px;background:var(--soft);display:inline-block;color:var(--green)}.move-list{margin:14px 0}.move-list button{display:flex;width:100%;background:transparent;border-bottom:1px solid var(--line);border-radius:0;justify-content:space-between;padding:15px 0;text-align:left;font-weight:500}.move-list small{color:var(--muted);font-size:12px;white-space:nowrap}.history{display:flex;justify-content:space-between;align-items:center;width:100%;margin-bottom:10px;text-align:left;background:var(--card);border:1px solid var(--line);padding:18px}.history small{display:block;font-size:12px;color:var(--muted);margin-top:8px}.history>span{font-size:12px}.bottom{position:fixed;bottom:0;left:0;right:0;max-width:880px;margin:auto;display:flex;justify-content:space-around;background:var(--card);border:1px solid var(--line);border-radius:20px 20px 0 0;padding:8px 10px calc(8px + env(safe-area-inset-bottom));z-index:10}.bottom button{display:flex;flex:1;flex-direction:column;align-items:center;gap:4px;background:transparent;font-size:11px;font-weight:500;color:var(--muted);padding:6px}.bottom button span{font-size:24px;line-height:26px}.bottom .selected{background:var(--soft);color:var(--green);font-weight:700}.overlay{position:fixed;inset:0;background:#07130c88;display:flex;justify-content:center;align-items:center;z-index:30;padding:20px}.modal{width:100%;max-width:520px;max-height:90dvh;overflow:auto;background:var(--card);border-radius:22px;padding:24px;color:var(--text)}.modal header{display:flex;align-items:center;justify-content:space-between;position:sticky;top:-24px;background:var(--card);z-index:1}.icon{font-size:26px;background:transparent}.modal .primary{margin-top:16px}label{display:block;font-size:13px;margin-top:16px;line-height:1.6}input,select{display:block;width:100%;padding:12px;min-height:48px;margin-top:6px;background:var(--input);color:var(--text);border:1px solid var(--line);border-radius:10px;font-size:16px;max-width:100%}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}fieldset{border:1px solid var(--line);border-radius:12px;margin:20px 0;padding:12px}legend{font-size:12px;color:var(--muted)}fieldset label:first-of-type{margin-top:0}dl{font-size:14px}dt{font-size:12px;color:var(--muted);margin-top:16px}dd{margin:5px 0;line-height:1.6}.back{background:transparent;padding-left:0;color:var(--muted);margin-bottom:10px}.coach{font-size:13px;line-height:1.6;background:var(--soft);border-radius:10px;padding:12px}.last{font-size:12px;color:var(--muted)}.set-label,.set-row{display:grid;grid-template-columns:26px 1fr 1fr 48px;gap:10px;align-items:center}.set-label{font-size:11px;color:var(--muted);text-align:center;margin-top:18px}.set-row{margin:8px 0}.set-row b{text-align:center;font-size:14px}.set-row input{margin:0;text-align:center;min-width:0;padding:12px 4px;font-size:19px;font-weight:600}.set-row button{font-size:23px;padding:8px;min-height:48px}.set-row.done button{background:var(--green);color:var(--bg)}.set-row.done input{border-color:var(--green)}.save-state{font-size:12px;color:var(--green)}.actions{display:flex;gap:10px;margin-top:12px}.actions button{flex:1}.alert,.notice{padding:14px;border-radius:12px;margin-bottom:18px;font-size:13px;line-height:1.6}.alert{background:#ffe6da;color:#8b3525}.notice{background:var(--soft)}.alert button,.notice button{background:transparent;font-size:12px;min-height:30px;padding:4px 10px}.empty{text-align:center;padding:48px 20px}.empty-symbol{font-size:50px;color:var(--green)}.timer{position:sticky;top:8px;z-index:5;background:var(--green);color:var(--bg);border-radius:12px;padding:8px 14px;margin-bottom:14px;display:flex;align-items:center;justify-content:space-between}.timer button{font-size:12px;background:var(--soft)}footer{font-size:11px;color:var(--muted);text-align:center;margin-top:30px}@media(max-width:600px){.shell{padding:0 18px}.top{padding:20px 0}.top a span{margin-left:8px}.local{font-size:10px}main{padding-top:24px}h1{font-size:27px}.hero{padding:24px}.hero h2{font-size:23px}.card{padding:18px}.metrics section{padding:16px}.metrics strong{font-size:30px}.overlay{align-items:flex-end;padding:0}.modal{max-height:92dvh;border-radius:22px 22px 0 0;padding:22px 20px calc(24px + env(safe-area-inset-bottom))}.set-row,.set-label{gap:8px;grid-template-columns:22px 1fr 1fr 48px}.exercise .section-head h2{font-size:18px}.exercise .secondary{padding:8px 10px;font-size:12px}.top a{font-size:18px}}html{scroll-padding-bottom:calc(var(--bottom-nav-height) + 24px)}main input,main button{scroll-margin-bottom:calc(var(--bottom-nav-height) + 24px)}.set-row input::placeholder{font-size:14px;font-weight:400;color:var(--muted);opacity:1}.nutrition-fields{border:0;padding:0;margin:0;min-width:0}.nutrition-inputs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.nutrition-inputs label{min-width:0}.nutrition-values{display:grid;grid-template-columns:1fr auto;gap:8px;margin:16px 0}.nutrition-values dd{margin:0;font-weight:700;text-align:right}.nutrition-check{display:flex;align-items:flex-start;gap:10px;padding:12px 0}.nutrition-check input{width:22px;min-width:22px;height:22px;margin:0;accent-color:var(--accent)}.nutrition-preview{border-top:1px solid var(--line);padding-top:16px;margin-top:16px}.nutrition-preview a,details a{color:var(--green);overflow-wrap:anywhere}details{margin:12px 0}summary{cursor:pointer;padding:10px 0;min-height:44px}.meal-macros,.meal-comparison{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0}.meal-macros span,.meal-comparison>div{padding:10px;background:var(--soft);border-radius:10px;font-size:11px;min-width:0}.meal-macros b,.meal-comparison b{display:block;font-size:15px;line-height:1.7;overflow-wrap:anywhere}.meal-comparison small{display:block;color:var(--muted);font-size:11px}.meal-ingredient{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 0;border-bottom:1px solid var(--line)}.meal-ingredient>div{min-width:0}.meal-ingredient b{font-size:13px}.meal-ingredient small{display:block;color:var(--muted);font-size:11px;margin-top:6px}.meal-ingredient button{flex-shrink:0}.meal-planner ol{padding-left:20px;font-size:13px;line-height:1.8}.meal-planner details a{color:var(--green);overflow-wrap:anywhere}.meal-planner .full+.full{margin-top:12px}.meal-home-row{display:grid;grid-template-columns:40px 1fr;gap:8px;padding:12px 0;border-top:1px solid var(--line);font-size:12px;line-height:1.6}.meal-home-row span{min-width:0}.meal-home-row small{grid-column:2;color:var(--muted)}.journal-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0}.journal-item{border-top:1px solid var(--line);padding:14px 0;overflow-wrap:anywhere}.journal-item .form-pair{align-items:end}.diet-journal .full+.full{margin-top:12px}.journal-editor .form-pair button{padding:10px;font-size:12px}.journal-editor fieldset{min-width:0}.shopping-item{padding:14px 0;border-top:1px solid var(--line);overflow-wrap:anywhere}.shopping-item fieldset{min-width:0}.shopping-panel>summary{font-weight:700;font-size:18px}.shopping-item h3{margin-top:8px}.shell{padding-top:env(safe-area-inset-top);padding-left:max(18px,env(safe-area-inset-left));padding-right:max(18px,env(safe-area-inset-right))}html[data-keyboard=open] .bottom{display:none}html[data-keyboard=open] main{padding-bottom:32px}html[data-keyboard=open] .modal{max-height:65dvh}input{scroll-margin-top:100px}@media(max-width:600px){.actions{flex-wrap:wrap}.actions button{min-width:100px}input,select,textarea{font-size:16px}.journal-editor button{min-height:44px}.modal{overscroll-behavior:contain}.notice{overflow-wrap:anywhere}}
