:root{--bg:#edf0ee;--surface:#fff;--surface-muted:#eef1ef;--ink:#17181a;--ink-muted:#565d5a;--on-ink:#fff;--on-ink-muted:#c4c9c6;--on-ink-soft:#dadddb;--on-ink-track:#ffffff2e;--scrim:#17181a73;--sky-tile:#d6e6f1;--sky-row:#eef5fa;--sky-text:#34424c;--sky-accent:#8ebfe0;--sky-strong:#2b6a99;--sage-tile:#cde3d7;--sage-row:#edf6f1;--sage-text:#2e4238;--sage-accent:#8fc4a9;--sage-strong:#2f6b4f;--lilac-tile:#e2d9f2;--lilac-row:#f6f2fc;--lilac-text:#463f55;--lilac-accent:#b9a3e3;--lilac-strong:#5a3d96;--peach-tile:#f6dac8;--peach-row:#fcf1ea;--peach-text:#5a4033;--peach-accent:#f0b08c;--butter-tile:#f5e6b8;--butter-row:#fbf4de;--butter-text:#4d4122;--butter-accent:#f2d27a;--rose-tile:#f4d3df;--rose-row:#fbeff3;--rose-text:#5a3342;--rose-accent:#e89ab6;--sand-tile:#e8e0d3;--sand-row:#f7f3ed;--sand-text:#4a4334;--sand-accent:#cdbea2;--sage-icon:#1f8a5b;--sky-icon:#2a6fc9;--rose-icon:#c8457a;--sand-icon:#8a6d3b;--lilac-icon:#6e4fc8;--peach-icon:#c9531c;--butter-icon:#9c6b00;--danger:#a3322a;--check-border:#5e5a68;--check-on:#17181a;--chart-line:#17181a;--chart-area:#e9ecea;--chart-grid:#eef1ef;--r-hero:28px;--r-tile:26px;--r-stat:24px;--r-row:20px;--r-box:9px;--r-pill:999px;--page-x:16px;--page-top:24px;--gap-section:14px;--gap-grid:12px;--gap-rows:8px;--pad-tile:16px;--pad-hero:22px;--pad-row:14px;--touch:44px;--nav-item:48px;--icon:20px;--icon-nav:24px;--icon-badge:40px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--ink);-webkit-tap-highlight-color:transparent;margin:0;font:400 15px/1.45 Outfit,sans-serif}button,input,textarea,select{font:inherit;color:inherit}a{color:inherit}h1,h2,h3,p{margin:0}.icon{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex:none}.page{max-width:560px;padding:calc(var(--page-top) + env(safe-area-inset-top)) var(--page-x) calc(104px + env(safe-area-inset-bottom));gap:var(--gap-section);flex-direction:column;margin:0 auto;display:flex}.stack-section{gap:var(--gap-section);flex-direction:column;display:flex}.fade{animation:.15s ease-out fade}@keyframes fade{0%{opacity:0}to{opacity:1}}.muted{color:var(--ink-muted)}.small{font-size:13px;line-height:1.4}.center{text-align:center}.grow{flex:1;min-width:0}.row{align-items:center;gap:12px;display:flex}.row.end{justify-content:flex-end}.row.wrap{flex-wrap:wrap}.row.gap{align-items:flex-end;gap:12px}.stack{flex-direction:column;gap:12px;display:flex}.block{display:block}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}button,a{-webkit-user-select:none;user-select:none}button{cursor:pointer;background:0 0;border:0;padding:0}button:disabled{opacity:.45;cursor:default}button,.press{transition:transform .1s,background-color .15s}button:not(:disabled):active,.press:active{transform:scale(.98)}:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.hero :focus-visible{outline-color:var(--on-ink)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}button:active,.press:active{transform:none!important}}.screen-head{justify-content:space-between;align-items:flex-end;gap:12px;display:flex}.screen-head .eyebrow{color:var(--ink-muted);flex-wrap:wrap;align-items:baseline;gap:8px;font-size:15px;display:flex}.screen-head h1{letter-spacing:-.02em;font-size:38px;font-weight:600;line-height:1.1}.head-actions{flex:none;gap:8px;display:flex}.circle-btn{width:var(--touch);height:var(--touch);background:var(--surface);color:var(--ink);border-radius:50%;place-items:center;display:grid}.text-btn{color:var(--ink);text-underline-offset:3px;min-height:32px;font-size:15px;font-weight:500;text-decoration:underline}.btn{min-height:var(--touch);border-radius:var(--r-pill);justify-content:center;align-items:center;gap:8px;padding:0 22px;font-size:15px;font-weight:500;text-decoration:none;display:inline-flex}.btn-ink{background:var(--ink);color:var(--on-ink)}.btn-white{background:var(--surface);color:var(--ink)}.btn-muted{background:var(--surface-muted);color:var(--ink)}.btn-danger{color:var(--danger);padding-left:0}.btn-primary{border-radius:var(--r-pill);background:var(--ink);width:100%;min-height:56px;color:var(--on-ink);justify-content:center;align-items:center;gap:8px;font-size:17px;font-weight:500;display:inline-flex}.icon-btn{width:var(--touch);height:var(--touch);color:inherit;border-radius:50%;flex:none;place-items:center;display:grid}.hero{background:var(--ink);color:var(--on-ink);border-radius:var(--r-hero);padding:var(--pad-hero);flex-direction:column;gap:16px;display:flex}.hero-suffix{color:var(--on-ink-muted);margin-left:6px;font-size:20px}.tone-sky{--tile:var(--sky-tile);--rowbg:var(--sky-row);--tile-text:var(--sky-text);--accent:var(--sky-accent);--icon:var(--sky-icon)}.tone-sage{--tile:var(--sage-tile);--rowbg:var(--sage-row);--tile-text:var(--sage-text);--accent:var(--sage-accent);--icon:var(--sage-icon)}.tone-lilac{--tile:var(--lilac-tile);--rowbg:var(--lilac-row);--tile-text:var(--lilac-text);--accent:var(--lilac-accent);--icon:var(--lilac-icon)}.tone-peach{--tile:var(--peach-tile);--rowbg:var(--peach-row);--tile-text:var(--peach-text);--accent:var(--peach-accent);--icon:var(--peach-icon)}.tone-butter{--tile:var(--butter-tile);--rowbg:var(--butter-row);--tile-text:var(--butter-text);--accent:var(--butter-accent);--icon:var(--butter-icon)}.tone-rose{--tile:var(--rose-tile);--rowbg:var(--rose-row);--tile-text:var(--rose-text);--accent:var(--rose-accent);--icon:var(--rose-icon)}.tone-sand{--tile:var(--sand-tile);--rowbg:var(--sand-row);--tile-text:var(--sand-text);--accent:var(--sand-accent);--icon:var(--sand-icon)}.tone-plain{--tile:var(--surface-muted);--rowbg:var(--surface);--tile-text:var(--ink-muted);--accent:var(--ink-muted);--icon:var(--ink)}[class*=tone-] .badge{color:var(--icon,var(--ink))}.grid2{gap:var(--gap-grid);grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.grid2>.solo{grid-column:1/-1}.tile{background:var(--tile);color:var(--ink);border-radius:var(--r-tile);padding:var(--pad-tile);flex-direction:column;gap:10px;display:flex;position:relative}.tile h3{font-size:19px;font-weight:600;line-height:1.2}.tile .actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.tile .dismiss{color:var(--tile-text);position:absolute;top:6px;right:6px}.badge{width:var(--icon-badge);height:var(--icon-badge);background:var(--surface);color:var(--ink);border-radius:50%;flex:none;place-items:center;display:grid}.section{background:var(--tile);border-radius:var(--r-hero);gap:var(--gap-rows);flex-direction:column;padding:18px 12px 12px;display:flex}.section-head{align-items:center;gap:12px;padding:0 6px 4px;display:flex}.section-head h2{font-size:20px;font-weight:600;line-height:1.2}.section-head .sub{color:var(--tile-text);font-size:13px}.section-head .counter{color:var(--tile-text);font-variant-numeric:tabular-nums;margin-left:auto;font-size:15px;font-weight:500}.task-row{border-radius:var(--r-row);width:100%;min-height:56px;padding:var(--pad-row);background:var(--rowbg);color:var(--ink);text-align:left;align-items:flex-start;gap:12px;display:flex}@media (hover:hover){.task-row:hover{background:color-mix(in srgb, var(--ink) 4%, var(--rowbg))}}.task-body{flex-direction:column;flex:1;gap:2px;min-width:0;transition:opacity .15s;display:flex}.task-title{font-size:16px;font-weight:600;line-height:1.3}.task-time{color:var(--icon,var(--ink));font-variant-numeric:tabular-nums;margin-right:8px;font-size:15px;font-weight:600}.task-note{color:var(--tile-text);overflow-wrap:anywhere;-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:14px;line-height:1.4;display:-webkit-box;overflow:hidden}.task-note.one-line{-webkit-line-clamp:1}.part-group{gap:var(--gap-rows);flex-direction:column;display:flex}.part-label{letter-spacing:.02em;color:var(--tile-text);padding:6px 6px 0;font-size:13px;font-weight:600}.is-done .task-body{opacity:.55}.is-done .task-title-text{text-decoration:line-through}.check{border-radius:var(--r-box);border:2px solid var(--check-border);width:26px;height:26px;color:var(--on-ink);background:0 0;flex:none;place-items:center;transition:background-color .15s;display:grid}.check.on{background:var(--check-on);border-color:var(--check-on)}.check-round{width:var(--touch);height:var(--touch);border-radius:50%}.row-wrap{background:var(--rowbg);border-radius:var(--r-row)}.row-wrap>.task-row{background:0 0}.video-list{padding:0 var(--pad-row) var(--pad-row) calc(var(--pad-row) + 38px);flex-direction:column;gap:6px;display:flex}.video-list .label{color:var(--tile-text);font-size:13px}.video-link{min-height:var(--touch);background:var(--surface);border-radius:var(--r-pill);align-items:center;gap:8px;padding:6px 14px;font-size:14px;font-weight:500;line-height:1.25;text-decoration:none;display:flex}.thought{background:var(--rowbg);border-radius:var(--r-row);align-items:center;gap:12px;min-height:56px;padding:6px 6px 6px 14px;display:flex}.num{background:var(--ink);width:26px;height:26px;color:var(--on-ink);border-radius:50%;flex:none;place-items:center;font-size:13px;font-weight:600;display:grid}.thought-text{overflow-wrap:anywhere;flex:1;min-width:0;font-size:16px;line-height:1.35}.empty-line{color:var(--tile-text);padding:2px 6px;font-size:14px}.add-form{gap:8px;display:flex}.add-form input{border-radius:var(--r-pill);background:var(--surface);min-width:0;height:52px;color:var(--ink);border:0;flex:1;padding:0 18px;font-size:16px}.add-form input::placeholder{color:var(--ink-muted)}.add-btn{background:var(--ink);width:52px;height:52px;color:var(--on-ink);border-radius:50%;flex:none;place-items:center;display:grid}.nav{left:50%;bottom:calc(24px + env(safe-area-inset-bottom));z-index:10;background:var(--surface);border-radius:var(--r-pill);box-shadow:0 0 0 1px var(--surface-muted), 0 8px 24px #17181a1f;gap:4px;padding:8px;display:flex;position:fixed;transform:translate(-50%)}.nav button{width:var(--nav-item);height:var(--nav-item);color:var(--ink-muted);border-radius:50%;place-items:center;display:grid}.nav button[aria-current=page]{background:var(--surface-muted);color:var(--ink)}.pinned-action{z-index:9;left:50%;bottom:calc(100px + env(safe-area-inset-bottom));width:min(528px, calc(100% - 2 * var(--page-x)));position:fixed;transform:translate(-50%);box-shadow:0 8px 24px #17181a2e}.pinned-action:not(:disabled):active{transform:translate(-50%)scale(.98)}.page:has(.pinned-action){padding-bottom:calc(172px + env(safe-area-inset-bottom))}.weight-hero{background:var(--surface);border-radius:var(--r-hero);flex-direction:column;gap:6px;padding:22px;display:flex}.weight-hero .label{color:var(--ink-muted);font-size:15px}.weight-hero .value{font-size:64px;font-weight:600;line-height:1}.weight-hero .unit{margin-left:6px;font-size:22px;font-weight:400}.change-pill{background:var(--surface-muted);border-radius:var(--r-pill);align-self:flex-start;margin-top:8px;padding:6px 12px;font-size:14px;font-weight:500}.card{background:var(--surface);border-radius:var(--r-hero);flex-direction:column;gap:14px;padding:18px 16px 16px;display:flex}.card-head{justify-content:space-between;align-items:baseline;display:flex}.card-head h2{font-size:19px;font-weight:600}.card-head .unit{color:var(--ink-muted);font-size:14px}.chart{width:100%;height:auto;display:block;overflow:visible}.chart .grid{stroke:var(--chart-grid);stroke-width:1px}.chart .area{fill:var(--chart-area)}.chart .line{fill:none;stroke:var(--chart-line);stroke-width:4px;stroke-linecap:round;stroke-linejoin:round}.chart .last{fill:var(--ink);stroke:var(--surface);stroke-width:3px}.chart .bubble{fill:var(--ink)}.chart .bubble-text{fill:var(--on-ink);font:600 14px Outfit,sans-serif}.chart .empty{fill:var(--ink-muted);font:400 15px Outfit,sans-serif}.segmented{background:var(--surface-muted);border-radius:var(--r-pill);grid-template-columns:repeat(5,1fr);gap:4px;padding:4px;display:grid}.segmented button{border-radius:var(--r-pill);height:40px;color:var(--ink);font-size:14px}.segmented button[aria-pressed=true]{background:var(--ink);color:var(--on-ink);font-weight:500}.stats{gap:var(--gap-grid);grid-template-columns:1fr 1fr;display:grid}.stat{border-radius:var(--r-stat);background:var(--tile);color:var(--ink);text-align:left;flex-direction:column;gap:4px;padding:16px;display:flex}.stat .label{color:var(--tile-text);font-size:14px}.stat .value{font-size:28px;font-weight:600;line-height:1.15}.stat .value small{margin-left:4px;font-size:16px;font-weight:400}.stat .set-goal{text-underline-offset:4px;font-size:20px;font-weight:600;text-decoration:underline}.entries{background:var(--surface);border-radius:var(--r-hero);padding:8px 18px}.entry{align-items:center;gap:10px;padding:14px 0;font-size:16px;display:flex}.entry+.entry{border-top:1px solid var(--surface-muted)}.entry .kg{font-weight:600}.entry .delta{color:var(--ink-muted);margin-left:6px;font-weight:400}.entry .delta.down{color:var(--sage-strong)}.entries .more{width:100%;min-height:var(--touch);border-top:1px solid var(--surface-muted);font-weight:500}.plain-title{letter-spacing:-.02em;font-size:38px;font-weight:600;line-height:1.1}label{color:var(--ink-muted);flex-direction:column;gap:6px;font-size:14px;display:flex}.label{color:var(--ink-muted);font-size:14px}.field,.dialog input:not([type=checkbox]),.dialog textarea,.login input{color:var(--ink);background:var(--surface-muted);border:0;border-radius:16px;width:100%;min-height:48px;padding:12px 16px;font-size:16px}input.invalid{box-shadow:inset 0 0 0 2px var(--danger)}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{border-radius:var(--r-pill);background:var(--surface-muted);min-height:40px;color:var(--ink);align-items:center;gap:6px;padding:0 14px;font-size:14px;display:inline-flex}.chip.on{background:var(--ink);color:var(--on-ink)}.overlay{background:var(--scrim);z-index:20;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.dialog{background:var(--surface);border-radius:var(--r-hero) var(--r-hero) 0 0;width:100%;max-width:560px;max-height:92dvh;padding:22px var(--page-x) calc(22px + env(safe-area-inset-bottom));overflow-y:auto}.dialog h2{font-size:22px;font-weight:600}.dialog.sheet-tall{flex-direction:column;height:90dvh;max-height:90dvh;padding:0;display:flex;overflow:hidden}.sheet-body{min-height:0;padding:22px var(--page-x) 12px;flex:1;overflow-y:auto}.sheet-footer{padding:12px var(--page-x) calc(16px + env(safe-area-inset-bottom));flex-direction:column;display:flex}@media (width>=600px){.overlay{align-items:center}.dialog{border-radius:var(--r-hero)}}.steps{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.steps .stephead{color:var(--sage-strong);margin-top:10px;font-size:15px;font-weight:600}.steps button{width:100%;min-height:var(--touch);text-align:left;align-items:center;gap:12px;padding:4px 0;font-size:16px;display:flex}.steps .is-done span:last-child{opacity:.55;text-decoration:line-through}.banner{background:var(--peach-tile);color:var(--peach-text);border-radius:16px;padding:12px 16px}.banner button{font-weight:500;text-decoration:underline}.login{padding-top:calc(6vh + env(safe-area-inset-top));padding-bottom:calc(40px + env(safe-area-inset-bottom))}.login-hero{flex-direction:column;gap:10px;padding:8px 0 6px;display:flex}.login-tagline{color:var(--ink-muted);max-width:320px;margin:0 auto;font-size:18px;line-height:1.4}.login-switch{background:var(--surface-muted);border-radius:var(--r-pill);flex-wrap:nowrap;padding:4px}.login-switch .chip{background:0 0;flex:1;justify-content:center}.login-switch .chip.on{background:var(--ink)}.login .hero-badge{background:var(--butter-tile);border-radius:50%;place-items:center;width:64px;height:64px;margin:0 auto;display:grid}.login-back{margin-bottom:4px}.login .login-card{background:var(--surface);border-radius:var(--r-hero);flex-direction:column;gap:14px;padding:22px;display:flex}.guest-bar{background:var(--butter-tile);color:var(--butter-text);border-radius:var(--r-pill);padding:4px 6px 4px 16px;font-size:14px}.guest-bar .text-btn{color:var(--ink);padding:0 10px}.guest-btn{width:100%;min-height:52px}.tile-row{flex-direction:row;align-items:center;gap:12px;padding:12px 12px 12px 14px}.tile-row h3{font-size:19px}.insights{gap:var(--gap-rows);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.insight{background:var(--tile);color:var(--ink);border-radius:var(--r-row);align-items:center;gap:12px;padding:10px 14px 10px 10px;font-size:15px;line-height:1.35;display:flex}.month-head{align-items:center}.month-head h2{text-align:center;flex:1}.muted-bg{background:var(--surface-muted)}.streak .row{gap:8px}.streak .value{margin-top:6px}.notify-body{flex-direction:column;gap:10px;padding:0 6px 6px;display:flex}.time-row{color:var(--butter-text);flex-direction:row;align-items:center;gap:12px;font-size:15px}.time-row input{border-radius:var(--r-pill);background:var(--surface);width:auto;min-height:44px;color:var(--ink);border:0;padding:0 16px;font-size:16px}.food-hero{gap:20px}.meter{flex-direction:column;gap:6px;display:flex}.meter-top{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.meter-label{color:var(--on-ink-muted);font-size:15px}.meter-status{color:var(--on-ink-soft);font-variant-numeric:tabular-nums;font-size:14px}.meter-status.over{color:var(--peach-accent);font-weight:500}.meter-num{font-variant-numeric:tabular-nums;font-size:44px;font-weight:600;line-height:1}.bar{background:var(--on-ink-track);border-radius:5px;height:10px;margin-top:4px;overflow:hidden}.bar>span{background:var(--accent);border-radius:5px;height:100%;transition:width .25s;display:block}.food-sub{color:var(--tile-text);padding:6px 6px 0;font-size:14px;font-weight:600}.food-row{background:var(--rowbg);border-radius:var(--r-row);align-items:center;gap:6px;min-height:56px;padding:6px 6px 6px 14px;display:flex}.food-body{text-align:left;min-width:0;color:var(--ink);flex-direction:column;flex:1;gap:2px;padding:4px 0;display:flex}.food-edit{justify-content:center;align-self:stretch}.food-name{overflow-wrap:anywhere;text-align:start;font-size:16px;font-weight:600;line-height:1.3}.food-meta{color:var(--tile-text);font-variant-numeric:tabular-nums;font-size:13px}.add-small{background:var(--ink);width:40px;height:40px;color:var(--on-ink);border-radius:50%;flex:none;place-items:center;display:grid}.more-btn{align-self:center;font-size:14px}.add-form input:disabled{opacity:.6}.spinner{border:2px solid var(--on-ink-track);border-top-color:var(--on-ink);border-radius:50%;width:20px;height:20px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.food-items{background:var(--surface-muted);border-radius:16px;margin:0;padding:4px 16px;font-size:14px;list-style:none}.food-items li{gap:10px;padding:8px 0;display:flex}.food-items li+li{border-top:1px solid var(--surface)}.remember{min-height:var(--touch);text-align:left;align-items:center;gap:12px;font-size:16px;display:flex}.remember .check.on{color:var(--on-ink)}.food-picker{background:var(--tile);border-radius:var(--r-tile);gap:var(--gap-rows);flex-direction:column;padding:12px;display:flex}.food-picker .food-sub{padding-top:2px}.add-small.is-added{background:var(--sage-strong)}:root{--bar-kcal:#c8693c;--bar-protein:#2e8a5c}.food-readout{color:var(--ink-muted);min-height:20px;font-size:14px}.food-readout strong{color:var(--ink);font-weight:600}.daybars{flex-direction:column;gap:4px;margin:0;display:flex}.daybars figcaption{font-size:15px;font-weight:600}.daybars svg{width:100%;height:auto;display:block;overflow:visible}.daybars .grid{stroke:var(--chart-grid);stroke-width:1px}.daybars .goal{stroke:var(--ink-muted);stroke-width:1.5px}.daybars .goal-text{fill:var(--ink-muted);font:500 12px Outfit,sans-serif}.daybars .axis-text{fill:var(--ink-muted);font:400 12px Outfit,sans-serif}.daybars .bar-kcal{fill:var(--bar-kcal);transition:opacity .15s}.daybars .bar-protein{fill:var(--bar-protein);transition:opacity .15s}.daybars .dim{opacity:.3}.daybars .hit{fill:#0000;cursor:pointer}.segmented.segmented-3{grid-template-columns:repeat(3,1fr)}.card>.more{width:100%;min-height:var(--touch);border-top:1px solid var(--surface-muted);font-weight:500}.food-items-edit{background:var(--surface-muted);border-radius:20px;flex-direction:column;gap:8px;padding:8px;display:flex}.item-edit{background:var(--surface);border-radius:16px;flex-direction:column;gap:6px;padding:6px 4px 10px 10px;display:flex}.item-edit-top{gap:4px}.dialog .item-edit input:not([type=checkbox]){background:var(--surface-muted);border-radius:12px;min-height:44px;padding:8px 12px}.item-edit-top input{flex:1;min-width:0;font-weight:600}.item-edit-nums{grid-template-columns:1fr 1.25fr;gap:8px;padding-right:6px;display:grid}.unit-field{color:var(--ink-muted);white-space:nowrap;flex-direction:row;align-items:center;gap:6px;font-size:13px}.unit-field input{font-variant-numeric:tabular-nums;flex:1;min-width:0}.add-item-btn{align-self:flex-start;margin:0 6px;font-size:14px}.items-total{border-top:1px solid var(--surface);font-variant-numeric:tabular-nums;align-items:baseline;gap:12px;padding:10px 10px 4px;display:flex}.items-total strong{font-weight:600}.segmented.segmented-2{grid-template-columns:repeat(2,1fr)}.stack-tight{flex-direction:column;gap:6px;display:flex}.week-card{gap:12px}.week-strip{grid-template-columns:repeat(7,1fr);gap:6px;display:grid}.day-cell{background:var(--surface-muted);color:var(--ink);border-radius:14px;flex-direction:column;align-items:center;gap:2px;min-height:72px;padding:8px 0;display:flex}.day-cell .wd{color:var(--ink-muted);font-size:12px}.day-cell .dn{font-variant-numeric:tabular-nums;font-size:18px;font-weight:600;line-height:1.2}.day-cell .dc{color:var(--ink-muted);font-variant-numeric:tabular-nums;min-height:14px;font-size:11px}.day-cell.is-today{background:var(--ink);color:var(--on-ink)}.day-cell.is-today .wd,.day-cell.is-today .dc{color:var(--on-ink-muted)}.day-cell:disabled{box-shadow:inset 0 0 0 1px var(--surface-muted);opacity:1;color:var(--ink-muted);background:0 0}button.stat{width:100%}.stat[aria-pressed=true]{box-shadow:inset 0 0 0 2px var(--ink)}.detail-close{color:var(--tile-text);margin-left:auto}.detail-stats{grid-template-columns:1fr 1fr;gap:8px;display:grid}.detail-stats>div{background:var(--rowbg);border-radius:var(--r-row);flex-direction:column;gap:2px;padding:12px 14px;display:flex}.detail-stats .big{font-variant-numeric:tabular-nums;font-size:26px;font-weight:600;line-height:1.1}.detail-stats .small{color:var(--tile-text)}.detail-extra{color:var(--tile-text);padding:2px 6px;font-size:14px}.detail-row{gap:12px;padding-right:14px}.detail-bar{background:var(--surface);border-radius:4px;flex:none;width:72px;height:8px;overflow:hidden}.detail-bar>span{background:var(--tile-text);border-radius:4px;height:100%;display:block}.detail-anchor{scroll-margin-top:16px}.detail-anchor:empty{display:none}.part-icon{color:var(--tile-text);flex:none;place-items:center;margin-right:4px;display:grid}.add-btn-soft{background:var(--surface);color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--ink)}.dialog .add-btn-soft{background:var(--surface-muted);box-shadow:none}.spinner-ink{border-color:var(--surface-muted);border-top-color:var(--ink);display:inline-block}.goal-row{color:var(--peach-text)}.goal-row input{text-align:center;font-variant-numeric:tabular-nums;width:96px;margin-left:auto}.goal-row>span{width:32px}.small-tile{gap:6px;min-width:0}.small-tile .actions{margin-top:6px}.tile-top{justify-content:space-between;align-items:center;gap:6px;margin-bottom:4px;display:flex}.tile-controls{gap:6px;display:flex}.tile-amount{color:var(--tile-text);font-variant-numeric:tabular-nums;font-size:15px}.tile-amount strong{color:var(--ink);font-size:30px;font-weight:600;line-height:1.1}.round-btn{background:var(--surface);width:40px;height:40px;color:var(--ink);border-radius:50%;flex:none;place-items:center;display:grid}.round-btn.round-ink{background:var(--ink);color:var(--on-ink)}.small-tile .check-round{width:40px;height:40px}.small-tile.is-done .tile-amount{opacity:.7}.past-day{padding:12px 0}.past-day+.past-day{border-top:1px solid var(--surface-muted)}.past-date{color:var(--ink-muted);margin-bottom:4px;font-size:14px;font-weight:600}.past-day ul{flex-direction:column;gap:2px;margin:0;padding-left:18px;display:flex}.earlier-btn{align-self:center}.nudge-text{color:var(--tile-text);padding:2px 6px 0;font-size:15px;font-weight:600}.head-chip{margin-left:auto}.eyebrow-rel{color:var(--ink);font-weight:600}.letter-row{scrollbar-width:none;gap:6px;padding:2px 2px 4px;display:flex;overflow-x:auto}.letter-row::-webkit-scrollbar{display:none}.letter{background:var(--rowbg);min-width:40px;height:40px;color:var(--ink);border-radius:50%;flex:none;place-items:center;font-size:17px;font-weight:600;display:grid}.letter.on{background:var(--ink);color:var(--on-ink)}.food-bar{align-items:center;gap:0}.dialog .food-bar input{border-radius:var(--r-pill);height:40px;min-height:40px;margin:0 2px;padding:0 12px;font-size:16px}.bar-icon{width:34px;height:40px;color:var(--ink);border-radius:50%;flex:none;place-items:center;display:grid}.bar-icon svg{width:22px;height:22px}.bar-icon:disabled{opacity:.35}.bar-icon.listening{color:var(--danger);animation:1.2s ease-in-out infinite pulse}.bar-icon .spinner{border-color:var(--surface-muted);border-top-color:var(--ink)}@keyframes pulse{50%{opacity:.45}}.meter-right{align-items:center;gap:8px;display:inline-flex}.time-line{flex-wrap:nowrap;gap:10px}.time-line .time-row{min-width:0}.time-line .time-row input{width:160px;min-width:0;padding:0 14px}.time-line .btn{flex:none;padding:0 18px}.hint-chip{border-radius:var(--r-pill);background:var(--surface);min-height:32px;color:var(--ink);flex:none;align-items:center;gap:6px;padding:0 12px;font-size:13px;font-weight:600;display:inline-flex}.settings .section{background:var(--surface);--rowbg:var(--surface-muted);--tile-text:var(--ink-muted)}.settings .section .badge{background:var(--surface-muted)}.settings .time-row,.settings .goal-row{color:var(--ink)}.settings .time-row input{background:var(--surface-muted)}.planrow{align-items:center}.planrow .icon{color:var(--ink-muted)}.settings-actions{gap:8px;padding:0 6px 6px}.stat.stat-plain{background:var(--surface)}.stat-plain .label{color:var(--ink-muted)}.letter:disabled{opacity:1;color:var(--tile-text);box-shadow:inset 0 0 0 1px var(--rowbg);background:0 0;font-weight:400}.every-row{color:var(--ink);flex-direction:row;align-items:center;gap:10px;font-size:15px}.dialog .every-row input{text-align:center;font-variant-numeric:tabular-nums;flex:0 0 72px;width:72px}.day-chips{flex-wrap:nowrap;justify-content:space-between}.day-chips .chip{flex:0 0 40px;justify-content:center;width:40px;padding:0}.area-icon{place-items:center;display:grid}.planrow .area-icon .icon{color:var(--icon)}.switch{border-radius:var(--r-pill);background:var(--ink-muted);flex:none;width:44px;height:26px;transition:background-color .15s;position:relative}.switch:after{content:"";background:var(--surface);border-radius:50%;width:20px;height:20px;transition:transform .15s;position:absolute;top:3px;left:3px}[aria-checked=true]>.switch{background:var(--ink)}[aria-checked=true]>.switch:after{transform:translate(18px)}[aria-checked=false] .task-title{color:var(--ink-muted)}.onboarding{gap:var(--gap-section);flex-direction:column;display:flex}.onboarding-top{gap:8px}.onboarding-count{text-align:right;font-variant-numeric:tabular-nums;min-width:44px}.progress{border-radius:var(--r-pill);background:var(--surface);height:6px;overflow:hidden}.progress>span{background:var(--ink);border-radius:inherit;height:100%;transition:width .2s ease-out;display:block}.onboarding .section{padding-bottom:16px}.onboarding-chips{padding:0 6px}.onboarding .chip{background:var(--surface)}.onboarding .chip.on{background:var(--ink)}.onboarding-add input{min-width:0;min-height:var(--touch);border-radius:var(--r-pill);background:var(--surface);border:0;flex:1;padding:0 16px;font-size:16px}.onboarding-add .icon-btn:disabled{opacity:.5}.onboarding-actions{gap:10px}.onboarding-actions .btn{min-height:52px}.btn-primary:disabled{opacity:.5}.onboarding .tone-plain{--tile:var(--surface)}.onboarding .tone-plain .badge,.onboarding .tone-plain .chip:not(.on),.onboarding .tone-plain input{background:var(--surface-muted)}.onboarding .goal-row{color:var(--tile-text)}.landing{max-width:1120px;padding:calc(12px + env(safe-area-inset-top)) var(--page-x) calc(24px + env(safe-area-inset-bottom));flex-direction:column;gap:56px;margin:0 auto;display:flex}.landing h1,.landing h2{letter-spacing:-.02em}.lp-nav{justify-content:space-between;align-items:center;gap:12px;display:flex}.lp-brand{letter-spacing:-.02em;align-items:center;gap:10px;font-size:22px;font-weight:700;display:inline-flex}.lp-logo{background:var(--butter-tile);width:36px;height:36px;color:var(--butter-icon);border-radius:50%;place-items:center;display:grid}.lp-cta{min-height:52px;padding:0 26px;font-size:16px}.lp-ctas{flex-wrap:wrap;gap:10px;display:flex}.lp-ghost{color:var(--on-ink);box-shadow:inset 0 0 0 1.5px var(--on-ink-track)}.lp-hero{align-items:center;gap:40px;display:grid}.lp-hero-text{flex-direction:column;gap:18px;display:flex}.lp-pill{background:var(--surface);border-radius:var(--r-pill);color:var(--ink-muted);align-self:flex-start;padding:6px 14px;font-size:13px;font-weight:500}.lp-hero h1{font-size:clamp(38px,7vw,64px);font-weight:700;line-height:1.04}.lp-lead{color:var(--ink-muted);max-width:520px;font-size:18px;line-height:1.5}.lp-phone{background:var(--ink);width:100%;max-width:330px;box-shadow:0 30px 60px -30px var(--scrim);border-radius:44px;justify-self:center;padding:10px;transform:rotate(2deg)}.lp-screen{background:var(--bg);border-radius:36px;flex-direction:column;gap:10px;padding:22px 12px 14px;display:flex}.lp-screen-head{flex-direction:column;padding:0 6px 2px;font-size:13px;display:flex}.lp-screen-head strong{font-size:26px;font-weight:600;line-height:1.15}.lp-tiles{grid-template-columns:1fr 1fr;gap:8px;display:grid}.lp-tile{background:var(--tile);border-radius:var(--r-row);color:var(--tile-text);flex-direction:column;gap:4px;padding:12px;font-size:13px;display:flex;position:relative}.lp-tile b{color:var(--ink);margin-top:4px;font-size:16px;font-weight:600}.lp-tile strong{color:var(--ink);font-size:18px}.lp-tile .lp-check{position:absolute;top:12px;right:12px}.lp-phone .badge{width:32px;height:32px}.lp-phone .badge .icon{width:16px;height:16px}.lp-meter{border-radius:var(--r-pill);background:var(--surface);height:8px;margin-top:4px;overflow:hidden}.lp-meter span{border-radius:inherit;background:var(--icon);height:100%;display:block}.lp-msection{background:var(--tile);border-radius:var(--r-row);flex-direction:column;gap:6px;padding:10px;display:flex}.lp-msection>.row{gap:10px;padding:0 2px;font-size:15px}.lp-count{color:var(--tile-text);font-variant-numeric:tabular-nums;font-size:13px}.lp-mrow{background:var(--rowbg);border-radius:14px;align-items:center;gap:10px;padding:9px 10px;font-size:14px;display:flex}.lp-mrow.done{color:var(--tile-text)}.lp-check{width:22px;height:22px;box-shadow:inset 0 0 0 2px var(--check-border);border-radius:50%;flex:none;place-items:center;font-style:normal;display:grid}.lp-check.on{background:var(--check-on);color:var(--on-ink);box-shadow:none}.lp-features{gap:var(--gap-grid);flex-direction:column;display:flex}.lp-feature{background:var(--tile);border-radius:var(--r-hero);align-items:center;gap:22px;padding:24px;display:grid}.lp-feature-text{flex-direction:column;gap:10px;display:flex}.lp-kicker{color:var(--tile-text);text-transform:uppercase;letter-spacing:.06em;gap:10px;font-size:14px;font-weight:600}.lp-feature h2{font-size:clamp(24px,4vw,34px);font-weight:700;line-height:1.12}.lp-feature p{color:var(--tile-text);max-width:460px;font-size:16px;line-height:1.5}.lp-stack{flex-direction:column;gap:8px;display:flex}.lp-card{background:var(--surface);border-radius:16px;gap:12px;padding:12px 14px;font-size:14px}.lp-card .icon{color:var(--icon)}.lp-card>div:not(.row){flex-direction:column;display:flex}.lp-card span{color:var(--ink-muted)}.lp-card b{color:var(--ink);font-weight:600}.lp-input span{color:var(--ink);font-style:italic}.lp-nums{gap:16px;margin-top:4px}.lp-nums strong{color:var(--ink);font-size:18px}.lp-meter-food{margin:2px 4px 0}.lp-caption{color:var(--tile-text);padding:0 4px;font-size:13px}.lp-switch{border-radius:var(--r-pill);background:var(--surface-muted);flex:none;width:44px;height:26px;position:relative}.lp-switch:after{content:"";background:var(--surface);width:20px;height:20px;box-shadow:0 1px 3px var(--scrim);border-radius:50%;position:absolute;top:3px;left:3px}.lp-switch.on{background:var(--ink)}.lp-switch.on:after{left:21px}.lp-steps{flex-direction:column;gap:20px;display:flex}.lp-steps>h2,.lp-final h2{font-size:clamp(28px,5vw,42px);font-weight:700;line-height:1.1}.lp-steps ol{gap:var(--gap-grid);margin:0;padding:0;list-style:none;display:grid}.lp-steps li{background:var(--surface);border-radius:var(--r-tile);align-items:flex-start;gap:14px;padding:20px;display:flex}.lp-step-n{background:var(--ink);width:36px;height:36px;color:var(--on-ink);border-radius:50%;flex:none;place-items:center;font-weight:600;display:grid}.lp-steps h3{font-size:18px;font-weight:600}.lp-steps p{color:var(--ink-muted)}.lp-final{background:var(--ink);color:var(--on-ink);border-radius:var(--r-hero);flex-direction:column;align-items:flex-start;gap:14px;padding:40px 24px;display:flex}.lp-final p{color:var(--on-ink-muted);margin-bottom:8px;font-size:17px}.lp-footer{flex-wrap:wrap;justify-content:space-between;gap:8px;padding:0 4px;display:flex}@media (width>=860px){.landing{gap:88px;padding-left:32px;padding-right:32px}.lp-hero{grid-template-columns:1.15fr 1fr;gap:56px;padding-top:24px}.lp-phone{max-width:340px}.lp-features{gap:16px}.lp-feature{grid-template-columns:1fr 1fr;gap:44px;padding:44px}.lp-feature:nth-child(2n) .lp-feature-text{order:2}.lp-demo{justify-self:center;width:100%;max-width:400px}.lp-steps ol{grid-template-columns:repeat(3,1fr)}.lp-steps li{flex-direction:column;padding:26px}.lp-final{text-align:center;align-items:center;padding:64px}.lp-final .lp-ctas{justify-content:center}}
