:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink:#090d0c;--surface:#101614;--raised:#161e1b;--soft:#1c2622;--line:#29332f;--line-strong:#3a4641;--text:#f3f5ee;--muted:#98a49e;--dim:#69736e;--green:#a8e85a;--green-dark:#15250d;--amber:#f2b35f;--red:#ef6b64;--blue:#7eb8e8;--r:14px;--r-lg:20px;--rail:226px;font-synthesis:none;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#f2f2ec;--surface:#fff;--raised:#e8ece5;--soft:#dfe6dc;--line:#cbd3c8;--line-strong:#aeb9ac;--text:#121713;--muted:#566159;--dim:#6b756e;--green-dark:#dceecd}*{box-sizing:border-box}html{background:var(--ink)}body{background:var(--ink);color:var(--text);margin:0;font-size:15px;line-height:1.5}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}a{color:inherit;text-decoration:none}svg{stroke-width:1.8px;width:19px;height:19px}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-.05em;margin-bottom:10px;font-size:clamp(2rem,5vw,3.2rem);line-height:1.03}h2{letter-spacing:-.025em;margin-bottom:8px;font-size:1.3rem}h3{margin-bottom:5px;font-size:1rem}p{color:var(--muted)}strong,.tabular,input{font-variant-numeric:tabular-nums}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.eyebrow{text-transform:uppercase;letter-spacing:.12em;color:var(--green);margin-bottom:8px;font-size:.7rem;font-weight:750}.muted{color:var(--muted)}.app-frame{min-height:100vh}.rail{width:var(--rail);border-right:1px solid var(--line);z-index:30;background:#0b100e;flex-direction:column;padding:24px 16px;display:flex;position:fixed;inset:0 auto 0 0}.brand,.mobile-brand{align-items:center;gap:12px;display:flex}.brand{padding:4px 8px 30px}.brand>span{align-items:baseline;gap:5px;font-size:1.05rem;display:flex}.brand small{color:var(--green);font-weight:800}.mark{background:#0d160a;border:1px solid #52752f;border-radius:10px;justify-content:center;align-items:center;gap:2px;width:37px;height:37px;display:flex}.mark span{background:var(--green);border-radius:2px;width:3px;height:13px}.mark span:nth-child(2),.mark span:nth-child(4){height:21px}.mark span:nth-child(3){height:29px}.mark.large{border-radius:15px;width:56px;height:56px}.mark.large span{width:4px}.rail nav{gap:5px;display:grid}.rail nav a,.rail-bottom a{min-height:46px;color:var(--muted);border-radius:11px;align-items:center;gap:12px;padding:0 12px;font-weight:620;display:flex}.rail nav a:hover,.rail-bottom a:hover{background:var(--surface);color:var(--text)}.rail nav a.active{color:var(--green);background:#18220f}.rail nav a.active svg{stroke-width:2.4px}.rail-bottom{gap:5px;margin-top:auto;display:grid}.sync{border-top:1px solid var(--line);color:var(--dim);text-align:left;cursor:pointer;background:0 0;border-bottom:0;border-left:0;border-right:0;align-items:center;gap:9px;width:100%;margin-top:12px;padding:16px 10px 0;font-size:.72rem;display:flex}.sync-conflict{color:var(--amber);gap:5px;padding:8px 10px;font-size:.72rem;display:grid}.sync-conflict button{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:7px;padding:5px}.sync svg{width:14px}.status-dot{background:var(--green);border-radius:50%;width:7px;height:7px}.app-column{margin-left:var(--rail);min-height:100vh}.topbar{border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--ink) 94%, transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);z-index:20;justify-content:flex-end;align-items:center;height:72px;padding:0 32px;display:flex;position:sticky;top:0}.mobile-brand{display:none}.top-actions{align-items:center;gap:10px;display:flex}.icon-button{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:12px;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex}.icon-button:hover{border-color:var(--line-strong);background:var(--raised)}.avatar{background:var(--green);color:#0b1008;border-radius:50%;place-items:center;width:39px;height:39px;font-size:.78rem;font-weight:850;display:grid}.page{max-width:1320px;margin:0 auto;padding:38px 42px 80px}.bottom-nav{display:none}.page-header{justify-content:space-between;align-items:flex-start;gap:28px;margin-bottom:30px;display:flex}.page-header p:last-child{margin-bottom:0}.page-header.compact h1{font-size:2.5rem}.page-header.compact{align-items:center}.section-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.section-heading h2{margin:0}.section-heading a{color:var(--green);align-items:center;font-size:.8rem;display:flex}.section-heading a svg{width:16px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:22px}.button{border:1px solid var(--line);cursor:pointer;background:var(--surface);border-radius:12px;justify-content:center;align-items:center;gap:9px;min-height:44px;padding:0 17px;font-size:.86rem;font-weight:760;display:inline-flex}.button.primary{background:var(--green);border-color:var(--green);color:#0b1108}.button.secondary{background:var(--raised)}.button.ghost{background:0 0}.button.destructive{color:var(--red);background:#1b1110;border-color:#713f3b}.button.wide{width:100%}.button:disabled{opacity:.45;cursor:not-allowed}.dashboard-grid{grid-template-columns:minmax(0,1fr) 330px;gap:24px;display:grid}.primary-column{gap:28px;display:grid}.context-column{align-content:start;gap:18px;display:grid}.hero-card{background:linear-gradient(145deg,#141d18,#101512);border:1px solid #344132;border-radius:24px;overflow:hidden}.hero-top{color:var(--muted);justify-content:space-between;padding:18px 22px 0;font-size:.78rem;display:flex}.phase-chip,.status-pill{text-transform:uppercase;letter-spacing:.08em;border-radius:999px;align-items:center;width:max-content;padding:5px 9px;font-size:.68rem;font-weight:800;display:inline-flex}.phase-chip.green,.status-pill{color:var(--green);background:#1b2b12}.phase-chip.blue{color:var(--blue);background:#10202d}.phase-chip.amber{color:var(--amber);background:#2b2112}.hero-body{justify-content:space-between;align-items:end;gap:20px;padding:34px 22px 28px;display:flex}.hero-body h2{max-width:590px;font-size:2rem;line-height:1.08}.hero-body p:last-child{max-width:600px;margin:0}.hero-meta{border-top:1px solid var(--line);color:var(--muted);gap:26px;padding:15px 22px;font-size:.75rem;display:flex}.hero-meta span{align-items:center;gap:7px;display:flex}.hero-meta svg{width:16px;color:var(--green)}.targets{gap:18px;display:grid}.metric-bar>div:first-child{justify-content:space-between;margin-bottom:8px;font-size:.82rem;display:flex}.metric-bar span{color:var(--muted)}.metric-bar strong{font-size:.78rem}.track{background:var(--soft);border-radius:10px;height:6px;overflow:hidden}.track span{background:var(--green);border-radius:10px;height:100%;display:block}.stat-grid{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.stat-card{border:1px solid var(--line);background:var(--surface);border-radius:var(--r);gap:6px;min-height:148px;padding:17px;display:grid}.stat-card svg{color:var(--green);margin-bottom:10px}.stat-card>span{color:var(--muted);font-size:.75rem}.stat-card strong{font-size:1.2rem}.stat-card small{color:var(--dim);line-height:1.35}.roadmap-head{align-items:center;gap:12px;display:flex}.roadmap-head>span{color:var(--green);font-size:2rem;font-weight:250}.roadmap-head h3{font-size:1.25rem}.roadmap-card>p{font-size:.84rem}.phase-track{background:var(--soft);border-radius:10px;height:5px;margin:20px 0 10px}.phase-track span{background:var(--green);height:100%;display:block}.split{color:var(--dim);justify-content:space-between;display:flex}.quick-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.quick-grid a{background:var(--raised);min-height:76px;color:var(--muted);border-radius:12px;align-content:center;place-items:center;gap:6px;font-size:.72rem;display:grid}.quick-grid a:hover{color:var(--green)}.note-card{border-radius:var(--r);background:#191a10;border:1px solid #4a4b2f;gap:12px;padding:16px;display:flex}.note-card>svg{color:var(--amber);flex:none}.note-card p{margin:2px 0 0;font-size:.78rem}.plan-layout{grid-template-columns:280px minmax(0,1fr);gap:24px;display:grid}.week-panel{height:max-content;position:sticky;top:102px}.select-label{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:.72rem}select,input,textarea{color:var(--text);background:var(--raised);border:1px solid var(--line);border-radius:10px;outline:none;min-height:44px;padding:0 12px}select:focus,input:focus,textarea:focus,button:focus-visible,a:focus-visible{border-color:var(--green);outline:none;box-shadow:0 0 0 3px #a8e85a29}.select-label select{width:100%;margin-top:7px;display:block}.phase-summary{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);margin-top:14px;padding:22px}.phase-summary h2{margin-top:18px;font-size:1.6rem}.phase-summary>p{font-size:.83rem}.phase-summary dl{margin:18px 0 0}.phase-summary dl div{border-top:1px solid var(--line);padding:11px 0}dt{color:var(--dim);text-transform:uppercase;letter-spacing:.06em;font-size:.69rem}dd{margin:4px 0 0;font-weight:670}.day-detail{min-width:0}.day-strip{grid-template-columns:repeat(7,1fr);gap:7px;margin-bottom:25px;display:grid}.day-strip>*{border:1px solid var(--line);background:var(--surface);cursor:pointer;height:64px;color:inherit;border-radius:12px;align-content:center;place-items:center;gap:3px;text-decoration:none;display:grid}.day-strip span{color:var(--muted);font-size:.68rem}.day-strip .active{border-color:var(--green);background:#18220f}.day-strip .active span,.day-strip .active strong{color:var(--green)}.day-strip .today:not(.active){box-shadow:inset 0 0 0 1px var(--line-strong)}.day-strip .completed{border-color:var(--green);background:var(--green-dark)}.day-strip .completed strong{color:var(--green)}.day-strip .partial{border-color:#6d7c64}.day-strip .skipped{opacity:.55}.day-strip .rest{opacity:.78}.day-strip .travel{border-style:dashed}.week-log{margin:0 0 16px}.day-title{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.day-title h2{font-size:1.7rem}.daily-prescription{flex-wrap:wrap;gap:9px;margin-bottom:20px;display:flex}.daily-prescription>span{border:1px solid var(--line);color:var(--muted);border-radius:9px;align-items:center;gap:6px;padding:8px 10px;font-size:.73rem;display:flex}.daily-prescription svg{width:15px;color:var(--green)}.daily-prescription strong{color:var(--text)}.exercise-list{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);overflow:hidden}.list-header{border-bottom:1px solid var(--line);color:var(--dim);justify-content:space-between;padding:17px 18px;font-size:.74rem;display:flex}.list-header h3{margin:0}.list-header h3 span{color:var(--muted);font-weight:400}.exercise-list article{border-bottom:1px solid var(--line);grid-template-columns:56px minmax(0,1fr) auto 44px;align-items:start;gap:10px;padding:13px 15px;display:grid}.order{color:var(--dim);font-variant-numeric:tabular-nums;font-size:.73rem}.exercise-thumb{border:1px solid var(--line);background:var(--raised);cursor:pointer;border-radius:10px;flex-shrink:0;width:56px;height:56px;padding:0;overflow:hidden}.exercise-thumb:disabled{cursor:default}.exercise-thumb img{object-fit:cover;width:100%;height:100%;display:block}.exercise-main{text-align:left;cursor:pointer;background:0 0;border:0;min-width:0}.exercise-main strong{display:block}.exercise-main small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;max-width:460px;display:block;overflow:hidden}.prescription{text-align:right}.prescription strong,.prescription small{display:block}.prescription small{color:var(--dim);font-size:.68rem}.exercise-list article>.icon-button{align-self:center}.exercise-list>.button{width:calc(100% - 30px);margin:15px}.recovery-card{border:1px solid var(--line);background:var(--surface);border-radius:var(--r-lg);gap:18px;padding:35px;display:flex}.recovery-card>svg{color:var(--green);width:28px;height:28px}.dialog-backdrop{z-index:100;background:#000000b8;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.exercise-dialog{border:1px solid var(--line-strong);background:var(--surface);border-radius:22px;grid-template-columns:1fr 1.15fr;width:min(760px,100%);max-height:90vh;display:grid;position:relative;overflow:auto}.exercise-dialog .close{border:1px solid var(--line);z-index:2;background:#0b100ecc;border-radius:50%;place-items:center;width:42px;height:42px;display:grid;position:absolute;top:12px;right:12px}.media-frame{background:#070a09;place-items:center;min-height:380px;display:grid;position:relative}.media-frame img{object-fit:contain;width:100%;height:100%}.media-frame span{color:var(--muted);background:#070a09cc;border-radius:5px;padding:4px 7px;font-size:.62rem;position:absolute;bottom:9px;left:10px}.dialog-content{padding:42px 28px 28px}.dialog-content h2{font-size:1.8rem}.dialog-content>p:not(.eyebrow){font-size:.86rem}.dialog-content dl{grid-template-columns:1fr 1fr;gap:10px;margin-top:25px;display:grid}.dialog-content dl div{background:var(--raised);border-radius:10px;padding:12px}.workout-head{align-items:center;gap:15px;margin-bottom:22px;display:flex}.workout-head h1{margin:0;font-size:1.8rem}.workout-head p{margin:0}.workout-timing{border:1px solid var(--line);background:var(--surface);border-radius:12px;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;padding:12px 14px;display:flex}.session-clock{grid-template-columns:20px auto;align-items:center;column-gap:9px;min-width:150px;display:grid}.session-clock>svg{color:var(--green);grid-row:1/3}.session-clock>span,.session-clock>small{color:var(--dim);font-size:.66rem}.session-clock>strong{letter-spacing:.04em;font-size:1.05rem;line-height:1.2}.session-clock>small{grid-column:2}.workout-timer-actions{align-items:center;gap:8px;display:flex}.workout-timer-actions .button{min-height:42px}.rest-timer.active{border-color:var(--green);color:var(--green)}.workout-progress{background:var(--soft);height:3px;margin:0 -42px 28px;position:relative}.workout-progress>span{background:var(--green);height:100%;display:block}.workout-progress small{color:var(--dim);position:absolute;top:9px;right:42px}.workout-layout{grid-template-columns:minmax(0,1fr) 290px;gap:22px;display:grid}.workout-list{gap:14px;display:grid}.workout-exercise{border:1px solid var(--line);background:var(--surface);border-radius:var(--r-lg);overflow:hidden}.workout-exercise header{grid-template-columns:35px 1fr 44px;align-items:center;padding:18px;display:grid}.workout-exercise header h2{margin:0}.workout-exercise header p{margin:2px 0 0;font-size:.75rem}.cue{background:#151c19;border-radius:9px;gap:8px;margin:0 18px 16px;padding:10px 12px;font-size:.75rem;display:flex}.cue svg{width:15px;color:var(--green);flex:none}.set-grid{border-top:1px solid var(--line);grid-template-columns:38px repeat(3,minmax(64px,1fr)) 50px;align-items:center;gap:8px;padding:8px 18px;display:grid}.set-grid.labels{text-transform:uppercase;letter-spacing:.08em;color:var(--dim);padding-top:11px;padding-bottom:4px;font-size:.63rem}.set-grid input{text-align:center;width:100%}.set-grid>button{border:1px solid var(--line);background:var(--raised);border-radius:10px;place-items:center;width:42px;height:42px;display:grid}.set-grid>button span{border:1px solid var(--line-strong);border-radius:4px;width:15px;height:15px}.set-grid.complete{background:#111a0e}.set-grid.complete>button{background:var(--green);color:var(--ink)}.workout-side{align-content:start;gap:12px;height:max-content;display:grid;position:sticky;top:92px}.summary-list div,.macro-list div,.provenance dl div{border-top:1px solid var(--line);justify-content:space-between;padding:10px 0;display:flex}.pain-card{border:1px solid var(--line);background:var(--surface);border-radius:var(--r);padding:16px}.pain-card>span{float:right;color:var(--muted)}.pain-card input{width:100%;min-height:20px;margin-top:10px;padding:0}.nutrition-grid{grid-template-columns:minmax(0,1fr) minmax(0,300px);gap:22px;min-width:0;display:grid}.day-tabs{grid-template-columns:repeat(7,1fr);gap:5px;margin-bottom:14px;display:grid}.day-tabs button{border:1px solid var(--line);background:var(--surface);border-radius:10px;min-height:44px;font-size:.72rem}.day-tabs button.active{background:var(--green);color:var(--ink);border-color:var(--green);font-weight:800}.nutrition-summary{background:var(--surface);border-radius:var(--r-lg);border:1px solid #354332;grid-template-columns:160px 1fr;align-items:center;gap:20px;margin-bottom:26px;padding:20px;display:grid}.nutrition-summary>div:first-child span{font-size:2.2rem;font-weight:800;display:block}.nutrition-summary small{color:var(--muted)}.meal-list{gap:12px;min-width:0;display:grid}.meal-slot{border:1px solid var(--line);background:var(--surface);border-radius:var(--r);gap:8px;min-width:0;padding:12px;display:grid}.meal-slot-header{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:10px;display:grid}.meal-time{color:var(--green);align-content:center;place-items:center;gap:8px;font-size:.72rem;display:grid}.meal-time svg{width:17px}.meal-card-photo,.meal-item-photo,.meal-food-photo{background:var(--raised);border-radius:10px;display:block;overflow:hidden}.meal-card-photo{width:48px;height:48px}.meal-card-photo img,.meal-item-photo img,.meal-food-photo img{object-fit:cover;width:100%;height:100%}.food-photo-link{border:1px solid var(--line)}.meal-body{min-width:0}.meal-body h3{overflow-wrap:anywhere;margin:0}.meal-body p{color:var(--muted);margin:3px 0 0;font-size:.75rem}.meal-slot-remaining,.meal-slot-complete,.meal-slot-actions>button{white-space:nowrap;border-radius:10px;justify-content:center;align-items:center;gap:6px;min-height:44px;padding:0 12px;font-size:.7rem;font-weight:750;display:inline-flex}.meal-slot-remaining,.meal-slot-actions>button{border:1px solid var(--line-strong);color:var(--text);cursor:pointer;font:inherit;background:0 0;font-size:.7rem;font-weight:750}.meal-slot-complete{color:var(--green);background:#1b2b12}.meal-slot-actions{flex-wrap:wrap;gap:6px;display:flex}.meal-slot-actions>button,.meal-slot-remaining,.meal-slot-complete{flex:8.5rem}.meal-slot-actions svg{width:15px;height:15px}.meal-swap-panel{gap:6px;min-width:0;max-height:min(52vh,420px);padding:4px 0 2px;display:grid;overflow:auto}.meal-swap-heading{color:var(--muted);margin:8px 0 0;font-size:.68rem;font-weight:700}.meal-swap-heading:first-child{margin-top:2px}.meal-swap-panel>button{border:1px solid var(--line);background:var(--raised);width:100%;min-width:0;min-height:44px;color:inherit;text-align:left;cursor:pointer;font:inherit;border-radius:10px;gap:3px;padding:8px 10px;display:grid}.meal-swap-panel>button.active{background:#1b2b12;border-color:#354332}.meal-swap-panel>button strong,.meal-swap-panel>button small{overflow-wrap:anywhere}.meal-swap-panel>button small{color:var(--muted);font-size:.68rem}.meal-foods{gap:6px;display:grid}.meal-food{border:1px solid var(--line);background:var(--raised);width:100%;min-width:0;min-height:44px;color:inherit;text-align:left;cursor:pointer;font:inherit;border-radius:10px;grid-template-columns:40px minmax(0,1fr) auto 22px;grid-template-areas:"photo copy macros check";align-items:center;column-gap:10px;padding:6px 8px;display:grid}.meal-food.logged{background:#1b2b12;border-color:#354332}.meal-food-photo{flex-shrink:0;grid-area:photo;width:40px;height:40px}.meal-food-copy{grid-area:copy;gap:2px;min-width:0;display:grid}.meal-food-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:.86rem;overflow:hidden}.meal-food-copy small,.meal-food-macros{color:var(--muted);font-size:.68rem}.meal-food-macros{white-space:nowrap;grid-area:macros}.meal-food.logged .meal-food-copy strong,.meal-food.logged .meal-food-check{color:var(--green)}.meal-food-check{width:22px;height:22px;color:var(--dim);grid-area:check;place-self:center;place-items:center;display:grid}.meal-food-check svg{width:16px;height:16px}.meal-body>div{flex-wrap:wrap;gap:8px;display:flex}.meal-body>div span{color:var(--muted);background:var(--raised);border-radius:5px;padding:3px 6px;font-size:.66rem}.meal-done{color:var(--green);background:#1b2b12;border:0;border-radius:12px}.meal-log-button{border:1px solid var(--line-strong);background:var(--raised);min-height:44px;color:var(--text);font:inherit;cursor:pointer;white-space:nowrap;border-radius:12px;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-size:.72rem;font-weight:750;display:inline-flex}.meal-log-button svg{width:17px;height:17px}.meal-log-button:disabled{cursor:default}.macro-list dd span{color:var(--dim);font-weight:400}.macro-list{margin-bottom:0}.checkin-form{gap:16px;max-width:780px;display:grid}.completion-card{gap:18px;display:grid}.completion-card .section-heading{margin-bottom:0}.completion-summary{border:1px solid var(--line);background:var(--line);border-radius:12px;grid-template-columns:1.5fr 1fr 1fr;gap:1px;display:grid;overflow:hidden}.completion-summary>div{background:var(--raised);min-width:0;padding:13px 14px}.completion-summary span,.completion-copy small{color:var(--dim);font-size:.68rem;display:block}.completion-summary strong{overflow-wrap:anywhere;margin-top:3px;font-size:.82rem;display:block}.completion-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.completion-toggle{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:12px;grid-template-columns:minmax(0,1fr) 26px;align-items:center;gap:12px;min-height:72px;padding:13px 14px;display:grid;position:relative}.completion-toggle:hover{border-color:var(--line-strong)}.completion-copy{min-width:0}.completion-copy strong{color:var(--text);margin-bottom:2px;font-size:.82rem;display:block}.completion-toggle>input{opacity:0;height:1px;min-height:1px;margin:0;padding:0;position:absolute;right:18px;width:1px!important}.completion-toggle>input:focus,.completion-toggle>input:focus-visible{box-shadow:none;border:0}.completion-control{border:1px solid var(--line-strong);background:var(--raised);color:#0000;border-radius:7px;place-items:center;width:24px;height:24px;display:grid}.completion-control svg{stroke-width:3px;width:14px;height:14px}.completion-toggle>input:checked+.completion-control{border-color:var(--green);background:var(--green);color:var(--ink)}.completion-toggle>input:focus-visible+.completion-control{box-shadow:0 0 0 3px #a8e85a29}.completion-override-toggle{background:var(--raised);grid-template-columns:minmax(0,1fr) 26px;min-height:64px}.completion-overrides{border:1px solid var(--line);background:var(--surface);border-radius:12px;padding:16px}.field-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.field-grid label,.checkin-form label,.travel-form>label,.settings-grid .card>label{color:var(--muted);font-size:.76rem}.field-grid label>span{float:right;color:var(--dim)}.field-grid input,.field-grid select,.settings-grid .card>label input{width:100%;margin-top:7px}.rating-row{grid-template-columns:1fr 1fr;gap:15px;display:grid}.rating-row fieldset{border:0;margin:0;padding:0}.rating-row legend{color:var(--muted);margin-bottom:7px;font-size:.75rem}.rating-row fieldset>div{grid-template-columns:repeat(5,1fr);gap:5px;display:grid}.rating-row label input{opacity:0;position:absolute}.rating-row label span{border:1px solid var(--line);background:var(--raised);border-radius:9px;place-items:center;height:42px;display:grid}.rating-row label input:checked+span{background:var(--green);border-color:var(--green);color:var(--ink);font-weight:800}.note-input{margin-top:20px;display:block}.note-input textarea{resize:vertical;width:100%;min-height:90px;margin-top:7px;padding:12px;display:block}.date-badge,.compact-select{border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:10px;padding:8px 12px}.progress-grid{grid-template-columns:1.5fr 1fr;gap:18px;display:grid}.chart-card{min-height:360px}.empty-chart svg{width:100%;height:190px;overflow:visible}.empty-chart path{fill:none;stroke:var(--line);stroke-width:1px}.empty-chart path.trend{stroke:var(--green);stroke-width:3px;stroke-dasharray:7 7;opacity:.5}.empty-chart>div{text-align:center;max-width:400px;margin:auto}.empty-chart p{font-size:.8rem}.roadmap-steps{gap:2px;display:grid}.roadmap-steps>div{border-left:1px solid var(--line);grid-template-columns:30px 1fr auto;align-items:center;gap:9px;padding:11px;display:grid}.roadmap-steps>div>span{border:1px solid var(--line);border-radius:50%;place-items:center;width:26px;height:26px;font-size:.68rem;display:grid}.roadmap-steps small{color:var(--dim)}.roadmap-steps .active{border-color:var(--green);background:#151d11}.roadmap-steps .active>span{background:var(--green);color:var(--ink)}.roadmap-steps .complete>span{background:var(--green-dark);border-color:var(--green);color:var(--green)}.span-two{grid-column:1/-1}.photo-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:15px;display:grid}.photo-grid figure{border:1px solid var(--line);background:var(--surface);border-radius:var(--r);margin:0;overflow:hidden}.photo-grid img{aspect-ratio:3/4;object-fit:cover;width:100%;display:block}.photo-grid figcaption{color:var(--muted);padding:10px;font-size:.75rem}.file-button{position:relative;overflow:hidden}.file-button input{opacity:0;cursor:pointer;position:absolute;inset:0}.empty{text-align:center;border:1px dashed var(--line-strong);border-radius:var(--r-lg);max-width:760px;margin:40px auto;padding:70px 20px}.empty>svg{width:35px;height:35px;color:var(--green);margin-bottom:15px}.empty p{max-width:470px;margin:0 auto 20px}.travel-grid{grid-template-columns:minmax(0,1fr) minmax(0,340px);gap:20px;min-width:0;display:grid}.travel-form{gap:18px;display:grid}.inline-fields{grid-template-columns:1fr 1fr;gap:7px;display:grid}.choice-cards{border:0;gap:8px;margin:0;padding:0;display:grid}.choice-cards legend{color:var(--muted);margin-bottom:8px;font-size:.75rem}.choice-cards label{position:relative}.choice-cards label input{opacity:0;position:absolute}.choice-cards label>span{border:1px solid var(--line);background:var(--raised);border-radius:12px;padding:13px 13px 13px 40px;display:block}.choice-cards label>span:before{content:"";border:1px solid var(--line-strong);border-radius:50%;width:15px;height:15px;position:absolute;top:17px;left:14px}.choice-cards label input:checked+span{background:#18210f;border-color:#6b913f}.choice-cards label input:checked+span:before{border:5px solid var(--green)}.choice-cards small{color:var(--muted);margin-top:2px;font-size:.71rem;display:block}.protocol ul{margin:0;padding:0;list-style:none}.protocol li{border-top:1px solid var(--line);padding:13px 0;display:grid}.protocol li span{color:var(--muted);font-size:.75rem}.travel-grid aside{align-content:start;gap:14px;display:grid}.settings-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.settings-grid>.card:first-child{grid-row:span 2;align-content:start;gap:18px;display:grid}.settings-grid .choice-cards{margin-top:4px}.impact-preview{background:#151c11;border:1px solid #3e4e34;border-radius:12px;gap:12px;padding:14px;display:flex}.impact-preview svg{color:var(--green);flex:none}.impact-preview p{margin:2px 0 0;font-size:.74rem}.provenance{grid-column:1}.provenance dd{text-align:right}.provenance code{color:var(--green);font-size:.72rem}.danger{grid-column:2}.danger>div:last-child{gap:8px;display:flex}.danger p{font-size:.8rem}.login-page{grid-template-columns:minmax(360px,540px) 1fr;min-height:100vh;display:grid}.login-panel{flex-direction:column;justify-content:center;padding:clamp(35px,8vw,100px);display:flex}.login-panel .mark{margin-bottom:30px}.login-panel h1{font-size:3.2rem}.lede{font-size:1.05rem}.login-form{gap:16px;margin-top:25px;display:grid}.login-form label{color:var(--muted);font-size:.76rem}.login-form input{width:100%;margin-top:7px;display:block}.password-field{position:relative}.password-field button{background:0 0;border:0;width:44px;height:44px;position:absolute;top:7px;right:0}.form-error{color:var(--red);margin:0;font-size:.78rem}.login-note{text-align:center;margin:8px 0 0;font-size:.68rem}.login-aside{border:1px solid var(--line);background:radial-gradient(circle at 70% 30%,#1d2c18 0,#0000 35%),linear-gradient(145deg,#121a16,#0b100e);border-radius:26px;flex-direction:column;justify-content:flex-end;margin:18px;padding:70px;display:flex}.login-aside blockquote{letter-spacing:-.05em;max-width:900px;margin:0 0 45px;font-size:clamp(2rem,4vw,4.5rem);line-height:1.02}.login-stats{gap:12px;display:flex}.login-stats span{border-top:1px solid var(--line-strong);color:var(--muted);padding:15px 25px 0 0}.login-stats strong{color:var(--green);font-size:1.5rem;display:block}.center-state{text-align:center;align-content:center;place-items:center;min-height:100vh;padding:20px;display:grid}@media (width<=1100px){.dashboard-grid{grid-template-columns:1fr}.context-column{grid-template-columns:repeat(3,1fr)}.workout-layout,.nutrition-grid,.travel-grid{grid-template-columns:1fr}.workout-side{grid-template-columns:1fr 1fr;position:static}.progress-grid{grid-template-columns:1fr}.login-aside{padding:40px}.stat-grid{grid-template-columns:1fr 1fr}}@media (width<=767px){:root{--rail:0px}.rail{display:none}.app-column{margin:0}.topbar{justify-content:space-between;height:61px;padding:0 16px}.mobile-brand{display:flex}.mobile-brand .mark{border-radius:8px;width:31px;height:31px}.mobile-brand .mark span{width:2px;height:10px}.mobile-brand .mark span:nth-child(2),.mobile-brand .mark span:nth-child(4){height:16px}.mobile-brand .mark span:nth-child(3){height:22px}.top-actions .icon-button{display:none}.page{padding:26px 16px calc(96px + env(safe-area-inset-bottom))}.bottom-nav{z-index:50;height:calc(67px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);border-top:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#0c110fee;grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.bottom-nav a{color:var(--dim);align-content:center;place-items:center;gap:3px;font-size:.62rem;display:grid}.bottom-nav a.active{color:var(--green)}.bottom-nav svg{width:20px}.page-header{margin-bottom:22px}.page-header.compact{align-items:flex-start}.page-header.compact h1{font-size:2.1rem}.page-header .button{padding:0 12px}.nutrition-add-button{white-space:nowrap;flex:none}.dashboard-grid{display:block}.primary-column{gap:20px}.context-column{grid-template-columns:1fr;margin-top:20px;display:grid}.hero-body{padding:26px 17px 19px;display:grid}.hero-body h2{font-size:1.65rem}.hero-body .button{width:100%}.hero-meta{justify-content:space-between;gap:10px;padding:13px 17px}.hero-meta span{font-size:.65rem}.targets{padding:18px}.stat-grid{grid-template-columns:1fr 1fr}.stat-card{min-height:135px;padding:14px}.plan-layout{display:block}.week-panel{position:static}.phase-summary{display:none}.day-strip{gap:4px;margin-top:16px}.day-strip>*{height:58px}.day-title h2{font-size:1.35rem}.daily-prescription{grid-template-columns:1fr 1fr;display:grid}.daily-prescription>span:last-child{grid-column:1/-1}.exercise-list article{grid-template-columns:52px minmax(0,1fr) 44px}.exercise-list .prescription{text-align:left;grid-column:2}.exercise-list article>.icon-button{grid-area:1/3/3}.exercise-main small{max-width:245px}.exercise-dialog{border-radius:22px 22px 0 0;grid-template-columns:1fr;align-self:end;max-height:91vh}.dialog-backdrop{padding:0}.media-frame{min-height:250px;max-height:38vh}.dialog-content{padding:24px 20px 30px}.workout-head h1{font-size:1.25rem}.workout-head .timer{justify-content:center;width:44px;padding:0;font-size:0}.workout-progress{margin-left:-16px;margin-right:-16px}.workout-progress small{right:16px}.workout-side{grid-template-columns:1fr}.workout-side .card{display:none}.workout-exercise header{grid-template-columns:27px 1fr 44px;padding:15px}.set-grid{grid-template-columns:30px repeat(3,minmax(54px,1fr)) 44px;gap:5px;padding:7px 10px}.set-grid input{padding:0 5px}.cue{margin:0 12px 12px}.nutrition-grid{display:block}.nutrition-grid .context-column{grid-template-columns:1fr;margin-top:20px;display:grid}.nutrition-summary{grid-template-columns:1fr;padding:17px}.meal-slot-header{grid-template-columns:auto minmax(0,1fr);gap:8px}.meal-food{grid-template-columns:36px minmax(0,1fr) 22px;grid-template-areas:"photo copy check";column-gap:10px}.meal-food-macros{display:none}.meal-food-photo{width:36px;height:36px}.meal-slot-actions>button,.meal-slot-remaining,.meal-slot-complete{white-space:normal;flex:calc(50% - 6px);min-width:0;padding:0 8px;font-size:.64rem}.day-tabs button{min-height:40px;padding:0 2px;font-size:.65rem}.field-grid,.rating-row,.settings-grid{grid-template-columns:1fr}.completion-summary{grid-template-columns:1fr 1fr}.completion-summary>div:first-child{grid-column:1/-1}.completion-options{grid-template-columns:1fr}.progress-grid{display:block}.progress-grid>*{margin-bottom:14px}.photo-grid{grid-template-columns:1fr 1fr}.travel-grid{display:block}.travel-grid aside{margin-top:14px}.settings-grid>.card:first-child{grid-row:auto}.provenance,.danger{grid-column:auto}.login-page{display:block}.login-panel{min-height:100vh;padding:32px 24px}.login-aside{display:none}}@media (width<=380px){.photos-page-header .button{width:100%;padding:0 12px;font-size:.78rem}.photos-page-header .button svg{margin-right:6px}.hero-meta span:nth-child(3){display:none}.stat-grid{grid-template-columns:1fr}.day-strip strong{font-size:.75rem}.meal-body p{max-width:170px}.photo-grid{grid-template-columns:1fr}.page-header .button svg{margin:0}.page-header .button{width:44px;padding:0;font-size:0}.nutrition-page-header .button{width:100%;padding:0 12px;font-size:.78rem}}@media (prefers-reduced-motion:no-preference){.button,.icon-button,.day-strip>*,.bottom-nav a{transition:background-color .15s,color .15s,border-color .15s,transform .15s}.button:active,.icon-button:active{transform:scale(.98)}}@media (prefers-color-scheme:light){:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#f4f3ec;--surface:#fffef8;--raised:#eeeee6;--soft:#e5e6dd;--line:#d2d5ca;--line-strong:#aeb5a8;--text:#15201b;--muted:#5f6c65;--dim:#7a857f;--green:#4d8619;--green-dark:#e2f0d4}.rail{background:#eeeee8}.bottom-nav,.topbar{background:#f4f3ecee}.hero-card{background:linear-gradient(145deg,#f8fbf4,#fffef8)}.button.primary,.avatar{color:#fff}}html,body{max-width:100%;overflow-x:clip}button,input,select,textarea{max-width:100%}fieldset,.app-frame,.app-column,.page,.card,.settings-grid,.settings-grid>*{min-width:0}.app-frame{max-width:100%}.page{width:100%}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.impact-preview>div{min-width:0}.impact-preview strong,.impact-preview p,.provenance dd{overflow-wrap:anywhere}@media (width<=767px){.settings-grid{grid-template-columns:minmax(0,1fr)}.settings-grid>.card{width:100%}}.prescribed-session,.workout-list{gap:14px;display:grid}.preparation-card{border-radius:var(--r-lg);background:#121a10;border:1px solid #3d4e34;grid-template-columns:42px minmax(0,1fr);gap:14px;min-width:0;padding:18px;display:grid}.preparation-card.cooldown{border-color:var(--line);background:var(--surface)}.preparation-icon{width:42px;height:42px;color:var(--green);background:#1c2a12;border-radius:12px;place-items:center;display:grid}.preparation-heading{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.preparation-heading .eyebrow,.preparation-heading h3{margin-bottom:0}.preparation-heading>span{background:var(--raised);color:var(--muted);border-radius:999px;flex:none;padding:4px 8px;font-size:.7rem;font-weight:750}.preparation-sequence{color:var(--text);white-space:pre-line;margin:13px 0 10px;font-size:.82rem;line-height:1.65}.preparation-card small{color:var(--muted);line-height:1.5;display:block}.workbook-entry{justify-content:space-between;align-items:center;gap:18px;display:flex}.workbook-entry-copy{align-items:flex-start;gap:14px;min-width:0;display:flex}.workbook-entry-copy>svg{width:24px;height:24px;color:var(--green);flex:none}.workbook-entry h2,.workbook-entry p:last-child{margin-bottom:0}.workbook-entry p:last-child{font-size:.78rem}.library-header{align-items:flex-end}.library-header>div{max-width:720px}.library-search{min-width:min(330px,100%);position:relative}.library-search svg{z-index:1;width:17px;color:var(--muted);position:absolute;top:13px;left:13px}.library-search input{width:100%;padding-left:40px}.library-tabs{scrollbar-width:thin;gap:7px;margin-bottom:14px;padding-bottom:4px;display:flex;overflow-x:auto}.library-tabs button{border:1px solid var(--line);background:var(--surface);min-height:38px;color:var(--muted);cursor:pointer;border-radius:10px;flex:none;padding:0 12px;font-size:.72rem;font-weight:700}.library-tabs button.active{border-color:var(--green);color:var(--green);background:#18220f}.library-sheet{padding:0;overflow:hidden}.library-sheet-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-end;gap:20px;padding:20px 22px;display:flex}.library-sheet-heading h2,.library-sheet-heading .eyebrow{margin-bottom:0}.library-sheet-heading>span{color:var(--muted);font-size:.72rem}.library-table-wrap{outline:none;min-height:420px;max-height:68vh;overflow:auto}.library-table-wrap:focus-visible{box-shadow:inset 0 0 0 2px var(--green)}.library-table{border-collapse:collapse;width:max-content;min-width:100%;font-size:.74rem}.library-table td{border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-width:120px;max-width:420px;color:var(--muted);vertical-align:top;white-space:pre-wrap;overflow-wrap:anywhere;padding:10px 12px}.library-table tr:first-child td{color:var(--text);background:#172018;font-weight:800}.library-table td:first-child{z-index:1;background:var(--surface);min-width:160px;color:var(--text);font-weight:650;position:sticky;left:0}.library-table tr:first-child td:first-child{z-index:2;background:#172018}.library-empty{text-align:center;color:var(--muted);padding:70px 20px}.exercise-actions,.data-actions,.photo-toolbar,.photo-grid figcaption,.logged-meals article,.session-list article{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.exercise-actions button,.logged-meals button,.session-list button,.compact-data-list button{border:1px solid var(--line);background:var(--raised);color:var(--muted);cursor:pointer;border-radius:8px;padding:6px 9px;font-size:.72rem}.exercise-actions .view-gif{background:var(--green-dark);color:var(--green);border-color:#52752f}.exercise-actions .view-gif svg{vertical-align:-2px;fill:currentColor;width:13px;height:13px;margin-right:3px}.preparation-check{color:var(--muted);align-items:center;gap:8px;padding:10px 14px;display:flex}.logged-meals,.session-list,.compact-data-list{gap:8px;margin-top:12px;display:grid}.logged-meals article,.session-list article{border-top:1px solid var(--line);padding-top:10px}.logged-meals article>div:first-child,.session-list article>div:first-child{display:grid}.logged-food-image{object-fit:contain;background:#f5f3ed;border-radius:9px;flex:0 0 46px;width:46px;height:46px}.logged-meals small,.session-list small,.compact-data-list small{color:var(--muted)}.logged-meals a{color:var(--green);font-size:.68rem}.compact-data-list button{text-align:left;gap:3px;display:grid}.compact-data-list article{border-top:1px solid var(--line);gap:4px;min-width:0;padding:10px 0 2px;display:grid}.compact-data-list article:first-child{border-top:0;padding-top:0}.compact-data-list article strong,.compact-data-list article small,.travel-protocol-numbered article div{overflow-wrap:break-word;min-width:0}.travel-protocol-numbered article{grid-template-columns:1.75rem minmax(0,1fr);align-items:start;column-gap:10px}.travel-protocol-numbered .protocol-index{color:var(--green);text-align:right;font-size:.78rem;font-weight:800;line-height:1.4}.travel-protocol-numbered article div,.travel-protocol-stack article{gap:3px;display:grid}.travel-details{min-width:0}.travel-details summary{cursor:pointer;overflow-wrap:break-word}.travel-details>p{margin:10px 0 0}.meal-dialog{grid-template-columns:1fr;width:min(820px,100%);max-width:820px;max-height:min(92vh,900px);overflow:auto}.meal-dialog .dialog-content{padding:26px 28px 20px}.meal-composer{gap:18px;display:grid}.meal-composer-header,.meal-section-heading,.meal-composer-footer{justify-content:space-between;align-items:center;gap:16px;display:flex}.meal-composer-header{padding-right:48px}.meal-composer-header h2,.meal-section-heading h3{margin:0}.meal-total{white-space:nowrap;justify-items:end;display:grid}.meal-total strong{font-size:1.15rem}.meal-total span,.meal-section-heading>span{color:var(--muted);font-size:.72rem}.meal-items-panel{gap:12px;display:grid}.meal-item-list{gap:8px;display:grid}.meal-item-row{border:1px solid var(--line);background:var(--raised);border-radius:12px;grid-template-columns:58px minmax(0,1fr) auto;align-items:start;gap:12px;padding:12px;display:grid}.meal-item-photo{width:58px;height:58px}.meal-item-main{gap:8px;min-width:0;display:grid}.meal-item-main label,.meal-name-field label,.meal-advanced label{color:var(--muted);font-size:.7rem}.meal-item-main input,.meal-item-main select,.meal-name-field input{width:100%;min-height:38px;margin-top:4px}.meal-item-measure{grid-template-columns:minmax(90px,1fr) 110px;gap:8px;display:grid}.meal-item-summary{flex-wrap:wrap;gap:5px;display:flex}.meal-item-summary span{background:var(--surface);color:var(--muted);border-radius:5px;padding:3px 6px;font-size:.65rem}.meal-item-actions{align-items:center;gap:4px;display:flex}.meal-item-actions button,.meal-section-heading>button{border:1px solid var(--line);background:var(--surface);min-height:34px;color:var(--muted);cursor:pointer;border-radius:8px;align-items:center;gap:4px;padding:0 8px;font-size:.68rem;display:inline-flex}.meal-item-actions svg{width:14px}.meal-item-actions .danger-text{color:var(--red)}.item-nutrition-fields summary,.meal-advanced summary{color:var(--green);cursor:pointer;font-size:.72rem}.item-nutrition-fields>div{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:8px;display:grid}.item-nutrition-fields input{padding:0 7px}.meal-empty-copy{border:1px dashed var(--line-strong);color:var(--muted);border-radius:10px;margin:0;padding:14px;font-size:.78rem}.meal-name-field input{margin-top:7px}.meal-advanced{border:1px solid var(--line);background:var(--surface);border-radius:12px;padding:13px 15px}.meal-advanced>.field-grid,.meal-advanced>.estimated-toggle,.meal-advanced>.note-input{margin-top:14px}.estimated-toggle{align-items:center;gap:8px;display:flex}.meal-photo-upload{cursor:pointer;width:fit-content}.meal-photo-upload input{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.meal-composer-footer{z-index:2;padding:14px 28px calc(14px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:color-mix(in srgb, var(--surface) 96%, transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);margin:0 -28px -20px;position:sticky;bottom:-20px}.meal-composer-footer>div{display:grid}.meal-composer-footer span{color:var(--muted);font-size:.68rem}.logged-food-items{margin-top:5px}.logged-food-items summary{color:var(--green);cursor:pointer;font-size:.68rem}.logged-food-items span{color:var(--muted);font-size:.66rem;display:block}.food-search-panel{border:1px solid var(--line);border-radius:var(--r);background:var(--surface);gap:14px;padding:16px;display:grid}.food-search-panel h3,.food-search-panel p{margin:0}.food-search-message{color:var(--muted);margin-top:5px;font-size:.76rem}.food-search-message-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.food-search-message-row button{color:var(--green);cursor:pointer;background:0 0;border:0;flex:none;font-size:.72rem}.food-search-controls{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;display:grid}.food-search-controls label,.serving-control{color:var(--muted);font-size:.76rem}.food-search-controls input,.serving-control input{width:100%;margin-top:7px}.food-search-results{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:310px;display:grid;overflow:auto}.food-search-results>button{border:1px solid var(--line);background:var(--raised);color:var(--text);text-align:left;cursor:pointer;border-radius:10px;grid-template-columns:auto minmax(0,1fr) 18px;align-items:center;gap:10px;padding:9px;display:grid}.food-search-results>button:hover,.food-search-results>button.selected{border-color:var(--green);background:var(--green-dark)}.food-search-results>button>span:not(.food-result-image){gap:2px;min-width:0;display:grid}.food-search-results>button>svg{width:17px;color:var(--green)}.food-search-results strong,.food-search-results small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.food-search-results small{color:var(--muted);font-size:.68rem}.food-search-results em{color:var(--green);font-size:.64rem;font-style:normal}.food-result-image{width:54px;height:54px;color:var(--dim);background:#f5f3ed;border-radius:8px;place-items:center;display:grid;overflow:hidden}.food-result-image img{object-fit:contain;width:100%;height:100%}.food-result-image svg{width:20px}.serving-control span{float:right;color:var(--green)}.photo-toolbar{color:var(--muted);margin-bottom:12px;font-size:.78rem}.photo-upload-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:16px;display:grid}.photo-upload-card{grid-template-columns:44px minmax(0,1fr);align-items:start;gap:14px;display:grid}.photo-upload-card>.button,.photo-upload-card>.weekly-photo-actions,.photo-upload-card>.weekly-photo-week{grid-column:2}.photo-upload-card h2{margin-bottom:4px}.photo-upload-card p:not(.eyebrow){margin-bottom:0;font-size:.78rem}.photo-upload-icon{background:var(--green-dark);width:44px;height:44px;color:var(--green);border:1px solid #52752f;border-radius:12px;place-items:center;display:grid}.photo-upload-card>.button{width:max-content}.weekly-photo-week{color:var(--muted);justify-content:space-between;align-items:center;gap:12px;font-size:.74rem;display:flex}.weekly-photo-week input{width:82px;min-height:38px}.weekly-photo-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.weekly-photo-actions .button{text-transform:capitalize;justify-content:center}.photo-metadata{margin-bottom:18px}.photo-grid figure.selected{border-color:var(--green);box-shadow:0 0 0 1px var(--green)}.photo-select{cursor:pointer;background:0 0;border:0;width:100%;padding:0;display:block}.photo-loading{aspect-ratio:3/4;color:var(--muted);background:var(--raised);place-items:center;padding:20px;display:grid}.photo-grid figcaption>div{gap:5px;display:flex}.photo-grid figcaption .icon-button{width:32px;height:32px}.photo-compare{margin-top:18px}.photo-compare>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.photo-compare img{object-fit:contain;background:var(--ink);border-radius:var(--r);width:100%;max-height:70vh}.status-pill{cursor:pointer}@media (width<=767px){.photos-page-header{grid-template-columns:minmax(0,1fr);align-items:stretch;gap:16px;display:grid}.photos-page-header .button{justify-content:center;width:100%}.food-search-controls,.food-search-results{grid-template-columns:1fr}.meal-dialog .dialog-content{padding:22px 16px 14px}.meal-composer-header{padding-right:44px}.meal-item-row{grid-template-columns:48px minmax(0,1fr);gap:10px}.meal-item-photo{width:48px;height:48px}.meal-item-actions{grid-column:2;justify-content:flex-end}.meal-item-measure{grid-template-columns:minmax(80px,1fr) 90px}.item-nutrition-fields>div{grid-template-columns:1fr 1fr}.meal-composer-footer{padding:12px 16px calc(12px + env(safe-area-inset-bottom));margin:0 -16px -14px;bottom:-14px}.workout-timing{flex-direction:column;align-items:stretch}.session-clock{grid-template-columns:20px minmax(0,1fr) auto}.session-clock>strong{grid-area:1/3/3;align-self:center}.workout-timer-actions{grid-template-columns:1fr 1fr;display:grid}.workout-timer-actions .button{justify-content:center}.photo-upload-grid{grid-template-columns:1fr}.exercise-actions{grid-column:1/-1;justify-content:flex-start}.exercise-actions button{flex:40%}.photo-compare>div{grid-template-columns:1fr}}@media (width<=520px){.nutrition-page-header{grid-template-columns:minmax(0,1fr);align-items:stretch;gap:14px;display:grid}.nutrition-page-header .button{width:100%}}@media (width<=1100px){.settings-grid{grid-template-columns:minmax(0,1fr)}.settings-grid>.card:first-child{grid-row:auto}.provenance,.danger,.workbook-entry{grid-column:auto}}@media (width<=767px){.preparation-card{grid-template-columns:34px minmax(0,1fr);gap:10px;padding:14px}.preparation-icon{border-radius:9px;width:34px;height:34px}.preparation-heading{gap:7px;display:grid}.preparation-heading>span{width:max-content}.workbook-entry,.library-header,.library-sheet-heading{align-items:start;display:grid}.workbook-entry .button,.library-search{width:100%}.library-table-wrap{min-height:360px}}
