.meal-studio{--meal-green:#173b2d;--meal-line:#dce3d2;min-width:0}.meal-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin-bottom:28px}.meal-page-head .eyebrow{display:block;color:#78896a;margin-bottom:14px}.meal-page-head p{color:#718163;font-size:13px;line-height:1.8;margin-top:14px;max-width:650px}.meal-page-head>.actions{flex-shrink:0}.meal-builder-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,.8fr);gap:24px;align-items:start}.meal-builder-main,.meal-builder-aside{display:grid;gap:22px;min-width:0}.meal-builder-main .card{padding:28px}.meal-step{font-size:9px;letter-spacing:1.8px;color:#81946e;display:block;margin-bottom:15px}.meal-builder-main h2{font-size:23px;letter-spacing:-.6px;margin-bottom:25px}.meal-builder-main .note-block{font-size:11px;line-height:1.8;margin-top:20px}.meal-builder-main .field>small{font-size:11px;line-height:1.7;margin-top:8px;color:#81906e}.meal-builder-footer{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:0 2px}.meal-builder-footer>[role=alert]{font-size:12px;line-height:1.7;color:#9a4d34}.meal-builder-footer>.actions{flex-shrink:0}.meal-intro-card{padding:32px;background:#173b2d;border-radius:21px;color:#f5f8ec}.meal-intro-card>.eyebrow{font-size:9px;color:#b1c79a}.meal-intro-card h2{font-size:34px;line-height:1.15;letter-spacing:-1px;margin-top:20px}.meal-clock-mark{font-size:90px;line-height:1;color:#d6f27c;font-weight:500;letter-spacing:-6px;margin:32px 0 25px}.meal-clock-mark span{display:block;font-size:9px;letter-spacing:2px;margin-top:15px;color:#b4cb9b}.meal-intro-card p,.meal-intro-card li{font-size:12px;line-height:1.9;color:#c4d4b3}.meal-intro-card ul{padding-left:16px;margin-top:23px}.meal-saved h2{font-size:18px;margin-bottom:20px}.meal-saved>p{font-size:12px;line-height:1.8;color:#7c8b6b}.meal-saved-row{display:flex;gap:14px;align-items:center;justify-content:space-between;border-top:1px solid var(--meal-line);padding:15px 0}.meal-saved-row strong{display:block;font-size:12px;line-height:1.6}.meal-saved-row small{display:block;font-size:10px;color:#7d8b6f;margin-top:6px}.meal-saved-row .btn{font-size:11px;padding:8px 11px}
.meal-studio [hidden]{display:none!important}@media(max-width:380px){.meal-studio .meal-day-targets .meal-macros{grid-template-columns:1fr 1fr}.meal-studio .meal-card .meal-macros strong>span{display:block;margin-left:0}}
.meal-day-hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,1fr);gap:35px;border-radius:22px;padding:32px 35px;background:#173b2d;color:#f3f6e9}.meal-day-hero .eyebrow{font-size:9px;color:#b9cfa2}.meal-day-hero h2{font-size:clamp(28px,3vw,38px);line-height:1.12;letter-spacing:-1px;margin-top:17px}.meal-day-hero p{font-size:12px;line-height:1.8;color:#c0d1af;margin-top:17px;max-width:420px}.meal-draft-status{font-size:10px;color:#d3e5ba;display:block;margin-top:23px}.meal-macros{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.meal-macros>div{display:grid;align-content:start;gap:7px}.meal-macros small{font-size:8px;letter-spacing:.6px;line-height:1.6;color:#879775}.meal-macros strong{font-size:23px;font-weight:500;letter-spacing:-.5px;color:#2c4c39;white-space:nowrap}.meal-macros strong>span{font-size:9px;font-weight:400;margin-left:4px;letter-spacing:0}.meal-day-targets{border-left:1px solid #567547;padding:7px 0 7px 30px;align-self:center}.meal-day-targets .meal-macros{grid-template-columns:1fr 1fr;gap:25px 20px}.meal-day-targets .meal-macros small{color:#afc797}.meal-day-targets .meal-macros strong{font-size:30px;color:#d6f27c}.meal-day-targets .meal-macros strong>span{color:#c4d8aa}.meal-day-targets .meal-macros small:last-child{letter-spacing:0;font-size:10px}.meal-day-toolbar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:14px;margin:22px 0}.meal-day-toolbar .btn{font-size:11px;min-height:39px;padding:10px 13px}.meal-timeline{display:flex;gap:10px;overflow:auto;max-width:100%;margin:0 0 24px;padding-bottom:6px;scrollbar-width:thin}.meal-timeline a{display:grid;gap:9px;min-width:110px;flex:1;border:1px solid var(--meal-line);border-radius:12px;background:#f0f3e8;padding:14px;color:#789064}.meal-timeline b{font-size:15px;font-weight:500;color:#345537}.meal-timeline span{font-size:10px;white-space:nowrap}.meal-timeline a.is-next{background:#dfecc6;border-color:#9fb97c}.meal-day-cards{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start}.meal-card{padding:0;overflow:hidden;scroll-margin-top:20px}.meal-card.is-next{border-color:#99b375;box-shadow:0 5px 30px #34542009}.meal-card-head{padding:24px;display:flex;justify-content:space-between;align-items:flex-start;gap:12px;border-bottom:1px solid var(--meal-line)}.meal-slot-label{font-size:9px;letter-spacing:1.3px;color:#839971;display:block;margin-bottom:12px}.meal-card-head h2{font-size:23px;line-height:1.25;letter-spacing:-.6px}.meal-card-head .btn{font-size:10px;padding:8px 9px;min-height:33px;flex-shrink:0}.meal-card-time{display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin-top:13px;font-size:11px;color:#6b8059}.meal-card-time>b{font-size:8px;letter-spacing:.7px;font-weight:500;padding:4px 6px;background:#e5efd5;border-radius:5px;color:#5c7d3b}.meal-foods{padding:7px 24px 4px}.meal-food-row{display:grid;grid-template-columns:minmax(0,1fr) 82px 51px 23px;gap:10px;align-items:center;padding:16px 0;border-bottom:1px solid #edf0e6}.meal-food-row>div{min-width:0}.meal-food-row strong{font-size:12px;line-height:1.6;display:block;font-weight:500}.meal-food-row small{display:block;font-size:9px;line-height:1.7;color:#839272;margin-top:5px}.meal-food-row>.meal-serving{display:grid;gap:5px;align-items:center;font-size:8px;color:#839272}.meal-serving input{min-width:0;min-height:39px;padding:8px;text-align:center;font-size:13px}.meal-food-row>span{font-size:13px;text-align:right;color:#436138}.meal-food-row>span>small{font-size:8px;margin-top:3px}.meal-food-row .icon-btn{width:23px;height:30px;font-size:18px;color:#91a17d}.meal-card>.meal-macros{padding:22px 24px}.meal-card .meal-macros strong{font-size:21px}.meal-card .meal-macros small:last-child{font-size:9px;letter-spacing:0}.meal-card-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:0 24px 24px}.meal-card-actions .btn{font-size:10px;min-height:36px;padding:9px 11px}.meal-card-actions .primary{margin-left:auto}.meal-preparation{margin:0 24px 20px;font-size:11px;color:#657b52;line-height:1.8}.meal-preparation summary{cursor:pointer}.meal-preparation ol{padding-left:17px;margin-top:10px}.meal-plan-notes{margin-top:24px;padding:23px 27px}.meal-plan-notes p{font-size:11px;line-height:1.9;color:#7d8b6c}.meal-plan-notes p+p{margin-top:10px}.meal-alternatives{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:20px}.meal-alternatives>article{border:1px solid #dfe6d4;border-radius:13px;padding:20px;background:#f7f9f1}.meal-alternatives h3{font-size:18px;line-height:1.4;margin-top:14px}.meal-alternatives p{font-size:10px;line-height:1.8;color:#7b8c68;margin:13px 0 18px}.meal-alternatives .meal-macros{gap:9px}.meal-alternatives .meal-macros strong{font-size:17px}.meal-alternatives .btn{margin-top:20px;font-size:11px}.meal-modal-error{font-size:12px;color:#9a4d34;line-height:1.8;margin-top:17px}
@media(max-width:1150px){.meal-day-cards{grid-template-columns:1fr}.meal-builder-layout{grid-template-columns:1fr}.meal-builder-aside{grid-template-columns:1fr 1fr}.meal-day-hero{gap:25px}.meal-card-head h2{font-size:25px}.meal-food-row{grid-template-columns:minmax(0,1fr) 100px 70px 28px}.meal-food-row strong{font-size:13px}}
@media(max-width:680px){.meal-page-head{display:grid;gap:17px;margin-bottom:23px}.meal-page-head p{font-size:13px}.meal-page-head>.actions{justify-content:flex-start}.meal-builder-main .card{padding:25px 21px}.meal-builder-main h2{font-size:22px}.meal-builder-main input,.meal-builder-main select{font-size:16px}.meal-builder-aside{grid-template-columns:1fr}.meal-builder-footer{display:grid}.meal-builder-footer>.actions{flex-wrap:wrap}.meal-builder-footer .primary{flex:1}.meal-intro-card{padding:27px}.meal-day-hero{grid-template-columns:1fr;padding:28px 25px;gap:25px}.meal-day-hero h2{font-size:31px}.meal-day-targets{padding:22px 0 0;border-left:0;border-top:1px solid #567547}.meal-day-targets .meal-macros{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.meal-day-targets .meal-macros strong{font-size:23px}.meal-day-targets .meal-macros strong>span{display:block;margin:4px 0 0}.meal-day-targets .meal-macros small:last-child{font-size:9px}.meal-day-toolbar{display:grid;gap:12px}.meal-day-toolbar .actions{flex-wrap:wrap}.meal-day-toolbar>.actions:last-child .btn{width:100%}.meal-card-head{padding:23px 21px}.meal-card-head h2{font-size:23px}.meal-card-head .btn{font-size:10px}.meal-foods{padding:5px 21px}.meal-food-row{grid-template-columns:minmax(0,1fr) 65px 25px;gap:10px 12px;padding:17px 0}.meal-food-row>div{grid-column:1/3;grid-row:1}.meal-food-row>.meal-serving{grid-column:1;grid-row:2;display:flex;gap:12px;font-size:10px}.meal-serving input{width:75px;font-size:16px}.meal-food-row>span{grid-column:2/4;grid-row:2;text-align:right;font-size:15px}.meal-food-row>span>small{display:inline;margin-left:4px;font-size:9px}.meal-food-row>.icon-btn{grid-column:3;grid-row:1}.meal-food-row strong{font-size:14px}.meal-food-row small{font-size:10px}.meal-card>.meal-macros{padding:21px}.meal-card .meal-macros{gap:11px}.meal-card .meal-macros strong{font-size:20px}.meal-card .meal-macros strong>span{font-size:8px}.meal-card-actions{padding:0 21px 23px;gap:8px}.meal-card-actions .btn{min-height:41px;font-size:11px}.meal-card-actions .primary{margin-left:0}.meal-alternatives{grid-template-columns:1fr}.meal-preparation{font-size:12px}.meal-plan-notes{padding:22px}.meal-plan-notes p{font-size:12px}.meal-studio [hidden]{display:none!important}}
@media print{.meal-day-hero{background:white;color:#173b2d;border:1px solid #cad6bc}.meal-day-hero .eyebrow,.meal-day-hero p,.meal-day-targets .meal-macros small,.meal-day-targets .meal-macros strong,.meal-draft-status{color:#173b2d}.meal-day-toolbar,.meal-timeline,.meal-card-actions,.meal-food-row .icon-btn{display:none!important}.meal-day-cards{display:block}.meal-card{break-inside:avoid;margin-bottom:18px}.meal-serving input{border:0;background:none}.meal-day-targets{border-color:#cad6bc}}
