:root{font-family:Arial,Tahoma,sans-serif;font-size:24px;color-scheme:light;--bg:#f5f5ed;--paper:#fff;--text:#162f28;--muted:#40584e;--line:#c6d1c8;--accent:#15533e;--soft:#eaf2e8;--gold:#efe4c6;--radius:22px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--bg);color:var(--text);line-height:1.65}button,input,select{font:inherit;color:inherit}button,a,input,select,summary{touch-action:manipulation}button,select{cursor:pointer}button,.button,summary{min-height:58px}button,.button{border:2px solid var(--line);border-radius:14px;background:var(--paper);padding:10px 20px;font-weight:700;text-decoration:none;display:inline-flex;justify-content:center;align-items:center;gap:8px}button:hover,.button:hover{border-color:var(--accent);background:var(--soft)}:focus-visible{outline:4px solid #b16a00;outline-offset:4px}button.active,.primary{background:var(--accent);border-color:var(--accent);color:#fff}h1,h2,h3,p{margin:0}h1{font-size:1.8rem;line-height:1.35}h2{font-size:1.45rem}h3{font-size:1.2rem}a{color:var(--accent)}.wrap{max-width:1420px;margin:auto;padding:28px 36px 60px}.brandbar{display:flex;justify-content:space-between;align-items:center;gap:22px;padding-block:12px 24px;border-bottom:2px solid var(--line)}.brand{display:flex;align-items:center;gap:14px}.mark{width:58px;height:58px;background:var(--accent);border-radius:16px;color:white;font-size:1.45rem;display:grid;place-items:center;font-weight:bold}.signature{direction:ltr;font-size:.9rem;display:block}.brand small{font-size:.84rem;color:var(--muted);display:block}.tools{display:flex;flex-wrap:wrap;gap:10px}.tools button{font-size:.87rem}.intro{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-block:30px 22px}.intro p,.sub{color:var(--muted);margin-top:8px}.date{font-size:.9rem;color:var(--muted)}.nav{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:26px}.nav a{flex:1;min-width:150px;background:var(--paper);border:2px solid var(--line);border-radius:14px;text-align:center;padding:12px;text-decoration:none;font-weight:700}.nav a:hover{background:var(--soft)}.summary{background:var(--accent);color:#fff;border-radius:var(--radius);padding:28px;display:grid;grid-template-columns:1.2fr 1.8fr;gap:28px}.big-number{font-size:2.5rem;line-height:1.4;direction:ltr;display:inline-block;font-weight:bold}.summary small{font-size:.9rem}.macros{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;align-items:center}.macro{border-inline-start:2px solid #86ad99;padding-inline-start:20px}.macro strong{font-size:1.6rem;display:block;direction:ltr;text-align:start}.summary-note{margin-top:16px;color:var(--muted);font-size:.9rem}.section{margin-block:38px}.section-head{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:22px}.progress{background:var(--soft);padding:16px 22px;border:2px solid var(--line);border-radius:16px;margin-top:22px;display:flex;justify-content:space-between;gap:15px;align-items:center;flex-wrap:wrap}.progress meter{width:180px;height:20px;accent-color:var(--accent)}.meal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.meal{background:var(--paper);border:2px solid var(--line);border-radius:var(--radius);overflow:hidden}.meal-header{padding:22px 24px;display:flex;justify-content:space-between;gap:12px;align-items:center;border-bottom:2px solid var(--line);background:var(--soft)}.meal-header .energy{font-weight:700;text-align:end}.meal-header .energy small{font-size:.8rem;display:block;font-weight:400}.meal.completed{border-color:var(--accent)}.foods{padding:0 24px}.food{padding:20px 0;border-bottom:1px solid var(--line)}.food:last-child{border:0}.food-top{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.food h3{font-size:1rem}.amount{font-size:1.05rem;font-weight:700;color:var(--accent);margin-top:4px}.food-kcal{white-space:nowrap;font-weight:700;font-size:1rem}.food-kcal small{display:block;font-size:.8rem;font-weight:400}.food-macros{display:flex;flex-wrap:wrap;gap:5px 18px;font-size:.84rem;color:var(--muted);margin-top:9px}.meal-options{padding:20px 24px;background:var(--bg);border-bottom:2px solid var(--line)}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:16px}.field:last-child{margin-bottom:0}label{font-weight:700}.field label{font-size:.92rem}select,input{width:100%;border:2px solid var(--line);border-radius:12px;background:var(--paper);min-height:62px;padding:10px 12px;max-width:100%}input{text-align:start;direction:ltr;font-weight:700}select{font-size:.92rem}.field small,.help{font-size:.85rem;color:var(--muted)}.meal-note{font-size:.88rem;background:var(--gold);padding:15px 24px}.meal-footer{background:var(--soft);padding:18px 24px}.totals{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:.9rem;margin-bottom:16px}.check{display:flex;align-items:center;gap:12px;cursor:pointer;min-height:54px}.check input{width:30px;height:30px;min-height:30px;accent-color:var(--accent);flex-shrink:0}.box{background:var(--paper);border:2px solid var(--line);border-radius:var(--radius);padding:26px}.box+.box{margin-top:20px}.box p+p{margin-top:16px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:24px}.two-col>.box{margin:0}.mode-buttons{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px}.mode-buttons button{flex:1;min-width:170px}.recipe-info{margin-top:24px}.recipe-info h3{margin-bottom:12px}.recipe-info li{margin-bottom:12px}.info-line{background:var(--soft);padding:18px;border-radius:14px;margin-top:18px}.result{background:var(--soft);border-radius:16px;padding:22px;margin-top:18px;min-height:140px;overflow-wrap:anywhere}.result strong{font-size:1.55rem;display:block}.result p{margin-top:10px}.result .formula{direction:ltr;text-align:start;font-size:.87rem}.action-row{display:flex;flex-wrap:wrap;gap:12px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.wide{grid-column:1/-1}.form-grid .field{margin:0}summary{font-weight:700;cursor:pointer;padding:14px 0}details{border-top:2px solid var(--line);margin-top:24px}details p,details li{font-size:.9rem}li{margin-bottom:10px}.error{color:#932910;font-weight:700}.footer{border-top:2px solid var(--line);padding-top:22px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;color:var(--muted);font-size:.85rem}.skip{position:absolute;top:-150px;right:15px;background:#fff;padding:15px;z-index:100}.skip:focus{top:10px}#notice{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:var(--accent);color:white;border-radius:14px;padding:15px 24px;z-index:80;max-width:90vw;text-align:center;display:none}#notice.show{display:block}.mode-explain{margin-bottom:15px}.helperlinks{display:flex;gap:18px;flex-wrap:wrap;margin-top:16px}[data-theme=dark]{color-scheme:dark;--bg:#101d18;--paper:#1c2b24;--text:#f5f6ed;--muted:#d0dfd2;--line:#667a6b;--accent:#acd7b1;--soft:#2a4032;--gold:#463d26}[data-theme=dark] .summary,[data-theme=dark] button.active,[data-theme=dark] .primary,[data-theme=dark] .mark,[data-theme=dark] #notice{background:#205b42;color:white}[data-theme=dark] .amount{color:#c5e8c9}[data-theme=dark] .error{color:#ffc1af}
.food h4{font-size:1.08rem;margin:0;line-height:1.5}.meal-number{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--accent);color:white;margin-inline-end:8px;font-size:.9rem}.section-description{margin-bottom:20px}.reference-row{padding:18px 0;border-bottom:1px solid var(--line)}.reference-row:last-child{border:0}.reference-row .amount{display:block;font-size:1rem}.reference-list{margin-top:12px}.brandbar>*,.intro>*,.meal-header>*,.food-top>*,.summary>*,.form-grid>*{min-width:0}.brandbar{flex-wrap:wrap}.tools{max-width:100%}.tools button{flex-shrink:0}.help{line-height:1.7;margin-top:6px}details[open]>summary{margin-bottom:12px}details p+p{margin-top:15px}.recipe-info ol{padding-inline-start:1.4em}.macro strong{white-space:nowrap}.summary-note,.help,.field small,.food-macros,.totals,.meal-note,.footer,.signature{font-size:max(20px,.87rem)}
@media(max-width:1050px){.summary{grid-template-columns:1fr}.brandbar{align-items:flex-start}.tools{justify-content:flex-end}.two-col{grid-template-columns:1fr}.meal-grid{grid-template-columns:1fr}.macros{gap:10px}.macro{padding-inline-start:14px}.wrap{padding:20px 24px 45px}}
@media(max-width:600px){.wrap{padding:12px 14px 40px}.brandbar{flex-direction:column;gap:16px}.brand small{font-size:.84rem}.tools{justify-content:flex-start;width:100%;gap:8px}.tools button{padding:9px 12px;flex:1;font-size:.85rem;min-width:105px}.intro{display:block;margin-top:25px}.date{margin-top:12px}.nav{display:grid;grid-template-columns:1fr 1fr;gap:10px}.nav a{min-width:0;font-size:.9rem;padding:12px 8px}.summary{padding:22px 18px;gap:18px}.macros{grid-template-columns:1fr;gap:16px}.macro{display:flex;justify-content:space-between;gap:16px;align-items:center}.macro strong{font-size:1.4rem}.big-number{font-size:2.25rem}.section-head{flex-direction:column;align-items:flex-start;gap:12px}.foods{padding:0 18px}.meal-header,.meal-options,.meal-footer{padding:18px}.food-top{flex-wrap:wrap;gap:6px}.food-kcal{white-space:normal;display:flex;align-items:center;gap:7px}.food-kcal small{display:inline}.food h3{font-size:1rem}.box{padding:20px 17px}.form-grid{grid-template-columns:1fr}.wide{grid-column:auto}h1{font-size:1.55rem}h2{font-size:1.3rem}.section{margin-block:30px}.progress meter{width:100%}.signature{font-size:.84rem}.food-macros{font-size:.86rem}.action-row button{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media print{:root{font-size:18px!important;color-scheme:light;--bg:#fff;--paper:#fff;--text:#172e25;--muted:#334b40;--line:#aaa;--soft:#eff4ef;--accent:#174731;--gold:#f5f0e1}.tools,.nav,.skip,.meal-options,.check,.action-row,#calculator,#airfryer,#notice,.section-head button{display:none!important}.wrap{padding:0}.summary{background:#f0f5f0!important;color:#172e25;grid-template-columns:1fr}.meal-grid{grid-template-columns:1fr}.meal{break-inside:avoid}.food{padding:10px 0}.section{margin-block:20px}.box{break-inside:avoid}.brandbar{padding:10px 0}.intro{margin-top:15px}.progress{display:none}.summary-note{color:#333}}

.review-note{background:var(--gold);border:2px solid var(--line);padding:18px 22px;border-radius:16px;margin-top:20px;font-size:max(21px,.92rem)}
