app-today-dashboard{display:block;--today-green: #234f42;--today-muted: #5c6b63;--today-line: #e1e6dc;--today-warm: #fcfaf5;--today-sage: #edf2e6}app-today-dashboard .today-page{display:grid;gap:24px;min-width:0;color:#24392f}app-today-dashboard .today-heading,app-today-dashboard .today-section-head{display:flex;justify-content:space-between;align-items:center;gap:16px}app-today-dashboard .today-heading{padding:4px 0 2px}app-today-dashboard .today-heading h1{font-size:clamp(29px,3.1vw,43px);letter-spacing:-1.5px;margin:0 0 9px;font-weight:650}app-today-dashboard .today-eyebrow{text-transform:uppercase;letter-spacing:1.6px;font-size:11px;font-weight:750;line-height:1.5;color:var(--today-muted);margin:0 0 8px}app-today-dashboard .today-intro{margin:0;color:var(--today-muted);font-size:14px}app-today-dashboard .today-pill{display:flex;align-items:center;gap:8px;white-space:nowrap;background:#edf2e8;padding:9px 13px;border-radius:30px;font-size:11px;color:var(--today-green)}app-today-dashboard .today-pill>span{width:6px;height:6px;border-radius:50%;background:#66856b}app-today-dashboard .today-top{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(230px,.85fr);gap:24px}app-today-dashboard .today-card{background:var(--today-warm);border:1px solid var(--today-line);border-radius:24px;padding:25px;min-width:0;box-shadow:0 3px 18px #29463803}app-today-dashboard .today-section-head{align-items:flex-start;margin-bottom:22px}app-today-dashboard .today-section-head h2{font-size:21px;line-height:1.3;letter-spacing:-.6px;margin:0}app-today-dashboard .today-section-head .today-eyebrow{margin-bottom:5px}app-today-dashboard .today-icon-button{flex-shrink:0;padding:0;min-height:44px;width:44px;border-radius:50%;border-color:var(--today-line);background:transparent;color:var(--today-green)}app-today-dashboard .nutrition-content{display:flex;align-items:center;gap:30px;padding:1px 0 22px}app-today-dashboard .calorie-ring{width:185px;height:185px;flex-shrink:0;display:grid;place-items:center;border-radius:50%;background:conic-gradient(from -90deg,var(--today-green) var(--ring-progress),#e8ecdf 0);padding:10px}app-today-dashboard .calorie-ring-center{border-radius:50%;background:var(--today-warm);width:100%;height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column}app-today-dashboard .calorie-ring-center strong{font-size:38px;line-height:1.2;font-weight:650;letter-spacing:-1.5px;font-variant-numeric:tabular-nums}app-today-dashboard .calorie-ring-center>span:last-child{color:var(--today-muted);font-size:12px;margin-top:3px}app-today-dashboard .calorie-ring-center .today-eyebrow{font-size:10px;margin-bottom:3px;letter-spacing:1.3px}app-today-dashboard .nutrition-details{flex:1;min-width:0}app-today-dashboard .calorie-total{font-size:11px;color:var(--today-muted);margin-bottom:15px}app-today-dashboard .calorie-total strong{font-size:21px;color:#24392f;letter-spacing:-.5px}app-today-dashboard .macro-list{display:grid;gap:12px}app-today-dashboard .macro>div:first-child{display:flex;justify-content:space-between;gap:8px;font-size:11px;margin-bottom:5px}app-today-dashboard .macro>div:first-child>span:last-child{color:var(--today-muted);white-space:nowrap}app-today-dashboard .macro b{color:#324b3c;font-weight:650}app-today-dashboard .macro-track{height:5px;border-radius:10px;background:#e9ecdf;overflow:hidden}app-today-dashboard .macro-track span{display:block;height:100%;background:#60816c;border-radius:10px;transition:width .6s ease}app-today-dashboard .macro[data-macro=carbs] .macro-track span{background:#c99955}app-today-dashboard .macro[data-macro=fat] .macro-track span{background:#a67b66}app-today-dashboard .nutrition-note{font-size:11px;line-height:1.5;margin:14px 0 0;color:var(--today-muted)}app-today-dashboard .today-quick-actions{display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:8px;border-top:1px solid var(--today-line);padding-top:18px}app-today-dashboard .today-quick-actions button{font-size:12px;min-height:46px;padding:10px 9px;border-color:var(--today-line);border-radius:12px;background:transparent;white-space:nowrap}app-today-dashboard .today-quick-actions app-icon{font-size:17px}app-today-dashboard .today-page .today-main-action{background:var(--today-green);border-color:var(--today-green);color:#fffdf4}app-today-dashboard .next-step-card{padding:28px;border-radius:24px;background:#e9efde;position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:flex-start;flex-direction:column;justify-content:center;min-width:0}app-today-dashboard .next-step-icon{background:#f8faf1;border:1px solid #d8e1cd;border-radius:14px;width:44px;height:44px;display:grid;place-items:center;margin-bottom:24px;color:var(--today-green)}app-today-dashboard .next-step-card h2{font-size:clamp(23px,2.5vw,30px);letter-spacing:-.8px;line-height:1.17;margin:0 0 13px;max-width:260px}app-today-dashboard .next-step-card>p:not(.today-eyebrow){color:#4e6350;font-size:12px;line-height:1.7;margin:0 0 24px;max-width:285px}app-today-dashboard .next-step-card>button{background:#fafcf4;border-color:#d0dcc4;color:var(--today-green);font-size:12px;width:100%;justify-content:space-between;padding:12px 15px}app-today-dashboard .next-step-decoration{position:absolute;right:-78px;bottom:-118px;border:1px solid #c6d3ba;border-radius:50%;width:230px;height:230px;z-index:-1}app-today-dashboard .next-step-decoration:after{content:"";position:absolute;inset:20px;border:1px solid #c6d3ba;border-radius:50%}app-today-dashboard .today-middle{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:24px}app-today-dashboard .today-text-button{background:transparent;padding:0 0 0 10px;border:0;font-size:11px;white-space:nowrap;color:var(--today-green);min-height:44px}app-today-dashboard .today-text-button app-icon{font-size:16px}app-today-dashboard .today-meal{display:flex;align-items:center;gap:13px;padding:15px 0;border-bottom:1px solid var(--today-line);min-width:0}app-today-dashboard .today-meal:first-child{padding-top:0}app-today-dashboard .today-meal:last-child{border-bottom:0;padding-bottom:0}app-today-dashboard .today-meal-photo{display:block;flex-shrink:0;width:76px;height:76px;padding:0;border:0;border-radius:15px;overflow:hidden;background:#eaeade}app-today-dashboard .today-meal-photo app-recipe-photo{display:block;width:100%;height:100%;border-radius:inherit}app-today-dashboard .today-meal-copy{flex:1;min-width:0}app-today-dashboard .meal-slot{font-size:11px;font-weight:650;color:var(--today-muted);display:block;margin-bottom:4px}app-today-dashboard .meal-title{border:0;background:transparent;padding:0;min-height:44px;justify-content:flex-start;text-align:left;font-size:13px;line-height:1.4;color:#24392f;display:block;font-weight:650;border-radius:4px;overflow-wrap:anywhere}app-today-dashboard .today-meal-copy p{font-size:11px;color:var(--today-muted);margin:3px 0 0}app-today-dashboard .today-meal-log{min-width:44px;min-height:44px;gap:4px;padding:9px;border-radius:50px;font-size:11px;background:transparent;border-color:var(--today-line);flex-shrink:0}app-today-dashboard .today-meal-log app-icon{font-size:15px}app-today-dashboard .today-footnote{margin:18px 0 0;font-size:11px;line-height:1.6;color:var(--today-muted)}app-today-dashboard .today-training-photo{height:192px;position:relative;border-radius:16px;background:#f1eee5;overflow:hidden}app-today-dashboard .today-training-photo img{display:block;width:100%;height:100%;object-fit:contain}app-today-dashboard .today-training-photo>span{position:absolute;bottom:8px;left:8px;right:8px;padding:6px 9px;border-radius:8px;background:#fffdf5ed;color:#334b3e;font-size:10px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}app-today-dashboard .training-copy{padding-top:17px}app-today-dashboard .training-copy h3{font-size:21px;letter-spacing:-.5px;margin:0 0 6px}app-today-dashboard .training-copy>p{font-size:11px;color:var(--today-muted);margin:0 0 15px}app-today-dashboard .training-copy>button{width:100%;font-size:12px;justify-content:space-between}app-today-dashboard .training-copy p.training-saved{display:flex;align-items:center;gap:7px;color:var(--today-green)}app-today-dashboard .training-saved app-icon{font-size:15px}app-today-dashboard .today-empty{padding:20px 4px 13px;text-align:center}app-today-dashboard .today-empty-icon{display:grid;place-items:center;width:54px;height:54px;background:var(--today-sage);color:var(--today-green);border-radius:18px;margin:0 auto 17px}app-today-dashboard .today-empty h3{font-size:18px;margin:0 0 9px}app-today-dashboard .today-empty p{font-size:12px;color:var(--today-muted);max-width:320px;margin:0 auto 18px}app-today-dashboard .today-empty button{font-size:12px;background:transparent;border-color:#c8d6be;color:var(--today-green)}app-today-dashboard .today-bottom{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:24px;align-items:start}app-today-dashboard .consistency-content{display:flex;align-items:center;gap:25px}app-today-dashboard .active-days{flex-shrink:0}app-today-dashboard .active-days strong{font-size:38px;font-weight:600;letter-spacing:-1px}app-today-dashboard .active-days strong span{font-size:18px;color:#7a8879;letter-spacing:0}app-today-dashboard .active-days p{font-size:11px;color:var(--today-muted);margin:0}app-today-dashboard .activity-week{flex:1;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}app-today-dashboard .activity-day{display:flex;align-items:center;flex-direction:column;gap:8px;font-size:10px;color:var(--today-muted)}app-today-dashboard .activity-day>b{font-size:11px;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#f0f1e8;color:#60705f;font-weight:550}app-today-dashboard .activity-day>b.has-entry{background:#dfe8d4;color:#2d523a}app-today-dashboard .activity-day.is-today>b{box-shadow:0 0 0 2px var(--today-warm),0 0 0 3px #6b8663}app-today-dashboard .activity-dots{display:flex;gap:2px}app-today-dashboard .activity-dots i{width:3px;height:3px;border-radius:50%;background:#e1e5d9}app-today-dashboard .activity-dots i.logged:nth-child(1),app-today-dashboard .activity-legend span:nth-child(1) i{background:#60816c}app-today-dashboard .activity-dots i.logged:nth-child(2),app-today-dashboard .activity-legend span:nth-child(2) i{background:#c99955}app-today-dashboard .activity-dots i.logged:nth-child(3),app-today-dashboard .activity-legend span:nth-child(3) i{background:#a67b66}app-today-dashboard .activity-legend{display:flex;gap:16px;flex-wrap:wrap;font-size:10px;color:var(--today-muted);margin-top:22px}app-today-dashboard .activity-legend>span{display:flex;align-items:center;gap:6px}app-today-dashboard .activity-legend i{width:6px;height:6px;border-radius:50%}app-today-dashboard .shopping-shortcut{padding:25px;border-radius:24px;border:1px solid #e3dcc9;background:#f4efdf;text-align:left;display:flex;gap:15px;align-items:center;width:100%;min-width:0}app-today-dashboard .shopping-icon{width:48px;height:48px;flex-shrink:0;border-radius:15px;background:#fffbef;display:grid;place-items:center;color:#896b35}app-today-dashboard .shopping-shortcut>span:nth-child(2){flex:1;min-width:0}app-today-dashboard .shopping-shortcut strong{display:block;font-size:17px;letter-spacing:-.4px;margin:4px 0 7px;color:#524c35}app-today-dashboard .shopping-shortcut>span:nth-child(2)>span:last-child{font-size:11px;font-weight:450;color:#74694c}app-today-dashboard .shopping-shortcut .today-eyebrow{font-size:10px;color:#74694c;letter-spacing:1.1px}app-today-dashboard .shopping-shortcut>app-icon{font-size:17px;color:#896b35}@media(hover:hover){app-today-dashboard .today-page button:hover:not(:disabled){box-shadow:0 3px 10px #2946380e;transform:translateY(-1px)}app-today-dashboard .today-page button{transition:background .18s ease,box-shadow .18s ease,transform .18s ease}app-today-dashboard .today-page .today-main-action:hover:not(:disabled){background:#30634f}app-today-dashboard .meal-title:hover:not(:disabled){text-decoration:underline;text-underline-offset:3px}}@media(max-width:1100px){app-today-dashboard .today-top{grid-template-columns:minmax(0,1.55fr) minmax(210px,.8fr);gap:18px}app-today-dashboard .nutrition-content{gap:18px}app-today-dashboard .calorie-ring{width:160px;height:160px}app-today-dashboard .calorie-ring-center strong{font-size:33px}app-today-dashboard .today-card{padding:22px}app-today-dashboard .today-quick-actions{grid-template-columns:1fr 1fr}app-today-dashboard .today-quick-actions>button:last-child{grid-column:1/-1}app-today-dashboard .consistency-content{gap:16px}app-today-dashboard .activity-week{gap:3px}app-today-dashboard .activity-day>b{width:26px;height:26px}app-today-dashboard .next-step-card{padding:24px}app-today-dashboard .today-middle,app-today-dashboard .today-bottom{gap:18px}}@media(max-width:820px){app-today-dashboard .today-top{grid-template-columns:1fr}app-today-dashboard .today-quick-actions{grid-template-columns:1fr 1.2fr 1fr}app-today-dashboard .today-quick-actions>button:last-child{grid-column:auto}app-today-dashboard .next-step-card{padding:23px;display:grid;grid-template-columns:1fr auto;column-gap:25px;align-items:center}app-today-dashboard .next-step-icon{display:none}app-today-dashboard .next-step-card .today-eyebrow,app-today-dashboard .next-step-card h2,app-today-dashboard .next-step-card>p{grid-column:1}app-today-dashboard .next-step-card h2{font-size:24px;max-width:none}app-today-dashboard .next-step-card>p:not(.today-eyebrow){margin:0;max-width:450px}app-today-dashboard .next-step-card>button{grid-column:2;grid-row:1/4;max-width:180px}app-today-dashboard .today-middle,app-today-dashboard .today-bottom{grid-template-columns:1fr 1fr}app-today-dashboard .today-section-head{gap:10px}app-today-dashboard .today-section-head h2{font-size:19px}app-today-dashboard .today-text-button{font-size:11px}app-today-dashboard .today-meal-photo{width:60px;height:64px}app-today-dashboard .today-meal{gap:10px}app-today-dashboard .today-meal-log>span{display:none}app-today-dashboard .consistency-content{flex-direction:column;align-items:stretch}app-today-dashboard .active-days{display:flex;align-items:baseline;gap:8px}app-today-dashboard .activity-legend{gap:10px}app-today-dashboard .today-pill{display:none}}@media(max-width:620px){app-today-dashboard .today-page{gap:18px}app-today-dashboard .today-heading h1{font-size:31px;letter-spacing:-1.1px}app-today-dashboard .today-heading .today-eyebrow{font-size:10px}app-today-dashboard .today-intro{font-size:12px}app-today-dashboard .today-card{padding:21px 18px;border-radius:21px}app-today-dashboard .today-top,app-today-dashboard .today-middle,app-today-dashboard .today-bottom{gap:18px;grid-template-columns:1fr}app-today-dashboard .nutrition-content{gap:23px;padding-bottom:20px}app-today-dashboard .calorie-ring{width:156px;height:156px;padding:9px}app-today-dashboard .calorie-ring-center strong{font-size:32px}app-today-dashboard .calorie-ring-center .today-eyebrow{font-size:10px}app-today-dashboard .calorie-total{font-size:11px}app-today-dashboard .calorie-total strong{font-size:19px}app-today-dashboard .macro>div:first-child{font-size:11px}app-today-dashboard .nutrition-note{font-size:10px}app-today-dashboard .today-quick-actions{gap:6px}app-today-dashboard .today-quick-actions button{font-size:11px;padding:10px 5px;gap:5px}app-today-dashboard .today-quick-actions app-icon{font-size:15px}app-today-dashboard .next-step-card{display:flex;align-items:flex-start;padding:23px;border-radius:21px}app-today-dashboard .next-step-card h2{font-size:26px}app-today-dashboard .next-step-card>p:not(.today-eyebrow){font-size:12px;margin-bottom:17px}app-today-dashboard .next-step-card>button{max-width:none;width:auto;gap:25px}app-today-dashboard .next-step-card>button{min-height:44px}app-today-dashboard .today-meal-photo{width:70px;height:70px}app-today-dashboard .today-meal{gap:12px}app-today-dashboard .today-meal-log>span{display:block}app-today-dashboard .meal-title{font-size:13px}app-today-dashboard .today-training-photo{height:225px}app-today-dashboard .training-copy{padding-top:17px}app-today-dashboard .consistency-content{flex-direction:row;gap:19px}app-today-dashboard .active-days{display:block}app-today-dashboard .active-days strong{font-size:32px}app-today-dashboard .activity-week{gap:4px}app-today-dashboard .activity-day>b{width:28px;height:28px}app-today-dashboard .activity-legend{gap:19px}app-today-dashboard .shopping-shortcut{padding:23px 20px;border-radius:21px}app-today-dashboard .shopping-shortcut strong{font-size:17px}}@media(max-width:380px){app-today-dashboard .today-card{padding:18px 15px}app-today-dashboard .nutrition-content{gap:14px}app-today-dashboard .calorie-ring{width:126px;height:126px;padding:8px}app-today-dashboard .calorie-ring-center strong{font-size:27px}app-today-dashboard .calorie-ring-center>span:last-child{font-size:11px}app-today-dashboard .nutrition-details{min-width:100px}app-today-dashboard .calorie-total span{display:block}app-today-dashboard .calorie-total{margin-bottom:10px}app-today-dashboard .macro-list{gap:10px}app-today-dashboard .nutrition-note{display:none}app-today-dashboard .today-quick-actions button{font-size:11px;flex-direction:column;gap:4px;min-height:56px}app-today-dashboard .today-section-head h2{font-size:18px}app-today-dashboard .today-section-head .today-eyebrow{font-size:10px;letter-spacing:1.2px}app-today-dashboard .today-text-button{font-size:10px;gap:4px}app-today-dashboard .today-meal-photo{width:56px;height:65px}app-today-dashboard .today-meal{gap:9px}app-today-dashboard .today-meal-log>span{display:none}app-today-dashboard .consistency-content{gap:13px}app-today-dashboard .activity-week{gap:2px}app-today-dashboard .activity-day>b{width:23px;height:25px}app-today-dashboard .active-days strong{font-size:28px}app-today-dashboard .active-days p{font-size:10px}app-today-dashboard .activity-legend{gap:13px}app-today-dashboard .shopping-shortcut{gap:11px;padding:20px 16px}app-today-dashboard .shopping-icon{width:40px;height:44px}app-today-dashboard .shopping-shortcut strong{font-size:15px}}@media(prefers-reduced-motion:no-preference){app-today-dashboard .today-heading,app-today-dashboard .today-top,app-today-dashboard .today-middle,app-today-dashboard .today-bottom{animation:today-arrive .45s both}app-today-dashboard .today-top{animation-delay:.04s}app-today-dashboard .today-middle{animation-delay:.09s}app-today-dashboard .today-bottom{animation-delay:.14s}@keyframes today-arrive{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}}@media(prefers-reduced-motion:reduce){app-today-dashboard .today-page button,app-today-dashboard .macro-track span{transition:none}app-today-dashboard .today-page button:hover:not(:disabled){transform:none}}:root{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#1b233b;background:#f4f1eb;font-synthesis:none;text-rendering:optimizeLegibility;color-scheme:light;--ink: #18203a;--text: #18203a;--muted: #465065;--cream: #f4f1eb;--surface: #fffdf8;--surface-soft: #f0ece3;--accent: #bd9448;--accent-strong: #96702e;--gold-soft: #f1e7d2;--sage: #e7eddf;--peach: #f5e5d9;--line: #dcd8ce;--control-line: #8790a0;--panel: #fffdf8;--panel-raised: #f0ece3;--danger: #943c31;--radius: 20px}*{box-sizing:border-box}html{scroll-padding-top:24px;-webkit-text-size-adjust:100%}body{margin:0;font-size:14px;line-height:1.5}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button,a,input,select,textarea{touch-action:manipulation}button:disabled{opacity:.55;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:4px}button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;max-width:100%;padding:11px 17px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--text);font-weight:650;line-height:1.35;text-align:center;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease}button.primary{background:var(--accent);color:var(--ink);border-color:var(--accent);font-weight:750}button.ghost{background:transparent;border-color:var(--line);color:var(--ink)}button.danger{color:var(--danger);border-color:var(--line);background:var(--surface)}button.slim{min-height:44px;padding:9px 12px;font-size:12px}a{color:var(--accent);text-underline-offset:4px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(30px,3.3vw,44px);line-height:1.13;font-weight:650;letter-spacing:-1.7px;margin-bottom:12px;text-wrap:balance}h2{font-size:20px;line-height:1.3;font-weight:650;letter-spacing:-.55px;margin-bottom:18px}h3{font-size:16px;line-height:1.4;font-weight:650;margin-bottom:14px}small{font-size:12px;line-height:1.65}.muted,small{color:var(--muted)}.eyebrow{color:var(--accent);font-size:10px;font-weight:750;line-height:1.6;letter-spacing:1.9px;text-transform:uppercase;margin-bottom:14px}.brand{color:var(--text);font-size:23px;font-weight:800;letter-spacing:-.8px;white-space:nowrap}.brand span{color:var(--accent)}.shell{display:grid;grid-template-columns:232px minmax(0,1fr);min-height:100dvh}.sidebar{position:sticky;top:0;height:100dvh;display:flex;flex-direction:column;gap:42px;padding:37px 19px 24px;border-right:1px solid var(--line);background:var(--surface)}.sidebar .brand{padding:0 12px}.nav{display:grid;gap:7px}.nav button{position:relative;justify-content:flex-start;gap:13px;padding:13px 14px;border-color:transparent;border-radius:12px;background:transparent;color:var(--ink);font-size:13px;font-weight:550;text-align:left}.nav button.active{color:var(--ink);border-color:var(--line);background:var(--surface)}.nav-icon{display:inline-flex;flex:0 0 20px;width:20px;height:20px;align-items:center;justify-content:center;color:inherit}.nav-icon svg,.nav-icon app-icon{display:block;width:20px;height:20px}.nav-label{min-width:0}.mobile-nav{display:none}.sidebar-bottom{margin-top:auto;padding:17px 12px 0;border-top:1px solid var(--line);font-size:11px;overflow-wrap:anywhere;color:var(--muted)}.sidebar-bottom p{margin-bottom:12px}.sidebar-bottom button{width:100%;min-height:44px;font-size:12px}.main{min-width:0;background:var(--surface)}.topbar{min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 40px;border-bottom:1px solid var(--line)}.topbar small{font-size:10px;letter-spacing:1.7px;color:var(--ink)}.topbar .row{gap:8px}.topbar button{background:transparent;border-color:var(--line);font-size:11px}.content{width:100%;max-width:1312px;margin:auto;padding:39px 40px 0}.page-head{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:30px}.page-head>div{min-width:0}.page-head>button{flex-shrink:0}.page-head p{color:var(--muted);margin-bottom:0;font-size:14px}.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.row>*{min-width:0}.between{justify-content:space-between}.grid{display:grid;gap:20px}.two{grid-template-columns:repeat(2,minmax(0,1fr))}.three{grid-template-columns:repeat(3,minmax(0,1fr))}.four{grid-template-columns:repeat(4,minmax(0,1fr))}.card{min-width:0;padding:25px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.card p:last-child{margin-bottom:0}.hero{position:relative;overflow:hidden;margin-bottom:25px;padding:34px 37px;border:1px solid var(--line);border-radius:24px;background:var(--surface)}.hero:after{content:"";position:absolute;right:-45px;bottom:-120px;width:310px;height:310px;border:1px solid var(--line);border-radius:50%;pointer-events:none}.hero h2{position:relative;z-index:1;max-width:620px;margin-bottom:17px;font-size:35px;line-height:1.16;letter-spacing:-1.2px}.hero p{position:relative;z-index:1;max-width:590px;color:var(--ink);margin-bottom:23px}.hero button{position:relative;z-index:1}.stat{margin:13px 0 10px;font-size:clamp(27px,2.55vw,35px);line-height:1.15;font-weight:650;letter-spacing:-1.4px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.stat small{display:block;margin-top:7px;color:var(--ink);font-size:11px;font-weight:450;letter-spacing:0}.stat-label{display:block;color:var(--ink);font-size:10px;line-height:1.4;text-transform:uppercase;letter-spacing:1.45px}.spacer{margin-top:25px}.empty{padding:29px 12px;color:var(--ink);font-size:13px;line-height:1.75;text-align:center}.item{display:flex;align-items:center;gap:14px;padding:18px 0;border-bottom:1px solid var(--line)}.item:last-child{border-bottom:0}.item-main{flex:1;min-width:0}.item-main strong{display:block;margin-bottom:5px;font-size:13px;font-weight:650;line-height:1.45;overflow-wrap:anywhere}.item-main small{display:block}.item-main .field-note{margin:7px 0 0}.item-actions{display:flex;gap:7px}.item-actions button{padding:9px 11px;font-size:12px}.pill{display:inline-flex;align-items:center;max-width:100%;padding:5px 10px;border:1px solid var(--line);border-radius:99px;background:var(--surface);color:var(--ink);font-size:10px;font-weight:600;letter-spacing:.2px}.progress{height:7px;margin:14px 0 2px;border-radius:10px;overflow:hidden;background:var(--surface)}.progress div{height:100%;background:var(--accent)}label{display:grid;gap:8px;min-width:0;color:var(--ink);font-size:12px;font-weight:600;line-height:1.5}input,select,textarea{width:100%;min-width:0;min-height:48px;padding:12px 13px;border:1px solid var(--line);border-radius:11px;background:var(--surface);color:var(--ink);line-height:1.4;box-shadow:inset 0 1px 2px #1b233b14}input::placeholder,textarea::placeholder{color:var(--ink);opacity:1}input:hover,select:hover,textarea:hover{border-color:var(--line)}input:focus,select:focus,textarea:focus{border-color:var(--accent)}input[type=checkbox],input[type=radio]{width:21px;height:21px;min-height:21px;flex-shrink:0;margin:1px 0;accent-color:var(--accent);box-shadow:none}input[type=date]{color-scheme:light}input[type=file]{padding:8px;font-size:12px}input::file-selector-button{margin-right:10px;padding:7px 10px;border:0;border-radius:6px;background:var(--surface);color:var(--text);font:inherit}textarea{min-height:112px;resize:vertical}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:19px 18px}.full{grid-column:1 / -1}.form-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:10px;margin-top:27px;padding-top:22px;border-top:1px solid var(--line)}.field-note{color:var(--muted);font-size:12px;font-weight:400;line-height:1.75;margin-bottom:19px}.tabs{display:flex;flex-wrap:wrap;gap:5px;width:fit-content;max-width:100%;padding:5px;margin-bottom:24px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.tabs button{min-height:44px;padding:10px 16px;border-color:transparent;border-radius:9px;background:transparent;color:var(--ink);font-size:12px}.tabs button.selected{background:var(--surface);color:var(--ink);border-color:var(--line)}.auth{width:100%;max-width:1160px;min-height:100dvh;display:grid;grid-template-columns:1.12fr 1fr;align-items:center;gap:84px;padding:60px 40px;margin:auto}.auth-intro h1{font-size:clamp(44px,5.4vw,65px);font-weight:600;line-height:1.06;letter-spacing:-3.1px;margin:30px 0 26px}.auth-intro p{max-width:410px;color:var(--ink);font-size:16px;line-height:1.8}.auth .brand{margin-bottom:45px}.auth .card{padding:34px;border-color:var(--line);border-radius:24px;box-shadow:0 22px 80px #1b233b14}.auth .card>h2{margin-bottom:26px;font-size:25px}.auth form{display:grid;gap:21px}.auth .card>small{display:block;padding-top:21px;margin-top:14px;border-top:1px solid var(--line);font-size:11px}.auth-links{display:flex;justify-content:space-between;gap:5px;flex-wrap:wrap;margin:17px -7px 0}.auth-links button{min-height:44px;padding:8px 7px;border:0;background:transparent;color:var(--ink);font-size:12px;text-decoration:underline;text-underline-offset:4px}.loading{min-height:100dvh;display:grid;place-content:center;gap:20px;margin:0;color:var(--muted);font-size:13px}.loading:before{content:"";width:30px;height:30px;margin:0 auto;border:2px solid var(--line);border-top-color:var(--accent);border-radius:50%;animation:loading-spin 1s linear infinite}@keyframes loading-spin{to{transform:rotate(360deg)}}dialog{width:min(800px,calc(100% - 32px));max-height:90dvh;padding:28px;overflow:auto;border:1px solid var(--line);border-radius:22px;background:var(--surface);color:var(--text);box-shadow:0 25px 100px #1b233b14}dialog::backdrop{background:var(--surface);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.dialog-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:25px}.dialog-head h2{margin:0;font-size:22px}.dialog-head button{width:44px;height:44px;min-height:44px;flex:0 0 44px;padding:0;font-size:24px;line-height:1}.dynamic-row{padding:18px;margin:17px 0;border:1px solid var(--line);border-radius:15px;background:var(--surface)}.dynamic-row .form-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.dynamic-row .form-grid>label:first-child{grid-column:1 / -1}.dynamic-row .wide{grid-column:span 2}.dynamic-row button{margin-top:15px;font-size:12px}.week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;margin-top:25px}.day{min-width:0;min-height:200px;padding:13px 11px;border:1px solid var(--line);border-radius:15px;background:var(--surface)}.day h3{margin:1px 0 18px;color:var(--ink);font-size:12px;letter-spacing:-.2px}.day>small{font-size:11px}.plan{padding:12px;margin:12px 0 0;border:1px solid var(--line);border-radius:11px;background:var(--surface)}.plan>small{display:block;color:var(--ink);font-size:10px}.plan strong{display:block;margin:7px 0;font-size:12px;line-height:1.5;overflow-wrap:anywhere}.plan button{width:100%;min-height:44px;padding:8px;margin-top:9px;font-size:11px}.plan .check{min-height:44px;margin-top:7px;font-size:11px}.check{display:flex;align-items:center;gap:12px;min-height:44px;font-size:13px;font-weight:450;cursor:pointer}.checked{color:var(--ink);text-decoration:line-through;opacity:.75}.set-row{display:grid;grid-template-columns:23px minmax(0,1fr) minmax(0,1fr) 48px;align-items:end;gap:12px;margin:15px 0}.set-row>small{align-self:center}.set-row label{font-size:11px}.set-row input[type=checkbox]{margin:12px auto}.chart{display:block;width:100%;height:auto;max-height:255px;min-height:160px}.chart polyline{fill:none;stroke:var(--accent);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.chart circle{fill:var(--accent)}.chart text{fill:var(--ink);font-size:12px}.chart line{stroke:var(--line)}.photo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.photo img{display:block;width:100%;height:220px;object-fit:contain;background:var(--surface);border-radius:12px}.photo p{font-size:12px;line-height:1.6;margin:12px 0;overflow-wrap:anywhere}.error{color:var(--danger);font-size:13px;line-height:1.7}.recovery{padding:19px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:16px;line-height:1.8;overflow-wrap:anywhere;-webkit-user-select:all;user-select:all}#notice{position:fixed;z-index:50;left:50%;bottom:26px;transform:translate(-50%);display:none;width:max-content;max-width:calc(100vw - 32px);padding:15px 21px;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--ink);box-shadow:0 8px 35px #1b233b14;font-size:13px;font-weight:550;line-height:1.6}#notice.visible{display:block}#notice.error{background:var(--surface)}.mobile-brand{display:none}footer{padding:38px 0 28px;color:var(--ink);font-size:10px;line-height:1.8;letter-spacing:.1px}.macro{color:var(--ink);font-size:12px;line-height:1.7}.food-results{display:grid;gap:7px;margin:16px 0 23px}.food-results button{justify-content:flex-start;min-height:47px;font-size:12px;text-align:left;background:var(--surface)}.warn{padding:17px 18px;border:1px solid var(--line);border-radius:13px;background:var(--surface);color:var(--ink);font-size:12px;line-height:1.8}.warn.error{margin-bottom:24px;border-color:var(--line);background:var(--surface);color:var(--ink)}.inline-error{margin:12px 0;color:var(--danger)}.total-line{display:flex;justify-content:space-between;flex-wrap:wrap;gap:9px;padding:14px 0;border-bottom:1px solid var(--line);font-size:13px}.total-line:last-of-type{border-bottom:0;margin-bottom:16px}.total-line span{color:var(--muted)}.session-card{padding:20px;margin:18px 0;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.session-card h3{padding-bottom:14px;border-bottom:1px solid var(--line)}@media(hover:hover)and (pointer:fine){button:not(:disabled):hover{background:var(--surface);border-color:var(--line)}button.primary:not(:disabled):hover{background:var(--surface);border-color:var(--line);box-shadow:0 0 0 3px #1b233b14}button.ghost:not(:disabled):hover{background:var(--surface)}button.danger:not(:disabled):hover{background:var(--surface);border-color:var(--line)}.nav button:not(:disabled):hover{background:var(--surface);color:var(--ink)}.nav button.active:not(:disabled):hover{background:var(--surface)}}@media(max-width:1240px){.shell{grid-template-columns:210px minmax(0,1fr)}.sidebar{padding-left:14px;padding-right:14px}.sidebar .brand{font-size:21px}.content,.topbar{padding-left:29px;padding-right:29px}.week{grid-template-columns:repeat(3,minmax(0,1fr))}.three{grid-template-columns:repeat(2,minmax(0,1fr))}.photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.four{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:940px)and (min-width:761px){.shell{grid-template-columns:184px minmax(0,1fr)}.sidebar{padding-left:10px;padding-right:10px}.sidebar .brand{font-size:19px;padding-left:9px}.nav button{gap:10px;padding-left:10px;font-size:12px}.content{padding:29px 23px 0}.topbar{padding:16px 23px}.two,.three{grid-template-columns:minmax(0,1fr)}.page-head{align-items:flex-start;flex-direction:column;gap:19px}.auth{gap:40px;padding:40px 30px}.auth .card{padding:25px}}@media(max-width:760px){html{scroll-padding-top:16px;scroll-padding-bottom:calc(95px + env(safe-area-inset-bottom))}body{font-size:14px}button{min-height:48px}.shell{display:block}.sidebar{display:none}.mobile-nav{position:fixed;inset:auto 0 0;z-index:30;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;padding:8px 9px calc(8px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--surface);box-shadow:0 -8px 32px #1b233b14;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.mobile-nav button{display:flex;flex-direction:column;justify-content:center;gap:5px;min-height:51px;padding:6px 2px;border:1px solid transparent;border-radius:11px;background:transparent;color:var(--ink);font-size:10px;font-weight:550;line-height:1.25;text-align:center;letter-spacing:.1px}.mobile-nav button.active{color:var(--ink);border-color:var(--line);background:var(--surface)}.mobile-nav .nav-icon,.mobile-nav app-icon{width:21px;height:21px;font-size:21px}.mobile-nav .nav-label{font-size:10px}.main{min-height:100dvh}.topbar{min-height:72px;gap:10px;padding:12px 20px}.topbar .mobile-brand{display:block;color:var(--ink);font-size:18px;font-weight:800;letter-spacing:-.8px;white-space:nowrap}.topbar>small{display:none}.topbar .row{gap:5px;flex-wrap:nowrap}.topbar button{min-height:44px;padding:9px 10px;font-size:10px}.content{max-width:620px;padding:28px 20px calc(91px + env(safe-area-inset-bottom))}.page-head{align-items:flex-start;flex-direction:column;gap:19px;margin-bottom:26px}.page-head>button{min-height:46px}.page-head p{font-size:13px;line-height:1.75}h1{font-size:34px;letter-spacing:-1.4px;line-height:1.14}h2{font-size:19px}.eyebrow{font-size:9px;margin-bottom:12px;letter-spacing:1.7px}.two,.three{grid-template-columns:minmax(0,1fr)}.four{gap:11px}.grid{gap:15px}.four.card,.four .card{padding:19px 17px}.card{padding:22px;border-radius:18px}.hero{padding:28px;margin-bottom:21px;border-radius:21px}.hero h2{font-size:31px;letter-spacing:-1px}.hero p{font-size:13px;line-height:1.75}.hero:after{width:240px;height:240px;right:-75px;bottom:-100px}.stat{font-size:30px;letter-spacing:-1px;margin:13px 0 7px}.stat-label{font-size:9px;letter-spacing:1.1px}.stat small{font-size:10px}.spacer{margin-top:23px}.item{gap:11px;padding:17px 0}.item>button{flex-shrink:0;padding-left:11px;padding-right:11px;font-size:11px}.item-main strong{font-size:13px}.item-main small{font-size:11px}label{font-size:12px;gap:8px}input,select,textarea{min-height:50px;font-size:16px}input[type=checkbox],input[type=radio]{min-height:22px;height:22px;width:22px}.check{min-height:47px;font-size:12px;line-height:1.65}.form-actions{margin-top:25px;padding-top:20px}.form-actions>button{flex:1}.auth{min-height:100dvh;grid-template-columns:minmax(0,1fr);align-content:start;gap:30px;padding:32px 22px 38px}.auth-intro{width:100%;max-width:440px;margin:0 auto}.auth .brand{margin-bottom:28px}.auth-intro h1{font-size:45px;letter-spacing:-2.3px;margin:17px 0 18px}.auth-intro p{margin-bottom:0;max-width:380px;font-size:13px}.auth .card{width:100%;max-width:440px;margin:0 auto;padding:25px;border-radius:22px}.auth .card>h2{font-size:23px}.auth .card>small{font-size:10px}.tabs{width:100%}.tabs button{flex:1;min-height:44px;padding:10px 8px;font-size:12px}.week{grid-template-columns:minmax(0,1fr);gap:15px}.day{min-height:0;padding:19px}.day h3{margin-bottom:12px;font-size:14px}.day>small{font-size:12px}.plan{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px 10px;padding:15px}.plan>small,.plan>strong,.plan>.check{grid-column:1 / -1}.plan>strong{font-size:14px}.plan>small{font-size:11px}.plan button{min-height:44px}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.photo.card{padding:12px}.photo img{height:180px;border-radius:9px}.photo p{font-size:11px}.photo button{width:100%;min-height:44px;font-size:11px}.dynamic-row .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dynamic-row{padding:16px}.dynamic-row button{min-height:44px}.set-row{grid-template-columns:17px minmax(0,1fr) minmax(0,1fr) 44px;gap:8px}.set-row input{padding-left:9px;padding-right:8px}.set-row label{font-size:10px}.session-card{padding:16px}#notice{bottom:calc(84px + env(safe-area-inset-bottom));font-size:12px;padding:13px 17px}footer{padding:31px 0 13px;font-size:9px}}@media(max-width:600px){.form-grid{grid-template-columns:minmax(0,1fr);gap:18px}.form-grid .full{min-width:0}.dynamic-row .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dynamic-row .form-grid>label:first-child{grid-column:1 / -1}.row.between{gap:17px}.row.between>label{flex:1 0 100%}.row.between>.row{width:100%}.row.between>.row>button{flex:1}.row.between>button{width:100%}.total-line{font-size:12px}}@media(max-width:374px){.topbar{padding-left:16px;padding-right:16px}.topbar .mobile-brand{font-size:16px}.topbar button{padding-left:8px;padding-right:8px;font-size:9px}.content{padding-left:15px;padding-right:15px}h1{font-size:30px}.card{padding:18px}.four .card{padding:17px 13px}.stat{font-size:27px}.hero{padding:23px}.item{flex-wrap:wrap}.item-main{flex-basis:calc(100% - 85px)}.item-main+button+button{margin-left:auto}.auth{padding-left:16px;padding-right:16px}.auth-intro h1{font-size:40px}.auth .card{padding:22px}.photo-grid{grid-template-columns:minmax(0,1fr)}.photo img{height:260px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media print{.sidebar,.mobile-nav,.topbar,.page-head>button,button,dialog,#notice,footer{display:none!important}.shell{display:block}body,.main,.card,.day,.plan{background:#fff!important;color:#000!important}.content{max-width:none;padding:0}.card,.day{break-inside:avoid;border-color:var(--line)}}.onboarding-banner{display:flex;justify-content:space-between;align-items:center;gap:22px;padding:19px 22px;margin-bottom:28px;border:1px solid var(--line);border-radius:16px;background:var(--surface);color:var(--ink);font-size:12px;line-height:1.8}.onboarding-banner strong{color:var(--ink)}.onboarding-banner button{flex-shrink:0}.welcome-card{position:relative;overflow:hidden;max-width:895px;padding:48px;margin:12px auto 0;border:1px solid var(--line);border-radius:28px;background:var(--surface);box-shadow:0 24px 70px #1b233b14}.welcome-card:after{content:"";position:absolute;right:-115px;bottom:-180px;width:420px;height:420px;border:1px solid var(--line);border-radius:50%;pointer-events:none}.welcome-card h1{position:relative;z-index:1;max-width:660px;margin:29px 0 25px;font-size:clamp(42px,4.9vw,65px);line-height:1.055;font-weight:580;letter-spacing:-2.9px}.welcome-card p{max-width:570px;color:var(--ink);font-size:15px;line-height:1.8}.welcome-card>small{position:relative;z-index:1;display:block;font-size:11px;color:var(--ink)}.welcome-card>.row{position:relative;z-index:1;margin-top:33px}.welcome-orbit{position:absolute;top:60px;right:49px;color:var(--ink);font-size:68px;line-height:1;font-weight:300;opacity:.85}.setup-promises{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:32px;padding:25px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.setup-promises div{display:grid;gap:8px;min-width:0}.setup-promises strong{color:var(--ink);font-size:12px;font-weight:650}.setup-promises small{font-size:11px;line-height:1.7;color:var(--ink)}.step-track{display:flex;max-width:900px;gap:8px;margin:0 0 24px}.step-track span{flex:1;height:4px;border-radius:8px;background:var(--surface)}.step-track .done{background:var(--accent)}.setup-card{max-width:900px;padding:31px}.setup-card>fieldset{border:0;padding:0;margin:0;min-width:0}.setup-card>fieldset:disabled{opacity:.75}.setup-card .four .card{padding:20px;background:var(--surface)}.setup-card .four{gap:13px}.setup-card h3.spacer{margin-top:31px}.choice-grid{display:grid;gap:12px}.choice{display:flex;align-items:flex-start;gap:15px;min-height:74px;padding:19px;border:1px solid var(--line);border-radius:14px;background:var(--surface);cursor:pointer}.choice.selected{border-color:var(--line);background:var(--surface);box-shadow:inset 3px 0 #1b233b14}.choice input{flex-shrink:0;width:21px;height:21px;min-height:21px;margin:1px 0;accent-color:var(--accent)}.choice span{display:grid;min-width:0;gap:7px}.choice strong{color:var(--ink);font-size:14px;font-weight:650;line-height:1.5}.choice small{font-size:12px;line-height:1.7}.choice>strong{padding-top:0}.day-picker{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:9px}.day-picker button{padding:12px 5px;font-size:12px}.estimate-details{padding:23px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.estimate-details h3{margin-bottom:14px}.estimate-details p{margin-bottom:12px;font-size:13px;line-height:1.95}.estimate-details small{font-size:11px}.source-list{padding-left:20px;font-size:11px;line-height:1.9;overflow-wrap:anywhere}.source-list li+li{margin-top:8px}.warn ul{padding-left:18px;margin:0}.warn li+li{margin-top:10px}dialog.modal-card{width:min(780px,calc(100vw - 48px));max-width:none;max-height:min(90dvh,950px);overflow:auto;overscroll-behavior:contain;margin:auto;padding:30px;border:1px solid var(--line);border-radius:23px;background:var(--surface);color:var(--ink);box-shadow:0 25px 100px #1b233b14}dialog.modal-card::backdrop{background:var(--surface);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}dialog.modal-card:not([open]){display:none}dialog.modal-card .form-actions{margin-bottom:0}.auth .card form{display:grid;gap:20px}progress{display:block;width:100%;height:6px;border:0;border-radius:20px;overflow:hidden;background:var(--surface);accent-color:var(--accent)}progress::-webkit-progress-bar{background:var(--surface);border-radius:20px}progress::-webkit-progress-value{background:var(--surface);border-radius:20px}progress::-moz-progress-bar{background:var(--surface);border-radius:20px}.section-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:15px;margin:29px 0 18px}.section-head h2,.section-head h3{margin-bottom:0}.section-head p{margin:7px 0 0;color:var(--muted);font-size:12px}.preference-tags{display:flex;flex-wrap:wrap;gap:9px;margin:13px 0 20px}.preference-tags .check{gap:9px;min-height:46px;padding:10px 13px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);font-size:12px}.preference-tags .check:has(input:checked),.preference-tags .selected{border-color:var(--line);background:var(--surface)}.preference-tags input{width:18px;height:18px;min-height:18px}.meal-plan-preview{display:grid;gap:15px;margin-top:18px}.meal-day{overflow:hidden;border:1px solid var(--line);border-radius:17px;background:var(--surface)}.meal-day>h3,.meal-day>header{margin:0;padding:16px 19px;border-bottom:1px solid var(--line);background:var(--surface);color:var(--ink);font-size:14px}.meal-day>.row{padding:16px 19px}.meal-day>.muted,.meal-day>small{display:block;margin:0;padding:12px 19px 16px;font-size:11px}.meal-recipe{min-width:0;padding:17px 19px;border-bottom:1px solid var(--line)}.meal-recipe:last-child{border-bottom:0}.meal-recipe>small:first-child{display:block;margin-bottom:7px;color:var(--ink);font-size:10px;font-weight:700;letter-spacing:.8px;text-transform:uppercase}.meal-recipe strong,.meal-recipe h4{display:block;margin:0 0 7px;color:var(--ink);font-size:13px;font-weight:650}.meal-recipe p{margin:7px 0 0;color:var(--ink);font-size:11px;line-height:1.7}.shopping-preview{padding:21px;margin-top:20px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.shopping-preview ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px;padding:0;margin:16px 0 0;list-style:none}.shopping-preview li{color:var(--ink);font-size:12px;line-height:1.7;overflow-wrap:anywhere}.shopping-preview .total-line{font-size:12px}.menu-nav{display:grid;gap:8px}.menu-nav button{justify-content:flex-start;gap:16px;width:100%;min-height:55px;border-color:var(--line);border-radius:12px;background:var(--surface);color:var(--ink);text-align:left}.menu-nav button.active{color:var(--ink);border-color:var(--line);background:var(--surface)}.menu-nav .nav-icon{display:inline-flex;width:22px;height:22px}@media(hover:hover)and (pointer:fine){.choice:hover{border-color:var(--line);background:var(--surface)}.choice.selected:hover{background:var(--surface)}.preference-tags .check:hover{border-color:var(--line)}}@media(max-width:1000px){.setup-promises{grid-template-columns:minmax(0,1fr);gap:18px;padding:23px 0}.setup-promises div{grid-template-columns:minmax(0,1fr);gap:5px}.welcome-orbit{right:35px;font-size:56px}}@media(max-width:760px){.welcome-card{padding:30px 26px;margin:0;border-radius:22px}.welcome-card h1{margin:27px 0 20px;font-size:43px;letter-spacing:-2px}.welcome-card p{max-width:370px;font-size:13px;line-height:1.85}.welcome-orbit{top:32px;right:26px;font-size:37px}.welcome-card>.row{gap:10px;margin-top:26px}.welcome-card>.row>button{flex:1;padding-left:10px;padding-right:10px;font-size:12px}.welcome-card>small{font-size:10px}.setup-promises{gap:20px;margin-top:26px}.setup-promises strong{font-size:12px}.setup-promises small{font-size:11px}.onboarding-banner{align-items:flex-start;flex-direction:column;gap:14px;padding:19px;margin-bottom:25px}.onboarding-banner button{min-height:44px;font-size:12px}.setup-card{padding:24px}.setup-card .four{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.setup-card .four .card{padding:18px 15px;border-radius:13px}.setup-card .four .stat{margin-bottom:0}.setup-card h3.spacer{margin-top:28px}.choice{min-height:77px;padding:17px 16px;gap:13px}.choice strong{font-size:13px}.choice small{font-size:11px}.choice input{width:21px;height:21px;min-height:21px;margin-top:0}.day-picker{gap:6px}.day-picker button{min-height:46px;padding:10px 1px;border-radius:9px;font-size:10px}.estimate-details{padding:19px}.estimate-details p{font-size:12px}.estimate-details small{font-size:10px}.source-list{font-size:11px}.preference-tags{gap:8px}.preference-tags .check{min-height:46px;font-size:11px;padding:10px 11px}.meal-plan-preview{gap:13px}.meal-day>h3,.meal-day>header{padding:15px 17px;font-size:13px}.meal-recipe{padding:16px 17px}.meal-recipe strong{font-size:12px}.shopping-preview{padding:18px}.shopping-preview ul{grid-template-columns:minmax(0,1fr);gap:11px}.section-head{align-items:flex-start;gap:12px}}@media(max-width:600px){dialog.modal-card{position:fixed;inset:auto 0 0;width:100%;max-width:100%;max-height:calc(100dvh - 22px - env(safe-area-inset-top));margin:0;padding:24px 21px calc(23px + env(safe-area-inset-bottom));border-width:1px 0 0;border-radius:25px 25px 0 0;box-shadow:0 -20px 100px #1b233b14}dialog.modal-card:before{content:"";display:block;width:36px;height:4px;margin:-11px auto 23px;border-radius:8px;background:var(--surface);opacity:.75}dialog.modal-card .dialog-head{margin-bottom:23px;gap:15px}dialog.modal-card .dialog-head h2{font-size:21px}dialog.modal-card .form-actions{position:sticky;bottom:calc(-23px - env(safe-area-inset-bottom));z-index:1;padding:18px 0 calc(5px + env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--line)}.menu-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.menu-nav button{flex-direction:column;align-items:flex-start;justify-content:center;gap:12px;min-height:94px;padding:15px;font-size:12px}}@media(max-width:374px){.welcome-card{padding:27px 22px}.welcome-card h1{font-size:38px;letter-spacing:-1.9px}.welcome-orbit{right:22px;top:30px;font-size:31px}.welcome-card>.row{flex-direction:column;align-items:stretch}.setup-card{padding:20px}.setup-card .four .card{padding:16px 12px}.day-picker{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.day-picker button{font-size:11px}dialog.modal-card{padding-left:17px;padding-right:17px}}fieldset{min-width:0;margin:0;padding:0;border:0}legend{max-width:100%}.skip-link{position:fixed;z-index:100;top:12px;left:16px;padding:12px 18px;border-radius:10px;background:var(--surface);color:var(--ink);font-weight:700;text-decoration:none;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0);outline:3px solid var(--line);outline-offset:4px}main[tabindex="-1"]:focus{outline:none}.loading{justify-items:center}.loading:before{display:none}.loading .brand{margin-bottom:3px}.loading p{margin:0}.loading-spinner{display:block;width:29px;height:29px;border:2px solid var(--line);border-top-color:var(--accent);border-radius:50%;animation:loading-spin 1s linear infinite}.sync-status{color:var(--ink);font-size:11px;white-space:nowrap}.icon-button{flex-shrink:0;gap:8px}button.avatar-button{width:44px;height:44px;min-height:44px;padding:0;border:1px solid var(--line);border-radius:50%;background:var(--surface);color:var(--ink);font-size:14px;font-weight:750}.connection-banner{margin-bottom:23px}.preference-section{margin-top:26px;padding:19px;border:1px solid var(--line);border-radius:15px;background:var(--surface)}.preference-section legend{padding:0 8px;color:var(--ink);font-size:13px;font-weight:650}.preference-section .field-note{margin:4px 0 13px}.preference-section .preference-tags{margin-bottom:0}.preference-section input[type=search]{margin-top:3px}summary{cursor:pointer;min-height:44px;color:var(--ink);font-size:13px;font-weight:650;line-height:1.6}summary:focus-visible{border-radius:4px}.preference-section>summary,.meal-day>summary,.shopping-preview>summary{position:relative;display:flex;align-items:center;justify-content:space-between;gap:11px;min-height:44px;padding-right:26px;list-style:none}.preference-section>summary::-webkit-details-marker,.meal-day>summary::-webkit-details-marker,.shopping-preview>summary::-webkit-details-marker{display:none}.preference-section>summary:after,.meal-day>summary:after,.shopping-preview>summary:after{content:"";position:absolute;top:50%;right:4px;width:7px;height:7px;margin-top:-5px;border-right:1.5px solid var(--line);border-bottom:1.5px solid var(--line);transform:rotate(45deg)}.preference-section[open]>summary:after,.meal-day[open]>summary:after,.shopping-preview[open]>summary:after{transform:rotate(225deg);margin-top:-1px}.preference-section[open]>summary,.shopping-preview[open]>summary{margin-bottom:17px}.nutrition-summary{display:grid;gap:8px;padding:20px 22px;margin:0 0 5px;border:1px solid var(--line);border-radius:15px;background:var(--surface)}.nutrition-summary strong{color:var(--ink);font-size:22px;font-weight:650;letter-spacing:-.6px}.nutrition-summary span{color:var(--ink);font-size:12px;line-height:1.8}.nutrition-summary small{color:var(--ink);font-size:10px}.meal-plan-preview .section-head{margin:0 0 2px}.meal-plan-preview>.field-note{margin-bottom:0}.meal-day>summary{min-height:70px;padding:17px 48px 17px 19px;background:var(--surface)}.meal-day>summary:after{right:21px}.meal-day>summary strong{color:var(--ink);font-size:13px}.meal-day>summary span{color:var(--ink);font-size:11px;font-weight:450}.meal-day[open]>summary{border-bottom:1px solid var(--line)}.meal-day-body{display:grid}.meal-day-body .meal-recipe{display:flex;align-items:center;justify-content:space-between;gap:20px}.meal-recipe>div{min-width:0}.meal-recipe .eyebrow{display:block;margin-bottom:7px;font-size:9px}.meal-recipe>div>small{display:block;font-size:11px;line-height:1.7}.meal-recipe>button{flex-shrink:0;min-height:44px;padding:9px 12px;font-size:11px;background:var(--surface)}.meal-recipe>button app-icon{font-size:16px}.shopping-preview{margin-top:0}.shopping-preview>.field-note{margin-top:13px}.week-navigation{display:flex;align-items:flex-end;gap:10px;min-width:0}.week-navigation>label{flex:1;min-width:0}.week-navigation>button{width:46px;height:48px;padding:0;border-radius:11px}.week-navigation input{max-width:220px}.recipe-instructions{white-space:pre-line;color:var(--ink);font-size:13px;line-height:1.95}.menu-nav button[aria-current=page]{color:var(--ink);border-color:var(--line);background:var(--surface)}@media(max-width:760px){.desktop-label{display:none}.topbar button.icon-button{width:44px;min-width:44px;height:44px;padding:0}.sync-status{max-width:66px;font-size:10px}.auth{gap:25px;padding-top:25px}.auth .brand{margin-bottom:21px}.auth .eyebrow{margin-top:0;margin-bottom:9px;font-size:9px}.auth-intro h1{margin:14px 0 13px;font-size:35px;line-height:1.08;letter-spacing:-1.7px}.auth-intro p{font-size:12px;line-height:1.7}.auth .card{padding-top:24px}.auth .card>h2{margin-bottom:22px}.auth form{gap:17px}.preference-section{padding:17px}.preference-section>summary{align-items:flex-start;flex-wrap:wrap;min-height:44px;font-size:12px}.preference-section>summary .pill{font-size:9px}.nutrition-summary{gap:6px;padding:18px}.nutrition-summary strong{font-size:22px}.nutrition-summary span{font-size:11px}.meal-day>summary{align-items:flex-start;flex-direction:column;gap:5px;padding:16px 43px 16px 17px}.meal-day>summary strong{font-size:13px}.meal-day>summary span{font-size:10px}.meal-day>summary:after{right:19px}.meal-day-body .meal-recipe{gap:13px}.meal-recipe>button{padding:9px 10px}.week-navigation{width:100%;gap:8px}.week-navigation input{max-width:none}.week-navigation>button{width:44px;height:50px;flex:0 0 44px}.recipe-instructions{font-size:12px}}@media(max-width:374px){.auth-intro h1{font-size:32px;letter-spacing:-1.6px}.auth .brand{font-size:22px}.auth{gap:23px}.meal-day-body .meal-recipe{align-items:flex-start;flex-direction:column}.meal-recipe>button{margin-top:3px}.preference-section{padding:15px}.preference-tags .check{padding-left:10px;padding-right:10px}.shopping-preview>summary{flex-wrap:wrap;font-size:12px}}.plan-brief{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:22px;padding:23px 25px}.plan-brief .section-head{width:100%;align-items:center;flex-wrap:nowrap;gap:24px;margin:0}.plan-brief .section-head>div:first-child{flex:1;min-width:0}.plan-brief h2{font-size:20px;letter-spacing:-.55px;margin-bottom:7px}.plan-brief p{margin-bottom:0;color:var(--muted);font-size:12px;line-height:1.7}.plan-brief .eyebrow{margin-bottom:8px}.plan-brief button{font-size:12px;white-space:nowrap}@media(max-width:760px){.plan-brief{align-items:flex-start;flex-direction:column;gap:18px;padding:21px;margin-top:20px}.plan-brief .section-head{align-items:flex-start;flex-direction:column;gap:17px}.plan-brief h2{font-size:20px}.plan-brief p{font-size:12px}.plan-brief>.row,.plan-brief .section-head>.row{width:100%;gap:9px}.plan-brief .row>button{flex:1;min-height:46px;padding-left:10px;padding-right:10px;font-size:11px}}.week-day-picker{display:none}@media(max-width:760px){.week-day-picker{display:flex;gap:8px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scroll-padding-inline:3px;scrollbar-width:thin;scrollbar-color:var(--accent) transparent;padding:4px 3px 10px;margin:21px -3px 0;-webkit-overflow-scrolling:touch}.week-day-picker button{display:flex;flex:0 0 56px;flex-direction:column;justify-content:center;gap:5px;min-width:56px;min-height:67px;padding:10px 4px;border-color:var(--line);border-radius:13px;background:var(--surface);color:var(--ink);font-size:10px;line-height:1.2;scroll-snap-align:start}.week-day-picker button strong{font-size:19px;font-weight:650;letter-spacing:-.5px}.week-day-picker button small{color:inherit;font-size:10px;line-height:1.2}.week-day-picker button.active{border-color:var(--line);background:var(--surface);color:var(--ink)}.week-day-picker button.active strong,.week-day-picker button.active small{color:var(--ink)}.week:has(>.selected-day)>.day:not(.selected-day){display:none}.week-day-picker+.week{margin-top:13px}}body{background:var(--cream);color:var(--ink)}button{background:var(--surface);border-color:var(--control-line);color:var(--ink);box-shadow:0 2px 3px #1b233b05;font-weight:600}button.primary{background:var(--ink);border-color:var(--ink);color:#fffdf8;font-weight:650}button.ghost{background:transparent;border-color:#989fad;color:var(--ink);box-shadow:none}button.danger{background:#fcf0e9;border-color:#a46456;color:var(--danger)}a{color:var(--ink);text-decoration-color:#a67f35}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline-color:#916a24}h1{color:var(--ink);font-weight:570;letter-spacing:-1.55px}h2,h3{color:var(--ink);font-weight:620}.muted,small,.field-note,.page-head p,footer{color:var(--muted)}.eyebrow{display:flex;align-items:center;gap:9px;color:#4b5567;font-size:10px;letter-spacing:1.5px;font-weight:700}.eyebrow:before{content:"";display:inline-block;width:17px;height:1px;background:#bd9448;flex-shrink:0}.brand{color:var(--ink);letter-spacing:-1px}.brand span{color:#725b2e}.brand-logo{display:block;width:152px;max-width:100%;height:auto;object-fit:contain}.brand-emblem{display:block;width:40px;height:40px;object-fit:contain;flex-shrink:0}.sidebar{padding-top:32px;background:#f2eee5;border-right-color:#ded9cc}.sidebar .brand{padding-left:14px}.sidebar .brand-logo{width:151px}.sidebar-bottom{color:var(--muted);border-top-color:#d9d5c9}.sidebar-bottom button{background:transparent;border-color:#9299a5}.nav{gap:8px}.nav button{color:#495267;font-size:13px;font-weight:550;background:transparent;box-shadow:none}.nav button.active{color:var(--ink);border-color:#d8c8a7;background:#eae2d1;box-shadow:inset 3px 0 #aa813b;font-weight:700}.nav-icon{opacity:.92}.topbar{min-height:82px;border-bottom-color:#dfdbd1;background:#fffdf87a}.topbar small{color:#536074;font-size:10px;letter-spacing:1.15px}.topbar button{border-color:#9aa2ad;color:var(--ink);background:transparent}button.avatar-button{color:var(--ink);border-color:#c5ae82;background:#e9ddc7}.sync-status{color:#515d44}.content{max-width:1350px;padding-top:35px}.page-head{margin-bottom:27px}.page-head p{max-width:610px;font-size:14px}.card{background:var(--surface);border-color:var(--line);border-radius:20px;box-shadow:0 4px 15px #1b233b05}.grid.four>.card{background:#f1e9da;border-color:#e1d9c9}.grid.four>.card:nth-child(2){background:#e8edde;border-color:#d8dfcf}.grid.four>.card:nth-child(3){background:#f5e7dc;border-color:#e9d7c8}.grid.four>.card:nth-child(4){background:#eae8ef;border-color:#dcd8e4}.stat{color:var(--ink);font-weight:620}.stat small,.stat-label{color:#4b5567}progress{background:#ddd5c3;accent-color:#a37d36}progress::-webkit-progress-bar{background:#1b233b1a}progress::-webkit-progress-value{background:#84672f}progress::-moz-progress-bar{background:#84672f}.progress{background:#ded8cb}.progress div{background:#8c713b}label{color:#303b50}input,select,textarea{color:var(--ink);background:#fffefa;border-color:var(--control-line);box-shadow:inset 0 1px 2px #1b233b05}input::placeholder,textarea::placeholder{color:#5c6675;opacity:1}input:hover,select:hover,textarea:hover{border-color:#606e82}input:focus,select:focus,textarea:focus{border-color:#896a2d}input[type=checkbox],input[type=radio]{accent-color:#26354b}input::file-selector-button{color:var(--ink);background:#ece6d8}.item,.form-actions,.total-line{border-color:#e0ddd4}.pill{background:var(--sage);border-color:#cbd4be;color:#37442d;font-size:10px}.empty{color:#4f5c70;background:#f6f3eb;border:1px dashed #c8ccbf;border-radius:13px;margin:12px 0 18px;padding:26px 15px}.tabs{border-color:#d9d4c6;background:#ede8dc;box-shadow:none;gap:3px}.tabs button{background:transparent;color:#485268;font-weight:600}.tabs button.selected{background:var(--surface);color:var(--ink);border-color:#ddd6c4;box-shadow:0 2px 7px #1b233b0d}.warn{background:#f7efdf;border-color:#bca374;color:#58451f}.warn.error{background:#f9eae3;border-color:#b57a69;color:#873b2c}.recovery{color:var(--ink);background:#f0eadc;border-color:#c5b795}#notice{color:#223522;background:#e4ecd9;border-color:#a2b791;box-shadow:0 8px 28px #1b233b1f}#notice.error{color:#78372e;background:#f8e2d8;border-color:#ba8b7c}.skip-link{color:#fffdf8;background:var(--ink)}.skip-link:focus{outline-color:#916a24}.loading{background:var(--cream)}.loading .brand-logo{width:160px}.loading-spinner{border-color:#dfd7c6;border-top-color:#a07c37}.chart polyline{stroke:#344d50}.chart circle{fill:#a37d36}.chart line{stroke:#dad6cb}.photo img{background:#eee9df}.food-results button{background:#f0f2e8;border-color:#a2ac96;color:var(--ink)}.food-results button:focus{border-color:#596b4c}.session-card,.dynamic-row{background:#f5f2ea;border-color:#d5d5c8}.session-card h3{border-color:#dedbd0}.plan{color:var(--ink);border-color:#cbd6bf;background:#edf1e6}.plan>small{color:#4d5e43}.day{border-color:#d8d5c9;background:var(--surface)}.day h3{color:var(--ink)}.day>small{color:var(--muted)}.checked{color:#55664b}.hero{border-color:#d3d6c2;background:#e9eedf}.hero:after{border-color:#bec99d}.hero p{color:#47563c}.hero h2{font-weight:550}.plan-brief{background:#ecefdf;border-color:#cfd5bc}.plan-brief p{color:#4e5a42}.onboarding-banner{color:#48553b;background:#eaf0df;border-color:#b7c79e}.onboarding-banner strong{color:#2d3c25}.welcome-card{background:#ecefdf;border-color:#cdd3b8;box-shadow:0 12px 40px #1b233b08}.welcome-card:after{border-color:#c9d1ad}.welcome-card h1{color:var(--ink);font-family:Iowan Old Style,Palatino Linotype,Georgia,serif;font-weight:400;letter-spacing:-1.4px;line-height:1.06}.welcome-card p{color:#4b573e}.welcome-card>small{color:#4b573e}.welcome-orbit{color:#96702e}.setup-promises{border-color:#c4ccb0}.setup-promises strong{color:#2d3b28}.setup-promises small{color:#4b573e}.step-track span{background:#ddd7c9}.step-track .done{background:#9d7b38}.setup-card .four .card{background:#f3eddf;border-color:#ded4bd}.setup-card .four .card:nth-child(2){background:#e9eedf}.setup-card .four .card:nth-child(3){background:#f7e9de}.setup-card .four .card:nth-child(4){background:#ece9ef}.choice{color:var(--ink);border-color:#a8b09f;background:#fffdf8}.choice.selected{border-color:#998047;background:#f2ead9;box-shadow:inset 3px 0 #a78139}.choice strong{color:var(--ink)}.choice small{color:#4c5768}.day-picker button{color:var(--ink);border-color:#979eaa;background:var(--surface)}.day-picker button.primary{color:#fffdf8;border-color:var(--ink);background:var(--ink)}.estimate-details{background:#f4efe4;border-color:#cdbf9b}.estimate-details p{color:#384357}.estimate-details small{color:#4e5867}.preference-section{background:#f4f2e9;border-color:#c8d0b9}.preference-section legend{color:#35412d}.preference-tags .check{color:#3c4834;background:#fffdf8;border-color:#9ca88e}.preference-tags .check:has(input:checked),.preference-tags .selected{color:#263520;border-color:#7e9566;background:#e3ebd8}summary{color:#29354c}.preference-section>summary:after,.meal-day>summary:after,.shopping-preview>summary:after{border-color:#6f755c}.nutrition-summary{background:#eee8da;border-color:#cdbb93}.nutrition-summary strong{color:var(--ink)}.nutrition-summary span,.nutrition-summary small{color:#4c5363}.meal-day{border-color:#cdd3bf;background:#fffdf8}.meal-day>summary{background:#ebefdf}.meal-day>summary strong{color:#293a29}.meal-day>summary span{color:#4b5942}.meal-day[open]>summary{border-bottom-color:#ced6bc}.meal-recipe{border-color:#e1dfd3}.meal-recipe strong,.meal-recipe h4{color:var(--ink)}.meal-recipe p,.meal-recipe>div>small{color:#505c6e}.meal-recipe .eyebrow{color:#5a644c}.meal-recipe>button{background:#f3f1e7;border-color:#9ba38b;color:#33432e}.shopping-preview{background:#f4f0e5;border-color:#d3c7a9}.shopping-preview li{color:#3d485c}.recipe-instructions{color:#39455a}.menu-nav button{background:#f4f2e9;border-color:#b7bfaa;color:var(--ink)}.menu-nav button.active,.menu-nav button[aria-current=page]{background:#eae2d0;color:var(--ink);border-color:#ac925c}dialog,dialog.modal-card{color:var(--ink);background:#fffdf8;border-color:#d0c7b2;box-shadow:0 25px 100px #1b233b3d}dialog::backdrop,dialog.modal-card::backdrop{background:#151d2e75}dialog.modal-card:before{background:#b1ad9c}dialog.modal-card .form-actions{background:#fffdf8;border-top-color:#ddd7c8}.auth{gap:80px}.auth-intro h1{color:var(--ink);font-family:Iowan Old Style,Palatino Linotype,Georgia,serif;font-weight:400;letter-spacing:-1.4px}.auth-intro p{color:#4c586b}.auth .brand{margin-bottom:33px}.auth .brand-logo{width:170px}.auth .card{background:#fffdf8;border-color:#d8d1c0;box-shadow:0 16px 60px #1b233b0d}.auth .card>h2{font-weight:580}.auth .card>small{border-color:#e3ded1}.auth-links button{color:#344257}.auth-visual{position:relative;display:block;width:100%;height:255px;max-width:440px;overflow:hidden;object-fit:cover;margin-top:27px;border-radius:120px 120px 18px 18px;background:#e7e7d9}.auth-visual img{display:block;width:100%;height:100%;object-fit:cover}.auth-visual-caption{position:absolute;right:18px;bottom:17px;left:18px;max-width:280px;padding:11px 14px;border-radius:11px;background:#fffdf8eb;color:#303b50;font-size:11px}.welcome-visual{display:block;width:100%;height:260px;object-fit:cover;margin:28px 0 0;border:1px solid #cad1b9;border-radius:18px;background:#e2e7d5}.welcome-visual img{display:block;width:100%;height:100%;object-fit:cover;border-radius:inherit}.wellness-card{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) 38%;gap:25px;padding:25px;border:1px solid #d9d2c2;border-radius:21px;background:#efe8da}.wellness-card h2{margin-bottom:10px;font-size:24px}.wellness-card p{color:#525966;font-size:13px}.wellness-image{width:100%;height:100%;min-height:150px;object-fit:cover;border-radius:16px}.discovery-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) 43%;min-height:245px;margin:0 0 27px;border:1px solid #d8d0bc;border-radius:23px;background:#eae4d4}.discovery-hero>div:first-child{align-self:center;padding:32px}.discovery-hero h2{max-width:410px;margin-bottom:13px;color:#233049;font-family:Iowan Old Style,Palatino Linotype,Georgia,serif;font-size:clamp(29px,3vw,38px);font-weight:400;line-height:1.12;letter-spacing:-.8px}.discovery-hero p{max-width:450px;margin-bottom:0;color:#4b5567;font-size:13px;line-height:1.8}.discovery-hero>img,.discovery-hero .discovery-image{width:100%;height:100%;min-height:245px;object-fit:cover}.recipe-search{display:flex;align-items:flex-end;gap:13px;margin-bottom:18px}.recipe-search label{flex:1;min-width:0}.recipe-search input{background:#fffdf8;padding-left:16px}.filter-chips{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 25px}.filter-chips button{min-height:44px;padding:9px 15px;border-color:#a2aa99;border-radius:99px;background:#f9f7ef;color:#3e4c35;font-size:12px;white-space:nowrap;box-shadow:none}.filter-chips button.active,.filter-chips button.selected{border-color:#35472f;background:#35472f;color:#fffdf8}.recipe-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.recipe-card{min-width:0;overflow:hidden;display:flex;flex-direction:column;border:1px solid #ddd7c9;border-radius:19px;background:#fffdf8;box-shadow:0 4px 17px #1b233b08}.recipe-image{display:block;position:relative;overflow:hidden;width:100%;height:193px;object-fit:cover;background:#ece8dc}.recipe-image img{display:block;width:100%;height:100%;object-fit:cover}.recipe-image .pill{position:absolute;left:14px;bottom:14px;padding:6px 10px;background:#fffdf8f0;border-color:#e6e0d0;color:#3e4a34}.recipe-card-body{display:flex;flex:1;flex-direction:column;min-width:0;padding:20px}.recipe-card h3,.recipe-card h2{margin:0 0 10px;font-size:18px;line-height:1.3;font-weight:620;letter-spacing:-.4px}.recipe-card p{margin:0 0 14px;color:#4c586b;font-size:12px;line-height:1.75}.recipe-meta{display:flex;flex-wrap:wrap;align-items:center;gap:7px 15px;color:#455168;font-size:11px;font-weight:550;line-height:1.6}.recipe-meta>span{display:inline-flex;align-items:center;gap:6px}.recipe-tags{display:flex;flex-wrap:wrap;gap:7px;margin:13px 0 0}.recipe-tags span,.recipe-tags .pill{padding:4px 8px;border:1px solid #d4dac7;border-radius:7px;background:#edf1e5;color:#405034;font-size:10px;line-height:1.4}.recipe-card-actions{display:flex;gap:9px;margin-top:auto;padding-top:19px}.recipe-card-actions button{flex:1;min-height:44px;padding:10px 11px;font-size:11px}.recipe-card-actions button:not(.primary){background:#f5f1e6;border-color:#9e9e8a}.recipe-detail-image{display:block;width:100%;max-height:270px;object-fit:cover;border-radius:16px;margin:0 0 23px;background:#eae4d6}.recipe-discovery>.empty{padding:42px 22px}@media(hover:hover)and (pointer:fine){button:not(:disabled):hover{color:var(--ink);border-color:#8b7955;background:#eee7d8}button.primary:not(:disabled):hover{color:#fffdf8;border-color:#34455e;background:#34455e;box-shadow:0 3px 12px #1b233b1f}button.ghost:not(:disabled):hover{background:#eee8da}button.danger:not(:disabled):hover{color:#7e2d24;background:#f4dbd0;border-color:#9e6759}.nav button:not(:disabled):hover{color:var(--ink);background:#e9e5da;border-color:#d3c8b0}.nav button.active:not(:disabled):hover{background:#e5d9bf}.choice:hover{border-color:#aa946b;background:#f6f1e4}.choice.selected:hover{background:#eee4d0}.preference-tags .check:hover{background:#edf1e3;border-color:#85966e}.filter-chips button.active:hover,.filter-chips button.selected:hover{background:#475c3d;border-color:#475c3d;color:#fffdf8}.recipe-card{transition:box-shadow .18s ease,border-color .18s ease}.recipe-card:hover{border-color:#c2b18b;box-shadow:0 9px 26px #1b233b12}}@media(max-width:1240px){.recipe-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.discovery-hero>div:first-child{padding:27px}.discovery-hero h2{font-size:31px}}@media(max-width:940px)and (min-width:761px){.auth{gap:35px}.auth-visual{height:215px}.recipe-grid,.discovery-hero{grid-template-columns:minmax(0,1fr)}.discovery-hero>img,.discovery-hero .discovery-image{height:220px;min-height:0}}@media(max-width:760px){.mobile-nav{background:#faf7eff5;border-top-color:#d5cfbf;box-shadow:0 -5px 22px #1b233b0d}.mobile-nav button{color:#4c586b;background:transparent;border-color:transparent;box-shadow:none}.mobile-nav button.active{color:var(--ink);background:#eae0cb;border-color:#d4c09b}.topbar{min-height:71px;background:#fffdf8b3}.topbar .mobile-brand{color:var(--ink);font-size:17px}.topbar .mobile-brand .brand-logo{width:118px;max-height:42px}.content{padding-top:26px}h1{font-size:32px;font-weight:560;letter-spacing:-1.3px}.eyebrow{font-size:9px;letter-spacing:1.35px}.page-head{margin-bottom:24px}.page-head p{font-size:13px}.card{border-radius:18px}.grid.four>.card{padding:19px 17px}.stat{font-weight:600}.stat-label{font-size:9px}.auth{gap:24px;padding-top:26px}.auth .brand{margin-bottom:20px}.auth .brand-logo{width:145px}.auth-intro h1{margin:15px 0 13px;font-size:37px;line-height:1.07;letter-spacing:-.9px}.auth-intro p{font-size:12px;line-height:1.7}.auth-visual{display:none}.auth .card{padding:24px;border-radius:21px}.auth .card>h2{font-size:23px}.welcome-card{padding:30px 25px;border-radius:21px}.welcome-card h1{font-size:44px;letter-spacing:-1px}.welcome-card p{font-size:13px}.welcome-card>small{color:#4b573e}.welcome-visual{height:200px;margin-top:24px;border-radius:15px}.welcome-orbit{color:#96702e}.setup-promises{border-color:#c4ccb0}.setup-card{padding:23px}.choice{border-color:#a8b09f}.choice.selected{border-color:#998047;background:#f2ead9}.preference-section{background:#f4f2e9}.preference-tags .check{color:#3c4834}.preference-tags .check:has(input:checked),.preference-tags .selected{background:#e3ebd8}.week-day-picker{scrollbar-color:#a48a52 transparent}.week-day-picker button{color:#485268;background:#fffdf8;border-color:#a9ac9f;box-shadow:none}.week-day-picker button.active{color:#fffdf8;border-color:var(--ink);background:var(--ink)}.week-day-picker button.active strong,.week-day-picker button.active small{color:#fffdf8}dialog.modal-card .form-actions{background:#fffdf8;border-top-color:#ddd7c8}.plan-brief{padding:21px}.wellness-card{grid-template-columns:minmax(0,1fr);padding:21px;gap:19px}.wellness-card h2{font-size:23px}.wellness-image{height:185px;min-height:0}.discovery-hero{grid-template-columns:minmax(0,1fr);margin-bottom:24px;border-radius:20px}.discovery-hero>div:first-child{padding:25px}.discovery-hero h2{max-width:360px;font-size:33px}.discovery-hero p{font-size:12px}.discovery-hero>img,.discovery-hero .discovery-image{height:210px;min-height:0;object-position:center 52%}.recipe-search{gap:10px}.recipe-search label{font-size:12px}.filter-chips{flex-wrap:nowrap;gap:8px;padding:3px 2px 9px;margin:15px -2px 19px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#b0ac99 transparent}.filter-chips button{flex-shrink:0;font-size:11px;min-height:44px;padding:9px 14px}.recipe-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.recipe-image{height:165px}.recipe-card-body{padding:18px}.recipe-card h3,.recipe-card h2{font-size:17px}.recipe-card p{font-size:11px}.recipe-meta{font-size:10px;gap:6px 12px}.recipe-card-actions{gap:8px;padding-top:17px}.recipe-card-actions button{font-size:10px;padding-left:8px;padding-right:8px}.recipe-detail-image{max-height:225px;margin-bottom:20px;border-radius:14px}}@media(max-width:520px){.recipe-grid{grid-template-columns:minmax(0,1fr);gap:20px}.recipe-image{height:205px}.recipe-card-body{padding:21px}.recipe-card h3,.recipe-card h2{font-size:20px}.recipe-card p{font-size:12px}.recipe-meta,.recipe-card-actions button{font-size:11px}}@media(max-width:374px){.topbar .mobile-brand .brand-logo{width:109px}.auth .brand-logo{width:135px}.auth-intro h1{font-size:34px;letter-spacing:-.9px}.welcome-card{padding:27px 22px}.welcome-card h1{font-size:40px}.setup-card{padding:20px}.discovery-hero>div:first-child{padding:22px}.discovery-hero h2{font-size:30px}.discovery-hero>img,.discovery-hero .discovery-image{height:180px}.recipe-image{height:185px}.recipe-card-body{padding:19px}}@media print{body,.main,.card,.day,.plan{background:#fff!important;color:#000!important}.recipe-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.recipe-card{break-inside:avoid}.recipe-card-actions,.filter-chips,.recipe-search{display:none}}.welcome-card .welcome-orbit{width:58px;height:58px;font-size:0;line-height:0;opacity:1}.welcome-card>.eyebrow{padding-right:70px}.recipe-filters{padding:18px;margin-bottom:3px;border:1px solid #d8d4c7;border-radius:15px;background:#fffdf8}label.recipe-search{display:grid;gap:8px}.discovery-hero p+button{margin-top:20px}.recipe-card-body>.recipe-meta{margin-bottom:12px;font-size:10px;letter-spacing:.45px;color:#485268}.recipe-pagination{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:12px;padding:20px 0 4px;border-top:1px solid #dad5c8}.recipe-pagination>span{color:#485268;font-size:12px;text-align:center}.recipe-pagination>button{width:fit-content;min-width:95px;font-size:12px}.recipe-pagination>button:last-child{justify-self:end}@media(max-width:760px){.welcome-card .welcome-orbit{top:29px;right:26px;width:52px;height:52px}.recipe-pagination{gap:9px}.recipe-pagination>button{width:100%;min-width:0;padding:10px 11px;font-size:11px}.recipe-pagination>span{font-size:11px}.recipe-filters{padding:17px}.discovery-hero{grid-template-columns:minmax(0,1fr) 36%;min-height:215px}.discovery-hero>div:first-child{padding:23px 21px}.discovery-hero h2{font-size:28px;margin-bottom:0}.discovery-hero .eyebrow{font-size:8px;letter-spacing:1px;gap:6px}.discovery-hero .eyebrow:before{width:11px}.discovery-hero p{display:none}.discovery-hero p+button{min-height:44px;margin-top:18px;padding:9px 10px;font-size:11px}.discovery-hero>img,.discovery-hero .discovery-image{height:100%;min-height:215px;object-position:53% center}}@media(max-width:600px){form.recipe-search{flex-direction:column;align-items:stretch;gap:11px}form.recipe-search>button{width:100%}.recipe-filters{grid-template-columns:minmax(0,1fr);gap:17px}}@media(max-width:374px){.welcome-card .welcome-orbit{top:29px;right:22px;width:46px;height:46px}.discovery-hero>div:first-child{padding:21px 18px}.discovery-hero h2{font-size:26px}.discovery-hero .eyebrow{letter-spacing:.6px}}.sidebar>.brand-logo{margin-left:14px}@media(max-width:760px){.auth-intro>.brand-logo{margin-bottom:15px}}.week-day-picker{display:flex;gap:10px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scroll-padding-inline:3px;scrollbar-width:thin;scrollbar-color:#a48a52 transparent;padding:4px 3px 10px;margin:23px -3px 0}.week-day-picker button{display:flex;flex:1 1 0;flex-direction:column;justify-content:center;gap:5px;min-width:56px;min-height:70px;padding:11px 7px;border:1px solid #a9ac9f;border-radius:13px;background:#fffdf8;color:#485268;box-shadow:none;font-size:10px;line-height:1.2;scroll-snap-align:start}.week-day-picker button strong{color:inherit;font-size:21px;font-weight:650;letter-spacing:-.5px}.week-day-picker button small{color:inherit;font-size:11px;line-height:1.2}.week-day-picker button.active{color:#fffdf8;border-color:var(--ink);background:var(--ink)}.week-day-picker button.active strong,.week-day-picker button.active small{color:#fffdf8}.week{display:block;margin-top:13px}.week:has(>.selected-day)>.day:not(.selected-day){display:none}.week>.day{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:18px;min-height:0;padding:23px}.week>.day>h3{grid-column:1 / -1;margin:0 0 3px;color:var(--ink);font-size:18px;letter-spacing:-.4px}.week>.day>small,.week>.day>button{grid-column:1 / -1}.week>.day>button{justify-self:start;width:fit-content;min-height:44px}.week>.day>.plan{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:9px 10px;min-width:0;padding:18px;margin:0;border-radius:14px}.week>.day>.plan>small,.week>.day>.plan>strong,.week>.day>.plan>.check{grid-column:1 / -1}.week>.day>.plan>small{font-size:11px}.week>.day>.plan>strong{min-width:0;margin:1px 0;font-size:15px;line-height:1.45}.week>.day>.plan>button{width:100%;min-height:44px;margin:0;padding:9px 7px;font-size:11px}.week>.day>.plan>.check{min-height:44px;margin:0;font-size:12px}@media(max-width:1100px){.week>.day{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.week-day-picker{gap:8px;margin-top:21px}.week-day-picker button{flex:0 0 56px;min-height:67px;padding:10px 4px}.week-day-picker button strong{font-size:19px}.week-day-picker button small{font-size:10px}.week>.day{grid-template-columns:minmax(0,1fr);gap:15px;padding:19px}.week>.day>h3{font-size:17px}.week>.day>.plan{padding:17px}.week>.day>.plan>strong{font-size:14px}}@media(max-width:374px){.week>.day{padding:16px}.week>.day>.plan{padding:15px;gap:8px}.week>.day>.plan>button{font-size:10px}}@media(max-width:760px){.discovery-hero{min-height:150px;grid-template-columns:minmax(0,1fr) 36%;margin-bottom:21px}.discovery-hero>div:first-child{padding:18px}.discovery-hero h2{font-size:25px;line-height:1.12;letter-spacing:-.55px;margin-bottom:0}.discovery-hero .eyebrow{margin-bottom:11px;font-size:10px;line-height:1.4;letter-spacing:.45px;gap:6px}.discovery-hero .eyebrow:before{width:10px}.discovery-hero>img,.discovery-hero .discovery-image{height:100%;min-height:150px;object-position:53% center}}@media(max-width:374px){.discovery-hero>div:first-child{padding:17px}.discovery-hero .eyebrow{font-size:9px;letter-spacing:.2px}.discovery-hero h2{font-size:25px}}.training-hero{display:grid;grid-template-columns:1.2fr 1fr;background:#e8eee7;border:1px solid var(--line);border-radius:22px;overflow:hidden;min-height:240px}.training-hero>div{padding:30px;align-self:center}.training-hero h2{font-size:30px;margin-bottom:12px;letter-spacing:-1px}.training-hero p{color:var(--muted);max-width:440px}.training-hero>img{width:100%;height:100%;max-height:320px;object-fit:cover}.exercise-filters{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:12px}.exercise-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:start}.exercise-card{min-width:0;background:var(--surface);border:1px solid var(--line);border-radius:18px;overflow:hidden}.exercise-card-image{display:block;width:100%;height:155px;object-fit:cover}.exercise-card-content{padding:20px}.exercise-card h3{font-size:20px;margin:16px 0 8px}.exercise-card-content>p{font-size:13px;margin-bottom:12px}.exercise-card-content>.primary{width:100%;margin-top:16px}.exercise-card-content .pill{text-transform:capitalize;font-size:10px}.exercise-equipment{display:block}.exercise-guide{margin:12px 0}.exercise-guide>summary{cursor:pointer;color:var(--ink);font-weight:650;min-height:44px;align-content:center;font-size:12px}.exercise-guide[open]>summary{margin-bottom:8px}.exercise-guide-content{font-size:13px;line-height:1.65}.exercise-guide-content h4{margin:20px 0 8px;font-size:13px}.exercise-guide-content p{margin-bottom:12px}.exercise-guide-content ol,.exercise-guide-content ul{padding-left:21px}.exercise-guide-content li{margin-bottom:10px}.exercise-guide-content a{color:var(--ink)}.exercise-guide-figure{margin:0 0 16px}.exercise-guide-figure img{width:100%;height:auto;max-height:300px;object-fit:contain;border-radius:12px}.exercise-guide-figure figcaption{font-size:10px;color:var(--muted)}.workout-exercise{padding:15px 0;border-bottom:1px solid var(--line)}.workout-exercise>strong,.workout-exercise>small{display:block}.workout-exercise>small{margin-top:5px}.workout-exercise .exercise-guide{margin-bottom:0;margin-top:4px}.training-guidance h2{font-size:19px}.guidance-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 24px}.guidance-grid h3,.guidance-grid h4{font-size:12px;text-transform:capitalize;margin:0 0 6px}.guidance-grid p{font-size:12px;color:var(--muted);margin:0}.training-day-picker{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.training-day-picker button{padding:8px 2px;font-size:12px}.training-day-picker button.selected{background:var(--ink);border-color:var(--ink);color:#fff}.training-preview{padding:20px;background:#edf2e9;border:1px solid var(--line);border-radius:15px}.training-preview-day{border-bottom:1px solid var(--line);padding:12px 0}.training-preview-day>summary,.training-safety>summary{cursor:pointer;min-height:44px;align-content:center;font-weight:650}.training-safety .checkbox{margin:12px 0}@media(max-width:1100px){.exercise-grid,.exercise-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.training-hero{grid-template-columns:1.35fr 1fr;min-height:190px}.training-hero>div{padding:19px}.training-hero h2{font-size:23px}.training-hero .eyebrow{font-size:8px}.training-hero p{font-size:12px;line-height:1.6;margin-bottom:12px}.training-hero button{font-size:11px;padding:9px 10px}.training-hero>img{max-height:none}.exercise-grid{grid-template-columns:1fr}.exercise-card-image{height:190px}.exercise-filters>label:first-child{grid-column:1/-1}.exercise-filters{gap:10px}.exercise-filters label{font-size:11px}.guidance-grid{grid-template-columns:1fr;gap:12px}.training-preview{padding:15px}.training-day-picker{gap:4px}.training-day-picker button{font-size:11px;min-width:0}.workout-card .row.spacer>button{flex:1}}.checkbox{display:flex;align-items:flex-start;gap:12px;font-weight:500;min-height:44px;line-height:1.7}.checkbox input{margin-top:3px}.food-divider{border:0;border-top:1px solid var(--line);margin:24px 0}.training-plan-notes>summary{cursor:pointer;min-height:44px;align-content:center;font-weight:650;font-size:13px}.training-plan-notes[open]>summary{margin-bottom:14px}.recipe-photo{display:block;width:100%;height:100%;min-width:0;overflow:hidden}.matched-recipe-image{display:block;width:100%;height:100%;object-fit:cover}.recipe-photo-empty,.recipe-ingredient-mosaic{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;width:100%;height:100%;min-height:110px;background:#eeeae0;color:#536046;padding:18px}.recipe-ingredient-mosaic>span{width:100%;text-align:center;font-size:11px}.recipe-photo-empty{flex-direction:column}.ingredient-photo{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;flex:0 0 48px;overflow:hidden;border-radius:11px;border:1px solid #e1dbce;background:#fff}.ingredient-photo>img{display:block;width:100%;height:100%;object-fit:contain}.food-photo-empty{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background:#f0ece3;color:#73796d}.ingredient-name{display:flex;align-items:center;gap:13px;min-width:0}.ingredient-line{gap:14px}.ingredient-line>strong{flex-shrink:0}.recipe-detail-image{height:290px;max-height:none;overflow:hidden;background:#f2eee6}.saved-recipe-photo{height:165px;margin-bottom:18px;overflow:hidden;border-radius:13px;background:#f2eee6}.planned-recipe-photo{height:135px;width:100%;margin-bottom:12px;overflow:hidden;border-radius:10px}.food-results button>span{display:block;min-width:0}.food-results button small{display:block;margin-top:4px;font-weight:400}.food-results button{gap:13px}.check .ingredient-photo{width:38px;height:38px;flex-basis:38px}footer a{display:inline-block;margin-top:8px;color:var(--ink)}@media(max-width:640px){.recipe-detail-image{height:230px}.ingredient-name{gap:10px}.ingredient-line .ingredient-photo{width:42px;height:42px;flex-basis:42px}.ingredient-line>strong{font-size:11px}.ingredient-line .ingredient-name>span{overflow-wrap:anywhere}.recipe-ingredient-mosaic{gap:7px}.recipe-ingredient-mosaic .ingredient-photo{width:42px;height:42px;flex-basis:42px}.grocery-photo-list .item{flex-wrap:wrap}.grocery-photo-list .item>.item-main{flex-basis:100%}.grocery-photo-list .item>button:first-of-type{margin-left:auto}}app-exercise-form{display:block;min-width:0}.exercise-photos{display:grid;grid-template-columns:1fr;gap:18px;padding:12px;background:#f6f1e8;border-radius:13px}.exercise-photos figure{margin:0;min-width:0}.exercise-photos img{display:block;width:100%;height:auto;max-height:480px;object-fit:contain;background:#fffdf8;border-radius:10px}.exercise-photos figcaption{display:grid;gap:4px;font-size:12px;line-height:1.5;margin:10px 0 2px;color:var(--ink);overflow-wrap:anywhere}.exercise-photos figcaption>span{font-weight:650}.exercise-photos figcaption a{color:var(--muted);text-decoration:underline;text-underline-offset:3px;min-height:44px;align-content:center}.exercise-photos.compact{padding:0;gap:0;border-radius:0;border-bottom:1px solid var(--line)}.exercise-photos.compact img{height:240px;max-height:none;border-radius:0}.exercise-photos.compact figcaption{display:none}.exercise-photo-error{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px 12px;padding:8px 12px;background:#f6f1e8;color:var(--muted);border-radius:10px;font-size:13px;line-height:1.5}.exercise-photo-error.compact{padding:6px 14px;border-bottom:1px solid var(--line);border-radius:0}.exercise-photo-error button{min-width:44px;min-height:44px;flex:0 0 auto;color:var(--ink)}@media(max-width:640px){.exercise-photos{padding:8px}.exercise-photos:not(.compact) img{max-height:420px}.exercise-photos.compact{padding:0}}.menu-recipe-photo{width:72px;height:68px;flex:0 0 72px;overflow:hidden;border-radius:10px;background:#f0ece3}.menu-recipe-photo .recipe-ingredient-mosaic{padding:7px;gap:4px;min-height:0}.menu-recipe-photo .recipe-ingredient-mosaic>span{display:none}.menu-recipe-photo .ingredient-photo{width:24px;height:24px;flex-basis:24px;border-radius:5px}.meal-recipe>.menu-recipe-photo{width:90px;height:78px;flex:0 0 90px}:root{--ink: #1e2e35;--text: #1e2e35;--muted: #566963;--cream: #f6f7f3;--surface: #ffffff;--surface-soft: #edf3ee;--panel: #ffffff;--panel-raised: #f0f5f1;--accent: #174e45;--accent-strong: #103d36;--gold-soft: #f4eddb;--sage: #eaf3ed;--peach: #fbede4;--line: #dfe7e0;--control-line: #8b9d94;--danger: #963e34;--radius: 22px;--shadow-card: 0 3px 5px rgb(23 58 44 / 2%), 0 14px 34px -25px rgb(23 58 44 / 18%);--shadow-lift: 0 12px 28px -12px rgb(23 58 44 / 19%);--ease-out: cubic-bezier(.2, .8, .2, 1)}html{scroll-behavior:auto;scroll-padding-top:100px}body{background:var(--cream);color:var(--ink);-webkit-font-smoothing:antialiased}::selection{background:#cce5d8;color:#103d36}h1{font-size:clamp(30px,3vw,40px);font-weight:650;line-height:1.15;letter-spacing:-1.5px}h2{font-size:21px;font-weight:650;letter-spacing:-.55px}h3{font-weight:650;letter-spacing:-.25px}p{line-height:1.7}a{color:var(--accent);text-decoration-color:#71978a;text-decoration-thickness:1px}.eyebrow{color:var(--accent);font-size:10px;letter-spacing:1.6px;margin-bottom:11px}.eyebrow:before{width:6px;height:6px;border-radius:50%;background:#b4934e}button{min-height:46px;border-color:var(--control-line);border-radius:13px;background:var(--surface);color:var(--accent);box-shadow:0 1px 2px #14372a08;font-weight:650;transition:background .18s ease,border-color .18s ease,color .18s ease,box-shadow .2s ease,transform .2s var(--ease-out)}button.primary{background:var(--accent);color:#fff;border-color:var(--accent);box-shadow:0 4px 10px -5px #174e4559}button.ghost{color:var(--accent);border-color:var(--control-line);background:transparent}button.danger{color:var(--danger);background:#fff5f1;border-color:#b98377}button:disabled{opacity:.5;box-shadow:none;transform:none}button:active:not(:disabled){transform:translateY(1px)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #3b8372;outline-offset:3px}input,select,textarea{color:var(--ink);background:#fff;border-color:var(--control-line);border-radius:12px;box-shadow:0 1px 2px #14372a05;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}input::placeholder,textarea::placeholder{color:#5e7067}input:hover,select:hover,textarea:hover{border-color:#5b8072}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px #2d76601a}input[type=checkbox],input[type=radio]{accent-color:var(--accent)}input::file-selector-button{color:var(--accent);background:var(--sage);border-radius:7px}label{color:#314c42;font-size:12px;font-weight:650}.field-note,.muted,small,.page-head p,footer{color:var(--muted)}.field-note{line-height:1.7}.shell{grid-template-columns:228px minmax(0,1fr)}.sidebar{gap:30px;padding:32px 15px 22px;background:#edf3ee;border-right-color:#dce6de;overflow-y:auto;scrollbar-width:thin}.sidebar>.brand-logo{width:143px;margin:0 0 0 21px}.nav{gap:5px}.nav button{min-height:49px;padding:12px 15px;color:#546b60;font-size:13px;border-radius:13px;border-color:transparent;font-weight:550}.nav button.active{background:var(--accent);color:#fff;border-color:var(--accent);box-shadow:0 5px 12px -6px #174e455c;font-weight:650}.nav button.active:after{content:"";width:5px;height:5px;margin-left:auto;flex-shrink:0;border-radius:50%;background:#d8b761}.nav-icon{opacity:1}.sidebar-bottom{padding:18px 8px 0;border-color:#d3dfd5}.sidebar-bottom p{line-height:1.6;font-size:11px}.sidebar-bottom button{border-color:#93a79a;background:#f7faf7;color:#315b4d}.main{background:var(--cream)}.topbar{position:sticky;top:0;z-index:20;min-height:78px;padding:15px 36px;border-bottom-color:#d6e2d8cc;background:#f6f7f3ed;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.topbar small{color:#557165;letter-spacing:1px}.topbar button{color:var(--accent);border-color:#a5b5aa;background:#ffffffc7}button.avatar-button{color:#fff;border-color:var(--accent);background:var(--accent);box-shadow:0 0 0 4px #e4eee6;font-size:15px}.sync-status{color:var(--accent)}.content{max-width:1390px;padding:33px 36px 0}.page-head{gap:22px;margin-bottom:28px;align-items:center}.page-head h1{margin-bottom:10px}.page-head p{max-width:650px;line-height:1.65}.page-head>button,.page-head>.row{flex-shrink:0}footer{margin-top:38px;padding:24px 0 32px;border-top:1px solid var(--line);font-size:11px;line-height:1.9}footer a{color:#3d6556;min-height:44px;align-content:center;margin-top:1px}.card{padding:26px;border-color:var(--line);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow-card)}.card>h2{margin-bottom:20px}.grid{gap:20px}.grid.four>.card{background:#fff;border-color:var(--line)}.grid.four>.card:nth-child(2){background:#f0f7f1;border-color:#dce9de}.grid.four>.card:nth-child(3){background:#fbf5e9;border-color:#eee4cd}.grid.four>.card:nth-child(4){background:#f1f3f9;border-color:#e1e5ee}.stat{color:var(--ink);margin:15px 0 11px;font-size:clamp(28px,2.5vw,35px);font-weight:650;letter-spacing:-1.4px}.stat-label{color:#53695f;font-size:10px;font-weight:650;letter-spacing:1px}.stat small{color:#607168;line-height:1.5}progress{display:block;width:100%;height:7px;border:0;border-radius:99px;overflow:hidden;background:#e2ebe3;accent-color:var(--accent)}progress::-webkit-progress-bar{background:#e2ebe3;border-radius:99px}progress::-webkit-progress-value{background:#3b8068;border-radius:99px;transition:width .4s var(--ease-out)}progress::-moz-progress-bar{background:#3b8068;border-radius:99px}.progress{height:7px;background:#e2ebe3}.progress div{border-radius:99px;background:#3b8068;transition:width .4s var(--ease-out)}.item,.form-actions,.total-line{border-color:var(--line)}.item{padding:18px 0}.item-main strong{font-size:14px;line-height:1.45;margin-bottom:6px}.item-main small,.macro,.total-line span{color:var(--muted)}.pill{color:#315f4c;background:#eef5ef;border-color:#d6e4d9;border-radius:7px;padding:5px 9px;font-size:10px;font-weight:650}.empty{padding:27px 20px;background:#f6f9f5;border:1px dashed #becfc0;border-radius:15px;color:#526b5c;line-height:1.75}.empty button{margin-top:15px}.tabs{padding:5px;gap:4px;border:1px solid #d9e4da;background:#eaf0e9;border-radius:15px}.tabs button{min-height:44px;padding:10px 18px;border-radius:10px;color:#516b5d;font-size:12px;font-weight:650;border-color:transparent;background:transparent;box-shadow:none}.tabs button.selected{color:var(--accent);border-color:#d8e4da;background:#fff;box-shadow:0 2px 6px #19412b12}.section-head{margin-bottom:19px}.section-head p{margin-top:6px}.hero,.welcome-card{background:linear-gradient(115deg,#e5f0e6,#f3f6e9);border-color:#d4e3d5;border-radius:25px;box-shadow:var(--shadow-card)}.hero:after,.welcome-card:after{border-color:#cadfc9}.hero h2{color:#204e3e;font-family:Iowan Old Style,Palatino Linotype,Georgia,serif;font-size:clamp(28px,3vw,37px);font-weight:400;line-height:1.15;letter-spacing:-.8px}.hero p,.welcome-card p,.welcome-card>small{color:#426252}.welcome-card{padding:40px}.welcome-card h1{color:#174e45;font-size:clamp(40px,4.6vw,61px);line-height:1.06}.welcome-card p{max-width:590px;font-size:15px}.welcome-card>small{display:block}.setup-promises{border-color:#cbdfcd;gap:22px}.setup-promises strong{color:#2b5947}.setup-promises small{color:#536f5f}.welcome-visual{border-radius:18px;box-shadow:0 8px 20px -12px #1e412740}.onboarding-banner{color:#3d6250;background:#eaf4e9;border-color:#b9d0b9;border-radius:16px}.onboarding-banner strong{color:#204e3e}.step-track{gap:8px;margin-bottom:25px}.step-track span{height:5px;background:#dee7dd;border-radius:99px;transition:background .2s ease}.step-track .done{background:#2d7761}.setup-card{padding:30px}.setup-card h2{font-size:23px}.setup-card .four .card{background:#f7f9f4;border-color:#e0e8dc}.setup-card .four .card:nth-child(2){background:#edf5ee}.setup-card .four .card:nth-child(3){background:#fbf5e9}.setup-card .four .card:nth-child(4){background:#f1f3f9}.choice{color:var(--ink);border-color:#9db2a2;background:#fff;border-radius:15px;padding:19px;box-shadow:none;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease}.choice.selected{color:#214f3e;border-color:#3d7b60;background:#edf6ed;box-shadow:inset 0 0 0 1px #3d7b60}.choice strong{color:#254d3e}.choice small{color:#566e60}.day-picker button{color:#365b49;background:#fff;border-color:#9fb0a4}.day-picker button.primary{color:#fff;background:var(--accent);border-color:var(--accent)}.estimate-details{background:#f5f8ef;border-color:#d1dec5}.estimate-details p,.estimate-details small{color:#506747}.preference-section{background:#f6f9f4;border-color:#d6e3d3;border-radius:16px}.preference-section legend{color:#315f46}.preference-tags .check{color:#355b47;background:#fff;border-color:#9eafa2;border-radius:11px}.preference-tags .check:has(input:checked),.preference-tags .selected{color:#194d36;background:#e3f0e3;border-color:#4c855e;box-shadow:inset 0 0 0 1px #4c855e}.preference-section>summary:after,.meal-day>summary:after,.shopping-preview>summary:after{border-color:#507960;transition:transform .2s ease}.nutrition-summary{background:#f3f7ee;border-color:#d4e3c9;border-radius:17px;padding:22px}.nutrition-summary strong{color:#254f3e}.nutrition-summary span,.nutrition-summary small{color:#53705b}.discovery-hero{border-color:#dce6d2;border-radius:25px;background:#ecf3e5;min-height:225px}.discovery-hero h2{color:#214d3d;font-size:clamp(29px,3vw,39px)}.discovery-hero p{color:#54705e}.discovery-hero>div:first-child{padding:32px}.discovery-hero>img,.discovery-hero .discovery-image{min-height:225px}.recipe-search input{background:#fff}.recipe-filters{padding:20px;border-color:var(--line);border-radius:17px;background:#fff}.filter-chips button{color:#436650;background:#fff;border-color:#a7b6a8;border-radius:99px}.filter-chips button.active,.filter-chips button.selected{color:#fff;background:var(--accent);border-color:var(--accent)}.recipe-card{border-color:var(--line);border-radius:22px;background:#fff;box-shadow:var(--shadow-card)}.recipe-card-body{padding:22px}.recipe-card h3,.recipe-card h2{font-size:20px;line-height:1.3;letter-spacing:-.55px}.recipe-card p{color:var(--muted);line-height:1.7}.recipe-meta,.recipe-card-body>.recipe-meta{color:#54705f;font-size:11px;letter-spacing:.1px}.recipe-tags span,.recipe-tags .pill{color:#315d47;border-color:#d5e3d5;background:#edf5eb;border-radius:7px;font-weight:550}.recipe-image .pill{color:#264d3b;background:#fafdf8f2;border-color:#dae7d5f2;box-shadow:0 3px 8px #173a2c0f}.recipe-card-actions{border-color:var(--line);gap:10px}.recipe-card-actions button{min-height:45px;font-size:12px;border-radius:11px}.recipe-card-actions button:not(.primary){color:#315f4b;background:#f6faf4;border-color:#98ad9b}.recipe-pagination{border-color:var(--line)}.recipe-pagination>span{color:#59705f}.recipe-detail-image{border-radius:17px;background:#f2f6ed}.recipe-detail-image .matched-recipe-image{object-fit:contain}.recipe-instructions{color:#3b5548;font-size:14px;line-height:1.9}.saved-recipe-photo,.planned-recipe-photo,.menu-recipe-photo{background:#f0f5ea}.recipe-photo-empty,.recipe-ingredient-mosaic,.food-photo-empty{background:#edf4e8;color:#55734c}.ingredient-photo{border-color:#dce7d6}.plan-brief{background:#eaf4e9;border-color:#cfe1cd;padding:25px;border-radius:20px}.plan-brief h2{color:#264f3d}.plan-brief p{color:#526f58}.week-day-picker{gap:10px;scrollbar-color:#7fa38a transparent}.week-day-picker button{min-height:74px;border-color:#aabfaf;background:#fff;color:#55725f;border-radius:15px}.week-day-picker button.active{color:#fff;border-color:var(--accent);background:var(--accent);box-shadow:0 5px 12px -6px #174e454d}.week-day-picker button.active strong,.week-day-picker button.active small{color:#fff}.day{background:#fff;border-color:var(--line);border-radius:20px;box-shadow:var(--shadow-card)}.week>.day{padding:25px;gap:20px}.week>.day>.plan{background:#f6f9f2;border-color:#d5e3cd;border-radius:17px;padding:18px}.plan>small{color:#527044}.meal-day{background:#fff;border-color:#d2e2cc;border-radius:16px}.meal-day>summary{background:#edf6e8}.meal-day>summary strong{color:#315a3e}.meal-day>summary span{color:#54734b}.meal-day[open]>summary{border-color:#d5e5ce}.meal-recipe{border-color:var(--line)}.meal-recipe p,.meal-recipe>div>small{color:var(--muted)}.meal-recipe .eyebrow{color:#4d7354}.meal-recipe>button{color:#315e45;background:#f5faf1;border-color:#9eb594}.shopping-preview{background:#f6f9ef;border-color:#d7e2c4;border-radius:17px}.shopping-preview li{color:#4c6847}.grocery-photo-list .check{min-height:48px;font-size:14px}.checked{color:#5c705e;opacity:.72}.food-results{gap:9px}.food-results button{padding:13px 15px;background:#f6faf3;border-color:#b3c6aa;border-radius:14px;color:#36583c}.food-results button:focus{border-color:#3c7c53}.training-hero{border-color:#c8ded5;background:#e7f1ec;border-radius:24px;min-height:230px}.training-hero>div{padding:31px}.training-hero h2{color:#1f4e42;font-family:Iowan Old Style,Palatino Linotype,Georgia,serif;font-size:35px;font-weight:400;line-height:1.12;letter-spacing:-.7px}.training-hero p{color:#4e7062;line-height:1.7}.exercise-filters{padding:20px;border:1px solid var(--line);border-radius:18px;background:#fff}.exercise-card{border-color:var(--line);border-radius:22px;box-shadow:var(--shadow-card)}.exercise-card-content{padding:22px}.exercise-card h3{font-size:21px;letter-spacing:-.55px;margin-top:14px}.exercise-card-content>p{color:var(--muted)}.exercise-photos{background:#f0f5ef}.exercise-photos img{background:#fcfdf9;object-fit:contain}.exercise-photos.compact img{height:240px;object-fit:contain}.exercise-photos.compact{border-bottom-color:#e4eae2}.exercise-photo-error{background:#f0f5ec}.exercise-guide>summary{padding:10px 12px;border-radius:10px;background:#f0f6ee;color:#315f44;font-size:12px}.exercise-guide[open]>summary{background:#e4f0e4;margin-bottom:14px}.exercise-guide-content h4{color:#315f44;font-size:13px}.exercise-guide-content{color:#445d4e;line-height:1.75}.exercise-guide-content a{color:var(--accent)}.exercise-guide-content ol{padding-left:24px}.exercise-guide-content ol li::marker{color:#3c7658;font-weight:700}.workout-exercise{border-color:var(--line);padding:19px 0}.workout-exercise>strong{font-size:14px}.workout-exercise .exercise-guide>summary{background:transparent;padding-left:0}.session-card,.dynamic-row{background:#f6f9f3;border-color:#d8e5d2;border-radius:18px}.session-card h3{border-color:var(--line)}.training-day-picker button{border-color:#9db4a5;color:#3d6750;background:#fff}.training-day-picker button.selected{color:#fff;background:var(--accent);border-color:var(--accent)}.training-preview{background:#edf6ec;border-color:#d0e3cc;border-radius:17px}.training-preview-day{border-color:#cfe0cc}.guidance-grid h3,.guidance-grid h4{color:#335a43}.chart polyline{stroke:#2b8063;stroke-width:3}.chart circle{fill:#2b8063;stroke:#fff;stroke-width:2}.chart line{stroke:#dfe8dd}.chart text{fill:#607761}.photo img{background:#edf3e9;border-radius:17px}.photo{min-width:0}.form-actions{padding-top:22px;margin-top:26px}.warn{color:#685022;background:#fbf6e7;border-color:#cfba7f;border-radius:15px}.warn.error{color:#893e31;background:#fff1eb;border-color:#c99888}.error,.inline-error{color:var(--danger)}.recovery{background:#f5f7ec;border-color:#becda3;color:#3d5835}#notice{color:#fff;background:#245f49;border-color:#245f49;border-radius:14px;box-shadow:0 10px 28px #173a2c33;font-size:13px;padding:15px 22px}#notice.error{color:#fff;background:#963e34;border-color:#963e34}dialog,dialog.modal-card{background:#fff;border-color:#d9e4d9;border-radius:24px;padding:29px;box-shadow:0 30px 100px #0e2a1d38}dialog::backdrop{background:#142a2061;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.dialog-head{padding-bottom:22px;margin-bottom:25px;border-bottom:1px solid var(--line)}.dialog-head h2{color:#234736;font-size:24px;line-height:1.3;letter-spacing:-.6px}.dialog-head button{background:#f3f7ef;border-color:#9eb294}.menu-nav button{color:#355d45;background:#f6faf2;border-color:#abc29f;border-radius:16px}.menu-nav button.active,.menu-nav button[aria-current=page]{color:#fff;background:var(--accent);border-color:var(--accent)}.loading-spinner{border-color:#d4e3d2;border-top-color:var(--accent)}.skip-link{color:#fff;background:var(--accent)}.skip-link:focus{outline-color:#77ac8b}.auth{max-width:1200px;gap:80px;padding:55px 44px}.auth-intro h1{color:#214e3c;font-size:clamp(43px,4.6vw,62px);letter-spacing:-1.5px}.auth-intro p{color:#526e5b;font-size:15px}.auth .card{padding:36px;border-color:#dbe6d7;border-radius:26px;box-shadow:0 15px 60px -25px #1d432b3d}.auth .card>h2{color:#234d3a;font-size:27px}.auth .card>small{color:#61745f;border-color:var(--line);line-height:1.8}.auth-visual{border-radius:23px;box-shadow:0 9px 28px -13px #173a2c33}.auth-links button{color:var(--accent)}@keyframes roya-arrive{0%{opacity:.25;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@keyframes roya-dialog{0%{opacity:.4;transform:translateY(14px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}@media(prefers-reduced-motion:no-preference){.content>.page-head,.content>.grid,.content>.card,.content>.hero,.content>.welcome-card,.content>.training-hero,.content>.discovery-hero{animation:roya-arrive .32s var(--ease-out) both}dialog[open]{animation:roya-dialog .22s var(--ease-out)}details[open]>.exercise-guide-content,details[open]>.meal-day-body{animation:roya-arrive .2s ease}}@media(hover:hover)and (pointer:fine){button:not(:disabled):hover{color:#174e45;background:#edf5ec;border-color:#658b72;box-shadow:0 3px 8px #173a2c0d}button.primary:not(:disabled):hover{color:#fff;background:#103d36;border-color:#103d36;box-shadow:0 6px 15px -6px #174e4566;transform:translateY(-1px)}button.ghost:not(:disabled):hover{color:var(--accent);background:#eaf3e8;border-color:#658b72}button.danger:not(:disabled):hover{color:#7c3029;background:#fce6dc;border-color:#a76556}.nav button:not(:disabled):hover{color:var(--accent);background:#e0ecdf;border-color:transparent;box-shadow:none}.nav button.active:not(:disabled):hover{color:#fff;background:#103d36;border-color:#103d36}.choice:hover{border-color:#6c9476;background:#f7faf4}.choice.selected:hover{background:#e7f3e6}.preference-tags .check:hover{background:#f0f7e9;border-color:#799a64}.filter-chips button.active:hover,.filter-chips button.selected:hover{background:#103d36;border-color:#103d36;color:#fff}.recipe-card,.exercise-card{transition:border-color .2s ease,box-shadow .2s ease,transform .2s var(--ease-out)}.recipe-card:hover,.exercise-card:hover{border-color:#b2c9b2;box-shadow:var(--shadow-lift);transform:translateY(-2px)}.tabs button.selected:hover{color:var(--accent);background:#fff;border-color:#b9cdbb}.week-day-picker button.active:hover,.training-day-picker button.selected:hover,.menu-nav button[aria-current=page]:hover{color:#fff;background:#103d36;border-color:#103d36}.exercise-guide>summary:hover{background:#e5f0e2}}@media(max-width:1240px){.shell{grid-template-columns:208px minmax(0,1fr)}.sidebar{padding-left:12px;padding-right:12px}.sidebar>.brand-logo{margin-left:15px;width:140px}.content,.topbar{padding-left:28px;padding-right:28px}}@media(max-width:940px)and (min-width:761px){.shell{grid-template-columns:184px minmax(0,1fr)}.sidebar{padding-left:10px;padding-right:10px}.sidebar>.brand-logo{width:126px;margin-left:10px}.nav button{font-size:12px;padding-left:11px;gap:10px}.content{padding:27px 23px 0}.topbar{padding:15px 23px}.page-head{align-items:flex-start;flex-direction:column;gap:16px}.auth{gap:35px;padding:35px 28px}.auth .card{padding:25px}.training-hero{grid-template-columns:1fr}.training-hero>img{max-height:240px}}@media(max-width:760px){html{scroll-padding-top:86px;scroll-padding-bottom:calc(110px + env(safe-area-inset-bottom))}.shell{display:block}.sidebar{display:none}.topbar{min-height:70px;padding:12px 20px;background:#f6f7f3f2}.topbar .mobile-brand .brand-logo{width:115px}.topbar button.icon-button{background:#fff;border-color:#a6b8a9}.topbar button.avatar-button{background:var(--accent);border-color:var(--accent);color:#fff}.content{max-width:680px;padding:25px 20px calc(114px + env(safe-area-inset-bottom))}h1{font-size:32px;line-height:1.15;letter-spacing:-1.2px;font-weight:650}h2{font-size:21px}.page-head{align-items:flex-start;flex-direction:column;gap:18px;margin-bottom:24px}.page-head p{font-size:13px;line-height:1.65}.page-head>.row{width:100%}.eyebrow{font-size:10px;letter-spacing:1.25px}.card{padding:22px;border-radius:20px}.grid{gap:16px}.grid.four{gap:12px}.grid.four>.card{padding:19px 17px}.stat{font-size:29px;letter-spacing:-1px;margin:13px 0 10px}.stat-label{font-size:10px;letter-spacing:.5px}.stat small{font-size:11px}.item-main strong{font-size:14px}.item-main small{font-size:12px}.tabs{width:100%;padding:5px;gap:3px}.tabs button{flex:1;padding:10px 7px;font-size:12px}.mobile-nav{inset:auto 10px 8px;gap:3px;padding:7px 6px calc(7px + env(safe-area-inset-bottom));border:1px solid #cfdecc;border-radius:23px;background:#fffffff7;box-shadow:0 5px 28px #1f422721;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.mobile-nav button{min-height:54px;padding:7px 2px;gap:4px;color:#5b7361;border-radius:16px;font-weight:550}.mobile-nav button.active{color:#164e3a;background:#e5f1df;border-color:#cfe2c5;font-weight:700}.mobile-nav .nav-label{font-size:10px}.mobile-nav .nav-icon{width:22px;height:22px}.welcome-card{padding:29px 24px;border-radius:23px}.welcome-card h1{font-size:43px;letter-spacing:-1px}.welcome-card p{font-size:14px}.welcome-card>small{color:#536e59;font-size:11px}.setup-card{padding:23px}.choice{padding:17px}.choice.selected{border-color:#3d7b60;background:#edf6ed}.preference-section{background:#f6f9f4;padding:17px}.preference-tags .check:has(input:checked),.preference-tags .selected{background:#e3f0e3}.hero{padding:26px;border-radius:23px}.hero h2{font-size:30px}.discovery-hero{min-height:170px;border-radius:23px;grid-template-columns:minmax(0,1fr) 36%}.discovery-hero>div:first-child{padding:21px}.discovery-hero h2{font-size:29px;line-height:1.1}.discovery-hero .eyebrow{font-size:9px;letter-spacing:.7px;line-height:1.5}.discovery-hero>img,.discovery-hero .discovery-image{min-height:170px;height:100%}.recipe-filters{padding:18px}.recipe-card-body{padding:21px}.recipe-card-actions button{font-size:12px}.filter-chips{scrollbar-color:#a2bc94 transparent}.plan-brief{padding:22px}.week-day-picker{gap:8px}.week-day-picker button{min-height:69px;flex:0 0 56px;padding:10px 4px}.week-day-picker button.active{background:var(--accent);border-color:var(--accent)}.week>.day{padding:20px;gap:16px}.week>.day>.plan{padding:18px}.training-hero{min-height:195px;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);border-radius:23px}.training-hero>div{padding:21px}.training-hero h2{font-size:28px;line-height:1.12}.training-hero p{font-size:12px;line-height:1.6}.training-hero .eyebrow{font-size:9px;letter-spacing:.8px}.exercise-filters{padding:18px;border-radius:18px}.exercise-card-content{padding:22px}.exercise-card h3{font-size:22px}.exercise-guide-content{font-size:13px}.exercise-guide>summary{min-height:46px}.exercise-photos.compact img{height:240px;object-fit:contain}dialog.modal-card{width:100%;max-height:92dvh;margin:auto 0 0;padding:22px 23px calc(24px + env(safe-area-inset-bottom));border-radius:24px 24px 0 0}dialog.modal-card:before{background:#bacdb8;height:4px;width:35px;opacity:1;margin:-9px auto 23px}dialog.modal-card .dialog-head{padding-bottom:19px;margin-bottom:22px}dialog.modal-card .dialog-head h2{font-size:23px}dialog.modal-card .form-actions{background:#fffffffa;border-top-color:var(--line);bottom:calc(-24px - env(safe-area-inset-bottom));padding:17px 0 calc(6px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}#notice{bottom:calc(104px + env(safe-area-inset-bottom));width:calc(100vw - 32px);max-width:480px;font-size:13px}.auth{gap:26px;padding:28px 23px 36px}.auth-intro h1{font-size:37px;line-height:1.08;letter-spacing:-.9px;margin:15px 0}.auth-intro p{font-size:13px;line-height:1.7}.auth .card{padding:26px;border-radius:23px}.auth .card>h2{font-size:25px}.auth .card>small{font-size:11px}footer{margin-top:30px;padding-top:23px;font-size:10px}}@media(max-width:520px){.recipe-image{height:215px}.recipe-card h3,.recipe-card h2{font-size:21px}.recipe-card p{font-size:13px}}@media(max-width:374px){.content,.topbar{padding-left:16px;padding-right:16px}.topbar .mobile-brand .brand-logo{width:106px}h1{font-size:29px}.card{padding:19px}.grid.four>.card{padding:17px 13px}.stat{font-size:26px}.mobile-nav{left:8px;right:8px;padding-left:4px;padding-right:4px;gap:1px}.mobile-nav .nav-label{font-size:9px}.mobile-nav button{min-height:53px}.tabs button{padding-left:5px;padding-right:5px;font-size:11px}.welcome-card{padding:27px 21px}.welcome-card h1{font-size:38px}.discovery-hero>div:first-child{padding:18px}.discovery-hero h2{font-size:26px}.training-hero>div{padding:18px}.training-hero h2{font-size:25px}.exercise-filters{padding:15px}.exercise-card-content,.recipe-card-body{padding:20px}.week>.day{padding:16px}.week>.day>.plan{padding:16px}.setup-card{padding:20px}dialog.modal-card{padding-left:18px;padding-right:18px}.auth{padding-left:18px;padding-right:18px}.auth .card{padding:23px}.auth-intro h1{font-size:34px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.recipe-card:hover,.exercise-card:hover,button:hover,button:active{transform:none!important}}@media print{.topbar,.sidebar,.mobile-nav{display:none}.main,.content{padding:0;margin:0;background:#fff}.card,.exercise-card,.recipe-card,.day,.plan{box-shadow:none;break-inside:avoid}.content>*{animation:none!important}}.nav-group-label{display:block;padding:11px 15px 5px;color:#57715c;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:1.5px}.nav-group-label:not(:first-child){margin-top:10px}.sidebar-plan{display:flex;gap:10px;padding:15px 11px;border-color:#cfdeca;border-radius:15px;color:#3f684d;background:#e3eddb;text-align:left;box-shadow:none}.sidebar-plan>app-icon:first-child{font-size:18px;flex:0 0 18px}.sidebar-plan>app-icon:last-child{flex:0 0 14px;font-size:14px}.sidebar-plan>span{min-width:0;flex:1}.sidebar-plan strong{display:block;font-size:11px;line-height:1.5}.sidebar-plan small{display:block;font-size:10px;font-weight:400;color:#5c765c;margin-top:3px}.account-summary{display:flex;align-items:center;gap:10px;margin-bottom:16px}.account-summary>span:last-child{flex:1;min-width:0}.account-summary strong{display:block;color:#365740;font-size:12px;line-height:1.4;overflow-wrap:anywhere}.account-summary small{display:block;font-size:10px;line-height:1.5;margin-top:4px;overflow-wrap:anywhere}.account-avatar{display:grid;place-items:center;width:35px;height:35px;border-radius:50%;background:#d9e7cf;color:#34563a;font-weight:650;font-size:13px;flex:0 0 35px}.workspace-context{display:grid;gap:3px}.workspace-context strong{color:#2a4c39;font-size:14px;font-weight:650;line-height:1.5}.workspace-context small{color:#597052;font-size:11px;line-height:1.5;letter-spacing:.1px}.topbar button.primary{color:#fff;border-color:var(--accent);background:var(--accent)}.topbar .quick-add-button{min-height:42px;padding:10px 14px;border-radius:12px;margin-right:2px}.quick-add-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.quick-add-grid button{display:grid;grid-template-columns:40px minmax(0,1fr);column-gap:14px;row-gap:5px;text-align:left;justify-items:start;padding:20px;min-height:95px;background:#f7faf3;border-color:#b6c9ab;border-radius:16px}.quick-add-grid button>app-icon{grid-row:span 2;align-self:center;display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:#e5efdc;color:#4b7146;font-size:21px}.quick-add-grid strong{align-self:end;color:#2a5039;font-size:14px;line-height:1.4}.quick-add-grid small{color:#62785d;font-size:11px;font-weight:400;line-height:1.5}.menu-nav button{align-items:center;flex-direction:row;justify-content:flex-start;gap:13px;text-align:left;min-height:86px;padding:18px}.menu-nav button>app-icon:last-child{margin-left:auto;font-size:16px;flex-shrink:0}.menu-link-detail{flex:1;min-width:0}.menu-link-detail strong{display:block;font-size:13px}.menu-link-detail small{display:block;color:#5e795a;font-size:10px;font-weight:400;margin-top:4px;line-height:1.5}.menu-nav button[aria-current=page] .menu-link-detail small{color:#d9ebdf}.auth-highlights{display:flex;flex-wrap:wrap;gap:11px 18px;margin:23px 0 25px;color:#456c4a}.auth-highlights>span{display:inline-flex;gap:7px;align-items:center;font-size:11px}.auth-highlights app-icon{font-size:16px;color:#658a58}.auth form .password-visibility{margin-top:-8px;font-size:12px;font-weight:450}.wizard-step-labels{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin:0 0 28px}.wizard-step-labels>span{display:flex;align-items:center;gap:7px;color:#586d50;font-size:10px;font-weight:550}.wizard-step-labels>span>span{display:grid;place-items:center;width:24px;height:24px;flex:0 0 24px;border:1px solid #c7d7be;border-radius:50%;font-size:10px;background:#f5f8ef}.wizard-step-labels>.current{color:#244e32;font-weight:700}.wizard-step-labels>.current>span{color:#fff;background:var(--accent);border-color:var(--accent);box-shadow:0 0 0 3px #e0ecd9}.wizard-step-labels>.complete>span{background:#deedd6;border-color:#9bbc8c;color:#3f6b3a}.date-navigator{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:0 0 22px}.date-switch{display:flex;align-items:flex-end;gap:9px;min-width:0}.date-switch>label{min-width:0}.date-switch input{width:190px;max-width:100%}.date-switch>button{width:46px;min-width:46px;height:48px;padding:0}.nutrition-hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:45px;align-items:center;margin-bottom:25px;padding:29px 32px;background:#174e45;border-color:#174e45;border-radius:24px;box-shadow:0 10px 27px -19px #0f47367f}.nutrition-hero-main{min-width:0}.nutrition-hero .eyebrow{color:#d1e8d9;font-size:10px}.nutrition-hero .eyebrow:before{background:#d4b36e}.nutrition-hero-value{display:flex;align-items:baseline;flex-wrap:wrap;column-gap:10px;color:#fff;font-size:clamp(36px,3.5vw,49px);line-height:1.2;letter-spacing:-1.8px;font-weight:600;margin-bottom:20px;font-variant-numeric:tabular-nums}.nutrition-hero-value small{color:#d6e8dc;font-size:12px;font-weight:450;letter-spacing:0}.nutrition-hero .field-note{color:#d0e5d7;font-size:11px;line-height:1.7;margin-top:12px;margin-bottom:0}.nutrition-hero progress,.nutrition-hero progress::-webkit-progress-bar{background:#3d6e60}.nutrition-hero progress::-webkit-progress-value{background:#bed497}.nutrition-hero progress::-moz-progress-bar{background:#bed497}.nutrition-hero button.ghost{color:#edf7ee;border-color:#93b6a3}.nutrition-macro-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;padding-left:30px;border-left:1px solid #427565}.nutrition-macro{min-width:0}.nutrition-macro .stat-label{color:#d3e7d9;font-size:10px}.nutrition-macro>strong{display:block;color:#fff;font-size:28px;font-weight:600;letter-spacing:-.8px;line-height:1.4;margin:10px 0 13px;font-variant-numeric:tabular-nums}.nutrition-macro>strong small{color:#bdd9c6;font-size:13px;font-weight:450;letter-spacing:0}.nutrition-macro>small{display:block;color:#c8dfcf;font-size:10px;line-height:1.5;margin-top:8px}.nutrition-macro[data-nutrient=carbs] progress::-webkit-progress-value{background:#dfc38b}.nutrition-macro[data-nutrient=carbs] progress::-moz-progress-bar{background:#dfc38b}.nutrition-macro[data-nutrient=fat] progress::-webkit-progress-value{background:#a9cdd2}.nutrition-macro[data-nutrient=fat] progress::-moz-progress-bar{background:#a9cdd2}.journey-tabs{margin-top:24px}.planned-diary-preview>summary{display:flex;align-items:center;justify-content:space-between;gap:10px}.planned-diary-preview[open]>.field-note{margin-top:13px}.diary-slot{padding:23px}.diary-slot-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:18px;border-bottom:1px solid var(--line)}.diary-slot-head h2{margin:0 0 4px;font-size:19px}.diary-slot-head small{font-size:11px}.diary-slot-head button{flex-shrink:0;min-width:69px;color:#3e6745;background:#f1f7ec;border-color:#94b085}.diary-slot .item{gap:8px}.diary-slot .item>button.icon-button{width:44px;padding:0}.diary-empty{display:flex;align-items:center;justify-content:center;flex-direction:column;padding:27px 13px 12px;text-align:center}.diary-empty>app-icon{display:grid;place-items:center;width:39px;height:39px;color:#7b9571;background:#f0f5e9;border-radius:12px;font-size:19px;margin-bottom:11px}.diary-empty p{color:#5b7656;font-size:13px;margin:0 0 4px}.diary-empty small{color:#5e7352;font-size:11px}.recent-food-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.recent-food-card{justify-content:space-between;gap:12px;padding:16px;background:#f6faf1;border-color:#b1c5a4;border-radius:14px;text-align:left}.recent-food-card>span{min-width:0}.recent-food-card strong{display:block;color:#365d3c;font-size:13px;line-height:1.5}.recent-food-card small{display:block;color:#657c5d;font-size:10px;font-weight:400;margin-top:5px}.recent-food-card app-icon{flex-shrink:0;font-size:16px}.food-search-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);align-items:start;gap:22px}.food-search-card .section-head{align-items:flex-start}.selected-food-panel{padding:20px;border:1px solid #b4cf9f;border-radius:16px;background:#ecf6e5}.selected-food-panel .section-head{margin-bottom:17px}.selected-food-panel h3{margin:0;font-size:17px}.selected-food-panel .eyebrow{margin-bottom:6px}.selected-food-panel .row{align-items:flex-end}.selected-food-panel .row>label{flex:1;min-width:130px}.selected-food-panel .macro{margin:16px 0 0}.selected-food-panel .field-note{margin:15px 0 0}.food-results button>app-icon:last-child{margin-left:auto;flex-shrink:0;font-size:17px}.food-results button.selected{border-color:#3c7e50;box-shadow:inset 0 0 0 1px #3c7e50;background:#e9f4e1}.feature-icon{display:grid;place-items:center;width:47px;height:47px;background:#e6f0d9;color:#4f7643;border-radius:15px;margin-bottom:20px}.feature-icon app-icon{font-size:23px}.barcode-card{background:#f2f7eb;border-color:#d4e2c7}.barcode-card h2{margin-bottom:11px}.barcode-card>p{color:#5a7650;font-size:13px}.barcode-card>button{width:100%}.barcode-card details>summary{padding:8px 0;color:#42683d;font-size:12px}.pantry-note{padding-top:23px;border-top:1px solid #d5e4c9}.pantry-note>strong{color:#3f6539;font-size:13px}.pantry-note p{margin:7px 0 14px}.meal-workflow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;padding:10px;margin-bottom:25px;background:#fff;border-radius:19px}.meal-workflow>button{display:flex;align-items:center;justify-content:flex-start;gap:13px;padding:14px 15px;border:0;border-radius:12px;background:transparent;box-shadow:none;text-align:left}.meal-workflow>button+button{border-left:1px solid #e2eadb;border-radius:0 12px 12px 0}.workflow-number{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;flex:0 0 32px;background:#edf4e6;color:#547242;font-size:10px;font-weight:700}.meal-workflow button>span:nth-child(2){flex:1;min-width:0}.meal-workflow strong{display:block;color:#355d3b;font-size:12px;line-height:1.4}.meal-workflow small{display:block;color:#586f4d;font-size:10px;font-weight:400;line-height:1.5;margin-top:4px}.meal-workflow>button>app-icon{font-size:15px;flex-shrink:0}.week-summary-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:27px 0}.week-summary-bar h2{font-size:25px;margin:0 0 6px;letter-spacing:-.6px}.week-summary-bar .field-note{margin:0}.week-summary-bar .eyebrow{margin-bottom:7px}.day-meal-count{font-size:9px;font-weight:450;margin-top:2px;line-height:1.3}.week-day-picker button.is-today:not(.active){border-color:#4e8455;background:#f1f7e9}.planned-day-heading{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:5px}.planned-day-heading h3{font-size:19px;margin:0 0 5px}.planned-day-heading .field-note{margin:0;font-size:11px}.planned-day-heading>button{flex-shrink:0}.week>.day>.planned-meal-card{background:#fff;border-color:#dce7d3;padding:16px}.planned-meal-card .planned-recipe-photo,.planned-meal-meta,.meal-plan-options{grid-column:1 / -1}.planned-meal-card .planned-recipe-photo{height:165px;margin:0 0 5px;border-radius:12px}.planned-meal-meta{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:7px}.planned-meal-meta .eyebrow{margin:0;font-size:9px;letter-spacing:1px}.status-pill{display:inline-flex;align-items:center;gap:4px;padding:4px 6px;border:1px solid #bdd5ae;border-radius:7px;color:#426e39;background:#edf7e6;font-size:9px}.status-pill app-icon{font-size:12px}.planned-meal-card.is-prepared{border-color:#aac797}.meal-plan-options{border-top:1px solid #e4ebdd;margin-top:3px}.meal-plan-options>summary{color:#5b704f;font-size:11px;padding:11px 0 3px;font-weight:550}.meal-plan-options .row{padding-top:7px;gap:7px}.meal-plan-options .row button{font-size:10px}.planned-day-empty{grid-column:1 / -1;padding:28px 22px;border:1px dashed #c6d6bb;border-radius:16px;background:#f7faf3;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center}.planned-day-empty .feature-icon{margin-bottom:17px}.planned-day-empty h3{margin:0 0 10px;font-size:22px;color:#3e6238}.planned-day-empty p{max-width:410px;color:#657c5b;font-size:13px;margin:0 0 20px}.planned-day-empty button+button{margin-top:10px}.training-summary{display:flex;flex-wrap:wrap;align-items:center;gap:22px 36px;padding:23px 26px;margin-bottom:22px;border:1px solid #d2e4d4;border-radius:20px;background:#edf6ed}.training-summary>div{min-width:0}.training-summary>div>small{display:block;color:#57765b;font-size:11px}.training-summary strong{display:block;font-size:26px;line-height:1.4;letter-spacing:-.6px;margin-top:5px;color:#2b573c;font-weight:650}.training-summary strong span{font-size:11px;letter-spacing:0;font-weight:450;color:#5b795e}.training-summary>button{margin-left:auto;background:#fff;border-color:#a2bc9f;font-size:12px}.training-week-strip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.training-week-strip>div{display:flex;flex-direction:column;min-width:0;gap:7px;padding:14px 10px;border:1px solid #dce7d7;border-radius:15px;background:#fff}.training-week-strip>div>small{font-size:10px;color:#55724e}.training-week-strip>div>strong{font-size:23px;line-height:1.3;font-weight:600;color:#365d3e;letter-spacing:-.6px}.training-week-strip>div.is-today{border-color:#8db481;background:#eff7e9;box-shadow:inset 0 3px #557e46}.training-week-strip>div.has-session{background:#f1f8ec}.training-week-strip .week-workout{min-height:44px;padding:6px;color:#315d3c;border-color:#c2d8b7;border-radius:8px;background:#eaf4e2;text-align:left;justify-content:flex-start;font-size:10px;line-height:1.45}.rest-label{font-size:10px;color:#607651;line-height:1.4;margin-top:6px}.week-completed{display:inline-flex;align-items:center;gap:3px;margin-top:auto;padding-top:7px;color:#426e36;font-size:9px}.week-completed app-icon{font-size:12px}.workout-cover{margin:-26px -26px 22px;overflow:hidden;border-radius:22px 22px 0 0}.workout-cover .exercise-photos.compact img{height:215px;object-fit:contain}.workout-list{margin-top:18px}.progress-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.progress-metrics>.card{background:#f1f7ec;border-color:#d6e4cd}.progress-metrics>.card:nth-child(2){background:#faf6eb;border-color:#e8dec6}.progress-metrics>.card:nth-child(3){background:#edf4f1;border-color:#d7e5dc}.progress-metrics .stat{display:block}.progress-metrics .stat small{display:inline;font-size:14px;margin:0}.progress-metrics>.card>small{font-size:11px;line-height:1.6}.chart .chart-area{fill:#e7f2df;stroke:none;opacity:.85}.chart .chart-grid{stroke:#dfe9d8;stroke-dasharray:3 4}.chart .chart-axis{fill:#687f60;font-size:11px}.chart .chart-dot{fill:#3c8051;stroke:#fff;stroke-width:2px}.chart-labels{display:flex;justify-content:space-between;gap:12px;margin:6px 2px 0 52px}.chart-labels small{font-size:11px;color:#5a724d}.coach-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:28px}.coach-actions>button{display:flex;align-items:flex-start;gap:13px;min-width:0;padding:22px;border-color:#c8dcc2;border-radius:18px;background:#f1f8ec;text-align:left}.coach-actions>button>app-icon:first-child{color:#5c824b;font-size:22px;flex-shrink:0;margin-top:3px}.coach-actions>button>app-icon:last-child{color:#6c8e5c;margin-left:auto;font-size:15px;flex-shrink:0;margin-top:5px}.coach-actions>button>span{min-width:0}.coach-actions strong{display:block;font-size:14px;color:#3a6037;line-height:1.45}.coach-actions small{display:block;font-size:11px;color:#586f4b;line-height:1.7;margin-top:8px;font-weight:400}.settings-section>.section-head{border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:25px}.settings-section>.section-head>app-icon{width:44px;height:44px;display:grid;place-items:center;background:#edf5e7;border-radius:14px;color:#5c7d4c;font-size:22px}.settings-section .section-head .field-note{margin:7px 0 0}.session-toolbar{padding:21px;margin-bottom:20px;border:1px solid #d4e5ce;border-radius:17px;background:#f1f8ec}.session-toolbar .eyebrow{margin-bottom:8px}.session-toolbar h3{margin:0 0 16px;font-size:18px;color:#345d3b}.session-toolbar .field-note{margin:13px 0 0;font-size:11px}.rest-timer{display:flex;align-items:center;flex-wrap:wrap;gap:15px 22px;padding:18px 21px;border:1px solid #cbdcbe;border-radius:17px;background:#f6f9ef;margin:0 0 23px}.rest-timer>div:first-child{flex:1;min-width:95px}.timer-digits{display:block;color:#315b36;font-size:32px;font-variant-numeric:tabular-nums;line-height:1.3;letter-spacing:-1px;font-weight:600}.timer-presets{display:flex;gap:5px}.timer-presets button{min-height:44px;padding:9px 10px;font-size:11px;border-color:#a7ba98;background:#fff}.timer-presets button.selected{color:#fff;background:var(--accent);border-color:var(--accent)}.timer-status{flex-basis:100%;color:#466d3a;font-size:12px;line-height:1.6}.timer-status:empty{display:none}.set-row{padding:8px;margin:6px -8px;border-radius:12px;transition:background .18s ease}.set-row.set-complete{background:#eaf5e2}.set-row.set-complete>small{color:#3d783f;font-weight:700}@media(max-width:1180px){.sidebar{gap:22px}.nutrition-hero{gap:26px;padding:27px}.nutrition-macro-grid{gap:14px;padding-left:23px}.nutrition-macro>strong{font-size:26px}.meal-workflow>button{padding:13px 10px;gap:9px}.meal-workflow strong{font-size:11px}.meal-workflow button>app-icon{display:none}.food-search-layout{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:18px}.recent-food-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.training-week-strip{gap:6px}.training-week-strip>div{padding-left:8px;padding-right:8px}.coach-actions{grid-template-columns:1fr;gap:11px}.coach-actions>button{padding:20px}.coach-actions small{margin-top:4px}.wizard-step-labels{gap:5px}.wizard-step-labels>span{flex-direction:column;align-items:flex-start;gap:6px;font-size:9px}}@media(max-width:940px)and (min-width:761px){.sidebar-plan{padding:13px 10px;gap:7px}.sidebar-plan>app-icon:last-child{display:none}.sidebar-plan strong{font-size:10px}.sidebar-plan small{font-size:9px}.account-avatar{width:30px;height:30px;flex-basis:30px}.account-summary{gap:8px}.account-summary strong{font-size:11px}.nutrition-hero{grid-template-columns:1fr;gap:25px}.nutrition-macro-grid{border-left:0;border-top:1px solid #427565;padding:24px 0 0}.food-search-layout{grid-template-columns:1fr}.meal-workflow{padding:6px}.meal-workflow>button{align-items:flex-start;flex-direction:column;gap:8px}.week-summary-bar{align-items:flex-start;flex-direction:column}.training-week-strip{grid-template-columns:repeat(7,90px);overflow-x:auto;padding-bottom:9px;scrollbar-width:thin}.progress-metrics{gap:11px}.progress-metrics .card{padding:18px}.progress-metrics .stat-label{font-size:9px}.progress-metrics .stat{font-size:25px}}@media(max-width:760px){.workspace-context{display:none}.topbar .quick-add-button{width:42px;min-width:42px;padding:0;min-height:42px;background:var(--accent);border-color:var(--accent);color:#fff}.topbar .row{gap:8px}.date-navigator{align-items:flex-end;flex-wrap:wrap;gap:13px;margin-bottom:21px}.date-switch{flex:1;gap:8px}.date-switch>label{flex:1}.date-switch input{width:100%}.date-switch>button{width:44px;min-width:44px;height:50px}.date-navigator>.row{margin-left:auto}.nutrition-hero{grid-template-columns:1fr;gap:23px;padding:24px;border-radius:23px;margin-bottom:23px}.nutrition-hero-value{font-size:45px;margin-bottom:17px}.nutrition-hero .eyebrow{font-size:10px}.nutrition-macro-grid{border-left:0;border-top:1px solid #427565;padding:23px 0 0;gap:20px}.nutrition-macro>strong{font-size:27px;margin-top:8px;margin-bottom:10px}.nutrition-macro .stat-label{font-size:10px}.nutrition-macro>small{font-size:10px}.diary-slot{padding:21px}.diary-slot-head{padding-bottom:17px}.diary-empty{padding-top:24px;padding-bottom:13px}.recent-food-grid{gap:10px}.recent-food-card{padding:14px}.food-search-layout{grid-template-columns:1fr;gap:19px}.food-search-card .section-head{gap:13px;flex-wrap:wrap}.food-search-card .section-head h2{font-size:21px}.selected-food-panel{padding:18px}.selected-food-panel .row>button{min-height:50px}.journey-tabs button>app-icon{font-size:16px}.meal-workflow{padding:7px;margin-bottom:23px;border-radius:17px}.meal-workflow>button{align-items:flex-start;flex-direction:column;justify-content:flex-start;gap:8px;padding:11px 10px}.workflow-number{width:27px;height:27px;flex-basis:27px;font-size:9px}.meal-workflow strong{font-size:11px;line-height:1.5}.meal-workflow small{font-size:9px;line-height:1.6;margin-top:4px}.meal-workflow>button>app-icon{display:none}.week-summary-bar{align-items:flex-start;flex-direction:column;gap:18px}.week-summary-bar h2{font-size:25px}.week-summary-bar>.row{width:100%;gap:9px}.week-summary-bar>.row>button{flex:1;font-size:11px;padding-left:10px;padding-right:10px}.day-meal-count{font-size:9px}.planned-day-heading{align-items:flex-start;gap:12px}.planned-day-heading h3{font-size:17px}.planned-day-heading>button{min-width:80px;padding:9px 10px;font-size:11px}.planned-meal-card .planned-recipe-photo{height:185px}.planned-day-empty{padding:25px 16px}.planned-day-empty h3{font-size:21px}.training-summary{padding:21px;gap:18px 24px}.training-summary>div{flex:1}.training-summary>button{flex-basis:100%;margin-left:0}.training-summary strong{font-size:27px}.training-summary strong span{display:block;margin-top:3px}.training-week-strip{grid-template-columns:repeat(7,104px);overflow-x:auto;padding:3px 2px 11px;margin:-3px -2px 0;gap:9px;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:#b1cba3 transparent}.training-week-strip>div{min-height:146px;padding:13px 10px;scroll-snap-align:start}.training-week-strip .week-workout{font-size:11px}.workout-cover{margin:-22px -22px 21px;border-radius:20px 20px 0 0}.progress-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.progress-metrics>.card{padding:17px 13px;border-radius:17px}.progress-metrics .stat-label{font-size:9px;line-height:1.5;letter-spacing:.2px}.progress-metrics .stat{font-size:25px;line-height:1.3;margin-top:10px}.progress-metrics .stat small{font-size:10px}.progress-metrics>.card>small{font-size:9px;line-height:1.6}.chart-labels{margin-left:32px}.chart-labels small{font-size:9px}.coach-actions{gap:12px;margin-bottom:22px}.coach-actions>button{padding:20px}.session-toolbar{padding:19px}.rest-timer{padding:18px;gap:14px}.rest-timer>div:first-child{flex:1}.timer-presets{gap:4px}.timer-presets button{padding:8px;font-size:11px}.rest-timer>.row{flex-basis:100%}.rest-timer>.row>button.primary{flex:1}.quick-add-grid{gap:11px}.quick-add-grid button{grid-template-columns:1fr;gap:10px;padding:18px;min-height:150px}.quick-add-grid button>app-icon{grid-row:auto;width:38px;height:38px;font-size:20px}.quick-add-grid strong{font-size:13px}.quick-add-grid small{font-size:10px;margin-top:-5px}.menu-nav{grid-template-columns:1fr;gap:10px}.menu-nav button{min-height:75px;flex-direction:row;padding:15px 17px}.menu-link-detail strong{font-size:13px}.menu-link-detail small{font-size:11px}.wizard-step-labels{display:flex;overflow-x:auto;gap:13px;padding:4px 2px 11px;margin:-4px -2px 20px;scrollbar-width:thin;scrollbar-color:#a6c495 transparent}.wizard-step-labels>span{flex:0 0 auto;flex-direction:row;gap:7px;white-space:nowrap;font-size:10px}.wizard-step-labels>span>span{width:22px;height:22px;flex-basis:22px;font-size:9px}.auth-highlights{gap:8px 13px;margin-top:18px;margin-bottom:0}.auth-highlights>span{font-size:10px}.auth-highlights app-icon{font-size:15px}}@media(max-width:520px){.recent-food-grid{grid-template-columns:1fr}.nutrition-macro-grid{gap:17px}}@media(max-width:374px){.topbar .row{gap:6px}.topbar button.avatar-button{width:40px;height:40px;min-height:40px;box-shadow:none}.topbar button.icon-button{width:42px;min-width:42px;height:44px}.nutrition-hero{padding:21px}.nutrition-hero-value{font-size:41px}.nutrition-macro-grid{gap:12px}.nutrition-macro>strong{font-size:24px}.nutrition-macro>strong small{font-size:11px}.date-navigator>.date-switch{flex-basis:100%}.meal-workflow>button{padding:10px 8px}.meal-workflow strong{font-size:10px}.meal-workflow small{font-size:9px}.diary-slot{padding:19px}.selected-food-panel{padding:15px}.selected-food-panel .row>button{width:100%}.progress-metrics{gap:7px}.progress-metrics>.card{padding:15px 10px}.progress-metrics .stat{font-size:22px;letter-spacing:-.7px}.progress-metrics .stat-label{font-size:8px}.timer-presets button{padding:8px 7px;font-size:10px}.timer-digits{font-size:29px}.quick-add-grid button{padding:15px}.quick-add-grid strong{font-size:12px}.workout-cover{margin-left:-19px;margin-right:-19px;margin-top:-19px}}@media(prefers-reduced-motion:no-preference){.nutrition-hero,.food-search-layout,.training-summary,.progress-metrics,.coach-actions{animation:roya-arrive .32s var(--ease-out) both}}@media print{.meal-workflow,.quick-add-grid,.sidebar-plan,.wizard-step-labels{display:none}.nutrition-hero{background:#fff;color:#000}.nutrition-hero *{color:#000}}.grocery-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);align-items:start;gap:23px}.grocery-photo-list>.section-head{align-items:center}.grocery-photo-list>.section-head h2{margin:0}.grocery-photo-list>.field-note{margin-top:10px;margin-bottom:20px}.shopping-count{color:#315e3b;font-size:29px;letter-spacing:-.8px;line-height:1.2;font-weight:600;white-space:nowrap}.shopping-count small{color:#5a7555;font-size:12px;letter-spacing:0;font-weight:450}.grocery-search{margin-bottom:12px}.grocery-row{align-items:center;gap:10px}.grocery-photo-list .grocery-row>.item-main{flex:1;min-width:0;margin:0;gap:12px;font-size:14px}.grocery-photo-list .grocery-row .item-main>span{min-width:0}.grocery-row .ingredient-photo{width:40px;height:40px;flex-basis:40px;border-radius:10px}.grocery-row input[type=checkbox]{width:22px;height:22px;flex:0 0 22px}.grocery-row .item-main strong{font-size:13px}.grocery-row .item-main small{font-size:10px;line-height:1.6}.grocery-item-actions{display:flex;align-items:center;gap:5px;flex-shrink:0}.grocery-item-actions button{min-height:44px;padding:8px 10px;font-size:11px}.grocery-item-actions button.icon-button{width:44px;padding:0}.shopping-completed{border-top:1px solid #dce7d3;padding-top:15px}.shopping-completed>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;list-style:none;color:#526f45;font-size:13px}.shopping-completed>summary::-webkit-details-marker{display:none}.shopping-completed>summary>span:first-child{display:inline-flex;gap:9px;align-items:center}.shopping-completed>summary:after{content:"+";font-weight:450;font-size:20px;margin-left:0}.shopping-completed[open]>summary:after{content:"\2212"}.shopping-completed>summary .pill{margin-left:auto}.shopping-completed>.field-note{margin-top:13px;margin-bottom:0}.shopping-completed .checked{text-decoration:none;opacity:.75}.shopping-completed .checked strong{text-decoration:line-through}.shopping-empty{display:flex;align-items:center;flex-direction:column;text-align:center;padding:30px 16px 10px}.shopping-empty .feature-icon{width:56px;height:56px;border-radius:18px;margin-bottom:20px}.shopping-empty h3{font-size:24px;color:#3e6338;max-width:310px;margin:0 0 11px;line-height:1.25;letter-spacing:-.6px}.shopping-empty p{max-width:350px;color:#607c53;font-size:13px;margin:0 0 22px}.shopping-empty>button+button{margin-top:10px}.pantry-card{background:#f5f9ee;border-color:#d7e4c9}.pantry-card .section-head{align-items:center}.pantry-card .section-head h2{margin:0}.pantry-card .section-head .eyebrow{font-size:9px;letter-spacing:1px;margin-bottom:7px}.pantry-card .section-head button{background:#fff;border-color:#9bb88a;font-size:11px}.pantry-card .grocery-row{flex-wrap:wrap}.pantry-card .grocery-item-actions{margin-left:auto}.pantry-card>.field-note{color:#5c784f}.pantry-empty{padding:23px 18px;border:1px dashed #bacfab;border-radius:14px;background:#fbfdf8}.pantry-empty p{color:#537244;font-size:13px;margin:0 0 8px}.pantry-empty small{color:#627e52;font-size:11px;line-height:1.7}.pantry-note>summary{min-height:44px;color:#456b3a;font-size:12px;padding:5px 0}.pantry-note[open]>.field-note{margin-top:13px}.meal-entry-summary{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:15px 25px;margin-bottom:18px;padding:20px 23px;border:1px solid #c9dfc2;border-radius:17px;background:#edf7e7}.meal-entry-summary .eyebrow{margin-bottom:7px;font-size:9px}.meal-entry-summary strong{display:block;color:#305b36;font-size:29px;letter-spacing:-.9px;line-height:1.2}.meal-entry-summary strong small{color:#5c7b51;font-size:12px;letter-spacing:0;font-weight:450}.meal-entry-summary>span{color:#53784a;font-size:12px;line-height:1.7}@media(max-width:1180px){.grocery-layout{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:18px}.grocery-photo-list .grocery-row{flex-wrap:wrap}.grocery-photo-list .grocery-row>.item-main{flex-basis:100%}.grocery-photo-list .grocery-item-actions{margin-left:auto}}@media(max-width:940px)and (min-width:761px){.grocery-layout{grid-template-columns:1fr}}@media(max-width:760px){.grocery-layout{grid-template-columns:1fr;gap:19px}.grocery-photo-list .grocery-row{gap:8px;padding:16px 0}.grocery-photo-list .grocery-row>.item-main{flex-basis:100%;gap:11px}.grocery-row .item-main strong{font-size:14px}.grocery-row .item-main small{font-size:11px}.grocery-photo-list .grocery-item-actions{padding-left:33px;margin-left:0;width:100%}.grocery-photo-list .grocery-item-actions button{min-height:44px;background:#fafcf7}.grocery-photo-list .grocery-item-actions button.icon-button{margin-left:auto}.shopping-completed .grocery-row>button{margin-left:33px}.shopping-empty{padding:25px 8px 8px}.shopping-empty h3{font-size:25px}.shopping-empty>button{width:100%}.pantry-card .grocery-row>.ingredient-photo{width:40px;height:40px;flex-basis:40px}.pantry-card .grocery-row>.item-main{flex-basis:calc(100% - 53px)}.pantry-card .grocery-item-actions{width:100%;margin-left:50px}.pantry-card .grocery-item-actions button.icon-button{margin-left:auto}.pantry-card>button:last-child{width:100%}.meal-entry-summary{padding:18px 20px;gap:13px}.meal-entry-summary>span{font-size:11px}}@media(max-width:374px){.shopping-count{font-size:27px}.shopping-empty h3{font-size:23px}.grocery-photo-list .grocery-row>.item-main{gap:8px}.grocery-row .ingredient-photo{width:35px;height:35px;flex-basis:35px}.pantry-card .section-head .eyebrow{font-size:8px;letter-spacing:.6px}}
