:root{--g:#1f5f3f;--g2:#2f8a57;--g3:#e6f2ea;--spark:#e8b23a;--bg:#fbf8f1;--ink:#1d2a22;--mut:#5c6b62}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;font:17px/1.6 Georgia,"Times New Roman",serif;color:var(--ink);background:var(--bg);padding-bottom:84px}
h1,h2,h3,.brand,.btn,.tabs,.eyebrow,label,.pill,.stat b{font-family:system-ui,-apple-system,"Segoe UI",sans-serif}
.wrap{max-width:720px;margin:auto;padding:0 18px}
.top{background:var(--g);color:#fff;padding:14px 18px;position:sticky;top:0;z-index:5}
.brand{color:#fff;text-decoration:none;font-weight:800;letter-spacing:.04em;font-size:1.15rem}.brand span{color:var(--spark)}
.hero{background:radial-gradient(circle at 75% 15%,#3f9a66,var(--g) 65%);color:#fff;margin:0 -18px;padding:30px 18px;display:flex;gap:18px;align-items:center}
.hero img{width:110px;border-radius:5px;box-shadow:0 14px 30px rgba(0,0,0,.4)}
.hero h1{font-size:1.7rem;line-height:1.15;margin:.2em 0}.eyebrow{text-transform:uppercase;letter-spacing:.14em;color:var(--spark);font-weight:700;font-size:.75rem;margin:0}
h2{color:var(--g);font-size:1.35rem;margin:1.4em 0 .4em}h3{margin:.2em 0;color:var(--g);font-size:1.05rem}
.card{background:#fff;border-radius:14px;padding:18px;margin:14px 0;box-shadow:0 2px 10px rgba(31,95,63,.08);border:1px solid #e8efe9}
.card.spark{border-left:5px solid var(--spark)}
.btn{display:inline-block;border:0;border-radius:999px;padding:12px 20px;background:var(--g);color:#fff;font-weight:700;font-size:1rem;text-decoration:none;cursor:pointer;margin:6px 6px 0 0}
.btn.alt{background:var(--spark);color:var(--ink)}.btn.ghost{background:transparent;color:var(--g);border:2px solid var(--g)}
.btn:disabled{opacity:.45}
.q{margin:18px 0}.q p{margin:0 0 8px}.scale{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}
.scale label{display:block;text-align:center;padding:10px 0;border-radius:10px;border:2px solid #cfe0d4;cursor:pointer;font-weight:700;background:#fff}
.scale input{display:none}.scale input:checked+span{color:#fff}.scale label:has(input:checked){background:var(--g2);border-color:var(--g2);color:#fff}
.legend{font-size:.85rem;color:var(--mut)}.progressbar{height:8px;background:#dde9e1;border-radius:9px;overflow:hidden;margin:8px 0}.progressbar div{height:100%;background:var(--spark)}
.big{font:800 3rem/1 system-ui,sans-serif;color:var(--g)}.pill{display:inline-block;background:var(--g3);color:var(--g);border-radius:99px;padding:3px 10px;font-size:.8rem;font-weight:700}
.bars .row{display:grid;grid-template-columns:90px 1fr 46px;gap:8px;align-items:center;font-family:system-ui,sans-serif;font-size:.9rem;margin:6px 0}
.bars .track{height:12px;background:#e4ece6;border-radius:9px;overflow:hidden}.bars .fill{height:100%;background:var(--g2)}.bars .low .fill{background:var(--spark)}
textarea,input[type=text]{width:100%;font:inherit;padding:10px;border-radius:10px;border:1.5px solid #cfe0d4;background:#fff}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.stat{background:#fff;border-radius:12px;padding:12px;text-align:center;border:1px solid #e8efe9}.stat b{display:block;font-size:1.6rem;color:var(--g)}
.cal{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.cal div{aspect-ratio:1;border-radius:6px;background:#e4ece6}.cal .on{background:var(--g2)}.cal .today{outline:2px solid var(--spark)}
.log li{margin:6px 0}.muted{color:var(--mut);font-size:.9rem}blockquote{margin:10px 0;padding:10px 14px;background:var(--g3);border-radius:10px;font-style:italic}
.tabs{position:fixed;bottom:0;left:0;right:0;display:flex;background:#fff;border-top:1px solid #dde7df;z-index:9}
.tabs a{flex:1;text-align:center;padding:8px 0 10px;font-size:.72rem;color:var(--mut);text-decoration:none}.tabs i{display:block;font-style:normal;font-size:1.2rem}
.tabs a.act{color:var(--g);font-weight:700}.foot{font-size:.8rem;color:var(--mut);padding:20px 18px}.foot a{color:var(--g)}
svg text{font-family:system-ui,sans-serif;font-size:11px;fill:#5c6b62}
@media(min-width:760px){.hero{border-radius:0 0 16px 16px}.hero img{width:150px}}
