:root{--ground: #F2F4EF;--sage: #2E6B5A;--sage-soft: #DCE9E2;--apricot: #F4A672;--apricot-soft: #FBE3D2;--ink: #1D2925;--muted: #56645F;--line: #D5DDD6;--white: #FFFFFF;--error: #9A3B12}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%;height:100%}body{background:var(--ground);color:var(--ink);font-family:Figtree,system-ui,sans-serif;-webkit-font-smoothing:antialiased}button,input,textarea{font:inherit}.screen{min-height:100dvh;max-width:480px;margin:0 auto;display:flex;flex-direction:column;padding:calc(56px + env(safe-area-inset-top)) 24px calc(36px + env(safe-area-inset-bottom));background:var(--ground)}.screen--sage{background:var(--sage);color:var(--white)}.grow{flex-grow:1}.stack{display:flex;flex-direction:column}.splash{position:relative;overflow:hidden;padding:calc(96px + env(safe-area-inset-top)) 28px calc(40px + env(safe-area-inset-bottom))}.splash>:not([aria-hidden]){position:relative}.splash__ring{position:absolute;border-radius:50%}.splash__ring--lg{right:-120px;top:120px;width:360px;height:360px;border:1.5px solid rgba(255,255,255,.18)}.splash__ring--md{right:-60px;top:180px;width:240px;height:240px;border:1.5px solid rgba(255,255,255,.24)}.splash__dot{position:absolute;right:0;top:240px;width:120px;height:120px;border-radius:50%;background:var(--apricot)}.splash__brand{margin:0;font-size:15px;font-weight:600;letter-spacing:.04em}.splash__title{margin:0;font-size:40px;line-height:1.08;font-weight:700;letter-spacing:-.02em}.splash__lede{margin:18px 0 0;font-size:17px;line-height:1.5;color:var(--sage-soft)}.h1{margin:36px 0 0;font-size:30px;line-height:1.15;font-weight:700;letter-spacing:-.01em}.lede{margin:12px 0 0;font-size:16px;line-height:1.5;color:var(--muted)}.field{display:block;margin-top:28px;font-size:14px;font-weight:600}.input{display:block;width:100%;margin-top:8px;height:60px;border-radius:18px;border:2px solid var(--line);background:var(--white);padding:0 18px;font-size:18px;color:var(--ink)}.input:focus{outline:none;border-color:var(--sage)}.input--code{height:72px;border-color:var(--sage);font-size:32px;font-weight:700;letter-spacing:.2em;text-align:center}.btn{display:flex;align-items:center;justify-content:center;height:60px;border:0;border-radius:18px;font-size:18px;font-weight:600;cursor:pointer;text-decoration:none}.btn:disabled{opacity:.6;cursor:default}.btn--white{background:var(--white);color:var(--ink)}.btn--sage{margin-top:12px;background:var(--sage);color:var(--white)}.btn--link,.btn--link-light{height:auto;min-height:48px;background:transparent;font-size:15px}.btn--link{margin-top:8px;color:var(--sage)}.btn--link-light{margin-top:6px;color:var(--white)}.icon-btn{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border:0;border-radius:14px;background:var(--white);color:var(--ink);cursor:pointer}.error{margin:16px 0 0;font-size:15px;line-height:1.4;color:var(--error)}.footnote{margin:0;text-align:center;font-size:13px;line-height:1.5;color:var(--muted)}.ob-head{display:flex;align-items:center;gap:12px;height:44px}.ob-head__spacer{width:44px;flex-shrink:0}.ob-progress{flex-grow:1;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.ob-progress span{height:6px;border-radius:3px;background:var(--line)}.ob-progress .is-on{background:var(--sage)}.eyebrow{margin:36px 0 8px;font-size:14px;font-weight:600;color:var(--sage)}.eyebrow--tight{margin-top:32px}.h1--flush{margin-top:0}.sage-deep{color:#1f4a3e}.card{background:var(--white);border-radius:20px;padding:14px 18px}.time-row{display:flex;align-items:center;gap:14px;min-height:76px}.time-row__label{flex-grow:1;font-size:17px;font-weight:600}.time-row input{font-size:26px;font-weight:700;border:0;background:var(--ground);border-radius:12px;padding:8px 10px;color:var(--ink);min-width:130px;max-width:190px}.time-row input::-webkit-calendar-picker-indicator{display:none}.note{display:flex;gap:12px;align-items:flex-start;background:var(--sage-soft);border-radius:16px;padding:14px 16px}.note svg{flex-shrink:0;margin-top:2px}.note p{margin:0;font-size:15px;line-height:1.45;color:#1f4a3e}.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.choice{border:2px solid transparent;background:var(--white);color:var(--ink);border-radius:18px;padding:12px 16px;min-height:60px;font-size:18px;font-weight:600;cursor:pointer}.choice[aria-pressed=true]{border-color:var(--sage);background:var(--sage-soft);color:#1f4a3e}.choice--tall{min-height:72px;text-align:left}.choice--small{min-height:48px;border-radius:14px;font-size:17px;background:var(--ground)}.choice__big{display:block;font-size:20px;font-weight:700}.choice__sub{display:block;font-size:13px;font-weight:400;margin-top:2px;opacity:.8}.stepper{display:flex;align-items:center;gap:12px}.stepper__label{flex-grow:1}.stepper__title{display:block;font-size:17px;font-weight:600}.stepper__hint{display:block;font-size:13px;color:var(--muted);margin-top:2px}.stepper button{flex-shrink:0;width:48px;height:48px;border-radius:14px;border:0;background:var(--ground);font-size:24px;color:var(--ink);cursor:pointer}.stepper button:disabled{opacity:.35;cursor:default}.stepper__value{width:34px;text-align:center;font-size:24px;font-weight:700}.date-opt{display:flex;align-items:center;gap:10px;min-height:76px}.date-opt__text{flex-grow:1;text-align:left}.date-opt__label{display:block;font-size:19px;font-weight:700}.date-opt__sub{display:block;font-size:14px;font-weight:400;margin-top:3px;opacity:.85}.pill{font-size:12px;font-weight:700;padding:5px 9px;border-radius:99px;background:var(--apricot-soft);color:#8a3f12}.date-other{display:flex;align-items:center;gap:12px;min-height:56px;border-radius:18px;padding:0 18px;border:2px dashed var(--line);font-size:16px;font-weight:600;color:var(--muted)}.date-other.is-on{border-style:solid;border-color:var(--sage);background:var(--sage-soft);color:#1f4a3e}.date-other input{font-size:15px;border:0;background:transparent;color:var(--ink)}.strip{display:flex;gap:4px;height:12px}.strip span{border-radius:6px}.strip__labels{display:flex;gap:4px;margin-top:8px;font-size:13px;line-height:1.3}.quitline{display:flex;align-items:center;gap:10px;margin-top:14px;min-height:52px;border-radius:14px;background:var(--sage-soft);padding:0 16px;text-decoration:none;color:#1f4a3e;font-weight:600;font-size:16px}.small{margin:0;font-size:14px;line-height:1.5;color:var(--muted)}.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.chip{min-height:48px;padding:0 16px;border-radius:99px;font-size:16px;font-weight:600;cursor:pointer;border:2px solid var(--line);background:var(--white);color:var(--ink)}.chip[aria-pressed=true]{border-color:var(--sage);background:var(--sage);color:var(--white)}.timeline{list-style:none;margin:24px 0 0;padding:0}.timeline li{display:flex;gap:14px}.timeline__rail{display:flex;flex-direction:column;align-items:center;width:20px;flex-shrink:0}.timeline__dot{width:16px;height:16px;border-radius:50%;margin-top:4px;box-sizing:border-box}.timeline__line{flex-grow:1;width:2px;background:var(--line)}.timeline__body{padding-bottom:18px}.timeline__title{margin:0;font-size:17px;font-weight:700}.timeline__text{margin:4px 0 0;font-size:15px;line-height:1.45;color:var(--muted)}.screen--tabs{padding-bottom:calc(104px + env(safe-area-inset-bottom));padding-left:20px;padding-right:20px}.today-head{display:flex;align-items:baseline;gap:10px;padding:0 4px}.today-head h1{margin:0;font-size:24px;font-weight:700}.today-head span{font-size:14px;font-weight:600;color:var(--muted)}.hero{flex-grow:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px 0}.hero__label{margin:0;font-size:16px;font-weight:700;color:var(--sage)}.hero__label--due{color:#8a3f12}.hero__label--muted{font-weight:600;color:var(--muted)}.hero__big{margin:6px 0 0;font-size:96px;line-height:1;font-weight:700;letter-spacing:-.04em;font-variant-numeric:tabular-nums}.hero__big--count{font-size:112px}.hero__big--gum{font-size:88px}.hero__sub{margin:12px 0 0;font-size:15px;color:var(--muted)}.hero__sub--over{color:#8a3f12;font-weight:600}.hero__lede{margin:28px 20px 0;font-size:16px;line-height:1.5;color:var(--muted)}.dots{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin-top:22px;max-width:280px}.dots span{width:14px;height:14px;border-radius:50%;background:var(--line)}.dots .is-taken{background:var(--sage)}.dots .is-due,.dots .is-over{background:var(--apricot)}.new-pill{margin:16px 0 0;display:inline-flex;align-items:center;min-height:32px;padding:0 12px;border-radius:99px;background:var(--apricot-soft);color:#8a3f12;font-size:13px;font-weight:700}.new-pill+.new-pill{margin-top:6px}.big-btn{height:96px;border-radius:28px;border:0;background:var(--sage);color:var(--white);font-size:24px;font-weight:700;cursor:pointer}.big-btn--outline{border:2px solid var(--sage);background:var(--white);color:var(--sage);font-size:18px}.btn-pair{display:grid;grid-template-columns:1fr 1.5fr;gap:10px;margin-top:12px}.btn-pair .big-btn:last-child{font-size:22px}.gum-card{background:var(--white);border-radius:22px;padding:16px 18px}.gum-card__row{display:flex;align-items:baseline;gap:8px}.gum-card__title{margin:0;font-size:16px;font-weight:700;flex-grow:1}.gum-card__aim{margin:0;font-size:13px;color:var(--muted)}.gum-card__aim--over{color:#8a3f12;font-weight:700}.gum-card__text{margin:8px 0 0;font-size:14px;line-height:1.45;color:var(--muted)}.sync-note{margin:0 0 8px;text-align:center;font-size:13px;color:var(--muted)}.sheet-veil{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;background:#1d292566;display:flex;flex-direction:column;justify-content:flex-end}.sheet{max-width:480px;width:100%;margin:0 auto;background:var(--white);border-radius:28px 28px 0 0;padding:22px 20px calc(34px + env(safe-area-inset-bottom))}.sheet__note{margin:0;font-size:14px;font-weight:600;color:var(--sage)}.sheet__note--early{color:#8a3f12}.sheet__title{margin:4px 0 16px;font-size:22px;font-weight:700}.tag-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.tag-btn{min-height:56px;border-radius:16px;border:0;background:var(--ground);color:var(--ink);font-size:16px;font-weight:600;cursor:pointer}.tag-add{width:100%;min-height:56px;margin-top:8px;border-radius:16px;border:2px dashed var(--line);background:var(--white);color:var(--sage);font-size:16px;font-weight:600;cursor:pointer}.tag-new{display:flex;gap:8px;margin-top:8px}.tag-new .input{margin-top:0;height:56px;border-radius:16px;font-size:16px}.tag-new .tag-btn{padding:0 18px;background:var(--sage);color:var(--white)}.sheet__foot{display:flex;margin-top:12px}.sheet__foot button{min-height:48px;padding:0 8px;border:0;background:transparent;font-size:15px;font-weight:600;color:var(--muted);cursor:pointer}.sheet__foot button:last-child{margin-left:auto;color:var(--sage);font-weight:700}.tabs{position:fixed;left:0;right:0;bottom:0;z-index:10;height:calc(84px + env(safe-area-inset-bottom));background:var(--white);border-top:1px solid var(--line)}.tabs__in{max-width:480px;margin:0 auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:8px 8px calc(20px + env(safe-area-inset-bottom));height:100%;box-sizing:border-box}.tab{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border:0;background:transparent;color:var(--muted);font-size:12px;font-weight:600;cursor:pointer}.tab[aria-current=page]{color:var(--sage);font-weight:700}.takeover{position:fixed;top:0;right:0;bottom:0;left:0;z-index:15;overflow-y:auto;background:var(--ground)}.takeover>.screen{min-height:100%}.takeover--sage,.takeover--sage>.screen{background:var(--sage);color:var(--white)}.craving-head{display:flex;align-items:center}.craving-head h1{margin:0 4px;font-size:24px;font-weight:700;flex-grow:1}.ring{position:relative;width:240px;height:240px}.ring svg{transform:rotate(-90deg)}.ring__clock{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:52px;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.craving-phrase{margin:24px 16px 0;min-height:50px;text-align:center;font-size:18px;line-height:1.4}.text-link{display:flex;align-items:center;justify-content:center;min-height:48px;font-size:16px;font-weight:600;color:var(--sage);text-decoration:none;background:none;border:0;cursor:pointer}.text-link--small{font-size:15px}.text-link--muted{color:var(--muted)}.link-row{display:flex;justify-content:space-between;margin-bottom:8px}.link-row .text-link{padding:0 8px}.banner{margin-top:14px;border-radius:24px;padding:18px 20px;background:var(--sage);color:var(--white)}.banner__title{margin:0;font-size:28px;font-weight:700}.banner__text{margin:6px 0 0;font-size:15px;line-height:1.45;color:var(--sage-soft)}.banner__count{display:flex;align-items:baseline;gap:10px}.banner__count b{font-size:56px;line-height:1;font-weight:700;letter-spacing:-.03em}.banner__count span{font-size:18px;font-weight:700}.bar14{display:grid;grid-template-columns:repeat(14,minmax(0,1fr));gap:4px;margin-top:16px}.bar14 span{height:10px;border-radius:5px;background:#ffffff40}.bar14 .is-on{background:var(--white)}.bar14 .is-slip{background:var(--apricot)}.today-head .is-quit{color:#8a3f12}.tips-head{margin:22px 4px 10px;font-size:16px;font-weight:700}.tips{list-style:none;margin:0;padding:0;background:var(--white);border-radius:22px;overflow:hidden}.tips li{display:flex;gap:14px;align-items:baseline;padding:14px 18px;border-bottom:1px solid #E8EDE6}.tips li:last-child{border-bottom:0}.tips b{width:82px;flex-shrink:0;font-size:16px}.tips span{font-size:15px;color:var(--muted)}.gp-card{margin-top:12px;background:var(--apricot-soft);border-radius:22px;padding:16px 18px;color:#5e2a0b}.gp-card p{margin:0}.gp-card__title{font-size:16px;font-weight:700}.gp-card__text{margin-top:6px!important;font-size:14px;line-height:1.45}.gp-card button{margin-top:12px;min-height:48px;padding:0 18px;border-radius:14px;border:0;background:#5e2a0b;color:var(--white);font-size:15px;font-weight:700;cursor:pointer}.big-btn--link{display:flex;align-items:center;justify-content:center;text-decoration:none}.outcome{padding-top:calc(96px + env(safe-area-inset-top));padding-left:28px;padding-right:28px;position:relative;overflow:hidden}.outcome__ring{position:absolute;left:-80px;top:-80px;width:300px;height:300px;border-radius:50%;border:1.5px solid rgba(255,255,255,.18)}.outcome__tick{position:relative;width:96px;height:96px;border-radius:50%;background:var(--apricot);display:flex;align-items:center;justify-content:center;color:#3b1a06}.outcome__eyebrow{margin:32px 0 0;font-size:16px;font-weight:600;color:var(--sage-soft)}.outcome__eyebrow--sage{margin-top:0;color:var(--sage)}.outcome__title{margin:8px 0 0;font-size:44px;line-height:1.05;font-weight:700;letter-spacing:-.02em}.outcome__title--dark{font-size:36px;line-height:1.1}.outcome__text{margin:18px 0 0;font-size:17px;line-height:1.5;color:var(--sage-soft)}.outcome__text--muted{margin-top:16px;color:var(--muted)}.outcome ol{margin:24px 0 0;padding:0 0 0 22px;font-size:16px;line-height:1.6}.stat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:28px}.stat{background:var(--white);border-radius:20px;padding:16px}.stat b{display:block;font-size:32px;font-weight:700}.stat b small{font-size:18px;color:var(--muted)}.stat span{display:block;margin-top:4px;font-size:14px;color:var(--muted)}.btn-tall{height:64px;border-radius:20px;font-size:18px;font-weight:700}.light-link{color:var(--white)}.tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:14px}.tile{background:var(--white);border-radius:18px;padding:12px}.tile b{display:block;font-size:28px;font-weight:700}.tile b small{font-size:16px;color:var(--muted)}.tile span{display:block;margin-top:2px;font-size:12px;line-height:1.3;color:var(--muted)}.tile--apricot{background:var(--apricot-soft);color:#5e2a0b}.tile--apricot span,.tile--apricot b small{color:#5e2a0b}.panel{margin-top:12px;background:var(--white);border-radius:24px;padding:16px}.panel__head{display:flex;align-items:baseline}.panel__head p{margin:0;font-size:15px;font-weight:700;flex-grow:1}.panel__head span{font-size:12px;color:var(--muted)}.chart{display:flex;align-items:flex-end;gap:3px;height:120px;margin-top:12px}.chart__col{flex:1 1 0;height:120px;position:relative}.chart__ceil{position:absolute;left:0;right:0;bottom:0;border:1.5px dashed #A9C4B8;border-bottom:0;border-radius:4px 4px 0 0}.chart__bar{position:absolute;left:1px;right:1px;bottom:0;border-radius:3px 3px 0 0;background:var(--sage)}.chart__bar--count{background:#a9c4b8}.chart__bar--over{background:#c9662e}.chart__quit{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:4px;background:var(--apricot-soft)}.chart__axis{display:flex;justify-content:space-between;margin-top:6px;font-size:12px;color:var(--muted)}.chart__axis .is-quit{color:#8a3f12;font-weight:700}.chart__legend{display:flex;gap:14px;margin-top:8px;font-size:12px;color:var(--muted)}.chart__legend span{display:inline-flex;align-items:center;gap:6px}.key{width:10px;height:10px;border-radius:3px}.key--hits{background:var(--sage)}.key--limit{border:1.5px dashed #A9C4B8}.triggers{display:flex;flex-direction:column;gap:8px;margin-top:12px}.trigger{display:flex;align-items:center;gap:10px;font-size:14px}.trigger__label{width:92px;flex-shrink:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trigger__track{flex-grow:1;height:12px;border-radius:6px;background:#e8ede6;overflow:hidden}.trigger__track span{display:block;height:100%;border-radius:6px;background:var(--sage)}.trigger__n{width:22px;text-align:right;font-weight:700}.list-head{margin:18px 4px 6px;font-size:13px;font-weight:700;color:var(--muted)}.list{background:var(--white);border-radius:20px;overflow:hidden}.list__row{display:flex;align-items:center;gap:12px;width:100%;min-height:56px;padding:0 18px;border:0;border-bottom:1px solid #E8EDE6;background:var(--white);color:var(--ink);font-size:16px;font-weight:600;text-align:left;cursor:pointer}.list__row:last-child{border-bottom:0}.list__row span{flex-grow:1}.list__row em{font-style:normal;font-size:15px;font-weight:400;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:60%}div.list__row{cursor:default}.list__row--danger{color:#a33a2b}.list-note{margin:6px 4px 0;font-size:13px;color:var(--muted)}.sheet-btn{width:100%;min-height:56px;border-radius:18px;border:0;background:var(--sage);color:var(--white);font-size:17px;font-weight:700;cursor:pointer}.sheet-btn:disabled{opacity:.6;cursor:default}.sheet-btn--danger{background:#a33a2b}.sheet-btn--quiet{margin-top:8px;background:var(--ground);color:var(--ink);font-weight:600}.ifthen-card{margin-top:12px;background:var(--white);border-radius:22px;padding:16px 18px}.ifthen-list{display:flex;flex-direction:column;gap:10px;margin-top:10px;font-size:15px;line-height:1.4}.ifthen-list p{margin:0}.ifthen-list em,.ifthen-edit em{font-style:normal;color:var(--muted)}.ifthen-edit{display:flex;flex-direction:column;gap:6px;font-size:15px;font-weight:600}.ifthen-edit textarea{height:auto;min-height:64px;margin-top:0;padding:12px 14px;font-size:16px;line-height:1.4;resize:none;font-weight:400}.today-card{display:flex;gap:12px;align-items:flex-start;width:100%;margin-top:16px;padding:14px 16px;border:0;border-radius:18px;background:var(--sage-soft);color:#1f4a3e;text-align:left;font-size:15px;line-height:1.45;cursor:pointer}.today-card b{display:block;font-size:16px}.today-card--apricot{background:var(--apricot-soft);color:#5e2a0b;cursor:default}
