:root{font-family:'DM Sans',sans-serif;color:#243f36;background:#f7f7f1;font-size:15px}*{box-sizing:border-box}body{margin:0}header{height:100px;background:#fffef9;border-bottom:1px solid #dedfd4;display:flex;align-items:center;justify-content:space-between;padding:0 4%}.brand{font-size:32px;display:flex;gap:12px;text-decoration:none;color:#274e3c;font-family:Lora,serif}.brand small{font:10px 'DM Sans',sans-serif;letter-spacing:2px;display:block;margin-top:7px}.pill{border:1px solid #c7d6c7;border-radius:30px;padding:8px 13px;font-size:10px;letter-spacing:1px}.shell{display:grid;grid-template-columns:215px 1fr;max-width:1600px;margin:auto}aside{padding:35px 20px;border-right:1px solid #dedfd4}nav{display:grid;gap:8px}button,input,select,textarea{font:inherit}button{cursor:pointer;border:1px solid #ccd2c4;border-radius:8px;padding:10px 15px;background:#fffef9;color:#294b3b}button:hover{background:#e7eddf}button:focus-visible,a:focus-visible{outline:3px solid #d99949;outline-offset:3px}nav button{text-align:left;border:0;background:none;padding:14px}nav button.active,.primary{background:#2e5843;color:white}.aside-note{font-size:12px;line-height:1.9;margin:70px 10px;color:#718077}main{padding:25px 36px 60px;min-width:0}.notice{font-size:12px;background:#edeedc;padding:12px 16px;border-radius:6px;color:#5a624a;margin-bottom:30px}h1,h2,h3{font-family:Lora,serif;font-weight:500}h1{font-size:38px;margin:8px 0 10px}h2{font-size:24px}h3{font-size:18px;margin:0 0 12px}p{line-height:1.6}.muted,small{color:#738075}.eyebrow{font-size:11px;letter-spacing:2px;color:#7a805e}.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.between{justify-content:space-between}.stats{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px;margin:28px 0}.stat,.panel{background:#fffef9;border:1px solid #dedfd4;border-radius:12px;padding:22px}.stat strong{display:block;font-family:Lora,serif;font-size:27px;margin:8px 0}.stat input{width:100%;accent-color:#42664b}.toolbar{margin:25px 0 18px}.days{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.day{background:#fffef9;border:1px solid #dcdfd2;border-radius:12px;overflow:hidden}.day-title{padding:18px;background:#e9edde;font-family:Lora,serif}.meal{padding:17px 14px;border-top:1px solid #e8e8dd;min-height:194px}.meal small{font-size:10px;letter-spacing:1px;text-transform:uppercase}.meal h3{font-size:16px;line-height:1.4;margin:9px 0;min-height:44px}.meal button{font-size:11px;padding:6px 9px}.meal input{width:48px;padding:4px;border:1px solid #d7dbce;border-radius:5px}.meal label{font-size:11px}.footer-action{margin-top:22px;background:#e8eddf;padding:20px;border-radius:10px}.warn{color:#925729}.good{color:#38714b}input,select,textarea{border:1px solid #ccd2c4;padding:10px;border-radius:6px;background:white;color:#243f36}label{display:grid;gap:7px;font-size:13px}form{display:grid;gap:16px}textarea{min-height:100px;width:100%}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}.list-item{display:flex;align-items:center;gap:14px;padding:14px 0;border-bottom:1px solid #e5e6db}.list-item input[type=checkbox]{width:20px;height:20px;accent-color:#325b40}.list-item .name{flex:1}.list-item.done .name{text-decoration:line-through;opacity:.6}.list-item select{max-width:150px;font-size:12px}.list-item input[type=number]{width:85px}dialog{max-width:620px;width:calc(100% - 24px);border:0;border-radius:16px;padding:28px;color:#243f36;background:#fffef9;max-height:90vh}dialog::backdrop{background:#18312788}.choice{width:100%;text-align:left;margin:5px 0}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#254934;color:white;padding:12px 25px;border-radius:8px;display:none}details{margin:16px 0}summary{cursor:pointer}progress{width:100%;accent-color:#3e6749}.recipe-steps{white-space:pre-wrap;line-height:1.7}@media(max-width:1100px){.shell{grid-template-columns:170px 1fr}main{padding:24px 20px}.days{grid-template-columns:repeat(3,1fr)}}@media(max-width:700px){header{height:85px;padding:18px}.brand{font-size:25px}.pill{font-size:8px}.shell{display:block}aside{padding:10px;border-right:0}nav{display:flex;overflow:auto}nav button{white-space:nowrap;padding:10px}.aside-note{display:none}main{padding:12px}.notice{margin-bottom:22px}.stats{grid-template-columns:1fr;gap:8px}.stat{padding:15px}.stat strong{display:inline-block;margin:0 10px}.days{grid-template-columns:1fr}.meal{min-height:0;display:grid;grid-template-columns:1fr auto;gap:5px 12px}.meal h3{min-height:0;grid-column:1;margin:0}.meal .row{grid-column:2;grid-row:1/4}.meal .row label{display:none}.meal>label{grid-column:1}.day-title{padding:14px}h1{font-size:31px}.list-item{flex-wrap:wrap}.list-item .name{min-width:130px}.list-item select{max-width:120px}}
