:root{--color-paper:#fbfaf8;--color-surface:#fff;--color-stone:#ece9e2;--color-line:#e6e3dc;--color-mark:#c9c5bc;--color-handle:#d9d5cc;--color-ink:#1a1a18;--color-on-ink:#fbfaf8;--color-text-2:#66645f;--color-text-3:#74726c;--color-check-ring:#a8a49c;--color-angel:#e8a33d;--color-angel-ring:#e2a949;--color-angel-soft:#f0dcb6;--color-angel-text:#b07818;--color-angel-wash:#e8a33d14;--color-progress:#e8a33d;--color-status-good:#2f8f5b;--color-status-risk:#d2b21e;--color-status-off:#c8452f;--color-weather:#3c6e91;--color-focus:#1a1a18;--color-shadow-tint:#1a1a1812;--color-shadow-soft:#1a1a180a;--color-fade:#fbfaf8d1;--color-fade-clear:#fbfaf800;--font-family:"Geist", system-ui, -apple-system, sans-serif;--text-page:40px;--text-page-sub:28px;--text-angel:19px;--text-lead:17px;--text-body:16px;--text-list:16px;--text-words:16px;--text-place:16px;--text-objective:15px;--text-label:14px;--text-view:14px;--text-small:13px;--text-caption:12px;--weight-regular:400;--weight-medium:500;--weight-strong:600;--leading-tight:1.05;--leading-title:1.1;--leading-list:1.35;--leading-body:1.5;--leading-angel:1.55;--tracking-title:-.02em;--tracking-caps:.07em;--tracking-body:0;--space-0:0;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:28px;--space-8:32px;--space-10:40px;--space-12:48px;--space-18:72px;--size-tap:44px;--size-check:20px;--size-send:44px;--size-field:56px;--size-hairline:1px;--size-ring:1.5px;--size-dot:6px;--size-bar-w:6px;--size-bar-gap:3px;--size-bar-h:24px;--size-page-pad:48px;--size-column-gap:72px;--size-bubble-max:440px;--size-sheet-fade:64px;--size-topbar-h:58px;--radius-sm:6px;--radius-bubble:18px;--radius-chip:18px;--radius-field:28px;--radius-round:50%;--radius-pill:999px;--shadow-field:0 0 0 1px var(--color-shadow-tint), 0 1px 2px var(--color-shadow-soft), 0 6px 20px var(--color-shadow-tint);--shadow-menu:0 0 0 1px var(--color-shadow-tint), 0 10px 30px var(--color-shadow-tint);--motion-fast:.12s;--motion-base:.2s;--motion-slow:.32s;--motion-ease:cubic-bezier(.2, .7, .2, 1);--motion-breathe:5s;--motion-breathe-resting:8s;--motion-breathe-active:3.4s;--motion-breathe-racing:2.2s;--motion-think:1.6s;--state-disabled-opacity:.45;--state-pressed-scale:.98;--gap-dense:var(--space-3);--gap-section:var(--space-6);--gap-paragraph:var(--space-7);--gap-summary:var(--space-8)}@media (max-width:760px){:root{--text-page:34px;--text-page-sub:24px;--text-angel:16px;--text-words:15px;--text-place:15px;--text-objective:14px;--size-send:40px;--size-bar-w:5px;--size-bar-h:18px;--size-page-pad:24px}}
:where(a,button,input,[tabindex]):focus-visible{outline:calc(var(--size-ring) + var(--size-hairline)) solid var(--color-focus);outline-offset:var(--space-1);border-radius:var(--radius-sm)}.field__input:focus-visible{outline:none}.field:focus-within{box-shadow:var(--shadow-field), 0 0 0 var(--size-hairline) var(--color-ink)}:where(button,a)[aria-disabled=true],button:disabled{opacity:var(--state-disabled-opacity);cursor:default}:where(.chip,.send,.icon-button,.row--link):active:not(:disabled){transform:scale(var(--state-pressed-scale))}:where(.chip,.send,.icon-button,.row--link,.text-button,.views__item,.menu__item){transition:background-color var(--motion-fast) var(--motion-ease), color var(--motion-fast) var(--motion-ease), transform var(--motion-fast) var(--motion-ease), text-decoration-color var(--motion-fast) var(--motion-ease)}.ph{gap:var(--space-1);flex-direction:column;display:flex}.ph__eyebrow{font-size:var(--text-small);color:var(--color-text-2);margin:0}.ph__row{justify-content:space-between;align-items:center;gap:var(--space-4);display:flex}.ph__title{min-height:1.1em;font-size:var(--text-page);font-weight:var(--weight-medium);letter-spacing:var(--tracking-title);line-height:var(--leading-title);margin:0}.ph--sub .ph__title{font-size:var(--text-page-sub)}.ph__bars{flex-shrink:0}.ph__words{font-size:var(--text-words);line-height:var(--leading-body);color:var(--color-text-2);margin:0}a.ph__words:hover{color:var(--color-ink)}.bars{align-items:flex-end;gap:var(--space-2);display:inline-flex}.bars__track{align-items:flex-end;gap:var(--size-bar-gap);height:var(--size-bar-h);display:inline-flex}.bars__bar{width:var(--size-bar-w);height:var(--h);border-radius:var(--size-bar-gap);background:var(--color-mark)}.bars__bar--good{background:var(--color-progress)}.bars__bar--current{background:var(--color-ink)}.bars__bar--empty{height:var(--size-hairline);background:var(--color-line)}.bars__value{font-size:var(--text-place);font-weight:var(--weight-medium);font-variant-numeric:tabular-nums}.views{justify-content:space-between;align-items:center;gap:var(--space-4);padding-top:var(--space-2);display:flex}.views__list{gap:var(--space-5);display:flex}.views__item{font-size:var(--text-view);color:var(--color-text-3)}.views__item:hover{color:var(--color-ink)}.views__item[aria-current=page]{color:var(--color-ink);font-weight:var(--weight-medium)}.views__end{font-size:var(--text-small);color:var(--color-text-3)}.row{align-items:center;gap:var(--space-3);padding:var(--space-2) 0;border-top:var(--size-hairline) solid var(--color-line);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.row:first-child{border-top:0}.row:not(:has(.row__lead)){grid-template-columns:minmax(0,1fr) auto}.row__text{font-size:var(--text-list);line-height:var(--leading-list);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.row__lead,.row__trail{font-size:var(--text-small);color:var(--color-text-3);font-variant-numeric:tabular-nums;align-items:center;display:inline-flex}.row--dense{padding:var(--space-1) 0;border-top:0}.row--done .row__text,.row--muted .row__text{color:var(--color-text-2)}.row--link{min-height:var(--size-tap);border-radius:var(--radius-sm)}.row--link:hover .row__text{color:var(--color-text-2)}.check{width:var(--size-check);height:var(--size-check);border-radius:var(--radius-round);box-shadow:inset 0 0 0 var(--size-ring) var(--color-check-ring);display:inline-flex}.check--done{background:var(--color-ink);box-shadow:none}.check--button{cursor:pointer;background:0 0;border:0;padding:0;position:relative}.check--button:after{content:"";inset:calc((var(--size-tap) - var(--size-check)) / -2);position:absolute}.check--button:hover{box-shadow:inset 0 0 0 var(--size-ring) var(--color-ink)}.check--button.check--done{background:var(--color-ink)}.group{flex-direction:column;display:flex}.group+.group{margin-top:var(--gap-section)}.group--dense+.group,.group+.group--dense{margin-top:var(--gap-dense)}.group--paragraph+.group{margin-top:var(--gap-paragraph)}.group+.group--summary{margin-top:var(--gap-summary)}.group__head{align-items:center;gap:var(--space-2);min-height:var(--space-8);display:flex}.group__label{font-size:var(--text-label);font-weight:var(--weight-medium);color:var(--color-text-2);margin:0}.group__objective{font-size:var(--text-objective);font-weight:var(--weight-strong);letter-spacing:var(--tracking-caps);text-transform:uppercase;margin:0}.group__meta{font-size:var(--text-small);color:var(--color-text-2);font-variant-numeric:tabular-nums}.group__add{margin-left:auto}.group__rows{flex-direction:column;display:flex}.group__note{padding:var(--space-2) 0;font-size:var(--text-label);color:var(--color-text-3);margin:0}.group__loading{gap:var(--space-3);padding:var(--space-2) 0;flex-direction:column;display:flex}.skeleton{height:var(--space-3);border-radius:var(--radius-sm);background:var(--color-stone);animation:pulse var(--motion-breathe) var(--motion-ease) infinite;display:block}.skeleton--short{width:60%}.icon-button{min-width:var(--size-tap);min-height:var(--size-tap);border-radius:var(--radius-round);color:var(--color-text-2);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.icon-button:hover{color:var(--color-ink);background:var(--color-stone)}.field{align-items:center;gap:var(--space-2);width:100%;min-height:var(--size-field);padding:var(--space-2) var(--space-2) var(--space-2) var(--space-6);border-radius:var(--radius-field);background:var(--color-surface);box-shadow:var(--shadow-field);display:flex}.field__leading{display:inline-flex}.field__input{min-width:0;font:inherit;font-size:var(--text-body);color:var(--color-ink);background:0 0;border:0;flex:1}.field__input::placeholder{color:var(--color-text-3)}.field[aria-busy=true] .send{animation:pulse var(--motion-breathe) var(--motion-ease) infinite}.field__error{margin:var(--space-2) 0 0 var(--space-1);font-size:var(--text-label);color:var(--color-text-2)}.send{width:var(--size-send);height:var(--size-send);border-radius:var(--radius-round);background:var(--color-ink);color:var(--color-on-ink);cursor:pointer;border:0;flex-shrink:0;justify-content:center;align-items:center;display:flex}.send:hover:not(:disabled){background:var(--color-text-2)}.chip{min-height:var(--space-8);padding:var(--space-1) var(--space-4);border:var(--size-hairline) solid var(--color-line);border-radius:var(--radius-chip);font-size:var(--text-small);color:var(--color-text-2);cursor:pointer;background:0 0;align-items:center;display:inline-flex;position:relative}.chip:after{content:"";inset:calc((var(--space-8) - var(--size-tap)) / 2) 0;position:absolute}.chip:hover:not(:disabled){color:var(--color-ink);border-color:var(--color-mark)}.chip--primary{border-color:var(--color-ink);background:var(--color-ink);color:var(--color-on-ink);font-weight:var(--weight-medium)}.chip--primary:hover:not(:disabled){background:var(--color-text-2);border-color:var(--color-text-2);color:var(--color-on-ink)}.chip[aria-busy=true]{animation:pulse var(--motion-breathe) var(--motion-ease) infinite}.text-button{min-height:var(--size-tap);font:inherit;font-size:var(--text-body);color:var(--color-ink);cursor:pointer;text-decoration:underline;-webkit-text-decoration-color:var(--color-line);text-decoration-color:var(--color-line);text-underline-offset:var(--space-1);background:0 0;border:0;padding:0}.text-button:hover{-webkit-text-decoration-color:var(--color-ink);text-decoration-color:var(--color-ink)}.badge{display:inline-flex}.badge--rain{color:var(--color-weather)}.badge--new{width:var(--size-dot);height:var(--size-dot);border-radius:var(--radius-round);background:var(--color-angel)}.menu{display:inline-flex;position:relative}.menu__panel{z-index:5;min-width:calc(var(--space-18) * 2);padding:var(--space-1);border-radius:var(--radius-bubble);background:var(--color-surface);box-shadow:var(--shadow-menu);animation:rise var(--motion-base) var(--motion-ease) both;flex-direction:column;display:flex;position:absolute;top:100%;right:0}.menu__item{min-height:var(--size-tap);padding:0 var(--space-3);border-radius:var(--radius-sm);font:inherit;font-size:var(--text-body);color:var(--color-ink);text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;display:flex}.menu__item:hover:not(:disabled){background:var(--color-stone)}.menu__item[aria-checked=true]:after{content:"✓";color:var(--color-ink)}.visually-hidden{width:var(--size-hairline);height:var(--size-hairline);clip:rect(0 0 0 0);white-space:nowrap;position:absolute;overflow:hidden}@keyframes pulse{0%,to{opacity:1}50%{opacity:.55}}@keyframes rise{0%{opacity:0;transform:translateY(var(--space-1))}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.skeleton,.chip[aria-busy=true],.field[aria-busy=true] .send,.menu__panel{animation:none}}
*{box-sizing:border-box}html,body{height:100%;margin:0}body{background:var(--color-paper);color:var(--color-ink);font-family:var(--font-family);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}@keyframes lbreathe{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}@keyframes lspin{to{transform:rotate(360deg)}}.lh{transform-origin:50%;animation:lbreathe var(--motion-breathe) ease-in-out infinite;display:inline-block}.lh.resting{animation-duration:var(--motion-breathe-resting)}.lh.active{animation-duration:var(--motion-breathe-active)}.lh.racing{animation-duration:var(--motion-breathe-racing)}.lh .think{transform-origin:50%;animation:lspin var(--motion-think) linear infinite}.beat{animation:rise var(--motion-slow) var(--motion-ease) both}@media (prefers-reduced-motion:reduce){.lh,.lh .think,.beat{animation:none}}.shell{flex-direction:column;min-height:100vh;display:flex}.topbar{padding:var(--space-6) var(--size-page-pad) var(--space-5);grid-template-columns:1fr auto 1fr;align-items:center;display:grid}.topbar__start{justify-self:start;display:flex}.topbar__end{justify-self:end;align-items:center;gap:var(--space-4);display:flex}.places{gap:calc(var(--space-8) + var(--space-1));font-size:var(--text-place);color:var(--color-text-2);display:flex}.places a{min-height:var(--size-tap);align-items:center;display:inline-flex;position:relative}.places a:hover{color:var(--color-ink)}.places a[aria-current=page]{color:var(--color-ink);font-weight:var(--weight-medium)}.places .badge{top:var(--space-2);right:calc(var(--space-3) * -1);position:absolute}.only-phone{display:none!important}.main{gap:var(--size-column-gap);padding:0 var(--size-page-pad) var(--space-8);flex:1;min-height:0;display:flex}.stage{gap:var(--space-7);min-width:0;padding-top:var(--space-6);flex-direction:column;flex:1 1 0;display:flex}.convo{justify-content:flex-end;gap:var(--space-5);flex-direction:column;flex:1 1 0;display:flex}.thread{justify-content:flex-end;gap:var(--space-5);flex-direction:column;display:flex}.msg{gap:var(--space-3);flex-direction:column;display:flex}.say{font-size:var(--text-angel);line-height:var(--leading-angel);margin:0}.stamp{align-items:center;gap:var(--space-2);font-size:var(--text-small);color:var(--color-text-3);display:flex}.you{max-width:var(--size-bubble-max);padding:var(--space-3) var(--space-4);border-radius:var(--radius-bubble);background:var(--color-stone);font-size:var(--text-body);line-height:var(--leading-body);align-self:flex-end}.handle,.folded,.field__leading{display:none}@media (max-width:760px){.topbar{justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4) var(--space-1) var(--space-5);height:var(--size-topbar-h);z-index:3;background:var(--color-paper);display:flex;position:sticky;top:0}.places{gap:var(--space-4);flex:1}.only-desktop{display:none!important}.only-phone{display:flex!important}.main{flex-direction:column;gap:0;padding:0}.stage{padding:var(--space-3) var(--size-page-pad) calc(var(--space-18) * 3)}.convo{z-index:2;background:var(--color-paper);padding:0 var(--space-4) calc(var(--space-4) + env(safe-area-inset-bottom));gap:var(--space-3);transition:top var(--motion-slow) var(--motion-ease);position:fixed;bottom:0;left:0;right:0}.convo:before{content:"";height:var(--size-sheet-fade);pointer-events:none;-webkit-backdrop-filter:blur(var(--space-1));backdrop-filter:blur(var(--space-1));background:linear-gradient(to top, var(--color-paper), var(--color-fade) 45%, var(--color-fade-clear));position:absolute;bottom:100%;left:0;right:0;-webkit-mask-image:linear-gradient(#0000,#000 70%);mask-image:linear-gradient(#0000,#000 70%)}.handle{min-height:var(--size-tap);padding:var(--space-3) 0 var(--space-2);cursor:grab;touch-action:none;background:0 0;border:0;justify-content:center;align-self:stretch;display:flex}.handle span{width:var(--space-8);height:var(--space-1);border-radius:var(--radius-pill);background:var(--color-handle)}.thread{gap:var(--space-3);overflow-y:auto}.convo[data-height=down] .thread{display:none}.convo[data-height=down] .field{padding-left:var(--space-4)}.convo[data-height=down] .field__leading{display:flex}.convo[data-height=resting] .msg:not(.latest),.convo[data-height=resting] .stamp{display:none}.convo[data-height=up]{top:var(--size-topbar-h);flex-direction:column;display:flex}.convo[data-height=up]:before{display:none}.convo[data-height=up] .thread{flex:1;min-height:0}.convo[data-height=up] .folded{min-height:var(--size-tap);margin:0 calc(var(--space-4) * -1);padding:var(--space-1) var(--size-page-pad) var(--space-3);border:0;border-bottom:var(--size-hairline) solid var(--color-line);font-size:var(--text-place);color:var(--color-text-2);cursor:pointer;background:0 0;justify-content:space-between;align-items:center;display:flex}.folded b{font-weight:var(--weight-medium);color:var(--color-ink)}}.signin{min-height:100dvh;padding:var(--size-page-pad);background:var(--color-paper);justify-content:center;align-items:center;display:flex}.signin__col{width:100%;max-width:calc(var(--size-bubble-max) - var(--space-10));align-items:flex-start;gap:var(--space-3);flex-direction:column;margin-top:-8vh;display:flex}.signin__title{margin:var(--space-2) 0 0;font-size:var(--text-page);font-weight:var(--weight-medium);letter-spacing:var(--tracking-title);line-height:var(--leading-tight)}.signin__line{margin:0 0 var(--space-3);font-size:var(--text-lead);line-height:var(--leading-body);color:var(--color-text-2)}.signin__note{margin:0 0 0 var(--space-1);font-size:var(--text-label);line-height:var(--leading-body);color:var(--color-text-2)}.signin .field__input{font-size:var(--text-lead)}.signin .text-button{margin-left:var(--space-1);font-size:var(--text-label)}
