:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f7f6ef;--paper:#fffef9;--ink:#293d2e;--muted:#647061;--line:#e0e4d7;--soft:#eef1e6;--green:#456841;--green-strong:#2e4a32;--primary-bg:#314f35;--primary-ink:#fffef4;--lime:#dce8c4;--coral:#b87761;--blue:#477c95;--water-bg:#eef5f5;--water-line:#d7e5e7;--error:#963d32;--error-bg:#faece7;--overlay:#15231a6b;--shadow:0 6px 28px #2a3a260a;--radius:24px;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;color:var(--ink);background:var(--bg);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#18211c;--paper:#212e25;--ink:#edf1e8;--muted:#b0baab;--line:#38483b;--soft:#29382b;--green:#b7d196;--green-strong:#c5ddac;--primary-bg:#c2d9a6;--primary-ink:#213020;--lime:#344b31;--coral:#e3a38c;--blue:#9bc9dc;--water-bg:#233439;--water-line:#3c535a;--error:#ffb3a2;--error-bg:#462d29;--overlay:#050b07a8;--shadow:none}*{box-sizing:border-box;scrollbar-width:thin;scrollbar-color:color-mix(in srgb, var(--muted) 45%, transparent) transparent}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-corner{background:0 0}::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--muted) 45%, transparent);background-clip:padding-box;border:2px solid #0000;border-radius:20px}::-webkit-scrollbar-thumb:hover{background-color:var(--muted)}html{scrollbar-gutter:stable;scroll-padding-top:calc(var(--app-visible-top,0px) + 20px);scroll-padding-bottom:calc(var(--app-obscured-bottom,0px) + 96px)}.screen,.sheet-content{overflow-anchor:none}body{background:var(--bg);min-width:0;margin:0;font-size:15px;line-height:1.5}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{color:inherit;cursor:pointer}button:disabled{cursor:default;opacity:.55}button,a,input,select,textarea,summary{touch-action:manipulation}input,select,textarea{min-width:0;max-width:100%}button,input,select,textarea{border-radius:12px}a{color:var(--green-strong);text-underline-offset:3px}a svg{vertical-align:-2px;display:inline}button svg,.button svg,.icon-button svg{flex-shrink:0}svg{display:block}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--green);outline-offset:4px}h1,h2,h3,h4,p{margin:0}p,label{overflow-wrap:anywhere}h1{letter-spacing:-.035em;font-family:Georgia,Times New Roman,serif;font-size:clamp(35px,8vw,43px);font-weight:400;line-height:1.1}h2{letter-spacing:-.025em;font-size:19px;font-weight:600;line-height:1.35}h3{font-size:16px;font-weight:650;line-height:1.4}h4{font-size:15px;font-weight:600;line-height:1.4}strong,b{font-weight:650}small{font-size:12px}p+p{margin-top:12px}em{font-weight:inherit}[hidden],.is-hidden{display:none!important}.sr-only,.skip-link:not(:focus){clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link:focus{z-index:100;background:var(--paper);border:1px solid var(--green);border-radius:12px;padding:12px 18px;position:fixed;top:12px;left:12px}.app-shell{max-width:720px;min-height:100dvh;margin:0 auto}.app-header{padding:max(20px, env(safe-area-inset-top)) 24px 16px;justify-content:space-between;align-items:center;gap:16px;display:flex}.brand{letter-spacing:-.07em;align-items:center;font-size:27px;font-weight:650;line-height:1;display:inline-flex}.brand-avatar{object-fit:cover;border-radius:12px;flex-shrink:0;width:35px;height:35px;margin-right:9px}.brand-mark{background:var(--primary-bg);width:35px;height:35px;color:var(--primary-ink);border-radius:12px;place-items:center;margin-right:8px;display:grid;transform:rotate(-8deg)}.brand-mark svg{transform:rotate(8deg)}.brand-dot{color:var(--coral);margin-left:1px}.header-actions{align-items:center;gap:2px;display:flex}.header-actions>.icon-button{color:var(--muted)}.avatar{border:1px solid var(--line);background:var(--lime);width:38px;height:38px;color:var(--green-strong);border-radius:50%;flex-shrink:0;place-items:center;font-size:14px;font-weight:650;display:grid}.header-avatar{margin-left:7px}.avatar-large{width:51px;height:51px;font-size:21px}.screen{padding:12px 24px calc(128px + env(safe-area-inset-bottom) + var(--app-obscured-bottom,0px));flex-direction:column;gap:19px;display:flex}.screen-heading{justify-content:space-between;align-items:center;gap:15px;margin:7px 0 3px;display:flex}.eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:10px;font-weight:600;line-height:1.5}.screen-heading .eyebrow{margin-bottom:9px}.screen-intro{color:var(--muted);max-width:440px;margin-top:-8px;font-size:14px}.heading-symbol{background:var(--soft);width:62px;height:62px;color:var(--green);border-radius:22px;flex-shrink:0;place-items:center;display:grid;transform:rotate(7deg)}.heading-symbol svg{transform:rotate(-7deg)}.date-today{border:1px solid var(--line);background:var(--paper);border-radius:30px;align-items:center;gap:8px;min-height:36px;padding:8px 12px;font-size:11px;font-weight:600;display:inline-flex}.status-dot{background:var(--green);border-radius:50%;width:6px;height:6px}.date-navigation{justify-content:space-between;align-items:center;margin:3px -5px -8px;padding:0 3px;display:flex}.date-picker{align-items:center;gap:8px;min-height:44px;padding:0 12px;display:flex;position:relative}.date-picker strong{font-size:14px;font-weight:550}.date-picker input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.date-picker:focus-within{outline:2px solid var(--green);border-radius:10px}.week-strip{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin:0 0 1px;display:grid}.week-strip button{min-height:68px;color:var(--muted);background:0 0;border:none;border-radius:17px;flex-direction:column;align-items:center;gap:4px;padding:9px 0 7px;display:flex}.week-strip small{text-transform:uppercase;font-size:10px}.week-strip span{color:var(--ink);font-size:17px;font-weight:600}.week-strip i{border-radius:50%;width:4px;height:4px}.week-strip .today-dot{background:var(--green)}.week-strip .selected{background:var(--primary-bg);color:var(--primary-ink)}.week-strip .selected span{color:inherit}.week-strip .selected i{background:var(--primary-ink)}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:21px}.summary-card{background:linear-gradient(135deg, var(--paper) 50%, var(--soft));overflow:hidden}.summary-top{justify-content:space-between;align-items:center;gap:5px;display:flex}.summary-copy{flex-direction:column;align-self:stretch;align-items:flex-start;padding:3px 0 11px;display:flex}.badge{border:1px solid var(--line);color:var(--muted);background:var(--paper);border-radius:30px;align-items:center;gap:6px;padding:5px 8px;font-size:10px;font-weight:500;line-height:1.35;display:inline-flex}.badge-green{color:var(--green-strong);background:var(--soft)}.summary-copy h2{letter-spacing:-.04em;margin:15px 0 14px;font-family:Georgia,Times New Roman,serif;font-size:clamp(29px,7vw,38px);font-weight:400;line-height:1.07}.summary-copy h2 em{color:var(--green)}.summary-copy>p{color:var(--muted);font-size:11px;line-height:1.6}.summary-copy p b{color:var(--ink);font-size:13px}.summary-copy .text-button{text-align:left;align-items:flex-start;margin-top:auto;padding:6px 0;font-size:11px}.energy-ring{flex-shrink:0;width:176px;min-width:135px;position:relative}.energy-ring svg{width:100%}.ring-track,.ring-value{fill:none;stroke-width:8px}.ring-track{stroke:var(--line)}.ring-value{stroke:var(--green);stroke-linecap:round;transform-origin:50%;transition:stroke-dashoffset .35s;transform:rotate(-90deg)}.ring-label{flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.ring-label span{color:var(--muted);font-size:10px}.ring-label strong{letter-spacing:-.05em;font-variant-numeric:tabular-nums;font-size:35px;font-weight:550;line-height:1.25}.ring-label small{color:var(--muted);font-size:11px}.macro-grid{border-top:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:6px;padding-top:20px;display:grid}.macro{--macro-color:var(--green)}.macro-fat{--macro-color:var(--coral)}.macro-carbs{--macro-color:#a29158}:root[data-theme=dark] .macro-carbs{--macro-color:#d8c17d}.macro-name{color:var(--muted);align-items:center;gap:6px;font-size:11px;display:flex}.macro-name i{background:var(--macro-color);border-radius:50%;width:5px;height:5px}.macro p{white-space:nowrap;letter-spacing:-.025em;margin:6px 0 8px;font-size:16px}.macro small{color:var(--muted);font-size:10px}.meter{background:var(--line);border-radius:4px;height:4px;overflow:hidden}.meter i{border-radius:inherit;background:var(--macro-color);height:100%;display:block}.incomplete-note{color:var(--muted);margin-top:0;padding-top:13px;font-size:10px}.section-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.section-heading h2,.section-heading h3{align-items:center;gap:8px;display:flex}.section-heading>span{color:var(--muted);flex-shrink:0;font-size:11px}.card>.section-heading{margin-bottom:16px}.card>.section-heading:last-child{margin-bottom:0}.meal-list{flex-direction:column;gap:12px;margin-top:-6px;display:flex}.meal-card{padding:17px 19px}.meal-heading{align-items:center;gap:12px;display:flex}.meal-heading>div:nth-child(2){flex:1}.meal-heading h3{font-size:15px}.meal-heading small{color:var(--muted);margin-top:2px;font-size:11px;display:block}.meal-icon,.round-icon{background:var(--soft);width:41px;height:41px;color:var(--green);border-radius:14px;flex-shrink:0;place-items:center;display:grid}.meal-icon.breakfast{color:#967846;background:#f5eddb}.meal-icon.lunch{color:#718048;background:#edf1de}.meal-icon.dinner{color:#7c718c;background:#eeecef}.meal-icon.snack{color:#a97960;background:#f7e9e2}:root[data-theme=dark] .meal-icon{background:var(--soft)}.meal-heading>.icon-button{border:1px solid var(--line);background:var(--paper);border-radius:50%;width:44px;height:44px}.entry{border-top:1px solid var(--line);margin-top:15px;padding:15px 0 0}.entry-title{justify-content:space-between;align-items:flex-start;gap:15px;display:flex}.entry-title>div{min-width:0}.entry-title h4{overflow-wrap:anywhere}.entry-title p{color:var(--muted);margin-top:4px;font-size:11px}.entry-title>strong{flex-shrink:0;font-size:15px;line-height:1.4}.entry-title>strong small{text-align:right;color:var(--muted);font-size:10px;font-weight:400;display:block}.entry-bottom{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px;margin-top:6px;display:flex}.entry-actions{align-items:center;margin-left:auto;margin-right:-9px;display:flex}.entry-actions .icon-button{width:44px;height:44px}.entry-note{color:var(--muted);overflow-wrap:anywhere;padding-top:6px;font-size:11px}.source-chip{background:var(--soft);color:var(--muted);border-radius:5px;margin-top:5px;padding:3px 6px;font-size:10px;display:inline-block}.nutrition-line{color:var(--muted);flex-wrap:wrap;align-items:center;gap:9px 16px;font-size:11px;display:flex}.nutrition-line b{color:var(--ink);font-weight:550}.entry-bottom .nutrition-line{flex:130px;gap:5px 10px;font-size:10px}.nutrition-line b,.ring-label strong,.macro b,.water-card .section-heading>span,.history-row{font-variant-numeric:tabular-nums}.water-card{background:var(--water-bg);border-color:var(--water-line)}.water-card .section-heading h2 svg{color:var(--blue)}.water-card .section-heading>span{font-size:12px}.water-card .section-heading b{color:var(--ink);font-size:17px}.water-glasses{grid-template-columns:repeat(8,1fr);gap:5px;margin:20px 0;display:grid}.water-glasses>span{border:1px solid var(--water-line);height:36px;color:var(--blue);opacity:.43;border-radius:11px;place-items:center;display:grid}.water-glasses>.filled{background:var(--blue);color:var(--water-bg);border-color:var(--blue);opacity:1}.water-actions{gap:8px;display:flex}.water-actions>.button{flex:1;min-height:44px;padding-left:5px;padding-right:5px;font-size:12px}.water-card .button-secondary{background:var(--paper);border-color:var(--water-line);color:var(--blue)}.water-card .search-form{margin-top:16px}.water-card>.details{border-color:var(--water-line)}.water-card .history-row{min-height:48px;padding-block:4px}.water-card .history-row .icon-button{min-width:44px;min-height:44px}.water-card .notice,.water-card>.loading{margin-top:14px}.weight-shortcut,.settings-link{text-align:left;align-items:center;gap:13px;width:100%;min-height:86px;display:flex}.weight-shortcut>span:nth-child(2),.settings-link>span:nth-child(2){flex:1}.weight-shortcut strong,.settings-link strong{font-size:14px;font-weight:600;display:block}.weight-shortcut small,.settings-link small{color:var(--muted);margin-top:3px;font-size:11px;display:block}.weight-shortcut>svg,.settings-link>svg{color:var(--muted)}.screen-footnote{color:var(--muted);text-align:center;padding:0 20px;font-size:10px;line-height:1.6}.bottom-nav{z-index:10;width:100%;max-width:720px;padding:10px 15px calc(10px + env(safe-area-inset-bottom));background:var(--paper);border-top:1px solid var(--line);grid-template-columns:1fr 1fr 74px 1fr 1fr;gap:2px;display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 -8px 30px #22311f08}.bottom-nav>button{color:var(--muted);background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;min-height:55px;padding:4px 0;display:flex}.bottom-nav span{font-size:10px;font-weight:500}.bottom-nav>button[aria-current=page]{color:var(--green-strong);background:var(--soft);border-radius:15px}.bottom-nav>.nav-add{background:var(--primary-bg);color:var(--primary-ink);border:5px solid var(--paper);border-radius:23px;gap:0;min-height:66px;margin:-17px 3px -1px;box-shadow:0 5px 14px #233a231f}.nav-add span{font-size:9px}.button{text-align:center;border:1px solid #0000;border-radius:14px;justify-content:center;align-items:center;gap:8px;min-height:46px;padding:12px 17px;font-size:13px;font-weight:600;line-height:1.3;text-decoration:none;transition:background-color .15s,opacity .15s;display:inline-flex}.button-primary{color:var(--primary-ink);background:var(--primary-bg)}.button-secondary{background:var(--soft);border-color:var(--line);color:var(--green-strong)}.button-quiet{color:var(--green-strong);background:0 0}.button-danger{background:var(--error);color:var(--paper)}:root[data-theme=dark] .button-danger{color:#371b15}.full{width:100%}.icon-button{width:44px;height:44px;color:var(--muted);background:0 0;border:0;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.text-button{min-height:32px;color:var(--green-strong);text-align:left;background:0 0;border:none;align-items:center;gap:5px;padding:9px 0;font-size:12px;font-weight:550;display:inline-flex}.stack{gap:var(--stack-gap,18px);flex-direction:column;display:flex}.stack>p+p,.invite-card>p+p{margin-top:0}.stack>.section-heading{margin-bottom:0}.row-between{justify-content:space-between;align-items:center;gap:12px;display:flex}.row-between>h3,.row-between>h4,.row-between>strong{overflow-wrap:anywhere;min-width:0}.inline-actions{flex-wrap:wrap;align-items:center;gap:3px;display:flex}.inline-actions .button{min-height:40px;padding:8px 10px;font-size:11px}.form-actions{align-items:stretch;gap:10px;display:flex}.form-actions>.button{flex:1;min-width:0}.field{flex-direction:column;gap:7px;min-width:0;display:flex}.field label{color:var(--ink);font-size:12px;font-weight:550;line-height:1.4}.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);min-inline-size:0;max-inline-size:100%;min-height:48px;color:var(--ink);background:var(--paper);outline-offset:2px;border-radius:12px;padding:12px 13px;font-size:16px}.field input:not([type=file]),.field select{height:48px;line-height:1.25}.field select{display:block}.field input[type=date],.field input[type=time],.field select{appearance:none;height:48px;line-height:1.25}.field input[type=date],.field input[type=time]{text-align:left;display:block;overflow:hidden}.field input::-webkit-date-and-time-value{text-align:left;min-width:0}.field input::-webkit-datetime-edit{min-width:0;padding:0}.select-control{min-inline-size:0;max-inline-size:100%;display:block;position:relative}.select-control select{padding-right:36px}.select-control>svg{pointer-events:none;color:var(--muted);position:absolute;top:50%;right:13px;transform:translateY(-50%)}.select-trigger{border:1px solid var(--line);background:var(--paper);width:100%;min-width:0;min-height:48px;color:var(--ink);text-align:left;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:12px 13px;font-size:16px;line-height:1.35;transition:border-color .18s,background-color .18s,box-shadow .18s;display:flex}.select-trigger span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.select-trigger>svg{color:var(--muted);flex-shrink:0}.select-trigger[aria-expanded=true]{border-color:var(--green);box-shadow:0 0 0 3px color-mix(in srgb, var(--green) 14%, transparent)}.choice-list{gap:8px;display:grid}.choice-option{border:1px solid var(--line);width:100%;min-height:52px;color:var(--ink);background:var(--paper);text-align:left;border-radius:14px;justify-content:space-between;align-items:center;gap:14px;padding:13px 16px;font-size:16px;line-height:1.4;transition:background-color .16s,border-color .16s,transform .12s;display:flex}.choice-option[aria-selected=true]{border-color:var(--green);color:var(--green-strong);background:var(--soft)}.choice-option:active:not(:disabled){transform:scale(.985)}.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible{outline-offset:1px;outline-width:2px}.field textarea{resize:vertical;line-height:1.5}.field input::placeholder,.field textarea::placeholder{color:var(--muted);opacity:.8;font-size:14px}.field input:read-only{background:var(--soft)}.field small,.hint{color:var(--muted);font-size:12px;line-height:1.65}.field input[type=file]{padding:9px;font-size:12px}.field input::file-selector-button{background:var(--soft);color:var(--ink);font:inherit;border:0;border-radius:8px;margin-right:8px;padding:7px 9px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:14px;display:grid}.form-grid-three{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.section-caption{padding-top:5px;font-size:14px;font-weight:600}.check-line{cursor:pointer;align-items:center;gap:10px;min-height:44px;font-size:12px;line-height:1.55;display:flex}.check-line input{appearance:none;border:1.5px solid var(--muted);background:var(--paper);border-radius:7px;width:22px;min-width:22px;height:22px;margin:0;transition:background-color .16s,border-color .16s,box-shadow .16s;position:relative}.check-line input:checked{background:var(--primary-bg);border-color:var(--primary-bg)}.check-line input:after{content:"";border:solid var(--primary-ink);opacity:0;border-width:0 2px 2px 0;width:6px;height:11px;transition:transform .16s,opacity .16s;position:absolute;top:2px;left:6px;transform:rotate(45deg)scale(.5)}.check-line input:checked:after{opacity:1;transform:rotate(45deg)scale(1)}.consent-line{align-items:flex-start;padding:14px 0;font-weight:600}.consent-line input{margin-top:2px}.notice{border:1px solid var(--line);background:var(--soft);color:var(--muted);overflow-wrap:anywhere;border-radius:14px;align-items:flex-start;gap:10px;padding:13px 14px;font-size:12px;line-height:1.65;display:flex}.notice>svg{color:var(--green);flex-shrink:0;margin-top:2px}.notice-error{color:var(--error);background:var(--error-bg);border-color:#0000}.notice-error>svg,.notice-error .text-button{color:inherit}.notice-error .text-button{text-decoration:underline;display:flex}.global-notice{padding:10px 24px 0}.loading{min-height:80px;color:var(--muted);justify-content:center;align-items:center;gap:10px;font-size:13px;display:flex}.summary-skeleton{place-items:center;min-height:280px;display:grid}.empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:210px;padding:34px 15px;display:flex}.empty-symbol{background:var(--soft);width:68px;height:68px;color:var(--green);border:1px solid var(--line);border-radius:24px;place-items:center;margin-bottom:20px;display:grid;transform:rotate(-7deg)}.empty-symbol svg{transform:rotate(7deg)}.empty p{color:var(--muted);max-width:340px;margin-top:9px;font-size:13px;line-height:1.65}.empty-inline{color:var(--muted);padding:12px 0;font-size:13px}.tabs{border-bottom:1px solid var(--line);scrollbar-width:none;align-items:stretch;gap:4px;padding-bottom:6px;display:flex;overflow-x:auto}.tabs::-webkit-scrollbar{display:none}.tabs>button{color:var(--muted);white-space:nowrap;background:0 0;border:none;border-radius:11px;flex:1 0 auto;min-height:41px;padding:10px 12px;font-size:12px}.tabs>button[aria-selected=true]{background:var(--soft);color:var(--green-strong);font-weight:650}.tabs>button:focus-visible{outline-offset:-3px}.sheet-backdrop{top:var(--app-visible-top,0px);height:var(--app-visible-height,100dvh);z-index:30;padding:max(12px, env(safe-area-inset-top)) 0 0;background:var(--overlay);overscroll-behavior:contain;justify-content:center;align-items:flex-end;display:flex;position:fixed;left:0;right:0}.sheet{width:100%;max-width:600px;max-height:calc(var(--app-visible-height,100dvh) - max(12px, env(safe-area-inset-top)));background:var(--bg);border:1px solid var(--line);border-bottom:0;border-radius:28px 28px 0 0;outline:none;flex-direction:column;animation:.18s ease-out sheet-in;display:flex;box-shadow:0 -10px 60px #0000001f}.sheet-wide{max-width:720px}.sheet-handle{background:var(--line);border-radius:3px;flex-shrink:0;width:34px;height:4px;margin:10px auto 0}.sheet-header{border-bottom:1px solid var(--line);flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:12px;padding:17px 22px 16px;display:flex}.sheet-header h2{font-size:22px;font-weight:550}.sheet-header p{color:var(--muted);margin-top:5px;font-size:12px;line-height:1.5}.sheet-header .icon-button{width:44px;height:44px;margin-top:-3px;margin-right:-6px}.sheet-content{min-height:0;padding:22px 22px calc(26px + env(safe-area-inset-bottom));overscroll-behavior:contain;grid-template-columns:minmax(0,1fr);align-content:start;gap:22px;scroll-padding-block:12px;display:grid;overflow-y:auto}.sheet-content>.dialog-description{margin-bottom:0}.sheet-section{border-top:1px solid var(--line);gap:12px;padding-top:20px;display:grid}.sheet [data-nutria-dialog]{position:relative}.dialog-description{color:var(--muted);margin-bottom:20px;line-height:1.7}.search-form{align-items:flex-end;gap:10px;display:flex}.search-form .field{flex:1}.search-form .button{min-height:48px}.food-results{flex-direction:column;gap:8px;display:flex}.food-result{text-align:left;background:var(--paper);border:1px solid var(--line);border-radius:15px;align-items:center;gap:11px;width:100%;padding:14px 11px;display:flex}.food-symbol{background:var(--soft);width:42px;height:42px;color:var(--green);border-radius:14px;flex-shrink:0;place-items:center;display:grid}.food-result-text{flex:1;min-width:0}.food-result-text strong{overflow-wrap:anywhere;font-size:13px;line-height:1.5;display:block}.food-result-text small{color:var(--muted);margin-top:4px;font-size:10px;display:block}.food-energy{text-align:right;flex-shrink:0}.food-energy b{font-size:14px;font-weight:550}.food-energy small{color:var(--muted);margin-top:2px;font-size:9px;display:block}.food-result>svg{color:var(--muted);flex-shrink:0}.chosen-food{align-items:center;gap:13px;display:flex}.chosen-food>div:last-child{min-width:0}.chosen-food h3{overflow-wrap:anywhere;letter-spacing:-.02em;font-size:19px}.chosen-food p{color:var(--muted);margin-top:4px;font-size:11px}.quantity-box{background:var(--soft);border-radius:17px;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);align-items:start;gap:20px;padding:17px;display:grid}.portion-summary{min-width:0}.portion-label{color:var(--muted);margin-bottom:7px;font-size:12px}.portion-summary .nutrition-line{gap:5px 12px}.portion-summary .nutrition-line span:first-child{flex-basis:100%;font-size:13px}.portion-summary .nutrition-line span:first-child b{letter-spacing:-.03em;font-size:27px;font-weight:550;line-height:1.25}.quantity-box .portion-summary .hint{margin-top:8px;font-size:10px}.draft-item>.portion-summary{background:var(--soft);border-radius:14px;padding:14px}.draft-item>.portion-summary .nutrition-line span:first-child{flex-basis:auto}.draft-item>.portion-summary .nutrition-line span:first-child b{font-size:21px}.draft-total{background:var(--soft);border:1px solid var(--line);border-radius:17px;padding:18px}.draft-total .nutrition-line{gap:8px 16px;margin-top:10px;font-size:13px}.draft-total .hint{margin-top:10px;font-size:11px}.ai-budget{background:var(--soft);border:1px solid var(--line);border-radius:14px;padding:14px}.ai-budget>p{font-size:12px}.ai-budget>p+p{margin-top:6px}.settings-screen .ai-budget{margin-top:16px}.catalogue-scope{align-items:center;gap:14px;display:flex}.catalogue-scope>.field{flex:1 0 160px}.catalogue-scope>.hint{flex:1;font-size:11px}.quantity-box input{font-variant-numeric:tabular-nums;height:56px;min-height:56px;padding:9px 12px;font-size:24px;font-weight:500}.details{border-top:1px solid var(--line);margin-block-start:20px;padding-top:12px;font-size:12px}.stack>.details,.library-card>.details{margin-block-start:0}.details[open]>summary+*{margin-block-start:12px}.details summary,.data-details summary{cursor:pointer;min-height:44px;color:var(--green-strong);justify-content:space-between;align-items:center;gap:10px;font-size:12px;list-style:none;display:flex}.details summary::-webkit-details-marker{display:none}.data-details summary::-webkit-details-marker{display:none}details[open]>summary svg{transform:rotate(180deg)}.nutrition-table{gap:7px;margin:9px 0;display:grid}.nutrition-table>div{justify-content:space-between;align-items:center;gap:15px;display:flex}.nutrition-table dt{color:var(--muted)}.nutrition-table dd{font-variant-numeric:tabular-nums;margin:0}.barcode-video{aspect-ratio:4/3;object-fit:cover;background:#111;border-radius:17px;width:100%;max-height:230px}.library-list{grid-template-columns:minmax(0,1fr);gap:14px;display:grid}.library-card{flex-direction:column;gap:16px;display:flex}.library-card-heading{align-items:flex-start;gap:12px;display:flex}.library-card-heading>div:last-child{min-width:0}.library-card-heading h3{overflow-wrap:anywhere}.library-card-heading p{color:var(--muted);margin-top:4px;font-size:11px}.recipe-cover{background:linear-gradient(110deg, var(--soft), var(--lime));min-height:95px;color:var(--green);border-radius:16px;justify-content:space-between;align-items:center;margin:-4px -4px 1px;padding:16px 20px;display:flex}.recipe-cover span{color:var(--muted);font-size:11px}.recipe-card .eyebrow{margin-bottom:-7px}.ingredient,.draft-item{border:1px solid var(--line);background:var(--paper);border-radius:17px;padding:12px 15px 15px}.ingredient .row-between,.draft-item .row-between{gap:5px}.ingredient strong{font-size:13px}.amount-inline{align-items:flex-end;gap:10px;margin-top:7px;display:flex}.amount-inline .field{flex:1}.amount-inline>span{color:var(--muted);padding:0 3px 13px;font-size:12px}.recipe-preview{background:var(--soft);border-radius:16px;flex-direction:column;gap:10px;padding:17px;display:flex}.recipe-preview .hint{font-size:10px}.draft-heading{align-items:center;gap:12px;display:flex}.draft-heading h3{margin-top:3px;font-size:19px}.draft-warning{color:var(--muted);border-left:2px solid var(--coral);padding-left:12px;font-size:12px}.draft-item{--stack-gap:12px}.draft-item>.amount-inline{margin-top:0}.media-card{border:1px dashed var(--line);background:var(--paper);text-align:center;border-radius:20px;flex-direction:column;align-items:stretch;gap:17px;padding:22px 18px;display:flex}.media-icon{background:var(--soft);width:66px;height:66px;color:var(--green);border-radius:50%;place-items:center;margin:0 auto;display:grid}.media-card h3{margin-bottom:-7px}.media-card>p{color:var(--muted);font-size:12px}.media-card .field{text-align:left}.form-fields{border:0;min-width:0;margin:0;padding:0}.food-photo-preview{object-fit:contain;background:var(--soft);border-radius:14px;width:100%;max-height:300px;display:block}.media-icon.recording{background:var(--error-bg);color:var(--error);box-shadow:0 0 0 7px var(--soft)}.selected-file{background:var(--soft);border-radius:12px;align-items:center;gap:8px;padding:5px 10px;font-size:11px;display:flex}.selected-file span{text-align:left;overflow-wrap:anywhere;flex:1}.selected-file>svg{flex-shrink:0}.history-list{flex-direction:column;display:flex}.history-row{border-bottom:1px solid var(--line);align-items:center;gap:10px;min-height:44px;padding:8px 0;display:flex}.history-row:last-child{border-bottom:0}.history-row>span{flex:1;font-size:12px}.history-row>b{font-size:13px}.history-row .icon-button{width:44px;height:44px}.stats-averages{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:0 0 15px;display:grid}.stats-averages>div>span{color:var(--muted);font-size:10px;display:block}.stats-averages strong{letter-spacing:-.045em;font-size:21px;font-weight:500;line-height:1.5;display:block}.stats-averages strong small{letter-spacing:normal;color:var(--muted);font-size:10px;font-weight:400}.trend-chart{margin:22px -4px 0}.stack>.trend-chart{margin-block:0}.trend-chart svg{width:100%;height:auto;overflow:visible}.trend-chart text{fill:var(--muted);font-variant-numeric:tabular-nums;font-family:inherit;font-size:11px}.chart-grid{stroke:var(--line);stroke-width:1px;stroke-dasharray:3 4}.table-scroll{margin-top:15px;overflow-x:auto}table{border-collapse:collapse;text-align:right;font-variant-numeric:tabular-nums;width:100%;font-size:11px}caption{text-align:left;color:var(--muted);margin:0 0 10px}th,td{border-bottom:1px solid var(--line);white-space:nowrap;padding:10px 8px}th{font-weight:600}td{color:var(--muted)}th:first-child{text-align:left}.data-details .hint{padding-top:12px;font-size:10px}.profile-card{align-items:center;gap:14px;padding:7px 0 10px;display:flex}.profile-card>div:nth-child(2){flex:1}.profile-card h2{font-size:17px}.profile-card p{color:var(--muted);margin-top:5px;font-size:11px}.profile-card>svg{color:var(--green)}.settings-screen .card>.hint+.field,.settings-screen .card>.field+.field,.settings-screen .card>.field+.form-grid,.settings-screen .card>.form-grid+.field{margin-top:18px}.settings-screen .card>.text-button{margin:5px 0 14px}.settings-screen .row-between h2+.hint{margin-top:4px}.reminder-row{background:var(--soft);border:1px solid var(--line);border-radius:16px;padding:14px}.reminder-row .row-between{margin-top:8px}.reminder-row .form-grid{gap:10px}.danger-section{border-top:1px solid var(--line);margin-top:20px;padding-top:12px}.stack>.danger-section{margin-top:0}.danger-text{color:var(--error)}.invite-card{background:var(--soft);border-radius:17px;flex-direction:column;gap:15px;padding:17px;display:flex}.invite-card .badge{align-self:flex-start}.invite-card input{font-size:13px}.member-list{flex-direction:column;display:flex}.member-row{border-bottom:1px solid var(--line);align-items:center;gap:11px;padding:14px 0;display:flex}.member-row:last-child{border:0}.member-info{flex:1;min-width:0}.member-info strong{overflow-wrap:anywhere;font-size:14px;display:block}.member-info small{color:var(--muted);padding-top:3px;font-size:10px;display:block}.member-row .button{padding:9px 10px;font-size:11px}.about{text-align:center;color:var(--muted);padding:20px 16px;font-size:10px;line-height:1.7}.about .brand{color:var(--green-strong);letter-spacing:-.06em;gap:5px;font-size:24px}.about>p{max-width:400px;margin:13px auto 0}.about>a{align-items:center;gap:4px;padding:13px 0 7px;font-size:11px;display:inline-flex}.about>small{font-size:10px;display:block}.toast{z-index:20;bottom:calc(94px + env(safe-area-inset-bottom));border:1px solid var(--line);background:var(--primary-bg);width:calc(100% - 32px);max-width:560px;color:var(--primary-ink);border-radius:16px;align-items:center;gap:11px;padding:13px 12px 13px 16px;font-size:12px;line-height:1.6;display:flex;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #00000024}.toast>svg{flex-shrink:0}.toast>div{flex:1;min-width:0}.toast .icon-button{color:inherit;flex-shrink:0;align-self:flex-start;width:44px;height:44px}.toast-action{color:inherit;text-underline-offset:3px;background:0 0;border:none;min-height:32px;padding:5px 0 0;font-size:12px;font-weight:600;text-decoration:underline;display:block}.toast-error{background:var(--error-bg);color:var(--error)}.gate{max-width:480px;min-height:100dvh;padding:max(38px, env(safe-area-inset-top)) 30px calc(30px + env(safe-area-inset-bottom));text-align:center;flex-direction:column;align-items:stretch;margin:0 auto;display:flex}.gate>.brand{align-self:center}.gate h1{max-width:380px;margin:12px auto 0;font-size:37px}.gate-copy{color:var(--muted);padding:21px 0 29px;font-size:14px;line-height:1.8}.gate .stack{gap:10px}.gate .eyebrow{font-size:9px}.gate-footnote{color:var(--muted);margin-top:35px;font-size:10px}.gate-art{place-items:center;height:216px;margin:10px 0;display:grid;position:relative}.gate-leaf{background:var(--lime);width:128px;height:128px;color:var(--green-strong);z-index:1;border-radius:44px;place-items:center;display:grid;transform:rotate(-12deg)}.gate-leaf svg{transform:rotate(12deg)}.gate-orbit{border:1px solid var(--line);border-radius:50%;width:199px;height:141px;position:absolute;transform:rotate(-32deg)}.gate-spark{background:var(--coral);border-radius:4px;width:11px;height:11px;position:absolute}.gate-spark.one{top:38px;left:calc(50% + 70px);transform:rotate(18deg)}.gate-spark.two{background:var(--green);width:7px;height:7px;bottom:34px;right:calc(50% + 76px);transform:rotate(-20deg)}.spin{animation:.8s linear infinite spin}.button{isolation:isolate;position:relative;overflow:hidden}.button[aria-busy=true]{opacity:1;cursor:progress}.button[aria-busy=true]:after{content:"";opacity:.35;pointer-events:none;background:currentColor;border-radius:2px;width:35%;height:2px;animation:1.2s ease-in-out infinite busy-sweep;position:absolute;bottom:1px;left:-35%}.field input,.field textarea,.field select{transition:background-color .18s,border-color .18s,box-shadow .18s}.field input:focus-visible,.field textarea:focus-visible,.field select:focus-visible{border-color:var(--green);box-shadow:0 0 0 3px color-mix(in srgb, var(--green) 14%, transparent)}.field input[type=number]{appearance:textfield}.field input::-webkit-inner-spin-button{appearance:none;margin:0}.field input::-webkit-outer-spin-button{appearance:none;margin:0}.barcode-camera{border:1px solid var(--line);background:#102219;border-radius:20px;position:relative;overflow:hidden}.barcode-camera .barcode-video{aspect-ratio:16/9;object-fit:contain;background:#102219;border:0;border-radius:0;width:100%;height:auto;display:block}.barcode-viewfinder{pointer-events:none;border:2px solid #e1edce;border-radius:14px;position:absolute;inset:17% 7% 25%;box-shadow:0 0 0 100vmax #09160e3d}.barcode-viewfinder>span{opacity:.7;background:#dce8c4;height:1px;position:absolute;top:50%;left:7%;right:7%;box-shadow:0 0 12px #dce8c4}.barcode-camera-tip{bottom:8px;color:#fffef4;text-align:center;text-shadow:0 1px 4px #102219;pointer-events:none;font-size:11px;position:absolute;inset-inline:8px}.barcode-status{background:var(--soft);border-radius:12px;padding:10px 13px}@keyframes busy-sweep{to{left:105%}}.screen-transition{animation:.22s cubic-bezier(.2,.7,.2,1) surface-in}.entry,.history-row,.library-card,.food-result,.draft-item{animation:.18s ease-out item-in}.button,.icon-button,.tabs button,.bottom-nav button,.week-strip button,.date-today,.header-avatar,.food-result,.weight-shortcut,.text-button,.select-trigger{transition:transform .12s,background-color .18s,color .18s,border-color .18s,box-shadow .18s,filter .18s,opacity .18s}.button:active:not(:disabled),.icon-button:active:not(:disabled),.tabs button:active:not(:disabled),.bottom-nav button:active:not(:disabled),.week-strip button:active,.date-today:active,.header-avatar:active,.food-result:active,.weight-shortcut:active,.text-button:active{transform:scale(.975)}.water-glasses>span{transition:background-color .24s,color .24s,border-color .24s,opacity .24s}.meter>i{transition:width .32s cubic-bezier(.2,.7,.2,1)}.details summary svg,.data-details summary svg{transition:transform .18s}.details[open]>:not(summary),.data-details[open]>:not(summary){animation:.18s ease-out item-in}@supports (interpolate-size:allow-keywords){details{interpolate-size:allow-keywords}details::details-content{block-size:0;transition:block-size .18s ease, content-visibility .18s allow-discrete;overflow:clip}details[open]::details-content{block-size:auto}}.sheet-backdrop{animation:.18s ease-out overlay-in}.sheet-backdrop.is-leaving{pointer-events:none;animation:.18s ease-in both overlay-out}.sheet-backdrop.is-leaving .sheet{animation:.18s ease-in both sheet-out}.toast{overflow-wrap:anywhere;animation:.22s cubic-bezier(.2,.7,.2,1) toast-in}.toast.is-leaving{pointer-events:none;animation:.18s ease-in both toast-out}@keyframes surface-in{0%{opacity:.45;transform:translateY(5px)}to{opacity:1;transform:none}}@keyframes item-in{0%{opacity:.5;transform:translateY(3px)}to{opacity:1;transform:none}}@keyframes overlay-in{0%{background:0 0}to{background:var(--overlay)}}@keyframes overlay-out{0%{background:var(--overlay)}to{background:0 0}}@keyframes sheet-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(18px)}}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,10px)}to{opacity:1;transform:translate(-50%)}}@keyframes toast-out{0%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,8px)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes sheet-in{0%{opacity:.7;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media (hover:hover){.icon-button:hover,.text-button:hover{background:var(--soft);color:var(--green-strong)}.button-primary:hover{filter:brightness(1.08)}.button-secondary:hover,.food-result:hover{border-color:var(--green)}.week-strip button:not(.selected):hover{background:var(--soft)}}@media (min-width:650px){.app-header{padding-top:28px}.screen{padding-top:18px}.summary-card{padding:25px 31px}.summary-copy h2{font-size:44px}.summary-copy{padding:5px 0 18px}.summary-copy>p,.summary-copy .text-button{font-size:13px}.energy-ring{width:218px;margin-right:12px}.ring-label strong{font-size:43px}.ring-label small,.ring-label span,.macro-name{font-size:12px}.macro p{font-size:21px}.macro small{font-size:12px}.macro-grid{gap:45px;padding-top:22px}.library-list{grid-template-columns:repeat(2,minmax(0,1fr))}.library-list>.empty{grid-column:1/-1}.sheet-backdrop{align-items:center;padding:26px}.sheet{border-bottom:1px solid var(--line);max-height:calc(var(--app-visible-height,100dvh) - 52px);border-radius:25px}.sheet-handle{display:none}.sheet-header{padding:23px 25px 18px}.sheet-content{padding:23px 25px 27px}.bottom-nav{border:1px solid var(--line);border-radius:23px;width:calc(100% - 48px);max-width:672px;padding:10px 18px;bottom:15px}.toast{bottom:109px}}html[data-keyboard-open=true]{scroll-padding-bottom:calc(var(--app-obscured-bottom,0px) + 16px)}html[data-keyboard-open=true] .bottom-nav{visibility:hidden;pointer-events:none}html[data-keyboard-open=true] .toast{bottom:calc(var(--app-obscured-bottom,0px) + 12px)}html[data-compact-viewport=true] .sheet-backdrop{padding:max(8px, env(safe-area-inset-top)) 0 0;align-items:flex-end}html[data-compact-viewport=true] .sheet{max-height:calc(var(--app-visible-height) - max(8px, env(safe-area-inset-top)));border-radius:18px 18px 0 0}html[data-compact-viewport=true] .sheet-handle{display:none}html[data-compact-viewport=true] .sheet-header{gap:8px;padding:8px 16px}html[data-compact-viewport=true] .sheet-header h2{font-size:18px}html[data-compact-viewport=true] .sheet-header p{margin-top:2px;font-size:11px;line-height:1.35}html[data-compact-viewport=true] .sheet-header .icon-button{margin:0}html[data-compact-viewport=true] .sheet-content{padding:12px 16px calc(16px + env(safe-area-inset-bottom));gap:16px}html[data-compact-viewport=true] .field textarea{min-height:64px;max-height:max(64px, calc(var(--app-visible-height) - 160px))}@media (max-width:370px){.app-header{padding-left:18px;padding-right:18px}.screen{gap:17px;padding-left:16px;padding-right:16px}.card{padding:17px}.meal-card{padding:14px}.energy-ring{width:143px;min-width:125px}.ring-label strong{font-size:29px}.summary-copy h2{font-size:30px}.summary-copy .badge{padding:4px 6px;font-size:8px}.summary-copy .text-button{font-size:10px}.macro-grid{gap:10px}.macro p{font-size:15px}.bottom-nav{grid-template-columns:1fr 1fr 64px 1fr 1fr;padding-left:7px;padding-right:7px}.bottom-nav span{font-size:9px}.sheet-header,.sheet-content{padding-left:17px;padding-right:17px}.form-grid{gap:10px}.form-grid-three{grid-template-columns:1fr}.quantity-box{gap:15px}.entry-actions{margin-right:-8px}.entry-bottom .nutrition-line{gap:5px 7px}.food-result{gap:8px}.food-symbol{border-radius:11px;width:36px;height:36px}.stats-averages{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.water-glasses{gap:4px}.member-row .button{max-width:86px;font-size:10px}}@media (max-width:430px){.form-grid:has(.select-trigger){grid-template-columns:minmax(0,1fr)}.meal-date-fields{grid-template-columns:minmax(0,1fr)}.catalogue-scope{flex-direction:column;align-items:stretch;gap:8px}.catalogue-scope>.field{flex-basis:auto}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
