:root{--ink:#374b45;--muted:#7c8781;--pink:#f7dce2;--blue:#dcebf6;--green:#e7efda;--yellow:#fbefc8;--paper:#fffefa;--line:#eaece4;--accent:#527365;--serif:"Lora", Georgia, serif;--font:"DM Sans", sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;background:#eaf0e9;margin:0;font-size:14px}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer;-webkit-tap-highlight-color:transparent}button:disabled{cursor:default;opacity:.5}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline-offset:4px;outline:3px solid #9ebcaf}button{background:0 0;border:0}button svg{flex-shrink:0}a{color:inherit}button,input,textarea,select{touch-action:manipulation}h1,h2,h3,p{margin:0}img{max-width:100%;display:block}.app-shell{background:var(--paper);max-width:560px;min-height:100svh;margin:0 auto;position:relative;box-shadow:0 0 90px #536c4d0a}.app-header{background:var(--paper);border-bottom:1px solid #edece5;justify-content:space-between;align-items:center;height:86px;padding:0 26px;display:flex}.brand{font-family:var(--serif);letter-spacing:-2.3px;align-items:center;padding:0;font-size:36px;font-weight:600;line-height:1.1;display:flex}.brand span{color:#dca1b1;letter-spacing:-3px;margin:0 0 9px 3px;font-family:Georgia,serif;font-size:28px;transform:rotate(-14deg)}.header-right{align-items:center;gap:14px;display:flex}.profile-stack{align-items:center;padding:0;display:flex}.profile-stack svg{border:2px solid var(--paper);border-radius:50%}.profile-stack svg+svg{margin-left:-10px}.signin-button,.private-label{align-items:center;gap:5px;font-size:11px;font-weight:600;display:flex}.signin-button{border:1px solid #d9dfd6;border-radius:20px;padding:8px 11px}.private-label{color:var(--muted)}.main-content{min-height:calc(100svh - 86px);padding:30px 26px 120px;animation:.35s both page-enter}.page-intro{justify-content:space-between;align-items:center;margin-bottom:25px;display:flex}.eyebrow{letter-spacing:2px;color:#7e8c7d;margin-bottom:10px;font-size:9px;font-weight:700}h1{font-family:var(--serif);letter-spacing:-1.4px;font-size:34px;font-weight:500;line-height:1.2}.heading-dot{color:#c6a785}.intro-copy{color:var(--muted);margin-top:8px;font-size:12px}.sprout-doodle{color:#9caf83;width:61px;height:69px;margin:10px 9px 0 0;position:relative;transform:rotate(-20deg)}.sprout-doodle svg{position:absolute;top:5px;left:4px}.sprout-doodle span{color:#d3a2ad;font-size:26px;position:absolute;bottom:8px;right:0;transform:rotate(30deg)}.date-selector{justify-content:space-between;align-items:center;margin:0 0 22px;display:flex}.date-selector>div{text-align:center;flex-direction:column;align-items:center;gap:5px;display:flex}.date-selector>div>span{font-size:14px;font-weight:650}.date-label{color:var(--muted);cursor:pointer;font-size:10px;position:relative}.date-label input{opacity:0;cursor:pointer;z-index:1;width:100%;position:absolute;inset:0}.icon-button{background:var(--paper);border:1px solid #e4e7dd;border-radius:50%;justify-content:center;align-items:center;width:33px;height:33px;padding:0;transition:background .2s,transform .2s;display:inline-flex}.icon-button:hover{background:#f1f3e8;transform:translateY(-1px)}.date-selector .icon-button{width:30px;height:30px}.date-selector .icon-button:disabled{opacity:.28}.daily-summary{grid-template-columns:1fr 1fr;gap:12px;display:grid}.nutrition-panel{border-radius:20px;padding:15px 15px 0;overflow:hidden}.nutrition-panel.pink{--ring:#ca91a5;--track:#ebcbd2;--fill:#dba7b7;background:#f8e7e8}.nutrition-panel.blue{--ring:#8eafc9;--track:#cddde9;--fill:#a6c0d4;background:#e5eff6}.summary-person{text-align:left;align-items:center;gap:8px;width:100%;padding:0;display:flex}.summary-person>span:first-of-type{font-size:12px;font-weight:700;line-height:1.2}.summary-person small{color:#7a817b;margin-top:3px;font-size:9px;font-weight:400;display:block}.person-dot{background:var(--ring);border-radius:50%;width:5px;height:5px;margin-left:auto;display:block}.calorie-chart{width:145px;max-width:100%;height:147px;margin:4px auto 1px;position:relative}.calorie-chart svg{width:100%;height:100%;overflow:visible}.ring-bg,.ring-progress{fill:none;stroke-width:7px;stroke:var(--track)}.ring-progress{stroke:var(--ring);stroke-linecap:round;transition:stroke-dasharray .8s}.calorie-chart>div{flex-direction:column;justify-content:center;align-items:center;gap:5px;padding-top:2px;display:flex;position:absolute;inset:0}.calorie-chart strong{font-family:var(--serif);letter-spacing:-1.5px;font-size:32px;font-weight:500}.calorie-chart>div>span{color:#7e8882;font-size:9px}.ring-sparkle{color:#fffefa;text-shadow:0 0 2px var(--ring);font-size:17px;line-height:1;position:absolute;top:12px;right:4px}.macro-row{gap:13px;display:flex}.macro{flex:1;min-width:0}.macro>div:first-child{flex-direction:column;gap:4px;display:flex}.macro>div>span{color:#77827b;font-size:9px}.macro strong{white-space:nowrap;font-size:11px;font-weight:650}.macro strong small{color:#8a928b;font-size:9px;font-weight:400}.macro-track{background:#ffffff90;border-radius:6px;height:4px;margin-top:8px;overflow:hidden}.macro-track i{background:var(--fill);border-radius:6px;height:100%;transition:width .5s;display:block}.calorie-remaining{color:#79847b;border-top:1px solid #ffffff90;justify-content:space-between;align-items:center;margin-top:13px;padding:12px 0;font-size:9px;display:flex}.calorie-remaining span{color:var(--ring);font-size:14px;line-height:10px}.partner-placeholder{color:#8a9c7a;background:#edf1e6;border-radius:20px;flex-direction:column;justify-content:center;align-items:center;gap:13px;display:flex}.partner-placeholder span{font-family:var(--serif);color:var(--ink);font-size:18px}.partner-placeholder small{color:var(--muted)}.meal-section{margin-top:26px}.section-heading{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.section-heading h2{font-family:var(--serif);letter-spacing:-.6px;align-items:center;gap:9px;font-size:23px;font-weight:500;display:flex}.section-heading h2>span{font-family:var(--font);color:#8c9887;border:1px solid #dfe5d6;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:10px;font-weight:500;display:flex}.text-button{justify-content:center;align-items:center;gap:5px;padding:7px 0;font-size:10px;font-weight:650;display:flex}.text-button:hover{color:#a76d7f}.filter-row{gap:7px;margin-bottom:17px;display:flex}.filter-row>button{color:#82907f;border:1px solid #e5e7df;border-radius:20px;align-items:center;gap:7px;padding:7px 15px;font-size:10px;transition:background .2s,border-color .2s;display:flex}.filter-row>button.active{color:#617453;background:#e9efdf;border-color:#e9efdf}.filter-row>button svg{color:#a9b58e}.meal-grid{grid-template-columns:1fr 1fr;gap:22px 14px;display:grid}.meal-card{text-align:left;border-radius:15px;min-width:0;padding:0;transition:transform .25s;display:block}.meal-card:hover{transform:translateY(-3px)}.meal-image{background:var(--yellow);border-radius:15px;height:178px;position:relative;overflow:hidden}.meal-image>img{object-fit:cover;width:100%;height:100%;transition:transform .45s}.meal-card:hover .meal-image>img{transform:scale(1.04)}.meal-owner{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffefaed;border-radius:20px;align-items:center;gap:5px;padding:3px 9px 3px 3px;font-size:9px;font-weight:600;display:flex;position:absolute;bottom:8px;left:8px}.meal-owner>svg{border-radius:50%}.meal-love{color:#6b775e;background:#fffefac9;border-radius:50%;justify-content:center;align-items:center;width:27px;height:27px;display:flex;position:absolute;top:10px;right:10px}.meal-meta{color:#91978c;gap:5px;margin:11px 0 6px;font-size:9px;display:flex}.meal-meta>span{color:#c7c9bd}.meal-caption h3{letter-spacing:-.15px;white-space:nowrap;text-overflow:ellipsis;margin-bottom:8px;font-size:12px;font-weight:650;overflow:hidden}.meal-nutrition{color:#899083;flex-wrap:wrap;align-items:center;gap:7px;font-size:8px;display:flex}.meal-nutrition strong{color:#657559;font-size:11px;font-weight:650}.meal-nutrition small{font-size:8px;font-weight:400}.meal-nutrition>span+span:before{content:"·";color:#b8beaf;margin-right:6px}.meal-image-placeholder{color:#abb69b;background:#eceddd;justify-content:center;align-items:center;width:100%;height:100%;display:flex}.page-footnote{color:#b1b6a5;justify-content:center;align-items:center;gap:5px;padding:32px 0 12px;font-size:9px;display:flex}.page-footnote svg{color:#c7b3ae}.demo-caption{color:#90998a;justify-content:center;align-items:center;gap:5px;margin:10px 0;font-size:9px;display:flex}.demo-caption button{color:#697c5b;border-bottom:1px solid #cbd5be;align-items:center;gap:3px;padding:0;font-size:9px;display:flex}.status-dot{background:#b6c49d;border-radius:50%;width:4px;height:4px;margin-right:2px}.bottom-nav{width:100%;max-width:560px;padding:12px 12px max(14px, env(safe-area-inset-bottom));z-index:20;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffef9ed;border-top:1px solid #e9eae2;justify-content:space-around;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.bottom-nav>button{color:#a0a79a;flex-direction:column;flex:1;align-items:center;gap:6px;min-height:47px;padding:0;font-size:9px;transition:color .2s;display:flex}.bottom-nav>button.active{color:#607552;font-weight:650}.nav-icon{justify-content:center;align-items:center;width:46px;height:27px;display:flex;position:relative}.bottom-nav>button.active .nav-icon{background:#ecf0e2;border-radius:14px}.nav-icon i{background:#91a27e;border-radius:50%;width:3px;height:3px;margin-left:-1.5px;position:absolute;bottom:-7px;left:50%}.bottom-nav>button>span:last-child{margin-top:2px}.toast{z-index:100;background:#fffefa;border:1px solid #e6e9de;border-radius:13px;align-items:center;gap:9px;width:max-content;max-width:calc(100% - 30px);padding:13px 15px;font-size:12px;animation:.2s toast-enter;display:flex;position:fixed;bottom:95px;left:50%;transform:translate(-50%);box-shadow:0 5px 35px #344e4226}.toast>svg{color:#879a70}.toast>button{color:var(--muted);margin-left:7px;padding:3px;display:flex}.modal-backdrop{z-index:60;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#2c413f55;justify-content:center;align-items:flex-end;padding-top:30px;animation:.2s fade-in;display:flex;position:fixed;inset:0}.modal{background:var(--paper);width:100%;max-width:540px;padding:25px 26px max(30px, env(safe-area-inset-bottom));border-radius:25px 25px 0 0;outline:none;max-height:92svh;animation:.28s modal-enter;overflow:auto;box-shadow:0 -10px 80px #172b2220}.modal-heading{justify-content:space-between;align-items:center;gap:15px;margin-bottom:25px;display:flex}.modal-heading h2{font-family:var(--serif);letter-spacing:-.5px;font-size:23px;font-weight:500}.modal-heading .icon-button{flex-shrink:0}.form-stack{flex-direction:column;gap:17px;display:flex}.form-stack label{flex-direction:column;gap:8px;font-size:11px;font-weight:600;display:flex}input:not([type=checkbox]):not([type=file]),textarea,select{outline-offset:2px;background:#fffefa;border:1px solid #e0e5d8;border-radius:10px;width:100%;min-width:0;padding:12px;font-size:13px;font-weight:400}textarea{resize:vertical;line-height:1.6}input::placeholder,textarea::placeholder{color:#a9afa0}select{appearance:auto}.primary-button{color:#fff;background:#667f5e;border-radius:12px;justify-content:center;align-items:center;gap:9px;padding:14px 18px;font-size:12px;font-weight:600;transition:background .2s,transform .2s;display:flex}.primary-button:hover{background:#526e49}.primary-button:active{transform:scale(.98)}.secondary-button{border:1px solid #dde3d4;border-radius:10px;justify-content:center;align-items:center;gap:7px;padding:11px 15px;font-size:12px;display:flex}.danger-button{color:#a55f66;text-underline-offset:4px;padding:12px 0;font-size:11px;text-decoration:underline}.field-hint{color:#969f91;font-size:10px;font-weight:400;line-height:1.7}.center{text-align:center}.muted{color:var(--muted);font-size:12px;line-height:1.7}.form-error{color:#9e605c;background:#f8eeea;border-radius:9px;padding:11px 13px;font-size:11px;line-height:1.7}.auth-art{color:#ce9aa8;justify-content:center;align-items:center;gap:12px;padding:5px 0;display:flex}.auth-art>svg:first-child{transform:rotate(-8deg)}.auth-art>svg:nth-child(3){transform:rotate(8deg)}.auth-success{text-align:center;flex-direction:column;gap:18px;display:flex}.auth-success p{color:var(--muted);font-size:13px;line-height:1.8}.auth-success .auth-art{padding:20px 0}.three-fields{grid-template-columns:1fr 1fr 1fr;gap:10px;display:grid}.upload-zone{background:#f1f3e9;border:1px dashed #cbd5bc;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:9px;min-height:165px;padding:15px;display:flex;position:relative;overflow:hidden}.upload-zone strong{font-size:12px;font-weight:550}.upload-zone small{color:#909d83;font-size:9px}.upload-camera{color:#94a57c;padding:5px;position:relative}.upload-camera svg+svg{background:#f1f3e9;border-radius:50%;position:absolute;bottom:3px;right:-1px}.upload-zone.has-image{border:0;height:190px;padding:0}.upload-zone.has-image>img{object-fit:cover;width:100%;height:100%}.upload-zone.has-image>span{background:#fffefae0;border-radius:20px;align-items:center;gap:6px;padding:8px 12px;font-size:10px;display:flex;position:absolute;bottom:10px}.ai-button{color:#6b829c;background:#e7edf6;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:12px;font-size:11px;font-weight:600;display:flex}.ai-button>svg:last-child{margin-left:auto}.meal-detail{flex-direction:column;gap:20px;display:flex}.meal-detail>img{object-fit:cover;border-radius:16px;width:100%;height:240px}.meal-detail .eyebrow{margin:0}.meal-detail>p:not(.eyebrow){color:var(--muted);font-size:12px;line-height:1.8}.detail-macros{background:#eef2e6;border-radius:14px;padding:18px 10px;display:flex}.detail-macros>div{text-align:center;flex-direction:column;flex:1;gap:4px;display:flex}.detail-macros strong{font-family:var(--serif);font-size:24px;font-weight:500}.detail-macros span{color:#8c997d;font-size:10px}.detail-macros>div+div{border-left:1px solid #dae2cf}.empty-state{text-align:center;background:#f5f5ee;border-radius:18px;flex-direction:column;align-items:center;gap:14px;padding:30px 20px;display:flex}.empty-state h3{font-family:var(--serif);font-size:23px;font-weight:400}.empty-state p{color:var(--muted);font-size:12px;line-height:1.7}.empty-illustration{color:#a9b78f;justify-content:center;align-items:center;width:65px;height:60px;display:flex;position:relative}.empty-illustration svg+svg{color:#d1a3af;position:absolute;top:2px;right:0;transform:rotate(12deg)}.account-settings{border-top:1px solid var(--line);border-bottom:1px solid var(--line);align-items:center;gap:10px;margin:25px 0;padding:20px 0;display:flex}.account-settings>svg{color:#a1b18b}.account-settings strong{font-size:12px;font-weight:600}.account-settings p{color:var(--muted);margin-top:5px;font-size:10px}.account-settings>.text-button{white-space:nowrap;margin-left:auto}.loading-screen{background:var(--paper);flex-direction:column;justify-content:center;align-items:center;gap:20px;height:100svh;display:flex}.loading-screen>.brand{font-size:48px}.loading-screen p{color:var(--muted);font-size:12px;animation:1.5s ease-in-out infinite loading-pulse}@keyframes page-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes modal-enter{0%{opacity:0;transform:translateY(25px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes toast-enter{0%{opacity:0;bottom:83px}to{opacity:1;bottom:95px}}@keyframes loading-pulse{50%{opacity:.4}}@media (min-width:650px){body{padding:26px 0}.app-shell{border-radius:28px;min-height:calc(100svh - 52px);overflow:hidden;box-shadow:0 12px 80px #4f655b10}.app-header{padding:0 30px}.main-content{padding-left:30px;padding-right:30px}.bottom-nav{border-radius:0 0 28px 28px;bottom:26px}.modal-backdrop{align-items:center;padding:25px}.modal{border-radius:25px;max-height:90svh}.meal-image{height:190px}.nutrition-panel{padding:17px 18px 0}.daily-summary{gap:15px}.calorie-chart{width:150px;height:153px}.toast{bottom:120px}}@media (max-width:380px){.app-header{padding:0 20px}.main-content{padding:26px 20px 110px}.brand{font-size:32px}.header-right{gap:8px}.signin-button{padding:7px 9px;font-size:10px}.profile-stack>svg{width:31px;height:31px}h1{font-size:30px}.nutrition-panel{padding:12px 12px 0}.daily-summary{gap:9px}.calorie-chart{height:137px}.calorie-chart strong{font-size:29px}.macro-row{gap:7px}.macro strong small{font-size:8px}.meal-image{height:150px}.meal-grid{gap:19px 11px}.meal-nutrition{gap:4px}.meal-nutrition>span+span:before{margin-right:4px}.meal-caption h3{font-size:11px}.modal{padding-left:20px;padding-right:20px}.section-heading h2{font-size:21px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media (min-width:1000px){body{padding:30px}.app-shell{border-radius:26px;max-width:960px;min-height:calc(100svh - 60px)}.app-header{height:88px;padding:0 38px}.header-right{gap:19px}.signin-button{font-size:12px}.profile-stack>svg{width:39px;height:39px}.main-content{min-height:calc(100svh - 148px);padding:33px 38px 110px}.page-intro{margin-bottom:17px}h1{font-size:37px}.intro-copy{font-size:13px}.date-selector{gap:58px;max-width:280px;margin:0 auto 21px}.date-selector>div{white-space:nowrap}.date-selector .icon-button{flex-shrink:0}.daily-summary{gap:20px}.nutrition-panel{grid-template-columns:160px minmax(0,1fr);gap:0 18px;padding:17px 23px 0;display:grid}.summary-person{grid-column:1/-1}.summary-person>span:first-of-type{font-size:13px}.summary-person small{font-size:10px}.calorie-chart{width:150px;height:145px;margin:3px 0 0}.calorie-chart strong{font-size:32px}.macro-row{flex-direction:column;justify-content:center;gap:14px;padding:8px 0}.macro{flex:none}.macro>div:first-child{flex-direction:row;justify-content:space-between;align-items:baseline}.macro>div>span{font-size:10px}.macro strong{font-size:12px}.macro strong small{font-size:9px}.calorie-remaining{grid-column:1/-1;margin-top:2px;padding:11px 0;font-size:10px}.section-heading h2{font-size:25px}.text-button{font-size:12px}.filter-row{gap:8px}.filter-row>button{padding:8px 19px;font-size:11px}.meal-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}.meal-image{height:176px}.meal-caption h3{font-size:12px}.meal-meta{font-size:10px}.meal-nutrition{gap:5px;font-size:8px}.meal-nutrition strong{font-size:11px}.bottom-nav{border-radius:0 0 26px 26px;max-width:960px;padding-left:120px;padding-right:120px;bottom:30px}.bottom-nav>button{font-size:10px}.page-footnote{padding:27px 0 6px}.demo-caption,.demo-caption button{font-size:10px}.notes-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.note-tile{min-height:215px}.sv-search{max-width:360px}.checkin-view{grid-template-columns:1fr 1fr;align-items:start;column-gap:27px;display:grid}.checkin-view .sv-heading{grid-column:1/-1}.checkin-day-picker{grid-column:1/-1;justify-self:center;width:280px}.daily-question{grid-column:1;min-height:340px;margin-top:3px}.daily-question h2{font-size:30px}.checkin-answers{grid-area:3/2}.checkin-answers .sv-section-heading{margin-top:0}.checkin-view>.sv-footnote{grid-column:1/-1}.settings-view{grid-template-columns:1.05fr 1fr;align-items:start;gap:0 34px;display:grid}.settings-view>.sv-heading{grid-column:1/-1}.profile-form{grid-area:2/1/6}.partner-details{grid-column:2;margin-top:0}.partner-details>.sv-section-heading{margin-top:3px}.pair-settings,.settings-view>.sv-footnote{grid-column:2}.account-settings{margin-top:25px}.modal{max-width:500px}.toast{bottom:127px}.main-content>.demo-caption{margin-top:18px}.partner-placeholder{min-height:220px}}.sync-notice{background:var(--yellow);border-radius:10px;align-items:center;gap:15px;margin-bottom:20px;padding:10px 15px;font-size:11px;line-height:1.6;display:flex}.sync-notice>.text-button{white-space:nowrap;margin-left:auto}.primary-button{text-decoration:none}.macro>div>span{font-size:10px}.macro strong{font-size:12px}.macro strong small,.calorie-remaining,.meal-meta{font-size:10px}.meal-nutrition,.meal-nutrition small{font-size:9px}.demo-caption,.demo-caption button{font-size:10px}@media (min-width:1000px){.main-content .notes-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.main-content .daily-question{min-height:340px}.main-content .partner-details{margin-top:0}.main-content .meal-nutrition{font-size:9px}}.profile-stack{position:relative}.profile-notification,.nav-notification{color:#fffefa;border:2px solid var(--paper);background:#c57e98;border-radius:50%;justify-content:center;align-items:center;min-width:17px;height:17px;padding:0 4px;font-size:9px;font-weight:700;line-height:1;display:flex;position:absolute}.profile-notification{top:-5px;right:-4px}.nav-notification{top:-4px;right:0}
