:root{--ink:#28312f;--coral:#ec745b;--sage:#9eb6a5;--cream:#f7f3eb;--line:#e3ded4}*{box-sizing:border-box}body{margin:0;color:var(--ink);font-family:system-ui;background:#fffdf9}button,input,select,textarea{font:inherit}button,a{cursor:pointer}#auth{min-height:100vh;display:grid;grid-template-columns:1.1fr .9fr}.hero{padding:45px 8vw;background:var(--sage);display:flex;flex-direction:column;justify-content:space-between}.hero h1{font:400 clamp(48px,6vw,82px) Georgia;max-width:650px}.hero em{color:white}.hero p{line-height:2}.forms{display:grid;place-items:center;padding:30px}.forms form{width:min(410px,100%)}small{color:var(--coral);letter-spacing:.18em;font-weight:bold}h2{font:400 38px Georgia}label{display:grid;gap:8px;margin:20px 0;font-size:13px;font-weight:bold}input,select,textarea{padding:14px;border:1px solid var(--line);border-radius:5px}form>button{width:100%;padding:15px;border:0;background:var(--ink);color:white;margin:12px 0}a{color:var(--coral);font-weight:bold}header{height:75px;padding:0 4vw;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:20px}header span{margin-left:auto}header button,.head button,nav button{padding:10px 16px;border:1px solid var(--line);background:white}nav{position:fixed;width:190px;top:75px;bottom:0;border-right:1px solid var(--line);padding:35px 20px;display:grid;align-content:start;gap:8px}nav button.active{background:#edf2ee}#dash main{margin-left:190px;padding:50px 6vw}.head{display:flex;justify-content:space-between;align-items:end}.head h1{font:400 42px Georgia}.grid{display:grid;grid-template-columns:repeat(7,1fr);gap:10px}.day,.meal{border:1px solid var(--line);background:white;border-radius:7px;padding:18px;text-align:left;min-height:145px}.day:hover,.meal:hover{border-color:var(--coral)}.today{border:2px solid var(--coral)}.dots{display:flex;gap:7px;margin:20px 0}.dot{width:10px;height:10px;border-radius:50%;background:var(--line)}.dot.on{background:var(--coral)}.tag{font-size:10px;padding:5px 8px;background:#edf2ee;border-radius:12px}.todaygrid{grid-template-columns:repeat(3,1fr)}.meal{min-height:250px}.meal h2{margin-top:45px}.yes{border-top:4px solid var(--coral)}dialog{border:0;border-radius:8px;padding:30px;width:min(550px,90%)}dialog::backdrop{background:#28312faa}#close{float:right;width:auto;background:none;color:var(--ink);font-size:24px}.checks{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.checks label{border:1px solid var(--line);padding:12px}.checks input{width:auto}#toast{position:fixed;z-index:9;right:20px;top:-80px;background:var(--ink);color:white;padding:14px;transition:.2s}.show{top:20px!important}@media(max-width:750px){#auth{grid-template-columns:1fr}.hero{min-height:38vh}.hero h1{font-size:42px}.forms{padding:40px 22px}nav{position:static;width:auto;display:flex;padding:10px}#dash main{margin:0;padding:30px 15px}.grid{grid-template-columns:repeat(2,1fr)}.todaygrid{grid-template-columns:1fr}header span{display:none}}
.auth-brand{color:var(--ink);font-size:21px;font-weight:800;text-decoration:none}.auth-links{display:flex;flex-direction:column;align-items:center;gap:14px;margin-top:20px;font-size:13px}.text-button{border:0!important;background:none!important;color:var(--coral)!important;padding:0!important;margin:0!important;font-weight:bold}.error-message{color:#a23f35;background:#fff0ec;padding:12px;border-radius:5px}.muted{color:#707976;line-height:1.7}
