@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Prompt:wght@300;400;500;600;700&display=swap');
:root{font-family:Prompt,system-ui,sans-serif;color:#20342d;background:#f7f6f1;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select{font:inherit}button{cursor:pointer}h1,h2,h3,p{margin-top:0}em{font-style:normal;color:#b6d871}a{color:inherit}.loading{min-height:100vh;display:grid;place-items:center;color:#66756d}.brand{display:flex;align-items:center;gap:12px;font-family:'DM Sans',sans-serif;font-size:24px;font-weight:800;letter-spacing:-1px;color:#1b3b30}.brand-mark{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:13px;background:#203f32;color:#d8f48c;font-family:'DM Sans',sans-serif;font-size:23px;font-weight:800;letter-spacing:-3px;padding-right:3px}.eyebrow{display:block;color:#8eaa56;font-family:'DM Sans',Prompt,sans-serif;font-size:11px;font-weight:800;letter-spacing:2px;margin-bottom:8px}.eyebrow.light{color:#d6f18e}.button{border:0;border-radius:12px;padding:13px 20px;font-size:13px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:10px;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button:disabled{opacity:.5;cursor:wait}.button.primary{background:#244836;color:white}.button.primary:hover{background:#153b28}.button.soft{background:#fff8e9;color:#55472e}.button.outline{border:1px solid #d8ded4;background:white;color:#31483b}.button.wide{width:100%;justify-content:space-between}.login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(420px,1fr) minmax(420px,1fr)}.login-story{background:#1e4234;color:#fff;padding:45px clamp(38px,5vw,90px);position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between}.login-story .brand{color:#fff}.login-story .brand-mark{background:#d6f18e;color:#1e4234}.story-copy{position:relative;z-index:2;margin-top:auto;margin-bottom:auto}.story-copy h1{font-size:clamp(52px,6vw,96px);font-weight:500;line-height:1.2;letter-spacing:-3px;margin:10px 0 24px}.story-copy p{max-width:440px;color:#d5e2d8;font-size:16px;line-height:1.8}.story-bottom{font-size:13px;color:#d0dfd4;z-index:2}.story-orbit{position:absolute;width:500px;height:500px;border:1px solid #51705d;border-radius:50%;right:-220px;bottom:-110px}.story-orbit:before,.story-orbit:after{content:'';position:absolute;inset:55px;border:1px solid #51705d;border-radius:50%}.story-orbit:after{inset:120px}.story-orbit span:first-child{position:absolute;top:60px;left:65px;font-size:58px}.story-orbit span:nth-child(2){position:absolute;top:150px;left:180px;font-size:90px;color:#d6f18e}.story-orbit span:last-child{position:absolute;bottom:60px;left:60px;color:#d6f18e;font-size:100px}.login-panel{display:grid;place-items:center;padding:50px;background:#f7f6f1}.login-card{width:min(100%,440px)}.login-card h2{font-size:42px;font-weight:600;letter-spacing:-1.5px;margin-bottom:4px}.login-card>p{color:#7e8982;font-size:14px;margin-bottom:32px}.account-picker{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:28px}.account{background:white;border:1.5px solid #e3e8df;border-radius:18px;padding:18px;text-align:left;display:flex;align-items:center;gap:12px;color:#213b2e;transition:border .2s,box-shadow .2s}.account.selected{border-color:#829e59;box-shadow:0 0 0 4px #e5efcf}.avatar{width:40px;height:40px;border-radius:13px;display:inline-grid;place-items:center;flex:none;background:#d9ebc8;color:#355934;font-family:'DM Sans';font-weight:800}.avatar.piglet{background:#ffe1dd;color:#9a5d61}.login-card label,.profile-card label,.add-card label,.weight-card label{display:block;font-size:13px;font-weight:600;margin-bottom:10px}.login-card input,.profile-card input,.profile-card select,.add-card input,.add-card select,.weight-card input{display:block;width:100%;background:#fff;border:1px solid #dce4d9;border-radius:11px;padding:12px 14px;outline:none;color:#253b30;margin-top:8px;font-size:14px}.login-card input:focus,.profile-card input:focus,.profile-card select:focus,.add-card input:focus,.add-card select:focus,.weight-card input:focus{border-color:#83a75d;box-shadow:0 0 0 3px #e5efd8}.login-card form .button{margin-top:18px}.privacy-note{text-align:center;margin-top:26px;font-size:11px;color:#9aa49c}.app-shell{display:flex;min-height:100vh}.sidebar{width:244px;flex:none;background:#fff;border-right:1px solid #ecede7;padding:26px 18px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.sidebar .brand{margin:3px 13px 52px}.side-caption{font-family:'DM Sans';letter-spacing:2px;font-size:10px;color:#a6b0a7;margin:0 13px 12px}.side-nav{display:grid;gap:6px}.side-nav button{border:0;background:transparent;color:#78877c;text-align:left;display:flex;align-items:center;gap:14px;padding:13px 16px;border-radius:11px;font-size:13px;font-weight:500}.side-nav button span{font-size:21px;width:25px;text-align:center;line-height:1}.side-nav button:hover,.side-nav button.active{background:#eaf2dd;color:#284b38}.side-nav button.active{font-weight:600}.side-spacer{flex:1}.side-tip{background:#eff5e7;padding:17px;border-radius:15px;margin-bottom:20px}.side-tip>span{color:#72954f;font-size:25px}.side-tip strong{display:block;font-size:13px;margin-top:6px}.side-tip p{font-size:11px;line-height:1.6;color:#718070;margin:5px 0 0}.profile-mini{border:0;border-top:1px solid #edf0eb;background:#fff;display:flex;align-items:center;gap:9px;text-align:left;padding:18px 3px 0;color:#21392d}.profile-mini>span:nth-child(2){flex:1}.profile-mini strong,.profile-mini small{display:block}.profile-mini strong{font-size:12px}.profile-mini small{font-size:10px;color:#95a298}.profile-mini>span:last-child{color:#94a498}.main-area{flex:1;min-width:0}.topbar{height:82px;border-bottom:1px solid #e9ece5;padding:0 clamp(24px,4vw,62px);display:flex;align-items:center;justify-content:space-between;background:#f7f6f1}.mobile-brand{display:none}.top-date{font-size:13px;font-weight:600;color:#47604d}.top-actions{display:flex;align-items:center;gap:10px;color:#859386;font-size:12px}.top-actions button{background:transparent;border:0;color:#748779;margin-left:20px;font-size:12px;text-decoration:underline}.status-dot{width:7px;height:7px;border-radius:50%;background:#a7c65e}.content{max-width:1390px;margin:0 auto;padding:42px clamp(24px,4vw,62px) 80px}.page-intro{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:30px}.page-intro h1{font-size:clamp(29px,3vw,42px);font-weight:600;letter-spacing:-1.4px;margin:0}.page-intro h1 em{color:#83a451}.accent{color:#88aa54}.date-picker{display:flex;align-items:center;background:#fff;border:1px solid #e9ebe4;border-radius:12px;overflow:hidden;white-space:nowrap;color:#4c6050;font-size:12px}.date-picker button{background:none;border:0;padding:8px 13px;font-size:20px;color:#759079}.date-picker span{padding:0 4px}.hero-grid{display:grid;grid-template-columns:1.26fr 1fr;gap:20px}.hero-card{background:#1d4433;color:#fff;border-radius:22px;padding:30px 32px;min-height:325px;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between}.hero-tag{display:inline-block;background:#355f40;border-radius:20px;color:#d9f39a;font-size:11px;padding:7px 12px}.hero-card h2{font-size:clamp(25px,2.8vw,39px);line-height:1.35;font-weight:500;letter-spacing:-1px;margin:14px 0 9px;position:relative;z-index:1}.hero-card p{font-size:12px;color:#c8dfca;position:relative;z-index:1}.hero-link{align-self:start;background:#d8ed9b;color:#28432d;padding:11px 15px;border:0;border-radius:10px;font-weight:600;font-size:12px;z-index:1}.hero-link span{margin-left:24px}.hero-art{position:absolute;right:25px;bottom:25px;width:220px;height:230px}.hero-art>span{position:absolute;left:67px;top:60px;font-size:140px;line-height:1;color:#d5f29b;transform:rotate(-17deg)}.leaf{position:absolute;background:#91bb7d;border-radius:90% 0 90% 0;width:92px;height:45px;transform:rotate(-40deg)}.leaf-one{right:0;top:30px}.leaf-two{left:0;bottom:3px;transform:rotate(120deg);background:#77a46d}.summary-card,.card{background:#fff;border:1px solid #e9eee7;border-radius:20px;padding:27px 28px}.card-heading,.section-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.card-heading h3,.section-title h3{font-size:19px;font-weight:600;margin:0;letter-spacing:-.4px}.pill{background:#eef4e6;border-radius:30px;padding:6px 11px;color:#759b50;font-size:10px;font-weight:600;white-space:nowrap}.calorie-ring{width:204px;height:204px;margin:9px auto 4px;position:relative}.calorie-ring svg{width:100%;height:100%}.ring-text{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.ring-text small{font-size:11px;color:#92a095}.ring-text strong{font-family:'DM Sans';font-size:43px;letter-spacing:-2px;color:#1e4031;line-height:1.15}.ring-text span{font-size:10px;color:#9fa9a1}.summary-bottom{border-top:1px solid #edf0e9;display:flex;justify-content:space-between;padding-top:15px}.summary-bottom div{display:flex;flex-direction:column;gap:2px}.summary-bottom small{font-size:10px;color:#9aaa9c}.summary-bottom strong{font-family:'DM Sans';font-size:22px}.summary-bottom strong span{font-family:Prompt;font-size:10px;font-weight:400;color:#9aaa9c}.danger{color:#ce6c5e!important}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px;margin:20px 0}.mini-stat{background:#fff;border:1px solid #e9eee7;border-radius:17px;padding:17px;display:flex;align-items:center;gap:15px}.stat-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:14px;font-size:26px;flex:none}.stat-icon.fire{background:#fff0df;color:#d68d54}.stat-icon.mint{background:#e5f2ea;color:#4e9b6a}.stat-icon.purple{background:#f2eaf7;color:#a070ac}.mini-stat span,.mini-stat strong{display:block}.mini-stat div:last-child>span{font-size:11px;color:#929d94}.mini-stat strong{font-family:'DM Sans';font-size:24px;line-height:1.25}.mini-stat strong small{font-family:Prompt;font-size:11px;font-weight:400;color:#9ca9a0}.two-col{display:grid;grid-template-columns:1.25fr 1fr;gap:20px}.text-link{background:none;border:0;color:#7eaa57;font-size:11px;font-weight:600;white-space:nowrap}.plan-list{margin-top:17px}.plan-row{display:flex;align-items:center;gap:15px;border-top:1px solid #eff1eb;padding:15px 0}.plan-row>div{flex:1}.plan-row strong,.plan-row small{display:block}.plan-row strong{font-size:12px}.plan-row small{font-size:10px;color:#97a49a;margin-top:3px}.plan-row>span:last-child{font-size:20px;color:#a5b59f}.plan-num{font-family:'DM Sans';font-size:12px;color:#97ae76}.shabu-card{background:#f6e7ce;border-radius:20px;padding:25px 28px;position:relative;overflow:hidden}.shabu-card h3{font-size:24px;font-weight:600;margin:3px 0 3px}.shabu-card p{font-size:11px;max-width:260px;color:#806d52}.shabu-emoji{font-size:62px;position:absolute;right:24px;top:30px;transform:rotate(10deg)}.shabu-number{font-size:11px;border-top:1px solid #e8d7b9;padding-top:13px;margin:26px 0 16px}.shabu-number strong{font-family:'DM Sans';font-size:29px;color:#344535}.shabu-number small{color:#907e65}.safety-note{display:flex;align-items:start;gap:10px;color:#8b988c;font-size:10px;line-height:1.7;margin-top:20px}.safety-note span{font-size:16px}.safety-note p{margin:0}.food-grid,.move-grid,.progress-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.add-card form{margin-top:22px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.add-card form .button{margin-top:14px}.form-help{font-size:10px;color:#9ca79f;line-height:1.7;margin:13px 0 0}.small-icon{font-size:20px;color:#90ae6e;background:#eff5e8;border-radius:10px;width:36px;height:36px;text-align:center;line-height:35px}.food-progress{margin-top:32px}.food-progress strong{font-family:'DM Sans';font-size:43px;letter-spacing:-2px}.food-progress span{font-size:13px;color:#a0aa9f}.progress-track{height:10px;border-radius:10px;background:#e7eddf;overflow:hidden;margin:13px 0 7px}.progress-track span{display:block;height:100%;background:#a6c96b;border-radius:10px}.food-progress small{font-size:11px;color:#778c74}.tip-box{background:#eef5e8;border-radius:13px;padding:14px;display:flex;align-items:start;gap:12px;margin-top:28px}.tip-box span{font-size:22px;color:#85a568}.tip-box p{font-size:11px;color:#6c886b;line-height:1.6;margin:0}.entries-card{margin-bottom:20px}.count-pill{font-size:11px;color:#8ca87b;background:#eff5e9;padding:7px 12px;border-radius:30px}.entry-list{margin-top:16px}.entry{display:flex;align-items:center;gap:14px;padding:12px 0;border-top:1px solid #f0f2ed}.entry-icon{width:42px;height:42px;display:grid;place-items:center;background:#fff3de;color:#c79d4a;border-radius:12px;font-size:20px;flex:none}.entry-icon.green{background:#ecf5e7;color:#78a267}.entry-main{flex:1;min-width:0}.entry-main strong,.entry-main small{display:block}.entry-main strong{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.entry-main small{font-size:10px;color:#9da79e}.entry>strong{font-family:'DM Sans';font-size:17px;white-space:nowrap}.entry>strong small{font-family:Prompt;font-size:10px;font-weight:400;color:#9da99f}.delete{background:none;border:0;color:#b0b9b0;font-size:20px;padding:0 4px}.delete:hover{color:#cf7565}.empty{text-align:center;padding:42px 15px;color:#9ba89a}.empty span{display:block;font-size:34px;margin-bottom:5px}.empty strong{display:block;color:#5d705f;font-size:13px}.empty p{font-size:11px;margin:4px 0 0}.move-hero{background:#d5e8c9;border-radius:20px;padding:28px 32px;display:flex;justify-content:space-between;min-height:160px;margin-bottom:20px;overflow:hidden}.move-hero h2{font-size:27px;margin:0 0 5px}.move-hero p{font-size:12px;color:#577456;margin:0}.move-hero .eyebrow{color:#639453}.move-symbol{font-size:130px;line-height:1;color:#a7cf96;transform:rotate(15deg);margin:-20px 30px -30px 0}.routine-list{margin-top:18px}.routine-row{display:flex;align-items:start;gap:17px;padding:14px 0;border-top:1px solid #edf1e9}.routine-number{background:#ebf4e5;border-radius:9px;padding:8px;color:#78a366;font-family:'DM Sans';font-size:12px;font-weight:700}.routine-row strong,.routine-row small{display:block}.routine-row strong{font-size:12px}.routine-row small{font-size:10px;color:#93a194;line-height:1.6;margin-top:3px}.routine-footer{font-size:10px;color:#819681;background:#f3f7ee;padding:12px;border-radius:9px;margin-top:7px}.weight-display{margin:25px 0 4px}.weight-display strong{font-family:'DM Sans';font-size:62px;line-height:1;letter-spacing:-3px}.weight-display span{font-size:16px;color:#a1ada0}.weight-card>p{font-size:11px;color:#8f9b91}.weight-card form{display:flex;gap:10px;align-items:end;margin-top:25px}.weight-card form label{flex:1;margin:0}.weight-card form button{height:46px}.bar-chart{height:195px;display:grid;grid-template-columns:repeat(7,1fr);gap:9px;margin-top:22px}.bar-col{display:flex;flex-direction:column;align-items:center;gap:9px;font-size:10px;color:#9faa9e}.bar-zone{height:165px;width:100%;position:relative;border-bottom:1px solid #e9eee6;display:flex;align-items:end;justify-content:center}.bar{width:60%;background:#a7c87d;border-radius:6px 6px 0 0;z-index:1}.bar.over{background:#e6b78b}.target-line{position:absolute;width:100%;border-top:1px dashed #bdcbb3;z-index:2}.chart-legend{font-size:10px;color:#9aa79c}.chart-legend i{display:inline-block;width:12px;border-top:1px dashed #a9bb9b;vertical-align:middle}.insight-card{margin-bottom:20px}.insight-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:22px}.insight-grid>div{background:#f7f9f3;border-radius:12px;padding:17px}.insight-grid small,.insight-grid strong{display:block}.insight-grid small{font-size:10px;color:#94a093}.insight-grid strong{font-family:'DM Sans';font-size:22px;margin-top:8px}.insight-grid strong span{font-family:Prompt;font-size:10px;font-weight:400;color:#a0aa9e}.tiny-note{font-size:10px;color:#a4ada4;margin:16px 0 0}.shabu-detail{background:#f7eace;border-radius:20px;padding:26px 30px}.shabu-detail-title{display:flex;align-items:center;gap:15px}.shabu-detail-title>span{font-size:38px}.shabu-detail h3{font-size:23px;margin:0}.shabu-detail>p{font-size:12px;color:#6f654f;line-height:1.8;max-width:860px;margin:18px 0}.shabu-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.shabu-steps>div{background:#fff9eb;border-radius:13px;padding:16px}.shabu-steps span{display:block;color:#bd9d5e;font-family:'DM Sans';font-size:11px;font-weight:800;margin-bottom:7px}.shabu-steps strong{font-size:12px}.shabu-steps p{font-size:10px;color:#94876d;line-height:1.6;margin:6px 0 0}.profile-page{min-height:100vh;background:#eef3e8;display:grid;place-items:center;padding:30px 16px}.profile-card{background:#fff;width:min(100%,650px);padding:34px clamp(22px,5vw,50px);border-radius:22px;box-shadow:0 20px 70px #29452b10}.profile-card .brand{margin-bottom:32px}.profile-card h1{font-size:32px;margin:0 0 5px}.profile-card>p{font-size:12px;color:#8a998b;line-height:1.7;margin-bottom:26px}.profile-card form>label{margin-bottom:17px}.profile-card form>.form-row{margin-bottom:7px}.mode-picker{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:11px 0 22px}.mode-picker label{margin:0;cursor:pointer}.mode-picker input{position:absolute;opacity:0;width:1px;height:1px}.mode-picker span{display:block;border:1px solid #e1e8df;padding:15px;border-radius:12px;height:100%}.mode-picker input:checked+span{background:#eef6e4;border-color:#8eae65;box-shadow:0 0 0 2px #e8f3d8}.mode-picker strong,.mode-picker small{display:block}.mode-picker strong{font-size:12px}.mode-picker small{font-size:10px;color:#98a698;font-weight:400;line-height:1.5;margin-top:3px}.profile-actions{display:flex;justify-content:flex-end;gap:10px}.center-screen{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:20px}.center-screen h1{font-size:25px;margin:20px 0 4px}.center-screen p{color:#87998a;font-size:13px}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:#244436;color:#fff;padding:12px 20px;border-radius:12px;font-size:12px;z-index:100;box-shadow:0 10px 30px #18372830;max-width:min(90vw,450px);text-align:center}.bottom-nav{display:none}
@media(max-width:1100px){.sidebar{width:210px}.hero-grid{grid-template-columns:1fr 1fr}.hero-art{opacity:.45}.stat-grid{gap:10px}.mini-stat{padding:13px}.insight-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:800px){.sidebar{display:none}.topbar{height:65px;padding:0 22px}.mobile-brand{display:flex;align-items:center;gap:9px;font-family:'DM Sans';font-size:19px}.mobile-brand .brand-mark{width:32px;height:32px;border-radius:10px;font-size:19px}.top-date{display:none}.top-actions>span{display:none}.top-actions button{margin:0}.content{padding:28px 20px 100px}.bottom-nav{position:fixed;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(4,1fr);height:69px;padding-bottom:env(safe-area-inset-bottom);background:#fff;border-top:1px solid #e9eee7;z-index:20}.bottom-nav button{border:0;background:none;color:#9aaa9c;font-size:9px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px}.bottom-nav button span{font-size:21px;line-height:1.2}.bottom-nav button.active{color:#2c593d;font-weight:600}.login-shell{grid-template-columns:1fr}.login-story{min-height:310px;padding:25px}.story-copy{margin-top:35px;margin-bottom:20px}.story-copy h1{font-size:46px;margin:5px 0 10px}.story-copy p{font-size:12px;margin:0}.story-bottom{display:none}.story-orbit{width:300px;height:300px;right:-130px;bottom:-70px}.story-orbit span:nth-child(2){font-size:50px;left:100px;top:80px}.login-panel{padding:35px 20px}.login-card h2{font-size:32px}.hero-grid,.two-col,.food-grid,.move-grid,.progress-grid{grid-template-columns:1fr}.hero-card{min-height:260px}.summary-card{min-height:310px}.calorie-ring{margin-top:0}.stat-grid{grid-template-columns:repeat(3,1fr)}.mini-stat{display:block;text-align:center}.stat-icon{margin:auto auto 7px;width:39px;height:39px;font-size:20px}.shabu-card{min-height:230px}.page-intro{align-items:start}.date-picker{margin-top:4px}}
@media(max-width:530px){.content{padding:24px 16px 95px}.page-intro{display:block}.page-intro h1{font-size:29px}.date-picker{display:inline-flex;margin-top:14px}.hero-card{padding:26px}.hero-card h2{font-size:29px}.hero-art{right:-15px;opacity:.34}.stat-grid{gap:8px}.mini-stat{padding:13px 3px}.mini-stat strong{font-size:19px}.mini-stat div:last-child>span{font-size:9px}.summary-card,.card{padding:23px 20px}.shabu-steps{grid-template-columns:1fr}.insight-grid{grid-template-columns:1fr 1fr}.insight-grid>div{padding:13px}.insight-grid strong{font-size:19px}.weight-card form{display:block}.weight-card form button{margin-top:10px;width:100%}.mode-picker{grid-template-columns:1fr}.profile-actions .button{flex:1}.move-symbol{font-size:78px;margin:0}.move-hero{padding:22px}.move-hero h2{font-size:22px}}
