﻿*{box-sizing:border-box}
body{margin:0;font-family:Arial,"Microsoft YaHei",sans-serif;background:#eef2ed;color:#17201b}
button,input,select{font:inherit}button{cursor:pointer;border:0;border-radius:8px;padding:10px 14px;background:#177245;color:white;font-weight:700}
.side{position:fixed;inset:0 auto 0 0;width:260px;background:#111b15;color:white;padding:22px;display:flex;flex-direction:column;gap:12px}.brand{margin-bottom:16px}.brand b{display:block;font-size:22px}.brand span,.vip p{color:#b9c8bf;font-size:13px}.nav{width:100%;text-align:left;background:transparent;color:#d9e5dd}.nav.active,.nav:hover{background:#20352a}.vip{margin-top:auto;border:1px solid #375243;border-radius:10px;padding:14px;background:#19271f}.vip span{display:inline-block;background:#dff3e7;color:#0f6a3c;border-radius:999px;padding:4px 8px;font-weight:800}
main{margin-left:260px;padding:22px}.hero{min-height:320px;border-radius:12px;color:white;padding:38px;display:flex;align-items:end;background-image:linear-gradient(90deg,rgba(7,18,12,.9),rgba(7,18,12,.55),rgba(7,18,12,.1)),url('assets/meal-hero.png');background-size:cover;background-position:center}.hero h1{max-width:760px;font-size:48px;line-height:1.05;margin:8px 0 14px}.hero p{max-width:680px;color:#d8eadf}.hero button{margin-right:8px}.hero button+button,.secondary{background:white;color:#177245}
.view{display:none;margin-top:18px}.view.active{display:block}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.metrics article,.panel,.pricing article,.paybox,.payresult,.api{background:white;border:1px solid #dfe6e1;border-radius:10px;padding:16px;box-shadow:0 12px 34px rgba(28,45,34,.08)}.metrics span{display:block;color:#667169}.metrics b{font-size:34px}.cards,.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.cards{margin-top:14px}.card,.food{background:white;border:1px solid #dfe6e1;border-radius:10px;padding:14px}.lock{display:inline-block;background:#17201b;color:white;border-radius:999px;padding:4px 8px;font-size:12px}.tag{display:inline-block;margin:3px 3px 0 0;padding:3px 7px;border-radius:999px;background:#eef5f0;color:#356046;font-size:12px}
.tools{display:flex;gap:10px;margin:12px 0}.tools input,.tools select,.paybox select{height:42px;border:1px solid #dfe6e1;border-radius:8px;padding:0 12px;background:white}.tools input{flex:1}.builder{display:grid;grid-template-columns:1fr 360px;gap:14px}.plate{position:sticky;top:18px;background:white;border:1px solid #dfe6e1;border-radius:10px;padding:16px}.mealrow{display:grid;grid-template-columns:1fr 86px 28px;gap:8px;align-items:center;border-bottom:1px solid #edf1ec;padding:8px 0}.mealrow input{width:86px;border:1px solid #dfe6e1;border-radius:8px;padding:7px}.total{margin-top:12px;background:#f6faf7;border-radius:8px;padding:10px}
table{width:100%;border-collapse:collapse;background:white;border-radius:10px;overflow:hidden}th,td{padding:12px;border-bottom:1px solid #dfe6e1;text-align:left;white-space:nowrap}th{background:#f8fbf9;color:#526157}.pricing{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:14px}.pricing b{display:block;font-size:36px;margin:8px 0}.pricing article:nth-child(2){border-color:#177245;box-shadow:0 14px 42px rgba(23,114,69,.16)}
.paybox{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;align-items:end}.paybox label{display:grid;gap:6px}.payresult{margin-top:12px;line-height:1.7}.api{margin-top:12px}.api pre{white-space:pre-wrap;background:#111b15;color:#dff3e7;padding:12px;border-radius:8px}.modal{position:fixed;inset:0;background:rgba(0,0,0,.45);display:grid;place-items:center}.modal>div{width:min(420px,calc(100% - 30px));background:white;border-radius:12px;padding:22px}.modal[hidden]{display:none}
@media(max-width:900px){.side{position:static;width:auto}.side nav{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}main{margin-left:0}.hero h1{font-size:34px}.metrics,.builder,.pricing,.paybox{grid-template-columns:1fr}.hero{padding:24px}.table-wrap{overflow:auto}}

.hint{color:#667169;font-size:13px;line-height:1.7}.section-title{display:flex;align-items:end;justify-content:space-between;gap:12px;margin:18px 0 12px}.section-title p{margin:0;color:#667169;font-size:12px;text-transform:uppercase}.section-title h2{margin:4px 0 0}.trend-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.trend{background:white;border:1px solid #dfe6e1;border-radius:12px;overflow:hidden;box-shadow:0 12px 34px rgba(28,45,34,.08)}.trend img{width:100%;aspect-ratio:1/1;object-fit:cover;display:block;filter:brightness(1.12) saturate(1.20) contrast(1.04);background:#eef3ee}.trend:nth-child(3) img{filter:brightness(1.00) saturate(1.04) contrast(1.02)}.trend div{padding:12px}.trend h3{margin:0 0 8px}.trend p{margin:0;color:#667169;line-height:1.55;font-size:13px}.mealrow{grid-template-columns:1fr 74px 116px 28px}.mealrow select{width:116px;border:1px solid #dfe6e1;border-radius:8px;padding:7px;background:white}.month-plan{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}.day,.locked-month{background:white;border:1px solid #dfe6e1;border-radius:10px;padding:14px;box-shadow:0 10px 28px rgba(28,45,34,.07)}.day b{display:block;margin-bottom:8px}.day p{margin:7px 0;color:#334238;line-height:1.45}.day span{display:inline-grid;place-items:center;width:24px;height:24px;margin-right:8px;border-radius:999px;background:#dff3e7;color:#0f6a3c;font-weight:800}.locked-month{grid-column:1/-1;text-align:center;padding:28px}.table-wrap{overflow:auto}@media(max-width:1100px){.trend-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.trend-grid{grid-template-columns:1fr}.section-title{align-items:start;flex-direction:column}.mealrow{grid-template-columns:1fr 72px}.mealrow select{grid-column:1/2;width:100%}}

.preference-panel,.scan-layout .panel,.coach-grid .panel{background:white;border:1px solid #dfe6e1;border-radius:12px;padding:16px;box-shadow:0 12px 34px rgba(28,45,34,.08);margin-bottom:14px}.avoid-options{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.check{display:inline-flex;align-items:center;gap:6px;padding:8px 10px;border:1px solid #dfe6e1;border-radius:999px;background:#f8fbf9}.pricing{grid-template-columns:repeat(auto-fill,minmax(190px,1fr))}.pricing p{color:#667169;line-height:1.5}.scan-layout,.coach-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.photo-preview{display:block;width:100%;max-height:320px;object-fit:cover;border-radius:10px;background:#edf1ec;margin:10px 0}.scan-results{display:grid;gap:8px}.scan-row{display:grid;grid-template-columns:1.1fr 72px 100px 48px;gap:8px;align-items:center}.scan-row input,.scan-row select,.coach-grid input,.coach-grid select{height:38px;border:1px solid #dfe6e1;border-radius:8px;padding:0 8px;background:white}.coach-pricing{display:grid;gap:8px}.coach-pricing div{display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:center;padding:10px;border:1px solid #dfe6e1;border-radius:8px}.client-plan{margin-top:12px;background:#f6faf7;border-radius:10px;padding:12px}.side{overflow:auto}.nav{min-height:40px}@media(max-width:760px){body{padding-bottom:78px}.side{position:fixed;inset:auto 0 0 0;width:auto;z-index:5;padding:8px;background:#111b15}.brand,.vip{display:none}.side{display:block}.side .nav{display:inline-flex;width:calc(25% - 4px);justify-content:center;text-align:center;font-size:12px;padding:9px 4px;margin:2px}.side .nav:nth-of-type(n+5){display:none}main{margin-left:0;padding:12px}.hero{min-height:280px}.hero h1{font-size:30px}.metrics{grid-template-columns:repeat(2,1fr)}.scan-layout,.coach-grid{grid-template-columns:1fr}.scan-row{grid-template-columns:1fr 66px}.scan-row select:nth-of-type(2){grid-column:1/2}.pricing{grid-template-columns:1fr}.tools{flex-direction:column}.tools input,.tools select,.tools button{width:100%}}

.account-grid,.market-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}.account-grid input,.market-grid input,.inline-actions input{height:40px;border:1px solid #dfe6e1;border-radius:8px;padding:0 10px;background:white;margin:6px 0}.inline-actions{display:grid;grid-template-columns:1fr auto;gap:8px}.account-status,.code-box,#locationStatus,#priceIndex,#budgetMenu{margin-top:10px;background:#f6faf7;border-radius:10px;padding:12px;line-height:1.65}.student-list{margin-top:10px}.student-list p{display:flex;justify-content:space-between;gap:8px;align-items:center;background:#f8fbf9;border:1px solid #dfe6e1;border-radius:8px;padding:8px}.student-list button{padding:6px 9px;background:#b74232}.student-verify{border-color:#177245!important;background:#f4fbf6!important}.market-grid .day{margin-bottom:8px}.account-grid .panel,.market-grid .panel{min-height:190px}@media(max-width:760px){.inline-actions{grid-template-columns:1fr}.account-grid,.market-grid{grid-template-columns:1fr}}
.community-layout{display:grid;grid-template-columns:360px 1fr;gap:14px}.community-layout textarea{width:100%;min-height:120px;border:1px solid #dfe6e1;border-radius:8px;padding:10px;resize:vertical}.post-list{display:grid;gap:10px}.post{background:#f8fbf9;border:1px solid #dfe6e1;border-radius:10px;padding:12px}.post p{color:#334238;line-height:1.55}.post span{color:#667169;font-size:12px}.member-market,.coach-market{margin:14px 0}@media(max-width:760px){.community-layout{grid-template-columns:1fr}}
.profile-panel{grid-column:span 2}.profile-table{width:100%;border:1px solid #dfe6e1;border-radius:10px;overflow:hidden;background:white;margin-top:8px}.profile-table th{width:74px;background:#f6faf7;color:#526157;font-size:13px}.profile-table td{min-width:110px}.profile-table th,.profile-table td{padding:9px;border-bottom:1px solid #e8eee9}.profile-table tr:last-child th,.profile-table tr:last-child td{border-bottom:0}.profile-table input,.profile-table select{width:100%;height:38px;border:1px solid #dfe6e1;border-radius:8px;padding:0 10px;background:#fff;box-sizing:border-box}.profile-save{width:100%;margin-top:10px}.macro-target,.plate-gap{margin-top:10px;background:#f6faf7;border:1px solid #dfe6e1;border-radius:10px;padding:10px}.macro-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.macro-grid div{background:white;border:1px solid #dfe6e1;border-radius:8px;padding:10px}.macro-grid span{display:block;color:#667169;font-size:12px}.macro-grid b{display:block;margin-top:4px;font-size:20px;color:#17201b}.macro-target p,.plate-gap p{margin:6px 0}@media(max-width:900px){.profile-panel{grid-column:auto}.macro-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.profile-table,.profile-table tbody,.profile-table tr,.profile-table th,.profile-table td{display:block;width:100%}.profile-table th{box-sizing:border-box}.profile-table td{box-sizing:border-box}}





.link-btn{display:inline;border:0;background:transparent;color:#177245;padding:0;font-weight:800;text-decoration:underline}.app-review-card .code-box p{margin:4px 0}.agreement-modal>div{width:min(720px,calc(100% - 28px));max-height:82vh;overflow:auto}.agreement-content{line-height:1.75;color:#334238}.agreement-content h3{margin-top:0}.agreement-content p{margin:10px 0}

.login-gate{position:fixed;inset:0;z-index:20;display:grid;place-items:center;background:linear-gradient(120deg,rgba(17,27,21,.92),rgba(23,114,69,.78)),url('assets/meal-hero.png');background-size:cover;background-position:center}.login-gate[hidden]{display:none}.login-card{width:min(430px,calc(100% - 30px));background:white;border-radius:18px;padding:28px;box-shadow:0 24px 80px rgba(0,0,0,.28);text-align:center}.login-card p:first-child{color:#177245;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.login-card h1{font-size:28px;line-height:1.15;margin:8px 0 18px}.login-card button{width:100%;margin-top:10px}.guest-link{background:transparent!important;color:#667169!important;font-size:13px;text-decoration:underline}.account-head{text-align:center;margin:8px 0 18px}.account-head p{margin:0;color:#667169;text-transform:uppercase;font-size:12px}.account-head h2{margin:4px 0 0;font-size:34px}.account-layout{display:grid;gap:16px;max-width:980px;margin:0 auto}.profile-feature{grid-column:auto;padding:22px}.profile-feature h3{text-align:center;font-size:24px}.account-subgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.login-settings{text-align:left;padding:18px!important}.setting-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.setting-title p{margin:0;color:#667169;text-transform:uppercase;font-size:12px}.setting-title h3{margin:3px 0 0;font-size:22px}.settings-list{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.settings-list button{background:#f6faf7;color:#177245;border:1px solid #cfe2d6;padding:12px 10px;text-decoration:none;border-radius:10px}.phone-login-panel{display:none;max-width:520px;margin:12px 0 0;text-align:left}.phone-login-panel.open{display:block}.danger-btn{width:100%;margin-top:10px;background:#b74232}.support-card button{width:100%;margin-top:10px}.support-box{background:#f6faf7;border:1px solid #dfe6e1;border-radius:10px;padding:12px;line-height:1.7}.day em{display:block;margin:6px 0 0 32px;color:#667169;font-size:12px;font-style:normal}@media(max-width:900px){.account-subgrid{grid-template-columns:1fr}}@media(max-width:760px){.account-subgrid{grid-template-columns:1fr}.account-head h2{font-size:28px}.settings-list{grid-template-columns:1fr}.setting-title{align-items:flex-start;flex-direction:column}}

/* Mobile test build */
.mobile-build-note{display:none}
@media(max-width:760px){
  html{font-size:16px}
  body{background:#f5f7f4;padding-bottom:86px;-webkit-tap-highlight-color:transparent}
  main{padding:10px 10px 18px;margin-left:0}
  .side{position:fixed;inset:auto 0 0 0;width:auto;z-index:30;display:grid;grid-template-columns:repeat(5,1fr);gap:0;padding:7px 6px calc(7px + env(safe-area-inset-bottom));background:rgba(17,27,21,.97);box-shadow:0 -10px 32px rgba(0,0,0,.18)}
  .brand,.vip{display:none!important}
  .side .nav{display:flex!important;align-items:center;justify-content:center;width:auto;min-height:48px;margin:0 2px;padding:7px 2px;border-radius:12px;text-align:center;font-size:12px;line-height:1.2;color:#d9e5dd;background:transparent}
  .side .nav.active{background:#dff3e7;color:#0f6a3c}
  .side .nav:nth-of-type(1)::before{content:'首页'}
  .side .nav:nth-of-type(2)::before{content:'今日'}
  .side .nav:nth-of-type(3)::before{content:'搭配'}
  .side .nav:nth-of-type(5)::before{content:'食谱'}
  .side .nav:nth-of-type(8)::before{content:'我的'}
  .side .nav:nth-of-type(1),.side .nav:nth-of-type(2),.side .nav:nth-of-type(3),.side .nav:nth-of-type(5),.side .nav:nth-of-type(8){font-size:0}
  .side .nav:nth-of-type(1)::before,.side .nav:nth-of-type(2)::before,.side .nav:nth-of-type(3)::before,.side .nav:nth-of-type(5)::before,.side .nav:nth-of-type(8)::before{font-size:12px;font-weight:800}
  .side .nav:nth-of-type(4),.side .nav:nth-of-type(6),.side .nav:nth-of-type(7),.side .nav:nth-of-type(9),.side .nav:nth-of-type(10){display:none!important}
  .hero{min-height:260px;border-radius:16px;padding:22px;background-position:center}
  .hero h1{font-size:30px;line-height:1.12;margin:8px 0 12px}
  .hero p{font-size:14px;line-height:1.55}
  .hero button{width:100%;margin:7px 0 0;min-height:46px}
  .metrics{grid-template-columns:repeat(2,1fr);gap:10px}.metrics article{padding:13px;border-radius:14px}.metrics b{font-size:28px}
  .section-title{margin:16px 0 10px}.trend-grid{grid-template-columns:1fr 1fr;gap:10px}.trend{border-radius:14px}.trend div{padding:10px}.trend h3{font-size:15px}.trend p{font-size:12px;line-height:1.45}
  .tools{position:sticky;top:0;z-index:6;display:grid;grid-template-columns:1fr;gap:8px;margin:10px -10px;padding:10px;background:#f5f7f4;border-bottom:1px solid #dfe6e1}.tools input,.tools select,.tools button{width:100%;height:44px;box-sizing:border-box}
  .builder{grid-template-columns:1fr}.plate{position:static;border-radius:14px}.grid,.cards{grid-template-columns:1fr;gap:10px}.food,.card,.panel{border-radius:14px}
  .food button,.card button,.panel button,button{min-height:44px}
  .table-wrap{overflow:auto;margin:0 -10px;padding:0 10px}th,td{padding:10px 9px;font-size:13px}
  .pricing{grid-template-columns:1fr}.paybox{grid-template-columns:1fr}.scan-layout,.coach-grid,.community-layout{grid-template-columns:1fr}
  .account-head{margin-top:4px}.account-head h2{font-size:28px}.account-layout{gap:12px}.profile-feature{padding:16px}.profile-feature h3{font-size:22px}.account-subgrid{grid-template-columns:1fr}.settings-list{grid-template-columns:1fr}.setting-title{align-items:flex-start;flex-direction:column}
  .profile-table,.profile-table tbody,.profile-table tr,.profile-table th,.profile-table td{display:block;width:100%;box-sizing:border-box}.profile-table th{padding-bottom:4px}.profile-table td{padding-top:4px}.macro-grid{grid-template-columns:repeat(2,1fr)}
  .month-plan{grid-template-columns:1fr}.day{border-radius:14px}.login-card{border-radius:20px}.modal>div{border-radius:18px}.agreement-modal>div{max-height:82vh}
}

.daily-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:4px 0 14px}.daily-head p{margin:0;color:#667169;text-transform:uppercase;font-size:12px}.daily-head h2{margin:3px 0;font-size:34px}.daily-head span{color:#667169}.daily-target,.daily-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:12px 0}.daily-target>div,.daily-summary article{background:white;border:1px solid #dfe6e1;border-radius:14px;padding:14px;box-shadow:0 8px 24px rgba(17,27,21,.05)}.daily-target span,.daily-summary span{display:block;color:#667169;font-size:12px}.daily-target b,.daily-summary b{font-size:28px;color:#16251b}.daily-target small,.daily-summary small{margin-left:3px;color:#667169}.daily-summary p{margin:8px 0;color:#667169;font-size:13px}.daily-bar{height:8px;background:#edf3ee;border-radius:999px;overflow:hidden}.daily-bar i{display:block;height:100%;background:linear-gradient(90deg,#177245,#82c96b);border-radius:999px}.daily-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:14px 0}.daily-actions button,.plate-log-actions button{background:#f0f7f2;color:#177245;border:1px solid #cfe2d6}.daily-meals{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:14px 0}.daily-slot{background:white;border:1px solid #dfe6e1;border-radius:14px;padding:14px}.daily-slot header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.daily-slot header span{display:block;color:#667169;font-size:12px}.daily-slot header b{font-size:20px}.daily-slot header button{padding:8px 12px;min-height:38px;background:#177245}.daily-food{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:8px;padding:10px 0;border-top:1px solid #edf1ee}.daily-food b{display:block;font-size:14px}.daily-food span{display:block;color:#667169;font-size:12px;margin-top:3px}.daily-food em{font-style:normal;color:#177245;font-weight:800;font-size:12px;white-space:nowrap}.daily-food button{min-height:34px;padding:6px 10px;background:#f7ebe8;color:#b74232}.plate-log-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:8px 0}
@media(max-width:760px){.daily-head{align-items:flex-end}.daily-head h2{font-size:30px}.daily-head button{min-width:92px}.daily-target{grid-template-columns:repeat(4,1fr);gap:7px}.daily-target>div{padding:10px 6px;text-align:center;border-radius:12px}.daily-target b{font-size:20px}.daily-target span{font-size:11px}.daily-summary{grid-template-columns:1fr 1fr;gap:10px}.daily-summary article{padding:12px;border-radius:14px}.daily-summary b{font-size:26px}.daily-actions{grid-template-columns:1fr 1fr;gap:8px}.daily-meals{grid-template-columns:1fr}.daily-slot{border-radius:14px;padding:12px}.daily-food{grid-template-columns:1fr auto}.daily-food em{grid-column:1}.daily-food button{grid-column:2;grid-row:1 / span 2}.plate-log-actions{grid-template-columns:1fr 1fr}}




.site-footer{margin:28px 0 8px;text-align:center;color:#667169;font-size:13px}.site-footer a{color:#667169;text-decoration:none}.site-footer a:hover{color:#177245;text-decoration:underline}
@media(max-width:760px){.site-footer{margin:22px 0 92px;font-size:12px}}

