:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#263b30;background:#fbf8f0;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.52}a{color:inherit}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #b4a25c;outline-offset:2px}h1,h2,h3,p{margin:0}h1,h2,h3{letter-spacing:-.045em}h1,h2{font-family:Georgia,"Times New Roman",serif;font-weight:600}#app{min-height:100dvh}.app{min-height:100dvh}.shell{max-width:1370px;margin:auto;padding:0 30px 54px;display:grid;grid-template-columns:232px minmax(0,1fr);gap:46px}.sidebar{position:sticky;top:0;height:100dvh;padding:36px 4px;display:flex;flex-direction:column;gap:28px;border-right:1px solid #e8e5dc}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-family:Georgia,serif;font-size:25px;font-weight:700;letter-spacing:-1.4px;color:#304e3c}.brand-mark{height:40px;width:40px;display:grid;place-items:center;color:#fdf7e8;border-radius:13px;background:#365744;font-size:24px;flex:none}.brand small{display:block;font:600 9px Inter,sans-serif;letter-spacing:.18em;color:#8a907e;margin-top:2px;text-transform:uppercase}.sidebar-nav{display:grid;gap:6px;margin-top:14px}.nav-link{appearance:none;border:0;background:transparent;display:flex;align-items:center;text-align:left;gap:15px;font-size:14px;font-weight:650;color:#7e897e;padding:15px;border-radius:13px}.nav-link.active,.nav-link:hover{background:#e9ede3;color:#2b5039}.nav-icon{font-size:20px;width:23px;text-align:center}.sidebar-note{margin-top:auto;background:#e8eee2;border-radius:20px;padding:18px;color:#31533d}.sidebar-note strong{font-size:15px;display:block;margin:8px 0}.sidebar-note p{font-size:12px;line-height:1.55;color:#70806e}.main{min-width:0;padding-top:34px}.topbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:27px}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:10px;font-weight:850;color:#899187}.page-title{font-size:clamp(31px,3.4vw,45px);line-height:1.13;color:#273e30;margin-top:7px}.muted{color:#849083}.small{font-size:12px}.top-actions{display:flex;gap:10px;align-items:center}.icon-btn{border:1px solid #e7e7de;background:#fff;color:#395443;min-width:43px;height:43px;border-radius:14px;display:grid;place-items:center;font-size:20px}.avatar{background:#e5ebe0;color:#456249;font-weight:800;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;border:0}.btn{border:0;min-height:46px;padding:11px 17px;border-radius:13px;display:inline-flex;align-items:center;justify-content:center;gap:9px;font-size:13px;font-weight:800;transition:transform .18s,background .18s;text-decoration:none;line-height:1.2}.btn:active{transform:scale(.985)}.btn.primary{background:#365743;color:#fff}.btn.primary:hover{background:#294735}.btn.soft{background:#e7eee3;color:#345940}.btn.outline{border:1px solid #d7ded4;background:transparent;color:#385743}.btn.white{background:#fff;color:#31513d}.btn.danger{background:#fff0ec;color:#ad4f3a}.btn.wide{width:100%}.btn.tiny{min-height:34px;padding:8px 11px;font-size:11px;border-radius:10px}.btn:disabled{opacity:.42}.pill{display:inline-flex;align-items:center;gap:6px;padding:7px 11px;border-radius:50px;font-size:10px;font-weight:800;color:#51764f;background:#e5eddf;white-space:nowrap}.pill.gold{background:#f7eacb;color:#98743d}.pill.gray{background:#f0f1eb;color:#727c71}.pill.orange{background:#fcebdc;color:#a36b48}.card{background:#fff;border:1px solid #eeeae0;border-radius:22px;box-shadow:0 8px 30px rgba(46,55,35,.028)}.card-pad{padding:22px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:26px 0 15px}.section-head h2{font-size:25px;color:#2d4937}.section-head p{color:#829080;font-size:12px;margin-top:5px}.text-btn{border:0;background:none;color:#466c4e;font-weight:850;font-size:12px}.hero{background:#395a45;color:#fff;border-radius:27px;min-height:315px;display:grid;grid-template-columns:minmax(0,1fr) 43%;overflow:hidden;position:relative}.hero .copy{padding:38px 0 30px 35px;z-index:1;display:flex;flex-direction:column;align-items:flex-start;gap:18px}.hero .eyebrow{color:#c5d8b9}.hero h2{font-size:clamp(32px,3.3vw,46px);line-height:1.09;color:#fff;max-width:510px}.hero p{font-size:13px;color:#d5e1d3;line-height:1.6;max-width:390px}.hero img{height:100%;width:100%;object-fit:cover;object-position:center}.hero .btn{margin-top:auto}.hero-no-menu{background:#e4e6d5;color:#34503b}.hero-no-menu h2{color:#2e4935}.hero-no-menu p{color:#5f7660}.hero-no-menu .eyebrow{color:#5f7860}.hero-no-menu img{mix-blend-mode:multiply}.stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:17px}.stat{padding:19px 21px}.stat label{font-size:10px;letter-spacing:.12em;font-weight:800;color:#96a093;text-transform:uppercase}.stat strong{font-size:26px;display:block;margin:9px 0 2px;letter-spacing:-.06em}.stat span{font-size:11px;color:#839080}.two-col{display:grid;grid-template-columns:1.18fr .82fr;gap:18px}.meal-list{display:grid;gap:10px}.meal-row{display:flex;align-items:center;gap:13px;padding:10px;border:1px solid #f0efe9;background:#fff;border-radius:16px;min-width:0}.food-art{height:72px;width:78px;border-radius:13px;background:linear-gradient(135deg,#e9ddbd,#f3f0e6);display:grid;place-items:center;font-size:37px;position:relative;overflow:hidden;flex:none}.food-art::before{content:"";position:absolute;width:57px;height:57px;border-radius:50%;background:#fdfaf2;box-shadow:0 3px 12px #6c5e4030}.food-art span{position:relative;z-index:1;filter:drop-shadow(0 3px 2px #50452b20)}.food-art.green{background:linear-gradient(135deg,#dae3c7,#edf1e0)}.food-art.orange{background:linear-gradient(135deg,#f1d2b4,#fff1d7)}.food-art.blue{background:linear-gradient(135deg,#d1e0d8,#edf6ed)}.meal-body{flex:1;min-width:0}.meal-body small{display:block;text-transform:uppercase;color:#94a094;letter-spacing:.1em;font-size:9px;font-weight:800;margin-bottom:6px}.meal-body strong{font-size:13px;color:#344a37;display:block;line-height:1.3}.meal-body p{font-size:11px;color:#94a094;margin-top:5px}.meal-row .arrow-btn{border:0;background:#f3f4ef;color:#527153;width:34px;height:34px;border-radius:11px;font-size:17px}.shopping-preview{background:#eaf0e3;border-radius:19px;padding:23px;min-height:100%;display:flex;flex-direction:column;gap:14px}.shopping-preview h3{font-size:25px;font-family:Georgia,serif;color:#34563d}.preview-line{display:flex;align-items:center;gap:11px;padding:11px 0;border-bottom:1px solid #d5dfd0;color:#52684f;font-size:12px}.preview-line:last-of-type{border-bottom:0}.check-circle{color:#71936f;font-size:18px}.shopping-preview .btn{margin-top:auto}.week-nav{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:17px}.week-tabs{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;margin-bottom:21px}.day-tab{display:flex;flex-direction:column;align-items:center;justify-content:center;background:#fff;border:1px solid #eee9df;border-radius:15px;min-height:68px;gap:6px;color:#829081}.day-tab strong{font-size:12px}.day-tab span{font-size:15px;font-weight:800}.day-tab.active{background:#3a5b44;color:white;border-color:#3a5b44}.day-tab.today:not(.active){border-color:#9aaf91}.day-heading{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:25px 0 12px}.day-heading h3{font-family:Georgia,serif;font-size:23px}.recipe-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.recipe-card{overflow:hidden}.recipe-card .food-art{height:132px;width:100%;border-radius:0;font-size:65px}.recipe-card .food-art::before{width:110px;height:110px}.recipe-card-content{padding:17px}.recipe-card h3{font-size:15px;line-height:1.3;min-height:39px;margin:9px 0}.recipe-card p{color:#839084;font-size:11px}.recipe-card button{margin-top:12px}.menu-meal{display:grid;grid-template-columns:125px minmax(0,1fr) auto;align-items:center;gap:16px;padding:14px;margin:10px 0}.menu-meal .food-art{width:125px;height:105px;font-size:54px}.menu-meal .food-art::before{width:88px;height:88px}.menu-meal h3{font-size:18px;font-family:Georgia,serif;margin:7px 0}.menu-actions{display:flex;gap:7px;flex-wrap:wrap}.section-card-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.section-card-title h3{font-size:24px;font-family:Georgia,serif}.category-list{display:grid;gap:0}.shop-group{padding:20px 22px}.shop-group+.shop-group{border-top:1px solid #edece5}.shop-group h3{font-size:13px;display:flex;align-items:center;gap:8px;margin-bottom:10px}.shop-row{display:flex;align-items:center;gap:12px;min-height:48px;border-bottom:1px solid #f4f2ed;font-size:13px}.shop-row:last-child{border:0}.shop-row label{display:flex;align-items:center;gap:12px;flex:1;cursor:pointer;min-width:0}.shop-row input{width:19px;height:19px;accent-color:#426a4c;flex:none}.shop-row.checked label span{text-decoration:line-through;color:#a1aaa0}.shop-row small{margin-left:auto;color:#7e8c7d;font-size:12px;white-space:nowrap}.shop-row .mini-delete{border:0;background:transparent;color:#9d7768;font-size:18px;padding:6px}.progress{height:8px;background:#e3e9df;border-radius:50px;overflow:hidden}.progress i{display:block;height:100%;background:#699675;border-radius:50px;transition:width .2s}.shopping-controls{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}.inline-form{display:flex;align-items:center;gap:9px}.inline-form input{min-width:0;flex:1}.field{display:grid;gap:8px;font-size:12px;color:#465c4a;font-weight:800}.field input,.field select,.field textarea,.inline-form input,.search-input{background:#fff;border:1px solid #e2e6dd;border-radius:12px;padding:12px 13px;color:#324e3a;outline:none;width:100%;min-height:45px}.field textarea{resize:vertical}.field input:focus,.field select:focus,.field textarea:focus,.search-input:focus,.inline-form input:focus{border-color:#789d79;box-shadow:0 0 0 3px #e9f0e6}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.field .hint{font-weight:400;color:#96a095;font-size:11px}.check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.check-option{display:flex;align-items:center;gap:9px;font-size:12px;color:#4e6352;font-weight:600;padding:12px;background:#f8f9f4;border:1px solid #ecede5;border-radius:11px;cursor:pointer}.check-option input{accent-color:#44664b}.settings-stack{display:grid;gap:17px}.settings-block{padding:22px}.settings-block h3{font-family:Georgia,serif;font-size:23px;margin-bottom:7px}.settings-block>p{color:#819081;font-size:12px;margin-bottom:19px;line-height:1.6}.settings-block .btn{margin-top:16px}.separator{height:1px;background:#edf0e8;margin:18px 0}.empty{text-align:center;padding:44px 25px;background:#fff;border:1px dashed #dce3d5;border-radius:22px}.empty .emoji{font-size:52px;margin-bottom:12px}.empty h2{font-size:29px}.empty p{color:#859084;font-size:13px;margin:11px auto 20px;max-width:420px;line-height:1.6}.banner{background:#e9f0e7;border:1px solid #d8e6d5;border-radius:13px;padding:12px 15px;color:#4b6a50;font-size:12px;line-height:1.6;margin-bottom:17px}.banner.warn{background:#fff3e5;border-color:#f3ddc0;color:#8e704f}.banner.error{background:#fff1ed;border-color:#eed6cf;color:#ae5d4f}.mini-progress{background:#dfe7da;height:5px;border-radius:15px;overflow:hidden}.mini-progress i{background:#6f986e;height:100%;display:block}.bottom-nav{display:none}.modal-backdrop{position:fixed;inset:0;background:#182a20a6;z-index:30;display:flex;justify-content:center;align-items:flex-end;padding:14px}.modal{background:#fbf8f0;border-radius:25px;max-height:min(92dvh,850px);overflow-y:auto;overscroll-behavior:contain;width:min(100%,590px);box-shadow:0 25px 80px #15271740}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:21px 22px 11px;position:sticky;top:0;background:#fbf8f0;z-index:4}.modal-head h2{font-size:26px}.modal-body{padding:0 22px 26px}.modal-cover{position:relative;height:195px;background:#e6e5ce;display:grid;place-items:center;font-size:93px;border-radius:18px;margin-bottom:20px}.modal-cover::before{content:"";position:absolute;width:138px;height:138px;background:#fff9e8;border-radius:50%;box-shadow:0 8px 23px #6c5e4025}.modal-cover span{position:relative}.modal-content h3{font:600 21px Georgia,serif;margin:20px 0 13px}.ingredient-row{display:flex;justify-content:space-between;border-bottom:1px solid #ebece3;padding:9px 0;font-size:12px;gap:15px}.steps{counter-reset:step;list-style:none;padding:0;margin:0}.steps li{display:flex;gap:13px;margin:16px 0;font-size:13px;line-height:1.6;color:#4f6553}.steps li::before{counter-increment:step;content:counter(step);background:#e8f0e4;color:#486c4b;display:grid;place-items:center;font-weight:850;font-size:12px;border-radius:50%;width:27px;height:27px;flex:none}.filter-row{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:15px 0 18px}.filter-btn{border:1px solid #e3e7dd;background:#fff;color:#738273;border-radius:50px;padding:9px 13px;font-size:11px;font-weight:800}.filter-btn.active{background:#3d5d46;color:#fff;border-color:#3d5d46}.swap-list{display:grid;gap:9px}.swap-row{display:flex;gap:11px;align-items:center;padding:9px;background:#fff;border:1px solid #eeeae3;border-radius:14px}.swap-row .food-art{height:68px;width:70px}.swap-row strong{display:block;font-size:13px}.swap-row small{font-size:11px;color:#829083}.swap-row .btn{margin-left:auto;white-space:nowrap}.auth-wrap,.onboard-wrap{min-height:100dvh;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.welcome-art{background:#3a5a44;position:relative;padding:48px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}.welcome-art .brand{color:#fff}.welcome-art .brand small{color:#b7ceaf}.welcome-art img{width:min(100%,650px);max-height:490px;object-fit:contain;align-self:center;border-radius:999px;filter:drop-shadow(0 24px 35px #173c2f60)}.welcome-art h1{font-size:clamp(39px,4vw,65px);line-height:1.08;color:#fff;max-width:490px}.welcome-art p{font-size:14px;color:#c6d6c1;line-height:1.7;max-width:460px;margin-top:14px}.welcome-content{padding:clamp(25px,5vw,70px);display:flex;justify-content:center;align-items:center}.welcome-inner{width:min(100%,510px)}.welcome-inner h2{font-size:36px;margin:13px 0}.welcome-inner>p{font-size:13px;color:#849083;line-height:1.65;margin-bottom:26px}.welcome-inner .field{margin-bottom:15px}.welcome-inner .btn{margin-top:6px}.stepper{display:flex;gap:7px;margin-bottom:24px}.stepper i{height:5px;border-radius:20px;flex:1;background:#e3e9dc}.stepper i.active{background:#64896b}.onboard-fields{max-height:none}.optional{font-size:11px;color:#89958b}.list-check{display:flex;gap:8px;align-items:center;font-size:12px;color:#667666;margin-top:13px}.list-check input{accent-color:#426a4c}.onboard-actions{display:flex;align-items:center;gap:10px;margin-top:21px}.onboard-actions .btn{flex:1}.no-results{padding:22px;text-align:center;color:#829080;font-size:13px}.recipe-search{display:flex;gap:10px}.recipe-search .search-input{flex:1}.week-badge{display:flex;align-items:center;gap:8px;background:#f0f2e9;border-radius:12px;padding:12px 15px;color:#567059;font-weight:750;font-size:12px}.recipes-hero{display:grid;grid-template-columns:1fr 180px;gap:12px;align-items:center;background:#e8eee1;padding:21px 25px;border-radius:20px;margin-bottom:20px}.recipes-hero h2{font-size:25px;margin:9px 0}.recipes-hero p{font-size:12px;color:#758975;line-height:1.5}.recipes-hero .food-art{width:160px;height:140px;justify-self:end;font-size:64px}.account-status{display:flex;gap:13px;align-items:center;background:#f3f6ef;border-radius:14px;padding:15px}.account-status strong{font-size:13px}.account-status p{font-size:11px;color:#7f8d7d;margin-top:4px}.alert-dot{height:8px;width:8px;border-radius:50%;background:#75a374}#toast{position:fixed;bottom:calc(25px + env(safe-area-inset-bottom));left:50%;transform:translate(-50%,20px);background:#284634;color:#fff;padding:12px 18px;border-radius:12px;font-size:12px;font-weight:750;box-shadow:0 8px 40px #111a1236;max-width:min(90vw,450px);z-index:100;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;text-align:center}#toast.show{opacity:1;transform:translate(-50%,0)}.footer-note{margin-top:24px;color:#99a397;font-size:10px;text-align:center;line-height:1.5}.badge-inline{display:inline-block;background:#f2f5ed;border-radius:6px;padding:3px 6px;color:#607b62;font-size:10px;font-weight:800}.hidden{display:none!important}.desktop-only{display:block}.mobile-only{display:none}@media(max-width:1080px){.shell{gap:25px;grid-template-columns:185px minmax(0,1fr);padding:0 22px 48px}.brand{font-size:21px}.recipe-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.two-col{grid-template-columns:1fr}.shopping-preview{min-height:0}}@media(max-width:720px){.shell{display:block;padding:0 16px calc(105px + env(safe-area-inset-bottom));}.sidebar{display:none}.main{padding-top:calc(17px + env(safe-area-inset-top))}.topbar{margin-bottom:18px}.page-title{font-size:31px;margin-top:5px}.hero{min-height:285px;grid-template-columns:1fr 45%}.hero .copy{padding:27px 0 27px 23px;gap:12px}.hero h2{font-size:29px;line-height:1.08}.hero p{font-size:11px;line-height:1.45}.hero img{object-position:38%}.hero .btn{font-size:11px;min-height:40px;padding:9px 12px}.section-head h2{font-size:24px}.stat{padding:14px 12px}.stat strong{font-size:21px}.stat span{font-size:10px}.stat label{font-size:9px}.card-pad{padding:17px}.bottom-nav{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;bottom:0;left:0;right:0;z-index:20;background:#fffcf5ee;border-top:1px solid #e9e8dc;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);padding:10px 5px calc(9px + env(safe-area-inset-bottom))}.bottom-nav button{display:flex;flex-direction:column;align-items:center;gap:5px;border:0;background:transparent;font-size:9px;font-weight:800;color:#97a194;padding:2px 0}.bottom-nav button.active{color:#315940}.bottom-nav button .nav-icon{font-size:23px;line-height:1.1}.week-tabs{gap:4px}.day-tab{min-height:63px;border-radius:12px}.day-tab strong{font-size:9px}.day-tab span{font-size:14px}.recipe-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.recipe-card .food-art{height:120px}.recipe-card-content{padding:12px}.recipe-card h3{font-size:13px;min-height:38px}.menu-meal{grid-template-columns:86px minmax(0,1fr);gap:10px;padding:10px}.menu-meal .food-art{height:86px;width:86px;font-size:42px}.menu-meal .food-art::before{width:65px;height:65px}.menu-meal h3{font-size:16px}.menu-meal .menu-actions{grid-column:1/-1;justify-content:flex-end;padding-bottom:3px}.form-grid{grid-template-columns:1fr}.auth-wrap,.onboard-wrap{display:block;min-height:100dvh}.welcome-art{min-height:220px;padding:25px 23px;display:block}.welcome-art img{height:160px;width:43%;object-fit:cover;float:right;margin-top:-35px}.welcome-art h1{font-size:31px;max-width:260px;margin-top:45px}.welcome-art p{font-size:11px;max-width:250px;margin-top:8px}.welcome-content{padding:28px 22px 65px;display:block}.welcome-inner{margin:auto}.welcome-inner h2{font-size:31px}.welcome-inner>p{margin-bottom:22px}.modal-backdrop{padding:0}.modal{width:100%;border-radius:22px 22px 0 0;max-height:94dvh;padding-bottom:env(safe-area-inset-bottom)}.modal-cover{height:175px}.recipes-hero{grid-template-columns:1fr 100px;padding:17px}.recipes-hero .food-art{width:95px;height:100px;font-size:49px}.recipes-hero .food-art::before{width:74px;height:74px}.desktop-only{display:none}.mobile-only{display:block}#toast{bottom:calc(88px + env(safe-area-inset-bottom))}}@media(max-width:390px){.shell{padding-inline:11px}.hero{grid-template-columns:1fr 37%}.hero h2{font-size:26px}.hero .copy{padding-left:17px}.hero p{font-size:10px}.top-actions .icon-btn{display:none}.stat-grid{gap:7px}.stat{padding:13px 9px}.stat strong{font-size:19px}.brand{font-size:20px}.menu-meal .food-art{width:78px;height:80px}}
/* v1.1 · refinamiento responsive, planificación flexible y modo cocinar */
.nav-icon{display:inline-flex;align-items:center;justify-content:center;flex:none}.nav-icon svg{width:20px;height:20px;display:block}.bottom-nav .nav-icon svg{width:23px;height:23px}
.planning-note{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:12px 14px;margin:11px 0 15px;background:#eaf0e4;border:1px solid #d6e3cf;border-radius:14px;color:#345842;font-size:12px;font-weight:700}.planning-note span{background:#fff9;border-radius:30px;padding:7px 10px;white-space:nowrap}.planning-note small{flex-basis:100%;font-weight:500;line-height:1.45;color:#627662}.menu-meal.is-cooked{background:#f1f5eb;border-color:#d8e5d1}.btn.lock-on{background:#335b42;border:1px solid #335b42;color:white}.menu-actions .btn{min-height:38px}.week-line{display:flex;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid #efefe7}.week-line .badge-inline{width:38px;text-align:center}.week-line-meals{font-size:12px;flex:1;min-width:0;overflow-wrap:anywhere;line-height:1.55}.week-summary{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.week-summary strong{font-size:24px}
.shop-summary{display:flex;align-items:center;justify-content:space-between;gap:10px}.shop-summary h2{font-size:31px;margin:7px 0}.shop-summary-icon{font-size:32px}.shop-qty{display:inline-flex;align-items:center;justify-content:end;gap:3px;margin-left:auto;border:1px solid #d7e4d2;background:#edf3e9;border-radius:9px;color:#31543b;padding:9px 11px;font-size:12px;font-weight:750;white-space:nowrap;min-height:39px}.shop-qty:active{transform:scale(.98)}.edited-dot{color:#ad7e3e;font-size:20px;line-height:0}.shop-row label span{overflow-wrap:anywhere}.shop-row.checked .shop-qty{opacity:.7}.custom-add h3{font-family:Georgia,serif;font-size:22px;margin-bottom:16px}.custom-add-fields{display:grid;grid-template-columns:minmax(0,2fr) 90px 95px minmax(125px,1fr);gap:9px;margin-bottom:12px}.custom-add-fields label{display:grid;gap:7px;font-size:11px;font-weight:750;color:#657b6a}.custom-add-fields input,.custom-add-fields select{min-width:0;width:100%;background:white;border:1px solid #dbe3d9;border-radius:10px;min-height:43px;padding:10px;font-size:13px;color:#263b30}.custom-add .btn{min-height:44px}.qty-actions,.recipe-reactions,.cook-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.qty-actions .btn,.recipe-reactions .btn,.cook-actions .btn{flex:1;min-width:140px}.qty-actions+.muted{margin-top:10px}.recipe-metadata{display:flex;gap:9px;flex-wrap:wrap}.modal-content>.btn.primary{margin-top:17px;min-height:49px}.cook-view{padding-top:8px}.cook-title h3{font-size:clamp(24px,3vw,31px);font-family:Georgia,serif;margin:13px 0 7px}.cook-title>.pill{font-weight:800}.cook-progress{height:7px;background:#e2e9da;overflow:hidden;border-radius:20px;margin:25px 0}.cook-progress i{height:100%;display:block;border-radius:20px;background:#567a58;transition:width .22s}.cook-step{min-height:190px;background:#ecf0e7;padding:27px 22px;border-radius:20px;display:flex;flex-direction:column;justify-content:center;gap:15px}.cook-step span{color:#607c60;font-weight:800;font-size:11px;letter-spacing:.12em}.cook-step p{font:500 clamp(21px,3vw,29px)/1.45 Georgia,serif;letter-spacing:-.035em}.cook-ingredients{border:1px solid #e3e7dc;border-radius:15px;background:white;padding:15px 16px;margin-top:18px}.cook-ingredients summary{font-size:13px;font-weight:800;cursor:pointer}.cook-ingredients[open] summary{margin-bottom:10px}.cook-ingredients .ingredient-row{font-size:12px}.cook-actions{margin-top:26px}.cook-actions .btn{min-height:48px}
@media(max-width:720px){.menu-actions{justify-content:flex-start!important}.menu-actions .btn{flex:1;white-space:nowrap;padding-inline:9px}.menu-meal{align-items:start}.menu-meal h3{line-height:1.22}.planning-note small{flex-basis:100%}.shop-qty{font-size:11px;padding:8px;min-height:41px}.shop-row{gap:6px}.shop-row label{gap:8px;min-width:0}.shop-row label span{font-size:12px}.shop-summary h2{font-size:27px}.custom-add-fields{grid-template-columns:minmax(0,1fr) 77px 77px}.custom-add-fields label:first-child{grid-column:1/-1}.custom-add-fields label:last-child{grid-column:1/-1}.cook-step{min-height:205px;padding:25px 19px}.cook-step p{font-size:24px}.cook-view{padding-bottom:calc(25px + env(safe-area-inset-bottom))}.qty-actions .btn,.recipe-reactions .btn,.cook-actions .btn{min-width:0;flex:1}.modal .recipe-reactions .btn{font-size:12px;min-height:44px}}
@media(max-width:390px){.menu-actions .btn{font-size:10px;min-width:0}.menu-meal .food-art{width:78px;height:80px}.shop-row label span{font-size:11px}.shop-qty{font-size:10px}.planning-note{padding:9px;gap:6px}.planning-note span{padding:6px 7px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.cook-progress i{transition:none}}
.taste-stats{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.taste-stats span{font-size:12px;font-weight:750;background:#eef2e9;border-radius:9px;padding:9px 12px;color:#46654e}.taste-list{display:grid;gap:4px;margin-top:12px}.taste-row{display:flex;justify-content:space-between;align-items:center;gap:10px;border-bottom:1px solid #ebece5;padding:10px 0;font-size:12px}.taste-row span{min-width:0;overflow-wrap:anywhere}.taste-row button{font-size:11px;flex:none}.history-actions{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px;flex-wrap:wrap}.history-actions strong{font-size:13px}.history-week{border:1px solid #e2e8da;background:white;border-radius:14px;margin-bottom:10px;overflow:hidden}.history-week>summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:15px;font-weight:750;font-size:13px}.history-week>summary span{font-size:11px;color:#668067}.history-week[open]>summary{border-bottom:1px solid #edf0e8}.history-day{display:grid;grid-template-columns:72px minmax(0,1fr);align-items:start;gap:12px;padding:9px 13px;border-bottom:1px solid #f0f0ed;font-size:12px;line-height:1.5}.history-day:last-child{border:0}.history-day strong{color:#617a63}
