:root{--mist:#eef4f1;--card:#ffffff;--ink:#1c2a27;--dim:#5a6b66;--rule:#dde8e3;--leaf:#2e8b6b;--leaf-2:#227a5c;--sky:#4a86c4;--apricot:#e98a4b;--pale:#dff0e9}
@media (prefers-color-scheme:dark){:root{--mist:#0f1715;--card:#16201d;--ink:#e7efec;--dim:#93a8a2;--rule:#243430;--leaf:#5fcfa5;--leaf-2:#6ad7af;--sky:#79b2e6;--apricot:#f0a673;--pale:#143029}}
*{box-sizing:border-box}body{margin:0;background:var(--mist);color:var(--ink);font:16.5px/1.72 "Nunito Sans","Segoe UI",system-ui,sans-serif}
a{color:var(--leaf-2);text-underline-offset:3px;font-weight:600}
.trackbar{background:var(--card);border-bottom:1px solid var(--rule)}
.trackbar .wellbeing-frame{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 22px;padding:15px 20px}
.wellbeing-frame{max-width:1020px;margin:0 auto;padding:0 20px}
.pulsemark{font:800 20px/1 "Nunito Sans","Segoe UI",sans-serif;letter-spacing:.01em;color:var(--ink);text-decoration:none;display:inline-flex;align-items:center;gap:9px}
.pulsemark::before{content:"";width:16px;height:16px;border-radius:50%;border:3px solid var(--leaf);border-right-color:transparent;transform:rotate(-30deg)}
.routine-nav{display:flex;flex-wrap:wrap;gap:4px 18px;font-size:14px}
.routine-nav a{color:var(--dim);text-decoration:none;font-weight:600}.routine-nav a:hover{color:var(--leaf-2)}
.streak-hero{padding:48px 0 24px;max-width:36ch}
.streak-hero h1{font-size:clamp(29px,5.2vw,48px);line-height:1.08;margin:0 0 12px}
.streak-hero .today-lead{font-size:18px;color:var(--dim);margin:0}
.habit-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;padding:12px 0 76px}
.habitcard{background:var(--card);border:1px solid var(--rule);border-radius:16px;padding:22px 24px;text-decoration:none;color:var(--ink);display:block}
.habitcard:hover{border-color:var(--leaf);box-shadow:0 6px 18px rgba(28,42,39,.07)}
.goal-tag{display:inline-block;font-size:11.5px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--leaf-2);background:var(--pale);border-radius:999px;padding:3px 11px}
.habitcard h2{font-size:19.5px;line-height:1.3;margin:11px 0 7px}.habitcard p{margin:0;color:var(--dim);font-size:14.5px;line-height:1.56}
.logbook-sheet{max-width:720px;margin:34px auto 78px;background:var(--card);border:1px solid var(--rule);border-radius:18px;padding:clamp(24px,5vw,46px)}
.logbook-sheet h1{font-size:clamp(26px,4.6vw,38px);line-height:1.12;margin:9px 0 14px}
.logbook-sheet .today-lead{font-size:18.5px;color:var(--dim);margin:0 0 26px;padding-bottom:18px;border-bottom:1px solid var(--rule)}
.logbook-sheet h2{font-size:21px;line-height:1.3;margin:30px 0 8px;color:var(--leaf-2)}
.logbook-sheet p{margin:0 0 15px}.logbook-sheet ul,.logbook-sheet ol{margin:0 0 16px;padding-left:1.4em}.logbook-sheet li{margin:6px 0}
.balance-note{background:var(--pale);border-left:4px solid var(--apricot);border-radius:0 8px 8px 0;padding:13px 17px;font-size:15px}
.logged-stamp{margin-top:32px;font-size:13.5px;color:var(--dim);letter-spacing:.04em}
.vitals-foot{background:var(--card);border-top:1px solid var(--rule)}.vitals-foot .wellbeing-frame{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 22px;padding:22px 20px 30px;font-size:13.5px;color:var(--dim)}.vitals-foot a{color:var(--leaf-2)}
@media(max-width:680px){.habit-grid{grid-template-columns:1fr}.logbook-sheet{margin-top:20px}.streak-hero{padding-top:32px}}