@font-face{font-family:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/assets/dm-sans-latin-ext-opsz-normal-oos9povj.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/assets/dm-sans-latin-opsz-normal-Bf69Tn_J.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#f7f5ed;--surface:#fffef9;--ink:#263e32;--brand:#315b43;--text-2:#656c61;--line:#dadfd1;--chip:#ebede2;--brand-soft:#dce5d4;--selected-bg:#e8eedf;--danger:#b42318;--accent:#dca85d;--dot:#75946a;--overlay:#263e3266;--shadow-lg:0 10px 30px #263e320f;--shadow-card:drop-shadow(0 10px 15px #263e320f);--app-w:402px;--pad:28px;--tab-h:64px;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);font-variation-settings:"opsz" 14;color:var(--ink);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;background:#e7e4d8;font-family:DM Sans Variable,DM Sans,system-ui,-apple-system,sans-serif}*,:before,:after{box-sizing:border-box}html,body{margin:0;padding:0}body{overscroll-behavior-y:none;min-height:100dvh}p,h1,h2,h3{margin:0}button,input{font:inherit;font-variation-settings:inherit;color:inherit}button{cursor:pointer;text-align:inherit;background:0 0;border:0;padding:0}button:disabled{cursor:default}img{-webkit-user-drag:none;-webkit-user-select:none;user-select:none;display:block}:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app{width:100%;max-width:var(--app-w);background:var(--bg);min-height:100dvh;margin:0 auto;position:relative}@media (width>=520px){.app{box-shadow:0 0 0 1px #263e320f,0 24px 60px #263e3214}}.screen{min-height:100dvh;padding-top:var(--safe-top);flex-direction:column;display:flex}.screen--tabs{padding-bottom:calc(var(--tab-h) + var(--safe-bottom))}.eyebrow{letter-spacing:1.7px;color:var(--brand);white-space:nowrap;font-size:11px;font-weight:700}.headline{letter-spacing:-1.3px;color:var(--ink);font-size:36px;font-weight:700;line-height:1.12}.lead{color:var(--text-2);font-size:15px;line-height:1.55}.intro{flex-direction:column;gap:12px;display:flex}.section-title{white-space:nowrap;justify-content:space-between;align-items:center;padding-top:8px;display:flex}.section-title__main{color:var(--ink);font-size:14px;font-weight:700}.section-title__aside{color:var(--text-2);font-size:12px}.nav{height:64px;padding:0 var(--pad);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.brand{align-items:center;gap:7px;display:flex}.brand__wordmark{letter-spacing:-1.2px;color:var(--ink);font-size:28px;font-weight:700;line-height:normal}.nav__link{color:var(--text-2);margin-right:0;padding:10px 0 10px 12px;font-size:14px;font-weight:500}.nav__link--active{color:var(--brand);font-weight:600}.back-btn{width:36px;height:36px;box-shadow:inset 0 0 0 1px var(--line);border-radius:100px;justify-content:center;align-items:center;display:flex}.btn{background:var(--brand);width:100%;height:56px;color:var(--surface);white-space:nowrap;border-radius:16px;flex-shrink:0;justify-content:center;align-items:center;gap:12px;font-size:16px;font-weight:700;transition:opacity .15s,transform .1s;display:flex}.btn:active:not(:disabled){transform:scale(.99)}.btn:disabled{opacity:.4}.btn--danger{background:var(--danger)}.btn-text{width:100%;height:44px;color:var(--text-2);justify-content:center;align-items:center;font-size:14px;font-weight:500;display:flex}.habit-card{background:var(--surface);width:100%;height:66px;min-height:66px;filter:var(--shadow-card);text-align:left;border-radius:16px;align-items:center;gap:12px;padding:14px;display:flex}.habit-card--static-shadow{filter:none;box-shadow:var(--shadow-lg)}.habit-icon{background:var(--chip);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.habit-details{flex-direction:column;flex:1 0 0;gap:3px;min-width:0;line-height:normal;display:flex}.habit-details__title,.habit-details__desc{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.habit-details__title{color:var(--ink);font-size:14px;font-weight:700}.habit-details__desc{color:var(--text-2);font-size:11px}.check{border-radius:100px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;transition:background-color .15s,box-shadow .15s;display:flex}.check--done{background:var(--brand)}.check--todo{box-shadow:inset 0 0 0 1.5px var(--line)}.trailing-number{color:var(--ink);white-space:nowrap;font-size:14px;font-weight:700}.trailing-action{color:var(--brand);white-space:nowrap;font-size:14px;font-weight:600}.delete-btn{border-radius:100px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.delete-btn:active{background:#b4231814}.swipe{touch-action:pan-y;border-radius:16px;width:100%;height:66px;position:relative}.swipe__action{background:var(--danger);visibility:hidden;border-radius:16px;transition:visibility 0s linear .22s;position:absolute;inset:0;overflow:hidden}.swipe--open .swipe__action,.swipe--dragging .swipe__action{visibility:visible;transition:none}.swipe__delete{width:84px;color:var(--surface);flex-direction:column;justify-content:center;align-items:center;gap:4px;font-size:11px;font-weight:600;display:flex;position:absolute;top:0;bottom:0;right:0}.swipe__card{will-change:transform;position:relative}.swipe__card--animating{transition:transform .22s cubic-bezier(.2,.8,.2,1)}.swipe--open .swipe__card .habit-card,.swipe--dragging .swipe__card .habit-card{filter:none}.add-habit{border:1px dashed var(--line);width:100%;height:52px;color:var(--brand);border-radius:16px;justify-content:center;align-items:center;gap:8px;font-size:14px;font-weight:600;display:flex}.habit-list{flex-direction:column;gap:10px;display:flex}.week-card{background:var(--surface);width:100%;box-shadow:var(--shadow-lg);border-radius:22px;flex-direction:column;gap:20px;padding:22px;display:flex}.week-card__heading{justify-content:space-between;align-items:center;display:flex}.week-card__title{white-space:nowrap;flex-direction:column;gap:4px;line-height:normal;display:flex}.week-card__kicker{color:var(--text-2);font-size:11px}.week-card__name{color:var(--ink);font-size:19px;font-weight:700}.week-days{justify-content:space-between;align-items:flex-start;margin:0;padding:0;list-style:none;display:flex}.week-day{color:var(--text-2);flex-direction:column;align-items:center;gap:10px;font-size:11px;line-height:normal;display:flex}.day-status{background:var(--chip);border-radius:100px;justify-content:center;align-items:center;width:30px;height:30px;display:flex}.day-status--done{background:var(--brand)}.streak{color:var(--brand);align-items:center;gap:6px;font-size:12px;line-height:normal;display:flex}.chart-card{background:var(--surface);width:100%;box-shadow:var(--shadow-lg);border-radius:22px;flex-direction:column;gap:10px;padding:22px;display:flex}.chart-card__header{white-space:nowrap;justify-content:space-between;align-items:center;line-height:normal;display:flex}.chart-card__title{color:var(--ink);font-size:14px;font-weight:700}.chart-card__range{color:var(--text-2);font-size:10px}.chart-card__total{white-space:nowrap;align-items:baseline;gap:7px;line-height:normal;display:flex}.chart-card__number{letter-spacing:-1px;color:var(--ink);font-size:35px;font-weight:700}.chart-card__unit{color:var(--text-2);font-size:12px}.chart{justify-content:space-between;align-items:flex-end;height:132px;margin:0;padding:0;list-style:none;display:flex}.chart__col{color:var(--text-2);flex-direction:column;align-items:center;gap:8px;font-size:10px;line-height:normal;display:flex}.chart__col--today{color:var(--brand)}.chart__bar{background:var(--brand-soft);border-radius:7px 7px 4px 4px;width:22px;transition:height .3s cubic-bezier(.2,.8,.2,1)}.chart__bar--empty{background:var(--chip)}.chart__bar--today{background:var(--brand)}.growth-pill{background:var(--brand);color:var(--surface);white-space:nowrap;border-radius:100px;align-items:center;gap:8px;padding:12px 15px;font-size:12px;font-weight:500;line-height:normal;display:inline-flex}.stat-row{gap:12px;display:flex}.stat{background:var(--surface);min-width:0;box-shadow:var(--shadow-lg);white-space:nowrap;border-radius:16px;flex-direction:column;flex:1 0 0;gap:2px;padding:16px;line-height:normal;display:flex}.stat__value{letter-spacing:-.6px;color:var(--ink);font-size:24px;font-weight:700}.stat__label{color:var(--text-2);font-size:12px}.tab-bar{z-index:10;width:100%;max-width:var(--app-w);height:calc(var(--tab-h) + var(--safe-bottom));padding:8px var(--pad) calc(8px + var(--safe-bottom));background:var(--bg);border-top:1px solid var(--line);align-items:flex-start;gap:12px;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.tab{height:47px;color:var(--text-2);flex-direction:column;flex:1 0 0;justify-content:center;align-items:center;gap:4px;font-size:11px;font-weight:500;line-height:normal;display:flex}.tab__indicator{border-radius:100px;justify-content:center;align-items:center;width:56px;height:30px;display:flex}.tab--active{color:var(--brand);font-weight:700}.tab--active .tab__indicator{background:var(--brand-soft)}.overlay{z-index:50;width:100%;max-width:var(--app-w);background:var(--overlay);flex-direction:column;justify-content:flex-end;margin:0 auto;animation:.2s ease-out fade-in;display:flex;position:fixed;inset:0}.sheet{width:100%;padding:28px var(--pad) calc(34px + var(--safe-bottom));background:var(--bg);border-radius:22px 22px 0 0;flex-direction:column;gap:14px;animation:.28s cubic-bezier(.2,.8,.2,1) slide-up;display:flex}.sheet__title{letter-spacing:-.6px;color:var(--ink);overflow-wrap:anywhere;font-size:24px;font-weight:700;line-height:normal}.sheet__body{color:var(--text-2);font-size:15px;line-height:1.55}.steps{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.step{background:var(--surface);color:var(--ink);border-radius:16px;align-items:center;gap:12px;padding:12px 14px;font-size:14px;line-height:1.4;display:flex}.step b{font-weight:700}@keyframes fade-in{0%{opacity:0}}@keyframes slide-up{0%{transform:translateY(100%)}}.choices{flex-direction:column;gap:12px;display:flex}.option{background:var(--surface);width:100%;height:80px;box-shadow:inset 0 0 0 1px var(--line);text-align:left;border-radius:16px;align-items:center;gap:12px;padding:16px;transition:background-color .15s,box-shadow .15s;display:flex}.option--selected{background:var(--selected-bg);box-shadow:inset 0 0 0 2px var(--brand)}.option__icon{background:var(--chip);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.option--selected .option__icon{background:var(--brand-soft)}.option__details{flex-direction:column;flex:1 0 0;gap:4px;min-width:0;line-height:normal;display:flex}.option__title{color:var(--ink);font-size:15px;font-weight:700}.option__desc{color:var(--text-2);font-size:12px}.radio{background:var(--surface);width:24px;height:24px;box-shadow:inset 0 0 0 1.5px var(--line);border-radius:100px;flex-shrink:0}.select-screen__content{padding:26px var(--pad) 0;flex-direction:column;gap:24px;display:flex}.select-screen__footer{padding:24px var(--pad) calc(23px + max(var(--safe-bottom), 0px));flex-direction:column;gap:18px;margin-top:auto;display:flex}.footnote{color:var(--text-2);text-align:center;font-size:12px;line-height:normal}.field{flex-direction:column;gap:8px;display:flex}.field__label{color:var(--ink);font-size:13px;font-weight:600;line-height:normal}.field__control{background:var(--surface);width:100%;height:54px;box-shadow:inset 0 0 0 1px var(--line);color:var(--ink);border:0;border-radius:16px;outline:none;padding:0 16px;font-size:14px;transition:box-shadow .15s}.field__control::placeholder{color:var(--text-2)}.field__control:focus{box-shadow:inset 0 0 0 2px var(--brand)}.field--error .field__control,.field--error .field__control:focus{box-shadow:inset 0 0 0 2px var(--danger)}.field__error{color:var(--danger);font-size:13px;font-weight:600;line-height:normal}.icon-options{justify-content:space-between;display:flex}.icon-option{aspect-ratio:1;background:var(--surface);min-width:32px;box-shadow:inset 0 0 0 1px var(--line);border-radius:12px;flex:0 38px;justify-content:center;align-items:center;display:flex}.icon-option--selected{background:var(--brand-soft);box-shadow:inset 0 0 0 2px var(--brand)}.illustration{flex-shrink:0;justify-content:center;align-items:center;height:352px;display:flex}.illustration__stage{flex-shrink:0;width:346px;height:326px;position:relative}.abs{position:absolute}.note-pill{background:var(--surface);color:var(--brand);white-space:nowrap;border-radius:100px;padding:8px 12px;font-size:12px;font-weight:500;line-height:normal;display:inline-flex}.rotate-box{justify-content:center;align-items:center;display:flex}.seal{background:var(--accent);border-radius:100px;justify-content:center;align-items:center;width:58px;height:58px;display:flex}.onboarding__intro{min-height:208px;padding:14px var(--pad) 0;flex-shrink:0}.step-nav{height:calc(168px + var(--safe-bottom));padding:14px var(--pad) calc(15px + var(--safe-bottom));flex-direction:column;flex-shrink:0;justify-content:space-between;align-items:center;gap:16px;margin-top:auto;display:flex}.step-indicator{gap:7px;display:flex}.step-indicator__dot{background:var(--line);border-radius:100px;width:7px;height:6px;transition:width .25s,background-color .25s}.step-indicator__dot--active{background:var(--brand);width:28px}.step-nav__secondary{width:100%;min-height:18px;color:var(--text-2);white-space:nowrap;justify-content:space-between;align-items:center;line-height:normal;display:flex}.step-nav__back{color:var(--text-2);font-size:14px;font-weight:500}.step-nav__count{margin-left:auto;font-size:12px}@media (height<=800px){.onboarding__intro{min-height:0}.step-nav{gap:18px;height:auto}}@media (height<=745px){.illustration{height:290px}.illustration__stage{transform:scale(.84)}}@media (height<=690px){.illustration{height:250px}.illustration__stage{transform:scale(.72)}}@media (height<=620px){.illustration{height:210px}.illustration__stage{transform:scale(.6)}}.content{padding:14px var(--pad) 24px;flex-direction:column;gap:16px;display:flex}.success__content{padding:26px var(--pad) calc(13px + max(var(--safe-bottom), 21px));flex-direction:column;flex:1 0 auto;justify-content:space-between;gap:28px;display:flex}.success__top{flex-direction:column;gap:28px;display:flex}.stack-12{flex-direction:column;gap:12px;display:flex}.enter{animation:.32s cubic-bezier(.2,.8,.2,1) enter}@keyframes enter{0%{opacity:0;transform:translateY(8px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}
