/* stage-prod/src/original/approved/style.css */
html,body,#root{margin:0;min-height:100%}
body{background:#efe9e3;color:#251f21;font-family:"KMR Melange Grotesk",system-ui,-apple-system,"Segoe UI",sans-serif;font-weight:350}
b,strong{font-weight:600}
*{box-sizing:border-box}
button{font:inherit;color:inherit;cursor:pointer;border:0;background:none;padding:0;text-align:left}
.stage{display:flex;justify-content:center;align-items:flex-start;background:#efe9e3}
.phone{position:relative;width:100%;max-width:430px;height:740px;background:#fbf8f4;display:flex;flex-direction:column;overflow:hidden}
@media(min-width:600px){.stage{padding:24px 0}.phone{height:820px;border-radius:36px;box-shadow:0 20px 60px rgba(60,40,30,.18)}}
.proto-strip{background:#251f21;color:#f4efec;font-size:11px;text-align:center;padding:6px 10px;letter-spacing:.01em}
.ic{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none}
h1,h2,h3,h4,p{margin:0}
h1{font-family:"Aime",Georgia,serif;font-weight:400;font-size:32px;line-height:1.1;letter-spacing:-.025em}
h2{font-family:"Aime",Georgia,serif;font-weight:400;font-size:26px;letter-spacing:-.02em}
h3{font-family:"Aime",Georgia,serif;font-weight:400;font-size:22px;letter-spacing:-.02em}
h4{font-size:15px;font-weight:600}
.lede{color:#585254;font-size:15px;line-height:1.5;margin-top:12px}
.muted{color:#585254;font-size:13px;line-height:1.5}
small{font-size:12px;color:#585254;line-height:1.4;display:block}
.fine{font-size:11.5px;color:#585254;line-height:1.5;margin:18px 0 8px}
/* onboarding */
.onb{padding:28px 24px;display:flex;flex-direction:column;gap:10px;flex:1;overflow:auto}
.dots{display:flex;gap:6px;margin-bottom:18px}.dots b{height:4px;flex:1;border-radius:4px;background:#e4ddd6}.dots b.on{background:#2f7a69}
.pts{list-style:none;padding:0;margin:16px 0 8px;display:flex;flex-direction:column;gap:10px}.pts li{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.4}.pts .ic{color:#2f7a69;margin-top:1px;width:18px;height:18px}
.cta{background:#2f7a69;color:#fff;border-radius:14px;min-height:50px;padding:0 20px;font-weight:600;text-align:center;width:100%;margin-top:14px;font-size:15px}
.cta.sm{margin:0;min-height:46px;border-radius:12px}
.ghost{color:#2f7a69;font-weight:600;text-align:center;min-height:44px;font-size:14px}
.sec{padding:12px 18px;background:#fff;border:1px solid #e4ddd6;border-radius:12px;min-height:46px;text-align:center;font-weight:600;font-size:14px}
.choice{display:flex;gap:14px;align-items:center;background:#fff;border:1.5px solid #e4ddd6;border-radius:16px;padding:14px;margin-top:10px;min-height:72px}
.choice.sel{border-color:#2f7a69;background:#eef6f3}
.choice b{display:block;font-size:15px}.choice small{margin-top:2px}
.chi{width:40px;height:40px;border-radius:12px;background:#e6f0ec;color:#2f7a69;display:grid;place-items:center;flex:none}
.note-box{background:#f4efec;border-radius:12px;padding:12px 14px;font-size:12.5px;line-height:1.5;color:#585254;margin-top:14px}
.field{margin-top:18px}.field label{display:block;font-size:13px;font-weight:600;margin-bottom:8px}
.seg{display:flex;gap:6px;flex-wrap:wrap}.seg span,.seg button{flex:1;min-width:84px;text-align:center;border:1.5px solid #e4ddd6;border-radius:12px;padding:12px 8px;font-size:13.5px;background:#fff;min-height:44px}
.seg .on{border-color:#2f7a69;background:#eef6f3;font-weight:600;color:#1f5c4e}
.seg.big button{font-size:14px;font-weight:600}
.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{border:1.5px solid #e4ddd6;border-radius:999px;padding:10px 14px;font-size:13.5px;background:#fff;min-height:44px}.chip.on{border-color:#2f7a69;background:#eef6f3;color:#1f5c4e;font-weight:600}
/* app */
.top{display:flex;justify-content:space-between;align-items:flex-end;padding:18px 20px 10px}
.pill{border:1px solid #d6cdc4;border-radius:999px;padding:9px 14px;font-size:12.5px;font-weight:600;background:#fff;min-height:44px;display:flex;align-items:center}
.sponsor{margin:0 20px 8px;background:#f3ecd9;border-radius:12px;padding:10px 14px}.sponsor b{font-size:13px}.sponsor small{margin-top:2px}
main{flex:1;overflow-y:auto;padding:4px 20px 90px;-webkit-overflow-scrolling:touch}
.ctx{background:#fff;border:1px solid #ece5de;border-radius:18px;padding:14px;margin-bottom:14px}
.ctx-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;font-size:14px}
.link{color:#2f7a69;font-weight:600;font-size:13px;min-height:36px;display:inline-flex;align-items:center}
.ctx-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.ctx-i{background:#faf6f1;border-radius:12px;padding:10px;display:flex;flex-direction:column;gap:3px;min-width:0}
.ctx-i span:first-child{font-size:11.5px;color:#585254}.ctx-i b{font-size:15px}
.badge{display:inline-flex;align-items:center;gap:5px;font-size:10.5px;font-weight:600;border-radius:999px;padding:3px 8px;width:fit-content;line-height:1.3}
.badge i{width:6px;height:6px;border-radius:50%;flex:none}
.b-measured{background:#e2eefb;color:#25588f}.b-measured i{background:#3b7fc4}
.b-self{background:#fbeccb;color:#7a5410}.b-self i{background:#d89a1f}
.b-cal{background:#ece8f4;color:#52408a}.b-cal i{background:#8068c4}
.hero{background:#1f3d36;color:#fff;border-radius:22px;padding:18px;margin-bottom:14px}
.hero h3{color:#fff}.hero p{color:#d6e6e0;font-size:14px;line-height:1.45;margin-top:4px}
.hero small{color:#b9d3ca}.hero .eyebrow{text-transform:none;font-size:12px;margin-bottom:10px}
.hero.light{background:#e6f0ec;color:#251f21}.hero.light h3{color:#251f21}.hero.light p{color:#3d4a46}.hero.light small{color:#4b5a55}
.hero.calm{background:#e6f0ec;color:#251f21}.hero.calm h3{color:#251f21}.hero.calm p{color:#3d4a46}
.hero-t{display:flex;gap:14px;align-items:flex-start}
.ico{width:40px;height:40px;border-radius:12px;background:#f0ebe5;color:#2f7a69;display:grid;place-items:center;flex:none}.ico.big{background:rgba(255,255,255,.14);color:#fff;width:48px;height:48px;border-radius:14px}.ico.ok{background:#2f7a69;color:#fff}
.why{background:rgba(255,255,255,.1);border-radius:14px;padding:12px;margin:14px 0}.why b{font-size:12.5px}.why p{font-size:13px;margin-top:4px}
.why-src{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:8px;font-size:11.5px;color:#b9d3ca}
.row3{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:8px}
.hero .sec{background:rgba(255,255,255,.14);border-color:transparent;color:#fff}
.toast{background:#eef6f3;border:1px solid #cfe3dc;color:#1f5c4e;border-radius:12px;padding:12px 14px;font-size:13px;line-height:1.45;margin-bottom:14px}
.sec-h{display:flex;justify-content:space-between;align-items:center;margin:8px 0 10px}.sec-h span{font-size:12.5px;color:#585254}
.tag{background:#f3ecd9;color:#7a5410;border-radius:999px;padding:3px 9px;font-size:11px;font-weight:600}
.bar{height:6px;background:#e4ddd6;border-radius:6px;overflow:hidden;margin:6px 0 12px}.bar i{display:block;height:100%;background:#2f7a69;border-radius:6px;transition:width .3s}
.hero .bar{background:#c9dcd5}
.act{background:#fff;border:1px solid #ece5de;border-radius:16px;margin-bottom:8px}
.act.done{opacity:.7}
.act-main{display:flex;gap:12px;align-items:center;padding:12px;width:100%;min-height:64px}
.act-t{flex:1;min-width:0}.act-t b{display:block;font-size:14.5px}.act-t small{margin-top:1px}
.act em{font-style:normal;font-size:12px;font-weight:600;color:#2f7a69}
.act-x{padding:0 12px 12px}.act-x p{font-size:13.5px;line-height:1.45;margin-bottom:6px}.act-x .row3{margin-top:10px}
.avs{display:flex;margin:12px 0 8px}.av{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-weight:600;font-size:13px;border:2px solid #e6f0ec;margin-right:-6px}.av.sm{width:34px;margin:0;border:0;background:#e6f0ec;flex:none}
.feed{display:flex;gap:12px;background:#fff;border:1px solid #ece5de;border-radius:16px;padding:12px;margin-bottom:8px;font-size:14px;line-height:1.4}
.cheer{margin-top:8px;border:1px solid #d6cdc4;border-radius:999px;padding:8px 14px;font-size:12.5px;font-weight:600;min-height:36px}.cheer.on{background:#2f7a69;color:#fff;border-color:#2f7a69}
.big-n{font-size:44px!important;margin:2px 0}
.streak{background:#fff;border-radius:14px;padding:12px;margin-top:14px}.streak b{display:block;font-size:14px}.streak span{font-size:12.5px;color:#585254;display:block;margin-top:2px;line-height:1.4}
.reward{display:flex;gap:12px;align-items:center;background:#fff;border:1px solid #ece5de;border-radius:16px;padding:12px;margin-bottom:8px}.reward>div{flex:1;min-width:0}.reward b{font-size:14px;display:block}.reward em{font-style:normal;font-size:12.5px;font-weight:600;color:#2f7a69;white-space:nowrap}
.week{display:flex;gap:10px;align-items:flex-end;height:130px;margin:14px 0 8px}.week>div{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:6px;height:100%}.week i{display:block;width:100%;border-radius:8px;background:#9bc4b8;min-height:4px}.week i.today{background:#2f7a69}.week span{font-size:12px;color:#585254}
.learn{background:#fff;border:1px solid #ece5de;border-radius:16px;padding:12px 14px;margin-bottom:8px}.learn b{font-size:14px}.learn small{margin-top:2px;font-size:12.5px}
.tabs{position:absolute;left:0;right:0;bottom:0;display:grid;grid-template-columns:repeat(4,1fr);background:rgba(251,248,244,.96);border-top:1px solid #ece5de;padding:6px 6px calc(10px + env(safe-area-inset-bottom));backdrop-filter:blur(8px)}
.tabs button{display:flex;flex-direction:column;align-items:center;gap:3px;font-size:11.5px;color:#585254;min-height:50px;justify-content:center}.tabs button.on{color:#2f7a69;font-weight:600}
.scrim{position:absolute;inset:0;background:rgba(37,31,33,.45);display:flex;align-items:flex-end;z-index:5}
.sheet{position:relative;background:#fbf8f4;border-radius:24px 24px 0 0;padding:22px 20px 24px;width:100%;max-height:88%;overflow:auto}
.sheet h3{margin-bottom:6px;padding-right:44px}.x{position:absolute;right:12px;top:12px;width:44px;height:44px;display:grid;place-items:center;border-radius:50%}
.dev{display:flex;gap:12px;align-items:center;background:#fff;border:1px solid #ece5de;border-radius:14px;padding:10px 12px;margin-top:8px}.dev>div{flex:1}.dev b{font-size:14px;display:block}
.tog{width:46px;height:28px;border-radius:999px;background:#d6cdc4;position:relative;flex:none}.tog i{position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;transition:left .2s}.tog.on{background:#2f7a69}.tog.on i{left:21px}
.concept{margin-top:14px;display:flex;flex-direction:column;gap:8px}
.plan{display:flex;justify-content:space-between;gap:10px;align-items:center;background:#fff;border:1px solid #ece5de;border-radius:14px;padding:12px 14px}.plan.hl{border-color:#2f7a69;background:#eef6f3}.plan b{font-size:14px;display:block}.plan em{font-style:normal;font-size:12px;font-weight:600;color:#2f7a69;text-align:right}
.agg{background:#fff;border:1px solid #ece5de;border-radius:14px;padding:12px 14px;display:flex;flex-direction:column;gap:8px}.agg>div{display:flex;justify-content:space-between;gap:10px;font-size:13.5px}
button:focus-visible{outline:2px solid #2f7a69;outline-offset:2px}

.hint{margin-top:10px;font-size:12.5px}
.ask{background:#fff;border:1.5px solid #cfe3dc;border-radius:18px;padding:14px;margin-bottom:14px}.ask-h{display:flex;justify-content:space-between;align-items:center}.ask-h b{font-size:15px}.ask small{margin:2px 0 10px}

.kitchen-link{display:flex;justify-content:space-between;align-items:center;width:100%;background:rgba(255,255,255,.14);color:#fff;border-radius:12px;padding:12px 14px;min-height:46px;font-weight:600;font-size:13.5px;margin:0 0 10px}
.kitchen-link span{font-size:10.5px;font-weight:600;background:#f3ecd9;color:#7a5410;border-radius:999px;padding:3px 8px}
.kitchen-link.dark{background:#eef6f3;color:#1f5c4e;border:1px solid #cfe3dc;margin:8px 0 0}
.kdots{display:flex;gap:6px;margin:14px 0 4px}.kdots b{height:4px;flex:1;border-radius:4px;background:#e4ddd6}.kdots b.on{background:#2f7a69}
.kcard{background:#fff;border:1px solid #ece5de;border-radius:16px;padding:14px;margin-top:12px;display:flex;flex-direction:column;gap:8px}
.klist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.klist li{display:flex;justify-content:space-between;font-size:14px;border-bottom:1px solid #f0ebe5;padding:6px 0}
.okline{color:#1f5c4e;font-weight:600}
.cta:disabled{background:#c9d8d2;color:#fff}

.tabs{position:static!important;border-top:0!important;border-bottom:1px solid #ece5de;padding:0 8px!important;background:#fbf8f4!important;backdrop-filter:none!important}
.tabs button{flex-direction:row!important;gap:6px!important;font-size:12.5px!important;min-height:46px!important}
.tabs button .ic{width:17px;height:17px}
main{padding-bottom:24px!important}
.top{padding:12px 20px 8px!important}
h2{font-size:23px!important}
.phone{height:660px!important}
@media(min-width:600px){.phone{height:820px!important}}

.hdr-r{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.sample-tag{font-size:10.5px;color:#251f21;background:#efe6dc;border-radius:99px;padding:2px 8px;letter-spacing:.02em}

/* v2: companion, intro, motion */
.orb{width:34px;height:34px;border-radius:50%;flex:none;background:radial-gradient(circle at 30% 30%,#c9e6dc,#2f7a69 70%);box-shadow:0 0 0 0 rgba(47,122,105,.35);animation:pulse 3.2s ease-in-out infinite}
.orb.big{width:64px;height:64px;margin:6px 0 16px}
.hello{display:flex;gap:10px;align-items:center}
@keyframes pulse{0%,100%{box-shadow:0 0 0 0 rgba(47,122,105,.30)}50%{box-shadow:0 0 0 10px rgba(47,122,105,0)}}
.intro{flex:1;overflow:auto;padding:22px 22px 24px;display:flex;flex-direction:column;animation:slidein .45s cubic-bezier(.2,.8,.2,1)}
.intro .dots{margin-bottom:6px}
@keyframes slidein{from{opacity:0;transform:translateX(24px)}to{opacity:1;transform:none}}
@keyframes fadeup{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
main>*{animation:fadeup .4s cubic-bezier(.2,.8,.2,1) both}main>*:nth-child(2){animation-delay:.05s}main>*:nth-child(3){animation-delay:.1s}main>*:nth-child(4){animation-delay:.15s}
.hero{animation:fadeup .45s cubic-bezier(.2,.8,.2,1) both}
.arc{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin:4px 0 10px}
.arc button{background:#fff;border:1.5px solid #ece5de;border-radius:12px;padding:8px 4px;display:flex;flex-direction:column;align-items:center;gap:4px;min-height:58px;font-size:11.5px;text-align:center;transition:all .25s}
.arc button.on{border-color:#2f7a69;background:#eef6f3;color:#1f5c4e;font-weight:600}
.arc button:disabled{opacity:.45}
.arc small{font-size:10.5px}
.dotrow{display:flex;gap:3px;height:6px}.dotrow b{width:6px;height:6px;border-radius:50%;background:#d6cdc4;transition:background .3s,transform .3s}.dotrow b.f{background:#2f7a69;transform:scale(1.2)}
.adj,.adj-chip{background:#f3ecd9;color:#6c4c0f;border-radius:10px;padding:8px 10px;font-size:12.5px;line-height:1.4}
.adj-chip{background:rgba(255,255,255,.16);color:#fff;margin-top:12px;font-size:12px}
.act{transition:opacity .3s,transform .3s}.act.done .ico.ok{animation:pop .4s cubic-bezier(.3,1.6,.5,1)}
@keyframes pop{from{transform:scale(.5)}to{transform:scale(1)}}
.act-x{animation:fadeup .3s ease both}
.scrim{animation:fade .25s ease both}.sheet{animation:rise .35s cubic-bezier(.2,.8,.2,1) both}
@keyframes fade{from{opacity:0}to{opacity:1}}@keyframes rise{from{transform:translateY(40px);opacity:0}to{transform:none;opacity:1}}
.bar i{transition:width .6s cubic-bezier(.2,.8,.2,1)}
.week i{transform-origin:bottom;animation:grow .7s cubic-bezier(.2,.8,.2,1) both}@keyframes grow{from{transform:scaleY(0)}to{transform:scaleY(1)}}
.chip,.seg button,.cta,.sec,.cheer{transition:background .2s,border-color .2s,transform .12s}.chip:active,.seg button:active,.cta:active,.sec:active{transform:scale(.97)}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}

/* v3: bottom navigation */
.tabs{position:static!important;order:99;border-bottom:0!important;border-top:1px solid #ece5de!important;padding:6px 6px calc(8px + env(safe-area-inset-bottom))!important;background:#fffdfa!important;box-shadow:0 -6px 18px rgba(60,40,30,.05)}
.tabs button{flex-direction:column!important;gap:3px!important;font-size:11.5px!important;min-height:52px!important;position:relative;transition:color .2s}
.tabs button .ic{width:22px;height:22px;transition:transform .25s cubic-bezier(.2,.8,.2,1)}
.tabs button.on .ic{transform:translateY(-2px) scale(1.08)}
.tabs button.on::before{content:"";position:absolute;top:0;width:28px;height:3px;border-radius:3px;background:#2f7a69;animation:fadeup .3s both}
.phone{height:clamp(520px,calc(100vh - 290px),660px)!important}@media(min-width:600px){.phone{height:820px!important}}
.phone{height:calc(100vh - 66px)!important;min-height:520px}@media(min-width:600px){.phone{height:820px!important}}
.carry{display:flex;gap:8px;align-items:center;margin:10px 2px 0;font-size:12.5px;color:#cfe3dc;animation:fadeup .4s both}.carry i{width:8px;height:8px;border-radius:50%;background:#7fd1b9;flex:none}
.carry{margin:10px 2px 12px}

/* v5: tomorrow preview, choices, bottom clearance */
main{padding-bottom:44px!important}
.choices{margin:10px 0 2px;display:flex;flex-direction:column;gap:6px}
.choice-row{display:flex;gap:8px;align-items:center;font-size:12.5px;color:#3d4a46}
.choice-row .ic{width:15px;height:15px;color:#2f7a69}
.note-box.tmr{background:#eef6f3;border:1px solid #cfe3dc;color:#1f5c4e;margin:0 0 14px}
.note-box.tmr b{color:#1f5c4e}
.note-box.tmr ul{margin:6px 0 0;padding-left:18px}
.hero.calm .cta{margin-top:14px}
.tmr-h{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:2px}
.tmr-h .link{flex:none}

/* v6: Nara branding + compact mobile entry so the first CTA is reachable on a real phone */
.brand{display:flex;align-items:center;gap:10px;margin:0 0 12px}
.brand .orb{width:30px;height:30px;animation:none}
.brand b{font-family:"Aime",Georgia,serif;font-weight:400;font-size:22px;letter-spacing:-.02em;display:block;line-height:1.1}
.brand small{font-size:11.5px;color:#585254;margin-top:1px}
.intro{padding:14px 18px 18px}
.intro h1{font-size:25px}
.intro .lede{margin-top:8px;font-size:14px;line-height:1.45}
.intro .field{margin-top:12px}
.intro .field label{margin-bottom:6px}
.intro .cta{margin-top:14px}
.intro .dev{padding:8px 12px;min-height:56px}
.intro .note-box{margin-top:10px;font-size:12px;padding:10px 12px}

/* v7: demo mode framing, wifi scan, plans, fridge check */
.wifi-ic .ic{width:16px;height:16px;vertical-align:-3px;margin-right:6px}
.dev.found{animation:fadeup .45s cubic-bezier(.2,.8,.2,1) both}
.wifi-scan{display:flex;align-items:center;gap:10px;color:#2f7a69;font-weight:600;font-size:14px;margin:14px 0}
.wifi-scan .ic{animation:pulse 1.2s ease-in-out infinite}
.plans{background:#fff;border:1px solid #ece5de;border-radius:18px;padding:14px;margin-bottom:14px}
.planrow{display:flex;gap:12px;align-items:center;width:100%;padding:10px 2px;border-top:1px solid #f0ebe5}
.planrow:first-of-type{border-top:0;padding-top:2px}
.planrow>div{flex:1}.planrow b{font-size:14px;display:block}.planrow small{font-size:12px}
.badge.b-plan{background:#e7eefb;color:#27427c}
.klist li b.miss{color:#a33d2e}

/* v8: circle progress chip, redeemed state */
.wk{font-size:12px;color:#2f7a69;font-weight:600}
.reward em.rd{color:#2f7a69;font-style:normal;font-weight:600}
.reward .cta.sm,.reward .sec{white-space:nowrap}
.textin{width:100%;border:1.5px solid #e4ddd6;border-radius:12px;padding:12px 14px;font-size:15px;background:#fff;min-height:44px;font-family:inherit;color:#241f22}
.breath-overlay{position:fixed;inset:0;background:rgba(24,32,29,.5);display:flex;align-items:center;justify-content:center;z-index:60;padding:16px}
.breath-card{background:#fbf9f6;border-radius:20px;padding:20px;width:100%;max-width:340px;text-align:center;display:flex;flex-direction:column;gap:4px}
.breath-box{position:relative;width:220px;height:220px;margin:14px auto;border:2px solid #cfe3dc;border-radius:14px;background:#fff;overflow:hidden}
.breath-dot{position:absolute;width:16px;height:16px;border-radius:50%;background:#2f7a69;transform:translate(-50%,-50%)}
.breath-scale{position:absolute;left:50%;top:50%;width:110px;height:110px;border-radius:50%;background:#eef6f3}
.breath-mid{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}
.breath-mid b{font-size:19px;color:#1f5c4e}
.breath-mid .big{font-size:32px;font-weight:700;color:#241f22}
.heard{background:#eef6f3;border:1px solid #cfe3dc;border-radius:16px;padding:14px 16px;display:flex;flex-direction:column;gap:6px}
.heard b{color:#1f5c4e;font-size:15px}
.heard p{font-size:13.5px;color:#3d3833;line-height:1.45;margin:0}
.heard ul{margin:0;padding-left:18px;font-size:13px;color:#3d3833;display:flex;flex-direction:column;gap:2px}
/* Connected day: a calmer mobile hierarchy */
body{background:#e7eee8;color:#20382e;font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-weight:400}
.stage{background:radial-gradient(ellipse at top,#f7f8ef,#dde8df)}
.phone{height:100dvh!important;min-height:0;background:#f7f8f1}
@media(min-width:600px){.phone{height:min(900px,calc(100dvh - 48px))!important;border:1px solid #d9e3d8;border-radius:32px}}
main{padding:8px 20px 32px!important;min-height:0}
.top{padding:20px 20px 12px!important;align-items:center;background:#f7f8f1}
.top small{font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:#67816f}
h2{font-size:26px!important;line-height:1.15}
h1,h2,h3{font-family:Georgia,'Times New Roman',serif;letter-spacing:-.035em}
.pill{background:transparent;border-color:#d2ddd1;font-size:11px;padding:8px 12px}
.orb{background:radial-gradient(circle at 28% 22%,#d8f0be,#65965e 52%,#244c36);animation:none;box-shadow:inset 0 0 1px #fff}
.hero{background:linear-gradient(135deg,#254c38,#163a2c);padding:22px;border-radius:26px;box-shadow:0 10px 24px #1c44251a;margin-bottom:22px}
.hero h3{font-size:27px;line-height:1.1}.hero .eyebrow{text-transform:uppercase;letter-spacing:.09em;font-size:10px;color:#c7deb7}
.hero .why{background:none;border-top:1px solid #ffffff26;padding:12px 0 0;margin:14px 0}.hero .why b{font-size:11px;color:#d4e1c8}.hero .why p{font-size:13px;line-height:1.5}
.hero .hero-note{font-size:11px;color:#c3d5bd;line-height:1.45;margin:0 0 16px}
.hero .ico.big{width:38px;height:38px;border-radius:50%;background:#a9ca8e24;color:#d2eab8}
.hero .row3{margin-top:12px}.hero .cta{background:#e0edc4;color:#203f2e}
.sec-h{margin:22px 0 12px;align-items:center;gap:12px}.sec-h h4{font-size:16px;letter-spacing:-.02em}.sec-h span{font-size:10px;max-width:155px;text-align:right;color:#718173}
.optgrid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.opt{position:relative;border:1px solid #dce5d7;background:#fffef8;border-radius:19px;padding:15px;min-height:125px;display:flex;flex-direction:column;align-items:flex-start;gap:6px;box-shadow:0 2px 1px #40562f03}
.opt::after{content:'↗';position:absolute;right:14px;top:13px;color:#7b9278;font-size:17px}.opt .ico{width:31px;height:31px;background:#edf2e4;border-radius:10px}.opt .ic{width:18px;height:18px}.opt b{font-size:15px;margin-top:2px}.opt small{font-size:11px;line-height:1.35;max-width:140px;color:#72806f}
.opt:nth-child(3),.opt:nth-child(4){background:#edf2e5}.link.center{display:flex;justify-content:center;width:100%;padding:8px 0;margin-bottom:16px;font-size:12px}
.heard{background:#edf1e5;border:0;border-left:3px solid #8aa172;border-radius:0 15px 15px 0;margin:8px 0 18px;padding:14px}.heard b{font-size:14px;color:#33513c}.heard p,.heard ul{font-size:12.5px}.heard small{font-size:10px}
.plans,.ctx{border-color:#dfe6d8;background:#fffef8;border-radius:20px;margin-top:14px}
.act{border-color:#e1e6d9;background:#fffef8;border-radius:16px}.act-main{min-height:72px}.act-main .ico{background:#edf1e6;border-radius:50%;width:36px;height:36px}.act-t b{font-size:13px}.act-t small{font-size:11px}.act em{font-size:10px;color:#7c8f68}
.ctx-i{background:#f2f4e9}.ctx-i b{font-size:14px}.obs-link{display:flex;gap:9px;border-top:1px solid #e0e5d6;margin-top:15px;padding-top:12px;font-size:12px;line-height:1.55;color:#62715e}.obs-link .ic{width:16px;height:16px;margin-top:2px;flex:none}
.ask.soft{background:#f0f3e7;border:0}.ask small{font-size:12px;line-height:1.6}.ask{margin-top:14px}
.tabs{background:#fffef8!important;border-color:#dce5d6!important;box-shadow:none;flex:none;padding:5px 8px calc(7px + env(safe-area-inset-bottom))!important}.tabs button{font-size:10px!important;color:#7a8773}.tabs button.on{color:#2e593f}.tabs button.on::before{background:#759451;width:18px;height:2px}
.sheet{background:#f7f8f1;border-radius:28px 28px 0 0;padding:30px 22px 28px;max-height:91%;box-shadow:0 -10px 35px #203a2a18}.sheet h3{font-size:28px;line-height:1.08;margin:8px 0 10px}.sheet>.eyebrow{font-size:10px;color:#6f8568;letter-spacing:.08em;text-transform:uppercase;max-width:85%}.sheet .x{background:#edf1e4;right:14px;top:14px;width:34px;height:34px}.field label{font-size:13px}.kcard{border-color:#dfe6d6;background:#fffef8;border-radius:18px;padding:16px}.kcard .muted{font-size:13px}
.cta{background:#315d41;border-radius:14px;min-height:49px;font-size:13px}.sec{background:#fffef8;border-color:#d8e2d1}.ghost{width:100%;font-size:12px}.chip{font-size:12px;border-color:#dce4d4;background:#fffef8;min-height:42px;padding:10px 13px}.chip.on{background:#e2edce;border-color:#8ba471;color:#2d4e33}
.micbtn{display:flex;align-items:center;gap:7px;min-height:40px;color:#3b6545;font-size:12px;font-weight:600;margin:6px 0}.micbtn .ic{width:18px;height:18px}.micbtn.live{color:#af473e}.voice-wrap{display:block}.voice-wrap small{font-size:10px}
.store-link{display:flex;align-items:center;justify-content:center;gap:12px;text-decoration:none}.textin{font-size:16px;border-color:#d9e2d0;background:#fffef8}.intro{background:radial-gradient(ellipse at top right,#eaf0db,transparent 65%);padding:24px 22px}.intro h1{font-size:32px;max-width:300px}.intro .lede{font-size:12px;line-height:1.6}.intro .brand{margin-bottom:22px}.intro .field{margin-top:18px}.intro .field label{font-size:12px}.intro .chip{font-size:11px}.intro .textin{font-size:16px}
.kitchen-link{min-height:48px}.klist li{align-items:center;gap:12px}.klist li span{flex:1}.klist li b{font-size:12px}.fine{font-size:10px;color:#7e8974}.learn.mini{background:#edf2e6;border:0;margin:10px 0}.tmr ul{padding-left:18px}.sheet a.link{text-decoration:underline}
@media(max-width:360px){main{padding-left:14px!important;padding-right:14px!important}.top{padding-left:14px!important;padding-right:14px!important}.opt{padding:12px;min-height:120px}.hero{padding:18px}h2{font-size:23px!important}}
/* Stable transitions: no stagger hiding primary controls */
main>*{animation:none!important}.hero{animation:none!important}.optgrid{grid-template-columns:repeat(3,1fr);gap:8px}.opt{min-height:98px;padding:12px 10px;gap:5px;border-radius:16px}.opt::after{display:none}.opt .ico{width:28px;height:28px}.opt b{font-size:12px}.opt small{font-size:9.5px;line-height:1.3}.link.center{font-size:11px;min-height:34px;padding:5px 0;margin:2px 0}.sec-h{margin-top:12px}.hero h3{font-size:25px}.hero{padding:18px 20px}.hero .why-src{margin-top:5px}.hero-t{gap:10px}.hero .row3{margin-top:8px}.hero .why{margin:10px 0;padding-top:10px}.sheet{animation:none!important}.micbtn+small{color:#73806e}
.tomorrow .hero .row3,.tomorrow .hero>.cta,.tomorrow .act-x .row3,.tomorrow .act-x>.cta,.tomorrow .act-x .kitchen-link{display:none!important}
.act-x{animation:none!important}.ctx details summary{font-size:11px;min-height:32px;display:flex;align-items:center;color:#5d7952;cursor:pointer}.ctx .ctx-head{margin-bottom:0}.ctx{padding:13px 15px}.ctx .link{font-size:11px;min-height:30px}.ctx details[open] .ctx-grid{margin-top:8px}.heard{margin-bottom:10px}.ctx .obs-link{margin-top:8px;padding-top:8px}.tomorrow .ctx{margin-top:10px}
/* A quieter editorial system: warm ivory, evergreen, open space and useful contrast. */
.phone,.top{background:#fbfaf6}.top{padding-top:25px!important;padding-bottom:18px!important}.hello{gap:12px}.top h2{font-size:29px!important;letter-spacing:-.045em}.top .orb{width:24px;height:24px;box-shadow:none}.top .pill{border:0;background:#eeeee6;border-radius:50px;font-size:11px;min-height:40px}.top small{letter-spacing:.12em;font-size:9px}main{padding-top:0!important}.heard{background:none;border:0;border-radius:0;padding:4px 0 18px;margin:0;border-bottom:1px solid #e6e8de}.heard b{font-size:12px;letter-spacing:.015em}.heard p{font-size:13px;line-height:1.6;color:#5b6b60}.sec-h{margin:25px 0 12px}.sec-h h4{font-size:15px;font-weight:600;letter-spacing:-.025em}.sec-h span{font-size:11px}.ctx{border:0;background:#edf1e8;border-radius:18px;margin:20px 0 0;padding:15px 16px}.ctx .ctx-head b{font-size:12px;letter-spacing:.02em}.ctx .muted{font-size:13px;line-height:1.65;margin-top:6px}.ctx summary{font-size:12px!important;min-height:44px!important}.ctx .link{min-height:44px;font-size:12px}.ctx-head .link{min-height:24px}.hero.today-hero{position:relative;background:#244b3d;overflow:hidden;padding:26px 22px 22px;border-radius:24px;box-shadow:none;margin-bottom:14px}.today-hero>.landscape{position:absolute;right:-5px;top:0;width:100%;height:110px;opacity:.13;pointer-events:none}.today-hero>*:not(.landscape){position:relative}.today-hero .eyebrow{margin-bottom:22px;color:#e0e9ca;font-size:10px;letter-spacing:.1em}.today-hero .hero-t{display:block}.today-hero .ico.big{display:none}.today-hero h3{font-size:33px;line-height:1.08;max-width:260px;font-weight:400;letter-spacing:-.035em}.today-hero .hero-t p{margin-top:12px;font-size:14px;line-height:1.55;max-width:270px}.today-hero .why{margin:20px 0 12px;border-top:1px solid #ffffff28;padding-top:2px}.today-hero .why summary{font-size:12px;min-height:44px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;list-style:none;color:#dfebdd}.today-hero .why summary span{font-size:20px;font-weight:300}.today-hero .why[open] summary span{transform:rotate(45deg)}.today-hero .why p{font-size:13px}.today-hero .row3{gap:8px;margin-top:10px}.today-hero .cta{background:#e6edc9;border-radius:50px;color:#244635;min-height:48px}.today-hero .sec{border-radius:50px;background:transparent;border-color:#ffffff4d;font-size:12px;min-height:48px}.today-hero .cta.sm{border-radius:50px}.act{border:0;border-bottom:1px solid #e4e7de;background:transparent;border-radius:0;margin:0}.act-main{padding:15px 0;min-height:80px;gap:12px}.act-t b{font-size:14px;font-weight:500;line-height:1.4}.act-t small{font-size:12px;margin-top:5px}.act-main>.ico{background:#eef0e6;width:38px;height:38px}.act em{display:none}.arc{border-bottom:1px solid #e3e7dc;padding-bottom:8px}.arc button{font-size:11px;min-height:44px}.arc small{font-size:10px}.bar{height:3px}.plans{background:none;border:0;border-bottom:1px solid #e2e7dc;padding:15px 0;border-radius:0}.plans .ctx-head{font-size:12px;color:#75836e}.plans .planrow{padding:0}.plans .planrow small{line-height:1.6}.ask.soft{border:1px solid #e1e6d7;background:#f5f4eb;border-radius:18px;padding:16px;margin:20px 0}.ask .seg button{font-size:11px;min-height:44px;min-width:70px;padding:9px 4px}.ask-h b{font-size:13px}.tabs{background:#fbfaf6!important}.tabs button{min-height:56px!important}.tabs button.on::before{display:none}.tabs button.on .ic{background:#e8eddf;box-shadow:0 0 0 7px #e8eddf;border-radius:6px}.tabs button .ic{margin-bottom:6px}.tabs button.on{font-weight:600}.optgrid{grid-template-columns:1fr 1fr;gap:10px;padding-top:12px}.opt{background:#f0f2e9!important;border:0;border-radius:16px;padding:15px!important;min-height:110px;gap:7px;box-shadow:none}.opt .ico{background:none;width:28px;height:28px}.opt b{font-size:13px}.opt small{font-size:11px;line-height:1.45}.explore-drawer{border-top:1px solid #e2e6db}.explore-drawer summary{min-height:48px;display:flex;align-items:center;justify-content:space-between;font-size:12px;cursor:pointer;color:#5f715e;list-style:none}.explore-drawer[open] summary{display:none}.saved-setup{margin-bottom:10px}.saved-setup b{font-size:13px}.saved-setup small{font-size:12px;margin-top:4px}.link.center{min-height:44px;font-size:12px;margin:8px 0}.fine{font-size:11px;line-height:1.65;padding:10px 0}.link{min-height:44px}.sheet .link{min-height:44px}.cta:disabled{opacity:.5;cursor:not-allowed}
/* Circle: no names, rankings, inferred emotions or public health data. */
.circle-intro{padding:10px 0 24px}.eyebrow{display:block;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:#6d7f68}.circle-intro h1{font-size:40px;line-height:1.04;margin:15px 0;color:#244b3d;letter-spacing:-.045em}.circle-intro p{font-size:14px;line-height:1.65;color:#647062;max-width:260px}.privacy-row{width:100%;display:flex;gap:10px;align-items:center;border-top:1px solid #e0e5d8;border-bottom:1px solid #e0e5d8;padding:14px 0;margin-bottom:20px}.privacy-symbol{font-size:28px;color:#71866a;width:28px;flex:none}.privacy-row>span:nth-child(2){flex:1}.privacy-row b{font-size:12px;line-height:1.5;display:block}.privacy-row small{font-size:11px;margin-top:3px}.privacy-row>span:last-child{font-size:11px;font-weight:600;color:#476742}.circle-seg{display:flex;gap:5px;padding:4px;background:#edeee6;border-radius:40px;margin:0 0 20px}.circle-seg button{flex:1;min-height:43px;text-align:center;border-radius:40px;font-size:12px;font-weight:600;color:#6b7a65}.circle-seg button.on{background:#fffef9;color:#284a37;box-shadow:0 2px 4px #223e2110}.circle-seg button span{font-size:10px;margin-left:4px;background:#e4e9dc;border-radius:20px;padding:2px 6px}.landscape{display:block;width:100%;height:auto;color:#466f51}.landscape .land-sun{fill:#eadba7}.landscape .land-back{fill:#c6d2ae}.landscape .land-front{fill:#a1b58a}.landscape.lilac{color:#79728e}.landscape.lilac .land-sun{fill:#f0dcbd}.landscape.lilac .land-back{fill:#d6cfe0}.landscape.lilac .land-front{fill:#b7adc8}.landscape.peach{color:#a77861}.landscape.peach .land-sun{fill:#f0ddb1}.landscape.peach .land-back{fill:#e5c9ad}.landscape.peach .land-front{fill:#cfad92}.circle-empty,.challenge-active{overflow:hidden;border-radius:23px;background:#edf1e6;margin-bottom:20px}.circle-empty>div{padding:5px 23px 23px}.circle-empty h3{font-size:28px;line-height:1.1;margin:10px 0}.circle-empty p{font-size:14px;line-height:1.65;color:#64705f}.circle-empty .cta{border-radius:40px}.challenge-active>.landscape{max-height:115px;object-fit:cover}.challenge-active.lilac{background:#f0edf3}.challenge-active.peach{background:#f6eee4}.challenge-body{padding:15px 22px 22px}.challenge-body h3{font-size:30px;line-height:1.08;max-width:230px;margin:12px 0 22px}.contribution{display:flex;flex-direction:column;gap:7px}.contribution>b{font-size:34px;font-weight:400;line-height:1}.contribution small{display:inline;font-size:16px;color:#64725a}.contribution>span{font-size:11px;color:#68765e}.milestone-track{display:flex;gap:7px;margin:16px 0}.milestone-track i{height:7px;flex:1;background:#d6dfcc;border-radius:20px;font-size:0}.milestone-track i.complete{background:#567b48}.challenge-body>p{font-size:12px;line-height:1.65;color:#64725a}.shared-total{border-top:1px solid #d2ddc5;padding-top:15px;margin-top:20px;display:flex;flex-direction:column;gap:4px}.shared-total b{font-size:14px}.shared-total span{font-size:12px;color:#66745e}.challenge-body>.link{margin-top:10px;font-size:12px}.circle-support{background:#f4eee4;border-radius:22px;padding:23px;margin:18px 0}.circle-support h3{font-size:26px;margin:12px 0}.circle-support p{font-size:13px;line-height:1.65;color:#756b5a}.support-btn{border:1px solid #cfc5ad;border-radius:30px;padding:12px 20px;min-height:46px;margin-top:18px;font-size:12px;font-weight:600}.support-btn.sent{background:#e7dfcb}.circle-support>small{margin-top:10px;font-size:11px}.browse-link{width:100%;padding:15px 0;min-height:66px;border-bottom:1px solid #e1e6da;font-size:13px;font-weight:600}.browse-link span{display:block;font-size:12px;color:#69815c;margin-top:8px}.circle-foot{font-size:11px;line-height:1.7;color:#7d8676;margin:24px 0 6px}.discovery-intro{font-size:13px;line-height:1.65;color:#6e7968;margin-bottom:18px}.challenge-discover{width:100%;border:1px solid #e0e5d7;border-radius:22px;background:#fffef8;overflow:hidden;margin-bottom:16px;display:block}.challenge-discover>.landscape{height:105px;object-fit:cover}.challenge-discover>div{padding:20px}.challenge-discover h3{font-size:28px;line-height:1.1;margin:10px 0 12px;max-width:250px}.challenge-discover p{font-size:12px;color:#75816c}.discover-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #e5e9de;margin-top:16px;padding-top:15px;gap:10px}.discover-bottom small,.discover-bottom b{font-size:11px}.discover-bottom b{color:#42603c}.circle-modal{position:fixed;inset:0;background:#23392c66;z-index:55;display:flex;justify-content:center;align-items:flex-end}.circle-sheet{position:relative;max-height:94dvh;overflow:auto;width:100%;max-width:430px;background:#fbfaf6;border-radius:28px 28px 0 0;padding:26px 24px 30px;box-shadow:0 -6px 30px #12221520}.circle-sheet>.landscape{margin:-26px -24px 23px;width:calc(100% + 48px);max-width:none;height:140px;object-fit:cover}.circle-sheet .x{position:absolute;right:15px;top:15px;background:#ffffffdd;border-radius:50%;width:44px;height:44px;text-align:center;z-index:2;font-size:16px}.circle-sheet>.eyebrow{font-size:10px;line-height:1.6;max-width:85%}.circle-sheet h2{font-size:34px!important;line-height:1.05;margin:12px 0 24px;max-width:285px}.circle-sheet h4{font-size:13px;margin:22px 0 8px}.circle-sheet p{font-size:13px;line-height:1.7;color:#6b7665}.badge-preview{display:flex;gap:14px;align-items:center;background:#f0f0e4;padding:17px;border-radius:17px;margin-top:22px}.badge-preview>span{font-size:32px;color:#7c8d53}.badge-preview b{font-size:13px}.badge-preview small{font-size:11px;line-height:1.6;margin-top:4px}.sharing-choice{display:flex;flex-direction:column;gap:9px;margin:13px 0}.sharing-choice button{border:1px solid #dce3d2;border-radius:15px;min-height:74px;padding:14px 16px;position:relative}.sharing-choice button b{font-size:13px;display:block}.sharing-choice button small{font-size:11px;margin-top:5px;max-width:85%}.sharing-choice button.on{border-color:#6b8a5a;background:#edf2e5}.sharing-choice button.on::after{content:'✓';position:absolute;right:16px;top:22px;color:#4c6e3d}.circle-sheet>.cta{border-radius:50px;margin-top:22px}.join-foot{text-align:center;font-size:10px;margin-top:12px;line-height:1.6}.circle-sheet .ghost{min-height:48px;margin-top:10px}.circle-sheet .note-box{line-height:1.7}
@media(max-width:360px){.circle-intro h1{font-size:36px}.circle-sheet{padding-left:20px;padding-right:20px}.today-hero h3{font-size:30px}.circle-sheet>.landscape{margin-left:-20px;width:calc(100% + 40px)}.privacy-row{gap:6px}.privacy-row b{font-size:11px}.privacy-row small{font-size:10px}.circle-body{padding:20px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important}}
/* Nutrition is a three-step cooking journey, not a device workflow. */
.kitchen-steps{display:flex;gap:12px;margin:22px 0;border-bottom:1px solid #e1e6d7;padding-bottom:15px}.kitchen-steps span{flex:1;font-size:10px;color:#8a9382;display:flex;align-items:center;gap:6px}.kitchen-steps b{width:21px;height:21px;display:grid;place-items:center;border-radius:50%;background:#e8ecdf;font-size:10px}.kitchen-steps span.on{font-weight:600;color:#395936}.kitchen-steps .on b{background:#466a40;color:#fff}.ingredient-choices{display:grid;grid-template-columns:1fr 1fr;gap:10px}.ingredient-choices button{border:1px solid #dce3d2;background:#fffef8;border-radius:15px;display:flex;justify-content:space-between;align-items:center;padding:17px 14px;min-height:63px;font-size:13px}.ingredient-choices button.on{background:#edf2e4;border-color:#7b9569;color:#375931}.ingredient-choices i{font-style:normal;color:#6d8a5c}.recipe-well{background:#e9eddf;border-radius:20px;padding:24px;display:flex;flex-direction:column;align-items:center;gap:15px;margin-top:20px}.recipe-well .ic{width:48px;height:48px;color:#809768;stroke-width:1}.recipe-well span{font-family:Georgia,serif;font-size:19px;text-align:center;line-height:1.35;color:#566c45}.recipe-ingredients>b{font-size:13px}.recipe-ingredients .klist{margin:8px 0 16px}.recipe-ingredients .klist small{font-size:10px;margin-top:4px;color:#839074}.recipe-ingredients .klist li{min-height:57px}.recipe-ingredients .klist li>b{font-size:12px;max-width:110px;text-align:right}.recipe-ingredients>small{line-height:1.6}.missing-row{padding:15px 4px;border-bottom:1px solid #e3e7d9}.missing-row b{font-size:13px}.missing-row p{font-size:12px;margin:7px 0;color:#718068}.missing-row .link{display:flex;min-height:40px;font-size:12px}.optional-measure{border-top:1px solid #e1e6d7;border-bottom:1px solid #e1e6d7;margin:20px 0;padding-bottom:6px}.optional-measure summary{display:flex;justify-content:space-between;min-height:52px;align-items:center;font-size:12px;cursor:pointer}.optional-measure .textin{margin:12px 0}.optional-measure p{font-size:12px}.meal-complete-note{font-size:12px;color:#73806b;line-height:1.65;margin:22px 0}.nutrition-next{font-size:13px;color:#6a795f;line-height:1.65;margin-top:18px}.sheet>.cta{border-radius:50px}.hero .why{border-radius:0}.hero .why summary{border-radius:0}
.challenge-go{min-height:46px;display:block;font-size:12px;font-weight:600;color:#3c6237;margin-top:15px;border:1px solid #c6d5bb;border-radius:30px;width:100%;text-align:center;padding:8px 12px}
.multi-hint{font-size:11px;line-height:1.5;margin-bottom:10px}.intro .chip{font-size:11px;min-height:42px;padding:9px 11px}.nutrition-layer{border:1px solid #dfe5d5;border-radius:20px;padding:20px;margin:22px 0;background:#fffef9}.nutrition-layer h4{font-family:Georgia,serif;font-size:25px;font-weight:400;line-height:1.15;margin:13px 0}.nutrition-layer p,.micro-explainer p{font-size:13px;line-height:1.7;color:#6c7962;margin:12px 0}.nutrition-layer small{font-size:11px;line-height:1.7;margin-top:12px}.nutrition-layer .chips{margin:15px 0}.nutrition-layer .chip{font-size:11px}.nutrition-layer.outcome{background:#f0eee5;border:0}.meal-macros{background:#edf1e5;border-radius:18px;padding:18px;margin:18px 0}.meal-macros>.eyebrow{font-size:9px;line-height:1.6}.macro-grid{display:grid;grid-template-columns:repeat(3,1fr);margin:19px 0;gap:10px}.macro-grid b{display:block;font-size:24px;font-weight:400;color:#355337}.macro-grid small{font-size:11px;margin-top:5px}.meal-macros>small{font-size:10px;line-height:1.7;color:#6f7b64}.meal-macros summary,.micro-explainer summary{font-size:12px;min-height:44px;display:flex;align-items:center;justify-content:space-between;cursor:pointer}.meal-macros p{font-size:11px;line-height:1.7;color:#718065}.meal-macros a,.micro-explainer a{display:block;min-height:44px;font-size:11px;color:#4d6d3e;padding:12px 0}.micro-explainer{border-top:1px solid #dfe6d5;border-bottom:1px solid #dfe6d5}.micro-explainer summary{min-height:58px;gap:10px}.nutrient-gap{font-size:11px;line-height:1.7;color:#718065;padding:15px 0}.week-title{font-size:37px;margin:18px 0 26px}
.food-detail{border-bottom:1px solid #e0e5d7;margin-top:15px}.food-detail summary{min-height:48px;display:flex;align-items:center;justify-content:space-between;font-size:12px;cursor:pointer}.food-detail .field{margin:0 0 15px}
.scrim{animation:none!important;opacity:1!important}.sheet{opacity:1!important;background:#fbfaf6!important}.intro{overflow-y:auto;padding-bottom:30px}.intro .brand{margin-bottom:16px}.intro h1{font-size:30px}.intro .field{margin-top:15px}
.support-choices{margin:22px 0}.support-choices .chip{font-size:12px}.sheet .x{width:44px;height:44px}
/* Photography is atmosphere, never a claimed place, person or recipe record. */
.today-hero{isolation:isolate}.today-hero>.hero-photo{position:absolute!important;right:0;top:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2;opacity:.55}.today-hero:has(.hero-photo)::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#163a2bea 0%,#163a2bb5 60%,#163a2b68 100%);z-index:-1}.today-hero:has(.hero-photo)>.landscape{display:none}.hero.today-hero.tone-breakfast,.hero.today-hero.tone-grill{background:#735039}.hero.today-hero.tone-checkin,.hero.today-hero.tone-winddown{background:#4e4b70}.today-hero.tone-breakfast .cta,.today-hero.tone-grill .cta{background:#f5dfbb;color:#5a3b2c}.today-hero.tone-checkin .cta,.today-hero.tone-winddown .cta{background:#e3dcf1;color:#454166}.heard{border-bottom-color:#e8e0d4}.ctx{background:#eef0e4}.ask.soft{background:#f7eddd;border-color:#eee0c7}.optgrid{gap:12px;margin-bottom:10px}.opt{overflow:hidden;isolation:isolate;min-height:122px;padding:18px!important;background:#f3e6d6!important;gap:6px}.opt:nth-child(2){background:#e3eadb!important}.opt:nth-child(3){background:#efe5c9!important}.opt:nth-child(4){background:#e8e3f0!important}.opt:nth-child(5){background:#dfecef!important}.opt:nth-child(6){background:#f0dfd9!important}.opt .ico{position:relative;color:#5c6851}.opt .explore-photo{width:100%;height:95px;display:block;object-fit:cover;object-position:center 57%;margin:-18px -18px 8px;width:calc(100% + 36px);max-width:none}.opt:has(.explore-photo) .ico{display:none}.opt:has(.explore-photo){padding-top:18px!important}.opt b{font-size:14px;font-weight:600;line-height:1.35}.opt small{font-size:11px;line-height:1.5;min-height:32px}.completed-section{margin:25px 0 6px;min-width:0}.completed-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.completed-heading h4{font-size:15px}.completed-heading h4>span{font-size:11px;background:#e4e9d9;padding:4px 7px;border-radius:50px;margin-left:5px}.strip-controls{display:flex;gap:5px}.strip-controls button{width:44px;height:44px;border:1px solid #dce3d2;border-radius:50%;display:grid;place-items:center;font-size:19px;background:#fffef8;color:#4e6c3e}.strip-controls button:disabled{opacity:.3;cursor:default}.completed-strip{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#a3b791 transparent;padding:2px 2px 8px;max-width:100%;overscroll-behavior-x:contain}.completed-card{flex:0 0 185px;scroll-snap-align:start;border-radius:18px;background:#eaf0e1;padding:16px;min-height:136px;border:1px solid #dce5d2}.completed-card:nth-child(3n+2){background:#f4e8d4;border-color:#eadbc1}.completed-card:nth-child(3n){background:#eae5f2;border-color:#e0d7eb}.done-mark{color:#4d7440;background:#fff9;border-radius:50%;width:24px;height:24px;display:grid;place-items:center;font-size:12px}.completed-card h5{font-size:13px;line-height:1.5;margin:11px 0 6px;font-weight:500;overflow-wrap:anywhere}.completed-card small{font-size:10px;color:#7c8871}.strip-hint{font-size:10px;margin-top:6px;color:#7d8c73}.image-credits{border-top:1px solid #e6e6dc;margin-top:25px}.image-credits summary{min-height:44px;display:flex;align-items:center;cursor:pointer;font-size:10px;color:#7c8674}.image-credits p{font-size:11px;line-height:1.6;color:#728069}.image-credits a{display:block;font-size:11px;min-height:44px;padding:12px 0;color:#567347}.hero.calm{background:#e3eacb;box-shadow:none}.hero.calm .cta{background:#547144}.today-hero>.hero-photo{pointer-events:none}button:focus-visible,summary:focus-visible,.completed-strip:focus-visible{outline:2px solid #728854;outline-offset:3px}
.hero.calm .cta{color:#fff;background:#547144}.completed-card{min-height:122px;padding:14px}.completed-card h5{margin-top:9px}.completed-heading{min-height:44px}.opt .explore-photo{object-position:center 65%}
.today-hero>.hero-photo{z-index:0;opacity:1}.today-hero:has(.hero-photo)::after{z-index:1;background:linear-gradient(90deg,#163a2be0 0%,#163a2b9c 60%,#163a2b59 100%)}.today-hero>*:not(.landscape):not(.hero-photo){z-index:2}
/* Nara house palette: evergreen primary, warm oat secondary, ivory surface. */
:root{--nara-green:#244b3d;--nara-sage:#e7eddf;--nara-oat:#efe7d5}.hero.today-hero,.hero.today-hero.tone-breakfast,.hero.today-hero.tone-grill,.hero.today-hero.tone-checkin,.hero.today-hero.tone-winddown{background:var(--nara-green)}.today-hero.tone-breakfast .cta,.today-hero.tone-grill .cta,.today-hero.tone-checkin .cta,.today-hero.tone-winddown .cta{background:#e6edc9;color:#244635}.opt:nth-child(n){background:var(--nara-sage)!important}.opt:nth-child(3),.opt:nth-child(4){background:#edf0e7!important}.completed-card:nth-child(n){background:#e7eddf;border-color:#dce5d2}.ctx{position:relative;border:1px solid #d9e3cf;background:#edf1e6;padding:20px;border-radius:22px}.ctx .ctx-head{align-items:flex-start;gap:10px}.ctx .ctx-head b{font-family:Georgia,serif;font-size:24px;font-weight:400;line-height:1.1;display:block;margin-top:9px;letter-spacing:-.03em}.ctx .ctx-head .eyebrow{font-size:9px}.ctx-head>.link{font-size:10px;border:1px solid #cbd8c0;border-radius:30px;padding:8px 10px;min-height:44px;max-width:96px}.ctx>.link{display:flex;align-items:center;justify-content:space-between;width:100%;background:#244b3d;color:#fff;border-radius:30px;min-height:46px;padding:12px 18px;font-size:12px;margin-top:12px}.ctx>.muted{margin-top:16px}.ctx details summary{min-height:44px!important}.ctx .obs-link{line-height:1.6}.ctx .ctx-head .link{white-space:normal}.reward-banner,.insight-banner{background:#e7eddf;border-radius:24px;overflow:hidden;margin:8px 0 25px}.reward-banner>.landscape,.insight-banner>.landscape{height:112px;object-fit:cover}.reward-banner>div,.insight-banner>div{padding:22px}.reward-banner h1,.insight-banner h1{font-size:35px;line-height:1.07;letter-spacing:-.035em;color:#244b3d;margin:13px 0 17px;font-weight:400}.reward-banner p,.insight-banner p{font-size:13px;line-height:1.7;color:#5d705c}.points-line{display:flex;align-items:center;gap:15px;border-top:1px solid #ccd8bf;padding-top:18px;margin-top:20px}.points-line>b{font-size:45px;font-weight:400;color:#244b3d}.points-line>span{font-size:11px;line-height:1.6;color:#64735b}.reward-disclosure{font-size:12px;line-height:1.7;margin-bottom:20px}.reward-concept{border:1px solid #dce3d4;border-radius:22px;overflow:hidden;margin:16px 0;background:#fffef8}.reward-art{height:110px;background:#e9edde;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.reward-art span{font-size:66px;font-family:Georgia,serif;line-height:1;color:#5e7d49;z-index:1}.reward-art i{position:absolute;width:160px;height:90px;border-radius:50%;background:#cad8b7;bottom:-60px;left:-10px;transform:rotate(-15deg)}.reward-art i:last-child{left:auto;right:-10px;background:#d9e1c9;bottom:-50px;transform:rotate(20deg)}.reward-copy{padding:20px}.reward-copy h3{font-size:27px;margin:13px 0 10px;line-height:1.15}.reward-copy p{font-size:13px;color:#68755e;line-height:1.6}.reward-copy small{font-size:10px;line-height:1.7;display:block;color:#78846c}.reward-copy button{border-radius:30px;min-height:44px;margin:18px 0 9px;border-color:#b7c7a6}.story-intro{font-size:11px;line-height:1.6;border-bottom:1px solid #dce3d4;padding-bottom:17px}.story-intro b,.story-intro span{display:block}.story-intro span{color:#748069;margin-top:4px}.insight-story{display:flex;gap:14px;border-bottom:1px solid #dce3d4;padding:24px 0}.story-number{font-family:Georgia,serif;color:#81976e;font-size:24px;flex-shrink:0}.insight-story small{font-size:10px;color:#6f7d63}.insight-story h3{font-size:26px;line-height:1.12;margin:10px 0 14px}.insight-story p{font-size:13px;line-height:1.7;color:#6d7863}.story-takeaway{background:#edf1e5;padding:14px;border-radius:12px;margin-top:16px;font-size:12px;line-height:1.65;color:#49663d}.actual-record{background:#f1eee4;padding:22px;border-radius:22px;margin-top:25px}.actual-record h3{font-size:27px;line-height:1.15;margin:15px 0}.actual-record p{font-size:13px;line-height:1.7;color:#6c765f}.actual-record small{display:block;font-size:11px;line-height:1.7;margin-top:18px;color:#78816e}.actual-record .cta{border-radius:30px;margin-top:10px}.food-journey>.muted{font-size:13px;line-height:1.7;margin:20px 0}.food-journey>h3{font-size:33px;line-height:1.08;margin:15px 0 22px;max-width:95%}.food-journey .circle-seg{margin-top:22px}.meal-row{display:flex;align-items:center;gap:15px;padding:20px 0;min-height:90px;width:100%;border-bottom:1px solid #dfe5d6}.meal-row b{font-family:Georgia,serif;font-size:23px;font-weight:400;line-height:1.15;display:block;margin:7px 0}.meal-row small{font-size:11px;line-height:1.6;color:#6b7d5e;display:block}.meal-symbol{width:42px;height:42px;background:#e7eddf;border-radius:50%;display:grid;place-items:center;font-size:25px;color:#5a784b;flex-shrink:0}.day-pick{display:flex;align-items:center;justify-content:space-between;font-size:13px;margin-top:10px}.day-pick button{height:44px;width:44px;font-size:21px;color:#57784a}.day-pick button:disabled{opacity:.25}.week-meals>button{display:block;width:100%;border-bottom:1px solid #dce3d4;padding:16px 0}.week-meals b,.week-meals span,.week-meals small{display:block}.week-meals b{font-size:11px;color:#6b7e5e}.week-meals span{font-family:Georgia,serif;font-size:23px;line-height:1.2;margin:8px 0}.week-meals small{font-size:10px;color:#77866a}.meal-alternative{display:flex;justify-content:space-between;gap:12px;width:100%;font-size:13px;line-height:1.5;min-height:48px;padding:12px 0;border-top:1px solid #e3e8da}.food-journey .cta{border-radius:30px;margin-top:16px;min-height:46px}.food-journey>.hint{margin-top:17px}.food-journey .klist b{max-width:100px;text-align:right;font-size:12px}.food-journey .klist small{font-size:10px;margin-top:6px}.food-journey .ingredient-choices small{font-size:10px;margin-top:5px;color:#738267}.grill-handoff{background:#e9eddf;border-radius:18px;padding:18px;margin:20px 0}.grill-handoff b{font-size:13px}.grill-handoff p{font-size:13px;line-height:1.7;margin:12px 0;color:#5a7050}.grill-handoff small{display:block;font-size:10px;line-height:1.7;color:#6d7c61;margin-top:12px}.grill-handoff button{min-height:44px;border-radius:30px;font-size:12px}.cook-steps{padding:0;margin:20px 0;list-style:none}.cook-steps li{display:flex;gap:12px;padding:17px 0;border-bottom:1px solid #dfe5d7}.cook-steps li>span{background:#e8eddf;color:#5c7849;display:grid;place-items:center;width:25px;height:25px;border-radius:50%;font-size:11px;flex:none}.cook-steps p{font-size:13px;line-height:1.75;color:#5f7056}.safety-note{background:#efe8d8;padding:17px;border-radius:15px;font-size:12px;line-height:1.7}.safety-note a{display:block;padding-top:10px;min-height:44px;font-size:11px;color:#47653b}.food-journey>.eyebrow{padding-right:20px}.sheet .x{z-index:5}.reward-art{color:#244b3d}.opt .explore-photo{height:90px}
.cook-recipe-name{font-size:13px;line-height:1.6;color:#648054;border-bottom:1px solid #dce4d2;padding:0 0 15px;margin-top:-7px}.recipe-well small{font-size:11px}.food-journey .hint{line-height:1.7}
.section-art{display:block;width:100%;height:150px}.monthly-banner{background:#e7eddf;border-radius:24px;overflow:hidden;margin:8px 0 20px}.monthly-banner>div{padding:20px 22px 24px}.monthly-banner h1{font-size:36px;line-height:1.06;font-weight:400;letter-spacing:-.035em;margin:14px 0 15px;color:#244b3d}.monthly-banner p{font-size:13px;line-height:1.7;color:#687a5f}.direction-edit{display:flex;justify-content:space-between;align-items:center;width:100%;border-top:1px solid #ccd9bf;margin-top:20px;padding-top:12px;min-height:44px;font-size:11px;font-weight:600;color:#365d3d}.direction-options{border:1px solid #d4dfca;padding:18px;border-radius:18px;margin:15px 0}.direction-options>b{font-size:13px}.direction-options>p{font-size:12px;line-height:1.7;color:#708064;margin:10px 0}.direction-options button{display:block;width:100%;padding:12px 10px;border-radius:12px;min-height:44px;font-size:12px}.direction-options button.on{background:#e7eddf;color:#355a3b}.adherence-summary{display:flex;flex-wrap:wrap;align-items:center;gap:15px;padding:15px 0 18px}.adherence-summary>div:first-child{flex:1}.adherence-summary h2{font-family:Georgia,serif;font-size:62px!important;font-weight:400;letter-spacing:-.04em;line-height:1;margin:15px 0 12px}.adherence-summary h2>span{font-size:26px;margin-left:3px}.adherence-summary p{font-size:12px;line-height:1.6;color:#5b7350}.adherence-summary>small{width:100%;font-size:10px;line-height:1.6;color:#7a876f}.adherence-mark{height:88px;width:88px;border-radius:50%;background:conic-gradient(#4e744d 0 76.19%,#e4e9dc 76.19%);display:grid;place-items:center}.adherence-mark>span{display:flex;flex-direction:column;justify-content:center;align-items:center;background:#fbfaf6;height:69px;width:69px;border-radius:50%;font-family:Georgia,serif;font-size:25px;color:#42683e}.adherence-mark small{font-family:Arial,sans-serif;font-size:9px;color:#778769;margin-top:3px}.adherence-status{display:flex;flex-wrap:wrap;gap:9px 13px;border-top:1px solid #dce4d2;border-bottom:1px solid #dce4d2;padding:15px 0;font-size:10px;color:#6b7c5e}.adherence-status i{display:inline-block;height:6px;width:6px;border-radius:50%;background:#52764b;margin-right:5px}.adherence-status>span:nth-child(2) i{background:#adbca0}.adherence-status>span:nth-child(3) i{background:#e2d8bd}.adherence-intro{font-size:12px;line-height:1.7;color:#78856c;margin:0 0 12px}.adherence-row{border-bottom:1px solid #dfe5d6;padding:15px 0 20px}.adherence-row button{display:flex;justify-content:space-between;align-items:center;width:100%;gap:12px;min-height:44px;font-size:13px;font-weight:600;color:#345b3c}.adherence-row small{display:block;font-size:10px;font-weight:400;line-height:1.6;color:#7a876f;margin-top:5px}.adherence-row b{font-size:18px;font-weight:400;white-space:nowrap}.adherence-row b i{font-size:17px;font-style:normal;padding-left:8px;color:#8aa074}.adherence-track{height:5px;background:#e5eadf;border-radius:8px;margin-top:12px;overflow:hidden}.adherence-track>i{height:5px;background:#658752;display:block}.adherence-row p{font-size:12px;line-height:1.75;color:#6e7b63;margin-top:15px}.insight-next{background:#eef0e4;padding:22px;border-radius:22px;margin:25px 0 15px}.insight-next h3{font-size:30px;line-height:1.08;margin:16px 0}.insight-next p{font-size:13px;line-height:1.75;color:#67775c}.insight-next .cta{border-radius:30px;margin-top:20px}.insight-data{border-bottom:1px solid #e0e5d8}.insight-data summary{font-size:11px;line-height:1.5;min-height:52px;display:flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer}.insight-data p{font-size:11px;line-height:1.8;color:#748167;padding-bottom:15px}.redeem-cta{display:block;width:100%;border-radius:30px;padding:14px 20px;min-height:48px;background:#244b3d!important;color:#fff!important;font-size:12px;font-weight:600;text-align:center;border:0!important;margin:18px 0 10px!important}.redeem-review{background:#edf1e5;padding:16px;border-radius:16px;margin-top:16px}.redeem-review>b{font-size:13px}.redeem-review p{font-size:12px;line-height:1.75}.reward-banner>.section-art{height:150px}.reward-copy>.redeem-cta{padding:14px 20px!important}.insight-period{margin:20px 0 5px}
.reward-copy .redeem-cta{min-height:48px!important;padding:14px 20px!important}.reward-copy .redeem-review .redeem-cta{min-height:48px!important}
/* Compact observations and swipeable daily actions */
.compact-observations.ctx{padding:13px 15px;margin:10px 0 0;border-radius:17px}
.compact-observations.ctx .ctx-head{align-items:center;margin:0}
.compact-observations.ctx .ctx-head b{font-family:inherit;font-size:13px;font-weight:600;line-height:1.3;letter-spacing:0;margin:0}
.observation-dot{width:7px;height:7px;border-radius:50%;background:#90a77d;flex:none}
.compact-observations.ctx>.muted{font-size:12px;line-height:1.5;margin:6px 0 0;padding-right:5px}
.compact-observations.ctx>details{margin:0 0 -40px;width:44%;position:relative;z-index:1}
.compact-observations.ctx>details>summary{font-size:11px!important;min-height:40px!important;line-height:1.3;text-decoration:underline;text-underline-offset:3px;list-style:none}
.compact-observations.ctx>details[open]{width:100%;margin:0}
.compact-observations.ctx>.link{background:#244b3d;color:#fff;width:54%;margin:0 0 0 auto;font-size:11px;padding:9px 12px;min-height:40px;gap:6px;line-height:1.35}
.compact-observations.ctx>details[open]+.link{width:100%;margin-top:10px}
.today-actions-heading.sec-h{margin:18px 0 10px;gap:8px}.today-actions-heading.sec-h span{font-size:10px;white-space:nowrap}
.action-carousel{min-width:0;margin-bottom:14px}
.action-rail{position:relative;display:flex;gap:10px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;align-items:flex-start;transition:height .18s ease}
.action-rail::-webkit-scrollbar{display:none}
.action-slide{flex:0 0 100%;min-width:0;scroll-snap-align:start;scroll-snap-stop:always}
.action-slide>.today-hero{margin:0;padding:20px 20px 18px;border-radius:22px}
.action-slide .today-hero .eyebrow{margin-bottom:15px}
.action-slide .today-hero h3{font-size:30px;max-width:280px}
.action-slide .today-hero .hero-t p{font-size:13px;line-height:1.5;margin-top:10px}
.action-slide .today-hero .why{margin:13px 0 7px}
.action-slide .today-hero .why summary{min-height:40px}
.action-navigation{display:flex;align-items:center;gap:10px;min-height:48px;padding:3px 1px 0;color:#65775f}
.action-navigation>span{font-size:11px;margin-right:auto}
.action-dots{display:flex;gap:5px}.action-dots i{width:5px;height:5px;background:#d4dfca;border-radius:50%;transition:width .15s}.action-dots i.on{width:17px;border-radius:8px;background:#446b43}
.action-arrows{display:flex;gap:7px}.action-arrows button{border:1px solid #d9e2d1;border-radius:50%;width:44px;height:44px;display:grid;place-items:center;font-size:19px;background:#f4f6ee}.action-arrows button:disabled{opacity:.3;cursor:default}
@media(max-width:360px){.action-slide>.today-hero{padding:18px}.action-slide .today-hero h3{font-size:28px}.today-actions-heading.sec-h h4{font-size:14px}.today-actions-heading.sec-h span{font-size:9px}.compact-observations.ctx{padding:12px}.top{padding-top:18px!important;padding-bottom:14px!important}.heard{padding-bottom:12px}.heard p{font-size:12px;line-height:1.5}}
@media(prefers-reduced-motion:reduce){.action-rail,.action-dots i{transition:none}}
.heard.heard-compact{display:block;padding:0 0 8px;margin:0 0 2px}
.heard-compact>summary{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px;font-weight:600;min-height:36px;list-style:none;cursor:pointer;color:#36533d}
.heard-compact>summary span{font-size:10px;font-weight:400;color:#738469}
.heard-compact[open]>summary span{font-size:0}.heard-compact[open]>summary span:after{content:'Close ↑';font-size:10px}
.heard-compact p{padding:3px 0 7px}
@media(max-width:360px){.top h2{font-size:25px!important;line-height:1.08}.top{padding-top:14px!important;padding-bottom:10px!important}.compact-observations.ctx{padding:11px 12px}.heard.heard-compact{padding-bottom:2px}.heard-compact>summary{min-height:32px}}
/* Focused cleanup: one action view, one check-in, light profile */
.today-actions-heading.sec-h{margin-top:8px}.today-actions-heading h4{font-size:17px!important}
.action-slide>.today-hero{display:flex;flex-direction:column;min-height:340px}
.action-slide .today-hero>.row3{margin-top:auto;padding-top:12px}
.action-slide .today-hero>.why{margin-bottom:6px}
.action-slide .today-hero>.muted{font-size:12px;line-height:1.5}
.action-navigation{justify-content:space-between}.action-dots{margin-right:auto}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.consolidated-observation.ctx{margin:17px 0 22px;padding:17px;border-radius:20px}
.consolidated-observation.ctx .ctx-head b{font-family:inherit;font-size:14px;font-weight:600;margin:0;letter-spacing:0;line-height:1.4}
.consolidated-observation.ctx .ctx-head{align-items:center}
.consolidated-observation.ctx>.muted{margin-top:9px;font-size:13px;line-height:1.6}
.observation-cta{display:flex;justify-content:space-between;align-items:center;gap:10px;background:#244b3d;color:white;padding:13px 17px;border-radius:30px;width:100%;min-height:46px;font-size:12px;margin-top:14px}
.observation-options{display:flex;flex-wrap:wrap;gap:6px;margin:13px 0 3px}.observation-options button{padding:10px 12px;background:#fffdf6;border:1px solid #d0ddc8;border-radius:22px;min-height:44px;font-size:11px}
.observation-answer{font-size:12px;font-weight:600;color:#35563b;margin-top:10px}
.specific-adjustment{border-left:2px solid #91aa7d;padding-left:11px;margin-top:14px}.specific-adjustment b{font-size:11px}.specific-adjustment p{font-size:12px;line-height:1.6;color:#526950;margin-top:4px}
.observation-signals{margin-top:8px}.observation-signals p{font-size:12px;line-height:1.6;color:#5c7057;margin:8px 0}.signal-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:12px 0}.signal-pair b{font-size:19px;font-weight:400;display:block;margin:5px 0}
.optgrid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}.opt:nth-child(n){min-height:146px}.opt:has(.explore-photo){min-height:215px}.opt small{min-height:34px}.opt .explore-photo{height:92px}
.profile-entry{min-width:64px;min-height:44px!important}.profile-content .field{margin:22px 0}.profile-links{margin:15px 0 24px}.profile-links button{position:relative;display:block;width:100%;border-bottom:1px solid #dfe6d6;padding:16px 25px 16px 0;min-height:70px}.profile-links b{display:block;font-size:14px;font-weight:600}.profile-links small{font-size:12px;margin-top:5px}.profile-links span{position:absolute;right:2px;top:23px;color:#6c855c}.profile-about{border-top:1px solid #e0e5d8}.profile-about summary{min-height:48px;display:flex;align-items:center;font-size:13px;cursor:pointer;list-style:none}.profile-about summary:after{content:'+';margin-left:auto}.profile-about[open] summary:after{content:'−'}.profile-about p{font-size:12px;line-height:1.7;color:#64715e;margin:0 0 12px}.profile-about a,.profile-about .link{display:block;font-size:12px;line-height:1.6;min-height:44px;color:#456a42;padding:10px 0}.profile-content>.cta{margin-top:22px}
.preference-validation{font-size:12px;color:#536e48;line-height:1.5;margin:14px 0 9px}.required-label{display:block;font-size:11px;color:#7a8c6c;font-weight:400;margin-top:4px}.period-scope{font-size:12px;line-height:1.6;color:#58704f;background:#eff3e9;border-radius:12px;padding:12px;margin:-7px 0 18px}
@media(max-width:360px){.action-slide>.today-hero{min-height:340px}.top h2{font-size:25px!important}.action-slide .today-hero h3{font-size:28px}.consolidated-observation.ctx{padding:15px}}
.week-overview{background:#edf1e6;border:1px solid #d9e2d0;border-radius:22px;padding:20px;margin:0 0 22px}.week-overview h3{font-size:25px;margin:9px 0}.week-overview p{font-size:14px;line-height:1.5;margin:8px 0}.week-overview small,.week-plan small{font-size:12px;line-height:1.5;color:#657162}.plan-links{display:flex;flex-wrap:wrap;gap:14px;margin:10px 0}.week-date-tabs{display:flex;gap:6px;overflow:auto;margin:18px 0}.week-date-tabs button{flex:0 0 auto;padding:10px 9px;border:1px solid #d6dfd0;background:transparent;border-radius:12px}.week-date-tabs button.on{background:#315f45;color:white}.week-meal,.week-session,.week-day-summary{padding:18px 0;border-bottom:1px solid #dce2d5}.week-meal h4{font-size:21px;margin:8px 0}.week-plan ol,.week-plan ul{padding-left:23px}.week-plan li{margin:10px 0;line-height:1.5}.week-recipe{display:block;margin:22px 0}.week-plan a{display:block;margin:10px 0;color:#357358}.week-plan details summary{cursor:pointer}.week-plan .meal-alternative{display:block;width:100%;text-align:left;padding:10px 0}.week-plan .meal-row{width:100%}

/* Compact entry to the week. Context and safety live beside each plan. */
.week-overview.compact-week{padding:13px 14px;margin-bottom:18px;border-radius:18px}
.compact-week>.eyebrow{font-size:10px;letter-spacing:.08em}
.week-entry-buttons{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:10px}
.week-entry-buttons button{display:flex;flex-direction:column;align-items:flex-start;text-align:left;min-height:67px;padding:11px 12px;background:#fffdf7;border:1px solid #d6dfcf;border-radius:12px;color:#294c3a}
.week-entry-buttons b{font-size:16px;font-weight:600}.week-entry-buttons small{font-size:11px;line-height:1.35;margin-top:4px}
.today-hero.tone-breakfast:after,.today-hero.tone-grill:after{background:linear-gradient(90deg,#38271eeb,#38271eb5 65%,#38271e80)}
.today-hero.tone-checkin:after,.today-hero.tone-winddown:after{background:linear-gradient(90deg,#222333eb,#222333bd 65%,#22233388)}
/* Free hosting badge stays in its own footer space, below app navigation. */
.phone{padding-bottom:72px}

.tmr-h{display:flex;flex-direction:column;align-items:stretch;gap:8px}.return-today{margin:0!important;min-height:46px!important;width:100%;border-radius:12px!important}
.opt:has(.explore-photo){overflow:hidden}.opt .explore-photo{width:calc(100% + 28px);max-width:none;height:86px;object-fit:cover;margin:-14px -14px 12px}

.week-entry-buttons:has(>button:only-child){grid-template-columns:1fr}.training-intro{padding:18px;background:#edf1e6;border-radius:18px;margin:16px 0}.training-intro h4{font-family:Aime,Georgia,serif;font-size:25px;margin:9px 0}.training-intro p{line-height:1.5;margin-bottom:10px}.training-step{padding:20px 0;border-bottom:1px solid #dce4d5}.training-step h4{font-size:21px;margin:8px 0}.training-step ol{padding-left:21px;font-size:14px;line-height:1.65}.training-step li+li{margin-top:9px}.training-dose{display:block;font-size:13px;color:#52684f}.demo-link{display:block;padding:14px;border:1px solid #c9d8c1;border-radius:12px;background:#eef3e8;text-decoration:none;font-size:14px;font-weight:600;margin:12px 0}.demo-link small{font-weight:400;margin-top:5px}.training-flow .week-date-tabs small{font-size:10px;line-height:1.2}.training-flow .week-date-tabs button{min-width:68px}.training-flow .safety-note{margin-top:18px}

.pilot-points{font-size:12px;font-weight:600;color:#38644b;min-height:40px;padding:6px 9px;border:1px solid #d1dfc8;border-radius:22px}.hdr-r{display:flex;align-items:center;gap:5px}

.week-date-tabs button.on small{color:#f2f6ee}

.meal-basket{margin:22px 0;padding:18px;border:1px solid #d3dec9;border-radius:18px;background:#f0f3e9}.meal-basket h3{font-size:24px}.meal-basket p,.meal-basket small{font-size:13px;line-height:1.6}.basket-day{padding:14px 0;border-bottom:1px solid #d9dfd1}.basket-day label,.basket-row label{display:flex;align-items:flex-start;gap:10px;margin:12px 0;font-size:14px;line-height:1.5}.basket-day input,.basket-row input{flex:0 0 auto;width:19px;height:19px;accent-color:#315f45;margin-top:3px}.basket-row{padding:8px 0;border-bottom:1px solid #d9dfd1}.basket-row small{display:block}.basket-row summary{font-size:12px;color:#41634d}.basket-row details p{font-size:12px}.meal-basket>small{display:block;margin-top:14px}

.nutrition-neat>h3{font-size:29px}.nutrition-neat>.muted{font-size:14px;line-height:1.5;margin-bottom:20px}.meal-date-label{display:flex;justify-content:space-between;align-items:center;margin:20px 0 12px}.meal-date-label small{font-size:11px}.meal-choice-card{padding:18px 16px;margin:10px 0;background:#f2f4ec;border:1px solid #e1e6d9;border-radius:16px}.meal-choice-main label{display:flex;gap:12px;align-items:flex-start;margin:10px 0 14px}.meal-choice-main input,.week-meal-check input{width:21px;height:21px;flex:0 0 auto;margin-top:3px;accent-color:#315f45}.meal-choice-main b{display:block;font-family:Aime,Georgia,serif;font-size:21px;font-weight:400;line-height:1.25}.meal-choice-main small,.neat-alternative small{display:block;font-size:12px;margin-top:5px}.meal-card-links{display:flex;gap:22px;padding-left:33px}.meal-card-links button{font-size:12px;color:#356448;text-decoration:underline}.meal-alternatives{border-top:1px solid #d9dfd0;margin-top:16px;padding-top:14px}.neat-alternative{display:flex!important;justify-content:space-between;align-items:center;gap:12px;padding:14px 2px!important;border-bottom:1px solid #e0e6d8;font-size:14px}.neat-alternative i{font-style:normal;font-size:22px;color:#315f45}.neat-alternative.selected{color:#315f45}.selected-meals-strip{display:flex;justify-content:space-between;align-items:center;padding:18px 2px;border-bottom:1px solid #dfe5d7;font-size:13px}.week-meal-check{display:flex;gap:10px;margin:12px 0;font-size:13px}.week-meal-check small{display:block}.compact-basket{background:#f2f4ec;padding:18px;margin-top:24px}.basket-title{display:flex;justify-content:space-between;gap:12px;align-items:center}.basket-title h3{font-size:26px;margin:8px 0}.basket-count{display:flex;align-items:center;justify-content:center;border:1px solid #bccbb2;border-radius:50%;width:36px;height:36px;font-size:14px}.compact-basket .basket-row label{margin:10px 0}.compact-basket .food-detail{margin-bottom:0}.compact-basket .food-detail summary{font-size:12px}.compact-basket>p{margin:8px 0 16px}.nutrition-neat .week-date-tabs small{display:block}.nutrition-neat .recipe-well{padding:20px;border-radius:16px}

/* Mind: quiet, readable guided practice, using the pilot's existing palette. */
.mind-section{padding-top:2px}.mind-section>h3{margin-bottom:12px}.mind-choices{display:grid;gap:10px;margin:22px 0 16px}.mind-choice{width:100%;border:1px solid #d7dfce;border-radius:18px;background:#f1f3eb;padding:18px;text-align:left;display:flex;justify-content:space-between;gap:12px;color:var(--ink,#254438);min-height:100px}.mind-choice.on{border:2px solid #315f46;padding:17px}.mind-choice b{font-size:17px;font-weight:600}.mind-choice small{display:block;margin-top:5px;color:#657561}.mind-choice p{font-size:14px;line-height:1.5;margin:10px 0 0}.mind-choice i{font-style:normal;font-size:20px;flex-shrink:0}.mind-safety{font-size:13px;line-height:1.6;color:#586557;margin:14px 0 20px}.mind-session{background:#f1f3eb;border:1px solid #d7dfce;border-radius:22px;padding:22px 18px;text-align:center;margin:22px 0}.mind-timer{font-size:54px;line-height:1.3;font-variant-numeric:tabular-nums;margin:18px 0 2px;color:#315f46}.mind-current{padding:28px 0 20px;min-height:240px}.mind-current h4{font-size:24px;line-height:1.25;margin:12px 0}.mind-current p{font-size:16px;line-height:1.65;margin:12px 0}.mind-session .cta,.mind-session .ghost{width:100%;min-height:48px}.mind-stop{font-size:13px;line-height:1.5}.mind-private{display:block;color:#657561;font-size:12px;line-height:1.5;margin-top:12px}.mind-audio{padding:20px 0;border-top:1px solid #d7dfce;margin-top:22px}.mind-audio p{font-size:14px;line-height:1.6}.mind-section .food-detail li{margin:16px 0}.mind-section .food-detail li p{margin:5px 0}.opt:has(b:first-child){min-width:0}

.journey-options{display:grid;gap:10px;margin:22px 0}.journey-choice{display:flex;gap:12px;justify-content:space-between;text-align:left;border:1px solid #d7dfce;border-radius:16px;padding:17px;background:#f1f3eb;color:#244b3d;width:100%;min-height:90px}.journey-choice.on{border:2px solid #315f46;padding:16px}.journey-choice b{font-size:17px;line-height:1.4;display:block}.journey-choice small{display:block;font-size:13px;line-height:1.6;margin-top:7px;color:#596954}.journey-choice i{font-style:normal;flex-shrink:0}.view-choices{display:grid;grid-template-columns:1fr 1fr;gap:10px}.view-choices button{border:1px solid #d7dfce;border-radius:14px;padding:16px;text-align:left;min-height:100px}.view-choices button.on{background:#e7eddf;border:2px solid #315f46;padding:15px}.view-choices b,.view-choices small{display:block}.view-choices small{font-size:12px;line-height:1.5;margin-top:8px}.journey-consent{display:flex;gap:12px;font-size:13px;line-height:1.6;margin:24px 0}.journey-consent input{width:20px;height:20px;flex-shrink:0;margin-top:3px}.journey-privacy{font-size:12px;margin-top:16px}.goal-pathway{background:#edf1e6;border:1px solid #d9e3cf;border-radius:22px;padding:22px;margin:20px 0}.goal-pathway h3{font-size:28px;line-height:1.15;margin:13px 0}.goal-pathway p{font-size:14px;line-height:1.6}.goal-pathway .cta{width:100%;margin-top:12px}.goal-intention{border-left:2px solid #8ba87c;padding-left:12px}.pathway-links{display:grid;margin-top:16px}.pathway-links button{position:relative;text-align:left;padding:16px 25px 16px 0;border-top:1px solid #d3dec9;min-height:80px}.pathway-links b,.pathway-links span{display:block}.pathway-links b{font-size:14px}.pathway-links span{font-size:13px;line-height:1.6;margin-top:6px;color:#576a51}.pathway-links i{position:absolute;right:0;top:20px;font-style:normal}.review-baseline,.review-next{padding:20px;border:1px solid #d7dfce;background:#f1f3eb;border-radius:18px;margin:22px 0}.review-baseline small,.review-baseline b{display:block}.review-baseline b{font-size:26px;margin:12px 0}.review-history{padding:18px 0;border-top:1px solid #d7dfce}.review-history b,.review-history small{display:block}.review-history b{margin-top:7px}.review-history p{font-size:14px;line-height:1.6}.experience-simple .sheet{font-size:17px}.experience-simple .sheet .muted,.experience-simple .sheet p{font-size:16px;line-height:1.7}.experience-simple .sheet h3{font-size:30px}.experience-simple button{min-height:48px}.experience-simple .chip{font-size:15px;padding:13px 15px;white-space:normal}.experience-simple .optgrid{grid-template-columns:1fr}.experience-simple .opt{display:grid;grid-template-columns:80px 1fr;min-height:110px!important;padding:16px!important;align-content:center;gap:8px 16px;text-align:left}.experience-simple .opt .explore-photo{grid-row:span 2;margin:0;width:80px;height:80px;border-radius:12px}.experience-simple .opt b{font-size:20px;align-self:end}.experience-simple .opt small{font-size:15px;line-height:1.5;min-height:0}.experience-simple .goal-pathway{padding:20px}.experience-simple .pathway-links span{font-size:15px}.experience-simple .today-hero .hero-t p{font-size:16px;line-height:1.65}.experience-simple .tabs button{font-size:13px}.experience-simple .compact-week .week-entry-buttons{grid-template-columns:1fr}.experience-simple .week-entry-buttons button{min-height:65px}.experience-simple .neat-alternative{font-size:16px}.experience-simple .meal-choice-main label span b{font-size:22px}.experience-simple .meal-choice-main small,.experience-simple .compact-basket .muted,.experience-simple .basket-row small{font-size:14px}.experience-simple .view-choices{grid-template-columns:1fr}.journey-setup .chips button,.journey-review .chips button{min-height:44px}
.intro-pillars{display:grid;gap:14px;margin:24px 0}.intro-pillars>div{background:#eef2e7;padding:18px;border-radius:16px}.intro-pillars b{display:block;font-size:17px}.intro-pillars p{font-size:14px;line-height:1.7;margin:8px 0 0}
.practical-grid{display:grid;gap:14px;margin:16px 0}.practical-grid>div{padding:14px;background:#eef2e7;border-radius:12px}.practical-grid p{font-size:14px;line-height:1.7;margin:7px 0}.practical-food>a,.practical-food>small{display:block;line-height:1.7;margin-top:14px}.practical-food>small{font-size:12px}
.circle-ideas{margin:28px 0}.circle-ideas h3{font-size:30px;line-height:1.2;margin:14px 0}.circle-ideas>p{font-size:14px;line-height:1.8}.circle-ideas article{border:1px solid #dbe1d0;border-radius:18px;margin:14px 0;overflow:hidden;background:#f2f3eb}.circle-idea-title{display:flex;justify-content:space-between;gap:12px;text-align:left;padding:20px;width:100%;min-height:100px}.circle-idea-title b,.circle-idea-title small{display:block}.circle-idea-title b{font-size:20px;font-family:var(--serif)}.circle-idea-title small{font-size:13px;line-height:1.6;margin-top:8px}.circle-idea-title i{font-style:normal;font-size:22px}.circle-idea-detail{padding:0 20px 22px}.circle-idea-detail p{font-size:14px;line-height:1.8}.circle-idea-detail h4{font-size:14px;margin:20px 0 8px}.circle-idea-detail>small{font-size:12px}.shop-handoff{background:#eef2e7;padding:18px;border-radius:16px;margin:24px 0}.shop-handoff h4{font-size:23px;margin:0}.shop-handoff p{font-size:14px;line-height:1.7}.shop-handoff>small{font-size:12px;line-height:1.7;display:block}
.goal-pathway h3{font-size:25px;margin:10px 0}.goal-pathway{padding:18px;margin:10px 0 20px}.goal-pathway>p{margin:8px 0}.pathway-detail{margin:16px 0 8px}.pathway-detail>summary{font-size:13px;font-weight:600;cursor:pointer;line-height:1.7;min-height:32px}.goal-pathway>.link{font-size:12px;display:block;margin:0;padding:10px 0;min-height:38px}.experience-simple .goal-pathway{padding:18px}.experience-simple .goal-pathway h3{font-size:26px}.experience-simple .goal-pathway>.link{font-size:14px;min-height:44px}.experience-simple .pathway-detail>summary{font-size:15px}.experience-simple .goal-pathway>.muted{display:none}
.experience-simple .week-overview{display:none}.experience-simple .goal-pathway{margin-top:6px;margin-bottom:18px}.experience-simple .goal-pathway>h3{margin:8px 0}.experience-simple .goal-pathway .pathway-detail{margin:10px 0 0}.shop-handoff .demo-link{color:#285c46;text-decoration:none}.shop-handoff .demo-link:hover{text-decoration:underline}
.goal-pathway{padding:14px 16px;margin:6px 0 16px;border-radius:18px}.goal-pathway>.eyebrow{font-size:9px}.goal-pathway h3{font-size:22px;line-height:1.2;margin:8px 0}.goal-pathway .goal-intention{font-size:13px;margin:8px 0}.goal-pathway .pathway-detail{margin:7px 0 0}.pathway-detail>summary{font-size:12px;min-height:28px}.pathway-detail>.link{display:block;padding:12px 0;min-height:44px;font-size:13px}.experience-simple .goal-pathway{padding:12px 14px;margin:4px 0 14px}.experience-simple .goal-pathway h3{font-size:21px;line-height:1.25;margin:7px 0}.experience-simple .goal-pathway .goal-intention{font-size:14px;margin:8px 0}.experience-simple .pathway-detail>summary{font-size:14px;min-height:36px}.experience-simple .goal-pathway>.eyebrow{font-size:9px}.experience-simple .pathway-detail{margin-top:6px}
.movement-pathway-part{padding:16px;background:#eef2e7;border-radius:12px;margin:14px 0}.movement-pathway-part b{display:block;font-size:15px}.movement-pathway-part p{font-size:14px;line-height:1.8;margin:9px 0 0}.movement-pathway>a{display:block;font-size:13px;margin-top:14px;line-height:1.8}
.session-guide{margin:24px 0;padding:18px;border:1px solid #d8e1cf;border-radius:20px;background:#f5f5ed}.session-guide-header{display:flex;align-items:center;gap:12px;justify-content:space-between;border-bottom:1px solid #d8e1cf;padding-bottom:12px}.session-guide-header>b{font-size:13px}.session-guide-header .link{font-size:12px;min-height:44px}.session-guide .training-step{padding:18px 0;border:0;margin:0;background:transparent}.session-guide .training-step h4{font-size:27px;line-height:1.2;margin:10px 0}.session-controls{display:grid;grid-template-columns:1fr 1fr;gap:10px}.session-controls button{min-height:48px;font-size:13px}.session-jump{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.session-jump button{width:38px;height:38px;min-height:38px;border:1px solid #cad7bf;border-radius:50%;font-size:13px;background:#fbfaf6}.session-jump button.on{background:#315d44;color:white}.session-guide-note{font-size:12px;line-height:1.8;margin:18px 0 0}.experience-simple .session-guide{padding:16px}.experience-simple .session-guide-header{flex-direction:column;align-items:flex-start;gap:0}.experience-simple .session-jump button{width:44px;height:44px;min-height:44px}.experience-simple .session-controls{grid-template-columns:1fr}.experience-simple .session-controls .cta{grid-row:1}

.session-guide{scroll-margin-top:24px}.experience-simple .session-jump{gap:10px}

.direction-next,.recipe-practical{padding:16px;background:#f0f4e9;border-radius:14px;margin:12px 0}.direction-next p,.recipe-practical p{font-size:14px;line-height:1.6}.food-pathway-actions,.review-adjustments{display:grid;gap:10px;margin:14px 0}.food-pathway small,.review-next small{display:block;line-height:1.6}.meal-alternatives>label{font-weight:700;font-size:13px}.meal-alternatives{scroll-margin-top:22px}.food-pathway-actions .sec,.review-adjustments .sec{white-space:normal;min-height:46px;padding:12px}

.meal-alternatives .chip.on{background:#315f45;color:#fff;border-color:#315f45}.recipe-practical p{font-size:14px;line-height:1.65}.recipe-practical p:last-child{margin-bottom:0}

.recipe-protein{font-size:13px;line-height:1.6}.recipe-protein b,.recipe-protein span{display:block}.recipe-protein span{margin-top:4px}

.review-next>p{font-size:14px;line-height:1.7;margin:10px 0 16px}.review-adjustments .sec{width:100%;font-size:14px}.direction-next .sec{padding:12px 16px;min-height:46px}.food-pathway-actions .sec{width:100%}.recipe-practical{background:#f3f6ec}

.nutrition-neat .meal-alternatives button.chip{background:#fffef8;color:#244338;border:1.5px solid #b8c5ad;opacity:1;font-weight:400}.nutrition-neat .meal-alternatives button.chip.on{background:#244b35;color:#fff;border-color:#244b35;opacity:1;font-weight:700}.nutrition-neat .meal-alternatives button.chip:focus-visible{outline:3px solid #19392b;outline-offset:3px}

.nutrition-neat .meal-alternatives button.chip{transition:none}

.mind-tool-choice{margin-bottom:24px}.mind-tool-choice button{width:100%;text-align:left;padding:16px}.mind-tool-choice small{display:block;margin-top:6px;line-height:1.5}.practical-mind{outline:none}.practical-mind h4{font-family:var(--serif);font-size:25px;margin:12px 0}.practical-mind label{display:block;margin:20px 0 8px;font-size:14px;font-weight:600}.practical-mind label small{font-weight:400}.practical-mind textarea{resize:vertical;line-height:1.5}.practical-mind .field .chip{margin-top:8px}.practical-mind p{line-height:1.6}.mind-local{font-size:12px;color:#52604e}.practical-nav{display:flex;gap:12px;margin-top:24px;align-items:center}.practical-nav>*{flex:1}.practical-mind button:disabled{opacity:.5;cursor:not-allowed}.practical-mind .mind-choice{width:100%;font-size:15px;padding:16px}.practical-mind .mind-current p{white-space:pre-wrap;overflow-wrap:anywhere}.practical-mind .textin{box-sizing:border-box;max-width:100%;width:100%}

.familiar-entry{border:1px solid #bac9b0;border-radius:18px;background:#f1f4e9;padding:18px;margin-bottom:28px}.familiar-entry h4{font-family:var(--serif);font-size:24px;margin:0 0 12px}.familiar-entry small{display:block;line-height:1.5;margin-top:10px}.familiar-routine h4{font-family:var(--serif);font-size:25px}.familiar-routine fieldset{border:1px solid #bcc9b5;border-radius:16px;padding:16px;margin:24px 0;min-width:0}.familiar-routine legend{padding:0 8px;font-weight:600}.familiar-routine label{display:block;margin:16px 0 7px}.familiar-routine .textin{box-sizing:border-box;width:100%;max-width:100%}.routine-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.routine-fields>*{min-width:0}.familiar-routine>.cta,.familiar-routine>.sec{width:100%;margin-top:20px}.familiar-routine button:disabled{opacity:.5}.routine-review{padding:20px 0;border-bottom:1px solid #d5dfce}.routine-review b,.routine-review p{overflow-wrap:anywhere}.practical-mind>.eyebrow{display:block;max-width:calc(100% - 36px);line-height:1.5}.practical-mind button.sec{min-height:48px;padding:12px 16px}.practical-mind a{color:#244b35;text-underline-offset:3px}

.familiar-routine>.eyebrow{display:block;max-width:calc(100% - 38px);line-height:1.5}.familiar-routine h4{margin:20px 0 16px;line-height:1.25;max-width:calc(100% - 16px)}.familiar-routine>p{line-height:1.6;margin:16px 0}.familiar-routine .mind-local{margin-bottom:26px}.familiar-routine .routine-review p{margin:10px 0;line-height:1.55}.familiar-routine .routine-record h4{margin-top:32px}.familiar-routine .routine-record>.cta{width:100%;margin-top:18px}.familiar-routine .routine-record fieldset{border:none;padding:0}.familiar-routine .routine-record legend{font-size:13px;padding:0}.familiar-routine textarea{min-height:80px;line-height:1.5}.familiar-routine a{color:#244b35;text-underline-offset:3px}.familiar-routine .routine-record p{line-height:1.6}.practical-mind,.familiar-routine{padding-bottom:24px}

.practical-mind>.mind-local{margin:18px 0 22px}.practical-mind .mind-current{padding-top:14px;padding-bottom:14px}.practical-mind button.cta:disabled,.familiar-routine button.cta:disabled{background:#dce3d7;color:#44583d;opacity:1}.familiar-routine>.eyebrow+h4{max-width:calc(100% - 26px)}.familiar-routine .routine-record fieldset:disabled{opacity:1}.familiar-routine .routine-record fieldset:disabled .chip{opacity:1}

.coming-challenge{padding:22px!important;border-radius:20px!important;background:#f0f3e8}.coming-challenge.peach{background:#f8eee5}.coming-challenge.lilac{background:#f0edf5}.coming-challenge h4{font-family:var(--serif);font-size:24px;line-height:1.25;margin:0 0 12px}.coming-challenge p{font-size:15px;line-height:1.6}.coming-challenge button:disabled{opacity:1;color:#44553f;background:#fafbf6;border:1px solid #8b9d80;cursor:default;margin-top:14px;min-height:46px}

.coming-challenge button:disabled{padding:12px 18px;font-size:14px}.circle-ideas{margin-top:18px}

.household-choice{margin:22px 0;padding:18px;border:1px solid #c8d4bd;border-radius:18px}.household-choice label{display:block;font-size:16px;font-weight:600;margin-bottom:12px}.household-choice small{display:block;line-height:1.5;margin-top:12px}.household-choice select{width:100%;box-sizing:border-box}.circle-ideas>h3{margin:12px 0 24px}
.week-continuity{margin:16px 0 22px;padding:18px;border:1px solid #d8e2d0;border-radius:18px;background:#f1f4eb}.week-continuity h3{margin:10px 0;font-family:Georgia,serif;font-size:25px}.week-continuity p{font-size:14px;line-height:1.5;margin:10px 0;color:#465c4c}.week-continuity .cta{margin-top:12px}.past-week{margin-top:14px;padding-top:14px;border-top:1px solid #d4ddcb}.past-week summary{cursor:pointer;font-size:14px;line-height:1.5;font-weight:600}.past-week>div{margin:12px 0;padding:10px;background:#fffdf8;border-radius:10px}.past-week b{font-size:13px}.past-week>div p{margin:6px 0;font-size:13px}
/* Consolidated review: action-first, clear compact entries, calm readable guidance. */
.quick-plans{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:16px 0}.quick-plans button{text-align:left;border:1px solid #ddd9d1;border-radius:14px;background:#fff;padding:14px;min-height:76px}.quick-plans b,.quick-plans small{display:block}.quick-plans small{margin-top:6px;color:#53655c;line-height:1.4}.later-life-entry{width:100%;text-align:left}.later-life-entry small{display:block;margin-top:5px}.later-next,.layout-choice,.game-board{border:1px solid #ddd9d1;border-radius:16px;padding:16px;margin:18px 0}.memory-words{font-size:23px!important;line-height:1.6!important;color:#254c40}.routine-overview{border:1px solid #dce3db;border-radius:15px;padding:14px;margin:16px 0}.routine-overview>div{display:flex;gap:12px;align-items:flex-start;border-top:1px solid #eceee9;padding-top:9px;margin-top:9px}.routine-overview>div>span{background:#e8f0e8;border-radius:50%;min-width:26px;height:26px;text-align:center;padding-top:3px}.routine-overview p{margin:0}.routine-overview small{display:block;line-height:1.5;color:#55615a}.mind-current{padding:20px!important;min-height:190px}.mind-current h4{font-size:23px!important}.mind-current p{font-size:18px!important;line-height:1.7!important}.mind-timer{font-size:28px!important;margin:8px!important}.training-intro h4{font-size:24px}.experience-simple .quick-plans{grid-template-columns:1fr}.experience-simple .optgrid{grid-template-columns:1fr}.experience-simple .chip,.experience-simple .sec,.experience-simple .cta{min-height:48px;font-size:17px}.experience-simple .later-life p,.experience-simple .game-board p{font-size:19px;line-height:1.65}.experience-simple .proto-strip{font-size:11px}.today-actions-heading{margin-top:3px!important}.week-continuity{margin-top:10px}.restriction-followup{margin-top:12px;border-left:3px solid #d8b796;padding-left:12px}
.meal-open{display:block;width:100%;text-align:left;padding:14px 0;background:none}.meal-open b{font-size:19px;line-height:1.4}.meal-open small{display:block;margin-top:7px;color:#4c6b59}.recipe-ingredient{display:flex;gap:10px;align-items:center;padding:14px 0;border-bottom:1px solid #e9e5de}.recipe-ingredient input{min-width:22px;height:22px;accent-color:#437556}.recipe-ingredient>span{flex:1}.recipe-ingredient b,.recipe-ingredient span small{display:block}.recipe-ingredient small{font-size:12px;line-height:1.4;color:#62645c}.recipe-ingredient span small{margin-top:5px}.recipe-steps{padding-left:23px}.recipe-steps li{padding:8px 0;line-height:1.65}.selected-recipe .recipe-well{margin:18px 0}.week-meals button span small{display:block;margin-top:7px}.selected-recipe>button{margin-top:12px}
.top{align-items:center!important;padding:14px 20px 10px!important;min-height:76px!important}.top h2{font-size:25px!important;line-height:1.12!important}.hdr-r{display:flex!important;flex-direction:row!important;gap:7px!important;align-items:center!important}.hdr-r .pill,.hdr-r .pilot-points{padding:9px 11px!important;min-height:40px!important}.hello .orb{display:none}.action-slide>.today-hero{min-height:0!important;height:auto!important;padding:18px!important}.action-slide .today-hero h3{font-size:28px!important}.action-slide .today-hero .why{padding:6px 10px!important;margin:7px 0!important}.action-slide .today-hero .why summary{min-height:28px!important}.action-slide .today-hero>.row3{padding-top:10px;margin-top:12px}.today-hero .kitchen-link{padding:9px 10px;margin:8px 0 0!important}.today-hero .hero-t p{line-height:1.45!important;font-size:14px!important}.action-carousel{margin-bottom:0!important}.quick-plans{margin:10px 0}.quick-plans button{min-height:65px;padding:11px}.mind-session .mind-current{min-height:0!important}.mind-session .mind-current p{margin-bottom:0}.mind-session .muted{font-size:13px;line-height:1.5}.mind-session .mind-timer{font-size:24px!important}.selected-recipe .recipe-well{padding:16px}.selected-recipe .recipe-well b{font-family:inherit;font-size:15px}.selected-recipe .recipe-well h4{text-align:left}
@media(max-width:360px){.top{padding:10px 14px 8px!important;min-height:65px!important}.top h2{font-size:21px!important}.hdr-r .pill,.hdr-r .pilot-points{font-size:11px!important;padding:8px!important}.action-slide .today-hero h3{font-size:25px!important}.experience-simple .quick-plans{grid-template-columns:1fr 1fr}.quick-plans small{font-size:12px}.quick-plans b{font-size:14px}}
.challenge-rehearsal{padding:20px;border:1px solid #d7dfce;border-radius:20px;background:#eef2e7;margin:12px 0 24px}.challenge-rehearsal h3{font-size:27px;line-height:1.25}.challenge-rehearsal p{font-size:15px;line-height:1.65}.challenge-rehearsal .hint{display:block;margin-top:16px;line-height:1.6}.test-rules{margin-top:18px;padding-top:12px;border-top:1px solid #d0dac7}
.exercise-figure{margin:18px 0}.exercise-figure img{display:block;width:100%;max-width:320px;max-height:230px;object-fit:contain;background:white;border-radius:12px;margin:auto}.exercise-figure figcaption{font-size:12px;line-height:1.5;color:#5d6d61;margin-top:8px}.later-life p,.mind-games p,.game-board p{line-height:1.6;margin:12px 0}.later-next h4,.game-board h4{margin:0 0 10px}.later-life .journey-choice{min-height:64px;align-items:center}.later-life .journey-options{margin:16px 0}.completed-card small{white-space:normal}.hdr-r .pilot-points{white-space:nowrap!important;min-width:53px}.top .hello{min-width:0}.top h2{overflow-wrap:anywhere}
.exercise-sketch{margin:18px 0}.exercise-sketch svg{display:block;width:100%;background:#f8faf4;border-radius:12px}.exercise-sketch figcaption{font-size:12px;line-height:1.6;color:#5d6d61;margin-top:9px}.later-next p,.game-board p{margin:10px 0}.later-next .cta{margin-top:14px}
/* Complete/begin remains ahead of secondary explanations on short phones. */
.today-hero>.eyebrow,.today-hero>.hero-t{order:0}.today-hero>.row3{order:1}.today-hero>.kitchen-link,.today-hero>.muted,.today-hero>.slot-swap{order:2}.today-hero>.why,.today-hero>.food-detail,.today-hero>.carry{order:3}

.selected-recipe .recipe-well .recipe-ingredient b{font-family:var(--sans,Arial,sans-serif)!important;font-size:15px!important;color:#294c3d!important;text-align:left!important}.selected-recipe .recipe-well .recipe-ingredient span small{font-size:12px!important;text-align:left!important}.selected-recipe .recipe-well h4{font-family:var(--sans,Arial,sans-serif)!important;font-size:17px!important;text-align:left!important}.week-meals button{font-family:var(--sans,Arial,sans-serif)!important;padding:16px!important;border:1px solid #dce3d6!important;border-radius:15px!important;margin:10px 0!important}.week-meals button>span{font-family:var(--sans,Arial,sans-serif)!important;font-size:16px!important;line-height:1.5!important}.week-meals button>small{display:block;margin-top:12px}.week-meals button>b{font-size:13px!important}
/* Reserve the same badge area for modal sheets as for the main navigation. */
.scrim{padding-bottom:72px!important}.sheet{max-height:calc(100% - 12px)!important}.sheet .x{position:sticky!important;top:0!important;float:right;margin:0 0 8px 10px;right:auto!important;z-index:10}.sheet>.x+*{clear:none}
.leaderboard{border-top:1px solid #d2ddc5;margin-top:20px;padding-top:14px}.leaderboard>.eyebrow{margin-bottom:9px}.lb-row{display:flex;justify-content:space-between;align-items:baseline;padding:7px 0;border-bottom:1px solid #e0e6d6;font-size:13px}.lb-row:last-of-type{border-bottom:0}.lb-row b{font-size:13px;font-weight:600}.lb-row span{font-size:12px;color:#687556}.lb-note{font-size:12px;line-height:1.6;margin-top:9px}.demo-banner{background:#fdf3dc;border:1px solid #e3d3a6;border-radius:12px;padding:10px 14px;font-size:12px;line-height:1.5;color:#6d5c2f;margin:0 0 18px}
/* stage-prod/src/connected.css */
.connected-rebuild{line-height:normal}.connected-rebuild .phone{height:var(--instinct-modal-height,100dvh)!important;max-width:460px!important;position:relative}.connected-rebuild .stage{padding:0!important}.connected-rebuild .intro{min-height:0;flex:1;overflow:auto;padding:10px 22px 26px}.intake-head{padding:22px 22px 0;flex:none}.intake-head .brand{margin-bottom:10px}.intake-head .dots{margin:12px 0 8px}.connected-rebuild .field h4{font-size:15px;line-height:1.4;margin-bottom:9px}.connected-rebuild .field>.muted{margin-bottom:9px}.connected-rebuild .field{margin-top:24px}.connected-rebuild .chips{gap:7px}.connected-rebuild .chip{font-size:13px;min-height:44px;line-height:1.35;padding:10px 13px;white-space:normal}.connected-rebuild textarea{min-height:76px;resize:vertical}.intake-footer{display:flex;gap:10px;padding:14px 22px 18px;border-top:1px solid #e4e7de;background:#fbfaf6;flex:none}.intake-footer .cta{margin:0;flex:2}.intake-footer .sec{flex:1}.validation{padding:14px;border:1px solid #a53a35;background:#fff6f3;border-radius:12px;font-size:14px;line-height:1.5;margin:8px 0}.validation a{display:block;color:#8d2825;padding-top:8px;min-height:40px}.connected-rebuild main{padding:5px 20px 20px!important;scroll-behavior:auto;min-height:0}.connected-rebuild .top{flex:none;position:relative;z-index:40}.connected-rebuild .top h2{font-size:25px!important}.connected-rebuild h1{font-size:30px;line-height:1.12}.connected-rebuild p{line-height:1.55}.personal-intro{padding:5px 0 10px;border-bottom:1px solid #e1e5d9}.personal-intro p{font-size:15px;margin-top:6px}.personal-intro .eyebrow{font-size:10px;color:#486044}.connected-rebuild .sec-h{margin-top:20px}.connected-rebuild .hero.today-hero{height:auto!important;min-height:330px!important;padding:22px!important}.connected-rebuild .today-hero h3{font-size:30px!important;max-width:290px}.connected-rebuild .today-hero .hero-t p{font-size:14px!important}.connected-rebuild .hero .personal-reason{font-size:13px;color:#f2f5e6;margin:15px 0 12px;max-width:290px}.connected-rebuild .today-hero>.row3{display:flex;flex-wrap:wrap;margin-top:auto;padding-top:12px;gap:8px}.connected-rebuild .today-hero .row3 button{flex:1 1 auto;padding:10px 14px;line-height:1.35;height:auto;min-height:46px;margin:0}.connected-rebuild .today-hero .why{margin:9px 0 0;padding:0;border-top:1px solid #ffffff3d}.connected-rebuild .today-hero .why summary{min-height:44px!important;padding:6px 0}.connected-rebuild .optgrid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.connected-rebuild .opt{text-align:left;min-width:0;min-height:196px!important;display:flex;flex-direction:column;padding:15px!important;gap:5px}.connected-rebuild .opt .explore-photo{width:calc(100% + 30px);margin:-15px -15px 7px;height:100px;object-fit:cover}.connected-rebuild .opt small{font-size:12px;line-height:1.45;min-height:0}.day-check{padding:20px;background:#edf1e6;border-radius:22px;margin:22px 0 14px}.day-check h3{font-size:24px}.day-check p{margin:9px 0 14px}.tomorrow-link{display:block;width:100%;padding:16px 0;min-height:48px;color:#244b3d;font-size:14px;font-weight:600}.tool-hero{margin:5px 0 20px}.reward-art>img{width:100%;height:100%;object-fit:cover}.tool-hero>.section-art{width:100%;height:180px;display:block;border-radius:22px;margin-bottom:18px}.tool-hero>img{width:100%;height:180px;object-fit:cover;border-radius:22px;margin-bottom:18px}.tool-hero .eyebrow{font-size:10px;display:block;margin-bottom:9px}.ingredient-grid{display:grid;gap:12px;margin:20px 0}.ingredient{display:grid;grid-template-columns:1fr;gap:5px;padding:17px;border:1px solid #dbe2d0;border-radius:18px;background:#fffdf7;text-align:left;min-width:0}.ingredient.chosen{border:2px solid #426c43;padding:16px;background:#edf3e5}.ingredient.held{opacity:.62;background:#f2f0e7;border-style:dashed;border-color:#cfc9b8}.ingredient small{font-size:11px}.ingredient b{font-size:18px}.ingredient>span:last-child{font-size:13px;line-height:1.5;color:#4f6349}.selected-food{padding:20px;border-radius:22px;background:#e7eddf;margin:20px 0}.selected-food h3{margin:10px 0}.selected-food .field{margin-top:16px}.adapted{padding:16px;border-radius:16px;background:#f2ead7;margin:16px 0}.adapted b{font-size:14px}.adapted p{font-size:13px;margin-top:7px}.connected-rebuild .sheet{margin-bottom:var(--lift,0px);max-height:min(calc(100svh - 96px),calc(var(--vis-h,100svh) - 24px))!important;padding:24px 22px;overflow:auto;overscroll-behavior:contain}.connected-sheet h3{font-size:27px}.connected-sheet p{font-size:14px;margin:12px 0}.connected-sheet small{font-size:12px}.connected-rebuild .scrim{position:fixed!important;inset:0;z-index:35}.connected-rebuild .x{font-size:27px}.fit-check{display:flex;gap:11px;align-items:flex-start;margin:18px 0;font-size:14px;line-height:1.5}.fit-check input,.list-row input{width:21px;height:21px;flex:none;margin-top:2px;accent-color:#35613e}.guide{padding:22px;border-radius:22px;background:#e7eddf;margin:20px 0}.guide h3{font-size:28px;margin:18px 0}.guide p{font-size:17px;line-height:1.6;min-height:100px}.guide-nav{display:flex;gap:8px;margin-top:18px}.guide-nav button{margin:0;flex:1}.connected-rebuild details{margin-top:14px}.connected-rebuild summary{min-height:44px;display:flex;align-items:center;font-size:13px;font-weight:600;cursor:pointer}.connected-rebuild details p{font-size:14px;margin:12px 0;line-height:1.6}.connected-rebuild details a{display:block;min-height:44px;padding:12px 0;font-size:13px;color:#355f38}.connected-rebuild .klist li{display:block;font-size:15px;line-height:1.6}.connected-rebuild .kcard{padding:18px;border-radius:20px}.activity-choice{padding:20px;border-radius:22px;background:#e7eddf;margin:20px 0}.activity-choice b{font-size:20px}.activity-choice p{font-size:15px;margin:12px 0}.activity-choice small{margin-top:12px}.activity-choice.urgent{background:#fff3ee;border:1px solid #a14d3b}.wide{width:100%;margin-top:12px}.mini-week{display:flex;gap:5px;justify-content:space-between;margin:20px 0}.mini-week>div{text-align:center;flex:1}.mini-week b{display:block;color:#3f7040;padding:9px}.engagement-tool{padding:15px 0}.engagement-tool h3{font-size:28px;margin:14px 0}.engagement-tool p{font-size:15px;margin:15px 0}.engagement-tool .memory-words{font-size:28px;letter-spacing:.07em;padding:25px 5px;border-radius:20px;background:#e7eddf}.engagement-tool li{margin:16px 0;line-height:1.6;font-size:15px}.engagement-tool .cta{margin-bottom:12px}.list-row{display:flex;gap:12px;align-items:center;padding:18px 0;border-bottom:1px solid #dfe4d6}.list-row label{display:flex;gap:12px;align-items:center;flex:1}.list-row label span{flex:1}.list-row b{font-size:16px;line-height:1.4}.list-row small{margin-top:6px}.list-row.checked b{text-decoration:line-through;color:#687561}.list-row button{font-size:22px;min-width:44px;justify-content:center}.empty-art{padding:20px 0}.empty-art .landscape{width:100%;height:140px;margin:20px 0}.empty-art p{font-size:15px;margin:14px 0}.plan-day{display:block;width:100%;padding:19px 0;border-bottom:1px solid #dce3d2}.plan-day b{display:block;font-family:Georgia,serif;font-size:23px;margin:10px 0}.plan-day span{font-size:12px;color:#52634b}.progress-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:22px 0}.progress-pair>div{border-radius:22px;padding:20px;background:#e7eddf}.progress-pair b{font-family:Georgia,serif;font-size:40px;font-weight:400;display:block}.progress-pair span{font-size:13px;line-height:1.5;display:block;margin-top:6px}.week-dots{display:grid;grid-template-columns:repeat(7,1fr);gap:9px;margin:22px 0}.week-dots span{height:16px;border-radius:15px;background:#e5e6de;border:1px solid #d4d9ca}.week-dots .filled{background:#4e7c4a;border-color:#4e7c4a}.record-row{display:flex;align-items:center;gap:12px;width:100%;padding:18px 0;border-bottom:1px solid #dfe4d6;text-align:left}.record-mark{font-size:25px;color:#4e7c4a}.record-row b{font-size:15px;line-height:1.45}.record-row small{margin-top:6px;font-size:12px}.celebrate{display:flex;gap:12px;background:#e4edda;padding:15px;border-radius:18px;margin-bottom:14px;animation:fadeup .3s}.celebrate>span{font-size:28px;color:#4e7c4a}.celebrate p{font-size:14px;line-height:1.5}.connected-rebuild .tabs{flex:none}.connected-rebuild .tabs button>span{font-size:23px;line-height:1.1;margin-bottom:3px}.back-home{padding:9px 20px;font-size:13px;min-height:40px;color:#355f38;background:#f3f4eb;order:90;text-align:center}.connected-rebuild .watch-btn{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:9px 16px;border:1.5px solid #426c43;border-radius:24px;color:#2e5233;font-weight:600;font-size:14px;text-decoration:none;background:#fffdf7;margin:6px 0}.connected-rebuild .move-today{padding:20px;border-radius:22px;background:#e7eddf;margin:12px 0 6px}.connected-rebuild .move-today h1{margin:8px 0 6px}.connected-rebuild .move-today .lede{font-size:16px;line-height:1.55;margin:8px 0 12px}.connected-rebuild .move-today .klist .watch-btn{margin-top:8px}.connected-rebuild .move-week{margin-top:22px}.connected-rebuild .move-check{margin:18px 0 6px}.connected-rebuild .profile-sources{margin-top:18px;border-top:1px solid #dfe4d6;padding-top:6px}.connected-rebuild .profile-sources p{font-size:13px!important}.connected-rebuild .profile-sources a{display:block;min-height:44px;padding:12px 0;font-size:13px;color:#355f38}.profile-summary p{margin:16px 0}.profile-summary blockquote{margin:12px 0;padding:12px;border-left:2px solid #8b9f7b;line-height:1.6;font-size:14px}.connected-rebuild :focus-visible{outline:3px solid #244b3d;outline-offset:3px}.connected-rebuild .hero :focus-visible{outline-color:#e5edcf}.connected-rebuild button:disabled{cursor:default;opacity:.5}.connected-rebuild .cta{border-radius:28px}.connected-rebuild .sec{border-radius:24px}.connected-rebuild .note-box{font-size:13px;line-height:1.6}.connected-rebuild h3{line-height:1.2}.connected-rebuild .eyebrow{font-size:10px;letter-spacing:.08em}.connected-rebuild .field label small{display:inline;font-weight:400}.connected-rebuild .land-sun{fill:#d2debd}.connected-rebuild .land-back{fill:#b9cdab}.connected-rebuild .land-front{fill:#7d9d70}
@media(min-width:800px){.connected-rebuild .phone{height:var(--instinct-modal-height,900px)!important;border-radius:30px!important;margin:0 auto}}@media(max-width:360px){.connected-rebuild .top h2{font-size:22px!important}.connected-rebuild main{padding-left:15px!important;padding-right:15px!important}.connected-rebuild .hero.today-hero{padding:19px!important}.connected-rebuild .today-hero h3{font-size:27px!important}.connected-rebuild .optgrid{gap:9px}.connected-rebuild .opt{padding:13px!important}.connected-rebuild .opt .explore-photo{margin:-13px -13px 7px;width:calc(100% + 26px);height:85px}.connected-rebuild .opt small{font-size:11px}.connected-rebuild .intake-head{padding:18px 18px 0}.connected-rebuild .intro{padding-left:18px;padding-right:18px}}
.foundation-card{padding:17px;border-radius:18px;background:#eef2e4;margin:14px 0}.foundation-card b{font-size:16px}.foundation-card p{font-size:14px;margin:9px 0}.found-words{font-size:20px;letter-spacing:.05em;color:#33523a}.goal-trend{padding:19px;border-radius:22px;background:#e7eddf;margin:22px 0}.goal-trend h3{margin:10px 0;font-size:22px}.trend-row{display:flex;gap:12px;margin:16px 0;flex-wrap:wrap}.trend-point{text-align:center}.trend-point b{font-family:Georgia,serif;font-size:26px;display:block}.trend-point small{font-size:11px}.goal-check{margin-top:14px;padding-top:14px;border-top:1px solid #d3dcc4}.story-passage{font-size:16px;line-height:1.7}
.welcome-panel{background:#fff;border:1px solid #e2ecea;border-radius:18px;padding:18px;margin:0 0 16px}
.welcome-panel h3{margin:0 0 8px}
.welcome-panel .welcome-list{list-style:none;margin:0 0 12px;padding:0;display:grid;gap:10px}
.welcome-panel .welcome-list li{display:flex;flex-direction:column;background:#f2f7f6;border-radius:12px;padding:10px 12px}
.welcome-panel .welcome-list span{color:#5b6b69;font-size:.92rem}
.plan-week{display:flex;gap:5px;justify-content:space-between;margin:14px 0}.day-toggle{flex:1;text-align:center;padding:6px 2px;border-radius:10px;border:1px solid #cfd8c2;background:#fbfaf6;min-height:44px}.day-toggle small{display:block;font-size:10px}.day-toggle b{display:block;font-size:14px;color:#8a957c}.day-toggle.on{background:#e0ebd2;border-color:#4e7c4a}.day-toggle.on b{color:#3f7040}.day-toggle.today{outline:2px solid #244b3d;outline-offset:1px}
.connected-rebuild .tabs{position:static!important;border-top:1px solid #ece5de;background:#fbf8f4!important}.connected-rebuild button,.connected-rebuild a,.connected-rebuild .chip{touch-action:manipulation;-webkit-tap-highlight-color:rgba(78,124,74,.18)}
.connected-rebuild .chip:active{transform:scale(.95)}
.reveal{scroll-margin:12px 0}
.cond-link{display:block;margin-top:6px;font-size:.86rem;color:#3f5e46;background:#eef5ec;border-radius:10px;padding:7px 10px}
.move-demo-wrap{margin:12px 0;text-align:center}
.move-demo{width:130px;height:130px;background:#f0f5ec;border-radius:16px}
.move-demo-wrap figcaption{font-size:.88rem;color:#5b6b69;margin-top:6px}
.routine a.link{display:inline-block;margin:8px 0}
.connected-rebuild .top.brand-top{padding:14px 20px 4px}
.connected-rebuild .top.brand-top .brand{margin:0}
.solution-head{padding:10px 0 16px;border-bottom:1px solid #e1e5d9}
.solution-head h2{font-family:Georgia,serif;font-size:30px;line-height:1.15;font-weight:400}
.solution-head p{font-size:15px;margin-top:10px;color:#3c4a38}
.how-list{margin:16px 0}
.how-item{display:flex;gap:14px;align-items:center;background:#fff;border:1px solid #e2ecea;border-radius:18px;padding:12px 14px;margin:10px 0}
.how-item img{width:64px;height:64px;border-radius:14px;object-fit:cover;flex:none;display:block}
.how-item b{font-family:Georgia,serif;font-size:19px;font-weight:400;display:block;margin-bottom:3px}
.how-item p{font-size:14px;color:#3c4a38;line-height:1.5;margin:0}

/* Round 5 (Nov 9): loading spinner, Today section, weekly nutrition support */
.spin-ring{display:inline-block;width:34px;height:34px;border-radius:50%;border:4px solid #dfe5d4;border-top-color:#3c5c41;animation:naraspin 1s linear infinite;margin-bottom:14px}
@keyframes naraspin{to{transform:rotate(360deg)}}
.today-top{padding:2px 0 9px;border-bottom:1px solid #e1e5d9;margin-bottom:10px}
.today-top h3{font-family:Georgia,serif;font-size:17px;font-weight:400;margin:2px 0 3px;line-height:1.25}
.today-top p{font-size:13px;color:#3c4a38;margin:0}
.today-top small{display:block;margin-top:4px;font-size:12px;color:#75836e}
.nutri-list{list-style:none;margin:14px 0 4px;padding:0;display:grid;gap:8px}
.nutri-list li{background:#ffffff14;border:1px solid #ffffff2a;border-radius:14px;padding:10px 12px;display:grid;gap:2px}
.nutri-list li b{font-size:14px;font-weight:600}
.nutri-list li span{font-size:13px;line-height:1.45;opacity:.92}
.nutri-list li em{font-style:normal;font-size:12px;color:#8a9a4a}
.nutri-list li.gap{border-color:#8a9a4a88;background:#8a9a4a14}
.support-panel{background:#edf1e6;border-radius:20px;padding:16px 18px;margin:14px 0}
.support-panel .eyebrow{display:block;margin-bottom:4px}
.support-panel .nutri-list li{background:#fff;border:1px solid #e2ecea}
.support-panel .nutri-list li b{color:#2e4630}
.support-panel .nutri-list li small{color:#75836e;font-size:12px}
.support-panel .nutri-list li.gap{border-color:#7d9147;background:#f1f4e0}
.support-panel .meals{margin-top:14px;border-top:1px solid #dde3d2;padding-top:12px}
.support-panel .meals>b{font-family:Georgia,serif;font-size:17px;font-weight:400;display:block;margin-bottom:8px}
.support-panel .meals p{margin:8px 0;font-size:14px;display:flex;justify-content:space-between;gap:10px;align-items:baseline}
.support-panel .meals p small{color:#75836e;font-size:12px;text-align:right}
.support-panel .week-ok{font-size:14px;color:#2e4630;margin:12px 0 0}
.support-panel .cta{margin-top:12px}

/* Round 5 addition: meal directory (no endless scroll) with per-meal guidance */
.meals-sub{display:block;color:#75836e;font-size:12px;margin:2px 0 10px}
.meal-dir{background:#fff;border:1px solid #e2ecea;border-radius:14px;margin:8px 0;overflow:hidden}
.meal-dir summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:10px;align-items:center;padding:13px 14px;font-size:14px;font-weight:600;color:#2e4630;min-height:48px}
.meal-dir summary::-webkit-details-marker{display:none}
.meal-dir summary::after{content:'+';font-weight:400;font-size:18px;color:#75836e;flex:none}
.meal-dir[open] summary::after{content:'–'}
.meal-dir summary small{font-weight:400;color:#75836e;font-size:12px;text-align:right}
.meal-how{padding:0 14px 14px;border-top:1px solid #eef1e4}
.meal-how>b{display:block;font-size:13px;margin:12px 0 6px;color:#2e4630}
.meal-how .klist{margin:0 0 4px;font-size:13px}
.meal-how ol.steps{padding-left:20px}
.meal-how ol.steps li{margin:6px 0}
.meal-how .link{display:inline-block;margin:10px 0 4px;min-height:44px}
.meal-how .sec{margin-top:8px}
.meal-how .week-ok{margin:10px 0 0}
/* round 6: calendarized week plan */
.connected-rebuild .back-top{flex:none;align-self:center;min-width:44px;min-height:44px;border:1px solid #d8dfd2;background:#fff;border-radius:999px;font-size:18px;color:#2e4630;margin-right:10px;cursor:pointer}
.connected-rebuild .nutri-list.lean{margin:8px 0 2px;gap:5px}
.connected-rebuild .nutri-list.lean li{display:block;padding:6px 10px}
.connected-rebuild .nutri-list.lean li b{display:inline;font-size:13px;margin-right:6px}
.connected-rebuild .nutri-list.lean li span{display:inline;font-size:13px;line-height:1.35}
.connected-rebuild .week-plan>p.muted{margin:10px 0 6px}
.connected-rebuild .day-strip{display:flex;gap:8px;overflow-x:auto;padding:2px 2px 10px;margin:0 -2px;scrollbar-width:none}
.connected-rebuild .day-strip::-webkit-scrollbar{display:none}
.connected-rebuild .day-card{flex:0 0 auto;width:104px;min-height:96px;border:1px solid #dde3d2;border-radius:14px;background:#fff;padding:9px 10px;text-align:left;display:flex;flex-direction:column;gap:3px;font:inherit;cursor:pointer}
.connected-rebuild .day-card small{color:#75836e;font-size:11px;letter-spacing:.02em}
.connected-rebuild .day-card b{font-size:17px;color:#2e4630;font-family:Georgia,serif;font-weight:400}
.connected-rebuild .day-card span{font-size:12px;line-height:1.3;color:#57503f;overflow-wrap:anywhere}
.connected-rebuild .day-card.on{border-color:#2e4630;box-shadow:0 0 0 1px #2e4630;background:#f6f8ef}
.connected-rebuild .day-card.today small{color:#2e4630;font-weight:600}
.connected-rebuild .day-meal{border:1px solid #dde3d2;border-radius:16px;background:#fff;padding:14px;margin-top:4px}
.connected-rebuild .day-meal h3{margin:0 0 4px;font-family:Georgia,serif;font-weight:400;font-size:18px;line-height:1.3}
.connected-rebuild .day-meal .nutri-line{margin:0 0 10px;font-size:13px;color:#75836e}
.connected-rebuild .day-meal .row3{margin-top:10px}
.connected-rebuild .replace-bar{margin:10px 0 0;font-size:13px;color:#2e4630;background:#f3f4eb;border-radius:10px;padding:8px 10px}
.connected-rebuild .meal-dir .row3{margin:8px 0 4px}
/* round 6 movement: tile timeline + video link */
.connected-rebuild .tile-week{display:flex;gap:6px;margin:10px 0 2px}
.connected-rebuild .tile-week span{flex:1;display:flex;flex-direction:column;align-items:center;gap:3px}
.connected-rebuild .tile-week small{font-size:10px;letter-spacing:.04em;opacity:.85}
.connected-rebuild .tile-week i{width:7px;height:7px;border-radius:50%;background:#ffffff3a}
.connected-rebuild .tile-week span.on i{background:#fff}
.connected-rebuild .tile-week span.today small{font-weight:700;text-decoration:underline}
.connected-rebuild .tile-video{display:inline-block;margin-top:8px;font-size:13px}

/* Round 10-11 (Nov 9): slots, info pop-ups, database, balance program, plain toast */
.slot-row{display:grid;grid-template-columns:74px 1fr;gap:10px;padding:12px 0;border-top:1px solid #edf0e4;align-items:start}
.slot-row:first-of-type{border-top:none}
.slot-name{font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#75836e;padding-top:3px}
.slot-body{min-width:0}
.slot-head{display:flex;justify-content:space-between;align-items:center;gap:8px}
.slot-head b{font-size:15px;line-height:1.35}
.info-i{flex:none;width:30px;height:30px;min-height:30px;border-radius:50%;border:1.5px solid #426c43;color:#2e4630;font-weight:700;font-style:italic;font-family:Georgia,serif;font-size:15px;background:#fff;display:inline-flex;align-items:center;justify-content:center;padding:0}
.nutri-sub{display:block;font-size:12px;color:#75836e;margin-top:3px;line-height:1.45}
.nutri-sub em,.nutri-full em{font-style:normal;font-weight:700;color:#2e4630;background:#e7eddf;border-radius:8px;padding:1px 7px;margin-right:6px}
.slot-swap{margin-top:5px;font-size:13px}
.people-row{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin:8px 0 16px}
.people-row>span{font-size:13px;font-weight:600;color:#2e4630;margin-right:4px}
.chip.sm{min-height:38px;font-size:13px;padding:7px 12px}
.db-list{margin-top:12px;display:grid;gap:4px;max-height:46dvh;overflow:auto}
.db-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:11px 4px;border-bottom:1px solid #edf0e4}
.db-row b{font-size:14px;line-height:1.35;display:block}
.db-row .row3{display:flex;gap:8px;align-items:center;flex:none}
.db-row .cta{margin:0;min-height:40px}
.balance-program{margin-top:16px;border-top:1px solid #d5dcc9;padding-top:14px}
.balance-program>b{font-size:16px;display:block;margin:12px 0 8px}
.balance-step{padding:12px 0;border-top:1px dashed #dde3d0}
.balance-step small{display:block;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#75836e;margin-bottom:4px}
.balance-step p{font-size:14px;margin:6px 0}
.toast-plain{display:block;background:#f3f4eb;border:1px solid #dfe4d6;padding:13px 15px;border-radius:14px;margin-bottom:14px}
.toast-plain p{font-size:14px;line-height:1.5;margin:0}
.points-line{display:flex;gap:12px;align-items:center;margin-top:12px}
.points-line b{font-family:Georgia,serif;font-size:40px}
.points-line span{font-size:12px;line-height:1.4}
.connected-rebuild .back-top{flex:none;align-self:center;min-height:44px;border:1px solid #d8dfd2;background:#fff;border-radius:999px;font-size:14px;font-weight:600;color:#2e4630;margin-right:10px;padding:8px 16px;cursor:pointer}
.dose-line{font-weight:700;font-size:16px}

/* Round 12: game celebration */
.celebration{position:relative;overflow:hidden;text-align:center;padding:2.5rem 1rem}
.celebration h2{font-size:2rem;margin:.5rem 0}
.celebration .points-line{font-weight:500}
.game-back{display:inline-block;margin:0 0 12px;padding:0}
.game-score{font-size:17px;color:#244b3d;margin:4px 0 0}
.scam-tell,.scam-move{font-size:15px;line-height:1.55;margin:12px 0 0}
.scam-tell b,.scam-move b{color:#244b3d}
.confetti{position:absolute;inset:0;pointer-events:none}
.confetti i{position:absolute;top:-12px;width:9px;height:14px;border-radius:2px;animation:confetti-fall 2.6s ease-in forwards}
@keyframes confetti-fall{0%{transform:translateY(0) rotate(0deg);opacity:1}85%{opacity:1}100%{transform:translateY(105vh) rotate(560deg);opacity:0}}
.list-add{margin:.75rem 0}
.list-add label{display:block;font-weight:600;margin-bottom:.25rem}

/* Round 13: done state on home tiles, per-ingredient list control, banner tones */
.done-layer{display:flex;align-items:center;gap:10px;margin-top:12px;padding:12px 14px;border-radius:16px;background:#ffffff26;border:1px solid #ffffff40;font-size:14px}
.done-layer b{flex:1;font-size:15px}
.done-layer .done-tick{width:26px;height:26px;flex:none;border-radius:50%;background:#e9f2d8;color:#2f5231;display:grid;place-items:center;font-weight:700;font-size:15px}
.done-layer.soft .done-tick{background:#f0e6d2;color:#64742f}
.done-layer .link{color:#f2f5e6;min-height:44px;padding:8px 10px}
.ing-help{margin:8px 0 10px;font-size:13px}
.ing-list{display:grid;gap:6px;margin:0 0 12px}
.ing-row{display:flex;align-items:center;gap:11px;padding:13px 12px;border:1px solid #dbe2d0;border-radius:14px;background:#fffdf7;font-size:15px;cursor:pointer}
.ing-row input{width:21px;height:21px;flex:none;accent-color:#35613e}
.ing-row span{flex:1;line-height:1.4}
.ing-row small{display:block;font-size:12px;color:#5d6b53;margin-top:2px}
.ing-row em{font-style:normal;font-size:12px;color:#7c8871;flex:none}
.ing-row.in-list{border-color:#426c43;background:#edf3e5}
.ing-row.in-list em{color:#35613e;font-weight:600}
.today-hero.tone-mind:has(.hero-photo)::after{background:linear-gradient(90deg,#244b3de0 0%,#244b3d9c 60%,#244b3d59 100%)}
.today-hero.tone-sun:has(.hero-photo)::after{background:linear-gradient(90deg,#244b3de8 0%,#244b3da8 60%,#244b3d60 100%)}
.today-hero>.hero-photo.art{padding:0}

/* Round 15: physio plan */
.physio-row{display:flex;flex-direction:column;gap:8px;padding:13px 14px;border:1px solid #dbe2d0;border-radius:14px;margin-top:10px;background:#fffdf7}
.physio-row>b{font-size:15px}
.physio-row .chips{gap:6px}
.physio-row .chip{min-height:40px;font-size:13px;padding:7px 12px}
.physio-row .link{align-self:flex-end}
.physio-plan .klist li{line-height:1.7}
.connected-rebuild .hello .orb{display:block!important;width:22px;height:22px;box-shadow:none;animation:none;flex:none}
/* Round 17: all Home hero slides share one hard fixed height. Variable text is
   clamped/ellipsized so a tile never grows (user rule: same height, always). */
.connected-rebuild .today-hero h3{overflow-wrap:anywhere}
.connected-rebuild .today-hero .hero-t p{overflow-wrap:anywhere}
.connected-rebuild .nutri-list.lean li{display:block;overflow-wrap:anywhere}
.connected-rebuild .hero .personal-reason{overflow-wrap:anywhere}
.connected-rebuild .physio-strip{margin:16px 0 18px}
.connected-rebuild .physio-strip .day-card{cursor:default;text-align:center}
.ing-row .ing-num{font-style:normal;font-size:12px;color:#7c8871;flex:none;min-width:18px;text-align:right;font-weight:600}
.upd-note{display:block;margin-top:6px;font-size:12px;color:#35613e;font-weight:600}
.profile-page{display:grid;gap:14px;padding-bottom:24px}
.pcard{background:#fffdf7;border:1px solid #dbe2d0;border-radius:16px;padding:16px 16px 14px;display:grid;gap:7px}
.pcard h4{margin:0;font-size:15px;color:#35613e}
.pcard p{margin:0;font-size:15px;line-height:1.45}
.pcard small{color:#5d6b53;line-height:1.4}
.pcard blockquote{margin:4px 0;font-size:14px;border-left:3px solid #dbe2d0;padding-left:10px;color:#41503a}
.pcard .sec.sm{justify-self:start;margin-top:4px}

.connected-sheet .sheet-head{position:sticky;top:-24px;margin:-24px -22px 12px;padding:18px 22px 12px;background:#f7f8f1;z-index:6;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;border-bottom:1px solid #e9ecdd}
.connected-sheet .sheet-head h3{margin:0;font-size:24px;line-height:1.2;padding-right:0}
.connected-sheet .sheet-head .x{position:static;flex:none;margin:-4px -6px 0 0}
.player-card{background:#edf3e5;border:1px solid #cfe0c4;border-radius:22px;padding:20px 18px 14px;margin:14px 0 6px;text-align:center}
.player-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}
.player-len{font-size:13px;font-weight:700;color:#3c5e37;font-variant-numeric:tabular-nums}
.player-btn{width:84px;height:84px;border-radius:50%;background:#3c6b43;color:#fffdf7;border:none;display:flex;align-items:center;justify-content:center;padding:0;margin:2px auto 8px;min-height:84px;box-shadow:0 4px 14px rgba(60,107,67,.28);cursor:pointer}
.player-btn svg{width:30px;height:30px;fill:#fffdf7;display:block}
.player-btn:active{transform:scale(.97)}
.player-state{font-size:15px;font-weight:700;color:#2e4a30;margin-bottom:12px}
.player-times{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:600;color:#4a5d49;font-variant-numeric:tabular-nums}
.player-bar{flex:1;height:5px;border-radius:3px;background:#d4e2c9;overflow:hidden}
.player-bar i{display:block;height:100%;background:#3c6b43;border-radius:3px;transition:width .25s linear}
.calm-manual{display:block;margin:12px auto 0}
.steps-plain{list-style:none;padding:0;margin:18px 0;counter-reset:cs}
.steps-plain li{counter-increment:cs;display:flex;gap:12px;padding:12px 0;border-bottom:1px solid #eef0e4;font-size:15px;line-height:1.55;align-items:flex-start}
.steps-plain li:before{content:counter(cs);flex:none;width:30px;height:30px;border-radius:50%;background:#e7eddf;color:#3c5e37;font-weight:700;display:flex;align-items:center;justify-content:center;font-size:14px}
.day-card .day-tick{display:block;font-style:normal;color:#4e7c4a;font-size:15px;margin-top:2px}
.step-cards{display:flex;flex-direction:column;gap:9px;margin:10px 0 16px}
.step-card{display:flex;gap:12px;padding:13px 14px;border:1px solid #e3e7d8;border-radius:16px;background:#fff;text-align:left;align-items:flex-start;font-size:15px;line-height:1.5;min-height:48px;color:#20382e}
.step-card .n{flex:none;width:30px;height:30px;border-radius:50%;background:#426c43;color:#fff;font-weight:700;display:flex;align-items:center;justify-content:center;font-size:14px;font-style:normal}
.step-card.done{opacity:.55}
.step-card.done span{text-decoration:line-through}
.step-card.done .n{background:#9db18f}
.steps-bar{margin:8px 0 4px}
.connected-rebuild .watch-btn.dish-video{display:flex;margin:14px 0 4px;background:#426c43;color:#fff;border:none;justify-content:center;white-space:nowrap;font-size:15px;padding:12px 18px}

.engagement-tool p.pointer-note{font-size:12px;margin:2px 0 8px}
.calm-finish{text-align:center;padding:44px 0}
.calm-finish .done-tick{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;background:#e7eddf;color:#3c5e37;font-size:26px;margin-bottom:14px}
.calm-finish p{margin:8px 0 14px}
.engagement-tool .done-layer{background:#e4edda;border:1px solid #d4e0c2;color:#20382e}
.engagement-tool .done-layer .link{color:#2f5231}

/* Round 20: exercises as numbered blocks (user, Nov 10), day page after the
   week is accepted. */
.mv-blocks{list-style:none;margin:12px 0;padding:0;display:flex;flex-direction:column;gap:10px}
.mv-block{background:#f4f8ef;border:1px solid #d9e6cf;border-radius:16px;padding:14px 16px}
.mv-block>b{display:block;font-size:16px;line-height:1.35}
.mv-dose{display:block;color:#3c6b43;font-weight:700;font-size:13px;margin:3px 0 7px}
.mv-block p{margin:0 0 8px;font-size:14px;line-height:1.55}
.move-first .day-strip{margin:16px 0 8px}
.move-first .day-card{cursor:default}

.gate-detail{margin-top:14px;border-top:1px solid #d6ddc8;padding-top:10px}.gate-detail h3{font-size:22px;margin:6px 0}.gate-detail .lede{font-size:15px}.gate-detail .mv-blocks{margin-top:8px}
.connected-rebuild .day-tick{color:#35613e;font-weight:700}
/* Insights v3 (Nov 10 18:46): goal tabs + polished progress panel */
/* Insights v33: per-goal accent vars, hues lifted from the app's own palette */
.insg{--ins-deep:#35613e;--ins-bar:#4e7c4a;--ins-tintA:#eef3e4;--ins-tintB:#e0ead2}
.insg-move{--ins-deep:#35613e;--ins-bar:#4e7c4a;--ins-tintA:#eef3e4;--ins-tintB:#e0ead2}
.insg-calm{--ins-deep:#2f5d4a;--ins-bar:#4a8266;--ins-tintA:#e8f2ec;--ins-tintB:#d8eadd}
.insg-connected{--ins-deep:#2f7a69;--ins-bar:#3d8a77;--ins-tintA:#eef6f3;--ins-tintB:#dfeee8}
.insg-mind{--ins-deep:#35613e;--ins-bar:#4e7c4a;--ins-tintA:#eef3e4;--ins-tintB:#e0ead2}
.insg-cooking{--ins-deep:#5a6b2e;--ins-bar:#7d9147;--ins-tintA:#f1f4e0;--ins-tintB:#e6ebc8}
.insg-routine{--ins-deep:#64742f;--ins-bar:#8a9a4a;--ins-tintA:#f2f4e2;--ins-tintB:#e8ecca}
.insg-strength{--ins-deep:#3c5c3c;--ins-bar:#5d8357;--ins-tintA:#ecf2e6;--ins-tintB:#dee9d2}
.insg-bones{--ins-deep:#5f7038;--ins-bar:#7d9d55;--ins-tintA:#eff2e2;--ins-tintB:#e6ebcf}
.ins-tabs{display:flex;gap:8px;overflow-x:auto;padding:4px 0 10px;margin:12px 0 14px;scrollbar-width:none}
.ins-tab{flex:0 0 auto;font-size:13px;padding:9px 16px;border-radius:22px;border:1.5px solid #d3dcc4;color:#52634b;font-weight:600;background:#fffdf7;min-height:44px;transition:background .2s,color .2s}
.ins-tab.on{border-color:var(--ins-deep);background:var(--ins-deep);color:#fffdf7}
.ins-title{margin:2px 0 14px}
.ins-panel{animation:insrise .4s ease both}
.ins-hero.warm{padding:10px 14px;background:#eef3e4;border-radius:14px;display:block}
.ins-hero.warm .cap{display:block}
.ins-warm{font-size:13px;color:#35613e;margin:0;line-height:1.45}
.ins-hero{background:linear-gradient(135deg,var(--ins-tintA),var(--ins-tintB));border-radius:24px;padding:22px 20px 18px;margin-bottom:18px}
.ins-hero.quiet{background:#f2f4ea}
.ins-hero .num{font-family:Georgia,serif;font-size:56px;line-height:1;display:block;font-weight:400;color:var(--ins-deep)}
.ins-hero.quiet .num{color:#9aa78f}
.ins-hero .cap{font-size:15px;color:#2e4630;margin-top:6px;display:block}
.ins-vs{display:inline-block;margin-top:12px;font-size:12.5px;font-weight:700;color:var(--ins-deep);background:#fffdf7;border-radius:14px;padding:5px 11px}
.ins-line{font-family:Georgia,serif;font-size:19px;color:#2e4630;margin:0 0 16px;line-height:1.35}
.ins-seg{display:flex;background:#eef0e6;border-radius:14px;padding:3px;margin-bottom:14px}
.ins-seg button{flex:1;border:0;background:none;font:inherit;font-size:13px;font-weight:600;color:#52634b;padding:8px 0;border-radius:11px;min-height:40px;cursor:pointer;display:block;text-align:center}
.ins-seg button.on{background:#fffdf7;color:#2e4630;box-shadow:0 1px 4px rgba(46,70,48,.15)}
.ins-chart{background:#f7f8f0;border:1.5px solid #e3e8d6;border-radius:22px;padding:18px 16px 12px;margin-bottom:16px}
.ins-chartval{font-family:Georgia,serif;font-size:17px;color:#2e4630;min-height:24px;margin-bottom:8px}
.ins-chartval small{display:inline;font-family:-apple-system,'Segoe UI',Roboto,sans-serif;font-size:12px;color:#75836e;margin-left:6px}
.sub-note{margin:2px 0 8px;font-size:13px}
.chip.off-dim{opacity:.55}
.like-group{margin-top:10px}
.like-head{display:flex;align-items:center;gap:8px;width:100%;text-align:left;padding:12px 14px;border:1px solid #dbe2d0;border-radius:14px;background:#fffdf7;min-height:48px;font-size:14px;font-weight:600;color:#2e4630}
.like-head small{margin-left:auto;font-weight:400;color:#52634b}
.like-head span{font-size:18px;color:#52634b;margin-left:6px}
.like-group .chips{margin-top:8px}
.ready-screen{text-align:center;padding:40px 10px}
.ready-screen h1{font-size:30px;margin:14px 0 20px}
.ready-lines{list-style:none;padding:0;margin:0 0 26px}
.ready-lines li{font-family:Georgia,serif;font-size:19px;color:#2e4630;margin:0 0 12px;opacity:1;animation:readyfade .6s ease backwards}
.ready-lines li:nth-child(2){animation-delay:.7s}
.ready-lines li:nth-child(3){animation-delay:1.4s}
@keyframes readyfade{from{opacity:0}to{opacity:1}}
@media (prefers-reduced-motion:reduce){.ready-lines li{animation:none}}
.ins-trend{margin-top:12px;padding-top:12px;border-top:1.5px solid #e3e8d6}
.ins-trend .ins-line{font-size:17px;margin-bottom:8px}
.ins-trend .ins-line:last-child{margin-bottom:12px}
.ins-means summary{font-weight:400;color:#52634b;font-size:12.5px;list-style:none;cursor:pointer}
.ins-means summary::-webkit-details-marker{display:none}
.ins-means summary::after{content:' \203A';margin-left:5px}
.insg .goal-trend h3{margin:2px 0 12px}
.insg .goal-trend .eyebrow{display:block;margin-bottom:6px}
.insg .goal-check{margin-top:0;padding-top:0;border-top:0}
.insg .goal-check .chips{display:flex;flex-wrap:wrap;gap:8px}
.insg .goal-check small{display:block;font-size:12px;color:#52634b;margin-top:12px}
.ins-bars{display:flex;align-items:flex-end;gap:10px;height:130px;border-bottom:1.5px solid #dfe4d6}
.ins-bars-month{gap:18px}
.ins-bars-6m{gap:7px}
.ins-bar{flex:1;display:flex;flex-direction:column;justify-content:flex-end;height:100%;background:none;border:0;padding:0;cursor:pointer;position:relative;min-width:0}
.ins-bar i{display:block;border-radius:6px 6px 0 0;min-height:3px;background:var(--ins-bar)}
.ins-chart .ins-bar.zero i{background:#e6ead9}
.ins-chart .ins-bar.sel i{background:var(--ins-deep)}
.ins-bar.today::after{content:'';position:absolute;bottom:-7px;left:50%;transform:translateX(-50%);width:5px;height:5px;border-radius:50%;background:var(--ins-deep)}
.ins-x{display:flex;gap:10px;margin-top:12px}
.ins-x-month{gap:18px}
.ins-x-6m{gap:7px}
.ins-x span{flex:1;text-align:center;font-size:10.5px;color:#75836e;overflow:hidden;white-space:nowrap}
.ins-chartfoot{font-size:12.5px;color:#52634b;line-height:1.5;margin:0 0 16px}
.goal-check.saved{display:flex;justify-content:space-between;align-items:center;gap:10px}
.goal-check.saved p{margin:0;font-size:14px}
@keyframes insrise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@keyframes inspop{0%{transform:scale(.4);opacity:0}70%{transform:scale(1.12)}100%{transform:scale(1);opacity:1}}
@media (prefers-reduced-motion:reduce){.ins-panel{animation:none}}
.soon-block{margin:16px 0 4px;padding:16px 18px;border:1.5px dashed #cfd8c2;border-radius:20px;background:#f6f5ec}.soon-block .eyebrow{display:block;margin-bottom:6px;color:#7a8468}.soon-row{padding:8px 0;border-top:1px solid #e4e7d8}.soon-row:first-of-type{border-top:0}.soon-row b{display:block;font-size:15px;font-weight:600;color:#55624a}.soon-row small{display:block;font-size:12.5px;line-height:1.45;color:#6d7760;margin-top:2px}

/* Round 37: Reminders tool + staying-safe games */
.rem-month{background:#fffdf7;border:1px solid #dbe2d0;border-radius:20px;padding:16px 16px 12px;margin:14px 0}
.rem-month-head{display:flex;align-items:center;justify-content:space-between}
.rem-month-head b{font-family:Georgia,serif;font-size:19px;font-weight:400}
.rem-nav{width:44px;height:44px;border-radius:50%;border:1px solid #cfd8c2;background:#fbfaf6;font-size:20px;color:#3f7040;display:grid;place-items:center}
.rem-month-count{font-size:12px;color:#75836e;margin:2px 0 8px}
.rem-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;text-align:center}
.rem-wd{font-size:10.5px;color:#8a957c;padding:4px 0}
.rem-day{position:relative;min-height:38px;display:flex;align-items:center;justify-content:center;font-size:14.5px;border-radius:10px}
.rem-day.today{background:#244b3d;color:#fff;font-weight:600}
.rem-dot{position:absolute;bottom:4px;width:5px;height:5px;border-radius:50%;background:#7d9147}
.rem-day.today .rem-dot{background:#4e7c4a}
.rem-today{background:#edf1e6;border-radius:20px;padding:16px 18px;margin:14px 0}
.rem-today h4,.rem-coming h4,.rem-meds h4{font-size:15px;margin:0 0 6px}
.rem-row{display:flex;align-items:center;gap:14px;padding:12px 0;border-top:1px solid #dfe4d3}
.rem-row:first-of-type{border-top:0}
.rem-circle{width:34px;height:34px;border-radius:50%;border:2px solid #426c43;background:#fffdf7;color:#fff;font-size:16px;display:grid;place-items:center;flex:none}
.rem-circle.on{background:#3c7a4e;border-color:#3c7a4e}
.rem-row b{font-size:16px;display:block}
.rem-row small{font-size:12.5px;color:#52634b}
.rem-coming{margin:18px 0 6px}
.rem-appt{display:flex;align-items:center;gap:13px;padding:13px 0;border-top:1px solid #e2e7d8}
.rem-appt:first-of-type{border-top:0}
.rem-datechip{flex:none;width:52px;height:52px;border-radius:14px;background:#f2ead7;display:flex;flex-direction:column;align-items:center;justify-content:center}
.rem-datechip b{font-size:18px;line-height:1}
.rem-datechip small{font-size:9px;letter-spacing:.06em;color:#68765c}
.rem-appt-t{flex:1;min-width:0}
.rem-appt-t b{font-size:15.5px;display:block;line-height:1.35}
.rem-appt-t small{font-size:12.5px;color:#52634b}
.rem-links{display:flex;flex-direction:column;align-items:flex-end}
.rem-links .link{font-size:12.5px;min-height:40px;padding:4px 0}
.rem-danger{color:#8d2825}
.rem-meds{margin:14px 0}
.rem-medrow{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 0;border-top:1px solid #e2e7d8}
.rem-medrow:first-of-type{border-top:0}
.rem-medrow b{font-size:15.5px;display:block}
.rem-medrow small{font-size:12.5px;color:#52634b}
.rem-guard{font-size:12.5px;color:#68765c;text-align:center;margin:16px 8px}
.rem-when{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.rem-when .textin{width:100%}
.opt-art{display:block;overflow:hidden;border-radius:4px}
.scam-card{background:#fffdf7;border:1px solid #dbe2d0;border-radius:18px;padding:16px 18px;margin:16px 0}
.scam-card p{font-size:16.5px;line-height:1.55;margin:8px 0 0}
.scam-practice{display:inline-block;font-size:10.5px;font-weight:600;letter-spacing:.07em;color:#64742f;background:#f5ead0;border-radius:20px;padding:4px 10px;margin-bottom:8px;text-transform:uppercase}
.scam-from{display:block;font-size:12px;color:#68765c}
.scam-help{display:block;font-size:12.5px;color:#68765c;margin:12px 0;line-height:1.5}
.connected-rebuild .opt-wide{grid-column:1 / -1;min-height:0!important}
.connected-rebuild .opt-wide .explore-photo{height:110px}
.connected-rebuild .opt-wide .opt-art{display:flex;align-items:center;justify-content:center}
.connected-rebuild .opt-wide .opt-art svg{width:120px;height:90px;flex:none}
.engagement-tool .row3 .cta.sm{flex:1;white-space:nowrap;font-size:14px;padding-left:8px;padding-right:8px}
.connected-rebuild .portion-line{display:block;font-size:12.5px;color:#3f5c40;margin-top:5px;font-weight:600}
.connected-rebuild .hw-row{display:flex;gap:10px}
.connected-rebuild .hw-row .textin{flex:1;min-width:0}

/* Round 38: voice-to-text mic beside reminder name fields */
.input-mic{display:flex;gap:8px;align-items:center}
.input-mic .textin{flex:1}
.mic-btn{flex:none;width:44px;height:44px;border-radius:50%;border:1.5px solid #244b3d;background:#fff;color:#244b3d;display:flex;align-items:center;justify-content:center;cursor:pointer}
.mic-btn.live{background:#244b3d;color:#fff;animation:micpulse 1.2s ease-in-out infinite}
@keyframes micpulse{0%,100%{opacity:1}50%{opacity:.55}}

/* Round 38: half-width Reminders/coming-soon tiles + reminders without calendar */
.optgrid.two{grid-template-columns:1fr 1fr}
.optgrid.two .opt{padding:12px}
.opt.soon{cursor:default;background:#f4f6f2;border:1.5px dashed #c9d6cc;opacity:.9;text-align:left}
.soon-tag{display:inline-block;margin-top:6px;font-size:11px;font-weight:700;letter-spacing:.04em;color:#5c6f63;border:1px solid #c9d6cc;border-radius:999px;padding:2px 8px}
.rem-today-date{font-size:15px;font-weight:600;color:#244b3d;margin:6px 0 10px}
/* Round 38 (user, Nov 11 09:57): on-tile points celebration, not a top popup */
.connected-rebuild .today-hero{position:relative;overflow:hidden}
/* Round 51 (Main, Nov 12): the burst gets its own band between the Done
   strip and the action buttons, with clear spacing on both sides - the pill
   never touches either. Confetti scatters inside the band, a little taller
   than it so the fall reads as celebration, not a progress strip. */
.connected-rebuild .today-hero>.tile-burst{position:relative;height:64px;margin:12px 0;display:flex;align-items:center;justify-content:center;pointer-events:none}
.tile-burst .pts{background:#fffdf7;color:#244b3d;font-weight:500;font-size:16px;padding:9px 16px;border-radius:999px;box-shadow:0 3px 14px rgba(20,40,26,.25);animation:burst-pts 2.6s ease-out forwards}
.confetti.mini{position:absolute;inset:-12px 0}
.confetti.mini i{position:absolute;top:-8%;width:8px;height:13px;border-radius:2px;opacity:0;animation:confetti-drop 2.1s ease-in forwards}
@keyframes confetti-drop{10%{opacity:1}100%{transform:translateY(120%) rotate(280deg);opacity:0}}
@keyframes burst-pts{0%{opacity:0;transform:scale(.85)}12%{opacity:1;transform:scale(1)}82%{opacity:1}100%{opacity:0}}
@media (prefers-reduced-motion:reduce){.confetti.mini{display:none}.tile-burst .pts{animation:none;opacity:1}}
/* Round 38 (user, Nov 11 09:58): games carry their category + a warm why line */
.game-why{font-size:14px;line-height:1.5;color:#40543c;background:#eef2e4;border-radius:12px;padding:10px 14px;margin:10px 0}

/* Round 39: Reports (on-device health documents) */
.rep .lede{margin:0 0 14px}
.rep-consent{background:var(--card,#fff);border-radius:14px;padding:16px;margin:0 0 14px}
.rep-consent p{margin:0 0 12px}
.rep-form{margin:14px 0}
.rep-form .field{margin:0 0 12px}
.rep-form input[type=date],.rep-form input[type=text]{width:100%;padding:10px 12px;border:1px solid #d8d2c8;border-radius:10px;font:inherit;background:#fff}
.rep-actions{display:flex;gap:14px;align-items:center;margin-top:8px}
.rep-list{margin:16px 0 10px;display:flex;flex-direction:column;gap:10px}
.rep-row{display:flex;align-items:center;gap:8px;background:var(--card,#fff);border-radius:12px;padding:12px 14px}
.rep-open{flex:1;text-align:left;background:none;border:0;padding:0;font:inherit;cursor:pointer;display:flex;flex-direction:column;gap:2px}
.rep-open small{color:var(--muted,#6b675f)}
.rep-del{white-space:nowrap}
.rep-empty{margin:14px 0}
.rep-honest{display:block;margin:14px 0 4px}
.rep-view{max-width:100%;border-radius:10px}
.ins-reports{margin-top:22px}
.ins-reports p{margin:6px 0 12px}
/* Round 46: tidbit opener, breathing + money cards */
.tidbit-card{margin-top:14px}
.tidbit-text{font-size:16px;line-height:1.55}
.tidbit-trivia{font-size:14px;margin-top:10px;border-top:1px solid #dfe4d6;padding-top:10px}
.tidbit-ans{display:block;margin-top:6px}
.breath-card,.money-card{margin-top:14px}
.rem-refill{display:block;color:#4e7c4a;margin-top:4px}
.lang-choice{display:flex;gap:7px;align-items:center;flex-wrap:wrap}
.intake-head .brand-row{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px}
.intake-head .brand-row .brand{margin-bottom:0}
.intake-head .brand-row .lang-choice{flex:none;justify-content:flex-end}
.intake-head .brand-row .lang-chip{min-height:44px;padding:8px 13px;font-size:13px}
@media(max-width:360px){.intake-head .brand-row .lang-chip{padding:8px 10px;font-size:12px}}
.tidbit-card{margin:2px 0 10px;background:#fdf6e4;border:1px solid #eadfbe;border-radius:14px;padding:8px 14px 8px}
.tidbit-card .tidbit-label{display:flex;align-items:center;gap:7px;font-size:10.5px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:#96702a;margin:0 0 4px}
.tidbit-card .tidbit-x{margin-left:auto;border:0;background:none;color:#a08c5a;font-size:16px;line-height:1;padding:2px 4px;cursor:pointer}
.tidbit-card .tidbit-text{font-family:Georgia,'Times New Roman',serif;font-size:14px;line-height:1.35;color:#3c382a;margin:0}
.tidbit-card .tidbit-trivia{font-size:13px;line-height:1.4;margin:7px 0 0;border-top:1px solid #e9dcba;padding-top:7px;color:#6b6248}
.tidbit-card .tidbit-ans{display:inline;margin-top:0}
.tidbit-card .tidbit-share{display:block;margin-top:7px;border:0;background:none;color:#96702a;font-size:12px;font-weight:600;letter-spacing:.02em;cursor:pointer;padding:2px 0}
.tidbit-card .tidbit-trivia .link{display:inline;padding:0;font-size:13px;line-height:1.4;vertical-align:baseline}
.mv-block .watch-btn.dish-video,.today-hero .watch-btn.dish-video{white-space:normal;text-align:center}
.back-sub{display:inline-block;min-height:44px;padding:10px 0;font-size:14px}
.rem-hints{display:grid;gap:10px;margin:14px 0 16px}
.rem-hint{background:#f2f4ec;border:1px solid #e0e5d4;border-radius:16px;padding:14px 16px}
.rem-hint b{display:block;font-size:15px}
.rem-hint small{display:block;font-size:13px;color:#5a6a52;margin-top:3px;line-height:1.45}
.rep h1{margin:4px 0 8px}
.tidbit-card .tidbit-qrow{display:block;width:100%;text-align:left;background:none;border:0;border-top:1px solid #e9dcba;padding:6px 0 1px;margin-top:6px;font-size:12.5px;font-weight:600;color:#4e7c4a;cursor:pointer;min-height:30px}

/* Round 53: sign-in gate (public deployment) */
.signin-screen{max-width:430px;margin:0 auto;padding:64px 22px;text-align:center}
.signin-title{font-size:30px;margin:0 0 10px}
.signin-note{font-size:18px;color:#41563f;margin:0 0 26px;line-height:1.45}
.signin-or{margin:22px 0 14px;font-size:15px;color:#6b7a64}
.signin-email{margin-bottom:12px;text-align:center}
.signin-err{margin-top:16px;color:#8a4b2a;font-size:15px}
.signin-screen .wide{margin:0 auto;display:block;width:100%}
.signin-lang{display:flex;justify-content:flex-end;margin-bottom:26px}
/* stage-prod/src/style.css */
.nara-original-preview{padding:0!important;max-width:none!important;background:transparent!important}.nara-original-preview .stage{padding:0!important}.nara-original-preview .phone{border-radius:0!important;box-shadow:none!important;height:100dvh!important;max-width:430px}.nara-original-preview{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;font-weight:400!important;color:#20382e!important;line-height:normal!important;letter-spacing:normal!important}.nara-original-preview p,.nara-original-preview button,.nara-original-preview input,.nara-original-preview textarea,.nara-original-preview label,.nara-original-preview small{font-family:inherit;letter-spacing:normal}.nara-original-preview .intro{animation:none!important}
