@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap";:root{--bg:#f5f6f2;--paper:#fff;--ink:#24372f;--muted:#7c857c;--green:#2e6d53;--line:#e9ece5;--mint:#eaf1e4;--nav:238px}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);margin:0;font:14px DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.35}button{color:inherit;background:0 0;border:0}:is(button:focus-visible,a:focus-visible){outline-offset:3px;outline:3px solid #69a48b}input:focus,select:focus,textarea:focus{outline-offset:1px;outline:2px solid #83b795}a{color:inherit}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Manrope,sans-serif}h1{letter-spacing:-1.1px;font-size:31px;font-weight:750;line-height:1.35}h2{letter-spacing:-.4px;font-size:17px;font-weight:750}h3{font-size:14px;font-weight:700}p{line-height:1.6}.shell{min-height:100vh}.sidebar{width:var(--nav);border-right:1px solid var(--line);z-index:20;background:#fff;flex-direction:column;padding:35px 22px 20px;display:flex;position:fixed;inset:0 auto 0 0}.brand{letter-spacing:-.8px;align-items:center;gap:10px;font-family:Manrope,sans-serif;font-size:22px;font-weight:800;text-decoration:none;display:flex}.brandmark{color:#ceefad;background:#234e3f;border-radius:13px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:42px;display:inline-flex}.brand-light{font-weight:500}.brand small{letter-spacing:1.55px;color:#92988c;margin-top:4px;font-family:DM Sans,sans-serif;font-size:7.5px;display:block}.workspace-label{letter-spacing:1.6px;color:#9a9f96;margin:51px 11px 17px;font-size:9px;font-weight:650}.sidebar nav{gap:8px;display:grid}.sidebar nav button{text-align:left;color:#858c83;border-radius:9px;align-items:center;gap:13px;padding:14px 15px;font-weight:500;display:flex}.sidebar nav button.active{color:#2e6247;background:#eef3e8;font-weight:700}.nav-dot{background:#487b54;border-radius:50%;width:6px;height:6px;margin-left:auto}.side-note{background:#f6f7ef;border-radius:14px;margin-top:55px;padding:21px 20px 0;position:relative;overflow:hidden}.seed{color:#76964e;font-size:37px;line-height:1}.side-note h3{letter-spacing:-.6px;margin:13px 0 10px;font-size:20px;line-height:1.5}.side-note p{color:#929885;font-size:11px;line-height:1.8}.seed-line{border:1px solid #e0e8c8;border-radius:100% 100% 0 0;width:220px;height:70px;margin-top:13px;margin-left:20px;transform:rotate(-20deg)}.sidebar-bottom{margin-top:auto;padding-top:40px}.sidebar-bottom>button:first-child{color:#899080;gap:8px;margin:0 0 25px 7px;font-size:10px;display:flex}.profile{border-top:1px solid var(--line);text-align:left;align-items:center;gap:10px;width:100%;padding:20px 0 0;font-size:12px;font-weight:650;display:flex}.avatar{color:#60724f;background:#e9eddf;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:12px;font-weight:700;display:inline-flex}.profile small{color:#979c91;margin-top:4px;font-size:10px;font-weight:400;display:block}.profile>svg{color:#8f978a;margin-left:auto}main{margin-left:var(--nav)}.topbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:82px;padding:0 40px;display:flex}.breadcrumb{color:#92988d;align-items:center;gap:13px;font-size:11px;display:flex}.breadcrumb strong{color:#4f6054;font-weight:500}.top-actions{align-items:center;gap:21px;display:flex}.sync{color:#8b9685;align-items:center;gap:6px;font-size:10px;display:flex}.sync.error{color:#a34836;background:0 0;margin:0;padding:0}.sync.saving{color:#9c7e46}.icon-button{color:#889080;border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex}.icon-button:hover{background:#eff2eb}.content{max-width:1360px;margin:auto;padding:35px 40px 15px}.page-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;display:flex}.eyebrow{letter-spacing:1.9px;color:#8d9780;margin-bottom:10px;font-size:9px;font-weight:700;display:block}.page-heading p{color:var(--muted);margin-top:8px;font-size:12px}.outlined{white-space:nowrap;background:#fff;border:1px solid #dce3d5;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:11px 15px;font-size:11px;font-weight:600;display:inline-flex}.outlined:hover{background:#f2f5ec}.outlined.small{padding:8px 10px;font-size:10px}.datebar{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.date-control{align-items:center;gap:11px;display:flex}.date-control label{align-items:center;gap:9px;font-size:11px;font-weight:600;display:flex;position:relative}.date-control label>svg{color:#7d8b75}.date-control input{opacity:0;cursor:pointer;width:100%;position:absolute;inset:0}.date-control input::-webkit-calendar-picker-indicator{cursor:pointer;width:auto;height:auto;position:absolute;inset:0}.date-caption{color:#99a08f;font-size:10px}.overview{grid-template-columns:minmax(0,1.85fr) minmax(240px,1fr);gap:22px;margin-bottom:24px;display:grid}.hero-card{color:#fff;background:#193f35;border-radius:16px;justify-content:space-between;align-items:center;min-height:228px;padding:29px 30px;display:flex;position:relative;overflow:hidden}.hero-card:after{content:"";border:1px solid #ffffff08;border-radius:50%;width:290px;height:290px;position:absolute;top:-180px;right:-90px}.pill{letter-spacing:1.5px;color:#c5d5bd;align-items:center;gap:6px;font-size:8px;display:flex}.pill>span{background:#c3e29a;border-radius:50%;width:5px;height:5px}.hero-copy{z-index:1;position:relative}.hero-copy h2{letter-spacing:-.8px;max-width:260px;margin:15px 0 9px;font-size:25px;font-weight:600}.hero-copy p{color:#adc5b8;font-size:11px;line-height:1.8}.hero-copy button{color:#d8ecc9;align-items:center;gap:8px;margin-top:20px;padding:0;font-size:10px;display:flex}.ring{flex-shrink:0;width:165px;height:165px;margin-left:10px;position:relative}.ring svg{width:100%;height:100%;transform:rotate(-90deg)}.ring circle{fill:none;stroke-width:10px}.ring-base{stroke:#3c5c4a}.ring-progress{stroke:#c1e8a0;stroke-linecap:round;transition:stroke-dasharray .6s}.ring>div{flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.ring strong{letter-spacing:-2px;font-family:Manrope,sans-serif;font-size:42px;font-weight:600}.ring strong span{margin-left:2px;font-size:22px}.ring small{color:#b1c4b5;margin-top:4px;font-size:9px}.mini-card{border:1px solid var(--line);background:#fff;border-radius:16px;padding:23px 25px}.weight-summary{flex-direction:column;justify-content:center;display:flex;position:relative}.tile-icon{color:#83926b;background:#f1f3e9;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex}.tile-icon.peach{color:#b28b5a;background:#f8f0e6;position:absolute;top:22px;right:22px}.card-label{letter-spacing:1.4px;color:#959b8e;font-size:8px;font-weight:700}.weight-number{letter-spacing:-1.4px;margin-top:19px;font-family:Manrope,sans-serif;font-size:38px;font-weight:650;line-height:1.3}.weight-number small{letter-spacing:0;color:#929b89;font-family:DM Sans,sans-serif;font-size:14px;font-weight:400}.muted{color:#969e90;font-size:10px;line-height:1.7}.weight-footer{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-top:23px;padding-top:15px;display:flex}.weight-footer>span{color:#74916c;align-items:center;gap:2px;font-size:10px;display:flex}.text-button{color:#5d8057;align-items:center;gap:5px;padding:0;font-size:10px;font-weight:600;display:inline-flex}.dashboard-columns{grid-template-columns:minmax(0,1.85fr) minmax(270px,1fr);gap:22px;display:grid}.left-column,.right-column{flex-direction:column;gap:22px;display:flex}.panel{border:1px solid var(--line);background:#fff;border-radius:14px;overflow:hidden}.panel-heading{justify-content:space-between;align-items:center;gap:10px;padding:22px 23px 18px;display:flex}.panel-heading p{color:#9a9f93;margin-top:6px;font-size:10px}.count{color:#89937c;vertical-align:middle;letter-spacing:0;background:#f3f5ed;border-radius:5px;margin-left:5px;padding:4px 7px;font-family:DM Sans,sans-serif;font-size:9px;font-weight:500}.filters{border-bottom:1px solid var(--line);gap:6px;padding:0 23px 17px;display:flex}.filters button{color:#929a89;border-radius:6px;padding:6px 11px;font-size:9px}.filters button.selected{color:#668052;background:#eef3e5;font-weight:600}.habit{border-bottom:1px solid #f0f2eb;align-items:center;gap:13px;min-height:90px;padding:19px 23px;display:flex}.habit:last-child{border-bottom:0}.tick{background:#fff;border:1.5px solid #d8dfd1;border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;padding:0;display:flex}.tick.checked{color:#fff;background:#719564;border-color:#719564}.habit-icon{color:#ad965d;background:#f5f0e5;border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.habit-icon.movement{color:#8291ba;background:#edf0f9}.habit-icon.nutrition{color:#8a9f64;background:#eef2e5}.habit-icon.hydration{color:#7cabbf;background:#eaf3f9}.habit-info{flex:1;min-width:0}.habit h3{letter-spacing:-.1px;font-size:11px}.habit p{color:#a1a596;margin-top:4px;font-size:9px;line-height:1.6}.completed .habit-info h3{color:#7d8c73}.habit-tag{color:#9ca48f;white-space:nowrap;background:#f7f8f2;border-radius:5px;padding:5px 7px;font-size:8px}.completed .habit-tag{color:#699059;background:#f0f5e9}.quantity{color:#939c89;flex-wrap:wrap;align-items:center;gap:3px;margin-top:9px;font-size:9px;display:flex}.quantity>button:not(.confirm-limit){border:1px solid #e6ebde;border-radius:4px;justify-content:center;align-items:center;width:22px;height:23px;padding:0;display:flex}.quantity>input{text-align:center;color:#51644a;background:#fcfdf9;border:1px solid #e6ebde;border-radius:4px;width:43px;height:24px;padding:0;font-size:10px}.quantity>span{margin-left:5px}.quantity .confirm-limit{color:#709257;margin-left:5px;font-size:8px;text-decoration:underline}.water-card{background:#edf5fa;border:1px solid #e2edf1;border-radius:14px;padding:22px 23px}.water-card .panel-heading{gap:5px;padding:0}.water-title{color:#719aaf;align-items:center;gap:9px;display:flex}.water-title h2{color:#4f6e7c;letter-spacing:-.3px;font-size:14px}.water-number{letter-spacing:-1px;color:#4b788e;margin-top:24px;font-family:Manrope,sans-serif;font-size:32px;font-weight:650}.water-number small{letter-spacing:0;color:#8ba6b2;font-family:DM Sans,sans-serif;font-size:11px;font-weight:400}.water-glasses{justify-content:space-between;gap:4px;margin:19px 0 18px;display:flex}.water-glasses>div{color:#c3d7e1}.water-glasses .filled{color:#6caac2}.water-glasses .filled svg{fill:#a9d1e2}.water-progress{background:#dceaf2;border-radius:5px;height:5px;overflow:hidden}.water-progress i{background:#87b6ce;border-radius:5px;height:100%;transition:width .3s;display:block}.water-buttons{gap:8px;margin-top:18px;display:flex}.water-buttons button{color:#6a8b9c;background:#fff9;border:1px solid #d6e6ee;border-radius:7px;flex:1;justify-content:center;align-items:center;gap:4px;padding:9px 8px;font-size:10px;display:flex}.water-buttons button:first-child{flex:0 0 32px}.water-custom{color:#7f9ba9;margin-top:12px;font-size:9px}.water-custom label{align-items:center;gap:6px;display:flex}.water-custom input{color:#557e90;background:#fff6;border:1px solid #d6e6ee;border-radius:4px;width:72px;padding:4px 6px;font-size:10px}.water-card>p{color:#8aa4af;margin-top:13px;font-size:9px;line-height:1.8}.week-panel .panel-heading{padding-bottom:12px}.week-panel h2{font-size:14px}.streak{color:#ac9067;align-items:center;gap:3px;font-size:9px;display:flex}.week-grid{justify-content:space-between;gap:3px;padding:5px 20px 15px;display:flex}.week-grid button{text-align:center;padding:0}.week-grid small{color:#9aa18e;margin-bottom:9px;font-size:9px;display:block}.week-grid button>div{border-radius:50%;width:29px;height:29px;padding:2px;display:flex}.week-grid button>div>span{color:#7d8873;background:#fff;border-radius:50%;justify-content:center;align-items:center;width:100%;height:100%;font-size:9px;display:flex}.week-grid button.current>div>span{color:#4d7247;background:#eef3e4}.week-panel>p{padding:0 23px;font-size:8px}.week-panel>.text-button{margin:17px 23px 20px}.reflection{color:#9e976e;background:#f2f0e7;border-radius:14px;padding:24px}.reflection h3{color:#736e51;margin-top:12px;font-size:14px}.reflection p{color:#a5a087;margin:7px 0 13px;font-size:10px}.reflection textarea{resize:vertical;color:#756d4e;background:#fff7;border:1px solid #e3dfcf;border-radius:8px;width:100%;min-height:65px;padding:12px;font-size:11px}.reflection textarea::placeholder{color:#b0aa91}.reflection>span{color:#aba58e;margin-top:10px;font-size:8px;display:block}.meal-panel .panel-heading{padding-bottom:15px}.meal-empty{background:#fcfcf7;border:1px dashed #e3e7d8;border-radius:10px;align-items:center;gap:15px;margin:0 23px 23px;padding:22px 15px;display:flex}.meal-empty h3{font-size:12px}.meal-empty p{color:#979f8b;margin-top:4px;font-size:9px}.meal-empty small{color:#a7ad9c;margin-top:8px;font-size:8px;display:block}.food-list{padding:0 23px 10px}.food-list>div{border-top:1px solid var(--line);align-items:center;gap:10px;padding:12px 0;display:flex}.food-dot{background:#b2c39c;border-radius:50%;width:7px;height:7px}.food-list>div>div{flex:1}.food-list strong{font-size:11px;font-weight:500}.food-list small{color:#9a9f90;margin-top:3px;font-size:9px;display:block}.food-list>div>span:not(.food-dot){color:#839277;font-size:10px}footer{color:#a4aa98;align-items:center;gap:8px;margin:30px 0 10px;font-size:9px;display:flex}footer>span:last-child{margin-left:auto;font-size:8px}.footer-mark{color:#98aa7b;font-size:17px}.mobile-brand,.mobile-nav{display:none}.stats-grid{grid-template-columns:repeat(3,1fr);gap:22px;margin:30px 0 22px;display:grid}.stats-grid .mini-card{min-height:190px}.stats-grid .text-button{margin-top:14px}.plain-progress{background:#edf1e7;border-radius:5px;height:5px;margin-top:15px;overflow:hidden}.plain-progress i{background:#84a275;border-radius:5px;height:100%;display:block}.chart-panel{margin-bottom:22px}.chart-panel .badge{color:#79916a;background:#f1f5ea;border-radius:6px;padding:7px 10px;font-size:10px}.weight-chart{padding:10px 25px 20px}.weight-chart svg{width:100%;height:auto}.chart-empty{color:#a3b18d;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:220px;padding:25px;display:flex}.chart-empty h3{color:#6d7d5c}.chart-empty p{color:#939c86;text-align:center;font-size:11px}.primary{color:#fff;background:#2d614b;border:1px solid #2d614b;border-radius:8px;justify-content:center;align-items:center;gap:9px;padding:12px 18px;font-size:12px;font-weight:500;display:inline-flex}.primary:hover{background:#204d3a}.history-list{padding:0 23px 15px}.history-list>button{text-align:left;border-top:1px solid var(--line);align-items:center;gap:18px;width:100%;padding:15px 0;display:flex}.history-date{background:#f2f5eb;border-radius:9px;flex-direction:column;align-items:center;width:46px;padding:7px;display:flex}.history-date>span{color:#698053;font-family:Manrope,sans-serif;font-size:18px}.history-date small{color:#a1a58e;font-size:8px}.history-info{flex:1}.history-info strong{font-size:12px;font-weight:500}.history-info small{color:#929d85;margin-top:5px;font-size:10px;display:block}.history-score{text-align:right;color:#6e8859;min-width:70px;font-size:11px}.history-score .plain-progress{margin-top:7px}.empty{color:#98a18a;text-align:center;padding:30px;font-size:12px}.goals-intro{background:#edf2e5;border-radius:12px;align-items:center;gap:15px;margin:25px 0 22px;padding:20px;display:flex}.goals-intro p{color:#82916f;font-size:12px;line-height:1.9}.goals-intro strong{font-size:11px;font-weight:400}.manage-goal{border-bottom:1px solid var(--line);align-items:center;gap:15px;padding:22px;display:flex}.manage-goal>div{flex:1}.manage-goal h3{font-size:13px}.manage-goal p{color:#909a83;margin-top:6px;font-size:11px}.manage-goal small{color:#a0a68f;margin-top:6px;font-size:9px;display:block}.danger:hover{color:#a6624a;background:#fbefea}.add-goal-row{color:#6a8855;background:#fcfdf8;justify-content:center;align-items:center;gap:9px;width:100%;padding:24px;font-size:12px;display:flex}.backup-card{border:1px solid #e2e7d9;border-radius:12px;align-items:center;gap:12px;margin-top:25px;padding:23px;display:flex}.backup-card>div{flex:1}.backup-card h2{font-size:15px}.backup-card p{color:#969e87;margin-top:5px;font-size:11px}.modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;background:#172b235c;justify-content:center;align-items:center;padding:25px;display:flex;position:fixed;inset:0;overflow-y:auto}.modal{background:#fff;border-radius:20px;width:490px;max-width:100%;max-height:90dvh;padding:35px;position:relative;overflow-y:auto;box-shadow:0 20px 90px #18362625}.modal-close{position:absolute;top:14px;right:14px}.modal h2{letter-spacing:-.8px;margin-bottom:15px;font-size:24px}.modal p{color:#8d9781;margin-bottom:15px;font-size:12px}.modal form>label,.form-row>label{color:#6b7c5e;flex-direction:column;gap:8px;margin-top:18px;font-size:11px;font-weight:500;display:flex}.modal input,.modal select{color:#4d6143;background:#fafbf7;border:1px solid #e1e7d9;border-radius:7px;width:100%;min-width:0;padding:11px 12px;font-size:12px}.form-row{gap:14px;display:flex}.form-row>label{flex:1;min-width:0}.modal .form-note{background:#f5f7ef;border-radius:7px;margin:20px 0;padding:12px;font-size:10px;line-height:1.8}.modal .primary{width:100%;margin-top:10px}.help-item{gap:15px;margin-top:20px;display:flex}.help-item>svg{color:#839d6e;flex-shrink:0;width:20px}.help-item h3{margin-bottom:5px;font-size:12px}.help-item p{margin-bottom:0;font-size:11px;line-height:1.8}.backup-actions{justify-content:center;gap:20px;margin-top:22px;display:flex}.backup-actions button{color:#839473;align-items:center;gap:7px;font-size:10px;display:flex}.toast{color:#e9f3df;z-index:150;background:#244f3e;border-radius:10px;align-items:center;gap:20px;max-width:90vw;padding:15px 18px;font-size:12px;line-height:1.5;display:flex;position:fixed;bottom:30px;left:calc(50% + 119px);transform:translate(-50%);box-shadow:0 8px 30px #204a3420}.toast button{padding:0;display:flex}.error{color:#a3653d;background:#fff6ed;border:1px solid #ecd9ca;border-radius:8px;margin:15px 40px 0;padding:15px 20px;font-size:12px;line-height:1.8}.error button{margin-left:12px;text-decoration:underline}.spin{animation:1.5s linear infinite rotate}@keyframes rotate{to{transform:rotate(360deg)}}.loading{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:20px;min-height:100vh;padding:30px;display:flex}.loading h1{font-size:30px}.loading p{color:#8b9780;max-width:400px}.loading a{color:#53764a;font-size:12px}@media (min-width:1500px){.content{padding-top:40px}.overview,.dashboard-columns{grid-template-columns:minmax(0,1.9fr) minmax(300px,1fr)}.hero-copy h2{max-width:none;font-size:28px}.hero-card{padding:32px 35px}.ring{width:180px;height:180px}.habit{padding-top:21px;padding-bottom:21px}}@media (max-width:1200px){:root{--nav:205px}.sidebar{padding:30px 17px 20px}.brand{font-size:20px}.brandmark{width:35px;height:38px}.brand small{font-size:6px}.content{padding:30px 25px 15px}.topbar{padding:0 25px}.overview,.dashboard-columns{grid-template-columns:minmax(0,1.6fr) minmax(260px,1fr);gap:17px}.hero-card{padding:24px}.hero-copy h2{font-size:22px}.ring{width:135px;height:135px;margin-left:0}.ring strong{font-size:36px}.ring small{font-size:8px}.hero-card{min-height:225px}.weight-summary{padding:20px}.weight-summary .tile-icon{width:30px;height:30px;right:15px}.habit{gap:9px;padding:17px}.habit-tag{display:none}.habit-icon{width:30px;height:30px}.panel-heading{padding:20px 17px 17px}.water-card{padding:20px 17px}.water-title h2{font-size:12px}.water-glasses svg{width:20px}.stats-grid{gap:15px}.toast{left:calc(50% + 102px)}}@media (max-width:960px){:root{--nav:180px}.sidebar{padding:25px 12px}.brand{gap:7px;font-size:17px}.brand small{letter-spacing:1px}.side-note{padding:17px 15px 0}.side-note h3{font-size:17px}.workspace-label{letter-spacing:1px;font-size:8px}.sidebar nav button{padding:13px;font-size:12px}.sidebar-bottom>button:first-child{font-size:9px}.content{padding:25px 22px 15px}.page-heading h1{font-size:26px}.page-heading p{font-size:11px}.overview{grid-template-columns:1fr}.hero-card{min-height:210px}.ring{width:160px;height:160px}.weight-summary{display:none}.dashboard-columns{grid-template-columns:minmax(0,1.4fr) minmax(240px,1fr);gap:15px}.habit{gap:8px;padding:16px 13px}.habit-icon{display:none}.habit h3{font-size:11px}.habit p{font-size:9px}.filters{padding-left:13px;padding-right:13px}.filters button{padding:6px 8px}.panel-heading h2{font-size:14px}.quantity{font-size:8px}.water-title h2{font-size:11px}.water-buttons{gap:5px}.water-buttons button{font-size:9px}.water-glasses svg{width:18px}.backup-card{flex-wrap:wrap}.backup-card>div{flex-basis:100%}.meal-empty{gap:10px;margin:0 15px 15px;padding:15px 10px}.meal-empty .tile-icon{display:none}.toast{left:calc(50% + 90px)}}@media (max-width:760px){:root{--nav:0px}.sidebar{display:none}main{margin-left:0}.topbar{background:#ffffffb0;height:69px;padding:0 20px}.breadcrumb{display:none}.mobile-brand{letter-spacing:-.7px;align-items:center;gap:9px;font-family:Manrope,sans-serif;font-size:19px;font-weight:750;display:flex}.mobile-brand .brandmark{border-radius:10px;width:30px;height:32px}.top-actions{gap:12px}.top-actions>.icon-button{display:none}.sync{font-size:9px}.top-actions>.avatar{width:30px;height:30px}.content{padding:28px 18px 90px}.page-heading{align-items:flex-start;gap:10px;margin-bottom:23px}.page-heading h1{letter-spacing:-.9px;font-size:25px}.page-heading p{max-width:270px;margin-top:8px;font-size:11px;line-height:1.7}.page-heading>.outlined{width:35px;height:35px;margin-top:21px;padding:9px;font-size:0}.page-heading>.outlined svg{flex-shrink:0;width:18px;height:18px}.eyebrow{letter-spacing:1.6px;font-size:8px}.datebar{margin-bottom:16px}.date-caption{display:none}.date-control{justify-content:space-between;gap:10px;width:100%}.date-control label{font-size:12px}.overview{margin-bottom:18px}.hero-card{border-radius:14px;min-height:211px;padding:25px 23px}.hero-copy h2{max-width:170px;margin:14px 0 8px;font-size:22px;line-height:1.4}.hero-copy p{font-size:10px;line-height:1.8}.pill{letter-spacing:1.1px;font-size:6.5px}.hero-copy button{margin-top:17px;font-size:9px}.ring{width:132px;height:132px;margin-left:0;margin-right:-5px}.ring strong{font-size:35px}.ring strong span{font-size:18px}.ring small{font-size:7px}.dashboard-columns{flex-direction:column;gap:18px;display:flex}.left-column,.right-column{display:contents}.habit-panel{order:2}.water-card{order:1;padding:21px}.meal-panel{order:3}.week-panel{order:4}.reflection{order:5}.panel-heading{padding:22px 20px 17px}.panel-heading h2{font-size:16px}.panel-heading p{font-size:10px}.filters{padding-left:20px;padding-right:20px}.filters button{padding:7px 11px;font-size:10px}.habit{gap:12px;padding:19px 20px}.habit-icon{width:33px;height:33px;display:flex}.habit h3{font-size:12px}.habit p{font-size:10px}.habit-tag{display:none}.tick{width:23px;height:23px}.quantity{gap:5px;font-size:9px}.quantity>input{width:44px;height:29px;font-size:12px}.quantity>button:not(.confirm-limit){width:27px;height:29px}.quantity .confirm-limit{font-size:9px}.water-title h2{font-size:15px}.water-number{margin-top:18px;font-size:33px}.water-glasses{margin-top:15px}.water-glasses svg{width:26px;height:26px}.water-buttons button{padding:11px 8px;font-size:12px}.water-card>p,.water-custom{font-size:10px}.water-custom input{font-size:12px}.week-grid{padding:10px 25px 20px}.week-grid button>div{width:36px;height:36px}.week-grid small{font-size:10px}.week-grid button>div>span{font-size:11px}.week-panel>p{font-size:9px}.week-panel>.text-button{font-size:11px}.reflection{padding:23px}.reflection h3{font-size:16px}.reflection p{font-size:11px}.reflection textarea{min-height:80px;font-size:13px}.reflection>span{font-size:9px}.meal-empty{margin:0 20px 20px;padding:20px 15px}.meal-empty .tile-icon{display:flex}.meal-empty h3{font-size:12px}.meal-empty p{font-size:10px}.meal-empty small{font-size:9px}.food-list strong{font-size:12px}.food-list small{font-size:10px}.food-list>div>span:not(.food-dot){font-size:11px}.mobile-nav{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);padding:10px 15px calc(10px + env(safe-area-inset-bottom));z-index:30;background:#fffffff5;border-top:1px solid #e3e9db;justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0}.mobile-nav button{color:#9da58e;flex-direction:column;align-items:center;gap:5px;min-width:75px;padding:3px 10px;font-size:10px;display:flex}.mobile-nav button.active{color:#356348}.mobile-nav button.active svg{stroke-width:2.5px}footer{margin-top:25px;font-size:9px}footer>span:last-child{display:none}.toast{width:max-content;max-width:92vw;padding:14px 16px;font-size:12px;bottom:90px;left:50%}.stats-grid{grid-template-columns:1fr 1fr;gap:12px;margin-top:20px}.stats-grid>.mini-card{min-height:165px;padding:20px 17px}.stats-grid>.mini-card:last-child{grid-column:1/-1;grid-template-columns:1fr auto;align-items:center;gap:10px;min-height:110px;display:grid}.stats-grid>.mini-card:last-child .weight-number{grid-area:1/2/3;margin:0}.stats-grid>.mini-card:last-child .muted{grid-row:2}.weight-number{font-size:30px}.weight-number small{font-size:11px}.card-label{font-size:7px}.chart-panel .panel-heading{flex-wrap:wrap}.chart-empty{padding:25px 18px}.chart-empty h3{font-size:13px}.history-list{padding:0 17px 15px}.history-list>button{gap:10px}.history-info strong{font-size:11px}.history-info small{font-size:9px}.history-score{min-width:45px;font-size:11px}.history-date{width:40px}.goals-intro{gap:12px;padding:17px}.goals-intro p{font-size:11px}.goals-intro strong{font-size:10px}.manage-goal{gap:9px;padding:19px 15px}.manage-goal .habit-icon{width:30px;height:30px}.manage-goal h3{font-size:12px}.manage-goal p{font-size:10px}.manage-goal small{font-size:9px}.manage-goal .icon-button{width:27px}.backup-card{padding:20px}.backup-card p,.backup-card .outlined{font-size:10px}.modal-backdrop{align-items:center;padding:15px}.modal{border-radius:16px;max-height:90dvh;padding:30px 23px}.modal h2{font-size:23px}.modal input,.modal select{padding:11px 9px;font-size:16px}.modal form>label,.form-row>label{font-size:11px}.form-row{gap:10px}.modal .form-note{font-size:10px}.error{margin:12px 18px 0;padding:12px;font-size:11px}.error button{margin-left:7px}.outlined.small{font-size:10px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media (min-width:761px){.habit h3{font-size:12px}.habit p{color:#89947d;font-size:10px}.habit-tag{font-size:9px}.panel-heading p{color:#89947d;font-size:11px}.filters button{font-size:10px}.card-label{font-size:9px}.water-card>p{font-size:10px}.muted{font-size:11px}.hero-copy p,.side-note p{font-size:12px}.brand small{letter-spacing:1px;font-size:6.5px}}.sidebar nav button,.mobile-nav button,.outlined,.tick,.meal-goal,.week-grid button,.mini-card{transition:transform .22s,box-shadow .22s,background .22s}.sidebar nav button:hover{color:#3d6f47;background:#f0f5e9;transform:translate(5px)}.sidebar nav button:hover svg{transform:rotate(-7deg)scale(1.1)}.sidebar nav svg,.mobile-nav svg{transition:transform .25s}.mobile-nav button:hover{transform:translateY(-3px)}.mobile-nav button:hover svg{transform:rotate(-6deg)}.outlined:hover{transform:translateY(-2px);box-shadow:0 5px 12px #2c51300b}.tick:hover{transform:scale(1.12)}.tick.checked{animation:.35s check-pop}.week-grid button:hover{transform:translateY(-3px)}.mini-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px #2c513009}.hero-card{background:radial-gradient(at 90% 0,#315c46 0%,#193f35 65%)}.ring-sparkle{z-index:2;filter:drop-shadow(0 4px 6px #0002);font-size:24px;position:absolute;top:0;right:9px}.brand{font-size:28px}.brand small{letter-spacing:1px;font-size:7px}.habit-tag{font-size:9px}.schedule-badge{color:#6a8a55;margin-top:5px;font-size:9px;display:block}.meal-goals{grid-template-columns:1fr 1fr;gap:13px;padding:0 22px 17px;display:grid}.meal-goal{background:#fafbf6;border:1px solid #e5e8dc;border-radius:12px;min-width:0;padding:16px}.meal-goal:hover{transform:translateY(-3px);box-shadow:0 7px 16px #71834e0c}.meal-goal.met{background:#f0f7e8;border-color:#d8e8c8}.meal-goal.over{background:#fff8f1;border-color:#efdfca}.meal-goal.skipped{background:#f6f5f0;border-style:dashed}.meal-goal-head{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.meal-emoji{font-size:18px}.meal-goal-head h3{font-size:12px}.meal-goal-head>span:last-child{color:#939c85;flex-basis:100%;margin-top:5px;font-size:9px}.meal-goal.met .meal-goal-head>span:last-child{color:#5c8b45}.meal-goal.over .meal-goal-head>span:last-child{color:#af8554}.calorie-input{align-items:baseline;gap:5px;margin-top:12px;display:flex}.calorie-input input{color:#476441;background:0 0;border:0;width:90px;min-width:0;max-width:55%;padding:0;font-family:Manrope,sans-serif;font-size:24px;font-weight:650}.calorie-input>span{color:#919d82;font-size:10px}.calorie-input input:disabled{color:#adb2a1}.calorie-input input::placeholder{color:#c3caba}.meal-goal .plain-progress{height:4px;margin-top:10px}.meal-goal.over .plain-progress i{background:#d5ab76}.meal-goal.skipped .plain-progress i{background:#c1c7b9}.meal-goal-actions{justify-content:space-between;gap:5px;margin-top:15px;display:flex}.meal-goal-actions button{color:#7f916c;align-items:center;gap:3px;padding:5px 0;font-size:9px;display:flex}.meal-goal-actions .meal-done{color:#4d7f37}.calorie-summary{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;margin:0 23px 16px;padding-top:14px;display:flex}.calorie-summary strong{color:#6e8758;font-size:11px;font-weight:600}.calorie-summary>span{color:#9ba58b;font-size:8px}.food-hint{color:#939e85;padding:0 23px 22px;font-size:10px;line-height:1.8}.weekday-picker{border:0;margin:20px 0 0;padding:0}.weekday-picker legend{color:#6b7c5e;margin-bottom:10px;font-size:11px}.weekday-picker>div{gap:6px;display:flex}.weekday-picker button{color:#9aa48c;background:#fafbf6;border:1px solid #e1e7d9;border-radius:8px;flex:1;min-width:0;padding:9px 7px;font-size:10px}.weekday-picker button.selected{color:#fff;background:#345f46;border-color:#345f46}.weekday-picker>small{color:#96a087;margin-top:10px;font-size:10px;line-height:1.6;display:block}.form-error{background:#fff4eb;border-radius:7px;padding:10px;color:#a75639!important}.account-link{text-align:center;color:#819270;text-underline-offset:3px;margin-top:18px;font-size:11px;display:block}.celebration{pointer-events:none;z-index:140;position:fixed;inset:0;overflow:hidden}.celebration span{opacity:0;font-size:35px;animation:2s ease-out forwards celebrate;position:absolute;bottom:5%}.toast{border:1px solid #ffffff20;animation:.25s toast-in}.onboarding{background:#f7f8f3;grid-template-columns:1fr 1.08fr;min-height:100dvh;display:grid}.welcome-story{color:#ecf5df;background:radial-gradient(at 10% 90%,#486647,#193f35 75%);flex-direction:column;padding:45px 55px;display:flex;position:relative;overflow:hidden}.welcome-story .brand{letter-spacing:-1px;font-size:32px}.welcome-story .brandmark{background:#ffffff15}.welcome-story .brand small{color:#c2d2b7;letter-spacing:1.4px;font-size:7px}.welcome-main{margin:auto 0;padding:40px 0}.welcome-art{color:#d1e8a3;text-align:center;width:90px;font-size:90px;line-height:1.2;animation:24s linear infinite slow-turn;display:block}.welcome-main .eyebrow{color:#b9d09e;margin:30px 0 18px}.welcome-main h1{letter-spacing:-2.5px;font-size:59px;font-weight:600;line-height:1.2}.welcome-main h1 em{color:#c6e0a1;font-style:normal;font-weight:500}.welcome-main p{color:#b3c9ab;margin-top:24px;font-size:13px;line-height:1.9}.welcome-chips{flex-wrap:wrap;gap:10px;margin-top:30px;display:flex}.welcome-chips>span{color:#c0d6b1;background:#fff03;border:1px solid #d0e6b525;border-radius:25px;padding:9px 13px;font-size:10px}.welcome-foot{color:#b4cda7;align-items:center;gap:9px;font-size:11px;display:flex}.setup-area{flex-direction:column;justify-content:center;align-items:center;padding:45px;display:flex}.setup-card{width:100%;max-width:440px}.setup-progress{align-items:center;gap:10px;margin-bottom:38px;display:flex}.setup-step{color:#9da890;background:#e8ecdf;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;font-size:11px;display:flex}.setup-step.active{color:#fff;background:#5d8051}.setup-progress>i{background:#d9e1cd;width:35px;height:1px}.setup-progress>small{color:#8e9d7b;margin-left:auto;font-size:10px}.setup-card h2{letter-spacing:-1px;margin:0 0 13px;font-size:29px}.setup-card p{color:#89967c;margin-bottom:24px;font-size:12px;line-height:1.9}.setup-card form>label,.setup-card .form-row>label{color:#718360;flex-direction:column;gap:9px;margin-top:20px;font-size:11px;font-weight:500;display:flex}.setup-card input{color:#48613a;background:#fff;border:1px solid #dfe5d6;border-radius:8px;width:100%;min-width:0;padding:13px 14px;font-size:14px}.setup-card label>small{color:#9da88c;font-size:10px;font-weight:400;line-height:1.7}.setup-card .primary{width:100%;margin-top:28px}.setup-privacy{color:#a0ab91;text-align:center;margin-top:28px;font-size:10px}.setup-meal-grid{grid-template-columns:1fr 1fr;gap:18px 16px;margin-top:23px;display:grid}.setup-meal-grid>label{color:#7e8c6d;flex-direction:column;gap:9px;font-size:11px;display:flex}.setup-meal-grid>label>span{align-items:center;gap:6px;display:flex}.setup-meal-grid>label>div{position:relative}.setup-meal-grid input{padding-right:45px}.setup-meal-grid>label>div>span{color:#a1ab93;font-size:10px;position:absolute;top:15px;right:12px}.setup-total{background:#eaf0e0;border-radius:9px;justify-content:space-between;align-items:center;margin-top:24px;padding:18px;display:flex}.setup-total>span{color:#7a9065;font-size:11px}.setup-total strong{color:#5b7845;font-family:Manrope,sans-serif;font-size:22px;font-weight:650}.setup-total small{font-family:DM Sans,sans-serif;font-size:11px;font-weight:400}.setup-card .setup-note{margin:16px 0 0;font-size:10px}.setup-secondary{justify-content:space-between;align-items:center;gap:15px;margin-top:19px;display:flex}.setup-secondary button{color:#8b9a79;align-items:center;gap:6px;font-size:11px;display:flex}.setup-secondary button:last-child{text-underline-offset:3px;text-decoration:underline}@keyframes check-pop{0%{transform:scale(.8)}60%{transform:scale(1.2)}to{transform:scale(1)}}@keyframes celebrate{0%{opacity:0;transform:translateY(0)rotate(-20deg)}15%{opacity:1}85%{opacity:1}to{opacity:0;transform:translateY(-65vh)rotate(35deg)}}@keyframes toast-in{0%{opacity:0;margin-bottom:-10px}to{opacity:1;margin-bottom:0}}@keyframes slow-turn{to{transform:rotate(360deg)}}@media (max-width:1100px){.welcome-story{padding:35px}.welcome-main h1{font-size:49px}.setup-area{padding:35px}.meal-goals{gap:10px;padding:0 17px 17px}.meal-goal{padding:13px}.meal-goal-actions{flex-wrap:wrap}}@media (max-width:760px){.onboarding{flex-direction:column;display:flex}.welcome-story{padding:25px 24px 28px}.welcome-story .brand{font-size:26px}.welcome-main{padding:20px 0 0;position:relative}.welcome-art{width:65px;font-size:65px;position:absolute;top:22px;right:0}.welcome-main h1{letter-spacing:-1px;max-width:240px;font-size:33px}.welcome-main h1 br{display:none}.welcome-main h1 em{display:block}.welcome-main .eyebrow{margin:0 0 10px;font-size:7px}.welcome-main p{margin-top:12px;font-size:11px;line-height:1.7}.welcome-chips,.welcome-foot{display:none}.setup-area{padding:28px 24px 35px}.setup-progress{margin-bottom:25px}.setup-card h2{font-size:25px}.setup-card p{font-size:12px}.setup-card input{padding:13px 11px;font-size:16px}.setup-card .form-row{gap:11px}.setup-card form>label,.setup-card .form-row>label{font-size:11px}.setup-meal-grid input{padding-right:40px}.setup-meal-grid{gap:18px 12px}.meal-goals{gap:10px;padding:0 18px 17px}.meal-goal{padding:13px 12px}.calorie-input input{width:85px;max-width:55%;font-size:26px}.calorie-input>span{font-size:9px}.meal-goal-head h3{font-size:12px}.meal-goal-head>span:last-child{font-size:9px;line-height:1.5}.meal-goal-actions{flex-wrap:wrap;gap:10px;margin-top:12px}.meal-goal-actions button{padding:6px 0;font-size:10px}.calorie-summary{flex-direction:column;align-items:flex-start;gap:5px;margin-left:18px;margin-right:18px}.calorie-summary>span{font-size:9px}.food-hint{padding-left:18px;padding-right:18px;font-size:10px}.weekday-picker>div{gap:4px}.weekday-picker button{min-height:38px;padding:10px 3px;font-size:10px}.habit-tag{white-space:normal;text-align:center;max-width:65px;font-size:8px;line-height:1.6;display:block}.habit{gap:9px}.habit-icon{width:29px;height:29px}.habit p,.schedule-badge{font-size:9px}.hero-copy h2{max-width:175px;font-size:21px}.ring-sparkle{font-size:22px}.brand{font-size:26px}.mobile-brand{font-size:23px}}@media (prefers-reduced-motion:reduce){.celebration{display:none}.welcome-art{animation:none}.sidebar nav button:hover,.mobile-nav button:hover,.meal-goal:hover,.outlined:hover,.tick:hover,.mini-card:hover{transform:none}}.login-lock{color:#72925c;background:#e8eedf;border-radius:16px;justify-content:center;align-items:center;width:50px;height:50px;margin-bottom:28px;display:flex}.login-card{max-width:410px}.login-card select{color:#47613a;background:#fff;border:1px solid #dfe5d6;border-radius:8px;width:100%;min-width:0;padding:13px 14px;font-size:15px}.password-field{position:relative}.password-field input{padding-right:44px}.password-field button{color:#94a185;justify-content:center;align-items:center;width:35px;height:35px;display:flex;position:absolute;top:6px;right:7px}.login-error,.login-success{border-radius:9px;margin-bottom:20px;padding:13px 16px;font-size:12px;line-height:1.8}.login-error{color:#a36c48;background:#fff0e7;border:1px solid #ead5c5}.login-success{color:#6a8752;background:#eaf2df;border:1px solid #dae7c8}.owner-setup{background:#edf2e4;border:1px solid #dfe8d2;border-radius:11px;margin-top:22px;padding:20px}.owner-setup>svg{color:#8da275;margin-bottom:9px}.owner-setup h3{color:#647d4e;margin-bottom:8px;font-size:14px}.owner-setup p{margin-bottom:0;font-size:11px;line-height:1.8}.owner-setup .primary{margin-top:20px;font-size:11px;text-decoration:none}.switch-profile{color:#7b8d6b;white-space:nowrap;border:1px solid #dfe6d6;border-radius:7px;padding:7px 10px;font-size:10px}.switch-profile:hover{background:#eaf0e1}.account-actions{flex-direction:column;gap:0;display:flex}.account-actions button{width:100%;font-size:11px;text-decoration:underline}.login-card .setup-secondary{margin-top:24px}.login-card .setup-secondary button{text-align:left;font-size:11px}.login-page .welcome-main h1{font-size:53px}@media (max-width:760px){.login-page .welcome-main h1{font-size:31px}.login-card select{font-size:16px}.login-lock{border-radius:12px;width:40px;height:40px;margin-bottom:20px}.login-page .setup-area{padding-top:30px}.switch-profile{padding:6px;font-size:9px}.top-actions{gap:8px}.top-actions .sync span{display:none}.login-card .setup-secondary{gap:20px}.login-page .welcome-story{padding-bottom:23px}.login-page .welcome-main{padding-top:15px}.login-page .welcome-main p{margin-top:10px}}.goal-quick-edit{opacity:.65;width:25px;height:26px;transition:opacity .2s,transform .2s}.goal-quick-edit:hover{opacity:1;transform:rotate(-8deg)}.mood-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.day-ended{color:#8e956d;background:#fffffa66;border:1px solid #dcdcc8;border-radius:20px;align-items:center;gap:4px;padding:5px 8px;font-size:9px;display:flex}.mood-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin:18px 0 21px;display:grid}.mood-grid button{background:#fff6;border:1px solid #e1decc;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:7px;min-width:0;padding:10px 3px;transition:transform .2s,background .2s,border-color .2s;display:flex}.mood-grid button:hover{background:#fff;transform:translateY(-3px)}.mood-grid button.selected{background:#fff8dc;border:1.5px solid #b4ad7d;box-shadow:0 3px 8px #988d4620}.mood-grid button>span{font-size:23px;line-height:1.25}.mood-grid small{color:#969070;white-space:normal;text-align:center;font-size:8px;line-height:1.2}.reflection-label{color:#928b6c;flex-direction:column;gap:8px;font-size:11px;display:flex}.mood-panel textarea{background:#ffffff7a}.end-day-button{color:#fffdf1;background:#8b8967;border:1px solid #b7b18c;border-radius:8px;justify-content:center;align-items:center;gap:8px;width:100%;margin-top:14px;padding:12px;font-size:11px;transition:background .2s,transform .2s;display:flex}.end-day-button:hover{background:#757451;transform:translateY(-2px)}.mood-panel>span{line-height:1.8}.history-mood{color:#9a936f;background:#f6f3e9;border-radius:5px;margin-top:7px;padding:5px 7px;font-size:10px;display:inline-flex}.upcoming-panel{margin-top:22px}.upcoming-panel .panel-heading>svg{color:#9bac86}.upcoming-row{border-top:1px solid var(--line);align-items:center;gap:15px;padding:18px 22px;display:flex}.upcoming-row>div{flex:1;min-width:0}.upcoming-row h3{font-size:12px}.upcoming-row p{color:#99a28c;margin-top:5px;font-size:10px;line-height:1.8}.future-date{color:#70865b;text-align:center;background:#f0f4e7;border-radius:6px;min-width:95px;padding:8px;font-size:10px;line-height:1.6}.upcoming-panel .panel-heading p{line-height:1.8}.modal input[type=time],.modal input[type=date]{min-height:42px}@media (max-width:1100px) and (min-width:761px){.mood-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mood-grid button{flex-direction:row;gap:8px;padding:9px 5px}.mood-grid small{font-size:9px}.mood-grid button>span{font-size:22px}}@media (max-width:760px){.mood-grid{gap:8px}.mood-grid button{min-height:70px;padding:12px 3px}.mood-grid button>span{font-size:27px}.mood-grid small{font-size:9px}.reflection-label{font-size:12px}.end-day-button{padding:13px;font-size:12px}.day-ended,.history-mood{font-size:9px}.upcoming-row{flex-wrap:wrap;gap:9px;padding:16px}.future-date{min-width:80px;font-size:9px}.upcoming-row>div{flex-basis:calc(100% - 95px)}.upcoming-row>button{margin-left:auto}.upcoming-row>button+button{margin-left:0}.upcoming-row p{font-size:9px}.goal-quick-edit{width:23px}.habit-tag{display:none}.habit p{font-size:10px}.modal .form-row>label input[type=date],.modal .form-row>label input[type=time]{padding:11px 5px;font-size:14px}}@media (prefers-reduced-motion:reduce){.mood-grid button:hover,.end-day-button:hover,.goal-quick-edit:hover{transform:none}}@media (max-width:760px){.habit-tag{max-width:52px;font-size:8px;display:block}}
