@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@500;600;700&display=swap');
:root{color:#253a30;background:#f5f5ef;font-family:'DM Sans',sans-serif;font-size:15px}*{box-sizing:border-box}body{margin:0}a{color:#486858;text-decoration:none}a:hover{text-decoration:underline}.layout{display:grid;grid-template-columns:244px 1fr;min-height:100vh}aside{background:#fdfdf9;border-right:1px solid #e4e9df;padding:32px 20px;display:flex;flex-direction:column}.brand{font-weight:700;letter-spacing:.13em;font-size:13px;color:#243d30;display:block;margin:2px 0 52px}.brand span{color:#8aab73;font-size:22px;vertical-align:middle;margin-right:8px}.aside-label,.eyebrow{font-size:10px;letter-spacing:.16em;font-weight:700;color:#89998a}.aside-label{margin:18px 10px}nav a{display:flex;gap:15px;padding:12px 13px;border-radius:8px;color:#627367;margin:3px 0}nav a:hover{background:#eaf0e7;text-decoration:none;color:#294536}.aside-bottom{margin-top:auto;padding:22px 14px;background:#f0f4ec;border-radius:12px;line-height:1.7;color:#6b806d}main{width:min(1120px,100%);padding:39px 55px 70px}header{display:flex;justify-content:space-between;align-items:center}h1,h2,h3{font-family:'Playfair Display',serif;font-weight:600}h1{font-size:36px;letter-spacing:-.035em;margin:8px 0 0}.avatar{width:41px;height:41px;border-radius:50%;background:#d9e8d5;display:grid;place-items:center;font-weight:700}.intro{color:#7c8b7d;margin:10px 0 26px}.hero{background:#395d49;border-radius:15px;color:white;padding:32px 38px;min-height:226px;display:flex;justify-content:space-between;overflow:hidden}.hero h2{font-size:33px;line-height:1.15;margin:14px 0}.hero p{color:#d5e4d8}.light{color:#bdcfbc}.hero-illustration{font-size:82px;line-height:.8;align-self:center;color:#b9d0a7;text-align:center}.hero-illustration span{font:italic 20px 'Playfair Display';color:#f1eedc;line-height:1.3;display:block}.button,button{border:0;background:#476c53;color:white;border-radius:8px;padding:12px 17px;font:600 13px 'DM Sans',sans-serif;cursor:pointer;display:inline-block}.light-button{background:#fff;color:#365541;margin-top:8px}.section-head{display:flex;align-items:end;justify-content:space-between;margin:35px 0 15px}.section-head h2{margin:7px 0;font-size:24px}.section-head a,.card a{font-size:13px;font-weight:700}.meals{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.card{background:#fff;border:1px solid #e8ece5;border-radius:12px;padding:23px;margin-bottom:16px;box-shadow:0 2px 8px #29453608}.meal{min-height:180px}.meal-icon{background:#f1f4eb;color:#729364;width:38px;height:38px;display:grid;place-items:center;border-radius:10px;margin-bottom:16px}.meal small{color:#8a9a8b}.meal h3{font-size:19px;margin:8px 0}.card p{line-height:1.5;color:#829087;font-size:13px}.card h2{font-size:21px;margin:4px 0 14px}.card h2 small{font:14px 'DM Sans';color:#8a998e}.two{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:5px}.row{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid #edf0ea;padding:12px 0}.row p{margin:5px 0}.row input{max-width:95px}.form-grid,.menu-edit{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}label{display:block;font-size:12px;font-weight:700;color:#536a59;margin:13px 0}input,select,textarea{display:block;width:100%;border:1px solid #dce5d9;border-radius:7px;background:#fff;padding:10px;margin-top:6px;font:14px 'DM Sans';color:#253a30}textarea{resize:vertical}.inline{display:flex;gap:8px;align-items:center}.inline input{margin:0;min-width:0}.ghost{color:#496b52;background:#edf3ec}.notice{padding:15px;background:#fff6de;color:#785c25;border-radius:8px;margin-bottom:18px}.pre{white-space:pre-line}.login{min-height:100vh;display:grid;place-items:center;background:#eaf0e5}.login-box{max-width:430px;width:90%;padding:40px;background:#fff;border-radius:15px}.login-box .brand{margin-bottom:42px}.login-box h1{font-size:48px;line-height:1.05}.login-box p{color:#78897b;line-height:1.6}.error{color:#9a3838!important}.muted{font-size:12px}@media(max-width:760px){.layout{display:block}aside{padding:14px;position:static}.brand{margin:0 0 12px}nav{display:flex;overflow:auto;gap:5px}nav a{white-space:nowrap}aside .aside-label,.aside-bottom{display:none}main{padding:25px 18px}.meals,.two,.menu-edit,.form-grid{grid-template-columns:1fr}.hero{padding:25px}.hero-illustration{font-size:55px}.hero h2{font-size:28px}.inline{flex-wrap:wrap}}
